@mndrk/agx 2.1.0 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +70 -105
- package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +1 -1
- 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_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/linear/issues/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/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]/linear-issues/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]/worker/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/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/extract/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/automations/page/react-loadable-manifest.json +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.rsc +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders.segment.rsc +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/page.js.nft.json +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/react-loadable-manifest.json +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]/knowledge/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/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]/settings/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/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/orphans/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects.segment.rsc +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/settings/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings.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 +4 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +4 -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 +3 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +3 -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/skills/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
- 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 +2 -2
- 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/thread/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0-zk9w8._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0.01bfe._.js +13 -8
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__00c~p6z._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__019dflu._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__02t.3rm._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__06zr0ph._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__07d._0s._.js +15 -10
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08xj~a3._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0a0cq38._.js +34 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0asvfdo._.js +35 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0bt7ejs._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0f.~98d._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g-~-.q._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7p6pw._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gj~dap._.js +40 -9
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hkcw03._.js +8 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hyu3en._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0i5aw03._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ke4z91._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0l53ok5._.js +41 -10
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ll-~cx._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0mh6p.0._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0nc-lbr._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0p9rl6.._.js +8 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0q~pnp0._.js +6 -6
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ue0bu5._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0unwwyx._.js +12 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0vtkl3q._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0x6w64i._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0z82z0-._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0zrv3p3._.js +16 -11
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~iknwz._.js +12 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10d.dhd._.js +46 -15
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10sw5ia._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__11yx.ud._.js +33 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__13-nlgu._.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__13960a8._.js +14 -9
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_06qet8g._.js +14 -9
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_0m2ly._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0a15wtk._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0fr1qq6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0g.q2r6._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0i7fs.i._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01pvj2g._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_agent-participants_ts_0cq15u5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_db_ts_0twf-w5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_0c2l_oh._.js +43 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_0l95hik._.js +15 -15
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_0s5xprd._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_082u-ls._.js +19 -14
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_schedule-runner_ts_07-ozf_._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0_l0fpi.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0gips_c.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0rszt9p.js +10 -6
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0u_5kfo.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_06fnblz._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__039h7r.._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0lno3km._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__0fl7_-o._.js → [root-of-the-server]__0nqqk26._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__0j9m72.._.js → [root-of-the-server]__0tqn-o5._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0~nm7b6._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0140-84._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03fckp4._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_064h43p._.js → _05xj_bp._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0tcjapj._.js → _0ip6k6n._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0jensz1._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0t0p8q5._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yeuuy1._.js +1 -23
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_03z24q2._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_0nvzo3y._.js → apps_local_04dh2yh._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_ac-.f._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0a-8i4p._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0k4~c1x._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0ld1uug._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0ms1d6i._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0p_v0ri._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0x.xj52._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0~g2ijr._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_11k_-8~._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_[id]_page_tsx_06n47n~._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_page_tsx_078reb_._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_0aaa3~t._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_0a~n5y8._.js +25 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_0kcaeqi._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_[teamId]_agents_[agentId]_page_tsx_0wm~_~t._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_[teamId]_page_tsx_0iyozfl._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_new_page_tsx_0yqd0a5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_01n9qk.._.js +1 -20
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_0ql2qmr._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_PromptJobBoard_tsx_06zob36._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_ChatContainer_tsx_0c9fjtl._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_0k4tfip._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_terminal_TerminalPane_tsx_0l17vs_._.js +22 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_thread_WorkspaceSidebar_tsx_0unv2xp._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +1 -1
- 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/{0e307b-0c2jbx.js → 0-cets4_axpvm.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1011~1x9nj4ny.js → 0-k2m1ncx7hwx.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0dnw31436wd~..js → 0-pkmgle2s8u8.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/064jfmraty.9h.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/06kru5m9q~r.j.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/06kyg1q0bcz6p.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{119v0-idpg-cv.js → 08bdyjcnamzep.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0-olq~7zw3wjy.js → 08xq~uyr6.eqw.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0gj98094p~zn4.js → 0cku81z~3oe6..js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e7jhy0-52_4k.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0wh6p5~ft5rma.js → 0htc.sqrk_0.c.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ju4xmxwqddw6.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0kn66yvx08813.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{07646a0h94826.js → 0l89kxqcf86on.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0mm978wb-ueg-.js +6 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0musu8f.4wvxz.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0bchtyu6m.2yv.js → 0muti0yiyhu0t.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0rhps884e-bzu.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0rr3fvwc5ind~.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0sbkkjowkksa6.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0sjz0.o9_33qy.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0srzmg8ivve1g.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0fonouj2i9qnb.js → 0swo3_e8.4s7j.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0sysrf3~l~r35.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0t69h-kc701fn.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0v67lnh..wj4z.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{013gtut17~fne.js → 0wb45ol1xrqe~.js} +1 -23
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{00po4v2x~0x_z.js → 0wiw2v8gm-k_-.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0tt1oh112yv-l.js → 0wopevh0s7.8c.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xm2~gxlt1npd.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1503vb7lb6.g1.js → 0ya124ushze_f.js} +4 -4
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0zt2o58c5gytn.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~idsggr8vqf5.js +59 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0stvi5btlxl4m.js → 0~mcfx41q4znh.js} +3 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/116j4mjz~y42t.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0-vo_x2cxmjm3.js → 12b62py0mq1gm.js} +4 -4
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/12y5i0lh6s73o.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/148.mt80civoz.js +20 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/14m5d270euu_s.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0-_ukhpeg429c.js → 16h9208kl5~xa.js} +1 -1
- package/cloud-runtime/standalone/apps/local/app/agents/[id]/page.tsx +6 -3
- package/cloud-runtime/standalone/apps/local/app/agents/page.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/app/api/chat/route.ts +7 -1
- package/cloud-runtime/standalone/apps/local/app/api/participants/route.ts +9 -9
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/search/route.ts +6 -6
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/teams/route.ts +3 -3
- package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/agents/route.ts +1 -1
- package/cloud-runtime/standalone/apps/local/app/api/schedules/poll/route.ts +11 -2
- package/cloud-runtime/standalone/apps/local/app/page.tsx +72 -14
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/page.tsx +34 -1
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.tsx +6 -3
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/[teamId]/page.tsx +6 -3
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/new/page.tsx +8 -17
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/replace/page.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/app/projects/page.tsx +7 -0
- package/cloud-runtime/standalone/apps/local/app/setup/page.tsx +1 -38
- package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +8 -4
- package/cloud-runtime/standalone/apps/local/components/EmptyStateCard.tsx +37 -0
- package/cloud-runtime/standalone/apps/local/components/LinearBoard.tsx +103 -770
- package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +8 -39
- package/cloud-runtime/standalone/apps/local/components/TeamPickerModal.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +28 -32
- package/cloud-runtime/standalone/apps/local/components/chat-ui/ParticipantBar.tsx +24 -39
- package/cloud-runtime/standalone/apps/local/components/linear/LinearBoardFilters.tsx +343 -0
- package/cloud-runtime/standalone/apps/local/components/linear/LinearSettingsModal.tsx +9 -3
- package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerConfig.tsx +65 -30
- package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerRunLog.tsx +190 -0
- package/cloud-runtime/standalone/apps/local/components/linear/TicketRow.tsx +158 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveHealthTrend.tsx +45 -61
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +38 -34
- package/cloud-runtime/standalone/apps/local/components/projects/RecentlyCompletedCard.tsx +0 -16
- package/cloud-runtime/standalone/apps/local/components/projects/ReplaceAgentsModal.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +155 -120
- package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +85 -88
- package/cloud-runtime/standalone/apps/local/components/setup/SetupLayout.tsx +6 -4
- package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +18 -193
- package/cloud-runtime/standalone/apps/local/components/terminal/TerminalPane.tsx +40 -4
- package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +121 -20
- package/cloud-runtime/standalone/apps/local/components/ui/ResizeHandle.tsx +52 -0
- package/cloud-runtime/standalone/apps/local/hooks/useAutomations.ts +8 -3
- package/cloud-runtime/standalone/apps/local/hooks/useLinearActiveAgents.ts +38 -0
- package/cloud-runtime/standalone/apps/local/hooks/useLinearParticipants.ts +118 -0
- package/cloud-runtime/standalone/apps/local/hooks/usePromptJobs.ts +5 -3
- package/cloud-runtime/standalone/apps/local/hooks/useSetupFlow.ts +6 -81
- package/cloud-runtime/standalone/apps/local/lib/agent-participants.ts +1 -1
- package/cloud-runtime/standalone/apps/local/lib/agent-process-registry.ts +34 -0
- package/cloud-runtime/standalone/apps/local/lib/db.ts +5 -5
- package/cloud-runtime/standalone/apps/local/lib/linear-board-utils.ts +9 -0
- package/cloud-runtime/standalone/apps/local/lib/linear-run-status.ts +88 -0
- package/cloud-runtime/standalone/apps/local/lib/linear-run-store.ts +4 -4
- package/cloud-runtime/standalone/apps/local/lib/sqlite-query-adapter.ts +5 -1
- package/cloud-runtime/standalone/apps/local/lib/team-catalog.ts +60 -60
- package/cloud-runtime/standalone/apps/local/lib/types.ts +1 -1
- package/cloud-runtime/standalone/apps/local/migrations/sqlite_schema.sql +1 -1
- package/cloud-runtime/standalone/apps/local/skills-lock.json +5 -0
- package/cloud-runtime/standalone/apps/local/src/graph/schedule-runner.ts +26 -1
- package/cloud-runtime/standalone/apps/local/src/graph/store.ts +13 -0
- package/cloud-runtime/standalone/apps/local/state/linearBoardPins.ts +45 -0
- package/cloud-runtime/standalone/apps/local/styles/workspaceSidebar.css +71 -2
- package/cloud-runtime/standalone/apps/local/worker/index.js +56 -4
- package/lib/cli/onboarding.js +8 -5
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0tvwux2._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__006vr7.._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0d18x53._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0z7nw_r._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_00trrg8._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ejzn1e._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0sjchy6._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0w4gpvr._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0x6hh0t._.js +0 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0t6p.qm._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/014z_yruiincl.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/041-dhls9zkl1.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/04yoml2rqnuot.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/069yt_7prdxsp.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0_mrpyqcoyb_5.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0edewt9l~cs~k.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0f7i3ae1ynhf3.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0j-nhn61e~nnj.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jrkacz_dyem6.js +0 -37
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0l3v45kd.9is_.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p-rdas54yo~w.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pdrpsy-zdxp0.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p~l5ap6qqx2o.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0r0c9y6.8.m5p.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0tm20~ec~occu.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0uve8xrt~0a2e.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0w94x-v00osq0.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xwny92a.ad_i.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0zw85-xl9ysjs.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/11l2tww5f0hsk.js +0 -20
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/12qohmk-~yrtg.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/14v~9vx3tdv85.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/16d~es6h6k~rj.js +0 -6
- package/cloud-runtime/standalone/apps/local/components/setup/ProjectStep.tsx +0 -189
- package/cloud-runtime/standalone/apps/local/components/setup/TeamsStep.tsx +0 -500
- /package/cloud-runtime/standalone/apps/local/.next/static/{RnYHmEXBwXJjVrVVx2CuP → ROMPfjQqFXqGHmbybq1eC}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{RnYHmEXBwXJjVrVVx2CuP → ROMPfjQqFXqGHmbybq1eC}/_clientMiddlewareManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{RnYHmEXBwXJjVrVVx2CuP → ROMPfjQqFXqGHmbybq1eC}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[517259,562428,a=>{"use strict";var b=a.i(831709);let c=(0,b.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);a.s(["Cpu",0,c],517259);let d=(0,b.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);a.s(["Box",0,d],562428)},328400,a=>{"use strict";let b=(0,a.i(831709).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],328400)},8e4,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(824179),e=a.i(252197),f=a.i(517259),g=a.i(562428),h=a.i(328400),i=a.i(724938),j=a.i(353532),k=a.i(89613),l=a.i(811760),m=a.i(804632),n=a.i(627421),o=a.i(86466);a.i(749741),a.i(449140),a.i(214512);var p=a.i(766412);function q(a,b=32,c){let d=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(a)}&size=${b}`;if(!c)return d;let e=c.replace("#","");return`${d}&backgroundColor=${e}`}a.i(529889);let r=["claude","ollama","gemini","codex","zai"];function s(a){return(a??[]).map(a=>a.condition?.trim()?`${a.file} | ${a.condition}`:a.file).join("\n")}function t(a){return a.split("\n").map(a=>a.trim()).filter(Boolean).map(a=>{let[b,...c]=a.split("|");return{file:b.trim(),condition:c.join("|").trim()}}).filter(a=>a.file.length>0)}function u(a,b){return JSON.stringify({name:a.name,...a.roleId?{roleId:a.roleId}:{},...a.title?{title:a.title}:{},provider:a.provider,model:a.model,identity:a.identity,color:a.color??"#6B7280",skills:a.skills??[],skillBindings:a.skillBindings??[],...b?{projectIds:b}:{}},null,2)}a.s(["AgentForm",0,function({title:a,initial:v,submitLabel:w,onSubmit:x,onCancel:y,projects:z,initialProjectIds:A,agentId:B,projectMemberships:C,onAddToProject:D,onRemoveFromProject:E,roleOptions:F,roleLabel:G="Role",onRolePresetChange:H}){let[I,J]=(0,c.useState)(v.name),[K,L]=(0,c.useState)(v.roleId??""),[M,N]=(0,c.useState)(v.title??""),[O,P]=(0,c.useState)(v.provider),[Q,R]=(0,c.useState)(v.model),[S,T]=(0,c.useState)(v.identity),[U,V]=(0,c.useState)(v.color??"#6B7280"),[W,X]=(0,c.useState)(s(v.skills)),[Y,Z]=(0,c.useState)(new Set(A??[])),[$,_]=(0,c.useState)("form"),[aa,ab]=(0,c.useState)(()=>u(v,z?A??[]:void 0)),[ac,ad]=(0,c.useState)(null),[ae,af]=(0,c.useState)(!1),[ag,ah]=(0,c.useState)([]),[ai,aj]=(0,c.useState)(""),[ak,al]=(0,c.useState)(!1),[am,an]=(0,c.useState)(v.skillBindings??[]),ao=(0,c.useRef)(null),ap=(0,c.useRef)(null),aq=!!(F&&F.length>0),ar=B||I.trim()||v.name||"agent";(0,c.useEffect)(()=>{let a=a=>{ap.current&&!ap.current.contains(a.target)&&y()},b=setTimeout(()=>document.addEventListener("pointerdown",a),0);return()=>{clearTimeout(b),document.removeEventListener("pointerdown",a)}},[ap,y]),(0,c.useEffect)(()=>{if(!ak)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&al(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[ak]),(0,c.useEffect)(()=>{"form"===$&&ab(u({name:I,...aq&&K?{roleId:K}:{},title:M,provider:O,model:Q,identity:S,color:U,skills:t(W),skillBindings:am},z?Array.from(Y):void 0))},[$,I,K,aq,M,O,Q,S,U,W,am,Y,z]),(0,c.useEffect)(()=>{if(!ae)return;let a=window.setTimeout(()=>af(!1),1200);return()=>window.clearTimeout(a)},[ae]),(0,c.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/skills");if(!b.ok)return;let c=await b.json();if(a)return;let d=Array.isArray(c.skills)?c.skills.filter(a=>!!a&&"object"==typeof a).map(a=>({skillId:String(a.skillId??"").trim(),repo:String(a.repo??"").trim(),name:String(a.name??a.skillId??"").trim()})).filter(a=>a.skillId.length>0&&a.repo.length>0):[];ah(d)}catch{a||ah([])}}(),()=>{a=!0}},[]);let as=(a,b)=>{let c=z?(b??[]).filter(a=>z.some(b=>b.id===a)):void 0;return J(a.name),L(a.roleId??""),N(a.title??""),P(a.provider),R(a.model),T(a.identity),V(a.color??"#6B7280"),X(s(a.skills)),an(a.skillBindings??[]),z&&Z(new Set(c??[])),ab(u(a,z?c??[]:void 0)),ad(null),c},at=a=>{let b=function(a,b){let c;try{c=JSON.parse(a)}catch{throw Error("JSON is invalid.")}if(!c||"object"!=typeof c||Array.isArray(c))throw Error("JSON must be an object.");let d=c,e="string"==typeof d.provider?d.provider:b,f=r.includes(e)?e:b,g=(Array.isArray(d.skills)?d.skills:[]).flatMap(a=>{if("string"==typeof a){let[b,...c]=a.split("|"),d=b.trim();return d?[{file:d,condition:c.join("|").trim()}]:[]}if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.file?a.file.trim():"";return b?[{file:b,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]}),h=Array.isArray(d.projectIds)?d.projectIds.filter(a=>"string"==typeof a&&a.trim().length>0):void 0,i=(Array.isArray(d.skillBindings)?d.skillBindings:[]).flatMap(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.repo?a.repo.trim():"",c="string"==typeof a.skillId?a.skillId.trim():"";return b&&c?[{repo:b,skillId:c,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]});return{data:{name:"string"==typeof d.name?d.name:"",roleId:"string"==typeof d.roleId?d.roleId:void 0,title:"string"==typeof d.title?d.title:"",provider:f,model:"string"==typeof d.model?d.model:"",identity:"string"==typeof d.identity?d.identity:"",color:"string"==typeof d.color&&d.color.trim()?d.color:"#6B7280",skills:g,skillBindings:i},projectIds:h}}(a,O),c=as(b.data,b.projectIds);return{...b,projectIds:c}},au=()=>{if("form"!==$)try{at(aa),_("form")}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.")}},av=async()=>{try{await navigator.clipboard.writeText(aa),af(!0)}catch{af(!1)}},aw=(0,c.useMemo)(()=>{let a=ai.trim().toLowerCase();return a?ag.filter(b=>[b.name,b.skillId,b.repo].some(b=>b.toLowerCase().includes(a))).slice(0,50):ag.slice(0,50)},[ag,ai]),ax=(0,c.useMemo)(()=>new Set(am.map(a=>`${a.repo}::${a.skillId}`)),[am]);return(0,b.jsx)("div",{ref:ap,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:a=>{"Escape"===a.key&&y()},children:(0,b.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,b.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,b.jsx)("img",{src:q(ar,64,U),alt:I,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,b.jsx)("input",{type:"color",value:U,onChange:a=>V(a.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:a}),(0,b.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:I||"Configure Agent"})]})]}),(0,b.jsx)("button",{onClick:y,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,b.jsx)(d.X,{size:20})})]}),(0,b.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,b.jsx)("button",{type:"button",onClick:au,className:"form"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,b.jsx)("button",{type:"button",onClick:()=>{ab(u({name:I,...aq&&K?{roleId:K}:{},title:M,provider:O,model:Q,identity:S,color:U,skills:t(W),skillBindings:am},z?Array.from(Y):void 0)),ad(null),_("json")},className:"json"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===$&&(0,b.jsxs)("button",{type:"button",onClick:av,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[ae?(0,b.jsx)(n.Check,{size:14,className:"text-emerald-500"}):(0,b.jsx)(m.Copy,{size:14}),ae?"Copied":"Copy"]})]}),"form"===$?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(e.User,{size:16})," Name"]}),(0,b.jsx)("input",{type:"text",value:I,onChange:a=>J(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),aq?(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:G}),(0,b.jsx)(p.default,{options:F??[],value:K||null,onChange:a=>{if(!aq)return;let b={name:I,roleId:a,title:M,provider:O,model:Q,identity:S,color:U,skills:t(W),skillBindings:am},c=H?.(a,b);c?as({...c,roleId:a},z?Array.from(Y):void 0):L(a)},placeholder:"Select a role preset..."})]}):(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Title"}),(0,b.jsx)("input",{type:"text",value:M,onChange:a=>N(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. VP of Engineering"})]})]}),aq&&(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Title"}),(0,b.jsx)("input",{type:"text",value:M,onChange:a=>N(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. VP of Engineering"})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(g.Box,{size:16})," Provider"]}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("select",{value:O,onChange:a=>P(a.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,b.jsx)("option",{value:"claude",children:"Claude"}),(0,b.jsx)("option",{value:"ollama",children:"Ollama"}),(0,b.jsx)("option",{value:"gemini",children:"Gemini"}),(0,b.jsx)("option",{value:"codex",children:"Codex"}),(0,b.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,b.jsx)(l.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(f.Cpu,{size:16})," Model"]}),(0,b.jsx)("input",{type:"text",value:Q,onChange:a=>R(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(h.BookOpen,{size:16})," Identity"]}),(0,b.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,b.jsx)(o.default,{content:S,onChange:a=>T(a),placeholder:"You are a ..."})}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(i.Sparkles,{size:16})," Portable Knowledge"]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,b.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),ag.length>0?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"relative",ref:ao,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>al(a=>!a),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,b.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,b.jsx)(l.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ak?"rotate-180":""}`})]}),ak&&(0,b.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,b.jsx)("input",{type:"text",value:ai,onChange:a=>aj(a.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,b.jsx)("div",{className:"max-h-64 overflow-y-auto",children:aw.length>0?aw.map(a=>{let c=`${a.repo}::${a.skillId}`,d=ax.has(c);return(0,b.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${d?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void(an(a=>a.some(a=>a.repo===b&&a.skillId===c)?a.filter(a=>a.repo!==b||a.skillId!==c):[...a,{repo:b,skillId:c}]),aj(""))},children:(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("div",{className:"font-medium",children:a.name||a.skillId}),(0,b.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:a.repo})]}),d&&(0,b.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},c)}):(0,b.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[am.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[a.skillId,(0,b.jsx)("button",{type:"button",onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void an(a=>a.filter(a=>a.repo!==b||a.skillId!==c))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${a.skillId}`,children:(0,b.jsx)(d.X,{size:12})})]},`${a.repo}::${a.skillId}`)),0===am.length&&(0,b.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,b.jsx)("textarea",{value:W,onChange:a=>X(a.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,b.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,b.jsx)("code",{children:"|"})," to add an optional condition."]})]}),z&&z.length>0&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Assign To Projects"]}),(0,b.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:z.map(a=>{let c=Y.has(a.id);return(0,b.jsxs)("button",{type:"button",className:c?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>Z(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,b.jsx)("div",{className:c?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:c&&(0,b.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,b.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"text-xs font-medium text-left",children:a.label??a.name})]},a.id)})})]}),C&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Project Memberships"]}),C.current.length>0?(0,b.jsx)("div",{className:"flex flex-col gap-1",children:C.current.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,b.jsx)(k.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,b.jsx)("span",{className:"truncate flex-1",children:a.name}),E&&!a.is_default&&(0,b.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>E(a.id),title:"Remove from project",children:(0,b.jsx)(d.X,{size:12})})]},a.id))}):(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),C.available.length>0&&D&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1",children:C.available.map(a=>(0,b.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>D(a.id),children:[(0,b.jsx)(j.Plus,{size:10}),a.name]},a.id))})]})]}):(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,b.jsx)("button",{type:"button",onClick:au,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,b.jsx)("textarea",{value:aa,onChange:a=>{ab(a.target.value),ac&&ad(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),ac&&(0,b.jsx)("p",{className:"text-xs text-red-500",children:ac})]}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,b.jsx)("button",{onClick:y,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,b.jsx)("button",{onClick:()=>{let a=I.trim(),b=K,c=M.trim(),d=O,e=Q.trim(),f=S.trim(),g=U,h=t(W),i=am,j=z?Array.from(Y):void 0;if("json"===$)try{let k=at(aa);a=k.data.name.trim(),b=k.data.roleId??"",c=(k.data.title??"").trim(),d=k.data.provider,e=k.data.model.trim(),f=k.data.identity.trim(),g=k.data.color??"#6B7280",h=k.data.skills??[],i=k.data.skillBindings??[],j=z?k.projectIds??[]:void 0}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.");return}a&&e&&x({name:a,...aq&&b?{roleId:b}:{},title:c||void 0,provider:d,model:e,identity:f,color:g,skills:h,skillBindings:i},j)},disabled:"form"===$&&(!I.trim()||!Q.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:w})]})]})]})})},"agentAvatarUrl",0,q])}];
|
|
1
|
+
module.exports=[517259,562428,a=>{"use strict";var b=a.i(831709);let c=(0,b.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);a.s(["Cpu",0,c],517259);let d=(0,b.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);a.s(["Box",0,d],562428)},328400,a=>{"use strict";let b=(0,a.i(831709).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],328400)},8e4,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(824179),e=a.i(252197),f=a.i(517259),g=a.i(562428),h=a.i(328400),i=a.i(724938),j=a.i(353532),k=a.i(89613),l=a.i(811760),m=a.i(804632),n=a.i(627421),o=a.i(86466);a.i(749741),a.i(449140),a.i(214512);var p=a.i(766412);function q(a,b=32,c){let d=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(a)}&size=${b}`;if(!c)return d;let e=c.replace("#","");return`${d}&backgroundColor=${e}`}a.i(529889);let r=["claude","ollama","gemini","codex","zai"];function s(a){return(a??[]).map(a=>a.condition?.trim()?`${a.file} | ${a.condition}`:a.file).join("\n")}function t(a){return a.split("\n").map(a=>a.trim()).filter(Boolean).map(a=>{let[b,...c]=a.split("|");return{file:b.trim(),condition:c.join("|").trim()}}).filter(a=>a.file.length>0)}function u(a,b){return JSON.stringify({name:a.name,...a.roleId?{roleId:a.roleId}:{},...a.role?{role:a.role}:{},provider:a.provider,model:a.model,identity:a.identity,color:a.color??"#6B7280",skills:a.skills??[],skillBindings:a.skillBindings??[],...b?{projectIds:b}:{}},null,2)}a.s(["AgentForm",0,function({title:a,initial:v,submitLabel:w,onSubmit:x,onCancel:y,projects:z,initialProjectIds:A,agentId:B,projectMemberships:C,onAddToProject:D,onRemoveFromProject:E,roleOptions:F,roleLabel:G="Role",onRolePresetChange:H}){let[I,J]=(0,c.useState)(v.name),[K,L]=(0,c.useState)(v.roleId??""),[M,N]=(0,c.useState)(v.role??""),[O,P]=(0,c.useState)(v.provider),[Q,R]=(0,c.useState)(v.model),[S,T]=(0,c.useState)(v.identity),[U,V]=(0,c.useState)(v.color??"#6B7280"),[W,X]=(0,c.useState)(s(v.skills)),[Y,Z]=(0,c.useState)(new Set(A??[])),[$,_]=(0,c.useState)("form"),[aa,ab]=(0,c.useState)(()=>u(v,z?A??[]:void 0)),[ac,ad]=(0,c.useState)(null),[ae,af]=(0,c.useState)(!1),[ag,ah]=(0,c.useState)([]),[ai,aj]=(0,c.useState)(""),[ak,al]=(0,c.useState)(!1),[am,an]=(0,c.useState)(v.skillBindings??[]),ao=(0,c.useRef)(null),ap=(0,c.useRef)(null),aq=!!(F&&F.length>0),ar=B||I.trim()||v.name||"agent";(0,c.useEffect)(()=>{let a=a=>{ap.current&&!ap.current.contains(a.target)&&y()},b=setTimeout(()=>document.addEventListener("pointerdown",a),0);return()=>{clearTimeout(b),document.removeEventListener("pointerdown",a)}},[ap,y]),(0,c.useEffect)(()=>{if(!ak)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&al(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[ak]),(0,c.useEffect)(()=>{"form"===$&&ab(u({name:I,...aq&&K?{roleId:K}:{},role:M,provider:O,model:Q,identity:S,color:U,skills:t(W),skillBindings:am},z?Array.from(Y):void 0))},[$,I,K,aq,M,O,Q,S,U,W,am,Y,z]),(0,c.useEffect)(()=>{if(!ae)return;let a=window.setTimeout(()=>af(!1),1200);return()=>window.clearTimeout(a)},[ae]),(0,c.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/skills");if(!b.ok)return;let c=await b.json();if(a)return;let d=Array.isArray(c.skills)?c.skills.filter(a=>!!a&&"object"==typeof a).map(a=>({skillId:String(a.skillId??"").trim(),repo:String(a.repo??"").trim(),name:String(a.name??a.skillId??"").trim()})).filter(a=>a.skillId.length>0&&a.repo.length>0):[];ah(d)}catch{a||ah([])}}(),()=>{a=!0}},[]);let as=(a,b)=>{let c=z?(b??[]).filter(a=>z.some(b=>b.id===a)):void 0;return J(a.name),L(a.roleId??""),N(a.role??""),P(a.provider),R(a.model),T(a.identity),V(a.color??"#6B7280"),X(s(a.skills)),an(a.skillBindings??[]),z&&Z(new Set(c??[])),ab(u(a,z?c??[]:void 0)),ad(null),c},at=a=>{let b=function(a,b){let c;try{c=JSON.parse(a)}catch{throw Error("JSON is invalid.")}if(!c||"object"!=typeof c||Array.isArray(c))throw Error("JSON must be an object.");let d=c,e="string"==typeof d.provider?d.provider:b,f=r.includes(e)?e:b,g=(Array.isArray(d.skills)?d.skills:[]).flatMap(a=>{if("string"==typeof a){let[b,...c]=a.split("|"),d=b.trim();return d?[{file:d,condition:c.join("|").trim()}]:[]}if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.file?a.file.trim():"";return b?[{file:b,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]}),h=Array.isArray(d.projectIds)?d.projectIds.filter(a=>"string"==typeof a&&a.trim().length>0):void 0,i=(Array.isArray(d.skillBindings)?d.skillBindings:[]).flatMap(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.repo?a.repo.trim():"",c="string"==typeof a.skillId?a.skillId.trim():"";return b&&c?[{repo:b,skillId:c,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]});return{data:{name:"string"==typeof d.name?d.name:"",roleId:"string"==typeof d.roleId?d.roleId:void 0,role:"string"==typeof d.role?d.role:"",provider:f,model:"string"==typeof d.model?d.model:"",identity:"string"==typeof d.identity?d.identity:"",color:"string"==typeof d.color&&d.color.trim()?d.color:"#6B7280",skills:g,skillBindings:i},projectIds:h}}(a,O),c=as(b.data,b.projectIds);return{...b,projectIds:c}},au=()=>{if("form"!==$)try{at(aa),_("form")}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.")}},av=async()=>{try{await navigator.clipboard.writeText(aa),af(!0)}catch{af(!1)}},aw=(0,c.useMemo)(()=>{let a=ai.trim().toLowerCase();return a?ag.filter(b=>[b.name,b.skillId,b.repo].some(b=>b.toLowerCase().includes(a))).slice(0,50):ag.slice(0,50)},[ag,ai]),ax=(0,c.useMemo)(()=>new Set(am.map(a=>`${a.repo}::${a.skillId}`)),[am]);return(0,b.jsx)("div",{ref:ap,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:a=>{"Escape"===a.key&&y()},children:(0,b.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,b.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,b.jsx)("img",{src:q(ar,64,U),alt:I,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,b.jsx)("input",{type:"color",value:U,onChange:a=>V(a.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:a}),(0,b.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:I||"Configure Agent"})]})]}),(0,b.jsx)("button",{onClick:y,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,b.jsx)(d.X,{size:20})})]}),(0,b.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,b.jsx)("button",{type:"button",onClick:au,className:"form"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,b.jsx)("button",{type:"button",onClick:()=>{ab(u({name:I,...aq&&K?{roleId:K}:{},role:M,provider:O,model:Q,identity:S,color:U,skills:t(W),skillBindings:am},z?Array.from(Y):void 0)),ad(null),_("json")},className:"json"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===$&&(0,b.jsxs)("button",{type:"button",onClick:av,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[ae?(0,b.jsx)(n.Check,{size:14,className:"text-emerald-500"}):(0,b.jsx)(m.Copy,{size:14}),ae?"Copied":"Copy"]})]}),"form"===$?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(e.User,{size:16})," Name"]}),(0,b.jsx)("input",{type:"text",value:I,onChange:a=>J(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),aq?(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:G}),(0,b.jsx)(p.default,{options:F??[],value:K||null,onChange:a=>{if(!aq)return;let b={name:I,roleId:a,role:M,provider:O,model:Q,identity:S,color:U,skills:t(W),skillBindings:am},c=H?.(a,b);c?as({...c,roleId:a},z?Array.from(Y):void 0):L(a)},placeholder:"Select a role preset..."})]}):(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Role"}),(0,b.jsx)("input",{type:"text",value:M,onChange:a=>N(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Senior Backend Engineer"})]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(g.Box,{size:16})," Provider"]}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("select",{value:O,onChange:a=>P(a.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,b.jsx)("option",{value:"claude",children:"Claude"}),(0,b.jsx)("option",{value:"ollama",children:"Ollama"}),(0,b.jsx)("option",{value:"gemini",children:"Gemini"}),(0,b.jsx)("option",{value:"codex",children:"Codex"}),(0,b.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,b.jsx)(l.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(f.Cpu,{size:16})," Model"]}),(0,b.jsx)("input",{type:"text",value:Q,onChange:a=>R(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(h.BookOpen,{size:16})," Identity"]}),(0,b.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,b.jsx)(o.default,{content:S,onChange:a=>T(a),placeholder:"You are a ..."})}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(i.Sparkles,{size:16})," Portable Knowledge"]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,b.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),ag.length>0?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"relative",ref:ao,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>al(a=>!a),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,b.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,b.jsx)(l.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ak?"rotate-180":""}`})]}),ak&&(0,b.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,b.jsx)("input",{type:"text",value:ai,onChange:a=>aj(a.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,b.jsx)("div",{className:"max-h-64 overflow-y-auto",children:aw.length>0?aw.map(a=>{let c=`${a.repo}::${a.skillId}`,d=ax.has(c);return(0,b.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${d?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void(an(a=>a.some(a=>a.repo===b&&a.skillId===c)?a.filter(a=>a.repo!==b||a.skillId!==c):[...a,{repo:b,skillId:c}]),aj(""))},children:(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("div",{className:"font-medium",children:a.name||a.skillId}),(0,b.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:a.repo})]}),d&&(0,b.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},c)}):(0,b.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[am.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[a.skillId,(0,b.jsx)("button",{type:"button",onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void an(a=>a.filter(a=>a.repo!==b||a.skillId!==c))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${a.skillId}`,children:(0,b.jsx)(d.X,{size:12})})]},`${a.repo}::${a.skillId}`)),0===am.length&&(0,b.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,b.jsx)("textarea",{value:W,onChange:a=>X(a.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,b.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,b.jsx)("code",{children:"|"})," to add an optional condition."]})]}),z&&z.length>0&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Assign To Projects"]}),(0,b.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:z.map(a=>{let c=Y.has(a.id);return(0,b.jsxs)("button",{type:"button",className:c?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>Z(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,b.jsx)("div",{className:c?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:c&&(0,b.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,b.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"text-xs font-medium text-left",children:a.label??a.name})]},a.id)})})]}),C&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Project Memberships"]}),C.current.length>0?(0,b.jsx)("div",{className:"flex flex-col gap-1",children:C.current.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,b.jsx)(k.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,b.jsx)("span",{className:"truncate flex-1",children:a.name}),E&&!a.is_default&&(0,b.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>E(a.id),title:"Remove from project",children:(0,b.jsx)(d.X,{size:12})})]},a.id))}):(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),C.available.length>0&&D&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1",children:C.available.map(a=>(0,b.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>D(a.id),children:[(0,b.jsx)(j.Plus,{size:10}),a.name]},a.id))})]})]}):(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,b.jsx)("button",{type:"button",onClick:au,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,b.jsx)("textarea",{value:aa,onChange:a=>{ab(a.target.value),ac&&ad(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),ac&&(0,b.jsx)("p",{className:"text-xs text-red-500",children:ac})]}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,b.jsx)("button",{onClick:y,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,b.jsx)("button",{onClick:()=>{let a=I.trim(),b=K,c=M.trim(),d=O,e=Q.trim(),f=S.trim(),g=U,h=t(W),i=am,j=z?Array.from(Y):void 0;if("json"===$)try{let k=at(aa);a=k.data.name.trim(),b=k.data.roleId??"",c=(k.data.role??"").trim(),d=k.data.provider,e=k.data.model.trim(),f=k.data.identity.trim(),g=k.data.color??"#6B7280",h=k.data.skills??[],i=k.data.skillBindings??[],j=z?k.projectIds??[]:void 0}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.");return}a&&e&&x({name:a,...aq&&b?{roleId:b}:{},role:c||void 0,provider:d,model:e,identity:f,color:g,skills:h,skillBindings:i},j)},disabled:"form"===$&&(!I.trim()||!Q.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:w})]})]})]})})},"agentAvatarUrl",0,q])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=apps_local_03z24q2._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[820859,a=>{"use strict";let b=(0,a.i(831709).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);a.s(["Clock",0,b],820859)},864061,a=>{"use strict";let b=(0,a.i(831709).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",0,b],864061)},475632,a=>{"use strict";a.s(["stripMarkers",0,function(a){return a.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}])},520612,a=>{"use strict";var b=a.i(572131),c=a.i(50944);function d(a){return"string"!=typeof a?null:a.trim()||null}function e(a,b){return(a.get(b)?.trim()??"")||null}a.s(["useUrlSelection",0,function(){let a=(0,c.useRouter)(),f=(0,c.usePathname)(),g=(0,c.useSearchParams)(),h=(0,b.useCallback)(a=>e(g,a),[g]),i=(0,b.useCallback)((a,b)=>(function(a,b,c){let f=function(a,b){let c={...b},f=a=>Object.prototype.hasOwnProperty.call(b,a);if(f("issue")&&!f("run")){let f=e(a,"issue");d(b.issue)!==f&&(c.run=null)}if(f("job")&&!f("run")){let f=e(a,"job");d(b.job)!==f&&(c.run=null)}if(f("open")&&!f("message")){let f=e(a,"open");d(b.open)!==f&&(c.message=null)}return c}(b,c),g=new URLSearchParams(b.toString());for(let[a,b]of Object.entries(f)){let c=d(b);c?g.set(a,c):g.delete(a)}let h=g.toString();return h?`${a}?${h}`:a})(b??f,g,a),[f,g]),j=(0,b.useCallback)((b,c)=>{a.push(i(b,c))},[i,a]),k=(0,b.useCallback)((b,c)=>{a.replace(i(b,c))},[i,a]);return{pathname:f,searchParams:g,getSelection:h,buildHref:i,pushSelection:j,replaceSelection:k}}])},155829,496368,785061,a=>{"use strict";var b=a.i(572131);function c(a){return`threadId=${encodeURIComponent(a)}`}function d(a){return`workspaceId=${encodeURIComponent(a)}`}a.s(["useGroupChat",0,function(a){let[e,f]=(0,b.useState)([]),[g,h]=(0,b.useState)([]),[i,j]=(0,b.useState)([]),k=(0,b.useRef)(a),l=(0,b.useRef)(a);k.current=a,l.current!==a&&(l.current=a,f([]),h([]),j([]));let m=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);try{let[a,c]=await Promise.all([fetch(`/api/history?${e}`),fetch(`/api/logs?${d(b)}`)]);if(k.current!==b)return;a.ok&&f(await a.json()),c.ok&&h(await c.json())}catch{}},[]),n=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);await Promise.all([fetch(`/api/history?${e}`,{method:"DELETE"}),fetch(`/api/logs?${d(b)}`,{method:"DELETE"})]),k.current===b&&(f([]),h([]))},[]),o=(0,b.useCallback)(async(a,b=10,c,d,e,g,h,i,l,m)=>{let n=c?.trim()||k.current?.trim();if(!n)return;let o=Date.now(),p=crypto.randomUUID(),q={id:p,role:"user",participantId:null,content:a,timestamp:o,rootMessageId:d||null,parentMessageId:d||null,depth:+!!d,...g&&g.length>0?{attachments:g}:{}};f(a=>[...a,q]);try{let c=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:n,prompt:a,promptPrefix:l||void 0,maxRounds:b,userMessageId:p,rootMessageId:d||void 0,attachmentIds:e?.length?e:void 0,activeParticipantIds:Array.isArray(h)?h:void 0,projectSlug:i?.trim()||void 0,routing:m})}),g=await c.json().catch(a=>(console.warn("[useGroupChat] failed to parse run response:",a),null));c.ok&&g?.chatRunId?j(a=>[{chatRunId:g.chatRunId,threadId:n,rootMessageId:d||p,status:"queued",optimistic:!0,enqueuedAt:Date.now()},...a.filter(a=>a.chatRunId!==g.chatRunId)]):c.ok||(console.error(`[useGroupChat] POST /api/chat failed (${c.status}):`,g?.error||c.statusText),f(a=>a.map(a=>a.id===p?{...a,sendFailed:!0}:a)))}catch(a){console.error("[useGroupChat] network error sending message:",a),f(a=>a.map(a=>a.id===p?{...a,sendFailed:!0}:a))}return p},[]),p=(0,b.useCallback)(async()=>{let a=k.current?.trim();if(a)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]),q=(0,b.useCallback)(async a=>{let b=k.current?.trim();if(b)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(b)}&threadId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]);return{messages:e,setMessages:f,logs:g,sendMessage:o,loadHistory:m,clearHistory:n,clearLogs:(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();b?(await fetch(`/api/logs?${d(b)}`,{method:"DELETE"}).catch(a=>console.warn("[useGroupChat] delete logs failed:",a)),k.current===b&&h([])):h([])},[]),chatRuns:i,setChatRuns:j,stop:p,stopThread:q}}],155829);let e=new Set(["spawning","running"]);function f(a){if("string"==typeof a)return a.trim()||void 0}a.s(["useProcessPolling",0,function(a,c){let d=c?.intervalMs??1500,f=c?.idleIntervalMs??1e4,[g,h]=(0,b.useState)(new Set),[i,j]=(0,b.useState)([]),[k,l]=(0,b.useState)({}),[m,n]=(0,b.useState)([]),o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(c?.messages??[]);p.current=c?.messages??[];let q=(0,b.useRef)(c?.setMessages);q.current=c?.setMessages;let r=(0,b.useRef)(0);(0,b.useEffect)(()=>{let a=c?.messages??[];if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>r.current&&(r.current=b)}},[c?.messages]);let s=(0,b.useCallback)(async()=>{let a=o.current;if(!a){h(new Set),j([]),l({}),n([]);return}let b=null;if(a.threadId?b=`/api/processes?threadId=${encodeURIComponent(a.threadId)}`:a.workspaceId&&(b=`/api/processes?workspaceId=${encodeURIComponent(a.workspaceId)}`),!b){h(new Set),j([]),l({}),n([]);return}try{let d=a.workspaceId||a.threadId,f=d?`/api/history?threadId=${encodeURIComponent(d)}&since=${r.current}`:null,g=d?`/api/chat-runs?threadId=${encodeURIComponent(d)}&limit=20`:null,i=[fetch(b)];f&&i.push(fetch(f)),g&&i.push(fetch(g));let[k,m,s]=await Promise.all(i),t=o.current;if(t?.threadId!==a.threadId||t?.workspaceId!==a.workspaceId)return;if(k.ok){let a=await k.json();j(a);let b=new Set(a.filter(a=>e.has(a.state)).map(a=>a.agentId));h(b);let c={};for(let b of a){if(!e.has(b.state))continue;let a=p.current.find(a=>a.id===b.sinceMessageId),d=a?.rootMessageId??b.sinceMessageId;c[b.agentId]={content:"",rootMessageId:d}}l(c)}if(s?.ok){var c;let a=(c=await s.json(),Array.isArray(c)?c.map(a=>{if(!a||"object"!=typeof a)return null;let b="string"==typeof a.chatRunId?a.chatRunId:"string"==typeof a.id?a.id:null,c="string"==typeof a.threadId?a.threadId:null,d="string"==typeof a.status?a.status:null,e="string"==typeof a.rootMessageId?a.rootMessageId:(a.rootMessageId,null);return b&&c&&d&&("queued"===d||"running"===d||"awaiting_user"===d||"blocked"===d||"completed"===d||"failed"===d||"cancelled"===d)?{chatRunId:b,threadId:c,rootMessageId:e,status:d,optimistic:!1}:null}).filter(a=>!!a):[]);n(a)}if(m?.ok&&q.current){let a=await m.json();if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>r.current&&(r.current=b),q.current(b=>{let c=new Set(b.map(a=>a.id)),d=a.filter(a=>!c.has(a.id)),e=b.map(b=>a.find(a=>a.id===b.id)??b);return 0===d.length?e:[...e,...d].sort((a,b)=>a.timestamp-b.timestamp)})}}}catch{}},[]),t=a?.threadId||a?.workspaceId||null,u=m.some(a=>"queued"===a.status||"running"===a.status),v=i.some(a=>e.has(a.state)),w=u||v?d:f;return(0,b.useEffect)(()=>{if(!t){h(new Set),j([]),l({}),n([]);return}s();let a=setInterval(s,w);return()=>clearInterval(a)},[t,w,s]),{activeAgents:g,processes:i,streaming:k,chatRuns:m,poll:s}}],496368),a.s(["extractComposerRouting",0,function(a,b){let c=new Set,d=new Set;!function a(b,c){if(b)for(let d of b)c(d),a(d.content,c)}(a.content,a=>{if("participantMention"!==a.type)return;let b=a.attrs??{},e="string"==typeof b.id?b.id.trim():"",f="string"==typeof b.kind?b.kind:"agent";e&&"agent"===f&&(c.add(e),"parallel"===b.mode&&d.add(e))});let e=f(b);return{...e?{pinnedParticipantId:e}:{},mentionedParticipantIds:Array.from(c),parallelParticipantIds:Array.from(d)}},"orderParticipantIds",0,function(a,b){let 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}(a),d=f(b);return d&&c.includes(d)?[d,...c.filter(a=>a!==d)]:c}],785061)},870630,a=>{"use strict";let b="agx-chat:threads";function c(){let a=globalThis.localStorage;if(!a)throw Error("LocalThreadAdapter requires a browser-like environment with `localStorage`.");return a}function d(){let a=c().getItem(b);if(!a)return{threads:{}};try{let b=JSON.parse(a);if(b&&"object"==typeof b&&b.threads&&"object"==typeof b.threads)return{threads:Object.fromEntries(Object.entries(b.threads).map(([a,b])=>{var c,d;return[a,(c=a,d=b,{id:c,title:d?.title,messages:Array.isArray(d?.messages)?[...d.messages]:[],createdAt:"number"==typeof d?.createdAt?d.createdAt:Date.now(),updatedAt:"number"==typeof d?.updatedAt?d.updatedAt:Date.now(),metadata:d?.metadata,status:d?.status,outcomeNote:d?.outcomeNote,projectId:"string"==typeof d?.projectId?d.projectId:"string"==typeof d?.teamId?d.teamId:d?.projectId===null||d?.teamId===null?null:void 0})]}))}}catch{}return{threads:{}}}function e(a){c().setItem(b,JSON.stringify(a))}function f(a){return{...a,messages:a.messages.map(a=>({...a})),metadata:a.metadata?{...a.metadata}:void 0}}let g=new class{async saveThread(a){let b=Date.now(),c=d(),g=c.threads[a.id],h=g?.createdAt??a.createdAt??b,i=a.updatedAt??b,j={id:a.id,title:a.title,messages:a.messages.map(a=>({...a})),metadata:a.metadata,createdAt:h,updatedAt:i,status:a.status,outcomeNote:a.outcomeNote,projectId:a.projectId??a.teamId};return c.threads[a.id]=j,e(c),f(j)}async loadThread(a){let b=d().threads[a];return b?f(b):null}async listThreads(a){let b=Object.values(d().threads),c=a?.order??"desc",e=[...b].sort((a,b)=>"asc"===c?a.updatedAt-b.updatedAt:b.updatedAt-a.updatedAt),g=Math.max(0,a?.offset??0),h=a?.limit,i="number"==typeof h&&h>=0?e.slice(g,g+h):e.slice(g);return{total:b.length,threads:i.map(f)}}async deleteThread(a){let b=d();b.threads[a]&&(delete b.threads[a],e(b))}};a.s(["threadService",0,{listThreads:async()=>[...(await g.listThreads({order:"desc"})).threads.filter(a=>!0!==a.metadata?.archived)].sort((a,b)=>b.updatedAt-a.updatedAt),async createThread(a){let b="string"==typeof a?.id?a.id.trim():"";if(b){let c=await g.loadThread(b);if(c){let b={...c.metadata??{},...a?.metadata??{},archived:!1,archivedAt:null};return g.saveThread({id:c.id,title:a?.title??c.title,messages:a?.messages?.length?a.messages:c.messages,metadata:b,createdAt:c.createdAt})}}let c={id:b||("u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`thread-${Date.now()}-${Math.random().toString(16).slice(2)}`),messages:a?.messages?.length?a.messages:[],title:a?.title,metadata:a?.metadata};return g.saveThread(c)},async deleteThread(a){let b=a.trim();if(!b)return;let c=await g.loadThread(b);if(!c)return;let d={...c.metadata??{},archived:!0,archivedAt:Date.now()};await g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:d,createdAt:c.createdAt})},async renameThread(a,b){let c=a.trim(),d=b.trim();if(!c||!d)return null;let e=await g.loadThread(c);return e?(e.title?.trim()??"")===d?e:g.saveThread({id:e.id,title:d,messages:e.messages,metadata:e.metadata,createdAt:e.createdAt}):null},async updateThreadStatus(a,b){let c=await g.loadThread(a);return c?c.status===b?c:g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:c.metadata,createdAt:c.createdAt,status:b,outcomeNote:c.outcomeNote}):null},async updateThreadOutcomeNote(a,b){let c=await g.loadThread(a);return c?c.outcomeNote===b?c:g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:c.metadata,createdAt:c.createdAt,status:c.status,outcomeNote:b}):null},async updateMessageThreadStatus(a,b,c){let d=await g.loadThread(a);if(!d)return null;let e=d.messages.map(a=>a.id===b?{...a,threadStatus:c}:a);return g.saveThread({id:d.id,title:d.title,messages:e,metadata:d.metadata,createdAt:d.createdAt,status:d.status,outcomeNote:d.outcomeNote})},async updateMessageOutcomeNote(a,b,c){let d=await g.loadThread(a);if(!d)return null;let e=d.messages.map(a=>a.id===b?{...a,outcomeNote:c}:a);return g.saveThread({id:d.id,title:d.title,messages:e,metadata:d.metadata,createdAt:d.createdAt,status:d.status,outcomeNote:d.outcomeNote})},async saveThreadMessages(a,b){let c=await g.loadThread(a);if(!c)return null;let d=c.title?.trim()||function(a){let b=a.find(a=>"user"===a.role)?.content?.trim();if(!b)return;let c=b.replace(/\s+/g," ");return c.length>60?`${c.slice(0,60).trim()}…`:c}(b);return function(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c+=1){let d=a[c],e=b[c];if(d.id!==e.id||d.role!==e.role||d.participantId!==e.participantId||d.content!==e.content||d.timestamp!==e.timestamp)return!1}return!0}(c.messages,b)&&(c.title?.trim()||void 0)===d?c:g.saveThread({id:c.id,title:d,messages:b,metadata:c.metadata,createdAt:c.createdAt})}}],870630)},697183,a=>{"use strict";let b=(0,a.i(831709).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);a.s(["Trash2",0,b],697183)},736868,a=>{"use strict";let b=(0,a.i(831709).default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);a.s(["FolderGit2",0,b],736868)},552605,a=>{"use strict";let b=(0,a.i(831709).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],552605)},693896,a=>{"use strict";let b=(0,a.i(831709).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],693896)},999076,a=>{"use strict";let b=(0,a.i(831709).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,b],999076)}];
|
|
1
|
+
module.exports=[820859,a=>{"use strict";let b=(0,a.i(831709).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);a.s(["Clock",0,b],820859)},864061,a=>{"use strict";let b=(0,a.i(831709).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",0,b],864061)},475632,a=>{"use strict";a.s(["stripMarkers",0,function(a){return a.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}])},520612,a=>{"use strict";var b=a.i(572131),c=a.i(50944);function d(a){return"string"!=typeof a?null:a.trim()||null}function e(a,b){return(a.get(b)?.trim()??"")||null}a.s(["useUrlSelection",0,function(){let a=(0,c.useRouter)(),f=(0,c.usePathname)(),g=(0,c.useSearchParams)(),h=(0,b.useCallback)(a=>e(g,a),[g]),i=(0,b.useCallback)((a,b)=>(function(a,b,c){let f=function(a,b){let c={...b},f=a=>Object.prototype.hasOwnProperty.call(b,a);if(f("issue")&&!f("run")){let f=e(a,"issue");d(b.issue)!==f&&(c.run=null)}if(f("job")&&!f("run")){let f=e(a,"job");d(b.job)!==f&&(c.run=null)}if(f("open")&&!f("message")){let f=e(a,"open");d(b.open)!==f&&(c.message=null)}return c}(b,c),g=new URLSearchParams(b.toString());for(let[a,b]of Object.entries(f)){let c=d(b);c?g.set(a,c):g.delete(a)}let h=g.toString();return h?`${a}?${h}`:a})(b??f,g,a),[f,g]),j=(0,b.useCallback)((b,c)=>{a.push(i(b,c))},[i,a]),k=(0,b.useCallback)((b,c)=>{a.replace(i(b,c))},[i,a]);return{pathname:f,searchParams:g,getSelection:h,buildHref:i,pushSelection:j,replaceSelection:k}}])},155829,496368,785061,a=>{"use strict";var b=a.i(572131);function c(a){return`threadId=${encodeURIComponent(a)}`}function d(a){return`workspaceId=${encodeURIComponent(a)}`}a.s(["useGroupChat",0,function(a){let[e,f]=(0,b.useState)([]),[g,h]=(0,b.useState)([]),[i,j]=(0,b.useState)([]),k=(0,b.useRef)(a),l=(0,b.useRef)(a);k.current=a,l.current!==a&&(l.current=a,f([]),h([]),j([]));let m=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);try{let[a,c]=await Promise.all([fetch(`/api/history?${e}`),fetch(`/api/logs?${d(b)}`)]);if(k.current!==b)return;a.ok&&f(await a.json()),c.ok&&h(await c.json())}catch{}},[]),n=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);await Promise.all([fetch(`/api/history?${e}`,{method:"DELETE"}),fetch(`/api/logs?${d(b)}`,{method:"DELETE"})]),k.current===b&&(f([]),h([]))},[]),o=(0,b.useCallback)(async(a,b=10,c,d,e,g,h,i,l,m)=>{let n=c?.trim()||k.current?.trim();if(!n)return;let o=Date.now(),p=crypto.randomUUID(),q={id:p,role:"user",participantId:null,content:a,timestamp:o,rootMessageId:d||null,parentMessageId:d||null,depth:+!!d,...g&&g.length>0?{attachments:g}:{}};f(a=>[...a,q]);try{let c=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:n,prompt:a,promptPrefix:l||void 0,maxRounds:b,userMessageId:p,rootMessageId:d||void 0,attachmentIds:e?.length?e:void 0,activeParticipantIds:Array.isArray(h)?h:void 0,projectSlug:i?.trim()||void 0,routing:m})}),g=await c.json().catch(a=>(console.warn("[useGroupChat] failed to parse run response:",a),null));c.ok&&g?.chatRunId?j(a=>[{chatRunId:g.chatRunId,threadId:n,rootMessageId:d||p,status:"queued",optimistic:!0,enqueuedAt:Date.now()},...a.filter(a=>a.chatRunId!==g.chatRunId)]):c.ok||(console.error(`[useGroupChat] POST /api/chat failed (${c.status}):`,g?.error||c.statusText),f(a=>a.map(a=>a.id===p?{...a,sendFailed:!0}:a)))}catch(a){console.error("[useGroupChat] network error sending message:",a),f(a=>a.map(a=>a.id===p?{...a,sendFailed:!0}:a))}return p},[]),p=(0,b.useCallback)(async()=>{let a=k.current?.trim();if(a)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]),q=(0,b.useCallback)(async a=>{let b=k.current?.trim();if(b)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(b)}&threadId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]);return{messages:e,setMessages:f,logs:g,sendMessage:o,loadHistory:m,clearHistory:n,clearLogs:(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();b?(await fetch(`/api/logs?${d(b)}`,{method:"DELETE"}).catch(a=>console.warn("[useGroupChat] delete logs failed:",a)),k.current===b&&h([])):h([])},[]),chatRuns:i,setChatRuns:j,stop:p,stopThread:q}}],155829);let e=new Set(["spawning","running"]);function f(a){if("string"==typeof a)return a.trim()||void 0}a.s(["useProcessPolling",0,function(a,c){let d=c?.intervalMs??1500,f=c?.idleIntervalMs??1e4,[g,h]=(0,b.useState)(new Set),[i,j]=(0,b.useState)([]),[k,l]=(0,b.useState)({}),[m,n]=(0,b.useState)([]),o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(c?.messages??[]);p.current=c?.messages??[];let q=(0,b.useRef)(c?.setMessages);q.current=c?.setMessages;let r=(0,b.useRef)(0);(0,b.useEffect)(()=>{let a=c?.messages??[];if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>r.current&&(r.current=b)}},[c?.messages]);let s=(0,b.useCallback)(async()=>{let a=o.current;if(!a){h(new Set),j([]),l({}),n([]);return}let b=null;if(a.threadId?b=`/api/processes?threadId=${encodeURIComponent(a.threadId)}`:a.workspaceId&&(b=`/api/processes?workspaceId=${encodeURIComponent(a.workspaceId)}`),!b){h(new Set),j([]),l({}),n([]);return}try{let d=a.workspaceId||a.threadId,f=d?`/api/history?threadId=${encodeURIComponent(d)}&since=${r.current}`:null,g=d?`/api/chat-runs?threadId=${encodeURIComponent(d)}&limit=20`:null,i=[fetch(b)];f&&i.push(fetch(f)),g&&i.push(fetch(g));let[k,m,s]=await Promise.all(i),t=o.current;if(t?.threadId!==a.threadId||t?.workspaceId!==a.workspaceId)return;if(k.ok){let a=await k.json();j(a);let b=new Set(a.filter(a=>e.has(a.state)).map(a=>a.agentId));h(b);let c={};for(let b of a){if(!e.has(b.state))continue;let a=p.current.find(a=>a.id===b.sinceMessageId),d=a?.rootMessageId??b.sinceMessageId;c[b.agentId]={content:"",rootMessageId:d}}l(c)}if(s?.ok){var c;let a=(c=await s.json(),Array.isArray(c)?c.map(a=>{if(!a||"object"!=typeof a)return null;let b="string"==typeof a.chatRunId?a.chatRunId:"string"==typeof a.id?a.id:null,c="string"==typeof a.threadId?a.threadId:null,d="string"==typeof a.status?a.status:null,e="string"==typeof a.rootMessageId?a.rootMessageId:(a.rootMessageId,null);return b&&c&&d&&("queued"===d||"running"===d||"awaiting_user"===d||"blocked"===d||"completed"===d||"failed"===d||"cancelled"===d)?{chatRunId:b,threadId:c,rootMessageId:e,status:d,optimistic:!1}:null}).filter(a=>!!a):[]);n(a)}if(m?.ok&&q.current){let a=await m.json();if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>r.current&&(r.current=b),q.current(b=>{let c=new Set(b.map(a=>a.id)),d=a.filter(a=>!c.has(a.id)),e=b.map(b=>a.find(a=>a.id===b.id)??b);return 0===d.length?e:[...e,...d].sort((a,b)=>a.timestamp-b.timestamp)})}}}catch{}},[]),t=a?.threadId||a?.workspaceId||null,u=m.some(a=>"queued"===a.status||"running"===a.status),v=i.some(a=>e.has(a.state)),w=u||v?d:f;return(0,b.useEffect)(()=>{if(!t){h(new Set),j([]),l({}),n([]);return}s();let a=setInterval(s,w);return()=>clearInterval(a)},[t,w,s]),{activeAgents:g,processes:i,streaming:k,chatRuns:m,poll:s}}],496368),a.s(["extractComposerRouting",0,function(a,b){let c=new Set,d=new Set;!function a(b,c){if(b)for(let d of b)c(d),a(d.content,c)}(a.content,a=>{if("participantMention"!==a.type)return;let b=a.attrs??{},e="string"==typeof b.id?b.id.trim():"",f="string"==typeof b.kind?b.kind:"agent";e&&"agent"===f&&(c.add(e),"parallel"===b.mode&&d.add(e))});let e=f(b);return{...e?{pinnedParticipantId:e}:{},mentionedParticipantIds:Array.from(c),parallelParticipantIds:Array.from(d)}},"orderParticipantIds",0,function(a,b){let 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}(a),d=f(b);return d&&c.includes(d)?[d,...c.filter(a=>a!==d)]:c}],785061)},870630,a=>{"use strict";let b="agx-chat:threads";function c(){let a=globalThis.localStorage;if(!a)throw Error("LocalThreadAdapter requires a browser-like environment with `localStorage`.");return a}function d(){let a=c().getItem(b);if(!a)return{threads:{}};try{let b=JSON.parse(a);if(b&&"object"==typeof b&&b.threads&&"object"==typeof b.threads)return{threads:Object.fromEntries(Object.entries(b.threads).map(([a,b])=>{var c,d;return[a,(c=a,d=b,{id:c,title:d?.title,messages:Array.isArray(d?.messages)?[...d.messages]:[],createdAt:"number"==typeof d?.createdAt?d.createdAt:Date.now(),updatedAt:"number"==typeof d?.updatedAt?d.updatedAt:Date.now(),metadata:d?.metadata,status:d?.status,outcomeNote:d?.outcomeNote,projectId:"string"==typeof d?.projectId?d.projectId:"string"==typeof d?.teamId?d.teamId:d?.projectId===null||d?.teamId===null?null:void 0})]}))}}catch{}return{threads:{}}}function e(a){c().setItem(b,JSON.stringify(a))}function f(a){return{...a,messages:a.messages.map(a=>({...a})),metadata:a.metadata?{...a.metadata}:void 0}}let g=new class{async saveThread(a){let b=Date.now(),c=d(),g=c.threads[a.id],h=g?.createdAt??a.createdAt??b,i=a.updatedAt??b,j={id:a.id,title:a.title,messages:a.messages.map(a=>({...a})),metadata:a.metadata,createdAt:h,updatedAt:i,status:a.status,outcomeNote:a.outcomeNote,projectId:a.projectId??a.teamId};return c.threads[a.id]=j,e(c),f(j)}async loadThread(a){let b=d().threads[a];return b?f(b):null}async listThreads(a){let b=Object.values(d().threads),c=a?.order??"desc",e=[...b].sort((a,b)=>"asc"===c?a.updatedAt-b.updatedAt:b.updatedAt-a.updatedAt),g=Math.max(0,a?.offset??0),h=a?.limit,i="number"==typeof h&&h>=0?e.slice(g,g+h):e.slice(g);return{total:b.length,threads:i.map(f)}}async deleteThread(a){let b=d();b.threads[a]&&(delete b.threads[a],e(b))}};a.s(["threadService",0,{listThreads:async()=>[...(await g.listThreads({order:"desc"})).threads.filter(a=>!0!==a.metadata?.archived)].sort((a,b)=>b.updatedAt-a.updatedAt),async createThread(a){let b="string"==typeof a?.id?a.id.trim():"";if(b){let c=await g.loadThread(b);if(c){let b={...c.metadata??{},...a?.metadata??{},archived:!1,archivedAt:null};return g.saveThread({id:c.id,title:a?.title??c.title,messages:a?.messages?.length?a.messages:c.messages,metadata:b,createdAt:c.createdAt})}}let c={id:b||("u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`thread-${Date.now()}-${Math.random().toString(16).slice(2)}`),messages:a?.messages?.length?a.messages:[],title:a?.title,metadata:a?.metadata};return g.saveThread(c)},async deleteThread(a){let b=a.trim();if(!b)return;let c=await g.loadThread(b);if(!c)return;let d={...c.metadata??{},archived:!0,archivedAt:Date.now()};await g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:d,createdAt:c.createdAt})},async renameThread(a,b){let c=a.trim(),d=b.trim();if(!c||!d)return null;let e=await g.loadThread(c);return e?(e.title?.trim()??"")===d?e:g.saveThread({id:e.id,title:d,messages:e.messages,metadata:e.metadata,createdAt:e.createdAt}):null},async updateThreadStatus(a,b){let c=await g.loadThread(a);return c?c.status===b?c:g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:c.metadata,createdAt:c.createdAt,status:b,outcomeNote:c.outcomeNote}):null},async updateThreadOutcomeNote(a,b){let c=await g.loadThread(a);return c?c.outcomeNote===b?c:g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:c.metadata,createdAt:c.createdAt,status:c.status,outcomeNote:b}):null},async updateMessageThreadStatus(a,b,c){let d=await g.loadThread(a);if(!d)return null;let e=d.messages.map(a=>a.id===b?{...a,threadStatus:c}:a);return g.saveThread({id:d.id,title:d.title,messages:e,metadata:d.metadata,createdAt:d.createdAt,status:d.status,outcomeNote:d.outcomeNote})},async updateMessageOutcomeNote(a,b,c){let d=await g.loadThread(a);if(!d)return null;let e=d.messages.map(a=>a.id===b?{...a,outcomeNote:c}:a);return g.saveThread({id:d.id,title:d.title,messages:e,metadata:d.metadata,createdAt:d.createdAt,status:d.status,outcomeNote:d.outcomeNote})},async saveThreadMessages(a,b){let c=await g.loadThread(a);if(!c)return null;let d=c.title?.trim()||function(a){let b=a.find(a=>"user"===a.role)?.content?.trim();if(!b)return;let c=b.replace(/\s+/g," ");return c.length>60?`${c.slice(0,60).trim()}…`:c}(b);return function(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c+=1){let d=a[c],e=b[c];if(d.id!==e.id||d.role!==e.role||d.participantId!==e.participantId||d.content!==e.content||d.timestamp!==e.timestamp)return!1}return!0}(c.messages,b)&&(c.title?.trim()||void 0)===d?c:g.saveThread({id:c.id,title:d,messages:b,metadata:c.metadata,createdAt:c.createdAt})}}],870630)},697183,a=>{"use strict";let b=(0,a.i(831709).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);a.s(["Trash2",0,b],697183)},736868,a=>{"use strict";let b=(0,a.i(831709).default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);a.s(["FolderGit2",0,b],736868)},552605,a=>{"use strict";let b=(0,a.i(831709).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],552605)},999076,a=>{"use strict";let b=(0,a.i(831709).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,b],999076)},693896,a=>{"use strict";let b=(0,a.i(831709).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],693896)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=apps_local_04dh2yh._.js.map
|
|
@@ -4,8 +4,8 @@ ${a.content}
|
|
|
4
4
|
|
|
5
5
|
${b.join("\n\n")}
|
|
6
6
|
|
|
7
|
-
`},"extractMentionedLinearIssueIds",0,function(a){let b=new Set;return!function a(b,c){if(b)for(let d of b)c(d),a(d.content,c)}(a.content,a=>{if("linearIssueMention"!==a.type)return;let c="string"==typeof a.attrs?.id?a.attrs.id.trim():"";c&&b.add(c)}),Array.from(b)}],200369);var u=a.i(583489);let v=u.Node.create({name:"participantMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({id:{default:null},name:{default:""},mode:{default:"sequential"},kind:{default:"agent"}}),parseHTML:()=>[{tag:"span[data-participant-mention]"}],renderHTML({node:a,HTMLAttributes:b}){let c="parallel"===a.attrs.mode;return["span",(0,u.mergeAttributes)(b,{"data-participant-mention":"","data-id":a.attrs.id,"data-mode":a.attrs.mode,class:c?"composer-pill composer-pill--participant-parallel":"composer-pill composer-pill--participant",contenteditable:"false"}),`${c?"@@":"@"}${a.attrs.name}`]}}),w=u.Node.create({name:"projectMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({id:{default:null},slug:{default:""},name:{default:""}}),parseHTML:()=>[{tag:"span[data-project-mention]"}],renderHTML:({node:a,HTMLAttributes:b})=>["span",(0,u.mergeAttributes)(b,{"data-project-mention":"","data-id":a.attrs.id,"data-slug":a.attrs.slug,class:"composer-pill composer-pill--project",contenteditable:"false"}),`@${a.attrs.name}`]}),x=u.Node.create({name:"fileMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({path:{default:""},relativePath:{default:""},trigger:{default:"@/"},attachMode:{default:void 0}}),parseHTML:()=>[{tag:"span[data-file-mention]"}],renderHTML({node:a,HTMLAttributes:b}){let c=a.attrs.relativePath||a.attrs.path;return["span",(0,u.mergeAttributes)(b,{"data-file-mention":"","data-path":a.attrs.path,class:"composer-pill composer-pill--file",contenteditable:"false"}),`@${c}`]}}),y=u.Node.create({name:"threadMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({threadId:{default:""},title:{default:""}}),parseHTML:()=>[{tag:"span[data-thread-mention]"}],renderHTML:({node:a,HTMLAttributes:b})=>["span",(0,u.mergeAttributes)(b,{"data-thread-mention":"","data-thread-id":a.attrs.threadId,class:"composer-pill composer-pill--thread",contenteditable:"false"}),`#${a.attrs.title}`]}),z=u.Node.create({name:"linearIssueMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({id:{default:null},identifier:{default:""},title:{default:""},status:{default:""},url:{default:null}}),parseHTML:()=>[{tag:"span[data-linear-issue-mention]"}],renderHTML:({node:a,HTMLAttributes:b})=>["span",(0,u.mergeAttributes)(b,{"data-linear-issue-mention":"","data-id":a.attrs.id,"data-identifier":a.attrs.identifier,class:"composer-pill composer-pill--linear-issue",contenteditable:"false"}),`@${a.attrs.identifier}`]});a.s(["FileMention",0,x,"LinearIssueMention",0,z,"ParticipantMention",0,v,"ProjectMention",0,w,"ThreadMention",0,y],340914);function A(a){switch(a.type.name){case"participantMention":{let b="parallel"===a.attrs.mode?"@@":"@";return`${b}${a.attrs.name}`}case"projectMention":{let b=String(a.attrs.slug??"").trim();if(b)return`@~project:${b}`;return a.attrs.name?`@${a.attrs.name}`:""}case"fileMention":{let b=a.attrs.relativePath||a.attrs.path;return`@${b}`}case"threadMention":{let b=(a.attrs.threadId??"").slice(0,8);return`@#${b}`}case"linearIssueMention":{let b=String(a.attrs.identifier??"").trim();return b?`@${b}`:""}default:return""}}a.s(["serializeToPlainText",0,function(a){if(!a.content)return"";let b=[];for(let c of a.content)c.type,b.push(function(a){if(!a.content)return"";let b="";for(let c of a.content)switch(c.type){case"text":b+=c.text??"";break;case"participantMention":{let a=c.attrs??{},d="parallel"===a.mode?"@@":"@";b+=`${d}${a.name}`;break}case"projectMention":{let a=c.attrs??{},d=String(a.slug??"").trim();d?b+=`@~project:${d}`:a.name&&(b+=`@${a.name}`);break}case"fileMention":{let a=c.attrs??{},d=a.relativePath||a.path;b+=`@${d}`;break}case"threadMention":{let a=((c.attrs??{}).threadId??"").slice(0,8);b+=`@#${a}`;break}case"linearIssueMention":{let a=String((c.attrs??{}).identifier??"").trim();a&&(b+=`@${a}`);break}default:"hardBreak"===c.type&&(b+="\n")}return b}(c));return b.join("\n")}],413169),a.s(["getCurrentParagraphText",0,function(a){let{state:b}=a,{$from:c}=b.selection,d=c.depth,e=-1;for(let a=d;a>=0;a--)if("paragraph"===c.node(a).type.name){e=a;break}if(-1===e)return null;let f=c.node(e),g=c.start(e),h=c.pos-g,i="",j=0,k=!1;return f.forEach((a,b)=>{let c=b+a.nodeSize;if(a.isText){let d=a.text??"";!k&&h>=b&&h<=c&&(j=i.length+(h-b),k=!0),i+=d}else if(a.isAtom){let d=A(a);!k&&h>=b&&h<=c&&(j=i.length+d.length,k=!0),i+=d}}),k||(j=i.length),{text:i,cursorPos:j,blockStart:g}},"plainTextRangeToPos",0,function(a,b,c,d){let{state:e}=a,f=e.doc.resolve(b),g=f.depth,h=null,i=b;for(let a=g;a>=0;a--){let b=f.node(a);if("paragraph"===b.type.name){h=b,i=f.start(a);break}}h||(h=e.doc.resolve(b).parent,i=b);let j=0,k=null,l=null;return(h.forEach((a,b)=>{let e=i+b,f=a.nodeSize;if(a.isText){let b=a.text??"",f=j+b.length;null===k&&c>=j&&c<=f&&(k=e+(c-j)),null===l&&d>=j&&d<=f&&(l=e+(d-j)),j=f}else if(a.isAtom){let b=A(a),g=j+b.length;null===k&&c>=j&&c<=g&&(k=e),null===l&&d>=j&&d<=g&&(l=e+f),j=g}}),null===k&&c>=j&&(k=i+h.content.size),null===l&&d>=j&&(l=i+h.content.size),null===k||null===l)?null:{from:k,to:l}}],719753);var B=a.i(187924),C=a.i(831709);let D=(0,C.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]),E=(0,C.default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);var F=a.i(985339);a.s(["MentionPopover",0,function({isOpen:a,suggestions:c,activeIndex:d,listboxId:e,optionIdPrefix:f,onSelect:g}){let h=(0,b.useRef)([]);if((0,b.useEffect)(()=>{a&&h.current[d]?.scrollIntoView({block:"nearest"})},[d,a]),!a||0===c.length)return null;let i=new Set;return(0,B.jsx)("div",{className:"absolute left-0 right-0 bottom-full mb-3 z-20",children:(0,B.jsx)("div",{role:"listbox",id:e,"aria-label":"Mention suggestions",className:"max-h-56 overflow-y-auto rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg",children:c.map((a,b)=>{let c=b===d,e="project-group"===a.kind?`project-group-${a.project.id}`:"project"===a.kind?`project-${a.project.id}`:"ticket"===a.kind?`ticket-${a.issue.id}`:a.participant.id,j=a.group,k=null;if(j&&!i.has(j)&&(i.add(j),k=(0,B.jsx)("div",{className:"px-3 py-1.5 text-[10px] font-bold uppercase tracking-wider text-[var(--muted-foreground)] bg-[var(--app-shell-subtle)] border-t border-[var(--border)] first:border-t-0",children:j})),"project-group"===a.kind)return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${e}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)(F.Users,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]","aria-hidden":!0}),(0,B.jsx)("span",{className:"font-medium",children:a.project.name}),(0,B.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[a.project.agents.length," agent",1!==a.project.agents.length?"s":""]})]})})]},e);if("project"===a.kind)return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${e}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)(D,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]","aria-hidden":!0}),(0,B.jsx)("span",{className:"font-medium",children:a.project.name}),(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:a.project.slug})]})})]},e);if("ticket"===a.kind)return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${e}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"flex items-start gap-2",children:[(0,B.jsx)(E,{className:"mt-0.5 h-3.5 w-3.5 text-[var(--muted-foreground)]","aria-hidden":!0}),(0,B.jsxs)("span",{className:"min-w-0",children:[(0,B.jsxs)("span",{className:"block font-medium",children:[a.issue.identifier,(0,B.jsx)("span",{className:"ml-2 text-xs text-[var(--muted-foreground)]",children:a.issue.status})]}),(0,B.jsx)("span",{className:"block truncate text-xs text-[var(--muted-foreground)]",children:a.issue.title})]})]})})]},e);let l=a.participant;return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${l.id}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}${j?" pl-6":""}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)("span",{className:"h-2.5 w-2.5 rounded-full",style:{backgroundColor:l.color},"aria-hidden":!0}),(0,B.jsx)("span",{className:"font-medium",children:l.name}),"all"===l.id?(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:"All participants"}):l.model&&(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:l.model})]})})]},e)})})})}],704238),a.s(["CommandPopover",0,function({isOpen:a,commands:c,activeIndex:d,listboxId:e,optionIdPrefix:f,onSelect:g}){let h=(0,b.useRef)([]);return((0,b.useEffect)(()=>{a&&h.current[d]?.scrollIntoView({block:"nearest"})},[d,a]),a&&0!==c.length)?(0,B.jsx)("div",{className:"absolute left-0 right-0 bottom-full mb-3 z-20",children:(0,B.jsx)("div",{role:"listbox",id:e,"aria-label":"Command suggestions",className:"max-h-56 overflow-y-auto rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg",children:c.map((a,b)=>{let c=b===d;return(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${a.name.slice(1)}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)("span",{className:"font-medium font-mono",children:a.name}),a.aliases&&a.aliases.length>0&&(0,B.jsxs)("span",{className:"text-xs text-[var(--app-shell-soft-text)] font-mono",children:["(",a.aliases.join(", "),")"]}),(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:a.description})]})},a.name)})})}):null}],589609);var G=a.i(349692),H=a.i(693896);let I=(0,C.default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);var J=a.i(157633),K=a.i(89613);function L({suggestion:a,isActive:b,optionId:c,onSelect:d,onAttachContents:e,itemRef:f}){let g="folder"===a.type,h="contents"===a.attachMode,i=function(a){if(!a)return null;let b=Math.floor((Date.now()-a)/864e5);return 0===b?"Today":1===b?"Yesterday":b<7?`${b}d ago`:b<30?`${Math.floor(b/7)}w ago`:b<365?`${Math.floor(b/30)}mo ago`:`${Math.floor(b/365)}y ago`}(a.modifiedAt),j=a.relativePath??a.path;return(0,B.jsxs)("div",{className:`flex items-center gap-2 px-3 py-2 text-sm transition-colors duration-200 ${b?"bg-[var(--primary-muted)]":"hover:bg-[var(--app-shell-subtle)]"}`,children:[(0,B.jsx)("span",{className:"shrink-0 text-[var(--muted-foreground)]","aria-hidden":!0,children:g?b?(0,B.jsx)(K.FolderOpen,{className:"h-4 w-4 text-amber-500"}):(0,B.jsx)(J.Folder,{className:"h-4 w-4 text-amber-400"}):(0,B.jsx)(I,{className:"h-4 w-4"})}),(0,B.jsxs)("button",{type:"button",role:"option",id:c,"aria-selected":b,ref:f,className:"min-w-0 flex-1 text-left",onMouseDown:a=>a.preventDefault(),onClick:()=>d(a),tabIndex:-1,children:[(0,B.jsxs)("span",{className:"flex items-baseline gap-2",children:[(0,B.jsx)("span",{className:"block truncate font-mono text-xs text-[var(--foreground)]",children:j}),i&&(0,B.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:i})]}),g&&a.manifest&&(0,B.jsxs)("span",{className:"block text-xs text-[var(--muted-foreground)]",children:[a.manifest.childCount," items ·"," ",a.manifest.sizeSummary,h?(0,B.jsx)("span",{className:"ml-1 font-medium text-[var(--primary)]",children:"full tree"}):(0,B.jsx)("span",{className:"ml-1 text-[var(--muted-foreground)]",children:"manifest"})]})]}),g&&!h&&(0,B.jsx)("button",{type:"button",className:"shrink-0 rounded px-1.5 py-0.5 text-xs text-[var(--muted-foreground)] hover:bg-[var(--muted)] hover:text-[var(--foreground)] transition-colors duration-200",title:"Attach full directory contents instead of manifest","aria-label":`Attach full contents of ${j}`,onMouseDown:a=>a.preventDefault(),onClick:()=>e(a),tabIndex:-1,children:"Attach contents"}),g&&h&&(0,B.jsx)("span",{className:"shrink-0 rounded bg-[var(--primary-muted)] px-1.5 py-0.5 text-xs font-medium text-[var(--primary)]",children:"full tree"})]})}var M=a.i(161958);a.s(["FileMentionPopover",0,function({isOpen:a,suggestions:c,activeIndex:d,isLoading:e,error:f,listboxId:g,optionIdPrefix:h,onSelect:i,onAttachContents:j}){let k=(0,b.useRef)([]),l=(0,b.useRef)(null),[m,n]=(0,b.useState)(!1);if((0,b.useEffect)(()=>{a&&k.current[d]?.scrollIntoView({block:"nearest"})},[d,a]),(0,b.useEffect)(()=>{a&&l.current&&n(l.current.getBoundingClientRect().top<280)},[a]),!a)return null;let o=c.length>0?`${h}-${d}`:void 0;return(0,B.jsx)("div",{ref:l,className:`${m?"absolute left-0 right-0 top-full mt-2 z-20":"absolute left-0 right-0 bottom-full mb-3 z-20"} ${M.default.popover}`,children:(0,B.jsxs)("div",{role:"listbox",id:g,"aria-label":"File suggestions","aria-activedescendant":o,className:"max-h-64 overflow-y-auto rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg",children:[f&&!e&&(0,B.jsxs)("div",{className:"flex items-center gap-2 px-3 py-3 text-sm text-red-500",role:"alert",children:[(0,B.jsx)(H.AlertCircle,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,B.jsx)("span",{children:f})]}),!f&&e&&0===c.length&&(0,B.jsxs)("div",{className:"flex items-center gap-2 px-3 py-3 text-sm text-[var(--muted-foreground)]","aria-live":"polite","aria-label":"Searching for files",children:[(0,B.jsx)(G.Loader2,{className:"h-3.5 w-3.5 animate-spin","aria-hidden":!0}),(0,B.jsx)("span",{children:"Searching…"})]}),!f&&!e&&0===c.length&&(0,B.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]","aria-live":"polite",children:"No results"}),!f&&e&&c.length>0&&(0,B.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1 text-xs text-[var(--muted-foreground)] border-b border-[var(--border)]",children:[(0,B.jsx)(G.Loader2,{className:"h-3 w-3 animate-spin","aria-hidden":!0}),(0,B.jsx)("span",{"aria-live":"polite","aria-label":"Updating results",children:"Updating…"})]}),c.length>0&&c.map((a,b)=>(0,B.jsx)(L,{suggestion:a,isActive:b===d,optionId:`${h}-${b}`,onSelect:i,onAttachContents:j,itemRef:a=>{k.current[b]=a}},a.path))]})})}],119616);var N=a.i(737313),O=a.i(820859);a.s(["ThreadMentionPopover",0,function({isOpen:a,suggestions:b,activeIndex:c,listboxId:d,optionIdPrefix:e,onSelect:f}){return a&&0!==b.length?(0,B.jsxs)("div",{className:"absolute bottom-full left-0 mb-2 w-80 bg-[var(--app-shell-elevated)] rounded-xl shadow-xl border border-[var(--app-shell-border)] overflow-hidden z-50 animate-in fade-in zoom-in-95 duration-100",role:"listbox",id:d,children:[(0,B.jsx)("div",{className:"px-3 py-2 bg-[var(--app-shell-subtle)] border-b border-[var(--app-shell-border)] text-[11px] font-bold text-[var(--app-shell-muted)] uppercase tracking-wider",children:"Reference Discussion"}),(0,B.jsx)("div",{className:"max-h-64 overflow-y-auto p-1",children:b.map((a,b)=>{let d=b===c;return(0,B.jsxs)("button",{role:"option",id:`${e}-${b}`,"aria-selected":d,onClick:()=>f(a),className:`w-full text-left px-3 py-2.5 rounded-lg flex items-start gap-3 transition-colors ${d?"bg-[var(--primary-muted)]":"hover:bg-[var(--app-shell-subtle)]"}`,children:[(0,B.jsx)("div",{className:`mt-0.5 p-1.5 rounded-md ${d?"bg-[var(--primary-muted)] text-[var(--primary)]":"bg-[var(--muted)] text-[var(--muted-foreground)]"}`,children:(0,B.jsx)(N.MessageSquare,{size:14,strokeWidth:2.5})}),(0,B.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,B.jsx)("div",{className:`text-sm font-semibold truncate ${d?"text-[var(--primary)]":"text-[var(--foreground)]"}`,children:a.title}),(0,B.jsxs)("div",{className:"flex items-center gap-2 mt-0.5",children:[(0,B.jsxs)("span",{className:`text-xs ${d?"text-[var(--primary)]":"text-[var(--muted-foreground)]"}`,children:[a.replies.length," replies"]}),(0,B.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"•"}),(0,B.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] flex items-center gap-1",children:[(0,B.jsx)(O.Clock,{size:10}),function(a){if(!a)return"";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`;let d=Math.floor(c/60);return d<24?`${d}h`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(a)}(a.lastActivityAt)]})]})]})]},a.rootMessageId)})})]}):null}],745975);var P=a.i(824179),Q=a.i(864061),R=a.i(552605);let S=(0,C.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);a.s(["AttachmentTray",0,function({attachments:a,onRemove:b,onRetry:c}){return 0===a.length?null:(0,B.jsx)("div",{className:"flex flex-wrap gap-2 px-1 pb-2",children:a.map(a=>{var d;let e=a.mimeType.startsWith("image/"),f="failed"===a.status,g="uploading"===a.status;return(0,B.jsxs)("div",{className:`relative group flex items-center gap-2 rounded-lg border px-2.5 py-1.5 text-xs transition-all ${f?"border-red-200 bg-red-50 text-red-700":"border-[var(--border)] bg-[var(--app-shell-subtle)] text-[var(--muted-foreground)]"}`,children:[e&&a.previewUrl?(0,B.jsx)("img",{src:a.previewUrl,alt:a.filename,className:"w-8 h-8 rounded object-cover shrink-0"}):(0,B.jsx)("div",{className:"w-8 h-8 rounded bg-[var(--muted)] flex items-center justify-center shrink-0",children:e?(0,B.jsx)(S,{className:"w-4 h-4 text-[var(--muted-foreground)]"}):(0,B.jsx)(R.FileText,{className:"w-4 h-4 text-[var(--muted-foreground)]"})}),(0,B.jsxs)("div",{className:"min-w-0 max-w-[120px]",children:[(0,B.jsx)("div",{className:"truncate font-medium",children:a.filename}),f&&a.error?(0,B.jsx)("div",{className:"truncate text-[10px] text-red-500",children:a.error}):(0,B.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:(d=a.size)<1024?`${d}B`:d<1048576?`${(d/1024).toFixed(0)}KB`:`${(d/1048576).toFixed(1)}MB`})]}),g&&(0,B.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-0.5 bg-[var(--muted)] rounded-b-lg overflow-hidden",children:(0,B.jsx)("div",{className:"h-full bg-blue-500 transition-all",style:{width:`${a.progress}%`}})}),(0,B.jsxs)("div",{className:"flex items-center gap-0.5 shrink-0",children:[f&&(0,B.jsx)("button",{type:"button",onClick:()=>c(a.id),className:"p-0.5 rounded hover:bg-red-100 transition-colors",title:"Retry upload",children:(0,B.jsx)(Q.RefreshCw,{className:"w-3 h-3"})}),(0,B.jsx)("button",{type:"button",onClick:()=>b(a.id),className:"p-0.5 rounded hover:bg-[var(--muted)] transition-colors",title:"Remove",children:(0,B.jsx)(P.X,{className:"w-3 h-3"})})]})]},a.id)})})}],669417),a.s(["ComposerDropZone",0,function({onDrop:a,children:c}){let[d,e]=(0,b.useState)(!1),f={current:0},g=(0,b.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),f.current++,a.dataTransfer.types.includes("Files")&&e(!0)},[]),h=(0,b.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),i=(0,b.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),f.current--,0===f.current&&e(!1)},[]),j=(0,b.useCallback)(b=>{b.preventDefault(),b.stopPropagation(),f.current=0,e(!1),b.dataTransfer.files.length>0&&a(b.dataTransfer.files)},[a]);return(0,B.jsxs)("div",{className:"relative",onDragEnter:g,onDragOver:h,onDragLeave:i,onDrop:j,children:[c,d&&(0,B.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center rounded-lg border-2 border-dashed border-blue-400 bg-blue-50/80 pointer-events-none",children:(0,B.jsx)("span",{className:"text-sm font-medium text-blue-600",children:"Drop files to attach"})})]})}],667494);let T=(0,C.default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);a.s(["Paperclip",0,T],514840)},915534,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Rocket",0,b],915534)},689882,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(313872),e=a.i(628977),f=a.i(609345),g=a.i(981717),h=a.i(29714),i=a.i(279384),j=a.i(950364),k=a.i(177521),l=a.i(924434),m=a.i(45813),n=a.i(95348),o=a.i(382460),p=a.i(200369),q=a.i(785061),r=a.i(677955),s=a.i(340914),t=a.i(413169),u=a.i(719753),v=a.i(704238),w=a.i(589609),x=a.i(119616),y=a.i(745975),z=a.i(669417),A=a.i(667494),B=a.i(514840),C=a.i(915534),D=a.i(736868),E=a.i(811760),F=a.i(824179);function G(a,b,c,d,e){if(!a)return;let f=(0,u.plainTextRangeToPos)(a,b,c,d);f&&a.chain().focus().deleteRange(f).insertContent(e).insertContent(" ").run()}a.s(["Composer",0,function({onSend:a,onStop:H,loading:I,activityStatus:J,sendInterruptsBusy:K=!1,participants:L,projects:M=[],projectGroups:N=[],projectSlug:O,messages:P=[],commands:Q,placeholder:R="Message — @name to mention, /search, /summarize",workspaceRoots:S=[],onConfigureRoots:T,pendingThreadInsert:U,onClearPendingThread:V,autoMode:W=!1,onAutoModeChange:X,repos:Y=[],selectedRepoIds:Z,onRepoSelectionChange:$,initialPinnedParticipantId:_}){let aa,ab,ac,ad=J??(I?"working":"ready"),ae="ready"!==ad,[af,ag]=(0,c.useState)(_??null),[ah,ai]=(0,c.useState)(new Set),aj=Z??ah,ak=(0,c.useRef)(aj);ak.current=aj;let al=(0,c.useCallback)(a=>{let b="function"==typeof a?a(ak.current):a;$?$(b):ai(b)},[$]),[am,an]=(0,c.useState)(!1),ao=(0,c.useRef)(null),ap=(0,c.useRef)(null),aq=(0,c.useRef)(!1),ar=(0,c.useCallback)(()=>{ap.current?.click()},[]),[as,at]=(0,c.useState)([]),{issues:au}=(0,n.useLinearIssueMentions)({projectSlug:O}),av=(0,g.useMentionAutocomplete)({participants:L,projectGroups:N,projects:M,linearIssues:au,maxSuggestions:8}),aw=(0,h.useCommandAutocomplete)({commands:Q,maxSuggestions:6}),ax=(0,j.useFileMention)({maxSuggestions:8}),ay=(0,k.useThreadMention)({messages:P,maxSuggestions:8}),az=(0,i.useAttachments)(),aA=(0,l.useComposerAttachments)(),aB=(0,m.useComposerHistory)();(0,c.useEffect)(()=>{af&&!L.some(a=>a.id===af)&&ag(null)},[L,af]),(0,c.useEffect)(()=>{if(!am)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&an(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[am]),(0,c.useEffect)(()=>{if(null!=Z||0===ah.size)return;let a=new Set(Y.map(a=>a.id)),b=new Set([...ah].filter(b=>a.has(b)));b.size<ah.size&&ai(b)},[Y,Z,ah]);let aC=(0,d.useEditor)({immediatelyRender:!1,extensions:[e.default.configure({heading:!1,bulletList:!1,orderedList:!1,listItem:!1,blockquote:!1,codeBlock:!1,code:!1,horizontalRule:!1,hardBreak:{keepMarks:!1}}),f.default.configure({placeholder:R}),s.ParticipantMention,s.ProjectMention,s.FileMention,s.ThreadMention,s.LinearIssueMention],editorProps:{attributes:{class:"composer-editor",role:"combobox","aria-autocomplete":"list"},handleDOMEvents:{compositionstart:()=>(aq.current=!0,av.startComposition(),!1),compositionend:(a,b)=>(aq.current=!1,setTimeout(()=>{if(!aC)return;let a=(0,u.getCurrentParagraphText)(aC);a&&av.endComposition(a.text,a.cursorPos)},0),!1)},handleKeyDown:(a,b)=>{if("Tab"===b.key||"Enter"===b.key&&!b.shiftKey){if(aw.isOpen&&aw.filteredCommands.length>0){b.preventDefault();let a=aw.filteredCommands[aw.activeIndex];return a&&aJ(a),!0}if(ax.isOpen&&ax.suggestions.length>0){b.preventDefault();let a=ax.suggestions[ax.activeIndex];return a&&("folder"===a.type?aH(a):aG(a)),!0}if(ay.isOpen&&ay.suggestions.length>0){b.preventDefault();let a=ay.suggestions[ay.activeIndex];return a&&aI(a),!0}if(av.isOpen&&av.filteredSuggestions.length>0){b.preventDefault();let a=av.filteredSuggestions[av.activeIndex];return a&&aF(a),!0}}let c={key:b.key,preventDefault:()=>b.preventDefault()};if(aw.isOpen&&aw.handleKeyDown(c)||ax.isOpen&&ax.handleKeyDown(c)||ay.isOpen&&ay.handleKeyDown(c)||av.handleKeyDown(c))return!0;if(("ArrowUp"===b.key||"ArrowDown"===b.key)&&!av.isOpen&&!aw.isOpen&&!ax.isOpen&&!ay.isOpen){let a=(0,t.serializeToPlainText)(aC.getJSON()).trim(),{state:c}=aC.view,d="ArrowUp"===b.key,e=d?c.selection.from<=1:c.selection.to>=c.doc.content.size-1,f=aB.navigate(d?"up":"down",a,e);if(null!==f)return b.preventDefault(),aC.commands.setContent(f),aC.commands.focus("end"),!0}return"Enter"===b.key&&!b.shiftKey&&(b.preventDefault(),aK(),!0)}},onUpdate:({editor:a})=>{if(aq.current)return;-1!==aB.historyIndex&&aB.resetNavigation();let b=(0,u.getCurrentParagraphText)(a);b&&(av.handleInput(b.text,b.cursorPos),aw.handleInput(b.text,b.cursorPos),ax.handleInput(b.text,b.cursorPos),ay.handleInput(b.text,b.cursorPos))},onBlur:()=>{av.close(),aw.close(),ax.close(),ay.close()}});(0,c.useEffect)(()=>{if(!U||!aC)return;let{title:a,threadId:b,messages:c}=U;aC.chain().focus().insertContent({type:"threadMention",attrs:{threadId:b,title:a}}).insertContent(" ").run();let d=c[0];if(d){let e={rootMessageId:b,title:a,rootMessage:d,replies:c.slice(1),participantIds:[...new Set(c.map(a=>a.participantId||"user"))],lastActivityAt:Math.max(...c.map(a=>a.timestamp))};ay.exportDiscussion(e).then(a=>at(b=>[...b,a])).catch(a=>console.error("Failed to export discussion for Add to chat:",a))}V?.()},[U]);let aD=(0,c.useCallback)(()=>{if(!aC)return;let a=(0,u.getCurrentParagraphText)(aC);a&&av.handleInput(a.text,a.cursorPos)},[aC,av]),aE=(0,c.useCallback)(a=>{let{clipboardData:b}=a,c=(0,r.getClipboardAttachmentFiles)(b);if(c.length>0){a.preventDefault(),a.stopPropagation(),az.stageFiles(c);return}let d="u">typeof navigator?navigator.clipboard:void 0;(0,r.clipboardMayContainImageAttachments)(b)&&"function"==typeof d?.read&&(a.preventDefault(),a.stopPropagation(),(0,r.readClipboardAttachmentFiles)(b,d).then(a=>{a.length>0&&az.stageFiles(a)}).catch(a=>{console.error("Failed to read pasted clipboard attachments:",a)}))},[az]),aF=(0,c.useCallback)(a=>{if(!aC)return;let b=av.selectSuggestion(a);if(!b)return;let c=(0,u.getCurrentParagraphText)(aC);if(!c)return;let d=b.text.startsWith("@@"),e="project-group"===a.kind?{type:"participantMention",attrs:{id:a.project.id,name:a.project.name,mode:d?"parallel":"sequential",kind:"project"}}:"project"===a.kind?{type:"projectMention",attrs:{id:a.project.id,slug:a.project.slug,name:a.project.name}}:"ticket"===a.kind?{type:"linearIssueMention",attrs:{id:a.issue.id,identifier:a.issue.identifier,title:a.issue.title,status:a.issue.status,url:a.issue.url}}:{type:"participantMention",attrs:{id:a.participant.id,name:a.participant.name,mode:d?"parallel":"sequential",kind:"agent"}};G(aC,c.blockStart,b.startIndex,b.endIndex,e),av.close()},[aC,av]),aG=(0,c.useCallback)(a=>{if(!aC)return;let b=ax.selectSuggestion(a);if(!b)return;let c=(0,u.getCurrentParagraphText)(aC);if(!c)return;let d={type:"fileMention",attrs:{path:a.path,relativePath:a.relativePath??a.path,trigger:ax.token?.trigger??"@/",attachMode:a.attachMode}};G(aC,c.blockStart,b.startIndex,b.endIndex,d),aA.addFilePath(a.path,a.relativePath??a.path,a.attachMode)},[aC,ax,aA]),aH=(0,c.useCallback)(a=>{if(!aC)return;let b=(0,u.getCurrentParagraphText)(aC);if(!b)return;let c=ax.drillDown(a);if(!c)return;let d=(0,u.plainTextRangeToPos)(aC,b.blockStart,c.startIndex,c.endIndex);d&&aC.chain().focus().deleteRange(d).insertContent(c.text).run()},[aC,ax]),aI=(0,c.useCallback)(async a=>{if(!aC)return;let b=ay.selectSuggestion(a);if(!b)return;let c=(0,u.getCurrentParagraphText)(aC);if(!c)return;let d={type:"threadMention",attrs:{threadId:a.rootMessageId,title:a.title}};G(aC,c.blockStart,b.startIndex,b.endIndex,d);try{let b=await ay.exportDiscussion(a);at(a=>[...a,b])}catch(a){console.error("Failed to export discussion:",a)}},[aC,ay]),aJ=(0,c.useCallback)(a=>{aw.selectCommand(a),aC&&aC.commands.clearContent()},[aw,aC]),aK=(0,c.useCallback)(async()=>{if(!aC)return;let b=aC.getJSON(),c=(0,t.serializeToPlainText)(b).trim();if(!c&&!az.hasUploaded&&!aA.hasFilePaths||!az.canSend)return;if(c){let a=Q.find(a=>a.name===c||a.aliases?.some(a=>`/${a}`===c));if(a){a.execute(),aC.commands.clearContent(),aw.close(),av.close();return}}let d=c||"(attached files)",e=[];if(aj.size>0){let a=Y.filter(a=>aj.has(a.id));if(a.length>0){let b=a.map(a=>{let b=[a.name];return a.path&&b.push(`path: ${a.path}`),a.notes&&b.push(a.notes),`- ${b.join(" | ")}`}).join("\n");e.push(`Focused repos (the user is specifically talking about these repositories):
|
|
8
|
-
${b}`)}}if(
|
|
9
|
-
${a}`)}if(aA.hasFilePaths){let a=await (0,o.buildAgentContext)(aA.filePaths);a.contextPrefix&&e.push(a.contextPrefix.trimEnd())}let f=(0,p.extractMentionedLinearIssueIds)(b);if(f.length>0)try{let a=await fetch("/api/linear/issues/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({issueIds:f})});if(!a.ok)throw Error(`Failed to load issue context: ${a.status}`);let b=await a.json().catch(()=>({})),c=Array.isArray(b.issues)?b.issues:[],d=(0,p.buildLinearIssueContextPrefix)(c);d&&e.push(d.trimEnd())}catch(a){console.error("Failed to load Linear issue mention context:",a)}let g=e.length>0?e.join("\n\n")+"\n\n":void 0,h=(0,q.extractComposerRouting)(b,af);c&&aB.pushEntry(c);let i=az.attachmentIds.length>0?az.attachmentIds:void 0,j=i?az.getAttachmentMetas():void 0;a(d,10,i,j,af??void 0,g,h),aC.commands.clearContent(),at([]),az.clear(),aA.clearFilePaths(),av.close(),aw.close(),ay.close()},[aC,av,aw,Q,a,az,aA,as,ay,aB,aj,Y,af]),aL=av.isOpen&&av.filteredSuggestions.length>0;aw.isOpen&&aw.filteredCommands.length,ax.isOpen&&ax.suggestions.length,ay.isOpen&&ay.suggestions.length,aL&&av.filteredSuggestions[av.activeIndex];let aM=az.staged.some(a=>"uploading"===a.status),aN=!aC||aC.isEmpty,aO=L.find(a=>a.id===af)??null;return(0,b.jsx)("div",{className:"pb-6",children:(0,b.jsxs)("div",{className:"max-w-3xl mx-auto",children:[(0,b.jsx)(A.ComposerDropZone,{onDrop:az.stageFiles,children:(0,b.jsxs)("div",{className:"bg-[var(--app-shell-surface)] border border-[var(--app-shell-border)] shadow-[var(--shadow-sm)] focus-within:border-[var(--app-shell-border-strong)] focus-within:ring-1 focus-within:ring-[var(--ring)] transition-all flex flex-col rounded-2xl",children:[X&&(0,b.jsxs)("div",{className:`relative overflow-hidden border-b transition-all duration-500 ${W?"border-orange-200/50 dark:border-orange-500/30":"border-gray-100 dark:border-gray-800/60"}`,children:[(0,b.jsx)("div",{className:`absolute inset-0 transition-opacity duration-700 ${W?"opacity-100":"opacity-0"}`,style:{background:"linear-gradient(120deg, var(--warning-muted) 0%, transparent 50%, var(--warning-muted) 100%)",backgroundSize:"200% 100%",animation:W?"shipBgSweep 4s ease-in-out infinite":"none"}}),W&&(0,b.jsx)("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[...Array(8)].map((a,c)=>(0,b.jsx)("div",{className:"absolute h-[1.5px] rounded-full",style:{top:`${12+10*c}%`,right:"-10%",width:`${20+c%3*15}%`,background:"linear-gradient(to left, transparent, var(--warning))",opacity:.3+c%3*.1,animation:`shipSpeedLine ${.8+c%4*.3}s ${.1*c}s ease-in-out infinite`}},c))}),(0,b.jsx)("div",{className:"relative px-3 py-2",children:(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("div",{className:`p-1 rounded-md transition-all duration-300 ${W?"bg-[var(--warning)] text-[var(--warning-muted)] shadow-md":"bg-[var(--app-shell-subtle)] text-[var(--app-shell-muted)]"}`,style:W?{animation:"shipPulse 2s ease-in-out infinite"}:{},children:(0,b.jsx)(C.Rocket,{size:14})}),(0,b.jsx)("span",{className:`text-sm font-semibold transition-colors duration-300 ${W?"text-[var(--warning)]":"text-[var(--foreground)]"}`,children:"Ship Mode"}),(0,b.jsx)("span",{className:`text-xs transition-colors duration-300 ${W?"text-[var(--warning)] opacity-60":"text-[var(--app-shell-muted)] opacity-60"}`,children:"|"}),(0,b.jsx)("span",{className:`text-xs font-medium transition-colors duration-300 ${W?"text-[var(--warning)] opacity-80":"text-[var(--app-shell-muted)]"}`,children:W?"Continuous execution is active for this thread":"Continuous execution stays off until you enable it"})]}),(0,b.jsx)("button",{type:"button",onClick:()=>X(!W),className:`relative inline-flex h-6 w-11 items-center rounded-full transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-[var(--warning)] focus:ring-offset-2 focus:ring-offset-[var(--background)] ${W?"bg-[var(--warning)]":"bg-[var(--app-shell-border-strong)]"}`,children:(0,b.jsx)("span",{className:`inline-block h-4 w-4 transform rounded-full bg-[var(--app-shell-elevated)] shadow-sm transition-transform duration-200 ${W?"translate-x-6":"translate-x-1"}`})})]})})]}),(0,b.jsxs)("div",{className:"p-1.5 transition-all",children:[az.staged.length>0&&(0,b.jsx)("div",{className:"mx-2 mt-2 mb-1",children:(0,b.jsx)(z.AttachmentTray,{attachments:az.staged,onRemove:az.remove,onRetry:az.retry})}),(0,b.jsxs)("div",{className:"p-2 relative",children:[(0,b.jsx)("input",{ref:ap,type:"file",multiple:!0,className:"hidden",onChange:a=>{a.target.files&&a.target.files.length>0&&(az.stageFiles(a.target.files),a.target.value="")}}),(0,b.jsxs)("div",{className:"flex-1 relative",onClick:aD,onPasteCapture:aE,children:[(0,b.jsx)(d.EditorContent,{editor:aC,className:"composer-editor"}),(0,b.jsx)(v.MentionPopover,{isOpen:av.isOpen&&!aw.isOpen,suggestions:av.filteredSuggestions,activeIndex:av.activeIndex,listboxId:"composer-mention-listbox",optionIdPrefix:"composer-mention-option",onSelect:aF}),(0,b.jsx)(w.CommandPopover,{isOpen:aw.isOpen,commands:aw.filteredCommands,activeIndex:aw.activeIndex,listboxId:"composer-command-listbox",optionIdPrefix:"composer-command-option",onSelect:aJ}),(0,b.jsx)(x.FileMentionPopover,{isOpen:ax.isOpen,suggestions:ax.suggestions,activeIndex:ax.activeIndex,isLoading:ax.isLoading,error:ax.error,listboxId:"composer-file-mention-listbox",optionIdPrefix:"composer-file-mention-option",onSelect:a=>{"folder"===a.type?aH(a):aG(a)},onAttachContents:ax.onAttachContents}),(0,b.jsx)(y.ThreadMentionPopover,{isOpen:ay.isOpen&&!aw.isOpen&&!ax.isOpen,suggestions:ay.suggestions,activeIndex:ay.activeIndex,listboxId:"composer-thread-mention-listbox",optionIdPrefix:"composer-thread-mention-option",onSelect:aI})]})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-t border-[var(--app-shell-border)] transition-colors",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("button",{type:"button",onClick:ar,className:"p-1.5 text-[var(--app-shell-muted)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors","aria-label":"Attach file",title:"Attach file",children:(0,b.jsx)(B.Paperclip,{className:"h-4 w-4",strokeWidth:1.75})}),(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("span",{className:"text-[10px] font-semibold text-[var(--app-shell-muted)] uppercase tracking-wider mr-1",children:"Agents"}),(0,b.jsx)("div",{className:"flex items-center -space-x-1.5",children:0===L.length?(0,b.jsx)("span",{className:"text-[10px] font-medium text-[var(--app-shell-muted)]",children:"No agents"}):L.map(a=>(0,b.jsxs)("div",{role:"button",tabIndex:0,"aria-pressed":af===a.id,onClick:()=>ag(b=>b===a.id?null:a.id),onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),ag(b=>b===a.id?null:a.id))},className:`relative w-6 h-6 rounded-full bg-[var(--app-shell-subtle)] border-2 border-[var(--app-shell-elevated)] shadow-sm flex items-center justify-center overflow-visible shrink-0 transition-all cursor-pointer ${af===a.id?"-translate-y-0.5 ring-2 ring-[var(--ring)] ring-offset-1 ring-offset-[var(--background)]":"hover:-translate-y-0.5"}`,title:a.name,children:[(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:"w-full h-full rounded-full object-cover"}),ae&&(0,b.jsx)("span",{className:`absolute -bottom-0.5 -right-0.5 w-2 h-2 border border-[var(--app-shell-elevated)] rounded-full ${"queued"===ad?"bg-amber-400":"bg-emerald-400"}`})]},a.id))})]}),aO&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)]"}),(0,b.jsxs)("span",{className:"text-[10px] font-medium text-[var(--app-shell-muted)]",children:["Pinned: ",(0,b.jsx)("span",{className:"text-[var(--foreground)]",children:aO.name})]})]}),Y.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsxs)("div",{className:"relative",ref:ao,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>an(a=>!a),className:"composer-repo-select-trigger","aria-haspopup":"listbox","aria-expanded":am,children:[(0,b.jsx)(D.FolderGit2,{className:"h-3.5 w-3.5",strokeWidth:1.75}),(0,b.jsx)("span",{children:"Folders"}),(0,b.jsx)(E.ChevronDown,{className:`h-3 w-3 transition-transform ${am?"rotate-180":""}`})]}),am&&(0,b.jsx)("div",{className:"composer-repo-dropdown",role:"listbox","aria-multiselectable":"true",children:Y.map(a=>{let c=aj.has(a.id);return(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":c,className:`composer-repo-dropdown__item ${c?"composer-repo-dropdown__item--selected":""}`,onClick:()=>al(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,b.jsx)("span",{className:`w-3.5 h-3.5 rounded border flex items-center justify-center shrink-0 transition-colors ${c?"bg-emerald-500 border-emerald-500 text-white":"border-[var(--app-shell-border-strong)]"}`,children:c&&(0,b.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,b.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"truncate",children:a.name})]},a.id)})})]}),(ab=(aa=Y.filter(a=>aj.has(a.id))).slice(0,1),ac=aa.length-1,(0,b.jsxs)(b.Fragment,{children:[ab.map(a=>(0,b.jsxs)("span",{className:"composer-repo-pill",title:a.path||a.name,children:[(0,b.jsx)(D.FolderGit2,{className:"h-3 w-3 shrink-0",strokeWidth:1.75}),(0,b.jsx)("span",{className:"composer-repo-pill__name",children:a.name}),(0,b.jsx)("button",{type:"button",className:"composer-repo-pill__remove",onClick:()=>al(b=>{let c=new Set(b);return c.delete(a.id),c}),"aria-label":`Remove ${a.name}`,children:(0,b.jsx)(F.X,{className:"h-3 w-3"})})]},a.id)),ac>0&&(0,b.jsxs)("span",{className:"composer-repo-pill composer-repo-pill--overflow",children:["+",ac]})]}))]})]})]}),ae&&!K?(0,b.jsx)("button",{type:"button",onClick:H,className:"flex items-center gap-2 bg-[var(--destructive-muted)] text-[var(--destructive)] border border-[var(--status-failed-border)] px-4 py-1.5 rounded-lg text-sm font-semibold hover:opacity-90 transition-colors",children:"Stop"}):(0,b.jsxs)("button",{type:"button",onClick:aK,disabled:aN&&!az.hasUploaded&&!aA.hasFilePaths||aM,className:"flex items-center gap-2 bg-[var(--primary)] hover:bg-[var(--primary-hover)] text-[var(--primary-foreground)] px-4 py-1.5 rounded-lg text-sm font-semibold transition-colors disabled:opacity-50 disabled:cursor-not-allowed shadow-sm",children:["Send",(0,b.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,b.jsx)("line",{x1:"22",y1:"2",x2:"11",y2:"13"}),(0,b.jsx)("polygon",{points:"22 2 15 22 11 13 2 9 22 2"})]})]})]})]})]})}),(0,b.jsxs)("div",{className:"mt-3 flex items-center justify-between text-xs text-[var(--app-shell-muted)] px-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("div",{className:`w-1.5 h-1.5 rounded-full ${"working"===ad?"bg-emerald-400 animate-pulse":"queued"===ad?"bg-amber-400":"bg-emerald-400"}`}),(0,b.jsx)("span",{children:"working"===ad?"Working":"queued"===ad?"Queued":"Ready"})]}),(0,b.jsxs)("span",{children:["Press ",(0,b.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] text-[var(--app-shell-muted)] shadow-sm text-[10px]",children:"Enter"})," to send, ",(0,b.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] text-[var(--app-shell-muted)] shadow-sm text-[10px]",children:"Shift"})," + ",(0,b.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] text-[var(--app-shell-muted)] shadow-sm text-[10px]",children:"Enter"})," for new line"]})]})]})})}])}];
|
|
7
|
+
`},"extractMentionedLinearIssueIds",0,function(a){let b=new Set;return!function a(b,c){if(b)for(let d of b)c(d),a(d.content,c)}(a.content,a=>{if("linearIssueMention"!==a.type)return;let c="string"==typeof a.attrs?.id?a.attrs.id.trim():"";c&&b.add(c)}),Array.from(b)}],200369);var u=a.i(583489);let v=u.Node.create({name:"participantMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({id:{default:null},name:{default:""},mode:{default:"sequential"},kind:{default:"agent"}}),parseHTML:()=>[{tag:"span[data-participant-mention]"}],renderHTML({node:a,HTMLAttributes:b}){let c="parallel"===a.attrs.mode;return["span",(0,u.mergeAttributes)(b,{"data-participant-mention":"","data-id":a.attrs.id,"data-mode":a.attrs.mode,class:c?"composer-pill composer-pill--participant-parallel":"composer-pill composer-pill--participant",contenteditable:"false"}),`${c?"@@":"@"}${a.attrs.name}`]}}),w=u.Node.create({name:"projectMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({id:{default:null},slug:{default:""},name:{default:""}}),parseHTML:()=>[{tag:"span[data-project-mention]"}],renderHTML:({node:a,HTMLAttributes:b})=>["span",(0,u.mergeAttributes)(b,{"data-project-mention":"","data-id":a.attrs.id,"data-slug":a.attrs.slug,class:"composer-pill composer-pill--project",contenteditable:"false"}),`@${a.attrs.name}`]}),x=u.Node.create({name:"fileMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({path:{default:""},relativePath:{default:""},trigger:{default:"@/"},attachMode:{default:void 0}}),parseHTML:()=>[{tag:"span[data-file-mention]"}],renderHTML({node:a,HTMLAttributes:b}){let c=a.attrs.relativePath||a.attrs.path;return["span",(0,u.mergeAttributes)(b,{"data-file-mention":"","data-path":a.attrs.path,class:"composer-pill composer-pill--file",contenteditable:"false"}),`@${c}`]}}),y=u.Node.create({name:"threadMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({threadId:{default:""},title:{default:""}}),parseHTML:()=>[{tag:"span[data-thread-mention]"}],renderHTML:({node:a,HTMLAttributes:b})=>["span",(0,u.mergeAttributes)(b,{"data-thread-mention":"","data-thread-id":a.attrs.threadId,class:"composer-pill composer-pill--thread",contenteditable:"false"}),`#${a.attrs.title}`]}),z=u.Node.create({name:"linearIssueMention",group:"inline",inline:!0,atom:!0,addAttributes:()=>({id:{default:null},identifier:{default:""},title:{default:""},status:{default:""},url:{default:null}}),parseHTML:()=>[{tag:"span[data-linear-issue-mention]"}],renderHTML:({node:a,HTMLAttributes:b})=>["span",(0,u.mergeAttributes)(b,{"data-linear-issue-mention":"","data-id":a.attrs.id,"data-identifier":a.attrs.identifier,class:"composer-pill composer-pill--linear-issue",contenteditable:"false"}),`@${a.attrs.identifier}`]});a.s(["FileMention",0,x,"LinearIssueMention",0,z,"ParticipantMention",0,v,"ProjectMention",0,w,"ThreadMention",0,y],340914);function A(a){switch(a.type.name){case"participantMention":{let b="parallel"===a.attrs.mode?"@@":"@";return`${b}${a.attrs.name}`}case"projectMention":{let b=String(a.attrs.slug??"").trim();if(b)return`@~project:${b}`;return a.attrs.name?`@${a.attrs.name}`:""}case"fileMention":{let b=a.attrs.relativePath||a.attrs.path;return`@${b}`}case"threadMention":{let b=(a.attrs.threadId??"").slice(0,8);return`@#${b}`}case"linearIssueMention":{let b=String(a.attrs.identifier??"").trim();return b?`@${b}`:""}default:return""}}a.s(["serializeToPlainText",0,function(a){if(!a.content)return"";let b=[];for(let c of a.content)c.type,b.push(function(a){if(!a.content)return"";let b="";for(let c of a.content)switch(c.type){case"text":b+=c.text??"";break;case"participantMention":{let a=c.attrs??{},d="parallel"===a.mode?"@@":"@";b+=`${d}${a.name}`;break}case"projectMention":{let a=c.attrs??{},d=String(a.slug??"").trim();d?b+=`@~project:${d}`:a.name&&(b+=`@${a.name}`);break}case"fileMention":{let a=c.attrs??{},d=a.relativePath||a.path;b+=`@${d}`;break}case"threadMention":{let a=((c.attrs??{}).threadId??"").slice(0,8);b+=`@#${a}`;break}case"linearIssueMention":{let a=String((c.attrs??{}).identifier??"").trim();a&&(b+=`@${a}`);break}default:"hardBreak"===c.type&&(b+="\n")}return b}(c));return b.join("\n")}],413169),a.s(["getCurrentParagraphText",0,function(a){let{state:b}=a,{$from:c}=b.selection,d=c.depth,e=-1;for(let a=d;a>=0;a--)if("paragraph"===c.node(a).type.name){e=a;break}if(-1===e)return null;let f=c.node(e),g=c.start(e),h=c.pos-g,i="",j=0,k=!1;return f.forEach((a,b)=>{let c=b+a.nodeSize;if(a.isText){let d=a.text??"";!k&&h>=b&&h<=c&&(j=i.length+(h-b),k=!0),i+=d}else if(a.isAtom){let d=A(a);!k&&h>=b&&h<=c&&(j=i.length+d.length,k=!0),i+=d}}),k||(j=i.length),{text:i,cursorPos:j,blockStart:g}},"plainTextRangeToPos",0,function(a,b,c,d){let{state:e}=a,f=e.doc.resolve(b),g=f.depth,h=null,i=b;for(let a=g;a>=0;a--){let b=f.node(a);if("paragraph"===b.type.name){h=b,i=f.start(a);break}}h||(h=e.doc.resolve(b).parent,i=b);let j=0,k=null,l=null;return(h.forEach((a,b)=>{let e=i+b,f=a.nodeSize;if(a.isText){let b=a.text??"",f=j+b.length;null===k&&c>=j&&c<=f&&(k=e+(c-j)),null===l&&d>=j&&d<=f&&(l=e+(d-j)),j=f}else if(a.isAtom){let b=A(a),g=j+b.length;null===k&&c>=j&&c<=g&&(k=e),null===l&&d>=j&&d<=g&&(l=e+f),j=g}}),null===k&&c>=j&&(k=i+h.content.size),null===l&&d>=j&&(l=i+h.content.size),null===k||null===l)?null:{from:k,to:l}}],719753);var B=a.i(187924),C=a.i(831709);let D=(0,C.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]),E=(0,C.default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);var F=a.i(985339);a.s(["MentionPopover",0,function({isOpen:a,suggestions:c,activeIndex:d,listboxId:e,optionIdPrefix:f,onSelect:g}){let h=(0,b.useRef)([]);if((0,b.useEffect)(()=>{a&&h.current[d]?.scrollIntoView({block:"nearest"})},[d,a]),!a||0===c.length)return null;let i=new Set;return(0,B.jsx)("div",{className:"absolute left-0 right-0 bottom-full mb-3 z-20",children:(0,B.jsx)("div",{role:"listbox",id:e,"aria-label":"Mention suggestions",className:"max-h-56 overflow-y-auto rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg",children:c.map((a,b)=>{let c=b===d,e="project-group"===a.kind?`project-group-${a.project.id}`:"project"===a.kind?`project-${a.project.id}`:"ticket"===a.kind?`ticket-${a.issue.id}`:a.participant.id,j=a.group,k=null;if(j&&!i.has(j)&&(i.add(j),k=(0,B.jsx)("div",{className:"px-3 py-1.5 text-[10px] font-bold uppercase tracking-wider text-[var(--muted-foreground)] bg-[var(--app-shell-subtle)] border-t border-[var(--border)] first:border-t-0",children:j})),"project-group"===a.kind)return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${e}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)(F.Users,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]","aria-hidden":!0}),(0,B.jsx)("span",{className:"font-medium",children:a.project.name}),(0,B.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[a.project.agents.length," agent",1!==a.project.agents.length?"s":""]})]})})]},e);if("project"===a.kind)return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${e}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)(D,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]","aria-hidden":!0}),(0,B.jsx)("span",{className:"font-medium",children:a.project.name}),(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:a.project.slug})]})})]},e);if("ticket"===a.kind)return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${e}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"flex items-start gap-2",children:[(0,B.jsx)(E,{className:"mt-0.5 h-3.5 w-3.5 text-[var(--muted-foreground)]","aria-hidden":!0}),(0,B.jsxs)("span",{className:"min-w-0",children:[(0,B.jsxs)("span",{className:"block font-medium",children:[a.issue.identifier,(0,B.jsx)("span",{className:"ml-2 text-xs text-[var(--muted-foreground)]",children:a.issue.status})]}),(0,B.jsx)("span",{className:"block truncate text-xs text-[var(--muted-foreground)]",children:a.issue.title})]})]})})]},e);let l=a.participant;return(0,B.jsxs)("div",{children:[k,(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${l.id}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}${j?" pl-6":""}`,onMouseDown:a=>{a.preventDefault()},onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)("span",{className:"h-2.5 w-2.5 rounded-full",style:{backgroundColor:l.color},"aria-hidden":!0}),(0,B.jsx)("span",{className:"font-medium",children:l.name}),"all"===l.id?(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:"All participants"}):l.model&&(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:l.model})]})})]},e)})})})}],704238),a.s(["CommandPopover",0,function({isOpen:a,commands:c,activeIndex:d,listboxId:e,optionIdPrefix:f,onSelect:g}){let h=(0,b.useRef)([]);return((0,b.useEffect)(()=>{a&&h.current[d]?.scrollIntoView({block:"nearest"})},[d,a]),a&&0!==c.length)?(0,B.jsx)("div",{className:"absolute left-0 right-0 bottom-full mb-3 z-20",children:(0,B.jsx)("div",{role:"listbox",id:e,"aria-label":"Command suggestions",className:"max-h-56 overflow-y-auto rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg",children:c.map((a,b)=>{let c=b===d;return(0,B.jsx)("button",{type:"button",role:"option",id:`${f}-${a.name.slice(1)}`,"aria-selected":c,ref:a=>{h.current[b]=a},className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-[var(--primary-muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>g(a),children:(0,B.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,B.jsx)("span",{className:"font-medium font-mono",children:a.name}),a.aliases&&a.aliases.length>0&&(0,B.jsxs)("span",{className:"text-xs text-[var(--app-shell-soft-text)] font-mono",children:["(",a.aliases.join(", "),")"]}),(0,B.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:a.description})]})},a.name)})})}):null}],589609);var G=a.i(349692),H=a.i(693896);let I=(0,C.default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);var J=a.i(157633),K=a.i(89613);function L({suggestion:a,isActive:b,optionId:c,onSelect:d,onAttachContents:e,itemRef:f}){let g="folder"===a.type,h="contents"===a.attachMode,i=function(a){if(!a)return null;let b=Math.floor((Date.now()-a)/864e5);return 0===b?"Today":1===b?"Yesterday":b<7?`${b}d ago`:b<30?`${Math.floor(b/7)}w ago`:b<365?`${Math.floor(b/30)}mo ago`:`${Math.floor(b/365)}y ago`}(a.modifiedAt),j=a.relativePath??a.path;return(0,B.jsxs)("div",{className:`flex items-center gap-2 px-3 py-2 text-sm transition-colors duration-200 ${b?"bg-[var(--primary-muted)]":"hover:bg-[var(--app-shell-subtle)]"}`,children:[(0,B.jsx)("span",{className:"shrink-0 text-[var(--muted-foreground)]","aria-hidden":!0,children:g?b?(0,B.jsx)(K.FolderOpen,{className:"h-4 w-4 text-amber-500"}):(0,B.jsx)(J.Folder,{className:"h-4 w-4 text-amber-400"}):(0,B.jsx)(I,{className:"h-4 w-4"})}),(0,B.jsxs)("button",{type:"button",role:"option",id:c,"aria-selected":b,ref:f,className:"min-w-0 flex-1 text-left",onMouseDown:a=>a.preventDefault(),onClick:()=>d(a),tabIndex:-1,children:[(0,B.jsxs)("span",{className:"flex items-baseline gap-2",children:[(0,B.jsx)("span",{className:"block truncate font-mono text-xs text-[var(--foreground)]",children:j}),i&&(0,B.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:i})]}),g&&a.manifest&&(0,B.jsxs)("span",{className:"block text-xs text-[var(--muted-foreground)]",children:[a.manifest.childCount," items ·"," ",a.manifest.sizeSummary,h?(0,B.jsx)("span",{className:"ml-1 font-medium text-[var(--primary)]",children:"full tree"}):(0,B.jsx)("span",{className:"ml-1 text-[var(--muted-foreground)]",children:"manifest"})]})]}),g&&!h&&(0,B.jsx)("button",{type:"button",className:"shrink-0 rounded px-1.5 py-0.5 text-xs text-[var(--muted-foreground)] hover:bg-[var(--muted)] hover:text-[var(--foreground)] transition-colors duration-200",title:"Attach full directory contents instead of manifest","aria-label":`Attach full contents of ${j}`,onMouseDown:a=>a.preventDefault(),onClick:()=>e(a),tabIndex:-1,children:"Attach contents"}),g&&h&&(0,B.jsx)("span",{className:"shrink-0 rounded bg-[var(--primary-muted)] px-1.5 py-0.5 text-xs font-medium text-[var(--primary)]",children:"full tree"})]})}var M=a.i(161958);a.s(["FileMentionPopover",0,function({isOpen:a,suggestions:c,activeIndex:d,isLoading:e,error:f,listboxId:g,optionIdPrefix:h,onSelect:i,onAttachContents:j}){let k=(0,b.useRef)([]),l=(0,b.useRef)(null),[m,n]=(0,b.useState)(!1);if((0,b.useEffect)(()=>{a&&k.current[d]?.scrollIntoView({block:"nearest"})},[d,a]),(0,b.useEffect)(()=>{a&&l.current&&n(l.current.getBoundingClientRect().top<280)},[a]),!a)return null;let o=c.length>0?`${h}-${d}`:void 0;return(0,B.jsx)("div",{ref:l,className:`${m?"absolute left-0 right-0 top-full mt-2 z-20":"absolute left-0 right-0 bottom-full mb-3 z-20"} ${M.default.popover}`,children:(0,B.jsxs)("div",{role:"listbox",id:g,"aria-label":"File suggestions","aria-activedescendant":o,className:"max-h-64 overflow-y-auto rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg",children:[f&&!e&&(0,B.jsxs)("div",{className:"flex items-center gap-2 px-3 py-3 text-sm text-red-500",role:"alert",children:[(0,B.jsx)(H.AlertCircle,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,B.jsx)("span",{children:f})]}),!f&&e&&0===c.length&&(0,B.jsxs)("div",{className:"flex items-center gap-2 px-3 py-3 text-sm text-[var(--muted-foreground)]","aria-live":"polite","aria-label":"Searching for files",children:[(0,B.jsx)(G.Loader2,{className:"h-3.5 w-3.5 animate-spin","aria-hidden":!0}),(0,B.jsx)("span",{children:"Searching…"})]}),!f&&!e&&0===c.length&&(0,B.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]","aria-live":"polite",children:"No results"}),!f&&e&&c.length>0&&(0,B.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1 text-xs text-[var(--muted-foreground)] border-b border-[var(--border)]",children:[(0,B.jsx)(G.Loader2,{className:"h-3 w-3 animate-spin","aria-hidden":!0}),(0,B.jsx)("span",{"aria-live":"polite","aria-label":"Updating results",children:"Updating…"})]}),c.length>0&&c.map((a,b)=>(0,B.jsx)(L,{suggestion:a,isActive:b===d,optionId:`${h}-${b}`,onSelect:i,onAttachContents:j,itemRef:a=>{k.current[b]=a}},a.path))]})})}],119616);var N=a.i(737313),O=a.i(820859);a.s(["ThreadMentionPopover",0,function({isOpen:a,suggestions:b,activeIndex:c,listboxId:d,optionIdPrefix:e,onSelect:f}){return a&&0!==b.length?(0,B.jsxs)("div",{className:"absolute bottom-full left-0 mb-2 w-80 bg-[var(--app-shell-elevated)] rounded-xl shadow-xl border border-[var(--app-shell-border)] overflow-hidden z-50 animate-in fade-in zoom-in-95 duration-100",role:"listbox",id:d,children:[(0,B.jsx)("div",{className:"px-3 py-2 bg-[var(--app-shell-subtle)] border-b border-[var(--app-shell-border)] text-[11px] font-bold text-[var(--app-shell-muted)] uppercase tracking-wider",children:"Reference Discussion"}),(0,B.jsx)("div",{className:"max-h-64 overflow-y-auto p-1",children:b.map((a,b)=>{let d=b===c;return(0,B.jsxs)("button",{role:"option",id:`${e}-${b}`,"aria-selected":d,onClick:()=>f(a),className:`w-full text-left px-3 py-2.5 rounded-lg flex items-start gap-3 transition-colors ${d?"bg-[var(--primary-muted)]":"hover:bg-[var(--app-shell-subtle)]"}`,children:[(0,B.jsx)("div",{className:`mt-0.5 p-1.5 rounded-md ${d?"bg-[var(--primary-muted)] text-[var(--primary)]":"bg-[var(--muted)] text-[var(--muted-foreground)]"}`,children:(0,B.jsx)(N.MessageSquare,{size:14,strokeWidth:2.5})}),(0,B.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,B.jsx)("div",{className:`text-sm font-semibold truncate ${d?"text-[var(--primary)]":"text-[var(--foreground)]"}`,children:a.title}),(0,B.jsxs)("div",{className:"flex items-center gap-2 mt-0.5",children:[(0,B.jsxs)("span",{className:`text-xs ${d?"text-[var(--primary)]":"text-[var(--muted-foreground)]"}`,children:[a.replies.length," replies"]}),(0,B.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"•"}),(0,B.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] flex items-center gap-1",children:[(0,B.jsx)(O.Clock,{size:10}),function(a){if(!a)return"";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`;let d=Math.floor(c/60);return d<24?`${d}h`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(a)}(a.lastActivityAt)]})]})]})]},a.rootMessageId)})})]}):null}],745975);var P=a.i(824179),Q=a.i(864061),R=a.i(552605);let S=(0,C.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);a.s(["AttachmentTray",0,function({attachments:a,onRemove:b,onRetry:c}){return 0===a.length?null:(0,B.jsx)("div",{className:"flex flex-wrap gap-2 px-1 pb-2",children:a.map(a=>{var d;let e=a.mimeType.startsWith("image/"),f="failed"===a.status,g="uploading"===a.status;return(0,B.jsxs)("div",{className:`relative group flex items-center gap-2 rounded-lg border px-2.5 py-1.5 text-xs transition-all ${f?"border-red-200 bg-red-50 text-red-700":"border-[var(--border)] bg-[var(--app-shell-subtle)] text-[var(--muted-foreground)]"}`,children:[e&&a.previewUrl?(0,B.jsx)("img",{src:a.previewUrl,alt:a.filename,className:"w-8 h-8 rounded object-cover shrink-0"}):(0,B.jsx)("div",{className:"w-8 h-8 rounded bg-[var(--muted)] flex items-center justify-center shrink-0",children:e?(0,B.jsx)(S,{className:"w-4 h-4 text-[var(--muted-foreground)]"}):(0,B.jsx)(R.FileText,{className:"w-4 h-4 text-[var(--muted-foreground)]"})}),(0,B.jsxs)("div",{className:"min-w-0 max-w-[120px]",children:[(0,B.jsx)("div",{className:"truncate font-medium",children:a.filename}),f&&a.error?(0,B.jsx)("div",{className:"truncate text-[10px] text-red-500",children:a.error}):(0,B.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:(d=a.size)<1024?`${d}B`:d<1048576?`${(d/1024).toFixed(0)}KB`:`${(d/1048576).toFixed(1)}MB`})]}),g&&(0,B.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-0.5 bg-[var(--muted)] rounded-b-lg overflow-hidden",children:(0,B.jsx)("div",{className:"h-full bg-blue-500 transition-all",style:{width:`${a.progress}%`}})}),(0,B.jsxs)("div",{className:"flex items-center gap-0.5 shrink-0",children:[f&&(0,B.jsx)("button",{type:"button",onClick:()=>c(a.id),className:"p-0.5 rounded hover:bg-red-100 transition-colors",title:"Retry upload",children:(0,B.jsx)(Q.RefreshCw,{className:"w-3 h-3"})}),(0,B.jsx)("button",{type:"button",onClick:()=>b(a.id),className:"p-0.5 rounded hover:bg-[var(--muted)] transition-colors",title:"Remove",children:(0,B.jsx)(P.X,{className:"w-3 h-3"})})]})]},a.id)})})}],669417),a.s(["ComposerDropZone",0,function({onDrop:a,children:c}){let[d,e]=(0,b.useState)(!1),f={current:0},g=(0,b.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),f.current++,a.dataTransfer.types.includes("Files")&&e(!0)},[]),h=(0,b.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),i=(0,b.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),f.current--,0===f.current&&e(!1)},[]),j=(0,b.useCallback)(b=>{b.preventDefault(),b.stopPropagation(),f.current=0,e(!1),b.dataTransfer.files.length>0&&a(b.dataTransfer.files)},[a]);return(0,B.jsxs)("div",{className:"relative",onDragEnter:g,onDragOver:h,onDragLeave:i,onDrop:j,children:[c,d&&(0,B.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center rounded-lg border-2 border-dashed border-blue-400 bg-blue-50/80 pointer-events-none",children:(0,B.jsx)("span",{className:"text-sm font-medium text-blue-600",children:"Drop files to attach"})})]})}],667494);let T=(0,C.default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);a.s(["Paperclip",0,T],514840)},915534,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Rocket",0,b],915534)},689882,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(313872),e=a.i(628977),f=a.i(609345),g=a.i(981717),h=a.i(29714),i=a.i(279384),j=a.i(950364),k=a.i(177521),l=a.i(924434),m=a.i(45813),n=a.i(95348),o=a.i(382460),p=a.i(200369),q=a.i(785061),r=a.i(677955),s=a.i(340914),t=a.i(413169),u=a.i(719753),v=a.i(704238),w=a.i(589609),x=a.i(119616),y=a.i(745975),z=a.i(669417),A=a.i(667494),B=a.i(514840),C=a.i(915534),D=a.i(736868),E=a.i(811760),F=a.i(824179);function G(a,b,c,d,e){if(!a)return;let f=(0,u.plainTextRangeToPos)(a,b,c,d);f&&a.chain().focus().deleteRange(f).insertContent(e).insertContent(" ").run()}a.s(["Composer",0,function({onSend:a,onStop:H,loading:I,activityStatus:J,sendInterruptsBusy:K=!1,participants:L,projects:M=[],projectGroups:N=[],projectSlug:O,messages:P=[],commands:Q,placeholder:R="Message — @name to mention, /search, /summarize",workspaceRoots:S=[],onConfigureRoots:T,pendingThreadInsert:U,onClearPendingThread:V,autoMode:W=!1,onAutoModeChange:X,repos:Y=[],selectedRepoIds:Z,onRepoSelectionChange:$,initialPinnedParticipantId:_}){let aa,ab,ac,ad=J??(I?"working":"ready"),ae="ready"!==ad,[af,ag]=(0,c.useState)(_??null),[ah,ai]=(0,c.useState)(new Set),aj=Z??ah,ak=(0,c.useRef)(aj);ak.current=aj;let al=(0,c.useCallback)(a=>{let b="function"==typeof a?a(ak.current):a;$?$(b):ai(b)},[$]),[am,an]=(0,c.useState)(!1),ao=(0,c.useRef)(null),ap=(0,c.useRef)(null),aq=(0,c.useRef)(!1),ar=(0,c.useRef)(()=>{}),as=(0,c.useCallback)(()=>{ap.current?.click()},[]),[at,au]=(0,c.useState)([]),{issues:av}=(0,n.useLinearIssueMentions)({projectSlug:O}),aw=(0,g.useMentionAutocomplete)({participants:L,projectGroups:N,projects:M,linearIssues:av,maxSuggestions:8}),ax=(0,h.useCommandAutocomplete)({commands:Q,maxSuggestions:6}),ay=(0,j.useFileMention)({maxSuggestions:8}),az=(0,k.useThreadMention)({messages:P,maxSuggestions:8}),aA=(0,i.useAttachments)();ar.current=aA.stageFiles;let aB=(0,l.useComposerAttachments)(),aC=(0,m.useComposerHistory)();(0,c.useEffect)(()=>{af&&!L.some(a=>a.id===af)&&ag(null)},[L,af]),(0,c.useEffect)(()=>{if(!am)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&an(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[am]),(0,c.useEffect)(()=>{if(null!=Z||0===ah.size)return;let a=new Set(Y.map(a=>a.id)),b=new Set([...ah].filter(b=>a.has(b)));b.size<ah.size&&ai(b)},[Y,Z,ah]);let aD=(0,d.useEditor)({immediatelyRender:!1,extensions:[e.default.configure({heading:!1,bulletList:!1,orderedList:!1,listItem:!1,blockquote:!1,codeBlock:!1,code:!1,horizontalRule:!1,hardBreak:{keepMarks:!1}}),f.default.configure({placeholder:R}),s.ParticipantMention,s.ProjectMention,s.FileMention,s.ThreadMention,s.LinearIssueMention],editorProps:{attributes:{class:"composer-editor",role:"combobox","aria-autocomplete":"list"},handleDOMEvents:{compositionstart:()=>(aq.current=!0,aw.startComposition(),!1),compositionend:(a,b)=>(aq.current=!1,setTimeout(()=>{if(!aD)return;let a=(0,u.getCurrentParagraphText)(aD);a&&aw.endComposition(a.text,a.cursorPos)},0),!1)},handlePaste:(a,b)=>{let c=(0,r.getClipboardAttachmentFiles)(b.clipboardData);if(c.length>0)return ar.current(c),!0;if((0,r.clipboardMayContainImageAttachments)(b.clipboardData)){let a="u">typeof navigator?navigator.clipboard:void 0;if("function"==typeof a?.read)return(0,r.readClipboardAttachmentFiles)(b.clipboardData,a).then(a=>{a.length>0&&ar.current(a)}).catch(a=>{console.error("Failed to read pasted clipboard attachments:",a)}),!0}return!1},handleKeyDown:(a,b)=>{if("Tab"===b.key||"Enter"===b.key&&!b.shiftKey){if(ax.isOpen&&ax.filteredCommands.length>0){b.preventDefault();let a=ax.filteredCommands[ax.activeIndex];return a&&aJ(a),!0}if(ay.isOpen&&ay.suggestions.length>0){b.preventDefault();let a=ay.suggestions[ay.activeIndex];return a&&("folder"===a.type?aH(a):aG(a)),!0}if(az.isOpen&&az.suggestions.length>0){b.preventDefault();let a=az.suggestions[az.activeIndex];return a&&aI(a),!0}if(aw.isOpen&&aw.filteredSuggestions.length>0){b.preventDefault();let a=aw.filteredSuggestions[aw.activeIndex];return a&&aF(a),!0}}let c={key:b.key,preventDefault:()=>b.preventDefault()};if(ax.isOpen&&ax.handleKeyDown(c)||ay.isOpen&&ay.handleKeyDown(c)||az.isOpen&&az.handleKeyDown(c)||aw.handleKeyDown(c))return!0;if(("ArrowUp"===b.key||"ArrowDown"===b.key)&&!aw.isOpen&&!ax.isOpen&&!ay.isOpen&&!az.isOpen){let a=(0,t.serializeToPlainText)(aD.getJSON()).trim(),{state:c}=aD.view,d="ArrowUp"===b.key,e=d?c.selection.from<=1:c.selection.to>=c.doc.content.size-1,f=aC.navigate(d?"up":"down",a,e);if(null!==f)return b.preventDefault(),aD.commands.setContent(f),aD.commands.focus("end"),!0}return"Enter"===b.key&&!b.shiftKey&&(b.preventDefault(),aK(),!0)}},onUpdate:({editor:a})=>{if(aq.current)return;-1!==aC.historyIndex&&aC.resetNavigation();let b=(0,u.getCurrentParagraphText)(a);b&&(aw.handleInput(b.text,b.cursorPos),ax.handleInput(b.text,b.cursorPos),ay.handleInput(b.text,b.cursorPos),az.handleInput(b.text,b.cursorPos))},onBlur:()=>{aw.close(),ax.close(),ay.close(),az.close()}});(0,c.useEffect)(()=>{if(!U||!aD)return;let{title:a,threadId:b,messages:c}=U;aD.chain().focus().insertContent({type:"threadMention",attrs:{threadId:b,title:a}}).insertContent(" ").run();let d=c[0];if(d){let e={rootMessageId:b,title:a,rootMessage:d,replies:c.slice(1),participantIds:[...new Set(c.map(a=>a.participantId||"user"))],lastActivityAt:Math.max(...c.map(a=>a.timestamp))};az.exportDiscussion(e).then(a=>au(b=>[...b,a])).catch(a=>console.error("Failed to export discussion for Add to chat:",a))}V?.()},[U]);let aE=(0,c.useCallback)(()=>{if(!aD)return;let a=(0,u.getCurrentParagraphText)(aD);a&&aw.handleInput(a.text,a.cursorPos)},[aD,aw]),aF=(0,c.useCallback)(a=>{if(!aD)return;let b=aw.selectSuggestion(a);if(!b)return;let c=(0,u.getCurrentParagraphText)(aD);if(!c)return;let d=b.text.startsWith("@@"),e="project-group"===a.kind?{type:"participantMention",attrs:{id:a.project.id,name:a.project.name,mode:d?"parallel":"sequential",kind:"project"}}:"project"===a.kind?{type:"projectMention",attrs:{id:a.project.id,slug:a.project.slug,name:a.project.name}}:"ticket"===a.kind?{type:"linearIssueMention",attrs:{id:a.issue.id,identifier:a.issue.identifier,title:a.issue.title,status:a.issue.status,url:a.issue.url}}:{type:"participantMention",attrs:{id:a.participant.id,name:a.participant.name,mode:d?"parallel":"sequential",kind:"agent"}};G(aD,c.blockStart,b.startIndex,b.endIndex,e),aw.close()},[aD,aw]),aG=(0,c.useCallback)(a=>{if(!aD)return;let b=ay.selectSuggestion(a);if(!b)return;let c=(0,u.getCurrentParagraphText)(aD);if(!c)return;let d={type:"fileMention",attrs:{path:a.path,relativePath:a.relativePath??a.path,trigger:ay.token?.trigger??"@/",attachMode:a.attachMode}};G(aD,c.blockStart,b.startIndex,b.endIndex,d),aB.addFilePath(a.path,a.relativePath??a.path,a.attachMode)},[aD,ay,aB]),aH=(0,c.useCallback)(a=>{if(!aD)return;let b=(0,u.getCurrentParagraphText)(aD);if(!b)return;let c=ay.drillDown(a);if(!c)return;let d=(0,u.plainTextRangeToPos)(aD,b.blockStart,c.startIndex,c.endIndex);d&&aD.chain().focus().deleteRange(d).insertContent(c.text).run()},[aD,ay]),aI=(0,c.useCallback)(async a=>{if(!aD)return;let b=az.selectSuggestion(a);if(!b)return;let c=(0,u.getCurrentParagraphText)(aD);if(!c)return;let d={type:"threadMention",attrs:{threadId:a.rootMessageId,title:a.title}};G(aD,c.blockStart,b.startIndex,b.endIndex,d);try{let b=await az.exportDiscussion(a);au(a=>[...a,b])}catch(a){console.error("Failed to export discussion:",a)}},[aD,az]),aJ=(0,c.useCallback)(a=>{ax.selectCommand(a),aD&&aD.commands.clearContent()},[ax,aD]),aK=(0,c.useCallback)(async()=>{if(!aD)return;let b=aD.getJSON(),c=(0,t.serializeToPlainText)(b).trim();if(!c&&!aA.hasUploaded&&!aB.hasFilePaths||!aA.canSend)return;if(c){let a=Q.find(a=>a.name===c||a.aliases?.some(a=>`/${a}`===c));if(a){a.execute(),aD.commands.clearContent(),ax.close(),aw.close();return}}let d=c||"(attached files)",e=[];if(aj.size>0){let a=Y.filter(a=>aj.has(a.id));if(a.length>0){let b=a.map(a=>{let b=[a.name];return a.path&&b.push(`path: ${a.path}`),a.notes&&b.push(a.notes),`- ${b.join(" | ")}`}).join("\n");e.push(`Focused repos (the user is specifically talking about these repositories):
|
|
8
|
+
${b}`)}}if(at.length>0){let a=at.map(a=>`- "${a.title}" — ${a.summary} (full transcript: ${a.filePath})`).join("\n");e.push(`Referenced threads:
|
|
9
|
+
${a}`)}if(aB.hasFilePaths){let a=await (0,o.buildAgentContext)(aB.filePaths);a.contextPrefix&&e.push(a.contextPrefix.trimEnd())}let f=(0,p.extractMentionedLinearIssueIds)(b);if(f.length>0)try{let a=await fetch("/api/linear/issues/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({issueIds:f})});if(!a.ok)throw Error(`Failed to load issue context: ${a.status}`);let b=await a.json().catch(()=>({})),c=Array.isArray(b.issues)?b.issues:[],d=(0,p.buildLinearIssueContextPrefix)(c);d&&e.push(d.trimEnd())}catch(a){console.error("Failed to load Linear issue mention context:",a)}let g=e.length>0?e.join("\n\n")+"\n\n":void 0,h=(0,q.extractComposerRouting)(b,af);c&&aC.pushEntry(c);let i=aA.attachmentIds.length>0?aA.attachmentIds:void 0,j=i?aA.getAttachmentMetas():void 0;a(d,10,i,j,af??void 0,g,h),aD.commands.clearContent(),au([]),aA.clear(),aB.clearFilePaths(),aw.close(),ax.close(),az.close()},[aD,aw,ax,Q,a,aA,aB,at,az,aC,aj,Y,af]),aL=aw.isOpen&&aw.filteredSuggestions.length>0;ax.isOpen&&ax.filteredCommands.length,ay.isOpen&&ay.suggestions.length,az.isOpen&&az.suggestions.length,aL&&aw.filteredSuggestions[aw.activeIndex];let aM=aA.staged.some(a=>"uploading"===a.status),aN=!aD||aD.isEmpty,aO=L.find(a=>a.id===af)??null;return(0,b.jsx)("div",{className:"pb-6",children:(0,b.jsxs)("div",{className:"max-w-3xl mx-auto",children:[(0,b.jsx)(A.ComposerDropZone,{onDrop:aA.stageFiles,children:(0,b.jsxs)("div",{className:"bg-[var(--app-shell-surface)] border border-[var(--app-shell-border)] shadow-[var(--shadow-sm)] focus-within:border-[var(--app-shell-border-strong)] focus-within:ring-1 focus-within:ring-[var(--ring)] transition-all flex flex-col rounded-2xl",children:[X&&(0,b.jsxs)("div",{className:`relative overflow-hidden border-b transition-all duration-500 ${W?"border-orange-200/50 dark:border-orange-500/30":"border-gray-100 dark:border-gray-800/60"}`,children:[(0,b.jsx)("div",{className:`absolute inset-0 transition-opacity duration-700 ${W?"opacity-100":"opacity-0"}`,style:{background:"linear-gradient(120deg, var(--warning-muted) 0%, transparent 50%, var(--warning-muted) 100%)",backgroundSize:"200% 100%",animation:W?"shipBgSweep 4s ease-in-out infinite":"none"}}),W&&(0,b.jsx)("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[...Array(8)].map((a,c)=>(0,b.jsx)("div",{className:"absolute h-[1.5px] rounded-full",style:{top:`${12+10*c}%`,right:"-10%",width:`${20+c%3*15}%`,background:"linear-gradient(to left, transparent, var(--warning))",opacity:.3+c%3*.1,animation:`shipSpeedLine ${.8+c%4*.3}s ${.1*c}s ease-in-out infinite`}},c))}),(0,b.jsx)("div",{className:"relative px-3 py-2",children:(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("div",{className:`p-1 rounded-md transition-all duration-300 ${W?"bg-[var(--warning)] text-[var(--warning-muted)] shadow-md":"bg-[var(--app-shell-subtle)] text-[var(--app-shell-muted)]"}`,style:W?{animation:"shipPulse 2s ease-in-out infinite"}:{},children:(0,b.jsx)(C.Rocket,{size:14})}),(0,b.jsx)("span",{className:`text-sm font-semibold transition-colors duration-300 ${W?"text-[var(--warning)]":"text-[var(--foreground)]"}`,children:"Ship Mode"}),(0,b.jsx)("span",{className:`text-xs transition-colors duration-300 ${W?"text-[var(--warning)] opacity-60":"text-[var(--app-shell-muted)] opacity-60"}`,children:"|"}),(0,b.jsx)("span",{className:`text-xs font-medium transition-colors duration-300 ${W?"text-[var(--warning)] opacity-80":"text-[var(--app-shell-muted)]"}`,children:W?"Continuous execution is active for this thread":"Continuous execution stays off until you enable it"})]}),(0,b.jsx)("button",{type:"button",onClick:()=>X(!W),className:`relative inline-flex h-6 w-11 items-center rounded-full transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-[var(--warning)] focus:ring-offset-2 focus:ring-offset-[var(--background)] ${W?"bg-[var(--warning)]":"bg-[var(--app-shell-border-strong)]"}`,children:(0,b.jsx)("span",{className:`inline-block h-4 w-4 transform rounded-full bg-[var(--app-shell-elevated)] shadow-sm transition-transform duration-200 ${W?"translate-x-6":"translate-x-1"}`})})]})})]}),(0,b.jsxs)("div",{className:"p-1.5 transition-all",children:[aA.staged.length>0&&(0,b.jsx)("div",{className:"mx-2 mt-2 mb-1",children:(0,b.jsx)(z.AttachmentTray,{attachments:aA.staged,onRemove:aA.remove,onRetry:aA.retry})}),(0,b.jsxs)("div",{className:"p-2 relative",children:[(0,b.jsx)("input",{ref:ap,type:"file",multiple:!0,className:"hidden",onChange:a=>{a.target.files&&a.target.files.length>0&&(aA.stageFiles(a.target.files),a.target.value="")}}),(0,b.jsxs)("div",{className:"flex-1 relative",onClick:aE,children:[(0,b.jsx)(d.EditorContent,{editor:aD,className:"composer-editor"}),(0,b.jsx)(v.MentionPopover,{isOpen:aw.isOpen&&!ax.isOpen,suggestions:aw.filteredSuggestions,activeIndex:aw.activeIndex,listboxId:"composer-mention-listbox",optionIdPrefix:"composer-mention-option",onSelect:aF}),(0,b.jsx)(w.CommandPopover,{isOpen:ax.isOpen,commands:ax.filteredCommands,activeIndex:ax.activeIndex,listboxId:"composer-command-listbox",optionIdPrefix:"composer-command-option",onSelect:aJ}),(0,b.jsx)(x.FileMentionPopover,{isOpen:ay.isOpen,suggestions:ay.suggestions,activeIndex:ay.activeIndex,isLoading:ay.isLoading,error:ay.error,listboxId:"composer-file-mention-listbox",optionIdPrefix:"composer-file-mention-option",onSelect:a=>{"folder"===a.type?aH(a):aG(a)},onAttachContents:ay.onAttachContents}),(0,b.jsx)(y.ThreadMentionPopover,{isOpen:az.isOpen&&!ax.isOpen&&!ay.isOpen,suggestions:az.suggestions,activeIndex:az.activeIndex,listboxId:"composer-thread-mention-listbox",optionIdPrefix:"composer-thread-mention-option",onSelect:aI})]})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-t border-[var(--app-shell-border)] transition-colors",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("button",{type:"button",onClick:as,className:"p-1.5 text-[var(--app-shell-muted)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors","aria-label":"Attach file",title:"Attach file",children:(0,b.jsx)(B.Paperclip,{className:"h-4 w-4",strokeWidth:1.75})}),(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("span",{className:"text-[10px] font-semibold text-[var(--app-shell-muted)] uppercase tracking-wider mr-1",children:"Agents"}),(0,b.jsx)("div",{className:"flex items-center -space-x-1.5",children:0===L.length?(0,b.jsx)("span",{className:"text-[10px] font-medium text-[var(--app-shell-muted)]",children:"No agents"}):L.map(a=>(0,b.jsxs)("div",{role:"button",tabIndex:0,"aria-pressed":af===a.id,onClick:()=>ag(b=>b===a.id?null:a.id),onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),ag(b=>b===a.id?null:a.id))},className:`relative w-6 h-6 rounded-full bg-[var(--app-shell-subtle)] border-2 border-[var(--app-shell-elevated)] shadow-sm flex items-center justify-center overflow-visible shrink-0 transition-all cursor-pointer ${af===a.id?"-translate-y-0.5 ring-2 ring-[var(--ring)] ring-offset-1 ring-offset-[var(--background)]":"hover:-translate-y-0.5"}`,title:a.name,children:[(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:"w-full h-full rounded-full object-cover"}),ae&&(0,b.jsx)("span",{className:`absolute -bottom-0.5 -right-0.5 w-2 h-2 border border-[var(--app-shell-elevated)] rounded-full ${"queued"===ad?"bg-amber-400":"bg-emerald-400"}`})]},a.id))})]}),aO&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)]"}),(0,b.jsxs)("span",{className:"text-[10px] font-medium text-[var(--app-shell-muted)]",children:["Pinned: ",(0,b.jsx)("span",{className:"text-[var(--foreground)]",children:aO.name})]})]}),Y.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"w-px h-4 bg-[var(--app-shell-border)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsxs)("div",{className:"relative",ref:ao,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>an(a=>!a),className:"composer-repo-select-trigger","aria-haspopup":"listbox","aria-expanded":am,children:[(0,b.jsx)(D.FolderGit2,{className:"h-3.5 w-3.5",strokeWidth:1.75}),(0,b.jsx)("span",{children:"Folders"}),(0,b.jsx)(E.ChevronDown,{className:`h-3 w-3 transition-transform ${am?"rotate-180":""}`})]}),am&&(0,b.jsx)("div",{className:"composer-repo-dropdown",role:"listbox","aria-multiselectable":"true",children:Y.map(a=>{let c=aj.has(a.id);return(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":c,className:`composer-repo-dropdown__item ${c?"composer-repo-dropdown__item--selected":""}`,onClick:()=>al(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,b.jsx)("span",{className:`w-3.5 h-3.5 rounded border flex items-center justify-center shrink-0 transition-colors ${c?"bg-emerald-500 border-emerald-500 text-white":"border-[var(--app-shell-border-strong)]"}`,children:c&&(0,b.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,b.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"truncate",children:a.name})]},a.id)})})]}),(ab=(aa=Y.filter(a=>aj.has(a.id))).slice(0,1),ac=aa.length-1,(0,b.jsxs)(b.Fragment,{children:[ab.map(a=>(0,b.jsxs)("span",{className:"composer-repo-pill",title:a.path||a.name,children:[(0,b.jsx)(D.FolderGit2,{className:"h-3 w-3 shrink-0",strokeWidth:1.75}),(0,b.jsx)("span",{className:"composer-repo-pill__name",children:a.name}),(0,b.jsx)("button",{type:"button",className:"composer-repo-pill__remove",onClick:()=>al(b=>{let c=new Set(b);return c.delete(a.id),c}),"aria-label":`Remove ${a.name}`,children:(0,b.jsx)(F.X,{className:"h-3 w-3"})})]},a.id)),ac>0&&(0,b.jsxs)("span",{className:"composer-repo-pill composer-repo-pill--overflow",children:["+",ac]})]}))]})]})]}),ae&&!K?(0,b.jsx)("button",{type:"button",onClick:H,className:"flex items-center gap-2 bg-[var(--destructive-muted)] text-[var(--destructive)] border border-[var(--status-failed-border)] px-4 py-1.5 rounded-lg text-sm font-semibold hover:opacity-90 transition-colors",children:"Stop"}):(0,b.jsxs)("button",{type:"button",onClick:aK,disabled:aN&&!aA.hasUploaded&&!aB.hasFilePaths||aM,className:"flex items-center gap-2 bg-[var(--primary)] hover:bg-[var(--primary-hover)] text-[var(--primary-foreground)] px-4 py-1.5 rounded-lg text-sm font-semibold transition-colors disabled:opacity-50 disabled:cursor-not-allowed shadow-sm",children:["Send",(0,b.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,b.jsx)("line",{x1:"22",y1:"2",x2:"11",y2:"13"}),(0,b.jsx)("polygon",{points:"22 2 15 22 11 13 2 9 22 2"})]})]})]})]})]})}),(0,b.jsxs)("div",{className:"mt-3 flex items-center justify-between text-xs text-[var(--app-shell-muted)] px-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("div",{className:`w-1.5 h-1.5 rounded-full ${"working"===ad?"bg-emerald-400 animate-pulse":"queued"===ad?"bg-amber-400":"bg-emerald-400"}`}),(0,b.jsx)("span",{children:"working"===ad?"Working":"queued"===ad?"Queued":"Ready"})]}),(0,b.jsxs)("span",{children:["Press ",(0,b.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] text-[var(--app-shell-muted)] shadow-sm text-[10px]",children:"Enter"})," to send, ",(0,b.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] text-[var(--app-shell-muted)] shadow-sm text-[10px]",children:"Shift"})," + ",(0,b.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-[var(--app-shell-elevated)] border border-[var(--app-shell-border)] text-[var(--app-shell-muted)] shadow-sm text-[10px]",children:"Enter"})," for new line"]})]})]})})}])}];
|
|
10
10
|
|
|
11
11
|
//# sourceMappingURL=apps_local_0_ac-.f._.js.map
|