@mndrk/agx 2.4.6 → 2.4.8
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/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +2 -2
- package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +33 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js +13 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/build-manifest.json +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/next-font-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/react-loadable-manifest.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_projects_[id]_workspace_export_route_actions_e161f108.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_projects_[id]_workspace_import_route_actions_10d2bce2.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/7255d_app_api_projects_[id]_objectives_[objectiveId]_program_route_actions_e6cdbc76.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1563ebff._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3fdd57cb._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__45af4365._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__683b7ad7._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__736d5859._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__96b5ea56._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ba72d342._.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c3188470._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__eb69343e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1d99e7a5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_29a06140._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_4d88e4dc._.js +91 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_4dec65a2._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_50e3a6e3._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_56a2544c._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5843a1a1._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_a15e73a6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_bd72806a._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c101ba9e._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c530bd77._.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_d69937f2._.js +91 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e2867b32._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e32b0cab._.js +91 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_5ab8f104._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_db_ts_77c23d6c._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_thread_page_actions_3ceeb59b.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__1e0fd816._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__42499ecf._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5f31e40b._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__636799fb._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__4bf7d5b9._.js → [root-of-the-server]__74436f61._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__9434d6d7._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bd339da0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d08d7899._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e02a457c._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e3a1fef0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__f802e7d1._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__ff96bb77._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_6a2ba8f0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_7cb6b08a._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_a0f42923._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_a93c1059._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_components_PromptJobBoard_tsx_281b2873._.js → apps_local_04cb9fd5._.js} +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_15502af8._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16eaf7ae._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3c11c068._.js +8 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_89b49aad._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_988d29c0._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_ae1a134f._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_page_tsx_2a02508d._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_72fb68e5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_3bb31889._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_76330306._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_b8e580cc._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_app_projects_[slug]_thread_[threadId]_page_tsx_2a1d1d5e._.js → apps_local_components_chat-ui_ChatContainer_tsx_47371955._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_751ab3d3._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_eb223411._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_eec36ab6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_7d1abfbf._.js → apps_local_f1c9872a._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_fed01721._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/08e75b35d6c52269.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0d22a723b9b96e65.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{cb19d71dd7ffb935.js → 1585dd5f9ec4866a.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/1bc8cc9cbb99c1ed.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2586c0baa16e9a0d.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2aa24a251622fd06.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/39513207112d6828.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/3fce625820bc2bd4.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{8d8fe711583a59f0.js → 41ae15220fc19bf7.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/67b36c70b72e0e10.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7bfbfcd072f8d61e.js +20 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7cf26dd04166f32f.js +6 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{74e3a3e93be78db8.js → 8b87c2521c519a1f.js} +9 -9
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/90dd4ab03ab145d1.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/93749b45e2700808.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{48feca51cf97c8a7.js → 9bb8f1406365af81.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b4aa71020acae46f.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c352706a0ad7e35d.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c5436b2b7e8f0ca9.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1600dd6ff8607d8f.js → c9a2c4b55bb76f4f.js} +6 -6
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1fbcd40dccee738f.js → cf33cb29946990e3.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/d6a9cc66254693b8.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{9e703dd5d95e9557.js → e3bdd1e0f385114e.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/ed606d6f94457578.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{6ffcd12eabd7c65e.js → f71d73895d228547.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/f750d2f1882d31a8.js +5 -0
- package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +2 -10
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/program/route.ts +77 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/workspace/export/route.ts +35 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/workspace/import/route.ts +91 -0
- package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +1 -8
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/thread/page.tsx +14 -0
- package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +15 -15
- package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +7 -12
- package/cloud-runtime/standalone/apps/local/components/TrackerBoard.tsx +39 -1
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +51 -196
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +662 -784
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +7 -10
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +4 -4
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +118 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectSettings.tsx +81 -7
- package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +13 -3
- package/cloud-runtime/standalone/apps/local/components/tracking/TrackerSetup.tsx +22 -14
- package/cloud-runtime/standalone/apps/local/hooks/useProjectWorkspace.ts +117 -0
- package/cloud-runtime/standalone/apps/local/lib/db/projects.ts +14 -10
- package/cloud-runtime/standalone/apps/local/lib/project-workspace.ts +80 -0
- package/cloud-runtime/standalone/apps/local/lib/task-context.ts +39 -4
- package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/github/adapter.tsx +40 -4
- package/cloud-runtime/standalone/apps/local/lib/workspace-yaml.ts +164 -0
- package/cloud-runtime/standalone/apps/local/src/objectives/program/index.ts +7 -0
- package/cloud-runtime/standalone/apps/local/src/objectives/program/repository.ts +60 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +12 -0
- package/cloud-runtime/standalone/apps/local/src/scheduling/status.ts +42 -0
- package/cloud-runtime/standalone/apps/local/worker/index.js +14 -9
- package/lib/commands/workspace.js +145 -7
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_09d85861._.js +0 -91
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_25136564._.js +0 -11
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_2caf4398._.js +0 -91
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_31ca7a35._.js +0 -91
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_8c8ee1bc._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__23838f87._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__3b4708d5._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__49cbf624._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__49cdd178._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__55ed4ff9._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7a31a76d._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__a61463b8._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bb42490f._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__ee9351f9._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ecd68e8._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_347d036d._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_5c140c38._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_f99c22fd._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_30d021de._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3b90cb76._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_9f36c765._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_8cc1a335._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/1d8b2726979134e5.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/692103d55fcd0328.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/6952b44e247d594a.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/6bfdc40a24e65ca2.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7ff071e8a33d2fd8.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/87e4fb11329a358d.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/92467c495ad08a85.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/941f7f3626ec442c.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/94a66d2d19268d25.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/add53c2fe147af75.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b35865f64b56d6f4.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/d662272e49df1950.js +0 -20
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/e0d68c6af17c8c87.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/f154e2ed7753f8ee.js +0 -16
- /package/cloud-runtime/standalone/apps/local/.next/static/{fipnHmd6JPn9sTuFdYS0y → O3Yu8lY-DN5fauB8GipIL}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{fipnHmd6JPn9sTuFdYS0y → O3Yu8lY-DN5fauB8GipIL}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{fipnHmd6JPn9sTuFdYS0y → O3Yu8lY-DN5fauB8GipIL}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[638583,a=>{"use strict";var b=a.i(308316),c=a.i(786220),d=a.i(639211),e=a.i(520612),f=a.i(155829),g=a.i(496368),h=a.i(111013),i=a.i(529889),j=a.i(550158),k=a.i(850985),l=a.i(86007),m=a.i(8e4),n=a.i(475632);function o(){return(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px] ml-1",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--muted-foreground)] animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--muted-foreground)] animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--muted-foreground)] animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})}function p({participantId:a,participantName:c,participantColor:d,content:e}){let f=(0,n.stripMarkers)(e),g=f.length>0;return(0,b.jsxs)("div",{className:"flex gap-4 py-4 group transition-colors animate-in fade-in slide-in-from-bottom-2 duration-300",children:[(0,b.jsx)(k.default,{href:`/agents/${a}`,className:"w-9 h-9 rounded-full bg-[var(--muted)] overflow-hidden shrink-0 shadow-sm border border-[var(--border)] hover:ring-2 hover:ring-blue-300 transition-shadow",children:(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a,36,d),alt:"",className:"w-full h-full object-cover"})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-baseline gap-2 mb-1",children:[(0,b.jsx)(k.default,{href:`/agents/${a}`,className:"font-bold text-[15px] hover:underline",style:{color:d},children:c}),(0,b.jsx)("span",{className:"text-[10px] uppercase tracking-wider text-[var(--muted-foreground)] font-bold opacity-0 group-hover:opacity-100 transition-opacity",children:"Streaming"})]}),(0,b.jsx)("div",{className:"text-[15px] text-[var(--foreground)] leading-relaxed min-h-[1.5rem] flex items-center",children:g?(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)(l.Markdown,{content:f}),(0,b.jsx)("span",{className:"inline-flex items-baseline ml-0.5",children:(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-indigo-400 animate-[pulse-dot_1.4s_ease-in-out_infinite]"})})]}):(0,b.jsxs)("div",{className:"flex items-center gap-2 text-[var(--muted-foreground)] italic",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:"working"}),(0,b.jsx)(o,{})]})})]})]})}var q=a.i(552605),r=a.i(340492);function s({attachments:a,compact:c=!1}){if(0===a.length)return null;let d=a.filter(a=>a.mimeType.startsWith("image/")),e=a.filter(a=>!a.mimeType.startsWith("image/")),f=c?"max-w-[120px]":"max-w-[240px]",g=c?"max-h-[90px]":"max-h-[180px]";return(0,b.jsxs)("div",{className:"mt-2 space-y-2",children:[d.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:d.map(a=>(0,b.jsx)("a",{href:a.url,target:"_blank",rel:"noopener noreferrer",className:"block rounded-lg overflow-hidden border border-[var(--border)] hover:border-[var(--border)] transition-colors",children:(0,b.jsx)("img",{src:a.url,alt:a.filename,className:`${f} ${g} object-cover`,loading:"lazy"})},a.id))}),e.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.map(a=>{var d;return(0,b.jsxs)("a",{href:a.url,download:a.filename,className:`inline-flex items-center gap-1.5 rounded-md border border-[var(--border)] bg-[var(--app-shell-subtle)] text-[var(--muted-foreground)] hover:bg-[var(--muted)] hover:border-[var(--border)] transition-colors ${c?"px-2 py-0.5 text-[11px]":"px-2.5 py-1 text-xs"}`,children:[(0,b.jsx)(q.FileText,{className:`text-[var(--muted-foreground)] shrink-0 ${c?"w-3 h-3":"w-3.5 h-3.5"}`}),(0,b.jsx)("span",{className:`truncate ${c?"max-w-[100px]":"max-w-[150px]"}`,children:a.filename}),(0,b.jsx)("span",{className:"text-[var(--muted-foreground)] shrink-0",children:(d=a.size)<1024?`${d}B`:d<1048576?`${(d/1024).toFixed(0)}KB`:`${(d/1048576).toFixed(1)}MB`}),(0,b.jsx)(r.Download,{className:`text-[var(--muted-foreground)] shrink-0 ${c?"w-2.5 h-2.5":"w-3 h-3"}`})]},a.id)})})]})}let t=(0,c.forwardRef)(({children:a,className:c="",...d},e)=>{let{isTouchLayout:f}=(0,i.useInputCapabilities)(),g=`absolute top-4 right-4 flex items-center gap-1 ${f?"opacity-100":"opacity-0 group-hover:opacity-100"} transition-opacity duration-200 bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] shadow-md rounded-lg p-1 z-10 backdrop-blur-sm`,h=`${g} ${c}`.trim();return(0,b.jsx)("div",{ref:e,className:h,"data-touch-visible":f?"true":void 0,...d,children:a})});t.displayName="ActionToolbar";let u=()=>(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)] mx-1"}),v=(0,c.forwardRef)(({className:a="",variant:c="neutral",size:d="md",children:e,...f},g)=>{let{isTouchLayout:h}=(0,i.useInputCapabilities)(),j=`inline-flex items-center justify-center rounded-md transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:opacity-50 disabled:pointer-events-none ${h?({sm:"h-11 w-11 p-2",md:"h-11 w-11 p-2",lg:"h-12 w-12 p-2.5"})[d]:({sm:"p-1 w-6 h-6",md:"p-1.5 w-8 h-8",lg:"p-2 w-10 h-10"})[d]} ${({neutral:"text-[var(--app-shell-muted)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]",ghost:"text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)]",primary:"text-[var(--primary)] hover:text-[var(--primary-foreground)] hover:bg-[var(--primary-hover)]",destructive:"text-[var(--app-shell-muted)] hover:text-[var(--destructive)] hover:bg-[var(--destructive-muted)]"})[c]} ${a}`.trim();return(0,b.jsx)("button",{ref:g,className:j,"data-touch-target":h?"true":void 0,...f,children:e})});v.displayName="IconButton";var w=a.i(737313),x=a.i(804632),y=a.i(316099),z=a.i(349692),A=a.i(697183),B=a.i(252197),C=a.i(820859),D=a.i(831709);let E=(0,D.default)("link",[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]]),F=(0,D.default)("at-sign",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]]),G=(0,D.default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);var H=a.i(238234),I=a.i(412690),J=a.i(908225);let K=[{value:"active",label:"Active",color:"#f59e0b"},{value:"paused",label:"Paused",color:"#f97316"},{value:"in-review",label:"In Review",color:"#6b7280"},{value:"done",label:"Done",color:"#3b82f6"},{value:"archived",label:"Archived",color:"#9ca3af"}],L=new Set(["done","in-review","archived"]),M="<!-- thread-summary -->";function N({messages:a,streaming:d,participants:e,onOpenThread:f,onCopyThread:g,onAddToChat:h,onDeleteThreadRoot:i,onSummarize:j,summarizingThreads:o,deletingThreadRootId:q,highlightedMessageId:r,onUpdateMessageThreadStatus:D,onUpdateMessageOutcomeNote:N,shipModeThreads:O}){let P=(0,c.useRef)(new Map),Q=(0,c.useRef)(null),[R,S]=(0,c.useState)(null),[T,U]=(0,c.useState)("active"),[V,W]=(0,c.useState)("asc"),[X,Y]=(0,c.useState)(!1);(0,c.useEffect)(()=>{let a=Q.current;if(!a)return;let b=()=>{let{scrollTop:b,scrollHeight:c,clientHeight:d}=a;Y(c-b-d>200)};return a.addEventListener("scroll",b,{passive:!0}),()=>a.removeEventListener("scroll",b)},[]);let Z=(0,c.useCallback)(()=>{let a=Q.current;if(!a)return;let b="asc"===V?a.scrollHeight:0;a.scrollTo({top:b,behavior:"smooth"})},[V]),$=Object.fromEntries(e.map(a=>[a.id,a])),_=(0,c.useMemo)(()=>{let b=a.filter(a=>!a.rootMessageId);return"asc"===V?[...b].sort((a,b)=>a.timestamp-b.timestamp):[...b].sort((a,b)=>b.timestamp-a.timestamp)},[a,V]),aa=(0,c.useRef)(0);(0,c.useEffect)(()=>{if("asc"!==V){aa.current=_.length;return}_.length>aa.current&&Q.current?.scrollTo({top:Q.current.scrollHeight,behavior:"smooth"}),aa.current=_.length},[_.length,V]);let ab={active:new Set(["active"]),paused:new Set(["paused"]),"in-review":new Set(["in-review"]),done:new Set(["done"]),archived:new Set(["archived"])},ac=(0,c.useMemo)(()=>_.filter(a=>ab[T].has(a.threadStatus??"active")),[_,T]),ad=(0,c.useMemo)(()=>({active:_.filter(a=>ab.active.has(a.threadStatus??"active")).length,paused:_.filter(a=>ab.paused.has(a.threadStatus??"active")).length,"in-review":_.filter(a=>ab["in-review"].has(a.threadStatus??"active")).length,done:_.filter(a=>ab.done.has(a.threadStatus??"active")).length,archived:_.filter(a=>ab.archived.has(a.threadStatus??"active")).length}),[_]),ae=(0,c.useMemo)(()=>(function(a){let b=new Map;for(let c of a){let a=c.rootMessageId;if(!a)continue;let d=b.get(a);d||(d={rootMessageId:a,replyCount:0,participants:[],lastActivityAt:0,allReplies:[]},b.set(a,d)),d.replyCount++,d.lastActivityAt=Math.max(d.lastActivityAt,c.timestamp),d.lastReply=c,d.allReplies.push(c),c.participantId&&!d.participants.includes(c.participantId)?d.participants.push(c.participantId):c.participantId||d.participants.includes("user")||d.participants.push("user")}for(let a of b.values())a.allReplies.sort((a,b)=>a.timestamp-b.timestamp);return b})(a),[a]),af=(0,c.useCallback)((a,b)=>{b?P.current.set(a,b):P.current.delete(a)},[]),ag=(0,c.useRef)(null);return(0,c.useEffect)(()=>{if(!r){ag.current=null;return}if(r===ag.current)return;ag.current=r;let a=P.current.get(r);a&&a.scrollIntoView({behavior:"smooth",block:"center"})},[r,a]),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 flex flex-col",children:[(0,b.jsx)("div",{ref:Q,className:"chat-scrollbar flex-1 overflow-y-auto p-4",children:(0,b.jsxs)("div",{className:"max-w-3xl mx-auto",children:[_.length>0&&(0,b.jsxs)("div",{className:"flex items-center justify-center gap-2 mb-4",children:[(0,b.jsx)("div",{className:"flex items-center gap-1 p-1 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)]",children:[{key:"active",label:"Active"},{key:"paused",label:"Paused"},{key:"in-review",label:"In Review"},{key:"done",label:"Done"},{key:"archived",label:"Archived"}].map(a=>{let c=ad[a.key],d=T===a.key;return(0,b.jsxs)("button",{type:"button",onClick:()=>U(a.key),className:`px-3 py-1.5 text-xs font-bold rounded-md transition-all ${d?"bg-[var(--app-shell-surface)] text-[var(--foreground)] shadow-sm":"text-[var(--app-shell-muted)] hover:text-[var(--foreground)]"}`,children:[a.label,c>0&&(0,b.jsx)("span",{className:`ml-1.5 text-[10px] ${d?"opacity-60":"opacity-50"}`,children:c})]},a.key)})}),(0,b.jsxs)("button",{type:"button",onClick:()=>W(a=>"asc"===a?"desc":"asc"),title:"asc"===V?"Newest at bottom — click to flip":"Newest at top — click to flip",className:"inline-flex items-center gap-1 px-2 py-1.5 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] text-[var(--app-shell-muted)] hover:text-[var(--foreground)] text-[10px] font-bold transition-colors",children:["asc"===V?(0,b.jsx)(I.ArrowUp,{className:"w-3 h-3"}):(0,b.jsx)(H.ArrowDown,{className:"w-3 h-3"}),"asc"===V?"Oldest first":"Newest first"]})]}),0===_.length&&0===Object.keys(d).length&&(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center text-[var(--app-shell-muted)] mt-32 space-y-3",children:[(0,b.jsx)(w.MessageSquare,{className:"h-6 w-6",strokeWidth:1.5}),(0,b.jsx)("span",{className:"text-sm font-medium tracking-wide",children:"Start a thread"})]}),_.length>0&&0===ac.length&&(0,b.jsx)("div",{className:"flex flex-col items-center justify-center text-[var(--app-shell-muted)] mt-16 space-y-2",children:(0,b.jsxs)("span",{className:"text-sm font-medium",children:["No ",T," threads"]})}),ac.map(a=>{let c,e=a.participantId?$[a.participantId]:null,r=ae.get(a.id),w=q===a.id,H=r?.allReplies.find(a=>a.content.startsWith(M)),I=H?H.content.slice(M.length).trim():null,J=a.threadStatus??"active",N=L.has(J),P=K.find(a=>a.value===J)??K[0],Q=Object.values(d).some(b=>b.rootMessageId===a.id);if(N){let c;return(0,b.jsx)("div",{ref:b=>af(a.id,b),"data-message-id":a.id,className:`max-w-2xl mx-auto bg-[var(--app-shell-subtle)] rounded-xl border border-[var(--app-shell-border)] mb-3 group transition-all hover:border-[var(--app-shell-border-strong)] relative cursor-pointer ${R===a.id?"z-50":""}`,onClick:()=>f?.(a.id),children:(0,b.jsxs)("div",{className:"px-4 py-2.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(y.Hash,{className:"w-3.5 h-3.5 text-[var(--app-shell-muted)] shrink-0"}),(0,b.jsx)("span",{className:"text-sm font-medium text-[var(--app-shell-muted)] truncate flex-1",children:(0,n.stripMarkers)(a.content.split("\n")[0])}),O?.has(a.id)&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-indigo-500 font-medium shrink-0",title:"Ship Mode active",children:[(0,b.jsx)(G,{size:11,style:{animation:"shipPulse 2s ease-in-out infinite"}}),"Ship"]}),Q&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-green-600 font-medium shrink-0",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-green-400 animate-pulse"}),"Working"]}),a.outcomeNote&&(0,b.jsx)("span",{className:"text-[11px] text-[var(--app-shell-soft-text)] truncate max-w-[200px]",children:a.outcomeNote}),(0,b.jsx)("span",{className:"text-[10px] text-[var(--app-shell-soft-text)] shrink-0",children:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(a.timestamp)}),D&&(c=R===a.id,(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("button",{type:"button",onClick:b=>{b.stopPropagation(),S(c?null:a.id)},className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-semibold border transition-colors hover:bg-[var(--app-shell-elevated)]",style:{borderColor:P.color+"40",color:P.color},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:P.color}}),P.label]}),c&&(0,b.jsx)("div",{className:"absolute top-full right-0 mt-1 z-50 bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] rounded-lg shadow-lg p-1 min-w-[8.5rem]",onClick:a=>a.stopPropagation(),children:K.map(c=>(0,b.jsxs)("button",{type:"button",className:`flex items-center gap-2 w-full px-2 py-1.5 rounded-md text-xs font-medium transition-colors ${c.value===J?"bg-[var(--primary-muted)] text-[var(--primary)]":"text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onClick:b=>{b.stopPropagation(),D(a.id,c.value),S(null)},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:c.color}}),c.label]},c.value))})]})),r&&r.replyCount>0&&(0,b.jsxs)("span",{className:"text-[10px] text-[var(--app-shell-muted)] shrink-0",children:[r.replyCount," replies"]})]}),I&&(0,b.jsx)("div",{className:"mt-1.5 pl-6 flex flex-col gap-1",children:(0,b.jsx)("div",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed prose prose-sm prose-neutralmax-w-none",children:(0,b.jsx)(l.Markdown,{content:I,isUser:!1})})})]})},a.id)}return(0,b.jsxs)("div",{className:`max-w-2xl mx-auto surface-card mb-6 group relative ${R===a.id?"z-50":""}`,children:[(g||h||i)&&(0,b.jsxs)(t,{className:"z-10",children:[h&&(0,b.jsx)(v,{type:"button",variant:"primary",size:"sm",onClick:()=>h(a.id),title:"Mention in chat",children:(0,b.jsx)(F,{className:"w-3.5 h-3.5"})}),(0,b.jsx)(v,{type:"button",variant:"neutral",size:"sm",onClick:()=>{navigator.clipboard.writeText(a.id)},title:"Copy message ID",children:(0,b.jsx)(E,{className:"w-3.5 h-3.5"})}),g&&(0,b.jsx)(v,{type:"button",variant:"neutral",size:"sm",onClick:()=>g(a.id),title:"Copy thread as markdown",children:(0,b.jsx)(x.Copy,{className:"w-3.5 h-3.5"})}),i&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{}),(0,b.jsx)(v,{type:"button",variant:"destructive",size:"sm",onClick:()=>i(a.id),disabled:w,title:"Delete this thread",children:w?(0,b.jsx)(z.Loader2,{className:"w-3.5 h-3.5 animate-spin"}):(0,b.jsx)(A.Trash2,{className:"w-3.5 h-3.5"})})]})]}),(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsx)("div",{className:"p-5",children:(0,b.jsxs)("div",{ref:b=>af(a.id,b),"data-message-id":a.id,className:"flex flex-col",children:[(0,b.jsxs)("div",{className:"flex gap-3 mb-4",children:["user"!==a.role&&(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"w-10 h-10 rounded-full bg-[var(--app-shell-subtle)] overflow-hidden border border-[var(--app-shell-border)] shadow-sm flex items-center justify-center shrink-0 hover:ring-2 hover:ring-[var(--ring)] transition-shadow",children:e?(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(e.id,40,e.color),alt:e.name,className:"w-full h-full object-cover"}):(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a.participantId||"assistant",40),alt:a.participantId||"Assistant",className:"w-full h-full object-cover"})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0 pt-0.5",children:["user"!==a.role&&(0,b.jsx)("div",{className:"flex items-center gap-2 mb-0.5",children:(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"font-bold text-sm text-[var(--foreground)] hover:underline",children:e?.name||a.participantId||"Assistant"})}),(0,b.jsxs)("div",{className:"cursor-pointer group/msg-title mb-1",onClick:()=>f?.(a.id),children:[(0,b.jsx)("h3",{className:"text-lg font-bold text-[var(--foreground)] leading-tight group-hover/msg-title:text-[var(--primary)] transition-colors line-clamp-1",children:(0,n.stripMarkers)(a.content.split("\n")[0])}),(0,b.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[11px] font-medium text-[var(--app-shell-soft-text)]",children:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(a.timestamp)}),D&&(c=R===a.id,(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("button",{type:"button",onClick:b=>{b.stopPropagation(),S(c?null:a.id)},className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-semibold border transition-colors hover:bg-[var(--app-shell-subtle)]",style:{borderColor:P.color+"40",color:P.color},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:P.color}}),P.label]}),c&&(0,b.jsx)("div",{className:"absolute top-full left-0 mt-1 z-50 bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] rounded-lg shadow-lg p-1 min-w-[8.5rem]",onClick:a=>a.stopPropagation(),children:K.map(c=>(0,b.jsxs)("button",{type:"button",className:`flex items-center gap-2 w-full px-2 py-1.5 rounded-md text-xs font-medium transition-colors ${c.value===J?"bg-[var(--primary-muted)] text-[var(--primary)]":"text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onClick:b=>{b.stopPropagation(),D(a.id,c.value),S(null)},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:c.color}}),c.label]},c.value))})]})),O?.has(a.id)&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-indigo-500 font-medium",title:"Ship Mode active",children:[(0,b.jsx)(G,{size:11,style:{animation:"shipPulse 2s ease-in-out infinite"}}),"Ship"]}),Q&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-green-600 font-medium",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-green-400 animate-pulse"}),"Working"]})]}),(a.content.length>80||a.content.includes("\n"))&&(0,b.jsx)("div",{className:"mt-2 text-[15px] text-[var(--muted-foreground)] leading-relaxed line-clamp-3",children:(0,b.jsx)(l.Markdown,{content:(0,n.stripMarkers)(a.content.split("\n").slice(1).join("\n").trimStart()),isUser:"user"===a.role})})]})]})]}),a.attachments&&a.attachments.length>0&&(0,b.jsx)("div",{className:`mb-4 ${"user"!==a.role?"ml-[52px]":""}`,children:(0,b.jsx)(s,{attachments:a.attachments,compact:!0})}),I&&(0,b.jsx)("div",{className:"mb-4 text-sm text-[var(--muted-foreground)] leading-relaxed",children:(0,b.jsx)(l.Markdown,{content:I,isUser:!1})}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2 pt-2 mt-2 border-t border-[var(--card-border)]",children:[j&&r&&r.replyCount>0&&(0,b.jsxs)("button",{type:"button",onClick:()=>j(a.id),disabled:o?.has(a.id),className:"flex items-center gap-1.5 px-3 py-1.5 bg-[var(--app-shell-subtle)] hover:bg-[var(--item-hover-bg)] text-[var(--foreground)] border border-[var(--card-border)] text-xs font-medium rounded-lg transition-colors disabled:opacity-50",children:[o?.has(a.id)?(0,b.jsx)(z.Loader2,{className:"w-3.5 h-3.5 animate-spin text-[var(--muted-foreground)]"}):(0,b.jsx)(C.Clock,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)]"}),o?.has(a.id)?"Summarizing…":"Summarize"]}),r&&r.replyCount>0&&f&&(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-2 cursor-pointer hover:opacity-80 transition-opacity",onClick:()=>f(a.id),children:[(0,b.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)] font-medium",children:[r.replyCount," replies"]}),(0,b.jsx)("div",{className:"flex -space-x-2",children:r.participants.slice(0,3).map(a=>{if("user"===a)return(0,b.jsx)("div",{className:"w-6 h-6 rounded-full bg-[var(--app-shell-subtle)] border-2 border-[var(--card-bg)] flex items-center justify-center z-10",children:(0,b.jsx)(B.User,{className:"w-3 h-3 text-[var(--muted-foreground)]"})},"user");let c=$[a];return c?(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a,24,c.color),alt:c.name,className:"w-6 h-6 rounded-full border-2 border-[var(--card-bg)] object-cover z-10"},a):(0,b.jsx)("div",{className:"w-6 h-6 rounded-full bg-[var(--app-shell-subtle)] border-2 border-[var(--card-bg)] z-10"},a)})})]})]})]})}),Object.entries(d).filter(([,b])=>b.rootMessageId===a.id).map(([a,c])=>{let d=$[a];return(0,b.jsx)("div",{className:"px-6 pb-4",children:(0,b.jsx)(p,{participantId:a,participantName:d?.name||a,participantColor:d?.color||"#888",content:c.content})},`streaming-${a}`)})]})]},a.id)})]})}),(0,b.jsx)(J.JumpToLatestButton,{visible:X&&_.length>10,onClick:Z})]})}let O=(0,D.default)("message-square-text",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M7 11h10",key:"1twpyw"}],["path",{d:"M7 15h6",key:"d9of3u"}],["path",{d:"M7 7h8",key:"af5zfr"}]]);var P=a.i(724938);let Q={ack:{symbol:"👍",label:"Acknowledged"},working:{symbol:"🔄",label:"Working"},done:{symbol:"✅",label:"Done"},clarify:{symbol:"❓",label:"Needs clarification"},blocked:{symbol:"⛔",label:"Blocked"}};function R({type:a,count:c,participantIds:d}){let e=Q[a],f=d.join(", "),g=f?`${e.label}: ${f}`:e.label;return(0,b.jsxs)("span",{title:g,className:"inline-flex items-center gap-1 rounded-full border border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] px-2 py-0.5 text-xs text-[var(--foreground)]",children:[(0,b.jsx)("span",{"aria-hidden":!0,children:e.symbol}),(0,b.jsx)("span",{className:"tabular-nums",children:c})]})}function S({reactions:a}){if(!a||0===a.length)return null;let c=[...a].sort((a,b)=>b.count!==a.count?b.count-a.count:a.type.localeCompare(b.type));return(0,b.jsx)("div",{className:"mt-1 flex flex-wrap items-center gap-1",children:c.map(a=>(0,b.jsx)(R,{type:a.type,count:a.count,participantIds:a.participantIds},a.type))})}var T=a.i(698573);function U({messages:a,streaming:d,participants:e,rootMessageId:f,queued:g=!1,onClose:h,onCopyThread:i,onAddToChat:j,onDeleteThreadRoot:o,onDeleteMessage:p,highlightedMessageId:q,renderReplyComposer:r,activeProcesses:w=[]}){let y=(0,c.useRef)(null),z=(0,c.useRef)(new Map),C=Object.fromEntries(e.map(a=>[a.id,a])),D=(0,c.useMemo)(()=>{let b=a.find(a=>a.id===f),c=a.filter(a=>a.rootMessageId===f).sort((a,b)=>a.timestamp-b.timestamp);return b?[b,...c]:c},[a,f]),F=(0,c.useRef)(null),G=(0,c.useRef)(!1),H=(0,c.useRef)(null),[I,K]=(0,c.useState)(!1);(0,c.useEffect)(()=>{let a=F.current;if(!a)return;let b=()=>{let{scrollTop:b,scrollHeight:c,clientHeight:d}=a,e=c-b-d;G.current=e>80,K(e>200)};return a.addEventListener("scroll",b,{passive:!0}),()=>a.removeEventListener("scroll",b)},[]);let L=(0,c.useCallback)(()=>{y.current?.scrollIntoView({behavior:"smooth"})},[]);return(0,c.useEffect)(()=>{if(q&&q!==H.current){H.current=q;let a=z.current.get(q);a&&a.scrollIntoView({behavior:"smooth",block:"center"})}else q||G.current||(H.current=null,y.current?.scrollIntoView({behavior:"smooth"}))},[q,D,d]),(0,b.jsxs)("div",{className:"flex flex-col h-full overflow-hidden bg-[var(--app-shell-bg)] transition-colors",children:[w.length>0&&(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] backdrop-blur-md transition-colors",children:[(0,b.jsxs)("div",{className:"inline-flex items-center gap-2 text-[11px] font-medium text-[var(--app-shell-muted)]",children:[(0,b.jsx)(P.Sparkles,{className:"h-3.5 w-3.5 text-indigo-500",strokeWidth:1.75}),(0,b.jsx)("span",{className:"uppercase tracking-[0.16em]",children:"Working"})]}),(0,b.jsx)("div",{className:"flex items-center -space-x-1.5",children:w.map(a=>{let c=C[a.agentId];return(0,b.jsxs)("div",{className:"relative",title:`${c?.name||a.agentId} — ${a.state}`,children:[(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a.agentId,24,c?.color),alt:c?.name||a.agentId,className:"w-6 h-6 rounded-full border-2 border-[var(--app-shell-surface)] shadow-sm"}),(0,b.jsx)("span",{className:"absolute -bottom-0.5 -right-0.5 w-2.5 h-2.5 bg-green-400 rounded-full border-2 border-[var(--app-shell-surface)] animate-pulse"})]},a.agentId)})})]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 flex flex-col",children:[(0,b.jsx)("div",{ref:F,className:"flex-1 overflow-y-auto p-4 md:p-8 space-y-6 chat-scrollbar",children:(0,b.jsxs)("div",{className:"max-w-2xl mx-auto space-y-8 pb-4",children:[D.map(a=>{let c,d="user"===a.role,e=a.participantId?C[a.participantId]:null;return(0,b.jsxs)("div",{ref:b=>{var c;return c=a.id,void(b?z.current.set(c,b):z.current.delete(c))},"data-message-id":a.id,className:"group relative flex gap-4 ",children:[(0,b.jsx)("div",{className:"flex-shrink-0 mt-1",children:d?(0,b.jsx)("div",{className:"w-9 h-9 bg-[var(--app-shell-subtle)] rounded-full flex items-center justify-center text-[var(--app-shell-muted)] shadow-sm",children:(0,b.jsx)(B.User,{className:"w-5 h-5"})}):(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"hover:ring-2 hover:ring-[var(--ring)] rounded-full transition-shadow",children:(0,b.jsx)("img",{src:e?(0,m.agentAvatarUrl)(e.id,36,e.color):(0,m.agentAvatarUrl)(a.participantId||"assistant",36),alt:e?.name||a.participantId||"Assistant",className:"w-9 h-9 rounded-full shadow-sm border border-[var(--app-shell-border)] object-cover bg-[var(--app-shell-subtle)]"})})}),(0,b.jsxs)("div",{className:"flex-1 space-y-1.5 max-w-full overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[d?(0,b.jsx)("span",{className:"font-bold text-sm text-[var(--foreground)]",children:"You"}):(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"font-bold text-sm text-[var(--foreground)] hover:underline",style:e?.color?{color:e.color}:void 0,children:e?.name||a.participantId||"Assistant"}),void 0===a.rootMessageId&&a.id===f&&(0,b.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] rounded font-mono uppercase",children:"ROOT"}),(0,b.jsx)("span",{className:"text-[11px] text-[var(--app-shell-soft-text)]",children:(c=a.timestamp,new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(c))})]}),(0,b.jsxs)("div",{className:`text-[15px] leading-relaxed ${a.id===q?"ring-2 ring-[var(--ring)] rounded-2xl p-2 -m-2":""}`,children:[d?(0,b.jsx)(l.Markdown,{content:(0,n.stripMarkers)(a.content),isUser:!0}):(0,b.jsx)(T.StreamingSegments,{content:(0,n.stripMarkers)(a.content)}),a.attachments&&a.attachments.length>0&&(0,b.jsx)(s,{attachments:a.attachments})]}),a.reactions&&a.reactions.length>0&&(0,b.jsx)("div",{className:"mt-2",children:(0,b.jsx)(S,{reactions:a.reactions})}),(0,b.jsxs)(t,{children:[a.id===f&&(0,b.jsx)(v,{variant:"primary",size:"sm",onClick:()=>navigator.clipboard.writeText(a.id),title:"Copy message ID",children:(0,b.jsx)(E,{className:"w-3.5 h-3.5"})}),a.id===f&&i&&(0,b.jsx)(v,{variant:"neutral",size:"sm",onClick:()=>i(a.id),title:"Copy Thread",children:(0,b.jsx)(O,{className:"w-3.5 h-3.5"})}),(0,b.jsx)(v,{variant:"neutral",size:"sm",onClick:()=>navigator.clipboard.writeText(a.content),title:"Copy as Markdown",children:(0,b.jsx)(x.Copy,{className:"w-3.5 h-3.5"})}),a.id===f&&o&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{}),(0,b.jsx)(v,{variant:"destructive",size:"sm",onClick:()=>o(a.id),title:"Delete Thread",children:(0,b.jsx)(A.Trash2,{className:"w-3.5 h-3.5"})})]}),a.id!==f&&p&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{}),(0,b.jsx)(v,{variant:"destructive",size:"sm",onClick:()=>p(a.id),title:"Delete Message",children:(0,b.jsx)(A.Trash2,{className:"w-3.5 h-3.5"})})]})]})]})]},a.id)}),g&&0===w.length&&(0,b.jsxs)("div",{className:"flex gap-3 group relative opacity-80 animate-in fade-in slide-in-from-bottom-1 duration-300",children:[(0,b.jsx)("div",{className:"flex-shrink-0 mt-0.5",children:(0,b.jsx)("div",{className:"w-7 h-7 rounded-full border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] flex items-center justify-center",children:(0,b.jsx)(P.Sparkles,{className:"w-3.5 h-3.5 text-[var(--app-shell-soft-text)]",strokeWidth:1.5})})}),(0,b.jsx)("div",{className:"flex-1 max-w-full overflow-hidden",children:(0,b.jsxs)("div",{className:"flex items-center gap-2 py-1",children:[(0,b.jsx)("span",{className:"text-xs tracking-wide text-[var(--app-shell-soft-text)]",children:"Processing"}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px]",children:[(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-[var(--app-shell-soft-text)]/50 animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-[var(--app-shell-soft-text)]/50 animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-[var(--app-shell-soft-text)]/50 animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})]})})]}),Object.entries(d).filter(([,a])=>a.rootMessageId===f).map(([a,c])=>{let d=C[a],e=c.content.trim().length>0,f=w.some(b=>b.agentId===a);return(0,b.jsxs)("div",{className:"flex gap-4 group relative animate-in fade-in slide-in-from-bottom-2 duration-300",children:[(0,b.jsx)("div",{className:"flex-shrink-0 mt-1",children:(0,b.jsx)(k.default,{href:`/agents/${d?.id||a}`,className:"hover:ring-2 hover:ring-[var(--ring)] rounded-full transition-shadow",children:(0,b.jsx)("img",{src:d?(0,m.agentAvatarUrl)(d.id,36,d.color):(0,m.agentAvatarUrl)(a,36),alt:d?.name||a,className:"w-9 h-9 rounded-full shadow-sm border border-[var(--app-shell-border)] object-cover bg-[var(--app-shell-subtle)]"})})}),(0,b.jsxs)("div",{className:"flex-1 space-y-1.5 max-w-full overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(k.default,{href:`/agents/${d?.id||a}`,className:"font-bold text-sm text-[var(--foreground)] hover:underline",style:d?.color?{color:d.color}:void 0,children:d?.name||a}),!e&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px]",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})]}),e&&(0,b.jsx)(T.StreamingSegments,{content:c.content,thoughts:c.thoughts}),e&&f&&(0,b.jsx)("div",{className:"flex items-center gap-2 pt-1",children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px]",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})})]})]},`streaming-${a}`)}),(0,b.jsx)("div",{ref:y,className:"h-4"})]})}),(0,b.jsx)(J.JumpToLatestButton,{visible:I&&D.length>10,onClick:L})]}),(0,b.jsx)("div",{className:"z-20 transition-colors duration-200",children:r(f)})]})}var V=a.i(971382);let W=(0,D.default)("search-x",[["path",{d:"m13.5 8.5-5 5",key:"1cs55j"}],["path",{d:"m8.5 8.5 5 5",key:"a8mexj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);function X({query:a,results:c,total:d,participants:e,threadTitleById:f,isLoading:g,error:h,onSelectResult:i,headerSlot:j}){let l=Object.fromEntries(e.map(a=>[a.id,a]));return(0,b.jsx)("div",{className:"chat-scrollbar flex-1 overflow-y-auto p-4",children:(0,b.jsxs)("div",{className:"max-w-3xl mx-auto",children:[j?(0,b.jsx)("div",{className:"sticky top-0 z-20 bg-[var(--app-shell-subtle)]/70 backdrop-blur-md pt-4 pb-6 px-4 -mx-4 border-b border-transparent transition-colors",children:(0,b.jsx)("div",{className:"max-w-2xl mx-auto",children:j})}):null,(0,b.jsxs)("div",{className:"mb-4 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-4 py-3",children:[(0,b.jsx)("div",{className:"text-sm font-semibold text-[var(--foreground)]",children:"Search results"}),(0,b.jsx)("div",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:g?"Searching…":`${d} result${1===d?"":"s"} for "${a}"`}),h?(0,b.jsx)("div",{className:"mt-2 text-sm text-rose-600",children:h}):null]}),g||h||0!==c.length?null:(0,b.jsxs)("div",{className:"mt-20 flex flex-col items-center justify-center space-y-2 text-[var(--app-shell-muted)]",children:[(0,b.jsx)(W,{className:"h-6 w-6",strokeWidth:1.5}),(0,b.jsx)("p",{className:"text-sm font-medium",children:"No matching messages"})]}),(0,b.jsx)("div",{className:"space-y-3 pb-6",children:c.map(a=>{var c;let d=a.participantId?l[a.participantId]:null,e=f[a.threadId]||"Untitled thread",g="user"===a.role?"You":d?.name||a.participantId||"Assistant";return(0,b.jsxs)("button",{type:"button",onClick:()=>i(a),className:"w-full rounded-xl border border-[var(--border)] bg-[var(--card-bg)] p-4 text-left transition hover:border-[var(--border)] hover:shadow-sm focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-slate-400",children:[(0,b.jsxs)("div",{className:"mb-3 flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)("div",{className:"flex h-8 w-8 items-center justify-center overflow-hidden rounded-full bg-[var(--muted)]",children:"user"===a.role?(0,b.jsx)(B.User,{className:"h-4 w-4 text-[var(--foreground)]"}):d?(0,b.jsx)(k.default,{href:`/agents/${d.id}`,onClick:a=>a.stopPropagation(),className:"h-full w-full hover:ring-2 hover:ring-blue-300 rounded-full transition-shadow",children:(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(d.id,32,d.color),alt:"",className:"h-full w-full object-cover"})}):(0,b.jsx)(V.Bot,{className:"h-4 w-4 text-[var(--foreground)]"})}),(0,b.jsxs)("div",{className:"min-w-0",children:["user"!==a.role&&d?(0,b.jsx)(k.default,{href:`/agents/${d.id}`,onClick:a=>a.stopPropagation(),className:"truncate text-sm font-semibold text-[var(--foreground)] hover:underline block",children:g}):(0,b.jsx)("p",{className:"truncate text-sm font-semibold text-[var(--foreground)]",children:g}),(0,b.jsx)("p",{className:"truncate text-xs text-[var(--muted-foreground)]",children:e})]})]}),(0,b.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:(c=a.timestamp,new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}).format(c))})]}),(0,b.jsx)("p",{className:"text-sm leading-relaxed text-[var(--foreground)]",children:function(a){let c=a.split(/(<\/?mark>)/g),d=!1,e=[];for(let[a,f]of c.entries()){if("<mark>"===f){d=!0;continue}if("</mark>"===f){d=!1;continue}f&&e.push(d?(0,b.jsx)("mark",{className:"rounded bg-amber-200/80 px-0.5",children:f},`${a}-mark`):(0,b.jsx)("span",{children:f},`${a}-text`))}return e}(a.snippet)})]},`${a.threadId}-${a.messageId}`)})})]})})}var Y=a.i(689882),Z=a.i(455106),$=a.i(427411);let _={activeParticipantIdsByThread:{}};function aa(a,b){let c=a.trim();if(c)({..._}).activeParticipantIdsByThread[c]=function(a){if(!Array.isArray(a))return[];let b=new Set,c=[];for(let d of a){if("string"!=typeof d)continue;let a=d.trim();!a||b.has(a)||(b.add(a),c.push(a))}return c}(b)}let ab={threadSidebarVisible:!1,workspaceRoots:[],homeSearchConsent:!1,fileIgnorePatterns:[]};function ac(a){return a&&"object"==typeof a?{threadSidebarVisible:"boolean"==typeof a.threadSidebarVisible?a.threadSidebarVisible:ab.threadSidebarVisible,workspaceRoots:Array.isArray(a.workspaceRoots)?a.workspaceRoots.filter(a=>"string"==typeof a):ab.workspaceRoots,homeSearchConsent:"boolean"==typeof a.homeSearchConsent?a.homeSearchConsent:ab.homeSearchConsent,fileIgnorePatterns:Array.isArray(a.fileIgnorePatterns)?a.fileIgnorePatterns.filter(a=>"string"==typeof a):ab.fileIgnorePatterns}:ab}let ad="/api/userPreferences";function ae(a){return a.json().then(a=>a&&"object"==typeof a?ac(a.preferences??a):ac(a)).catch(()=>ac(null))}function af(a){return a.statusText||`Failed to reach ${ad} (${a.status})`}async function ag(){let a=await fetch(ad,{cache:"no-store"});if(!a.ok)throw Error(af(a));return ae(a)}async function ah(a){let b=await fetch(ad,{method:"POST",headers:{"Content-Type":"application/json"},cache:"no-store",body:JSON.stringify({preferences:a})});if(!b.ok)throw Error(af(b));return ae(b)}var ai=a.i(785061),aj=a.i(734709),ak=a.i(830284),al=a.i(542341),am=a.i(754812),an=a.i(962684),an=an,ao=a.i(970393),ap=a.i(523321),aq=a.i(508869),ar=a.i(328400),as=a.i(372871),as=as;function at({logs:a,participants:d,onClear:e,open:f,onToggle:g}){let[h,i]=(0,c.useState)(420),[j,k]=(0,c.useState)(null),l=(0,c.useRef)(null),m=(0,c.useRef)(null),[n,o]=(0,c.useState)(!1),p=(0,c.useRef)(!1),q=(0,c.useRef)(0),r=(0,c.useRef)(0),s=Object.fromEntries(d.map(a=>[a.id,a]));(0,c.useEffect)(()=>{f&&l.current?.scrollIntoView({behavior:"smooth"})},[a.length,f]),(0,c.useEffect)(()=>{let a=m.current;if(!a)return;let b=()=>{o(a.scrollHeight-a.scrollTop-a.clientHeight>200)};return a.addEventListener("scroll",b,{passive:!0}),()=>a.removeEventListener("scroll",b)},[f]);let t=(0,c.useCallback)(()=>{l.current?.scrollIntoView({behavior:"smooth"})},[]),u=(0,c.useCallback)(a=>{a.preventDefault(),p.current=!0,q.current=a.clientX,r.current=h,a.target.setPointerCapture(a.pointerId)},[h]),v=(0,c.useCallback)(a=>{if(!p.current)return;let b=q.current-a.clientX;i(Math.max(280,Math.min(r.current+b,.6*window.innerWidth)))},[]),w=(0,c.useCallback)(()=>{p.current=!1},[]);if(!f)return null;let x=j?a.filter(a=>a.participantId===j):a;return(0,b.jsxs)("div",{className:"flex h-full shrink-0",children:[(0,b.jsx)("div",{onPointerDown:u,onPointerMove:v,onPointerUp:w,className:"w-1.5 cursor-col-resize bg-zinc-800 hover:bg-zinc-600 transition-colors flex items-center justify-center shrink-0",children:(0,b.jsx)("div",{className:"h-8 w-0.5 rounded-full bg-zinc-500"})}),(0,b.jsxs)("div",{className:"flex flex-col bg-zinc-950 h-full",style:{width:h},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 border-b border-zinc-800 shrink-0",children:[(0,b.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)] font-mono",children:"Logs"}),(0,b.jsxs)("select",{value:j||"",onChange:a=>k(a.target.value||null),className:"bg-zinc-800 text-zinc-300 text-[11px] rounded px-1.5 py-0.5 outline-none",children:[(0,b.jsx)("option",{value:"",children:"All"}),d.map(a=>(0,b.jsx)("option",{value:a.id,children:a.name},a.id))]}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-2",children:[(0,b.jsx)("button",{onClick:e,className:"text-[11px] text-[var(--muted-foreground)] hover:text-zinc-300",children:"Clear"}),(0,b.jsx)("button",{onClick:g,className:"text-[11px] text-[var(--muted-foreground)] hover:text-zinc-300",children:"✕"})]})]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 flex flex-col",children:[(0,b.jsxs)("div",{ref:m,className:"flex-1 overflow-y-auto font-mono text-[11px] leading-4 px-3 py-2",children:[x.map((a,c)=>{let d=s[a.participantId]?.name||a.participantId,e=s[a.participantId]?.color||"#888",f="stderr"===a.stream;return(0,b.jsxs)("div",{className:"flex gap-2 whitespace-pre-wrap break-all",children:[(0,b.jsx)("span",{className:"text-[var(--muted-foreground)] shrink-0 select-none",children:new Date(a.timestamp).toLocaleTimeString([],{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}),(0,b.jsx)("span",{className:"shrink-0",style:{color:e},children:d}),(0,b.jsx)("span",{className:f?"text-red-400":"text-[var(--muted-foreground)]",children:a.line})]},c)}),(0,b.jsx)("div",{ref:l})]}),(0,b.jsx)(J.JumpToLatestButton,{visible:n&&x.length>20,onClick:t})]})]})]})}var au=a.i(166621);async function av(a){let b=await fetch(`/api/threads/knowledge?rootMessageId=${encodeURIComponent(a)}`,{cache:"no-store"});if(!b.ok)throw Error("Failed to load thread knowledge run");let c=await b.json().catch(a=>(console.warn("[ChatContainer] failed to parse thread knowledge response:",a),null));return c?.run??null}function aw(a,b,c){let d=new Set(a.map(a=>a.id)),e=c?b.find(a=>a.thread_ids?.includes(c)):b[0],f=e?e.agents.map(a=>a.agent_id).filter(a=>d.has(a)):[];return e?f:0===f.length?a.map(a=>a.id):f}function ax(a,b){let c=Object.fromEntries(b.map(a=>[a.id,a])),d=[];for(let b of a){let a="user"===b.role?"You":b.participantId?c[b.participantId]?.name||b.participantId:"Assistant",e=function(a,b=!1){return(b?a.replace(/(?:^|\n)Thinking\.\.\.[\s\S]*?\.\.\.done thinking\.?\s*/g,"\n").trim():a).replaceAll("<!-- thread-summary -->","").trim().replace(/\r\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}(b.content,"user"!==b.role);e&&(d.push(`**${a}:**`),d.push(""),d.push(e),d.push(""))}return d.join("\n").trim()}function ay({projectSlug:a,initialThreadId:k,initialRootMessageId:l,showSidebar:m=!0}={}){let{isTouchLayout:n}=(0,i.useInputCapabilities)(),{getSelection:o,pushSelection:p,replaceSelection:q}=(0,e.useUrlSelection)(),{threads:r,activeThreadId:s,selectThread:t,createThread:u,deleteThread:v,updateThreadMessages:w,isCreating:x,deletingThreadId:y,renamingThreadId:z,isLoading:A,isRestoringActiveThread:B,renameThread:C,updateThreadStatus:D,updateThreadOutcomeNote:E,updateMessageThreadStatus:F,updateMessageOutcomeNote:G}=(0,h.useThreadState)(k),{messages:H,setMessages:I,logs:J,sendMessage:K,loadHistory:L,clearLogs:M,chatRuns:O,setChatRuns:P,stop:Q,stopThread:R}=(0,f.useGroupChat)(s),{activeAgents:S,processes:T,streaming:V,chatRuns:W,poll:ab}=(0,g.useProcessPolling)(s?{workspaceId:s}:null,{messages:H,setMessages:I}),ac=(0,c.useMemo)(()=>{let a=Date.now(),b=new Map(W.map(a=>[a.chatRunId,a]));for(let c of O)!(!c.optimistic||b.has(c.chatRunId))&&(a-(c.enqueuedAt??0)>5e3||b.set(c.chatRunId,c));return Array.from(b.values()).filter(a=>"queued"===a.status||"running"===a.status)},[O,W]),ad=S.size>0||ac.some(a=>"running"===a.status)?"working":ac.some(a=>"queued"===a.status)?"queued":"ready";(0,c.useEffect)(()=>{P(a=>{let b=Date.now(),c=new Map(a.filter(a=>"string"==typeof a.chatRunId&&a.chatRunId.length>0).map(a=>[a.chatRunId,a]));for(let a of W)a?.chatRunId&&c.set(a.chatRunId,a);return Array.from(c.values()).filter(a=>!!(!a.optimistic||W.some(b=>b.chatRunId===a.chatRunId))||b-(a.enqueuedAt??0)<=5e3).sort((a,b)=>String(a.chatRunId||"").localeCompare(String(b.chatRunId||"")))})},[W,P]);let ae=(0,c.useCallback)(async a=>{await fetch(`/api/chat-runs/${encodeURIComponent(a)}/signal`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signal:"cancel",reason:"Stopped from chat UI"})}).catch(a=>console.warn("[ChatContainer] cancel chat run failed:",a))},[]),af=(0,c.useCallback)(async()=>{let a=ac[0];a?.chatRunId&&await ae(a.chatRunId),await Q(),await ab()},[ac,ae,Q,ab]),az=(0,c.useCallback)(async a=>{let b=ac.find(b=>b.rootMessageId===a);b?.chatRunId&&await ae(b.chatRunId),await R(a),await ab()},[ac,ae,R,ab]),aA=(0,c.useRef)(af);(0,c.useEffect)(()=>{aA.current=af},[af]);let{projects:aB,createProject:aC,deleteProject:aD,addAgent:aE,removeAgent:aF,reorderAgents:aG}=(0,ak.useProjectsWithAgents)(),{projects:aH,updateProject:aI}=(0,ak.useProjects)(),aJ=(0,c.useMemo)(()=>s?aB.filter(a=>a.thread_ids?.includes(s)):aB,[aB,s]),aK=(0,c.useMemo)(()=>a||aJ[0]?.slug||void 0,[a,aJ]),aL=(0,c.useMemo)(()=>aJ[0]?.id??void 0,[aJ]),[aM,aN]=(0,c.useState)([]),[aO,aP]=(0,c.useState)(!1),[aQ,aR]=(0,c.useState)([]),[aS,aT]=(0,c.useState)(!1),[aU,aV]=(0,c.useState)(()=>"light"),[aW,aX]=(0,c.useState)(!1),[aY,aZ]=(0,c.useState)(368),a$=(0,c.useRef)(!1);(0,c.useEffect)(()=>{let a=(0,Z.loadWorkspaceSidebarVisible)();a$.current=!0,aX(a),aZ((0,$.loadWorkspaceWidth)()||368)},[]),(0,c.useEffect)(()=>{},[aU]);let[a_,a0]=(0,c.useState)(!1),[a1,a2]=(0,c.useState)(new Set),[a3,a4]=(0,c.useState)(!1),[a5,a6]=(0,c.useState)(!1),[a7,a8]=(0,c.useState)(null),a9=o("open"),ba=o("message"),bb=a?a9??l??null:l??null,bc=bb?a1.has(bb):a3;(0,c.useEffect)(()=>{if(!bb)return;let a=!1,b=()=>{fetch(`/api/schedules?rootMessageId=${encodeURIComponent(bb)}`).then(a=>a.json()).then(b=>{a||a2(a=>{let c=a.has(bb);if(b.active&&!c){let b=new Set(a);return b.add(bb),b}if(!b.active&&c){let b=new Set(a);return b.delete(bb),b}return a})}).catch(a=>console.warn("[ChatContainer] check auto-mode status failed:",a))};b();let c=setInterval(b,d.UI_POLL_CHAT_CHECK_MS);return()=>{a=!0,clearInterval(c)}},[bb]),(0,c.useEffect)(()=>{let a=!1,b=()=>{fetch("/api/schedules").then(a=>a.json()).then(b=>{!a&&b.activeRootMessageIds&&a2(a=>{let c=new Set(b.activeRootMessageIds);return c.size===a.size&&[...c].every(b=>a.has(b))?a:c})}).catch(a=>console.warn("[ChatContainer] fetch schedules failed:",a))};b();let c=setInterval(b,d.UI_POLL_CHAT_ALT_MS);return()=>{a=!0,clearInterval(c)}},[]);let bd=(0,c.useCallback)((b,c={})=>{let d=c.replace?q:p;if(a){let e=c.threadId??s??k??null;if(!e)return;d({open:b,message:c.messageId??null},`/projects/${a}/thread/${encodeURIComponent(e)}`);return}b?d({message:c.messageId??null},`/thread/${encodeURIComponent(b)}`):d({message:null},"/")},[s,k,a,p,q]);(0,c.useEffect)(()=>{l&&(async()=>{try{let a=await fetch(`/api/messages/${l}`);if(!a.ok)return;let{threadId:b}=await a.json();b&&t(b)}catch{}})()},[l,t]);let[be,bf]=(0,c.useState)(""),[bg,bh]=(0,c.useState)([]),[bi,bj]=(0,c.useState)(0),[bk,bl]=(0,c.useState)(!1),[bm,bn]=(0,c.useState)(null),[bo,bp]=(0,c.useState)(new Set),[bq,br]=(0,c.useState)(null),[bs,bt]=(0,c.useState)(null),bu=(0,c.useRef)(null),bv=(0,c.useRef)(""),bw=(0,c.useCallback)(async(a=!1)=>{try{let a=await fetch("/api/participants");if(!a.ok)return;let b=await a.json();if(!Array.isArray(b))return;aN(b)}finally{a&&aP(!0)}},[]),bx=(0,c.useCallback)(async a=>{try{await ah({threadSidebarVisible:a})}catch(a){console.error("Unable to persist thread sidebar preference",a)}},[ah]),by=(0,c.useCallback)(a=>{(0,Z.persistWorkspaceSidebarVisible)(a),bx(a)},[bx]),bz=be.trim(),bA=bz.length>0,bB=(0,c.useMemo)(()=>Object.fromEntries(r.map(a=>[a.id,a.title?.trim()||"Untitled thread"])),[r]),bC=(0,c.useMemo)(()=>{if(!bb)return[];let a=new Set([H.find(a=>a.id===bb),...H.filter(a=>a.rootMessageId===bb)].filter(Boolean).map(a=>a.participantId).filter(Boolean));return Object.keys(V).forEach(b=>{V[b].rootMessageId===bb&&a.add(b)}),aM.filter(b=>a.has(b.id))},[bb,H,V,aM]),bD=(0,c.useMemo)(()=>{let a=new Map(aM.map(a=>[a.id,a]));return aQ.map(b=>a.get(b)).filter(Boolean)},[aM,aQ]),bE=(0,c.useMemo)(()=>aH.map(a=>({id:a.id,name:a.name,slug:a.slug})),[aH]),bF=(0,c.useMemo)(()=>{if(!bb)return 0;let a=[H.find(a=>a.id===bb),...H.filter(a=>a.rootMessageId===bb)].filter(Boolean);return 0===a.length?0:Math.max(...a.map(a=>a.timestamp))},[bb,H]),bG=(0,c.useMemo)(()=>{if(!bb)return"";let a=H.find(a=>a.id===bb);if(!a)return"Discussion";let b=a.content.trim();return b.length>60?b.slice(0,60)+"...":b},[bb,H]),bH=(0,c.useMemo)(()=>{if(!bb)return null;let a=H.find(a=>a.id===bb),b=a?.threadStatus??"active";return{value:b,...{active:{label:"Active",color:"#f59e0b"},paused:{label:"Paused",color:"#f97316"},"in-review":{label:"In Review",color:"#6b7280"},done:{label:"Done",color:"#3b82f6"},archived:{label:"Archived",color:"#9ca3af"}}[b]}},[bb,H]);(0,c.useEffect)(()=>{if(!ba)return;let a=H.find(a=>a.id===ba)??null;if(a){let b=a.rootMessageId||a.id;b!==bb&&bd(b,{messageId:ba,replace:!0});return}!bb||[H.find(a=>a.id===bb),...H.filter(a=>a.rootMessageId===bb)].filter(Boolean).length>0&&q({message:null})},[H,bd,bb,q,ba]);let bI=(0,c.useCallback)(()=>{bf(""),bh([]),bj(0),bn(null),bl(!1)},[]);(0,c.useCallback)(()=>{let a=ax(H,aM);navigator.clipboard.writeText(a).then(()=>{aT(!0),setTimeout(()=>aT(!1),2e3)})},[H,aM]);let[bJ,bK]=(0,c.useState)(null),bL=(0,c.useCallback)(a=>{let b=H.find(b=>b.id===a);if(!b)return;let c=[b,...H.filter(b=>b.rootMessageId===a).sort((a,b)=>a.timestamp-b.timestamp)];bK({title:b.content.slice(0,60).replace(/\n/g," ").trim()||"Untitled",threadId:a,messages:c})},[H]),bM=(0,c.useCallback)(a=>{let b=ax([H.find(b=>b.id===a),...H.filter(b=>b.rootMessageId===a).sort((a,b)=>a.timestamp-b.timestamp)].filter(Boolean),aM);navigator.clipboard.writeText(b).catch(a=>console.error("Failed to copy thread",a))},[H,aM]),bN=(0,c.useCallback)(async()=>{if(bb){a6(!0);try{let a=["repo"];aK&&a.push("project");let b=await fetch("/api/threads/knowledge",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:bb,scopes:a})}),c=await b.json().catch(a=>(console.warn("[ChatContainer] failed to parse knowledge extraction response:",a),null));if(!b.ok)throw Error("string"==typeof c?.error?c.error:"Request failed");a8(c?.run??null)}catch(b){let a=b instanceof Error?b.message:"Request failed";window.alert(`Failed to extract knowledge: ${a}`)}finally{a6(!1)}}},[bb,aK]);(0,c.useEffect)(()=>{if(!bb){a8(null),a6(!1);return}let a=!1;return(async()=>{try{let b=await av(bb);if(a)return;a8(b)}catch{a||a8(null)}})(),()=>{a=!0}},[bb]),(0,c.useEffect)(()=>{if(!bb||a7?.status!=="running")return;let a=!1,b=async()=>{try{let b=await av(bb);if(a)return;a8(b)}catch{}};b();let c=window.setInterval(()=>{b()},2e3);return()=>{a=!0,window.clearInterval(c)}},[bb,a7?.status]);let bO=a7?.status==="running",bP=a5||bO,bQ=(a7?.repoInsertedCount??0)+(a7?.projectInsertedCount??0),bR=(0,c.useMemo)(()=>{if(!a7)return null;if("running"===a7.status)return"Learning in progress";if("failed"===a7.status)return"Last learning run failed";if(bQ>0){let a=1===bQ?"insight":"insights";return`Learned ${bQ} ${a}`}return"No new learnings"},[bQ,a7]);(0,c.useEffect)(()=>{bw(!0)},[bw]);let bS=(0,c.useMemo)(()=>{if(!aO)return[];let a=new Set(aM.map(a=>a.id)),b=new Set;for(let c of H)"assistant"===c.role&&c.participantId&&(a.has(c.participantId)||b.add(c.participantId));for(let c of Object.keys(V))a.has(c)||b.add(c);return Array.from(b).sort()},[H,aM,aO,V]);(0,c.useEffect)(()=>{if(!aO)return;let a=bS.join("|");if(!a){bv.current="";return}bv.current!==a&&(bv.current=a,bw(!1))},[aO,bw,bS]),(0,c.useEffect)(()=>{if(!aO)return;let a=aw(aM,aB,s);if(!s)return void aR(a);let b=function(a){let b=a.trim();if(!b)return null;let c={..._};return b in c.activeParticipantIdsByThread?[...c.activeParticipantIdsByThread[b]]:null}(s);if(null===b)return void aR(a);let c=function(a,b){if(null===b)return a;let c=new Set(b);return a.filter(a=>c.has(a))}(a,b),d=c.length>0?c:a;(d.length!==b.length||d.some((a,c)=>b[c]!==a))&&aa(s,d),aR(d)},[s,aM,aO,aB]),(0,c.useEffect)(()=>{let a=!1;return(async()=>{try{let b=await ag();if(a)return;aX(a=>a===b.threadSidebarVisible?a:a$.current?(bx(a),a):((0,Z.persistWorkspaceSidebarVisible)(b.threadSidebarVisible),b.threadSidebarVisible))}catch(a){console.error("Failed to load user preferences",a)}})(),()=>{a=!0}},[bx]),(0,c.useEffect)(()=>{A||x||0!==r.length||u({id:"global",title:"General"})},[A,x,r.length,u]),(0,c.useEffect)(()=>{if(a)return;let b=a=>{if((a.metaKey||a.ctrlKey)&&"k"===a.key.toLowerCase()){a.preventDefault(),bu.current?.focus(),bu.current?.select();return}"Escape"===a.key&&bz&&bI()};return window.addEventListener("keydown",b),()=>window.removeEventListener("keydown",b)},[bI,bz,a]),(0,c.useEffect)(()=>{if(!bz){bh([]),bj(0),bn(null),bl(!1);return}let a=!1;bl(!0);let b=window.setTimeout(()=>{(async()=>{try{let b=new URLSearchParams({q:bz,limit:"20",offset:"0"}),c=await fetch(`/api/search?${b.toString()}`),d=await c.json().catch(a=>(console.warn("[ChatContainer] failed to parse search response:",a),null));if(a)return;if(!c.ok){let a=d&&"object"==typeof d&&"error"in d?String(d.error):"Search failed";bh([]),bj(0),bn(a);return}bh(Array.isArray(d.results)?d.results:[]),bj("number"==typeof d.total?d.total:0),bn(null)}catch(b){if(a)return;console.error("Search request failed",b),bh([]),bj(0),bn("Search failed")}finally{a||bl(!1)}})()},300);return()=>{a=!0,window.clearTimeout(b)}},[bz]);let bT=(0,c.useRef)(null);(0,c.useEffect)(()=>{null!==bT.current&&bT.current!==s&&aA.current(),bT.current=s,s&&L(s)},[s,L]),(0,c.useEffect)(()=>{s&&w(s,H)},[s,H,w]);let bU=(0,c.useCallback)((a,b,c=10,d,e,f)=>{s&&0!==bD.length&&K(b,c,s,a,void 0,void 0,(0,ai.orderParticipantIds)(bD.map(a=>a.id),d),aK,e,f)},[s,K,bD,aK]),bV=(0,c.useCallback)(async a=>{if(s){if(0===bD.length)return void window.alert("Enable at least one agent in this project.");bp(b=>new Set(b).add(a));try{let b=await fetch("/api/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:s,rootMessageId:a,activeParticipantIds:bD.map(a=>a.id)})});b.ok?await L(s):console.error("Summarize failed:",await b.text())}catch(a){console.error("Summarize error:",a)}finally{bp(b=>{let c=new Set(b);return c.delete(a),c})}}},[s,L,bD]);(0,c.useCallback)(a=>{bd(a)},[bd]);let bW=(0,c.useCallback)(a=>{bd(a)},[bd]),bX=(0,c.useCallback)(a=>{let b=a?.trim()??"";b&&bf(b),requestAnimationFrame(()=>{bu.current?.focus(),b||bu.current?.select()})},[]),bY=(0,c.useCallback)(()=>{if(!s)return;let a=(()=>{if(bb)return bb;let a=new Set(H.map(a=>a.rootMessageId).filter(a=>!!a));for(let b=H.length-1;b>=0;b-=1){let c=H[b];if(!c.rootMessageId&&a.has(c.id))return c.id}return null})();a?bV(a):console.warn("No thread with replies available to summarize")},[s,bV,H,bb]),bZ=(0,c.useCallback)(async(a,b,c,d,e,f,g)=>{let h=a.match(/^\/search(?:\s+([\s\S]+))?$/i);if(h)return void bX(h[1]);if(/^\/summarize(?:\s+[\s\S]+)?$/i.test(a))return void bY();let i=s;i||(i=(await u()).id);let j=bD.map(a=>a.id);if(0===j.length)return void window.alert("Enable at least one agent in this project.");let k=(0,ai.orderParticipantIds)(j,e);if(bb)return void await K(a,b,i,bb,c,d,k,aK,f,g);let l=await K(a,b,i,null,c,d,k,aK,f,g);a3&&l&&(a4(!1),a2(a=>{let b=new Set(a);return b.add(l),b}),fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"activate",rootMessageId:l})}).catch(a=>console.error("Failed to activate schedule for new thread:",a)))},[s,a3,u,bX,bY,bb,bD,K,aK]),b$=(0,c.useCallback)(async a=>{if(!bb)return void a4(a);a2(b=>{let c=new Set(b);return a?c.add(bb):c.delete(bb),c});try{await fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:a?"activate":"stop",rootMessageId:bb})})}catch(a){console.error("Failed to toggle autonomous schedule:",a)}},[bb]),b_=(0,c.useCallback)(a=>{bd(a.rootMessageId||a.messageId,{messageId:a.messageId,threadId:a.threadId}),bI()},[bI,bd]),b0=(0,c.useCallback)(async a=>{af(),await v(a)},[v,af]),b1=(0,c.useCallback)(a=>{if(!s||!a)return;let b=H.find(b=>b.id===a);bt({type:"thread",id:a,preview:b?.content?.slice(0,120)||void 0})},[s,H]),b2=(0,c.useCallback)(async a=>{if(s){br(a),az(a);try{let b=new URLSearchParams({threadId:s,rootMessageId:a}),c=await fetch(`/api/history?${b.toString()}`,{method:"DELETE"});if(!c.ok)return void console.error("Failed to delete message thread",await c.text());let d=ba?H.find(a=>a.id===ba)??null:null,e=d?d.rootMessageId||d.id:null;bb===a?bd(null,{replace:!0}):e===a&&q({message:null});let f=H.filter(b=>b.id!==a&&b.rootMessageId!==a);w(s,f),await L(s)}catch(a){console.error("Failed to delete message thread",a)}finally{br(b=>b===a?null:b)}}},[s,az,L,H,bd,bb,q,ba,w]),b3=(0,c.useCallback)(a=>{if(!s||!a)return;let b=H.find(b=>b.id===a);bt({type:"message",id:a,preview:b?.content?.slice(0,120)||void 0})},[s,H]),b4=(0,c.useCallback)(async a=>{if(s)try{let b=new URLSearchParams({threadId:s,messageId:a}),c=await fetch(`/api/history?${b.toString()}`,{method:"DELETE"});if(!c.ok)return void console.error("Failed to delete message",await c.text());ba===a&&q({message:null});let d=H.filter(b=>b.id!==a);w(s,d),await L(s)}catch(a){console.error("Failed to delete message",a)}},[s,L,H,q,ba,w]),b5=(0,c.useCallback)(()=>{bs&&("thread"===bs.type?b2(bs.id):b4(bs.id),bt(null))},[bs,b2,b4]),b6=(0,c.useCallback)(()=>{bt(null)},[]),b7=(0,c.useMemo)(()=>[{name:"/search",description:"Search messages (usage: /search <query>)",aliases:["find"],execute:()=>bX()},{name:"/summarize",description:"Summarize current thread or latest thread with replies",aliases:["sum"],execute:()=>bY()}],[bX,bY]),b8=(0,c.useMemo)(()=>{let a=aK?aJ.find(a=>a.slug===aK):aJ[0];return a?.repos??[]},[aJ,aK]),[b9,ca]=(0,c.useState)(new Set),cb=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!bb){ca(new Set),cb.current=null;return}cb.current!==bb&&(ca(new Set),cb.current=bb,fetch(`/api/thread-repos?rootMessageId=${encodeURIComponent(bb)}`).then(a=>a.json()).then(a=>{cb.current===bb&&a.repoIds&&a.repoIds.length>0&&ca(new Set(a.repoIds))}).catch(a=>console.warn("[ChatContainer] load thread repos failed:",a)))},[bb]);let cc=(0,c.useCallback)(a=>{ca(a),bb&&fetch("/api/thread-repos",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:bb,repoIds:[...a]})}).catch(a=>console.warn("[ChatContainer] save thread repos failed:",a))},[bb]),cd=(0,c.useCallback)(a=>{let c=T.some(b=>["spawning","running"].includes(b.state)&&b.threadId===a)||Object.values(V).some(b=>b.rootMessageId===a)?"working":ac.some(b=>b.rootMessageId===a&&"queued"===b.status)?"queued":"ready";return(0,b.jsx)(Y.Composer,{onSend:(b,c,d,e,f,g,h)=>bU(a,b,c,f,g,h),onStop:()=>az(a),loading:"ready"!==c,activityStatus:c,participants:bD,projectGroups:aJ,projects:bE,projectId:aL,projectSlug:aK,messages:H,commands:b7,placeholder:"Reply — @name to mention, /search, /summarize",autoMode:bc,onAutoModeChange:b$,repos:b8,selectedRepoIds:b9,onRepoSelectionChange:cc})},[bU,az,V,bD,aJ,bE,aL,aK,b7,H,bc,b$,T,ac,b8,b9,cc]),ce=(0,c.useCallback)(()=>{aX(a=>{let b=!a;return by(b),b})},[by]),cf=(0,c.useCallback)(a=>{aZ(a),(0,$.persistWorkspaceWidth)(a)},[]),cg=async a=>{let b=await fetch("/api/participants",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(b.ok){let a=await b.json();aN(b=>b.map(b=>b.id===a.id?a:b))}},ch=(0,c.useCallback)((a,b)=>{aR(c=>{let d=aw(aM,aB,s);if(!new Set(d).has(a))return c;let e=new Set(c);b?e.add(a):e.delete(a);let f=d.filter(a=>e.has(a));return s&&aa(s,f),f})},[s,aM,aB]),ci=(0,c.useCallback)(a=>{let b=aB.find(b=>b.id===a);if(!b||s&&!b.thread_ids?.includes(s))return;let c=b.agents.map(a=>a.agent_id);aR(c),s&&aa(s,c)},[aB,s]),cj=(0,c.useCallback)(()=>{aV(a=>"dark"===a?"light":"dark")},[]),ck=()=>(0,b.jsx)("button",{type:"button",onClick:cj,"aria-label":"dark"===aU?"Switch to light theme":"Switch to dark theme",title:"dark"===aU?"Switch to light theme":"Switch to dark theme",className:"inline-flex h-9 w-9 items-center justify-center rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] transition-all hover:border-[var(--app-shell-border-strong)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",children:"dark"===aU?(0,b.jsx)(aq.Sun,{className:"h-4 w-4",strokeWidth:1.75}):(0,b.jsx)(ap.Moon,{className:"h-4 w-4",strokeWidth:1.75})}),cl=(0,b.jsxs)("div",{className:"relative group/search min-w-0 flex-1",children:[(0,b.jsx)(al.Search,{className:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[var(--app-shell-soft-text)] transition-colors group-focus-within/search:text-[var(--primary)]",strokeWidth:2}),(0,b.jsx)("input",{ref:bu,type:"text",value:be,onChange:a=>bf(a.target.value),onKeyDown:a=>{"Escape"===a.key&&bI()},placeholder:"Search messages…",className:`w-full rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] pl-9 pr-16 text-sm font-medium text-[var(--foreground)] outline-none placeholder:text-[var(--app-shell-soft-text)] transition-all hover:border-[var(--app-shell-border-strong)] focus:border-[var(--primary)] focus:ring-2 focus:ring-[var(--ring)] ${a?"h-7 text-xs":"h-9"}`}),bz?(0,b.jsxs)("div",{className:"absolute right-3 top-1/2 flex -translate-y-1/2 items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[11px] font-bold text-[var(--muted-foreground)]",children:bk?"…":bi}),(0,b.jsx)("button",{type:"button",onClick:bI,className:"text-[10px] font-bold text-[var(--app-shell-soft-text)] transition-colors hover:text-[var(--app-shell-muted)]",children:"✕"})]}):n?null:(0,b.jsx)("kbd",{className:"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] px-1.5 py-0.5 font-sans text-[10px] font-bold text-[var(--app-shell-soft-text)]",children:"⌘K"})]}),cm=a?null:(0,b.jsx)("div",{className:"desktop-titlebar border-b border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] px-4 py-2.5 backdrop-blur-xl md:px-6",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-5xl items-center gap-3",children:[(0,b.jsx)("div",{className:"flex min-w-0 items-center flex-shrink-0",children:m&&!aW&&(0,b.jsx)("button",{type:"button",onClick:ce,className:"inline-flex h-9 w-9 items-center justify-center rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] transition hover:border-[var(--app-shell-border-strong)] hover:text-[var(--foreground)]",title:"Show sidebar","aria-label":"Show sidebar",children:(0,b.jsx)(ao.PanelLeftOpen,{className:"h-4 w-4",strokeWidth:1.75})})}),(0,b.jsx)("div",{className:"flex flex-1 justify-center min-w-0",children:(0,b.jsxs)("div",{className:"flex w-full max-w-2xl items-center gap-2",children:[cl,(0,b.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[ck(),(0,b.jsx)(au.StatusIndicator,{}),bb&&(0,b.jsx)("button",{type:"button",onClick:()=>a0(!a_),"aria-label":a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,"aria-pressed":a_,title:a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,className:`inline-flex h-9 w-9 items-center justify-center rounded-xl border transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)] ${a_?"border-[var(--app-shell-border-strong)] bg-[var(--app-shell-subtle)] text-[var(--foreground)]":"border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]"}`,children:(0,b.jsx)(an.default,{className:"h-4 w-4",strokeWidth:1.75})})]})]})})]})});return(0,b.jsxs)("div",{className:`flex ${a?"h-full":"h-screen"} bg-[var(--app-shell-bg)] text-[var(--foreground)]`,children:[m?(0,b.jsx)(j.WorkspaceSidebar,{threads:r,participants:aM,activeThreadId:s,isLoading:A,isRestoringActiveThread:B,isCreating:x,deletingThreadId:y,renamingThreadId:z,onSelectThread:t,onCreateThread:u,onRenameThread:C,onDeleteThread:b0,activeParticipantIds:aQ,onToggleParticipantActive:ch,visible:aW,onToggle:ce,width:aY,onWidthChange:cf,projects:aB,onCreateProject:aC,onUpdateProject:aI,onDeleteProject:aD,onAddAgentToProject:aE,onRemoveAgentFromProject:aF,onReorderProjectAgents:aG,onUpdateParticipant:cg,onSelectProject:ci}):null,(0,b.jsx)("div",{className:"flex flex-col flex-1 min-w-0 relative",children:B?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center px-4 text-sm text-[var(--muted-foreground)]",children:"Loading your last project…"}):(0,b.jsx)("div",{className:"flex flex-1 min-h-0 bg-transparent relative",children:(0,b.jsxs)("div",{className:"flex flex-col flex-1 min-w-0",children:[bb?(0,b.jsx)("div",{className:"desktop-titlebar border-b border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] px-4 py-2.5 backdrop-blur-xl md:px-6 transition-colors duration-200 shrink-0",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-5xl items-center gap-3 min-w-0",children:[m&&!aW?(0,b.jsx)("button",{type:"button",onClick:ce,className:"inline-flex h-9 w-9 items-center justify-center rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] transition hover:border-[var(--app-shell-border-strong)] hover:text-[var(--foreground)]",title:"Show sidebar","aria-label":"Show sidebar",children:(0,b.jsx)(ao.PanelLeftOpen,{className:"h-4 w-4",strokeWidth:1.75})}):null,(0,b.jsx)("button",{onClick:()=>bd(null),className:"p-1.5 text-[var(--app-shell-muted)] hover:text-[var(--primary)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all active:scale-95 flex-shrink-0",title:"Back to main feed",children:(0,b.jsx)(am.ChevronLeft,{size:20,strokeWidth:2.25})}),(0,b.jsxs)("div",{className:"flex-1 flex flex-col min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,b.jsx)("h2",{className:"text-[15px] font-semibold text-[var(--foreground)] tracking-tight leading-tight truncate min-w-0",children:bG}),bH&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-semibold border shrink-0",style:{borderColor:bH.color+"40",color:bH.color},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:bH.color}}),bH.label]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] font-medium text-[var(--app-shell-muted)]",children:[(0,b.jsxs)("span",{className:"opacity-80",children:[bC.length," agents"]}),(0,b.jsx)("span",{className:"h-0.5 w-0.5 rounded-full bg-[var(--app-shell-soft-text)]"}),(0,b.jsxs)("span",{className:"opacity-80",children:["Updated ",function(a){if(!a)return"recently";let b=Math.floor((Date.now()-a)/1e3);if(b<60)return"just now";let c=Math.floor(b/60);if(c<60)return`${c}m ago`;let d=Math.floor(c/60);return d<24?`${d}h ago`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(a)}(bF)]}),bR&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"h-0.5 w-0.5 rounded-full bg-[var(--app-shell-soft-text)]"}),(0,b.jsx)("span",{className:"opacity-80",children:bR})]})]})]}),(0,b.jsx)("div",{className:"flex -space-x-1.5 flex-shrink-0",children:bC.map(a=>(0,b.jsx)("img",{src:`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${a.id}&backgroundColor=${a.color?a.color.replace("#",""):"e2e8f0"}`,alt:a.name,className:"h-7 w-7 rounded-full border-2 border-[var(--app-shell-elevated)] object-cover shadow-sm ring-1 ring-[var(--app-shell-border)]",title:a.name},a.id))}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-2",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>void bN(),disabled:bP,title:bO?"Learning is already running for this discussion":"Learn from this discussion",className:`inline-flex h-9 items-center gap-1.5 rounded-xl border px-3 text-xs font-medium transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)] ${bP?"cursor-wait border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] text-[var(--app-shell-muted)]":"border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]"}`,children:[bP?(0,b.jsx)(as.default,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):(0,b.jsx)(ar.BookOpen,{className:"h-3.5 w-3.5",strokeWidth:1.75}),(0,b.jsx)("span",{className:"hidden sm:inline",children:bO?"Learning...":"Learn from discussion"})]}),!a&&ck(),!a&&(0,b.jsx)(au.StatusIndicator,{}),(0,b.jsx)("button",{type:"button",onClick:()=>a0(!a_),"aria-label":a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,"aria-pressed":a_,title:a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,className:`inline-flex h-9 w-9 items-center justify-center rounded-xl border transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)] ${a_?"border-[var(--app-shell-border-strong)] bg-[var(--app-shell-subtle)] text-[var(--foreground)]":"border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]"}`,children:(0,b.jsx)(an.default,{className:"h-4 w-4",strokeWidth:1.75})})]})]})}):cm,bA?(0,b.jsx)(X,{query:bz,results:bg,total:bi,participants:aM,threadTitleById:bB,isLoading:bk,error:bm,onSelectResult:b_}):bb?(0,b.jsx)(U,{messages:H,streaming:V,participants:aM,rootMessageId:bb,queued:ac.some(a=>a.rootMessageId===bb&&"queued"===a.status),onClose:()=>bd(null),onCopyThread:bM,onAddToChat:bL,onDeleteThreadRoot:b1,onDeleteMessage:b3,highlightedMessageId:ba||void 0,renderReplyComposer:cd,activeProcesses:T.filter(a=>["spawning","running"].includes(a.state)&&a.threadId===bb)}):(0,b.jsx)(N,{messages:H,streaming:V,participants:aM,onOpenThread:bW,onCopyThread:bM,onAddToChat:bL,onDeleteThreadRoot:b1,onSummarize:bV,summarizingThreads:bo,deletingThreadRootId:bq,highlightedMessageId:ba,shipModeThreads:a1,onUpdateMessageThreadStatus:s?(a,b)=>{I(c=>c.map(c=>c.id===a?{...c,threadStatus:b}:c)),F(s,a,b),fetch("/api/threads",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:a,status:b})})}:void 0,onUpdateMessageOutcomeNote:s?(a,b)=>{I(c=>c.map(c=>c.id===a?{...c,outcomeNote:b}:c)),G(s,a,b);let c=H.find(b=>b.id===a);fetch("/api/threads",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:a,status:c?.threadStatus??null,outcomeNote:b})})}:void 0}),!bA&&!bb&&(0,b.jsx)(Y.Composer,{onSend:bZ,onStop:af,loading:"ready"!==ad,activityStatus:ad,participants:bD,projects:bE,projectGroups:aJ,projectId:aL,projectSlug:aK,messages:H,commands:b7,pendingThreadInsert:bJ,onClearPendingThread:()=>bK(null),autoMode:bc,onAutoModeChange:b$,repos:b8,selectedRepoIds:b9,onRepoSelectionChange:cc})]})})}),l&&(0,b.jsx)(at,{logs:J,participants:aM,onClear:()=>void M(s),open:a_,onToggle:()=>a0(!1)}),(0,b.jsx)(aj.default,{isOpen:null!==bs,title:bs?.type==="thread"?"Delete Discussion":"Delete Message",message:bs?.type==="thread"?"This will permanently delete this discussion and all of its replies. This action cannot be undone.":"This will permanently delete this message. This action cannot be undone.",preview:bs?.preview,confirmLabel:"Delete",cancelLabel:"Cancel",variant:"danger",onConfirm:b5,onCancel:b6})]})}function az({params:a}){let{slug:d,threadId:e}=(0,c.use)(a);return(0,b.jsx)(ay,{projectSlug:d,initialThreadId:e,showSidebar:!1})}a.s(["default",()=>az],638583)}];
|
|
1
|
+
module.exports=[398066,a=>{"use strict";var b=a.i(308316),c=a.i(786220),d=a.i(639211),e=a.i(520612),f=a.i(155829),g=a.i(496368),h=a.i(111013),i=a.i(529889),j=a.i(550158),k=a.i(850985),l=a.i(86007),m=a.i(8e4),n=a.i(475632);function o(){return(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px] ml-1",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--muted-foreground)] animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--muted-foreground)] animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--muted-foreground)] animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})}function p({participantId:a,participantName:c,participantColor:d,content:e}){let f=(0,n.stripMarkers)(e),g=f.length>0;return(0,b.jsxs)("div",{className:"flex gap-4 py-4 group transition-colors animate-in fade-in slide-in-from-bottom-2 duration-300",children:[(0,b.jsx)(k.default,{href:`/agents/${a}`,className:"w-9 h-9 rounded-full bg-[var(--muted)] overflow-hidden shrink-0 shadow-sm border border-[var(--border)] hover:ring-2 hover:ring-blue-300 transition-shadow",children:(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a,36,d),alt:"",className:"w-full h-full object-cover"})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-baseline gap-2 mb-1",children:[(0,b.jsx)(k.default,{href:`/agents/${a}`,className:"font-bold text-[15px] hover:underline",style:{color:d},children:c}),(0,b.jsx)("span",{className:"text-[10px] uppercase tracking-wider text-[var(--muted-foreground)] font-bold opacity-0 group-hover:opacity-100 transition-opacity",children:"Streaming"})]}),(0,b.jsx)("div",{className:"text-[15px] text-[var(--foreground)] leading-relaxed min-h-[1.5rem] flex items-center",children:g?(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)(l.Markdown,{content:f}),(0,b.jsx)("span",{className:"inline-flex items-baseline ml-0.5",children:(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-indigo-400 animate-[pulse-dot_1.4s_ease-in-out_infinite]"})})]}):(0,b.jsxs)("div",{className:"flex items-center gap-2 text-[var(--muted-foreground)] italic",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:"working"}),(0,b.jsx)(o,{})]})})]})]})}var q=a.i(552605),r=a.i(340492);function s({attachments:a,compact:c=!1}){if(0===a.length)return null;let d=a.filter(a=>a.mimeType.startsWith("image/")),e=a.filter(a=>!a.mimeType.startsWith("image/")),f=c?"max-w-[120px]":"max-w-[240px]",g=c?"max-h-[90px]":"max-h-[180px]";return(0,b.jsxs)("div",{className:"mt-2 space-y-2",children:[d.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:d.map(a=>(0,b.jsx)("a",{href:a.url,target:"_blank",rel:"noopener noreferrer",className:"block rounded-lg overflow-hidden border border-[var(--border)] hover:border-[var(--border)] transition-colors",children:(0,b.jsx)("img",{src:a.url,alt:a.filename,className:`${f} ${g} object-cover`,loading:"lazy"})},a.id))}),e.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.map(a=>{var d;return(0,b.jsxs)("a",{href:a.url,download:a.filename,className:`inline-flex items-center gap-1.5 rounded-md border border-[var(--border)] bg-[var(--app-shell-subtle)] text-[var(--muted-foreground)] hover:bg-[var(--muted)] hover:border-[var(--border)] transition-colors ${c?"px-2 py-0.5 text-[11px]":"px-2.5 py-1 text-xs"}`,children:[(0,b.jsx)(q.FileText,{className:`text-[var(--muted-foreground)] shrink-0 ${c?"w-3 h-3":"w-3.5 h-3.5"}`}),(0,b.jsx)("span",{className:`truncate ${c?"max-w-[100px]":"max-w-[150px]"}`,children:a.filename}),(0,b.jsx)("span",{className:"text-[var(--muted-foreground)] shrink-0",children:(d=a.size)<1024?`${d}B`:d<1048576?`${(d/1024).toFixed(0)}KB`:`${(d/1048576).toFixed(1)}MB`}),(0,b.jsx)(r.Download,{className:`text-[var(--muted-foreground)] shrink-0 ${c?"w-2.5 h-2.5":"w-3 h-3"}`})]},a.id)})})]})}let t=(0,c.forwardRef)(({children:a,className:c="",...d},e)=>{let{isTouchLayout:f}=(0,i.useInputCapabilities)(),g=`absolute top-4 right-4 flex items-center gap-1 ${f?"opacity-100":"opacity-0 group-hover:opacity-100"} transition-opacity duration-200 bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] shadow-md rounded-lg p-1 z-10 backdrop-blur-sm`,h=`${g} ${c}`.trim();return(0,b.jsx)("div",{ref:e,className:h,"data-touch-visible":f?"true":void 0,...d,children:a})});t.displayName="ActionToolbar";let u=()=>(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)] mx-1"}),v=(0,c.forwardRef)(({className:a="",variant:c="neutral",size:d="md",children:e,...f},g)=>{let{isTouchLayout:h}=(0,i.useInputCapabilities)(),j=`inline-flex items-center justify-center rounded-md transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:opacity-50 disabled:pointer-events-none ${h?({sm:"h-11 w-11 p-2",md:"h-11 w-11 p-2",lg:"h-12 w-12 p-2.5"})[d]:({sm:"p-1 w-6 h-6",md:"p-1.5 w-8 h-8",lg:"p-2 w-10 h-10"})[d]} ${({neutral:"text-[var(--app-shell-muted)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]",ghost:"text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)]",primary:"text-[var(--primary)] hover:text-[var(--primary-foreground)] hover:bg-[var(--primary-hover)]",destructive:"text-[var(--app-shell-muted)] hover:text-[var(--destructive)] hover:bg-[var(--destructive-muted)]"})[c]} ${a}`.trim();return(0,b.jsx)("button",{ref:g,className:j,"data-touch-target":h?"true":void 0,...f,children:e})});v.displayName="IconButton";var w=a.i(737313),x=a.i(804632),y=a.i(316099),z=a.i(349692),A=a.i(697183),B=a.i(252197),C=a.i(820859),D=a.i(831709);let E=(0,D.default)("link",[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]]),F=(0,D.default)("at-sign",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]]),G=(0,D.default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);var H=a.i(238234),I=a.i(412690),J=a.i(908225);let K=[{value:"active",label:"Active",color:"#f59e0b"},{value:"paused",label:"Paused",color:"#f97316"},{value:"in-review",label:"In Review",color:"#6b7280"},{value:"done",label:"Done",color:"#3b82f6"},{value:"archived",label:"Archived",color:"#9ca3af"}],L=new Set(["done","in-review","archived"]),M="<!-- thread-summary -->";function N({messages:a,streaming:d,participants:e,onOpenThread:f,onCopyThread:g,onAddToChat:h,onDeleteThreadRoot:i,onSummarize:j,summarizingThreads:o,deletingThreadRootId:q,highlightedMessageId:r,onUpdateMessageThreadStatus:D,onUpdateMessageOutcomeNote:N,shipModeThreads:O}){let P=(0,c.useRef)(new Map),Q=(0,c.useRef)(null),[R,S]=(0,c.useState)(null),[T,U]=(0,c.useState)("active"),[V,W]=(0,c.useState)("asc"),[X,Y]=(0,c.useState)(!1);(0,c.useEffect)(()=>{let a=Q.current;if(!a)return;let b=()=>{let{scrollTop:b,scrollHeight:c,clientHeight:d}=a;Y(c-b-d>200)};return a.addEventListener("scroll",b,{passive:!0}),()=>a.removeEventListener("scroll",b)},[]);let Z=(0,c.useCallback)(()=>{let a=Q.current;if(!a)return;let b="asc"===V?a.scrollHeight:0;a.scrollTo({top:b,behavior:"smooth"})},[V]),$=Object.fromEntries(e.map(a=>[a.id,a])),_=(0,c.useMemo)(()=>{let b=a.filter(a=>!a.rootMessageId);return"asc"===V?[...b].sort((a,b)=>a.timestamp-b.timestamp):[...b].sort((a,b)=>b.timestamp-a.timestamp)},[a,V]),aa=(0,c.useRef)(0);(0,c.useEffect)(()=>{if("asc"!==V){aa.current=_.length;return}_.length>aa.current&&Q.current?.scrollTo({top:Q.current.scrollHeight,behavior:"smooth"}),aa.current=_.length},[_.length,V]);let ab={active:new Set(["active"]),paused:new Set(["paused"]),"in-review":new Set(["in-review"]),done:new Set(["done"]),archived:new Set(["archived"])},ac=(0,c.useMemo)(()=>_.filter(a=>ab[T].has(a.threadStatus??"active")),[_,T]),ad=(0,c.useMemo)(()=>({active:_.filter(a=>ab.active.has(a.threadStatus??"active")).length,paused:_.filter(a=>ab.paused.has(a.threadStatus??"active")).length,"in-review":_.filter(a=>ab["in-review"].has(a.threadStatus??"active")).length,done:_.filter(a=>ab.done.has(a.threadStatus??"active")).length,archived:_.filter(a=>ab.archived.has(a.threadStatus??"active")).length}),[_]),ae=(0,c.useMemo)(()=>(function(a){let b=new Map;for(let c of a){let a=c.rootMessageId;if(!a)continue;let d=b.get(a);d||(d={rootMessageId:a,replyCount:0,participants:[],lastActivityAt:0,allReplies:[]},b.set(a,d)),d.replyCount++,d.lastActivityAt=Math.max(d.lastActivityAt,c.timestamp),d.lastReply=c,d.allReplies.push(c),c.participantId&&!d.participants.includes(c.participantId)?d.participants.push(c.participantId):c.participantId||d.participants.includes("user")||d.participants.push("user")}for(let a of b.values())a.allReplies.sort((a,b)=>a.timestamp-b.timestamp);return b})(a),[a]),af=(0,c.useCallback)((a,b)=>{b?P.current.set(a,b):P.current.delete(a)},[]),ag=(0,c.useRef)(null);return(0,c.useEffect)(()=>{if(!r){ag.current=null;return}if(r===ag.current)return;ag.current=r;let a=P.current.get(r);a&&a.scrollIntoView({behavior:"smooth",block:"center"})},[r,a]),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 flex flex-col",children:[(0,b.jsx)("div",{ref:Q,className:"chat-scrollbar flex-1 overflow-y-auto p-4",children:(0,b.jsxs)("div",{className:"max-w-3xl mx-auto",children:[_.length>0&&(0,b.jsxs)("div",{className:"flex items-center justify-center gap-2 mb-4",children:[(0,b.jsx)("div",{className:"flex items-center gap-1 p-1 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)]",children:[{key:"active",label:"Active"},{key:"paused",label:"Paused"},{key:"in-review",label:"In Review"},{key:"done",label:"Done"},{key:"archived",label:"Archived"}].map(a=>{let c=ad[a.key],d=T===a.key;return(0,b.jsxs)("button",{type:"button",onClick:()=>U(a.key),className:`px-3 py-1.5 text-xs font-bold rounded-md transition-all ${d?"bg-[var(--app-shell-surface)] text-[var(--foreground)] shadow-sm":"text-[var(--app-shell-muted)] hover:text-[var(--foreground)]"}`,children:[a.label,c>0&&(0,b.jsx)("span",{className:`ml-1.5 text-[10px] ${d?"opacity-60":"opacity-50"}`,children:c})]},a.key)})}),(0,b.jsxs)("button",{type:"button",onClick:()=>W(a=>"asc"===a?"desc":"asc"),title:"asc"===V?"Newest at bottom — click to flip":"Newest at top — click to flip",className:"inline-flex items-center gap-1 px-2 py-1.5 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] text-[var(--app-shell-muted)] hover:text-[var(--foreground)] text-[10px] font-bold transition-colors",children:["asc"===V?(0,b.jsx)(I.ArrowUp,{className:"w-3 h-3"}):(0,b.jsx)(H.ArrowDown,{className:"w-3 h-3"}),"asc"===V?"Oldest first":"Newest first"]})]}),0===_.length&&0===Object.keys(d).length&&(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center text-[var(--app-shell-muted)] mt-32 space-y-3",children:[(0,b.jsx)(w.MessageSquare,{className:"h-6 w-6",strokeWidth:1.5}),(0,b.jsx)("span",{className:"text-sm font-medium tracking-wide",children:"Start a thread"})]}),_.length>0&&0===ac.length&&(0,b.jsx)("div",{className:"flex flex-col items-center justify-center text-[var(--app-shell-muted)] mt-16 space-y-2",children:(0,b.jsxs)("span",{className:"text-sm font-medium",children:["No ",T," threads"]})}),ac.map(a=>{let c,e=a.participantId?$[a.participantId]:null,r=ae.get(a.id),w=q===a.id,H=r?.allReplies.find(a=>a.content.startsWith(M)),I=H?H.content.slice(M.length).trim():null,J=a.threadStatus??"active",N=L.has(J),P=K.find(a=>a.value===J)??K[0],Q=Object.values(d).some(b=>b.rootMessageId===a.id);if(N){let c;return(0,b.jsx)("div",{ref:b=>af(a.id,b),"data-message-id":a.id,className:`max-w-2xl mx-auto bg-[var(--app-shell-subtle)] rounded-xl border border-[var(--app-shell-border)] mb-3 group transition-all hover:border-[var(--app-shell-border-strong)] relative cursor-pointer ${R===a.id?"z-50":""}`,onClick:()=>f?.(a.id),children:(0,b.jsxs)("div",{className:"px-4 py-2.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(y.Hash,{className:"w-3.5 h-3.5 text-[var(--app-shell-muted)] shrink-0"}),(0,b.jsx)("span",{className:"text-sm font-medium text-[var(--app-shell-muted)] truncate flex-1",children:(0,n.stripMarkers)(a.content.split("\n")[0])}),O?.has(a.id)&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-indigo-500 font-medium shrink-0",title:"Ship Mode active",children:[(0,b.jsx)(G,{size:11,style:{animation:"shipPulse 2s ease-in-out infinite"}}),"Ship"]}),Q&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-green-600 font-medium shrink-0",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-green-400 animate-pulse"}),"Working"]}),a.outcomeNote&&(0,b.jsx)("span",{className:"text-[11px] text-[var(--app-shell-soft-text)] truncate max-w-[200px]",children:a.outcomeNote}),(0,b.jsx)("span",{className:"text-[10px] text-[var(--app-shell-soft-text)] shrink-0",children:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(a.timestamp)}),D&&(c=R===a.id,(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("button",{type:"button",onClick:b=>{b.stopPropagation(),S(c?null:a.id)},className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-semibold border transition-colors hover:bg-[var(--app-shell-elevated)]",style:{borderColor:P.color+"40",color:P.color},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:P.color}}),P.label]}),c&&(0,b.jsx)("div",{className:"absolute top-full right-0 mt-1 z-50 bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] rounded-lg shadow-lg p-1 min-w-[8.5rem]",onClick:a=>a.stopPropagation(),children:K.map(c=>(0,b.jsxs)("button",{type:"button",className:`flex items-center gap-2 w-full px-2 py-1.5 rounded-md text-xs font-medium transition-colors ${c.value===J?"bg-[var(--primary-muted)] text-[var(--primary)]":"text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onClick:b=>{b.stopPropagation(),D(a.id,c.value),S(null)},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:c.color}}),c.label]},c.value))})]})),r&&r.replyCount>0&&(0,b.jsxs)("span",{className:"text-[10px] text-[var(--app-shell-muted)] shrink-0",children:[r.replyCount," replies"]})]}),I&&(0,b.jsx)("div",{className:"mt-1.5 pl-6 flex flex-col gap-1",children:(0,b.jsx)("div",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed prose prose-sm prose-neutralmax-w-none",children:(0,b.jsx)(l.Markdown,{content:I,isUser:!1})})})]})},a.id)}return(0,b.jsxs)("div",{className:`max-w-2xl mx-auto surface-card mb-6 group relative ${R===a.id?"z-50":""}`,children:[(g||h||i)&&(0,b.jsxs)(t,{className:"z-10",children:[h&&(0,b.jsx)(v,{type:"button",variant:"primary",size:"sm",onClick:()=>h(a.id),title:"Mention in chat",children:(0,b.jsx)(F,{className:"w-3.5 h-3.5"})}),(0,b.jsx)(v,{type:"button",variant:"neutral",size:"sm",onClick:()=>{navigator.clipboard.writeText(a.id)},title:"Copy message ID",children:(0,b.jsx)(E,{className:"w-3.5 h-3.5"})}),g&&(0,b.jsx)(v,{type:"button",variant:"neutral",size:"sm",onClick:()=>g(a.id),title:"Copy thread as markdown",children:(0,b.jsx)(x.Copy,{className:"w-3.5 h-3.5"})}),i&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{}),(0,b.jsx)(v,{type:"button",variant:"destructive",size:"sm",onClick:()=>i(a.id),disabled:w,title:"Delete this thread",children:w?(0,b.jsx)(z.Loader2,{className:"w-3.5 h-3.5 animate-spin"}):(0,b.jsx)(A.Trash2,{className:"w-3.5 h-3.5"})})]})]}),(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsx)("div",{className:"p-5",children:(0,b.jsxs)("div",{ref:b=>af(a.id,b),"data-message-id":a.id,className:"flex flex-col",children:[(0,b.jsxs)("div",{className:"flex gap-3 mb-4",children:["user"!==a.role&&(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"w-10 h-10 rounded-full bg-[var(--app-shell-subtle)] overflow-hidden border border-[var(--app-shell-border)] shadow-sm flex items-center justify-center shrink-0 hover:ring-2 hover:ring-[var(--ring)] transition-shadow",children:e?(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(e.id,40,e.color),alt:e.name,className:"w-full h-full object-cover"}):(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a.participantId||"assistant",40),alt:a.participantId||"Assistant",className:"w-full h-full object-cover"})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0 pt-0.5",children:["user"!==a.role&&(0,b.jsx)("div",{className:"flex items-center gap-2 mb-0.5",children:(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"font-bold text-sm text-[var(--foreground)] hover:underline",children:e?.name||a.participantId||"Assistant"})}),(0,b.jsxs)("div",{className:"cursor-pointer group/msg-title mb-1",onClick:()=>f?.(a.id),children:[(0,b.jsx)("h3",{className:"text-lg font-bold text-[var(--foreground)] leading-tight group-hover/msg-title:text-[var(--primary)] transition-colors line-clamp-1",children:(0,n.stripMarkers)(a.content.split("\n")[0])}),(0,b.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[11px] font-medium text-[var(--app-shell-soft-text)]",children:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(a.timestamp)}),D&&(c=R===a.id,(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("button",{type:"button",onClick:b=>{b.stopPropagation(),S(c?null:a.id)},className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-semibold border transition-colors hover:bg-[var(--app-shell-subtle)]",style:{borderColor:P.color+"40",color:P.color},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:P.color}}),P.label]}),c&&(0,b.jsx)("div",{className:"absolute top-full left-0 mt-1 z-50 bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] rounded-lg shadow-lg p-1 min-w-[8.5rem]",onClick:a=>a.stopPropagation(),children:K.map(c=>(0,b.jsxs)("button",{type:"button",className:`flex items-center gap-2 w-full px-2 py-1.5 rounded-md text-xs font-medium transition-colors ${c.value===J?"bg-[var(--primary-muted)] text-[var(--primary)]":"text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onClick:b=>{b.stopPropagation(),D(a.id,c.value),S(null)},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:c.color}}),c.label]},c.value))})]})),O?.has(a.id)&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-indigo-500 font-medium",title:"Ship Mode active",children:[(0,b.jsx)(G,{size:11,style:{animation:"shipPulse 2s ease-in-out infinite"}}),"Ship"]}),Q&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] text-green-600 font-medium",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-green-400 animate-pulse"}),"Working"]})]}),(a.content.length>80||a.content.includes("\n"))&&(0,b.jsx)("div",{className:"mt-2 text-[15px] text-[var(--muted-foreground)] leading-relaxed line-clamp-3",children:(0,b.jsx)(l.Markdown,{content:(0,n.stripMarkers)(a.content.split("\n").slice(1).join("\n").trimStart()),isUser:"user"===a.role})})]})]})]}),a.attachments&&a.attachments.length>0&&(0,b.jsx)("div",{className:`mb-4 ${"user"!==a.role?"ml-[52px]":""}`,children:(0,b.jsx)(s,{attachments:a.attachments,compact:!0})}),I&&(0,b.jsx)("div",{className:"mb-4 text-sm text-[var(--muted-foreground)] leading-relaxed",children:(0,b.jsx)(l.Markdown,{content:I,isUser:!1})}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2 pt-2 mt-2 border-t border-[var(--card-border)]",children:[j&&r&&r.replyCount>0&&(0,b.jsxs)("button",{type:"button",onClick:()=>j(a.id),disabled:o?.has(a.id),className:"flex items-center gap-1.5 px-3 py-1.5 bg-[var(--app-shell-subtle)] hover:bg-[var(--item-hover-bg)] text-[var(--foreground)] border border-[var(--card-border)] text-xs font-medium rounded-lg transition-colors disabled:opacity-50",children:[o?.has(a.id)?(0,b.jsx)(z.Loader2,{className:"w-3.5 h-3.5 animate-spin text-[var(--muted-foreground)]"}):(0,b.jsx)(C.Clock,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)]"}),o?.has(a.id)?"Summarizing…":"Summarize"]}),r&&r.replyCount>0&&f&&(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-2 cursor-pointer hover:opacity-80 transition-opacity",onClick:()=>f(a.id),children:[(0,b.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)] font-medium",children:[r.replyCount," replies"]}),(0,b.jsx)("div",{className:"flex -space-x-2",children:r.participants.slice(0,3).map(a=>{if("user"===a)return(0,b.jsx)("div",{className:"w-6 h-6 rounded-full bg-[var(--app-shell-subtle)] border-2 border-[var(--card-bg)] flex items-center justify-center z-10",children:(0,b.jsx)(B.User,{className:"w-3 h-3 text-[var(--muted-foreground)]"})},"user");let c=$[a];return c?(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a,24,c.color),alt:c.name,className:"w-6 h-6 rounded-full border-2 border-[var(--card-bg)] object-cover z-10"},a):(0,b.jsx)("div",{className:"w-6 h-6 rounded-full bg-[var(--app-shell-subtle)] border-2 border-[var(--card-bg)] z-10"},a)})})]})]})]})}),Object.entries(d).filter(([,b])=>b.rootMessageId===a.id).map(([a,c])=>{let d=$[a];return(0,b.jsx)("div",{className:"px-6 pb-4",children:(0,b.jsx)(p,{participantId:a,participantName:d?.name||a,participantColor:d?.color||"#888",content:c.content})},`streaming-${a}`)})]})]},a.id)})]})}),(0,b.jsx)(J.JumpToLatestButton,{visible:X&&_.length>10,onClick:Z})]})}let O=(0,D.default)("message-square-text",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M7 11h10",key:"1twpyw"}],["path",{d:"M7 15h6",key:"d9of3u"}],["path",{d:"M7 7h8",key:"af5zfr"}]]);var P=a.i(724938);let Q={ack:{symbol:"👍",label:"Acknowledged"},working:{symbol:"🔄",label:"Working"},done:{symbol:"✅",label:"Done"},clarify:{symbol:"❓",label:"Needs clarification"},blocked:{symbol:"⛔",label:"Blocked"}};function R({type:a,count:c,participantIds:d}){let e=Q[a],f=d.join(", "),g=f?`${e.label}: ${f}`:e.label;return(0,b.jsxs)("span",{title:g,className:"inline-flex items-center gap-1 rounded-full border border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] px-2 py-0.5 text-xs text-[var(--foreground)]",children:[(0,b.jsx)("span",{"aria-hidden":!0,children:e.symbol}),(0,b.jsx)("span",{className:"tabular-nums",children:c})]})}function S({reactions:a}){if(!a||0===a.length)return null;let c=[...a].sort((a,b)=>b.count!==a.count?b.count-a.count:a.type.localeCompare(b.type));return(0,b.jsx)("div",{className:"mt-1 flex flex-wrap items-center gap-1",children:c.map(a=>(0,b.jsx)(R,{type:a.type,count:a.count,participantIds:a.participantIds},a.type))})}var T=a.i(698573);function U({messages:a,streaming:d,participants:e,rootMessageId:f,queued:g=!1,onClose:h,onCopyThread:i,onAddToChat:j,onDeleteThreadRoot:o,onDeleteMessage:p,highlightedMessageId:q,renderReplyComposer:r,activeProcesses:w=[]}){let y=(0,c.useRef)(null),z=(0,c.useRef)(new Map),C=Object.fromEntries(e.map(a=>[a.id,a])),D=(0,c.useMemo)(()=>{let b=a.find(a=>a.id===f),c=a.filter(a=>a.rootMessageId===f).sort((a,b)=>a.timestamp-b.timestamp);return b?[b,...c]:c},[a,f]),F=(0,c.useRef)(null),G=(0,c.useRef)(!1),H=(0,c.useRef)(null),[I,K]=(0,c.useState)(!1);(0,c.useEffect)(()=>{let a=F.current;if(!a)return;let b=()=>{let{scrollTop:b,scrollHeight:c,clientHeight:d}=a,e=c-b-d;G.current=e>80,K(e>200)};return a.addEventListener("scroll",b,{passive:!0}),()=>a.removeEventListener("scroll",b)},[]);let L=(0,c.useCallback)(()=>{y.current?.scrollIntoView({behavior:"smooth"})},[]);return(0,c.useEffect)(()=>{if(q&&q!==H.current){H.current=q;let a=z.current.get(q);a&&a.scrollIntoView({behavior:"smooth",block:"center"})}else q||G.current||(H.current=null,y.current?.scrollIntoView({behavior:"smooth"}))},[q,D,d]),(0,b.jsxs)("div",{className:"flex flex-col h-full overflow-hidden bg-[var(--app-shell-bg)] transition-colors",children:[w.length>0&&(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] backdrop-blur-md transition-colors",children:[(0,b.jsxs)("div",{className:"inline-flex items-center gap-2 text-[11px] font-medium text-[var(--app-shell-muted)]",children:[(0,b.jsx)(P.Sparkles,{className:"h-3.5 w-3.5 text-indigo-500",strokeWidth:1.75}),(0,b.jsx)("span",{className:"uppercase tracking-[0.16em]",children:"Working"})]}),(0,b.jsx)("div",{className:"flex items-center -space-x-1.5",children:w.map(a=>{let c=C[a.agentId];return(0,b.jsxs)("div",{className:"relative",title:`${c?.name||a.agentId} — ${a.state}`,children:[(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(a.agentId,24,c?.color),alt:c?.name||a.agentId,className:"w-6 h-6 rounded-full border-2 border-[var(--app-shell-surface)] shadow-sm"}),(0,b.jsx)("span",{className:"absolute -bottom-0.5 -right-0.5 w-2.5 h-2.5 bg-green-400 rounded-full border-2 border-[var(--app-shell-surface)] animate-pulse"})]},a.agentId)})})]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 flex flex-col",children:[(0,b.jsx)("div",{ref:F,className:"flex-1 overflow-y-auto p-4 md:p-8 space-y-6 chat-scrollbar",children:(0,b.jsxs)("div",{className:"max-w-2xl mx-auto space-y-8 pb-4",children:[D.map(a=>{let c,d="user"===a.role,e=a.participantId?C[a.participantId]:null;return(0,b.jsxs)("div",{ref:b=>{var c;return c=a.id,void(b?z.current.set(c,b):z.current.delete(c))},"data-message-id":a.id,className:"group relative flex gap-4 ",children:[(0,b.jsx)("div",{className:"flex-shrink-0 mt-1",children:d?(0,b.jsx)("div",{className:"w-9 h-9 bg-[var(--app-shell-subtle)] rounded-full flex items-center justify-center text-[var(--app-shell-muted)] shadow-sm",children:(0,b.jsx)(B.User,{className:"w-5 h-5"})}):(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"hover:ring-2 hover:ring-[var(--ring)] rounded-full transition-shadow",children:(0,b.jsx)("img",{src:e?(0,m.agentAvatarUrl)(e.id,36,e.color):(0,m.agentAvatarUrl)(a.participantId||"assistant",36),alt:e?.name||a.participantId||"Assistant",className:"w-9 h-9 rounded-full shadow-sm border border-[var(--app-shell-border)] object-cover bg-[var(--app-shell-subtle)]"})})}),(0,b.jsxs)("div",{className:"flex-1 space-y-1.5 max-w-full overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[d?(0,b.jsx)("span",{className:"font-bold text-sm text-[var(--foreground)]",children:"You"}):(0,b.jsx)(k.default,{href:`/agents/${e?.id||a.participantId||"assistant"}`,className:"font-bold text-sm text-[var(--foreground)] hover:underline",style:e?.color?{color:e.color}:void 0,children:e?.name||a.participantId||"Assistant"}),void 0===a.rootMessageId&&a.id===f&&(0,b.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] rounded font-mono uppercase",children:"ROOT"}),(0,b.jsx)("span",{className:"text-[11px] text-[var(--app-shell-soft-text)]",children:(c=a.timestamp,new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(c))})]}),(0,b.jsxs)("div",{className:`text-[15px] leading-relaxed ${a.id===q?"ring-2 ring-[var(--ring)] rounded-2xl p-2 -m-2":""}`,children:[d?(0,b.jsx)(l.Markdown,{content:(0,n.stripMarkers)(a.content),isUser:!0}):(0,b.jsx)(T.StreamingSegments,{content:(0,n.stripMarkers)(a.content)}),a.attachments&&a.attachments.length>0&&(0,b.jsx)(s,{attachments:a.attachments})]}),a.reactions&&a.reactions.length>0&&(0,b.jsx)("div",{className:"mt-2",children:(0,b.jsx)(S,{reactions:a.reactions})}),(0,b.jsxs)(t,{children:[a.id===f&&(0,b.jsx)(v,{variant:"primary",size:"sm",onClick:()=>navigator.clipboard.writeText(a.id),title:"Copy message ID",children:(0,b.jsx)(E,{className:"w-3.5 h-3.5"})}),a.id===f&&i&&(0,b.jsx)(v,{variant:"neutral",size:"sm",onClick:()=>i(a.id),title:"Copy Thread",children:(0,b.jsx)(O,{className:"w-3.5 h-3.5"})}),(0,b.jsx)(v,{variant:"neutral",size:"sm",onClick:()=>navigator.clipboard.writeText(a.content),title:"Copy as Markdown",children:(0,b.jsx)(x.Copy,{className:"w-3.5 h-3.5"})}),a.id===f&&o&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{}),(0,b.jsx)(v,{variant:"destructive",size:"sm",onClick:()=>o(a.id),title:"Delete Thread",children:(0,b.jsx)(A.Trash2,{className:"w-3.5 h-3.5"})})]}),a.id!==f&&p&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{}),(0,b.jsx)(v,{variant:"destructive",size:"sm",onClick:()=>p(a.id),title:"Delete Message",children:(0,b.jsx)(A.Trash2,{className:"w-3.5 h-3.5"})})]})]})]})]},a.id)}),g&&0===w.length&&(0,b.jsxs)("div",{className:"flex gap-3 group relative opacity-80 animate-in fade-in slide-in-from-bottom-1 duration-300",children:[(0,b.jsx)("div",{className:"flex-shrink-0 mt-0.5",children:(0,b.jsx)("div",{className:"w-7 h-7 rounded-full border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] flex items-center justify-center",children:(0,b.jsx)(P.Sparkles,{className:"w-3.5 h-3.5 text-[var(--app-shell-soft-text)]",strokeWidth:1.5})})}),(0,b.jsx)("div",{className:"flex-1 max-w-full overflow-hidden",children:(0,b.jsxs)("div",{className:"flex items-center gap-2 py-1",children:[(0,b.jsx)("span",{className:"text-xs tracking-wide text-[var(--app-shell-soft-text)]",children:"Processing"}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px]",children:[(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-[var(--app-shell-soft-text)]/50 animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-[var(--app-shell-soft-text)]/50 animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1 h-1 rounded-full bg-[var(--app-shell-soft-text)]/50 animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})]})})]}),Object.entries(d).filter(([,a])=>a.rootMessageId===f).map(([a,c])=>{let d=C[a],e=c.content.trim().length>0,f=w.some(b=>b.agentId===a);return(0,b.jsxs)("div",{className:"flex gap-4 group relative animate-in fade-in slide-in-from-bottom-2 duration-300",children:[(0,b.jsx)("div",{className:"flex-shrink-0 mt-1",children:(0,b.jsx)(k.default,{href:`/agents/${d?.id||a}`,className:"hover:ring-2 hover:ring-[var(--ring)] rounded-full transition-shadow",children:(0,b.jsx)("img",{src:d?(0,m.agentAvatarUrl)(d.id,36,d.color):(0,m.agentAvatarUrl)(a,36),alt:d?.name||a,className:"w-9 h-9 rounded-full shadow-sm border border-[var(--app-shell-border)] object-cover bg-[var(--app-shell-subtle)]"})})}),(0,b.jsxs)("div",{className:"flex-1 space-y-1.5 max-w-full overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(k.default,{href:`/agents/${d?.id||a}`,className:"font-bold text-sm text-[var(--foreground)] hover:underline",style:d?.color?{color:d.color}:void 0,children:d?.name||a}),!e&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px]",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})]}),e&&(0,b.jsx)(T.StreamingSegments,{content:c.content,thoughts:c.thoughts}),e&&f&&(0,b.jsx)("div",{className:"flex items-center gap-2 pt-1",children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-[3px]",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.2s_infinite]"}),(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--app-shell-muted)] animate-[pulse-dot_1.4s_ease-in-out_0.4s_infinite]"})]})})]})]},`streaming-${a}`)}),(0,b.jsx)("div",{ref:y,className:"h-4"})]})}),(0,b.jsx)(J.JumpToLatestButton,{visible:I&&D.length>10,onClick:L})]}),(0,b.jsx)("div",{className:"z-20 transition-colors duration-200",children:r(f)})]})}var V=a.i(971382);let W=(0,D.default)("search-x",[["path",{d:"m13.5 8.5-5 5",key:"1cs55j"}],["path",{d:"m8.5 8.5 5 5",key:"a8mexj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);function X({query:a,results:c,total:d,participants:e,threadTitleById:f,isLoading:g,error:h,onSelectResult:i,headerSlot:j}){let l=Object.fromEntries(e.map(a=>[a.id,a]));return(0,b.jsx)("div",{className:"chat-scrollbar flex-1 overflow-y-auto p-4",children:(0,b.jsxs)("div",{className:"max-w-3xl mx-auto",children:[j?(0,b.jsx)("div",{className:"sticky top-0 z-20 bg-[var(--app-shell-subtle)]/70 backdrop-blur-md pt-4 pb-6 px-4 -mx-4 border-b border-transparent transition-colors",children:(0,b.jsx)("div",{className:"max-w-2xl mx-auto",children:j})}):null,(0,b.jsxs)("div",{className:"mb-4 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-4 py-3",children:[(0,b.jsx)("div",{className:"text-sm font-semibold text-[var(--foreground)]",children:"Search results"}),(0,b.jsx)("div",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:g?"Searching…":`${d} result${1===d?"":"s"} for "${a}"`}),h?(0,b.jsx)("div",{className:"mt-2 text-sm text-rose-600",children:h}):null]}),g||h||0!==c.length?null:(0,b.jsxs)("div",{className:"mt-20 flex flex-col items-center justify-center space-y-2 text-[var(--app-shell-muted)]",children:[(0,b.jsx)(W,{className:"h-6 w-6",strokeWidth:1.5}),(0,b.jsx)("p",{className:"text-sm font-medium",children:"No matching messages"})]}),(0,b.jsx)("div",{className:"space-y-3 pb-6",children:c.map(a=>{var c;let d=a.participantId?l[a.participantId]:null,e=f[a.threadId]||"Untitled thread",g="user"===a.role?"You":d?.name||a.participantId||"Assistant";return(0,b.jsxs)("button",{type:"button",onClick:()=>i(a),className:"w-full rounded-xl border border-[var(--border)] bg-[var(--card-bg)] p-4 text-left transition hover:border-[var(--border)] hover:shadow-sm focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-slate-400",children:[(0,b.jsxs)("div",{className:"mb-3 flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)("div",{className:"flex h-8 w-8 items-center justify-center overflow-hidden rounded-full bg-[var(--muted)]",children:"user"===a.role?(0,b.jsx)(B.User,{className:"h-4 w-4 text-[var(--foreground)]"}):d?(0,b.jsx)(k.default,{href:`/agents/${d.id}`,onClick:a=>a.stopPropagation(),className:"h-full w-full hover:ring-2 hover:ring-blue-300 rounded-full transition-shadow",children:(0,b.jsx)("img",{src:(0,m.agentAvatarUrl)(d.id,32,d.color),alt:"",className:"h-full w-full object-cover"})}):(0,b.jsx)(V.Bot,{className:"h-4 w-4 text-[var(--foreground)]"})}),(0,b.jsxs)("div",{className:"min-w-0",children:["user"!==a.role&&d?(0,b.jsx)(k.default,{href:`/agents/${d.id}`,onClick:a=>a.stopPropagation(),className:"truncate text-sm font-semibold text-[var(--foreground)] hover:underline block",children:g}):(0,b.jsx)("p",{className:"truncate text-sm font-semibold text-[var(--foreground)]",children:g}),(0,b.jsx)("p",{className:"truncate text-xs text-[var(--muted-foreground)]",children:e})]})]}),(0,b.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:(c=a.timestamp,new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}).format(c))})]}),(0,b.jsx)("p",{className:"text-sm leading-relaxed text-[var(--foreground)]",children:function(a){let c=a.split(/(<\/?mark>)/g),d=!1,e=[];for(let[a,f]of c.entries()){if("<mark>"===f){d=!0;continue}if("</mark>"===f){d=!1;continue}f&&e.push(d?(0,b.jsx)("mark",{className:"rounded bg-amber-200/80 px-0.5",children:f},`${a}-mark`):(0,b.jsx)("span",{children:f},`${a}-text`))}return e}(a.snippet)})]},`${a.threadId}-${a.messageId}`)})})]})})}var Y=a.i(689882),Z=a.i(455106),$=a.i(427411);let _={activeParticipantIdsByThread:{}};function aa(a,b){let c=a.trim();if(c)({..._}).activeParticipantIdsByThread[c]=function(a){if(!Array.isArray(a))return[];let b=new Set,c=[];for(let d of a){if("string"!=typeof d)continue;let a=d.trim();!a||b.has(a)||(b.add(a),c.push(a))}return c}(b)}let ab={threadSidebarVisible:!1,workspaceRoots:[],homeSearchConsent:!1,fileIgnorePatterns:[]};function ac(a){return a&&"object"==typeof a?{threadSidebarVisible:"boolean"==typeof a.threadSidebarVisible?a.threadSidebarVisible:ab.threadSidebarVisible,workspaceRoots:Array.isArray(a.workspaceRoots)?a.workspaceRoots.filter(a=>"string"==typeof a):ab.workspaceRoots,homeSearchConsent:"boolean"==typeof a.homeSearchConsent?a.homeSearchConsent:ab.homeSearchConsent,fileIgnorePatterns:Array.isArray(a.fileIgnorePatterns)?a.fileIgnorePatterns.filter(a=>"string"==typeof a):ab.fileIgnorePatterns}:ab}let ad="/api/userPreferences";function ae(a){return a.json().then(a=>a&&"object"==typeof a?ac(a.preferences??a):ac(a)).catch(()=>ac(null))}function af(a){return a.statusText||`Failed to reach ${ad} (${a.status})`}async function ag(){let a=await fetch(ad,{cache:"no-store"});if(!a.ok)throw Error(af(a));return ae(a)}async function ah(a){let b=await fetch(ad,{method:"POST",headers:{"Content-Type":"application/json"},cache:"no-store",body:JSON.stringify({preferences:a})});if(!b.ok)throw Error(af(b));return ae(b)}var ai=a.i(785061),aj=a.i(734709),ak=a.i(830284),al=a.i(542341),am=a.i(754812),an=a.i(962684),an=an,ao=a.i(970393),ap=a.i(523321),aq=a.i(508869),ar=a.i(328400),as=a.i(372871),as=as;function at({logs:a,participants:d,onClear:e,open:f,onToggle:g}){let[h,i]=(0,c.useState)(420),[j,k]=(0,c.useState)(null),l=(0,c.useRef)(null),m=(0,c.useRef)(null),[n,o]=(0,c.useState)(!1),p=(0,c.useRef)(!1),q=(0,c.useRef)(0),r=(0,c.useRef)(0),s=Object.fromEntries(d.map(a=>[a.id,a]));(0,c.useEffect)(()=>{f&&l.current?.scrollIntoView({behavior:"smooth"})},[a.length,f]),(0,c.useEffect)(()=>{let a=m.current;if(!a)return;let b=()=>{o(a.scrollHeight-a.scrollTop-a.clientHeight>200)};return a.addEventListener("scroll",b,{passive:!0}),()=>a.removeEventListener("scroll",b)},[f]);let t=(0,c.useCallback)(()=>{l.current?.scrollIntoView({behavior:"smooth"})},[]),u=(0,c.useCallback)(a=>{a.preventDefault(),p.current=!0,q.current=a.clientX,r.current=h,a.target.setPointerCapture(a.pointerId)},[h]),v=(0,c.useCallback)(a=>{if(!p.current)return;let b=q.current-a.clientX;i(Math.max(280,Math.min(r.current+b,.6*window.innerWidth)))},[]),w=(0,c.useCallback)(()=>{p.current=!1},[]);if(!f)return null;let x=j?a.filter(a=>a.participantId===j):a;return(0,b.jsxs)("div",{className:"flex h-full shrink-0",children:[(0,b.jsx)("div",{onPointerDown:u,onPointerMove:v,onPointerUp:w,className:"w-1.5 cursor-col-resize bg-zinc-800 hover:bg-zinc-600 transition-colors flex items-center justify-center shrink-0",children:(0,b.jsx)("div",{className:"h-8 w-0.5 rounded-full bg-zinc-500"})}),(0,b.jsxs)("div",{className:"flex flex-col bg-zinc-950 h-full",style:{width:h},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 border-b border-zinc-800 shrink-0",children:[(0,b.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)] font-mono",children:"Logs"}),(0,b.jsxs)("select",{value:j||"",onChange:a=>k(a.target.value||null),className:"bg-zinc-800 text-zinc-300 text-[11px] rounded px-1.5 py-0.5 outline-none",children:[(0,b.jsx)("option",{value:"",children:"All"}),d.map(a=>(0,b.jsx)("option",{value:a.id,children:a.name},a.id))]}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-2",children:[(0,b.jsx)("button",{onClick:e,className:"text-[11px] text-[var(--muted-foreground)] hover:text-zinc-300",children:"Clear"}),(0,b.jsx)("button",{onClick:g,className:"text-[11px] text-[var(--muted-foreground)] hover:text-zinc-300",children:"✕"})]})]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 flex flex-col",children:[(0,b.jsxs)("div",{ref:m,className:"flex-1 overflow-y-auto font-mono text-[11px] leading-4 px-3 py-2",children:[x.map((a,c)=>{let d=s[a.participantId]?.name||a.participantId,e=s[a.participantId]?.color||"#888",f="stderr"===a.stream;return(0,b.jsxs)("div",{className:"flex gap-2 whitespace-pre-wrap break-all",children:[(0,b.jsx)("span",{className:"text-[var(--muted-foreground)] shrink-0 select-none",children:new Date(a.timestamp).toLocaleTimeString([],{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}),(0,b.jsx)("span",{className:"shrink-0",style:{color:e},children:d}),(0,b.jsx)("span",{className:f?"text-red-400":"text-[var(--muted-foreground)]",children:a.line})]},c)}),(0,b.jsx)("div",{ref:l})]}),(0,b.jsx)(J.JumpToLatestButton,{visible:n&&x.length>20,onClick:t})]})]})]})}var au=a.i(166621);async function av(a){let b=await fetch(`/api/threads/knowledge?rootMessageId=${encodeURIComponent(a)}`,{cache:"no-store"});if(!b.ok)throw Error("Failed to load thread knowledge run");let c=await b.json().catch(a=>(console.warn("[ChatContainer] failed to parse thread knowledge response:",a),null));return c?.run??null}function aw(a,b,c){let d=new Set(a.map(a=>a.id)),e=c?b.find(a=>a.thread_ids?.includes(c)):b[0],f=e?e.agents.map(a=>a.agent_id).filter(a=>d.has(a)):[];return e?f:0===f.length?a.map(a=>a.id):f}function ax(a,b){let c=Object.fromEntries(b.map(a=>[a.id,a])),d=[];for(let b of a){let a="user"===b.role?"You":b.participantId?c[b.participantId]?.name||b.participantId:"Assistant",e=function(a,b=!1){return(b?a.replace(/(?:^|\n)Thinking\.\.\.[\s\S]*?\.\.\.done thinking\.?\s*/g,"\n").trim():a).replaceAll("<!-- thread-summary -->","").trim().replace(/\r\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}(b.content,"user"!==b.role);e&&(d.push(`**${a}:**`),d.push(""),d.push(e),d.push(""))}return d.join("\n").trim()}function ay({projectSlug:a,initialThreadId:k,initialRootMessageId:l,showSidebar:m=!0}={}){let{isTouchLayout:n}=(0,i.useInputCapabilities)(),{getSelection:o,pushSelection:p,replaceSelection:q}=(0,e.useUrlSelection)(),{threads:r,activeThreadId:s,selectThread:t,createThread:u,deleteThread:v,updateThreadMessages:w,isCreating:x,deletingThreadId:y,renamingThreadId:z,isLoading:A,isRestoringActiveThread:B,renameThread:C,updateThreadStatus:D,updateThreadOutcomeNote:E,updateMessageThreadStatus:F,updateMessageOutcomeNote:G}=(0,h.useThreadState)(k),{messages:H,setMessages:I,logs:J,sendMessage:K,loadHistory:L,clearLogs:M,chatRuns:O,setChatRuns:P,stop:Q,stopThread:R}=(0,f.useGroupChat)(s),{activeAgents:S,processes:T,streaming:V,chatRuns:W,poll:ab}=(0,g.useProcessPolling)(s?{workspaceId:s}:null,{messages:H,setMessages:I}),ac=(0,c.useMemo)(()=>{let a=Date.now(),b=new Map(W.map(a=>[a.chatRunId,a]));for(let c of O)!(!c.optimistic||b.has(c.chatRunId))&&(a-(c.enqueuedAt??0)>5e3||b.set(c.chatRunId,c));return Array.from(b.values()).filter(a=>"queued"===a.status||"running"===a.status)},[O,W]),ad=S.size>0||ac.some(a=>"running"===a.status)?"working":ac.some(a=>"queued"===a.status)?"queued":"ready";(0,c.useEffect)(()=>{P(a=>{let b=Date.now(),c=new Map(a.filter(a=>"string"==typeof a.chatRunId&&a.chatRunId.length>0).map(a=>[a.chatRunId,a]));for(let a of W)a?.chatRunId&&c.set(a.chatRunId,a);return Array.from(c.values()).filter(a=>!!(!a.optimistic||W.some(b=>b.chatRunId===a.chatRunId))||b-(a.enqueuedAt??0)<=5e3).sort((a,b)=>String(a.chatRunId||"").localeCompare(String(b.chatRunId||"")))})},[W,P]);let ae=(0,c.useCallback)(async a=>{await fetch(`/api/chat-runs/${encodeURIComponent(a)}/signal`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({signal:"cancel",reason:"Stopped from chat UI"})}).catch(a=>console.warn("[ChatContainer] cancel chat run failed:",a))},[]),af=(0,c.useCallback)(async()=>{let a=ac[0];a?.chatRunId&&await ae(a.chatRunId),await Q(),await ab()},[ac,ae,Q,ab]),az=(0,c.useCallback)(async a=>{let b=ac.find(b=>b.rootMessageId===a);b?.chatRunId&&await ae(b.chatRunId),await R(a),await ab()},[ac,ae,R,ab]),aA=(0,c.useRef)(af);(0,c.useEffect)(()=>{aA.current=af},[af]);let{projects:aB,createProject:aC,deleteProject:aD,addAgent:aE,removeAgent:aF,reorderAgents:aG}=(0,ak.useProjectsWithAgents)(),{projects:aH,updateProject:aI}=(0,ak.useProjects)(),aJ=(0,c.useMemo)(()=>s?aB.filter(a=>a.thread_ids?.includes(s)):aB,[aB,s]),aK=(0,c.useMemo)(()=>a||aJ[0]?.slug||void 0,[a,aJ]),aL=(0,c.useMemo)(()=>aJ[0]?.id??void 0,[aJ]),[aM,aN]=(0,c.useState)([]),[aO,aP]=(0,c.useState)(!1),[aQ,aR]=(0,c.useState)([]),[aS,aT]=(0,c.useState)(!1),[aU,aV]=(0,c.useState)(()=>"light"),[aW,aX]=(0,c.useState)(!1),[aY,aZ]=(0,c.useState)(368),a$=(0,c.useRef)(!1);(0,c.useEffect)(()=>{let a=(0,Z.loadWorkspaceSidebarVisible)();a$.current=!0,aX(a),aZ((0,$.loadWorkspaceWidth)()||368)},[]),(0,c.useEffect)(()=>{},[aU]);let[a_,a0]=(0,c.useState)(!1),[a1,a2]=(0,c.useState)(new Set),[a3,a4]=(0,c.useState)(!1),[a5,a6]=(0,c.useState)(!1),[a7,a8]=(0,c.useState)(null),a9=o("open"),ba=o("message"),bb=a?a9??l??null:l??null,bc=bb?a1.has(bb):a3;(0,c.useEffect)(()=>{if(!bb)return;let a=!1,b=()=>{fetch(`/api/schedules?rootMessageId=${encodeURIComponent(bb)}`).then(a=>a.json()).then(b=>{a||a2(a=>{let c=a.has(bb);if(b.active&&!c){let b=new Set(a);return b.add(bb),b}if(!b.active&&c){let b=new Set(a);return b.delete(bb),b}return a})}).catch(a=>console.warn("[ChatContainer] check auto-mode status failed:",a))};b();let c=setInterval(b,d.UI_POLL_CHAT_CHECK_MS);return()=>{a=!0,clearInterval(c)}},[bb]),(0,c.useEffect)(()=>{let a=!1,b=()=>{fetch("/api/schedules").then(a=>a.json()).then(b=>{!a&&b.activeRootMessageIds&&a2(a=>{let c=new Set(b.activeRootMessageIds);return c.size===a.size&&[...c].every(b=>a.has(b))?a:c})}).catch(a=>console.warn("[ChatContainer] fetch schedules failed:",a))};b();let c=setInterval(b,d.UI_POLL_CHAT_ALT_MS);return()=>{a=!0,clearInterval(c)}},[]);let bd=(0,c.useCallback)((b,c={})=>{let d=c.replace?q:p;if(a){let e=c.threadId??s??k??null;if(!e)return;d({open:b,message:c.messageId??null},`/projects/${a}/thread/${encodeURIComponent(e)}`);return}b?d({message:c.messageId??null},`/thread/${encodeURIComponent(b)}`):d({message:null},"/")},[s,k,a,p,q]);(0,c.useEffect)(()=>{l&&(async()=>{try{let a=await fetch(`/api/messages/${l}`);if(!a.ok)return;let{threadId:b}=await a.json();b&&t(b)}catch{}})()},[l,t]);let[be,bf]=(0,c.useState)(""),[bg,bh]=(0,c.useState)([]),[bi,bj]=(0,c.useState)(0),[bk,bl]=(0,c.useState)(!1),[bm,bn]=(0,c.useState)(null),[bo,bp]=(0,c.useState)(new Set),[bq,br]=(0,c.useState)(null),[bs,bt]=(0,c.useState)(null),bu=(0,c.useRef)(null),bv=(0,c.useRef)(""),bw=(0,c.useCallback)(async(a=!1)=>{try{let a=await fetch("/api/participants");if(!a.ok)return;let b=await a.json();if(!Array.isArray(b))return;aN(b)}finally{a&&aP(!0)}},[]),bx=(0,c.useCallback)(async a=>{try{await ah({threadSidebarVisible:a})}catch(a){console.error("Unable to persist thread sidebar preference",a)}},[ah]),by=(0,c.useCallback)(a=>{(0,Z.persistWorkspaceSidebarVisible)(a),bx(a)},[bx]),bz=be.trim(),bA=bz.length>0,bB=(0,c.useMemo)(()=>Object.fromEntries(r.map(a=>[a.id,a.title?.trim()||"Untitled thread"])),[r]),bC=(0,c.useMemo)(()=>{if(!bb)return[];let a=new Set([H.find(a=>a.id===bb),...H.filter(a=>a.rootMessageId===bb)].filter(Boolean).map(a=>a.participantId).filter(Boolean));return Object.keys(V).forEach(b=>{V[b].rootMessageId===bb&&a.add(b)}),aM.filter(b=>a.has(b.id))},[bb,H,V,aM]),bD=(0,c.useMemo)(()=>{let a=new Map(aM.map(a=>[a.id,a]));return aQ.map(b=>a.get(b)).filter(Boolean)},[aM,aQ]),bE=(0,c.useMemo)(()=>aH.map(a=>({id:a.id,name:a.name,slug:a.slug})),[aH]),bF=(0,c.useMemo)(()=>{if(!bb)return 0;let a=[H.find(a=>a.id===bb),...H.filter(a=>a.rootMessageId===bb)].filter(Boolean);return 0===a.length?0:Math.max(...a.map(a=>a.timestamp))},[bb,H]),bG=(0,c.useMemo)(()=>{if(!bb)return"";let a=H.find(a=>a.id===bb);if(!a)return"Discussion";let b=a.content.trim();return b.length>60?b.slice(0,60)+"...":b},[bb,H]),bH=(0,c.useMemo)(()=>{if(!bb)return null;let a=H.find(a=>a.id===bb),b=a?.threadStatus??"active";return{value:b,...{active:{label:"Active",color:"#f59e0b"},paused:{label:"Paused",color:"#f97316"},"in-review":{label:"In Review",color:"#6b7280"},done:{label:"Done",color:"#3b82f6"},archived:{label:"Archived",color:"#9ca3af"}}[b]}},[bb,H]);(0,c.useEffect)(()=>{if(!ba)return;let a=H.find(a=>a.id===ba)??null;if(a){let b=a.rootMessageId||a.id;b!==bb&&bd(b,{messageId:ba,replace:!0});return}!bb||[H.find(a=>a.id===bb),...H.filter(a=>a.rootMessageId===bb)].filter(Boolean).length>0&&q({message:null})},[H,bd,bb,q,ba]);let bI=(0,c.useCallback)(()=>{bf(""),bh([]),bj(0),bn(null),bl(!1)},[]);(0,c.useCallback)(()=>{let a=ax(H,aM);navigator.clipboard.writeText(a).then(()=>{aT(!0),setTimeout(()=>aT(!1),2e3)})},[H,aM]);let[bJ,bK]=(0,c.useState)(null),bL=(0,c.useCallback)(a=>{let b=H.find(b=>b.id===a);if(!b)return;let c=[b,...H.filter(b=>b.rootMessageId===a).sort((a,b)=>a.timestamp-b.timestamp)];bK({title:b.content.slice(0,60).replace(/\n/g," ").trim()||"Untitled",threadId:a,messages:c})},[H]),bM=(0,c.useCallback)(a=>{let b=ax([H.find(b=>b.id===a),...H.filter(b=>b.rootMessageId===a).sort((a,b)=>a.timestamp-b.timestamp)].filter(Boolean),aM);navigator.clipboard.writeText(b).catch(a=>console.error("Failed to copy thread",a))},[H,aM]),bN=(0,c.useCallback)(async()=>{if(bb){a6(!0);try{let a=["repo"];aK&&a.push("project");let b=await fetch("/api/threads/knowledge",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:bb,scopes:a})}),c=await b.json().catch(a=>(console.warn("[ChatContainer] failed to parse knowledge extraction response:",a),null));if(!b.ok)throw Error("string"==typeof c?.error?c.error:"Request failed");a8(c?.run??null)}catch(b){let a=b instanceof Error?b.message:"Request failed";window.alert(`Failed to extract knowledge: ${a}`)}finally{a6(!1)}}},[bb,aK]);(0,c.useEffect)(()=>{if(!bb){a8(null),a6(!1);return}let a=!1;return(async()=>{try{let b=await av(bb);if(a)return;a8(b)}catch{a||a8(null)}})(),()=>{a=!0}},[bb]),(0,c.useEffect)(()=>{if(!bb||a7?.status!=="running")return;let a=!1,b=async()=>{try{let b=await av(bb);if(a)return;a8(b)}catch{}};b();let c=window.setInterval(()=>{b()},2e3);return()=>{a=!0,window.clearInterval(c)}},[bb,a7?.status]);let bO=a7?.status==="running",bP=a5||bO,bQ=(a7?.repoInsertedCount??0)+(a7?.projectInsertedCount??0),bR=(0,c.useMemo)(()=>{if(!a7)return null;if("running"===a7.status)return"Learning in progress";if("failed"===a7.status)return"Last learning run failed";if(bQ>0){let a=1===bQ?"insight":"insights";return`Learned ${bQ} ${a}`}return"No new learnings"},[bQ,a7]);(0,c.useEffect)(()=>{bw(!0)},[bw]);let bS=(0,c.useMemo)(()=>{if(!aO)return[];let a=new Set(aM.map(a=>a.id)),b=new Set;for(let c of H)"assistant"===c.role&&c.participantId&&(a.has(c.participantId)||b.add(c.participantId));for(let c of Object.keys(V))a.has(c)||b.add(c);return Array.from(b).sort()},[H,aM,aO,V]);(0,c.useEffect)(()=>{if(!aO)return;let a=bS.join("|");if(!a){bv.current="";return}bv.current!==a&&(bv.current=a,bw(!1))},[aO,bw,bS]),(0,c.useEffect)(()=>{if(!aO)return;let a=aw(aM,aB,s);if(!s)return void aR(a);let b=function(a){let b=a.trim();if(!b)return null;let c={..._};return b in c.activeParticipantIdsByThread?[...c.activeParticipantIdsByThread[b]]:null}(s);if(null===b)return void aR(a);let c=function(a,b){if(null===b)return a;let c=new Set(b);return a.filter(a=>c.has(a))}(a,b),d=c.length>0?c:a;(d.length!==b.length||d.some((a,c)=>b[c]!==a))&&aa(s,d),aR(d)},[s,aM,aO,aB]),(0,c.useEffect)(()=>{let a=!1;return(async()=>{try{let b=await ag();if(a)return;aX(a=>a===b.threadSidebarVisible?a:a$.current?(bx(a),a):((0,Z.persistWorkspaceSidebarVisible)(b.threadSidebarVisible),b.threadSidebarVisible))}catch(a){console.error("Failed to load user preferences",a)}})(),()=>{a=!0}},[bx]),(0,c.useEffect)(()=>{A||x||0!==r.length||u({id:"global",title:"General"})},[A,x,r.length,u]),(0,c.useEffect)(()=>{if(a)return;let b=a=>{if((a.metaKey||a.ctrlKey)&&"k"===a.key.toLowerCase()){a.preventDefault(),bu.current?.focus(),bu.current?.select();return}"Escape"===a.key&&bz&&bI()};return window.addEventListener("keydown",b),()=>window.removeEventListener("keydown",b)},[bI,bz,a]),(0,c.useEffect)(()=>{if(!bz){bh([]),bj(0),bn(null),bl(!1);return}let a=!1;bl(!0);let b=window.setTimeout(()=>{(async()=>{try{let b=new URLSearchParams({q:bz,limit:"20",offset:"0"}),c=await fetch(`/api/search?${b.toString()}`),d=await c.json().catch(a=>(console.warn("[ChatContainer] failed to parse search response:",a),null));if(a)return;if(!c.ok){let a=d&&"object"==typeof d&&"error"in d?String(d.error):"Search failed";bh([]),bj(0),bn(a);return}bh(Array.isArray(d.results)?d.results:[]),bj("number"==typeof d.total?d.total:0),bn(null)}catch(b){if(a)return;console.error("Search request failed",b),bh([]),bj(0),bn("Search failed")}finally{a||bl(!1)}})()},300);return()=>{a=!0,window.clearTimeout(b)}},[bz]);let bT=(0,c.useRef)(null);(0,c.useEffect)(()=>{null!==bT.current&&bT.current!==s&&aA.current(),bT.current=s,s&&L(s)},[s,L]),(0,c.useEffect)(()=>{s&&w(s,H)},[s,H,w]);let bU=(0,c.useCallback)((a,b,c=10,d,e,f)=>{s&&0!==bD.length&&K(b,c,s,a,void 0,void 0,(0,ai.orderParticipantIds)(bD.map(a=>a.id),d),aK,e,f)},[s,K,bD,aK]),bV=(0,c.useCallback)(async a=>{if(s){if(0===bD.length)return void window.alert("Enable at least one agent in this project.");bp(b=>new Set(b).add(a));try{let b=await fetch("/api/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:s,rootMessageId:a,activeParticipantIds:bD.map(a=>a.id)})});b.ok?await L(s):console.error("Summarize failed:",await b.text())}catch(a){console.error("Summarize error:",a)}finally{bp(b=>{let c=new Set(b);return c.delete(a),c})}}},[s,L,bD]);(0,c.useCallback)(a=>{bd(a)},[bd]);let bW=(0,c.useCallback)(a=>{bd(a)},[bd]),bX=(0,c.useCallback)(a=>{let b=a?.trim()??"";b&&bf(b),requestAnimationFrame(()=>{bu.current?.focus(),b||bu.current?.select()})},[]),bY=(0,c.useCallback)(()=>{if(!s)return;let a=(()=>{if(bb)return bb;let a=new Set(H.map(a=>a.rootMessageId).filter(a=>!!a));for(let b=H.length-1;b>=0;b-=1){let c=H[b];if(!c.rootMessageId&&a.has(c.id))return c.id}return null})();a?bV(a):console.warn("No thread with replies available to summarize")},[s,bV,H,bb]),bZ=(0,c.useCallback)(async(a,b,c,d,e,f,g)=>{let h=a.match(/^\/search(?:\s+([\s\S]+))?$/i);if(h)return void bX(h[1]);if(/^\/summarize(?:\s+[\s\S]+)?$/i.test(a))return void bY();let i=s;i||(i=(await u()).id);let j=bD.map(a=>a.id);if(0===j.length)return void window.alert("Enable at least one agent in this project.");let k=(0,ai.orderParticipantIds)(j,e);if(bb)return void await K(a,b,i,bb,c,d,k,aK,f,g);let l=await K(a,b,i,null,c,d,k,aK,f,g);a3&&l&&(a4(!1),a2(a=>{let b=new Set(a);return b.add(l),b}),fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"activate",rootMessageId:l})}).catch(a=>console.error("Failed to activate schedule for new thread:",a)))},[s,a3,u,bX,bY,bb,bD,K,aK]),b$=(0,c.useCallback)(async a=>{if(!bb)return void a4(a);a2(b=>{let c=new Set(b);return a?c.add(bb):c.delete(bb),c});try{await fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:a?"activate":"stop",rootMessageId:bb})})}catch(a){console.error("Failed to toggle autonomous schedule:",a)}},[bb]),b_=(0,c.useCallback)(a=>{bd(a.rootMessageId||a.messageId,{messageId:a.messageId,threadId:a.threadId}),bI()},[bI,bd]),b0=(0,c.useCallback)(async a=>{af(),await v(a)},[v,af]),b1=(0,c.useCallback)(a=>{if(!s||!a)return;let b=H.find(b=>b.id===a);bt({type:"thread",id:a,preview:b?.content?.slice(0,120)||void 0})},[s,H]),b2=(0,c.useCallback)(async a=>{if(s){br(a),az(a);try{let b=new URLSearchParams({threadId:s,rootMessageId:a}),c=await fetch(`/api/history?${b.toString()}`,{method:"DELETE"});if(!c.ok)return void console.error("Failed to delete message thread",await c.text());let d=ba?H.find(a=>a.id===ba)??null:null,e=d?d.rootMessageId||d.id:null;bb===a?bd(null,{replace:!0}):e===a&&q({message:null});let f=H.filter(b=>b.id!==a&&b.rootMessageId!==a);w(s,f),await L(s)}catch(a){console.error("Failed to delete message thread",a)}finally{br(b=>b===a?null:b)}}},[s,az,L,H,bd,bb,q,ba,w]),b3=(0,c.useCallback)(a=>{if(!s||!a)return;let b=H.find(b=>b.id===a);bt({type:"message",id:a,preview:b?.content?.slice(0,120)||void 0})},[s,H]),b4=(0,c.useCallback)(async a=>{if(s)try{let b=new URLSearchParams({threadId:s,messageId:a}),c=await fetch(`/api/history?${b.toString()}`,{method:"DELETE"});if(!c.ok)return void console.error("Failed to delete message",await c.text());ba===a&&q({message:null});let d=H.filter(b=>b.id!==a);w(s,d),await L(s)}catch(a){console.error("Failed to delete message",a)}},[s,L,H,q,ba,w]),b5=(0,c.useCallback)(()=>{bs&&("thread"===bs.type?b2(bs.id):b4(bs.id),bt(null))},[bs,b2,b4]),b6=(0,c.useCallback)(()=>{bt(null)},[]),b7=(0,c.useMemo)(()=>[{name:"/search",description:"Search messages (usage: /search <query>)",aliases:["find"],execute:()=>bX()},{name:"/summarize",description:"Summarize current thread or latest thread with replies",aliases:["sum"],execute:()=>bY()}],[bX,bY]),b8=(0,c.useMemo)(()=>{let a=aK?aJ.find(a=>a.slug===aK):aJ[0];return a?.repos??[]},[aJ,aK]),[b9,ca]=(0,c.useState)(new Set),cb=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!bb){ca(new Set),cb.current=null;return}cb.current!==bb&&(ca(new Set),cb.current=bb,fetch(`/api/thread-repos?rootMessageId=${encodeURIComponent(bb)}`).then(a=>a.json()).then(a=>{cb.current===bb&&a.repoIds&&a.repoIds.length>0&&ca(new Set(a.repoIds))}).catch(a=>console.warn("[ChatContainer] load thread repos failed:",a)))},[bb]);let cc=(0,c.useCallback)(a=>{ca(a),bb&&fetch("/api/thread-repos",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:bb,repoIds:[...a]})}).catch(a=>console.warn("[ChatContainer] save thread repos failed:",a))},[bb]),cd=(0,c.useCallback)(a=>{let c=T.some(b=>["spawning","running"].includes(b.state)&&b.threadId===a)||Object.values(V).some(b=>b.rootMessageId===a)?"working":ac.some(b=>b.rootMessageId===a&&"queued"===b.status)?"queued":"ready";return(0,b.jsx)(Y.Composer,{onSend:(b,c,d,e,f,g,h)=>bU(a,b,c,f,g,h),onStop:()=>az(a),loading:"ready"!==c,activityStatus:c,participants:bD,projectGroups:aJ,projects:bE,projectId:aL,projectSlug:aK,messages:H,commands:b7,placeholder:"Reply — @name to mention, /search, /summarize",autoMode:bc,onAutoModeChange:b$,repos:b8,selectedRepoIds:b9,onRepoSelectionChange:cc})},[bU,az,V,bD,aJ,bE,aL,aK,b7,H,bc,b$,T,ac,b8,b9,cc]),ce=(0,c.useCallback)(()=>{aX(a=>{let b=!a;return by(b),b})},[by]),cf=(0,c.useCallback)(a=>{aZ(a),(0,$.persistWorkspaceWidth)(a)},[]),cg=async a=>{let b=await fetch("/api/participants",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(b.ok){let a=await b.json();aN(b=>b.map(b=>b.id===a.id?a:b))}},ch=(0,c.useCallback)((a,b)=>{aR(c=>{let d=aw(aM,aB,s);if(!new Set(d).has(a))return c;let e=new Set(c);b?e.add(a):e.delete(a);let f=d.filter(a=>e.has(a));return s&&aa(s,f),f})},[s,aM,aB]),ci=(0,c.useCallback)(a=>{let b=aB.find(b=>b.id===a);if(!b||s&&!b.thread_ids?.includes(s))return;let c=b.agents.map(a=>a.agent_id);aR(c),s&&aa(s,c)},[aB,s]),cj=(0,c.useCallback)(()=>{aV(a=>"dark"===a?"light":"dark")},[]),ck=()=>(0,b.jsx)("button",{type:"button",onClick:cj,"aria-label":"dark"===aU?"Switch to light theme":"Switch to dark theme",title:"dark"===aU?"Switch to light theme":"Switch to dark theme",className:"inline-flex h-9 w-9 items-center justify-center rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] transition-all hover:border-[var(--app-shell-border-strong)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",children:"dark"===aU?(0,b.jsx)(aq.Sun,{className:"h-4 w-4",strokeWidth:1.75}):(0,b.jsx)(ap.Moon,{className:"h-4 w-4",strokeWidth:1.75})}),cl=(0,b.jsxs)("div",{className:"relative group/search min-w-0 flex-1",children:[(0,b.jsx)(al.Search,{className:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[var(--app-shell-soft-text)] transition-colors group-focus-within/search:text-[var(--primary)]",strokeWidth:2}),(0,b.jsx)("input",{ref:bu,type:"text",value:be,onChange:a=>bf(a.target.value),onKeyDown:a=>{"Escape"===a.key&&bI()},placeholder:"Search messages…",className:`w-full rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] pl-9 pr-16 text-sm font-medium text-[var(--foreground)] outline-none placeholder:text-[var(--app-shell-soft-text)] transition-all hover:border-[var(--app-shell-border-strong)] focus:border-[var(--primary)] focus:ring-2 focus:ring-[var(--ring)] ${a?"h-7 text-xs":"h-9"}`}),bz?(0,b.jsxs)("div",{className:"absolute right-3 top-1/2 flex -translate-y-1/2 items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[11px] font-bold text-[var(--muted-foreground)]",children:bk?"…":bi}),(0,b.jsx)("button",{type:"button",onClick:bI,className:"text-[10px] font-bold text-[var(--app-shell-soft-text)] transition-colors hover:text-[var(--app-shell-muted)]",children:"✕"})]}):n?null:(0,b.jsx)("kbd",{className:"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] px-1.5 py-0.5 font-sans text-[10px] font-bold text-[var(--app-shell-soft-text)]",children:"⌘K"})]}),cm=a?null:(0,b.jsx)("div",{className:"desktop-titlebar border-b border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] px-4 py-2.5 backdrop-blur-xl md:px-6",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-5xl items-center gap-3",children:[(0,b.jsx)("div",{className:"flex min-w-0 items-center flex-shrink-0",children:m&&!aW&&(0,b.jsx)("button",{type:"button",onClick:ce,className:"inline-flex h-9 w-9 items-center justify-center rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] transition hover:border-[var(--app-shell-border-strong)] hover:text-[var(--foreground)]",title:"Show sidebar","aria-label":"Show sidebar",children:(0,b.jsx)(ao.PanelLeftOpen,{className:"h-4 w-4",strokeWidth:1.75})})}),(0,b.jsx)("div",{className:"flex flex-1 justify-center min-w-0",children:(0,b.jsxs)("div",{className:"flex w-full max-w-2xl items-center gap-2",children:[cl,(0,b.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[ck(),(0,b.jsx)(au.StatusIndicator,{}),bb&&(0,b.jsx)("button",{type:"button",onClick:()=>a0(!a_),"aria-label":a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,"aria-pressed":a_,title:a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,className:`inline-flex h-9 w-9 items-center justify-center rounded-xl border transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)] ${a_?"border-[var(--app-shell-border-strong)] bg-[var(--app-shell-subtle)] text-[var(--foreground)]":"border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]"}`,children:(0,b.jsx)(an.default,{className:"h-4 w-4",strokeWidth:1.75})})]})]})})]})});return(0,b.jsxs)("div",{className:`flex ${a?"h-full":"h-screen"} bg-[var(--app-shell-bg)] text-[var(--foreground)]`,children:[m?(0,b.jsx)(j.WorkspaceSidebar,{threads:r,participants:aM,activeThreadId:s,isLoading:A,isRestoringActiveThread:B,isCreating:x,deletingThreadId:y,renamingThreadId:z,onSelectThread:t,onCreateThread:u,onRenameThread:C,onDeleteThread:b0,activeParticipantIds:aQ,onToggleParticipantActive:ch,visible:aW,onToggle:ce,width:aY,onWidthChange:cf,projects:aB,onCreateProject:aC,onUpdateProject:aI,onDeleteProject:aD,onAddAgentToProject:aE,onRemoveAgentFromProject:aF,onReorderProjectAgents:aG,onUpdateParticipant:cg,onSelectProject:ci}):null,(0,b.jsx)("div",{className:"flex flex-col flex-1 min-w-0 relative",children:B?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center px-4 text-sm text-[var(--muted-foreground)]",children:"Loading your last project…"}):(0,b.jsx)("div",{className:"flex flex-1 min-h-0 bg-transparent relative",children:(0,b.jsxs)("div",{className:"flex flex-col flex-1 min-w-0",children:[bb?(0,b.jsx)("div",{className:"desktop-titlebar border-b border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] px-4 py-2.5 backdrop-blur-xl md:px-6 transition-colors duration-200 shrink-0",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-5xl items-center gap-3 min-w-0",children:[m&&!aW?(0,b.jsx)("button",{type:"button",onClick:ce,className:"inline-flex h-9 w-9 items-center justify-center rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] transition hover:border-[var(--app-shell-border-strong)] hover:text-[var(--foreground)]",title:"Show sidebar","aria-label":"Show sidebar",children:(0,b.jsx)(ao.PanelLeftOpen,{className:"h-4 w-4",strokeWidth:1.75})}):null,(0,b.jsx)("button",{onClick:()=>bd(null),className:"p-1.5 text-[var(--app-shell-muted)] hover:text-[var(--primary)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all active:scale-95 flex-shrink-0",title:"Back to main feed",children:(0,b.jsx)(am.ChevronLeft,{size:20,strokeWidth:2.25})}),(0,b.jsxs)("div",{className:"flex-1 flex flex-col min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,b.jsx)("h2",{className:"text-[15px] font-semibold text-[var(--foreground)] tracking-tight leading-tight truncate min-w-0",children:bG}),bH&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-semibold border shrink-0",style:{borderColor:bH.color+"40",color:bH.color},children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:bH.color}}),bH.label]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] font-medium text-[var(--app-shell-muted)]",children:[(0,b.jsxs)("span",{className:"opacity-80",children:[bC.length," agents"]}),(0,b.jsx)("span",{className:"h-0.5 w-0.5 rounded-full bg-[var(--app-shell-soft-text)]"}),(0,b.jsxs)("span",{className:"opacity-80",children:["Updated ",function(a){if(!a)return"recently";let b=Math.floor((Date.now()-a)/1e3);if(b<60)return"just now";let c=Math.floor(b/60);if(c<60)return`${c}m ago`;let d=Math.floor(c/60);return d<24?`${d}h ago`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(a)}(bF)]}),bR&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"h-0.5 w-0.5 rounded-full bg-[var(--app-shell-soft-text)]"}),(0,b.jsx)("span",{className:"opacity-80",children:bR})]})]})]}),(0,b.jsx)("div",{className:"flex -space-x-1.5 flex-shrink-0",children:bC.map(a=>(0,b.jsx)("img",{src:`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${a.id}&backgroundColor=${a.color?a.color.replace("#",""):"e2e8f0"}`,alt:a.name,className:"h-7 w-7 rounded-full border-2 border-[var(--app-shell-elevated)] object-cover shadow-sm ring-1 ring-[var(--app-shell-border)]",title:a.name},a.id))}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-2",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>void bN(),disabled:bP,title:bO?"Learning is already running for this discussion":"Learn from this discussion",className:`inline-flex h-9 items-center gap-1.5 rounded-xl border px-3 text-xs font-medium transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)] ${bP?"cursor-wait border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] text-[var(--app-shell-muted)]":"border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]"}`,children:[bP?(0,b.jsx)(as.default,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):(0,b.jsx)(ar.BookOpen,{className:"h-3.5 w-3.5",strokeWidth:1.75}),(0,b.jsx)("span",{className:"hidden sm:inline",children:bO?"Learning...":"Learn from discussion"})]}),!a&&ck(),!a&&(0,b.jsx)(au.StatusIndicator,{}),(0,b.jsx)("button",{type:"button",onClick:()=>a0(!a_),"aria-label":a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,"aria-pressed":a_,title:a_?"Hide logs":`Show logs${J.length>0?` (${J.length})`:""}`,className:`inline-flex h-9 w-9 items-center justify-center rounded-xl border transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)] ${a_?"border-[var(--app-shell-border-strong)] bg-[var(--app-shell-subtle)] text-[var(--foreground)]":"border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)] hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]"}`,children:(0,b.jsx)(an.default,{className:"h-4 w-4",strokeWidth:1.75})})]})]})}):cm,bA?(0,b.jsx)(X,{query:bz,results:bg,total:bi,participants:aM,threadTitleById:bB,isLoading:bk,error:bm,onSelectResult:b_}):bb?(0,b.jsx)(U,{messages:H,streaming:V,participants:aM,rootMessageId:bb,queued:ac.some(a=>a.rootMessageId===bb&&"queued"===a.status),onClose:()=>bd(null),onCopyThread:bM,onAddToChat:bL,onDeleteThreadRoot:b1,onDeleteMessage:b3,highlightedMessageId:ba||void 0,renderReplyComposer:cd,activeProcesses:T.filter(a=>["spawning","running"].includes(a.state)&&a.threadId===bb)}):(0,b.jsx)(N,{messages:H,streaming:V,participants:aM,onOpenThread:bW,onCopyThread:bM,onAddToChat:bL,onDeleteThreadRoot:b1,onSummarize:bV,summarizingThreads:bo,deletingThreadRootId:bq,highlightedMessageId:ba,shipModeThreads:a1,onUpdateMessageThreadStatus:s?(a,b)=>{I(c=>c.map(c=>c.id===a?{...c,threadStatus:b}:c)),F(s,a,b),fetch("/api/threads",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:a,status:b})})}:void 0,onUpdateMessageOutcomeNote:s?(a,b)=>{I(c=>c.map(c=>c.id===a?{...c,outcomeNote:b}:c)),G(s,a,b);let c=H.find(b=>b.id===a);fetch("/api/threads",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootMessageId:a,status:c?.threadStatus??null,outcomeNote:b})})}:void 0}),!bA&&!bb&&(0,b.jsx)(Y.Composer,{onSend:bZ,onStop:af,loading:"ready"!==ad,activityStatus:ad,participants:bD,projects:bE,projectGroups:aJ,projectId:aL,projectSlug:aK,messages:H,commands:b7,pendingThreadInsert:bJ,onClearPendingThread:()=>bK(null),autoMode:bc,onAutoModeChange:b$,repos:b8,selectedRepoIds:b9,onRepoSelectionChange:cc})]})})}),l&&(0,b.jsx)(at,{logs:J,participants:aM,onClear:()=>void M(s),open:a_,onToggle:()=>a0(!1)}),(0,b.jsx)(aj.default,{isOpen:null!==bs,title:bs?.type==="thread"?"Delete Discussion":"Delete Message",message:bs?.type==="thread"?"This will permanently delete this discussion and all of its replies. This action cannot be undone.":"This will permanently delete this message. This action cannot be undone.",preview:bs?.preview,confirmLabel:"Delete",cancelLabel:"Cancel",variant:"danger",onConfirm:b5,onCancel:b6})]})}a.s(["ChatContainer",()=>ay],398066)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=apps_local_components_chat-ui_ChatContainer_tsx_47371955._.js.map
|