@chorus-aidlc/chorus 0.14.6 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-build-manifest.json +448 -402
- package/.next/standalone/.next/app-path-routes-manifest.json +46 -41
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +15 -15
- package/.next/standalone/.next/routes-manifest.json +16 -0
- package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +3 -3
- package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
- package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies.html +2 -2
- package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin.html +2 -2
- package/.next/standalone/.next/server/app/admin.rsc +2 -2
- package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
- package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/control/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js +1 -0
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/executions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/resume/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/resume/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/transcript/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js +1 -0
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js +1 -0
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
- package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/route.js +1 -1
- package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/conversational/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mcp/route.js +2 -2
- package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
- package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
- package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js +1 -0
- package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js +1 -0
- package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/projects/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/index.html +2 -2
- package/.next/standalone/.next/server/app/index.rsc +2 -2
- package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/admin.html +2 -2
- package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
- package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/callback.html +2 -2
- package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
- package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
- package/.next/standalone/.next/server/app/login.html +2 -2
- package/.next/standalone/.next/server/app/login.rsc +2 -2
- package/.next/standalone/.next/server/app/onboarding/page.js +1 -1
- package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding.html +2 -2
- package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects.html +2 -2
- package/.next/standalone/.next/server/app/projects.rsc +4 -4
- package/.next/standalone/.next/server/app/settings.html +2 -2
- package/.next/standalone/.next/server/app/settings.rsc +4 -4
- package/.next/standalone/.next/server/app-paths-manifest.json +46 -41
- package/.next/standalone/.next/server/chunks/1114.js +1 -1
- package/.next/standalone/.next/server/chunks/1318.js +1 -1
- package/.next/standalone/.next/server/chunks/1524.js +1 -0
- package/.next/standalone/.next/server/chunks/1559.js +2 -2
- package/.next/standalone/.next/server/chunks/1722.js +1 -0
- package/.next/standalone/.next/server/chunks/{2789.js → 2547.js} +3 -3
- package/.next/standalone/.next/server/chunks/2572.js +2 -0
- package/.next/standalone/.next/server/chunks/2618.js +1 -1
- package/.next/standalone/.next/server/chunks/2961.js +1 -1
- package/.next/standalone/.next/server/chunks/330.js +1 -0
- package/.next/standalone/.next/server/chunks/3525.js +1 -0
- package/.next/standalone/.next/server/chunks/4827.js +1 -1
- package/.next/standalone/.next/server/chunks/5245.js +1 -1
- package/.next/standalone/.next/server/chunks/6113.js +1 -1
- package/.next/standalone/.next/server/chunks/6506.js +4 -4
- package/.next/standalone/.next/server/chunks/6515.js +2 -2
- package/.next/standalone/.next/server/chunks/7368.js +1 -1
- package/.next/standalone/.next/server/chunks/7530.js +1 -1
- package/.next/standalone/.next/server/chunks/8454.js +1 -1
- package/.next/standalone/.next/server/chunks/8540.js +1 -1
- package/.next/standalone/.next/server/chunks/920.js +1 -1
- package/.next/standalone/.next/server/chunks/9213.js +1 -1
- package/.next/standalone/.next/server/chunks/9378.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/.next/server/middleware-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/11595.f1e55e827d67f2bc.js +1 -0
- package/.next/standalone/.next/static/chunks/18351-12dc856208d79e10.js +1 -0
- package/.next/standalone/.next/static/chunks/22987-8fd965ab4ff87546.js +1 -0
- package/.next/standalone/.next/static/chunks/{33456.c48dc366aa90b234.js → 33456.4817cdce41593c7e.js} +1 -1
- package/.next/standalone/.next/static/chunks/37938-0b9a2b891c04b166.js +1 -0
- package/.next/standalone/.next/static/chunks/4340-a33120fb742af57e.js +1 -0
- package/.next/standalone/.next/static/chunks/4860.bb2749ebaf8eb15f.js +1 -0
- package/.next/standalone/.next/static/chunks/53402-be6989c3f3968e7b.js +1 -0
- package/.next/standalone/.next/static/chunks/6698-1c55791b2d0820d5.js +1 -0
- package/.next/standalone/.next/static/chunks/68326-61feeb2f6cddd338.js +1 -0
- package/.next/standalone/.next/static/chunks/72974-714dcca796895c40.js +1 -0
- package/.next/standalone/.next/static/chunks/75137-c9e8422c9d4e1f52.js +1 -0
- package/.next/standalone/.next/static/chunks/7777-13466138aa42bd5f.js +1 -0
- package/.next/standalone/.next/static/chunks/78917-f91904c6c2d12dab.js +1 -0
- package/.next/standalone/.next/static/chunks/80748-e971c5a5d6ef967d.js +1 -0
- package/.next/standalone/.next/static/chunks/94426-39b6da238425f9b7.js +10 -0
- package/.next/standalone/.next/static/chunks/94470-0c74a933d5a2902f.js +1 -0
- package/.next/standalone/.next/static/chunks/94643-ba1ebff5769d2b50.js +1 -0
- package/.next/standalone/.next/static/chunks/99373.ae03246bdf49c700.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-177a3fa88be94b4a.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-7462c5eb92130796.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-03b8510273520572.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/{page-d6c226fd56b5ebb5.js → page-4a8ac49308a4e23b.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-03408be00dc4822b.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-be353989e67e7b55.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-ebf4c28014025b7b.js → page-c70af8cac7bdc483.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-bbde7e85e3388813.js → page-715b000c156a080c.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-6df01fa989cca27b.js → page-7a5ef281f6819ed4.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-e786a59c24eb5bda.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/admin/login/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/admin/session/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agents/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/api-keys/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/me/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/comments/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/connection-heartbeat/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/directory-request/report/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-directory-requests/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-directory-requests/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/events/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/health/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/mcp/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/mentionables/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-groups/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-visits/pin/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-visits/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-visits/visit/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/agent-cwds/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/agent-cwd-options/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/references/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/search/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/session/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-559ec0f534a12956.js +1 -0
- package/.next/standalone/.next/static/chunks/app/onboarding/page-df7c97cefb508201.js +1 -0
- package/.next/standalone/.next/static/chunks/{webpack-af2cb28ef7bbd7c2.js → webpack-84e2db1b2418c974.js} +1 -1
- package/.next/standalone/.next/static/css/ef995b001437e3ef.css +1 -0
- package/.next/standalone/.next/static/oHZy43Le4b2I7pg7_cQ0Z/_buildManifest.js +1 -0
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
- package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
- package/README.ja.md +2 -0
- package/README.ko.md +2 -0
- package/README.md +3 -0
- package/README.zh.md +2 -0
- package/cli/client-args.mjs +8 -0
- package/cli/codex-spawner.mjs +5 -5
- package/cli/control-handler.mjs +31 -2
- package/cli/daemon-config.mjs +35 -0
- package/cli/daemon-install-config.mjs +26 -0
- package/cli/daemon-rest-client.mjs +27 -2
- package/cli/daemon.mjs +110 -20
- package/cli/directory-discovery.mjs +184 -0
- package/cli/event-router.mjs +12 -4
- package/cli/turn-reporter.mjs +11 -3
- package/cli/waker.mjs +35 -8
- package/package.json +1 -1
- package/prisma/migrations/20260731093000_add_daemon_backend_session_id/migration.sql +1 -0
- package/prisma/migrations/20260801113000_add_project_agent_cwd_discovery/migration.sql +50 -0
- package/prisma/migrations/20260802140000_add_assignment_runtime_cwd_snapshot/migration.sql +7 -0
- package/prisma/schema.prisma +134 -60
- package/.next/standalone/.next/server/chunks/2004.js +0 -1
- package/.next/standalone/.next/server/chunks/2112.js +0 -1
- package/.next/standalone/.next/server/chunks/3219.js +0 -2
- package/.next/standalone/.next/static/chunks/11595.c580c5690d176cce.js +0 -1
- package/.next/standalone/.next/static/chunks/14160-7bcee6e9e8bc5233.js +0 -1
- package/.next/standalone/.next/static/chunks/15653-31c406c41bf58048.js +0 -1
- package/.next/standalone/.next/static/chunks/18351-2a408c4f57ddb3a7.js +0 -1
- package/.next/standalone/.next/static/chunks/24870-5b0be64361f5ef70.js +0 -1
- package/.next/standalone/.next/static/chunks/26232-110019cebde19691.js +0 -1
- package/.next/standalone/.next/static/chunks/33806-cb339e86820a87c4.js +0 -1
- package/.next/standalone/.next/static/chunks/37035-514bbb31cd13bda1.js +0 -1
- package/.next/standalone/.next/static/chunks/37938-c09acf52d7f85cb4.js +0 -1
- package/.next/standalone/.next/static/chunks/39479-5af3460208d8cc56.js +0 -1
- package/.next/standalone/.next/static/chunks/4860.baf6a285246198af.js +0 -1
- package/.next/standalone/.next/static/chunks/60178-d6276df1c07d7735.js +0 -10
- package/.next/standalone/.next/static/chunks/68326-924445654ed47e6f.js +0 -1
- package/.next/standalone/.next/static/chunks/78917-1498676a1ffe5ded.js +0 -1
- package/.next/standalone/.next/static/chunks/94470-1076452151689267.js +0 -1
- package/.next/standalone/.next/static/chunks/94643-7c7f2efab0640658.js +0 -1
- package/.next/standalone/.next/static/chunks/99373.ad871bd0bbfc5eb7.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-78259279cf6c6919.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-2af5f2f159c8e32b.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-59dcf0ba7ce877ec.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-af35d50848f01875.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-cb6fdf592863833c.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-e60bc39bf2957f77.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/login/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/session/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agents/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/api-keys/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/me/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/comments/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/connection-heartbeat/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/events/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/health/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/mcp/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/mentionables/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-groups/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-visits/pin/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-visits/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-visits/visit/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/references/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/search/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/session/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-8cf720e8efb6ac7d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/onboarding/page-006bf9e9d6a991f1.js +0 -1
- package/.next/standalone/.next/static/css/f46eab37c942ff33.css +0 -1
- package/.next/standalone/.next/static/t-ZaS6bNyv62NUlewVISp/_buildManifest.js +0 -1
- /package/.next/standalone/.next/static/{t-ZaS6bNyv62NUlewVISp → oHZy43Le4b2I7pg7_cQ0Z}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=1559,exports.ids=[1559],exports.modules={10174:(a,b,c)=>{function d(a){if(!a)return{pinnedHost:null,pinnedCwd:null};let b=new URLSearchParams(a),c=b.has("cwd"),d=b.has("host");if(!c&&!d)return{pinnedHost:null,pinnedCwd:null};let e=b.get("cwd")??"",f=b.get("host");return{pinnedCwd:c&&""!==e?e:null,pinnedHost:d?f??"":null}}function e(a,b,c,d,e){return`@[${a}](${b}:${c}${function(a,b){if(null==a&&null==b)return"";let c=a=>encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"),d=[];return d.push(`cwd=${null==b?"":c(b)}`),null!=a&&d.push(`host=${c(a)}`),`?${d.join("&")}`}(d,e)})`}c.d(b,{$v:()=>e,vE:()=>d})},11573:(a,b,c)=>{c.d(b,{j:()=>e});let d=["#E06C75","#E5C07B","#98C379","#56B6C2","#61AFEF","#C678DD","#D19A66","#BE5046","#7EC8E3","#C3E88D","#F78C6C","#A9DC76"];function e(a){let b=function(a){let b=0;for(let c=0;c<a.length;c++)b=(b<<5)-b+a.charCodeAt(c)|0;return Math.abs(b)}(a)%d.length;return d[b]}},22727:(a,b,c)=>{c.d(b,{D:()=>h});var d=c(10837),e=c(90061),f=c(11573),g=c(16235);function h({entityType:a,entityUuid:b,subEntityType:c,subEntityUuid:g,children:h,badgeInside:j}){let{getPresence:k}=(0,e.xQ)(),l=k(a,b,c,g),m=l.length>0,n=m&&l.some(a=>"mutate"===a.action),o=m?n?l.find(a=>"mutate"===a.action):l[l.length-1]:null,p=o?(0,f.j)(o.agentName):"transparent";return(0,d.jsxs)("div",{className:"relative",style:m?{outline:`2px ${n?"solid":"dashed"} ${p}`,outlineOffset:"-2px",borderRadius:"var(--radius)"}:void 0,children:[m&&(0,d.jsxs)("div",{className:`absolute flex gap-1 z-10 justify-end ${j?"top-0.5 right-1.5 max-w-[70%]":"-top-2.5 right-2 max-w-[80%]"}`,children:[l.slice(0,3).map(a=>(0,d.jsx)(i,{entry:a},a.agentUuid)),l.length>3&&(0,d.jsxs)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white bg-gray-500 whitespace-nowrap",children:["+",l.length-3]})]}),h]})}function i({entry:a}){let b=(0,f.j)(a.agentName);return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white whitespace-nowrap animate-in fade-in duration-300 ease-out sm:text-[11px] sm:px-2",style:{backgroundColor:b},children:[(0,d.jsx)(g.A,{className:"h-2.5 w-2.5"}),a.agentName]})}},24433:(a,b,c)=>{c.d(b,{c5:()=>v});var d=c(10837),e=c(21968),f=c(87864),g=c(45150),h=c(49101),i=c(9222),j=c(96307),k=c(54722),l=c(42087),m=c(10174),n=c(23871),o=c(11568),p=c(42424);let q=h.A.extend({addAttributes(){return{...this.parent?.(),mentionType:{default:"user",parseHTML:a=>a.getAttribute("data-mention-type")||"user",renderHTML:a=>({"data-mention-type":a.mentionType||"user"})},pinnedHost:{default:null,parseHTML:a=>a.getAttribute("data-pinned-host"),renderHTML:a=>null==a.pinnedHost?{}:{"data-pinned-host":String(a.pinnedHost)}},pinnedCwd:{default:null,parseHTML:a=>a.getAttribute("data-pinned-cwd"),renderHTML:a=>null==a.pinnedCwd?{}:{"data-pinned-cwd":String(a.pinnedCwd)}}}}});function r(a){let b=a.getJSON();return b.content?b.content.map(a=>(function a(b){if("mention"===b.type){let a=b.attrs;return a?(0,m.$v)(a.label||a.id,a.mentionType||"user",a.id,a.pinnedHost??null,a.pinnedCwd??null):""}if("text"===b.type)return b.text||"";if("hardBreak"===b.type)return"\n";let c=b.content;return c?c.map(a).join(""):""})(a)).join("\n"):""}function s(a){if(!a)return{type:"doc",content:[{type:"paragraph"}]};let b=/@\[([^\]]+)\]\((user|agent):([a-f0-9-]+)(?:\?([^)]*))?\)/g;return{type:"doc",content:a.split("\n").map(a=>{let c,d=[],e=0,f=RegExp(b.source,"g");for(;null!==(c=f.exec(a));){c.index>e&&d.push({type:"text",text:a.slice(e,c.index)});let{pinnedHost:b,pinnedCwd:f}=(0,m.vE)(c[4]);d.push({type:"mention",attrs:{id:c[3],label:c[1],mentionType:c[2],pinnedHost:b,pinnedCwd:f}}),e=c.index+c[0].length}return e<a.length&&d.push({type:"text",text:a.slice(e)}),{type:"paragraph",content:d.length>0?d:void 0}})}}function t(a,b,c,d,e,f,g){if(e.innerHTML="",b){let a=document.createElement("div");a.className="flex items-center justify-center py-3 px-4",a.innerHTML='<div class="h-4 w-4 animate-spin rounded-full border-2 border-[#9A9A9A] border-t-transparent"></div>',e.appendChild(a);return}if(0===a.length){let a=document.createElement("div");a.className="py-2 px-3 text-xs text-muted-foreground",a.textContent="No results",e.appendChild(a);return}let h=document.createElement("div");h.className="py-1";let i=0,j=a=>{if(g)return void g(a,c);c({id:a.uuid,label:a.name,mentionType:a.type})},k=()=>{h.innerHTML="",a.forEach((a,b)=>{let c=document.createElement("button");c.type="button",c.className=`flex w-full items-center gap-2.5 px-3 py-1.5 text-left text-sm transition-colors ${b===i?"bg-background text-foreground":"text-muted-foreground hover:bg-background"}`,c.onclick=()=>j(a);let d=document.createElement("div");d.className="relative shrink-0";let e=document.createElement("div");if(e.className=`flex h-6 w-6 items-center justify-center rounded-full ${"agent"===a.type?"bg-primary text-white":"bg-border text-muted-foreground"}`,e.innerHTML="agent"===a.type?'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 8V4H8"/><rect width="16" height="12" x="4" y="8" rx="2"/><path d="M2 14h2"/><path d="M20 14h2"/><path d="M15 13v2"/><path d="M9 13v2"/></svg>':'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',d.appendChild(e),"agent"===a.type&&a.online){let a=document.createElement("span");a.className="absolute -bottom-0.5 -right-0.5 h-2 w-2 rounded-full bg-[#22C55E] ring-2 ring-white",a.title=f.online,d.appendChild(a)}let g=document.createElement("div");g.className="min-w-0 flex-1";let k=document.createElement("div");if(k.className="truncate text-xs font-medium",k.textContent=a.name,g.appendChild(k),a.email){let b=document.createElement("div");b.className="truncate text-[10px] text-muted-foreground",b.textContent=a.email,g.appendChild(b)}if("agent"===a.type&&a.online){let b=a.activeCount??0,c=document.createElement("div");b>0?(c.className="mt-0.5 truncate text-[10px] font-medium text-[#15803D] dark:text-[#4FD07A]",c.textContent=`▶ ${f.activeCount(b)}`):(c.className="mt-0.5 truncate text-[10px] text-muted-foreground",c.textContent=f.idle),g.appendChild(c)}c.appendChild(d),c.appendChild(g),h.appendChild(c)})};k(),e.appendChild(h),d.current={onKeyDown:({event:b})=>!(0,l.P)(b)&&("ArrowUp"===b.key?(i=i<=0?a.length-1:i-1,k(),!0):"ArrowDown"===b.key?(i=i>=a.length-1?0:i+1,k(),!0):"Enter"===b.key?(a[i]&&j(a[i]),!0):"Escape"===b.key)}}function u({open:a,agentName:b,instances:c,onConfirm:f,onCancel:g}){let h=(0,i.c)("mentionInstance"),[j,k]=(0,e.useState)(null),m=new Set(c.map(a=>a.host)).size;return(0,d.jsx)(o.lG,{open:a,onOpenChange:a=>{a||g()},children:(0,d.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,d.jsxs)(o.c7,{className:"shrink-0",children:[(0,d.jsx)(o.L3,{children:h("title")}),(0,d.jsx)(o.rr,{children:h("subtitle",{name:b,count:c.length,hosts:m})})]}),(0,d.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:a=>{!("Enter"!==a.key||(0,l.P)(a))&&j&&(a.preventDefault(),f(j))},children:(0,d.jsx)(n.O,{instances:c,selectedConnectionUuid:j?.connectionUuid??null,onSelect:k,ariaLabel:h("title")})}),(0,d.jsxs)(o.Es,{className:"shrink-0",children:[(0,d.jsx)(p.$,{variant:"ghost",onClick:g,children:h("cancel")}),(0,d.jsx)(p.$,{disabled:!j,onClick:()=>{j&&f(j)},children:h("confirm")})]})]})})}let v=(0,e.forwardRef)(({value:a,onChange:b,placeholder:c,className:h,disabled:m,onSubmit:n,entityType:o,entityUuid:p},v)=>{let w=(0,e.useRef)([]),x=(0,e.useRef)(!1),y=(0,e.useRef)(null),z=(0,e.useRef)(null),A=(0,e.useRef)(null),B=(0,e.useRef)(null),[,C]=(0,e.useState)(0),D=(0,e.useRef)(!1),E=(0,i.c)("mention"),F=(0,e.useRef)({online:"",offline:"",idle:"",activeCount:()=>""});F.current={online:E("online"),offline:E("offline"),idle:E("idle"),activeCount:a=>E("activeCount",{count:a})};let G=function(a,b){let c=(0,e.useRef)(null),d=(0,e.useRef)(a);return d.current=a,(0,e.useCallback)(a=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>d.current(a),250)},[250])}((0,e.useCallback)(async a=>{x.current=!0,C(a=>a+1);try{let b=`/api/mentionables?q=${encodeURIComponent(a)}&limit=10&withInstances=1`;o&&p&&(b+=`&entityType=${encodeURIComponent(o)}&entityUuid=${encodeURIComponent(p)}`);let c=await fetch(b);if(c.ok){let a=await c.json();a.success&&(w.current=a.data)}}catch{w.current=[]}finally{x.current=!1,C(a=>a+1)}},[o,p]),250),[H,I]=(0,e.useState)(null),J=(0,e.useCallback)((a,b,c)=>{b({id:a.uuid,label:a.name,mentionType:a.type,pinnedHost:c?c.host:null,pinnedCwd:c?c.cwd:null})},[]),K=(0,e.useRef)(()=>{});K.current=(a,b)=>{let c=function(a){if(a.isIdeaAssignee&&a.ideaPin)return{kind:"insert",pin:{host:a.ideaPin.host,cwd:a.ideaPin.cwd}};let b="agent"===a.type?(a.instances??[]).filter(a=>"online"===a.effectiveStatus):[];return b.length>=2?{kind:"pick",onlineInstances:b}:1===b.length?{kind:"insert",pin:b[0]}:{kind:"insert",pin:null}}(a);if("pick"===c.kind)return void I({item:a,onlineInstances:c.onlineInstances,command:b});J(a,b,c.pin??void 0)};let L=(0,e.useCallback)((a,b)=>K.current(a,b),[]);(0,e.useEffect)(()=>{A.current&&B.current&&t(w.current,x.current,B.current,y,A.current,F.current,L)});let M=(0,f.hG)({immediatelyRender:!1,extensions:[g.A.configure({heading:!1,blockquote:!1,codeBlock:!1,bulletList:!1,orderedList:!1,listItem:!1,horizontalRule:!1}),q.configure({HTMLAttributes:{class:"text-blue-600 font-medium"},renderText:({node:a})=>`@${a.attrs.label??a.attrs.id}`,suggestion:{char:"@",allowSpaces:!0,items:({query:a})=>(G(a),w.current),render:()=>({onStart:a=>{let b=document.createElement("div");if(b.className="z-[100] rounded-md border border-border bg-card shadow-md min-w-[200px] max-w-[300px] overflow-hidden",A.current=b,B.current=a.command,a.clientRect){let c="function"==typeof a.clientRect?a.clientRect():a.clientRect;c&&(b.style.position="fixed",b.style.left=`${c.left}px`,window.innerHeight-c.bottom<220?b.style.bottom=`${window.innerHeight-c.top+4}px`:b.style.top=`${c.bottom+4}px`)}(z.current??document.body).appendChild(b),t(w.current,x.current,a.command,y,b,F.current,L)},onUpdate:a=>{if(B.current=a.command,A.current&&a.clientRect){let b="function"==typeof a.clientRect?a.clientRect():a.clientRect;b&&(A.current.style.left=`${b.left}px`,window.innerHeight-b.bottom<220?(A.current.style.top="",A.current.style.bottom=`${window.innerHeight-b.top+4}px`):(A.current.style.bottom="",A.current.style.top=`${b.bottom+4}px`))}A.current&&t(w.current,x.current,a.command,y,A.current,F.current,L)},onKeyDown:a=>!!y.current&&y.current.onKeyDown(a),onExit:()=>{A.current?.remove(),A.current=null,B.current=null,w.current=[],x.current=!1}})}})],content:s(a),editable:!m,editorProps:{attributes:{class:(0,j.cn)("min-h-[36px] max-h-[120px] overflow-y-auto px-3 py-2 text-sm outline-none","prose prose-sm max-w-none [&_p]:my-0"),"data-placeholder":c||""},handleKeyDown:(a,b)=>!(0,l.P)(b)&&"Enter"===b.key&&!b.shiftKey&&!A.current&&!!n&&(b.preventDefault(),n(),!0)},onUpdate:({editor:a})=>{D.current=!0,b(r(a))}});return(0,e.useEffect)(()=>{if(!M||D.current){D.current=!1;return}r(M)!==a&&M.commands.setContent(s(a))},[a,M]),(0,e.useEffect)(()=>{M&&M.setEditable(!m)},[m,M]),(0,e.useImperativeHandle)(v,()=>({focus:()=>M?.commands.focus(),clear:()=>{M?.commands.clearContent(),b("")}})),(0,d.jsxs)("div",{ref:z,className:(0,j.cn)("relative rounded-md border border-input bg-transparent shadow-xs transition-[color,box-shadow]","focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",m&&"cursor-not-allowed opacity-50",h),children:[(0,d.jsx)(f.$Z,{editor:M}),(0,d.jsx)(u,{open:null!==H,agentName:H?.item.name??"",instances:H?.onlineInstances??[],onConfirm:a=>{!function(a,b,c){c.close(),a&&c.defer(()=>{try{c.focusEditor(),c.insert(a,b)}catch(a){c.onError(a)}})}(H,a,{close:()=>I(null),insert:(a,b)=>J(a.item,a.command,b),defer:a=>requestAnimationFrame(a),focusEditor:()=>M?.commands.focus(),onError:a=>k.q.error("MentionEditor: cwd-pinned mention insert failed",a)})},onCancel:()=>I(null)}),(0,d.jsx)("style",{children:`
|
|
1
|
+
"use strict";exports.id=1559,exports.ids=[1559],exports.modules={10174:(a,b,c)=>{function d(a){if(!a)return{pinnedHost:null,pinnedCwd:null};let b=new URLSearchParams(a),c=b.has("cwd"),d=b.has("host");if(!c&&!d)return{pinnedHost:null,pinnedCwd:null};let e=b.get("cwd")??"",f=b.get("host"),g={pinnedCwd:c&&""!==e?e:null,pinnedHost:d?f??"":null};return"1"===b.get("runtime")&&(g.runtimeCwd=!0),g}function e(a,b,c,d,f,g=!1){return`@[${a}](${b}:${c}${function(a,b,c=!1){if(null==a&&null==b)return"";let d=a=>encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"),e=[];return e.push(`cwd=${null==b?"":d(b)}`),null!=a&&e.push(`host=${d(a)}`),c&&e.push("runtime=1"),`?${e.join("&")}`}(d,f,g)})`}c.d(b,{$v:()=>e,vE:()=>d})},11573:(a,b,c)=>{c.d(b,{j:()=>e});let d=["#E06C75","#E5C07B","#98C379","#56B6C2","#61AFEF","#C678DD","#D19A66","#BE5046","#7EC8E3","#C3E88D","#F78C6C","#A9DC76"];function e(a){let b=function(a){let b=0;for(let c=0;c<a.length;c++)b=(b<<5)-b+a.charCodeAt(c)|0;return Math.abs(b)}(a)%d.length;return d[b]}},22727:(a,b,c)=>{c.d(b,{D:()=>h});var d=c(10837),e=c(90061),f=c(11573),g=c(16235);function h({entityType:a,entityUuid:b,subEntityType:c,subEntityUuid:g,children:h,badgeInside:j}){let{getPresence:k}=(0,e.xQ)(),l=k(a,b,c,g),m=l.length>0,n=m&&l.some(a=>"mutate"===a.action),o=m?n?l.find(a=>"mutate"===a.action):l[l.length-1]:null,p=o?(0,f.j)(o.agentName):"transparent";return(0,d.jsxs)("div",{className:"relative",style:m?{outline:`2px ${n?"solid":"dashed"} ${p}`,outlineOffset:"-2px",borderRadius:"var(--radius)"}:void 0,children:[m&&(0,d.jsxs)("div",{className:`absolute flex gap-1 z-10 justify-end ${j?"top-0.5 right-1.5 max-w-[70%]":"-top-2.5 right-2 max-w-[80%]"}`,children:[l.slice(0,3).map(a=>(0,d.jsx)(i,{entry:a},a.agentUuid)),l.length>3&&(0,d.jsxs)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white bg-gray-500 whitespace-nowrap",children:["+",l.length-3]})]}),h]})}function i({entry:a}){let b=(0,f.j)(a.agentName);return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white whitespace-nowrap animate-in fade-in duration-300 ease-out sm:text-[11px] sm:px-2",style:{backgroundColor:b},children:[(0,d.jsx)(g.A,{className:"h-2.5 w-2.5"}),a.agentName]})}},24433:(a,b,c)=>{c.d(b,{c5:()=>v});var d=c(10837),e=c(21968),f=c(87864),g=c(45150),h=c(49101),i=c(9222),j=c(96307),k=c(54722),l=c(42087),m=c(10174),n=c(23871),o=c(11568),p=c(42424);let q=h.A.extend({addAttributes(){return{...this.parent?.(),mentionType:{default:"user",parseHTML:a=>a.getAttribute("data-mention-type")||"user",renderHTML:a=>({"data-mention-type":a.mentionType||"user"})},pinnedHost:{default:null,parseHTML:a=>a.getAttribute("data-pinned-host"),renderHTML:a=>null==a.pinnedHost?{}:{"data-pinned-host":String(a.pinnedHost)}},pinnedCwd:{default:null,parseHTML:a=>a.getAttribute("data-pinned-cwd"),renderHTML:a=>null==a.pinnedCwd?{}:{"data-pinned-cwd":String(a.pinnedCwd)}},runtimeCwd:{default:!1,parseHTML:a=>"true"===a.getAttribute("data-runtime-cwd"),renderHTML:a=>a.runtimeCwd?{"data-runtime-cwd":"true"}:{}}}}});function r(a){let b=a.getJSON();return b.content?b.content.map(a=>(function a(b){if("mention"===b.type){let a=b.attrs;return a?(0,m.$v)(a.label||a.id,a.mentionType||"user",a.id,a.pinnedHost??null,a.pinnedCwd??null,!0===a.runtimeCwd):""}if("text"===b.type)return b.text||"";if("hardBreak"===b.type)return"\n";let c=b.content;return c?c.map(a).join(""):""})(a)).join("\n"):""}function s(a){if(!a)return{type:"doc",content:[{type:"paragraph"}]};let b=/@\[([^\]]+)\]\((user|agent):([a-f0-9-]+)(?:\?([^)]*))?\)/g;return{type:"doc",content:a.split("\n").map(a=>{let c,d=[],e=0,f=RegExp(b.source,"g");for(;null!==(c=f.exec(a));){c.index>e&&d.push({type:"text",text:a.slice(e,c.index)});let{pinnedHost:b,pinnedCwd:f,runtimeCwd:g}=(0,m.vE)(c[4]);d.push({type:"mention",attrs:{id:c[3],label:c[1],mentionType:c[2],pinnedHost:b,pinnedCwd:f,runtimeCwd:!0===g}}),e=c.index+c[0].length}return e<a.length&&d.push({type:"text",text:a.slice(e)}),{type:"paragraph",content:d.length>0?d:void 0}})}}function t(a,b,c,d,e,f,g){if(e.innerHTML="",b){let a=document.createElement("div");a.className="flex items-center justify-center py-3 px-4",a.innerHTML='<div class="h-4 w-4 animate-spin rounded-full border-2 border-[#9A9A9A] border-t-transparent"></div>',e.appendChild(a);return}if(0===a.length){let a=document.createElement("div");a.className="py-2 px-3 text-xs text-muted-foreground",a.textContent="No results",e.appendChild(a);return}let h=document.createElement("div");h.className="py-1";let i=0,j=a=>{if(g)return void g(a,c);c({id:a.uuid,label:a.name,mentionType:a.type})},k=()=>{h.innerHTML="",a.forEach((a,b)=>{let c=document.createElement("button");c.type="button",c.className=`flex w-full items-center gap-2.5 px-3 py-1.5 text-left text-sm transition-colors ${b===i?"bg-background text-foreground":"text-muted-foreground hover:bg-background"}`,c.onclick=()=>j(a);let d=document.createElement("div");d.className="relative shrink-0";let e=document.createElement("div");if(e.className=`flex h-6 w-6 items-center justify-center rounded-full ${"agent"===a.type?"bg-primary text-white":"bg-border text-muted-foreground"}`,e.innerHTML="agent"===a.type?'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 8V4H8"/><rect width="16" height="12" x="4" y="8" rx="2"/><path d="M2 14h2"/><path d="M20 14h2"/><path d="M15 13v2"/><path d="M9 13v2"/></svg>':'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',d.appendChild(e),"agent"===a.type&&a.online){let a=document.createElement("span");a.className="absolute -bottom-0.5 -right-0.5 h-2 w-2 rounded-full bg-[#22C55E] ring-2 ring-white",a.title=f.online,d.appendChild(a)}let g=document.createElement("div");g.className="min-w-0 flex-1";let k=document.createElement("div");if(k.className="truncate text-xs font-medium",k.textContent=a.name,g.appendChild(k),a.email){let b=document.createElement("div");b.className="truncate text-[10px] text-muted-foreground",b.textContent=a.email,g.appendChild(b)}if("agent"===a.type&&a.online){let b=a.activeCount??0,c=document.createElement("div");b>0?(c.className="mt-0.5 truncate text-[10px] font-medium text-[#15803D] dark:text-[#4FD07A]",c.textContent=`▶ ${f.activeCount(b)}`):(c.className="mt-0.5 truncate text-[10px] text-muted-foreground",c.textContent=f.idle),g.appendChild(c)}c.appendChild(d),c.appendChild(g),h.appendChild(c)})};k(),e.appendChild(h),d.current={onKeyDown:({event:b})=>!(0,l.P)(b)&&("ArrowUp"===b.key?(i=i<=0?a.length-1:i-1,k(),!0):"ArrowDown"===b.key?(i=i>=a.length-1?0:i+1,k(),!0):"Enter"===b.key?(a[i]&&j(a[i]),!0):"Escape"===b.key)}}function u({open:a,agentName:b,instances:c,onConfirm:f,onCancel:g}){let h=(0,i.c)("mentionInstance"),[j,k]=(0,e.useState)(null),m=new Set(c.map(a=>a.host)).size;return(0,d.jsx)(o.lG,{open:a,onOpenChange:a=>{a||g()},children:(0,d.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,d.jsxs)(o.c7,{className:"shrink-0",children:[(0,d.jsx)(o.L3,{children:h("title")}),(0,d.jsx)(o.rr,{children:h("subtitle",{name:b,count:c.length,hosts:m})})]}),(0,d.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:a=>{!("Enter"!==a.key||(0,l.P)(a))&&j&&(a.preventDefault(),f(j))},children:(0,d.jsx)(n.O,{instances:c,selectedConnectionUuid:j?.connectionUuid??null,onSelect:k,ariaLabel:h("title")})}),(0,d.jsxs)(o.Es,{className:"shrink-0",children:[(0,d.jsx)(p.$,{variant:"ghost",onClick:g,children:h("cancel")}),(0,d.jsx)(p.$,{disabled:!j,onClick:()=>{j&&f(j)},children:h("confirm")})]})]})})}let v=(0,e.forwardRef)(({value:a,onChange:b,placeholder:c,className:h,disabled:m,onSubmit:n,entityType:o,entityUuid:p},v)=>{let w=(0,e.useRef)([]),x=(0,e.useRef)(!1),y=(0,e.useRef)(null),z=(0,e.useRef)(null),A=(0,e.useRef)(null),B=(0,e.useRef)(null),[,C]=(0,e.useState)(0),D=(0,e.useRef)(!1),E=(0,i.c)("mention"),F=(0,e.useRef)({online:"",offline:"",idle:"",activeCount:()=>""});F.current={online:E("online"),offline:E("offline"),idle:E("idle"),activeCount:a=>E("activeCount",{count:a})};let G=function(a,b){let c=(0,e.useRef)(null),d=(0,e.useRef)(a);return d.current=a,(0,e.useCallback)(a=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>d.current(a),250)},[250])}((0,e.useCallback)(async a=>{x.current=!0,C(a=>a+1);try{let b=`/api/mentionables?q=${encodeURIComponent(a)}&limit=10&withInstances=1`;o&&p&&(b+=`&entityType=${encodeURIComponent(o)}&entityUuid=${encodeURIComponent(p)}`);let c=await fetch(b);if(c.ok){let a=await c.json();a.success&&(w.current=a.data)}}catch{w.current=[]}finally{x.current=!1,C(a=>a+1)}},[o,p]),250),[H,I]=(0,e.useState)(null),J=(0,e.useCallback)((a,b,c)=>{b({id:a.uuid,label:a.name,mentionType:a.type,pinnedHost:c?c.host:null,pinnedCwd:c?c.cwd:null,runtimeCwd:c?.runtimeCwd===!0})},[]),K=(0,e.useRef)(()=>{});K.current=(a,b)=>{let c=function(a){if("agent"===a.type&&a.projectFixedCwd)return{kind:"insert",pin:{host:a.projectFixedCwd.host,cwd:a.projectFixedCwd.cwd,runtimeCwd:!0}};if(a.isIdeaAssignee&&a.ideaPin)return{kind:"insert",pin:{host:a.ideaPin.host,cwd:a.ideaPin.cwd}};let b="agent"===a.type?(a.instances??[]).filter(a=>"online"===a.effectiveStatus):[];return b.length>=2?{kind:"pick",onlineInstances:b}:1===b.length?{kind:"insert",pin:b[0]}:{kind:"insert",pin:null}}(a);if("pick"===c.kind)return void I({item:a,onlineInstances:c.onlineInstances,command:b});J(a,b,c.pin??void 0)};let L=(0,e.useCallback)((a,b)=>K.current(a,b),[]);(0,e.useEffect)(()=>{A.current&&B.current&&t(w.current,x.current,B.current,y,A.current,F.current,L)});let M=(0,f.hG)({immediatelyRender:!1,extensions:[g.A.configure({heading:!1,blockquote:!1,codeBlock:!1,bulletList:!1,orderedList:!1,listItem:!1,horizontalRule:!1}),q.configure({HTMLAttributes:{class:"text-blue-600 font-medium"},renderText:({node:a})=>`@${a.attrs.label??a.attrs.id}`,suggestion:{char:"@",allowSpaces:!0,items:({query:a})=>(G(a),w.current),render:()=>({onStart:a=>{let b=document.createElement("div");if(b.className="z-[100] rounded-md border border-border bg-card shadow-md min-w-[200px] max-w-[300px] overflow-hidden",A.current=b,B.current=a.command,a.clientRect){let c="function"==typeof a.clientRect?a.clientRect():a.clientRect;c&&(b.style.position="fixed",b.style.left=`${c.left}px`,window.innerHeight-c.bottom<220?b.style.bottom=`${window.innerHeight-c.top+4}px`:b.style.top=`${c.bottom+4}px`)}(z.current??document.body).appendChild(b),t(w.current,x.current,a.command,y,b,F.current,L)},onUpdate:a=>{if(B.current=a.command,A.current&&a.clientRect){let b="function"==typeof a.clientRect?a.clientRect():a.clientRect;b&&(A.current.style.left=`${b.left}px`,window.innerHeight-b.bottom<220?(A.current.style.top="",A.current.style.bottom=`${window.innerHeight-b.top+4}px`):(A.current.style.bottom="",A.current.style.top=`${b.bottom+4}px`))}A.current&&t(w.current,x.current,a.command,y,A.current,F.current,L)},onKeyDown:a=>!!y.current&&y.current.onKeyDown(a),onExit:()=>{A.current?.remove(),A.current=null,B.current=null,w.current=[],x.current=!1}})}})],content:s(a),editable:!m,editorProps:{attributes:{class:(0,j.cn)("min-h-[36px] max-h-[120px] overflow-y-auto px-3 py-2 text-sm outline-none","prose prose-sm max-w-none [&_p]:my-0"),"data-placeholder":c||""},handleKeyDown:(a,b)=>!(0,l.P)(b)&&"Enter"===b.key&&!b.shiftKey&&!A.current&&!!n&&(b.preventDefault(),n(),!0)},onUpdate:({editor:a})=>{D.current=!0,b(r(a))}});return(0,e.useEffect)(()=>{if(!M||D.current){D.current=!1;return}r(M)!==a&&M.commands.setContent(s(a))},[a,M]),(0,e.useEffect)(()=>{M&&M.setEditable(!m)},[m,M]),(0,e.useImperativeHandle)(v,()=>({focus:()=>M?.commands.focus(),clear:()=>{M?.commands.clearContent(),b("")}})),(0,d.jsxs)("div",{ref:z,className:(0,j.cn)("relative rounded-md border border-input bg-transparent shadow-xs transition-[color,box-shadow]","focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",m&&"cursor-not-allowed opacity-50",h),children:[(0,d.jsx)(f.$Z,{editor:M}),(0,d.jsx)(u,{open:null!==H,agentName:H?.item.name??"",instances:H?.onlineInstances??[],onConfirm:a=>{!function(a,b,c){c.close(),a&&c.defer(()=>{try{c.focusEditor(),c.insert(a,b)}catch(a){c.onError(a)}})}(H,a,{close:()=>I(null),insert:(a,b)=>J(a.item,a.command,b),defer:a=>requestAnimationFrame(a),focusEditor:()=>M?.commands.focus(),onError:a=>k.q.error("MentionEditor: cwd-pinned mention insert failed",a)})},onCancel:()=>I(null)}),(0,d.jsx)("style",{children:`
|
|
2
2
|
.tiptap p.is-editor-empty:first-child::before {
|
|
3
3
|
content: attr(data-placeholder);
|
|
4
4
|
color: #9A9A9A;
|
|
@@ -10,4 +10,4 @@
|
|
|
10
10
|
color: #2563eb;
|
|
11
11
|
font-weight: 500;
|
|
12
12
|
}
|
|
13
|
-
`})]})});v.displayName="MentionEditor"},29662:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(50117),f=c(74438),g=c(15264),h=a([f]);async function i(){let a=await (0,e.UL)(),b=a.get("oidc_access_token")?.value;if(b)return(0,f.QD)(b);let c=a.get("user_session")?.value;if(c){let a=await (0,g.$Y)(c);if(a)return{type:"user",companyUuid:a.companyUuid,actorUuid:a.userUuid,email:a.email,name:a.name}}return null}f=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},42103:(a,b,c)=>{c.d(b,{s:()=>e});var d=c(42377);let e=(0,d.createServerReference)("703a8cb74f8937722979e93a1389f0a094605b7cd2",d.callServer,void 0,d.findSourceMapURL,"createCommentAction")},56828:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$m:()=>C});var e=c(10837),f=c(21968),g=c(9222),h=c(97443),i=c(86460),j=c(24714),k=c(33091),l=c(16235),m=c(42424),n=c(80251),o=c(24433),p=c(81013),q=c(42103),r=c(82831),s=c(68797),t=c(76172),u=c(22727),v=c(11573),w=c(76664),x=c(76549),y=a([r,s]);function z(a){return"agent"===a.type?(0,e.jsx)(s.Gm,{mention:a,displayName:a.displayName},a.index):(0,e.jsxs)("span",{className:"text-blue-600 font-medium",title:`${a.type}: ${a.uuid}`,children:["@",a.displayName]},a.index)}function A(a,b){let c=new Map;for(let b of a)c.set(b.uuid,b);for(let a of b)c.set(a.uuid,a);return[...c.values()].sort((a,b)=>a.createdAt!==b.createdAt?a.createdAt<b.createdAt?1:-1:a.uuid<b.uuid?1:-1)}async function B(a,b,c=5){let d=new Set(a.map(a=>a.uuid)),e=[],f=null,g=!1,h=0,i=!1,j=null,k=!1;for(let a=0;a<c;a++){let a=await b(f);if(!a)break;if(k=!0,h=a.total,e.push(...a.comments),i=a.hasMore,j=a.nextCursor,a.comments.some(a=>d.has(a.uuid))||!a.hasMore){g=!0;break}f=a.nextCursor}return k?g?{comments:A(a,e),total:h,contiguous:!0,resetOldestCursor:null,resetHasMore:!1}:{comments:A([],e),total:h,contiguous:!1,resetOldestCursor:j,resetHasMore:i}:null}function C({targetType:a,targetUuid:b,currentUserUuid:c,onCountChange:d,compact:l=!1}){let r=(0,g.c)(),[s,v]=(0,f.useState)(""),[w,y]=(0,f.useState)([]),[z,C]=(0,f.useState)(!0),[E,F]=(0,f.useState)(null),[G,H]=(0,f.useState)(!1),[I,J]=(0,f.useState)(!1),[K,L]=(0,f.useState)(null),[M,N]=(0,f.useState)(!1),[O,P]=(0,f.useState)(0),Q=(0,f.useRef)(null),R=(0,f.useRef)(null),S=(0,f.useRef)(w);S.current=w;let T=(0,f.useRef)(K);T.current=K;let U=(0,f.useRef)(M);U.current=M;let V=(0,f.useRef)(G);V.current=G;let W=(0,f.useRef)(z);W.current=z;let X=l?"h-6 w-6":"h-[30px] w-[30px]",Y=l?"gap-2":"gap-2.5",Z=l?"h-3 w-3":"h-[15px] w-[15px]",$=(0,f.useCallback)(async()=>{C(!0),F(null);let c=await (0,p.d)(a,b,{limit:10});c.success?(y(c.comments),L(c.nextCursor),N(c.hasMore),P(c.total)):F(c.error),C(!1)},[a,b]);(0,f.useCallback)(async()=>{if(V.current||W.current||!U.current||!T.current)return;H(!0);let c=await (0,p.d)(a,b,{cursor:T.current,limit:10});c.success&&(y(a=>A(a,c.comments)),L(c.nextCursor),N(c.hasMore),P(c.total)),H(!1)},[a,b]),(0,t.w0)(a,b,d=>{c&&d.actorUuid===c||B(S.current,async c=>{let d=await (0,p.d)(a,b,{cursor:c,limit:10});return d.success?d:null}).then(a=>{a&&(y(a.comments),P(a.total),a.contiguous||(L(a.resetOldestCursor),N(a.resetHasMore)))})});let _=async()=>{if(!s.trim()||I)return;J(!0);let c=await (0,q.s)(a,b,s);if(J(!1),c.success){let a=!S.current.some(a=>a.uuid===c.comment.uuid);y(a=>A(a,[c.comment])),a&&P(a=>a+1),v(""),Q.current?.clear()}else x.oR.error(c.error)};return(0,e.jsx)(u.D,{entityType:a,entityUuid:b,subEntityType:"comment",children:(0,e.jsxs)("div",{className:"flex flex-col gap-0",children:[(0,e.jsxs)("div",{className:`flex items-center ${Y} pb-3 border-b border-[#F0EDE8] dark:border-[#26241f]`,children:[(0,e.jsx)(n.eu,{className:`${l?"h-6 w-6":"h-7 w-7"} shrink-0`,children:(0,e.jsx)(n.q5,{className:"bg-border text-muted-foreground",children:(0,e.jsx)(h.A,{className:`${l?"h-3 w-3":"h-3.5 w-3.5"}`})})}),(0,e.jsx)("div",{className:"flex-1 min-w-0",children:(0,e.jsx)(o.c5,{ref:Q,value:s,onChange:v,onSubmit:_,placeholder:r("comments.addComment"),className:"border border-border bg-card text-sm rounded-lg",disabled:I,entityType:a,entityUuid:b})}),(0,e.jsx)(m.$,{size:"sm",className:"shrink-0 gap-1 bg-[#E07A5F] text-white hover:bg-[#D06A4F]",disabled:!s.trim()||I,onClick:_,children:I?(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"})})]}),z?(0,e.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"})}):E?(0,e.jsxs)("div",{className:"flex flex-col items-center gap-2 py-8 text-sm text-muted-foreground",children:[(0,e.jsx)(k.A,{className:"h-4 w-4"}),(0,e.jsx)("p",{children:r("comments.loadError")}),(0,e.jsx)(m.$,{variant:"outline",size:"sm",onClick:$,children:r("comments.retry")})]}):0===w.length?(0,e.jsx)("p",{className:"py-8 text-center text-sm text-muted-foreground italic",children:r("comments.noComments")}):(0,e.jsxs)("div",{children:[w.map(a=>(0,e.jsx)(D,{comment:a,compact:l,avatarSize:X,gap:Y,iconSize:Z,t:r},a.uuid)),(0,e.jsx)("div",{ref:R,"aria-hidden":"true"}),G?(0,e.jsxs)("div",{className:"flex items-center justify-center py-4",children:[(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"}),(0,e.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:r("comments.loadingMore")})]}):!M&&(0,e.jsx)("p",{className:"py-4 text-center text-xs text-muted-foreground italic",children:r("comments.noMoreComments")})]})]})})}function D({comment:a,compact:b,avatarSize:c,gap:d,iconSize:g,t:h}){let[i,j]=(0,f.useState)(!1),k="agent"===a.author.type,o=k?(0,v.j)(a.author.name):null,p=a.content.length>200,q=o?`${o}18`:void 0;return(0,e.jsxs)("div",{className:`flex ${d} py-3 border-b border-[#F0EDE8] dark:border-[#26241f] last:border-b-0`,children:[(0,e.jsx)(n.eu,{className:`${c} shrink-0`,children:(0,e.jsx)(n.q5,{style:k?{backgroundColor:q,color:o??void 0}:void 0,className:k?"":"bg-border text-muted-foreground text-[11px] font-medium",children:k?(0,e.jsx)(l.A,{className:g}):a.author.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1.5 flex-wrap",children:[(0,e.jsx)("span",{className:`${b?"text-xs":"text-[13px]"} font-semibold text-[#1A1A1A] dark:text-[#CFCFCF]`,children:a.author.name}),(0,e.jsx)("span",{style:k?{backgroundColor:q,color:o??void 0}:void 0,className:`inline-flex items-center rounded px-1.5 py-px text-[9px] font-medium ${k?"":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"}`,children:h(k?"comments.roleAgent":"comments.roleHuman")}),(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,w.r)(c)}(a.createdAt,h)})]}),k&&a.author.owner&&(0,e.jsx)("div",{className:"flex items-center gap-1 mt-0.5",children:(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground italic",children:h("comments.onBehalfOf",{name:a.author.owner.name})})}),(0,e.jsx)("div",{className:`mt-1 ${b?"text-xs":"text-[13px]"} leading-relaxed text-[#3D3D3D] dark:text-[#d8d2ca] max-w-none [&_h1]:text-sm [&_h1]:font-semibold [&_h1]:mt-2 [&_h1]:mb-1 [&_h2]:text-[13px] [&_h2]:font-semibold [&_h2]:mt-2 [&_h2]:mb-1 [&_h3]:text-[13px] [&_h3]:font-semibold [&_h3]:mt-1.5 [&_h3]:mb-0.5 [&_p]:my-1 [&_ul]:my-1 [&_ol]:my-1 [&_li]:my-0.5 [&_code]:bg-secondary [&_code]:text-foreground [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_a]:text-primary [&_pre]:bg-secondary [&_pre]:text-foreground`,children:p&&!i?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(r.z7,{renderMention:z,children:a.content.slice(0,200)+"..."}),(0,e.jsx)(m.$,{variant:"link",size:"sm",onClick:()=>j(!0),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:h("comments.showMore")})]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(r.z7,{renderMention:z,children:a.content}),p&&(0,e.jsx)(m.$,{variant:"link",size:"sm",onClick:()=>j(!1),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:h("comments.showLess")})]})})]})]})}[r,s]=y.then?(await y)():y,d()}catch(a){d(a)}})},61413:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LS:()=>p,U$:()=>l,U1:()=>i,Yi:()=>j,gA:()=>m,hF:()=>h,vr:()=>n,xx:()=>o,yx:()=>k});var e=c(52618),f=c(42558),g=a([e]);async function h({companyUuid:a,skip:b,take:c}){let[d,f]=await Promise.all([e.z.project.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0}}}}),e.z.project.count({where:{companyUuid:a}})]);return{projects:d,total:f}}async function i(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0,activities:!0}}}})}async function j(a,b){return!!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function k(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0}})}async function l(a,b){return(await e.z.project.findMany({where:{companyUuid:a,groupUuid:b},select:{uuid:!0}})).map(a=>a.uuid)}async function m({companyUuid:a,name:b,description:c,groupUuid:d}){let g=await e.z.project.create({data:{companyUuid:a,name:b,description:c,groupUuid:d??null},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0}});return f.B.emitChange({companyUuid:a,projectUuid:g.uuid,entityType:"project",entityUuid:g.uuid,action:"created"}),g}async function n(a,b,c){let d=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return d?e.z.project.update({where:{uuid:d.uuid},data:c,select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}}):null}async function o(a,b){let c=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return!!c&&(await e.z.project.delete({where:{uuid:c.uuid}}),f.B.emitChange({companyUuid:a,projectUuid:b,entityType:"project",entityUuid:b,action:"deleted"}),!0)}async function p(a,b){let[c,d,f,g]=await Promise.all([e.z.idea.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.task.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.proposal.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.document.count({where:{projectUuid:b,companyUuid:a}})]),h=new Map(c.map(a=>[a.status,a._count])),i=c.reduce((a,b)=>a+b._count,0),j=h.get("open")||0,k=new Map(d.map(a=>[a.status,a._count])),l=d.reduce((a,b)=>a+b._count,0),m=k.get("in_progress")||0,n=(k.get("open")||0)+(k.get("assigned")||0),o=k.get("to_verify")||0,p=(k.get("done")||0)+(k.get("closed")||0),q=new Map(f.map(a=>[a.status,a._count])),r=f.reduce((a,b)=>a+b._count,0),s=q.get("pending")||0;return{ideas:{total:i,open:j},tasks:{total:l,inProgress:m,todo:n,toVerify:o,done:p},proposals:{total:r,pending:s},documents:{total:g}}}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},76664:(a,b,c)=>{function d(a){let b="string"==typeof a?new Date(a):a;if(isNaN(b.getTime()))return"";let c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0"),f=String(b.getHours()).padStart(2,"0"),g=String(b.getMinutes()).padStart(2,"0");return`${c}-${d}-${e} ${f}:${g}`}function e(a,b){let c="string"==typeof a?new Date(a):a;return isNaN(c.getTime())?"":c.toLocaleDateString(b,{month:"short",day:"numeric"})}c.d(b,{r:()=>d,s:()=>e})},80251:(a,b,c)=>{c.d(b,{eu:()=>g,q5:()=>h});var d=c(10837);c(21968);var e=c(14672),f=c(96307);function g({className:a,size:b="default",...c}){return(0,d.jsx)(e.Root,{"data-slot":"avatar","data-size":b,className:(0,f.cn)("group/avatar relative flex size-8 shrink-0 overflow-hidden rounded-full select-none data-[size=lg]:size-10 data-[size=sm]:size-6",a),...c})}function h({className:a,...b}){return(0,d.jsx)(e.Fallback,{"data-slot":"avatar-fallback",className:(0,f.cn)("bg-muted text-muted-foreground flex size-full items-center justify-center rounded-full text-sm group-data-[size=sm]/avatar:text-xs",a),...b})}},81013:(a,b,c)=>{c.d(b,{d:()=>e});var d=c(42377);let e=(0,d.createServerReference)("70a52329b7ca0e7885bbe7b08d26305380135ea5a4",d.callServer,void 0,d.findSourceMapURL,"getCommentsAction")},82831:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{z7:()=>k});var e=c(10837),f=c(21968),g=c.n(f),h=c(97450),i=c(10174),j=a([h]);h=(j.then?(await j)():j)[0];let n=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:\?([^)]*))?\)/gi,o="chorus-mention";function k({children:a,renderMention:b}){if(!a||"string"!=typeof a)return null;if(!new RegExp(n.source,n.flags.replace("g","")).test(a))return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{children:a})});if(b)return(0,e.jsx)(l,{renderMention:b,children:a});let{processed:c,mentions:d}=function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j}=(0,i.vE)(f),k={displayName:c,type:d,uuid:e};return(null!==h||null!==j)&&(k.pinnedHost=h,k.pinnedCwd=j),b.push(k),`\u200B\u200BMENTION_${g}\u200B\u200B`}),mentions:b}}(a);return(0,e.jsx)(m,{mentions:d,children:(0,e.jsx)(h.MarkdownContent,{children:c})})}function l({children:a,renderMention:b}){let{processed:c,mentions:d}=g().useMemo(()=>(function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j}=(0,i.vE)(f),k={type:d.toLowerCase(),uuid:e.toLowerCase(),displayName:c};(null!==h||null!==j)&&(k.pinnedHost=h,k.pinnedCwd=j),b.push(k);let l=`@${c}`.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");return`<${o} idx="${g}">${l}</${o}>`}),mentions:b}})(a),[a]),f=g().useMemo(()=>({[o]:({idx:a})=>{let c=void 0===a?NaN:parseInt(a,10),f=Number.isInteger(c)?d[c]:void 0;return f?(0,e.jsx)(e.Fragment,{children:b({...f,index:c})}):null}}),[d,b]);return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{components:f,allowedTags:{[o]:["idx"]},literalTagContent:[o],children:c})})}function m({children:a,mentions:b}){let c=g().useRef(null);return(0,e.jsx)("div",{ref:c,className:"overflow-hidden [&_pre]:overflow-x-auto",children:a})}d()}catch(a){d(a)}})},90061:(a,b,c)=>{c.d(b,{fv:()=>p,xQ:()=>q});var d=c(21968),e=c(76172);let f=new Map,g=new Map,h=new Map,i=new Set,j=0;function k(a,b,c,d){return c?d?`${a}:${b}:${c}:${d}`:`${a}:${b}:${c}`:`${a}:${b}`}function l(){j++,i.forEach(a=>a())}function m(a){let b=a.subEntityType,c=a.subEntityUuid,d=k(a.entityType,a.entityUuid,b,c),e=function(a,b,c,d,e){let f=k(a,b,d,e);return`${f}:${c}`}(a.entityType,a.entityUuid,a.agentUuid,b,c),i=g.get(e);if(i&&Date.now()-i<3e3)return;g.set(e,Date.now());let j={agentUuid:a.agentUuid,agentName:a.agentName,action:a.action,timestamp:Date.now()},m=(f.get(d)??[]).filter(b=>b.agentUuid!==a.agentUuid);m.push(j),f.set(d,m);let n=h.get(e);n&&clearTimeout(n);let o=setTimeout(()=>{let b=f.get(d);if(b){let c=b.filter(b=>b.agentUuid!==a.agentUuid);0===c.length?f.delete(d):f.set(d,c)}g.delete(e),h.delete(e),l()},3e3);h.set(e,o),l()}function n(){return j}function o(a){return i.add(a),()=>{i.delete(a)}}function p(a){m({type:"presence",companyUuid:"",projectUuid:"",...a,timestamp:Date.now()})}function q(){return(0,d.useSyncExternalStore)(o,n,n),(0,e.S2)(m),{getPresence:(a,b,c,d)=>{if(c)return f.get(k(a,b,c,d))??[];let e=`${a}:${b}`,g=new Map;for(let[a,b]of f)if(a===e||a.startsWith(e+":"))for(let a of b){let b=g.get(a.agentUuid);(!b||a.timestamp>b.timestamp)&&g.set(a.agentUuid,a)}return[...g.values()]}}}},98581:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>l,s:()=>m});var e=c(2613);c(50785);var f=c(9259),g=c(466),h=c(67738),i=c(97307),j=c(12217),k=a([f,g,h]);[f,g,h]=k.then?(await k)():k;let n=["idea","proposal","task","document"];async function l(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!n.includes(a))return{success:!1,error:`Invalid target type: ${a}`};try{let e=await (0,g.fg)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,cursor:c?.cursor??null,limit:c?.limit??10}),f=await (0,g.Yt)(e.comments);return{success:!0,comments:f,total:e.total,nextCursor:e.nextCursor??null,hasMore:e.hasMore??!1}}catch(b){return i.default.error({err:b,targetType:a},"Failed to get comments"),{success:!1,error:"Failed to load comments"}}}async function m(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!n.includes(a))return{success:!1,error:`Invalid target type: ${a}`};if(!c.trim())return{success:!1,error:"Comment content is required"};try{let e=await (0,g.eT)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,content:c.trim(),authorType:d.type,authorUuid:d.actorUuid}),f=await (0,g.Hu)(a,b,d.companyUuid);f&&await (0,h.createActivity)({companyUuid:d.companyUuid,projectUuid:f,targetType:a,targetUuid:b,actorType:d.type,actorUuid:d.actorUuid,action:"comment_added"});let[i]=await (0,g.Yt)([e]);return{success:!0,comment:i}}catch(b){return i.default.error({err:b,targetType:a},"Failed to create comment"),{success:!1,error:"Failed to create comment"}}}(0,j.D)([l,m]),(0,e.A)(l,"70a52329b7ca0e7885bbe7b08d26305380135ea5a4",null),(0,e.A)(m,"703a8cb74f8937722979e93a1389f0a094605b7cd2",null),d()}catch(a){d(a)}})}};
|
|
13
|
+
`})]})});v.displayName="MentionEditor"},29662:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(50117),f=c(74438),g=c(15264),h=a([f]);async function i(){let a=await (0,e.UL)(),b=a.get("oidc_access_token")?.value;if(b)return(0,f.QD)(b);let c=a.get("user_session")?.value;if(c){let a=await (0,g.$Y)(c);if(a)return{type:"user",companyUuid:a.companyUuid,actorUuid:a.userUuid,email:a.email,name:a.name}}return null}f=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},42103:(a,b,c)=>{c.d(b,{s:()=>e});var d=c(42377);let e=(0,d.createServerReference)("703a8cb74f8937722979e93a1389f0a094605b7cd2",d.callServer,void 0,d.findSourceMapURL,"createCommentAction")},56828:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$m:()=>C});var e=c(10837),f=c(21968),g=c(9222),h=c(97443),i=c(86460),j=c(24714),k=c(33091),l=c(16235),m=c(42424),n=c(80251),o=c(24433),p=c(81013),q=c(42103),r=c(82831),s=c(68797),t=c(76172),u=c(22727),v=c(11573),w=c(76664),x=c(76549),y=a([r,s]);function z(a){return"agent"===a.type?(0,e.jsx)(s.Gm,{mention:a,displayName:a.displayName},a.index):(0,e.jsxs)("span",{className:"text-blue-600 font-medium",title:`${a.type}: ${a.uuid}`,children:["@",a.displayName]},a.index)}function A(a,b){let c=new Map;for(let b of a)c.set(b.uuid,b);for(let a of b)c.set(a.uuid,a);return[...c.values()].sort((a,b)=>a.createdAt!==b.createdAt?a.createdAt<b.createdAt?1:-1:a.uuid<b.uuid?1:-1)}async function B(a,b,c=5){let d=new Set(a.map(a=>a.uuid)),e=[],f=null,g=!1,h=0,i=!1,j=null,k=!1;for(let a=0;a<c;a++){let a=await b(f);if(!a)break;if(k=!0,h=a.total,e.push(...a.comments),i=a.hasMore,j=a.nextCursor,a.comments.some(a=>d.has(a.uuid))||!a.hasMore){g=!0;break}f=a.nextCursor}return k?g?{comments:A(a,e),total:h,contiguous:!0,resetOldestCursor:null,resetHasMore:!1}:{comments:A([],e),total:h,contiguous:!1,resetOldestCursor:j,resetHasMore:i}:null}function C({targetType:a,targetUuid:b,currentUserUuid:c,onCountChange:d,compact:l=!1}){let r=(0,g.c)(),[s,v]=(0,f.useState)(""),[w,y]=(0,f.useState)([]),[z,C]=(0,f.useState)(!0),[E,F]=(0,f.useState)(null),[G,H]=(0,f.useState)(!1),[I,J]=(0,f.useState)(!1),[K,L]=(0,f.useState)(null),[M,N]=(0,f.useState)(!1),[O,P]=(0,f.useState)(0),Q=(0,f.useRef)(null),R=(0,f.useRef)(null),S=(0,f.useRef)(w);S.current=w;let T=(0,f.useRef)(K);T.current=K;let U=(0,f.useRef)(M);U.current=M;let V=(0,f.useRef)(G);V.current=G;let W=(0,f.useRef)(z);W.current=z;let X=l?"h-6 w-6":"h-[30px] w-[30px]",Y=l?"gap-2":"gap-2.5",Z=l?"h-3 w-3":"h-[15px] w-[15px]",$=(0,f.useCallback)(async()=>{C(!0),F(null);let c=await (0,p.d)(a,b,{limit:10});c.success?(y(c.comments),L(c.nextCursor),N(c.hasMore),P(c.total)):F(c.error),C(!1)},[a,b]);(0,f.useCallback)(async()=>{if(V.current||W.current||!U.current||!T.current)return;H(!0);let c=await (0,p.d)(a,b,{cursor:T.current,limit:10});c.success&&(y(a=>A(a,c.comments)),L(c.nextCursor),N(c.hasMore),P(c.total)),H(!1)},[a,b]),(0,t.w0)(a,b,d=>{c&&d.actorUuid===c||B(S.current,async c=>{let d=await (0,p.d)(a,b,{cursor:c,limit:10});return d.success?d:null}).then(a=>{a&&(y(a.comments),P(a.total),a.contiguous||(L(a.resetOldestCursor),N(a.resetHasMore)))})});let _=async()=>{if(!s.trim()||I)return;J(!0);let c=await (0,q.s)(a,b,s);if(J(!1),c.success){let a=!S.current.some(a=>a.uuid===c.comment.uuid);y(a=>A(a,[c.comment])),a&&P(a=>a+1),v(""),Q.current?.clear()}else x.oR.error(c.error)};return(0,e.jsx)(u.D,{entityType:a,entityUuid:b,subEntityType:"comment",children:(0,e.jsxs)("div",{className:"flex flex-col gap-0",children:[(0,e.jsxs)("div",{className:`flex items-center ${Y} pb-3 border-b border-[#F0EDE8] dark:border-[#26241f]`,children:[(0,e.jsx)(n.eu,{className:`${l?"h-6 w-6":"h-7 w-7"} shrink-0`,children:(0,e.jsx)(n.q5,{className:"bg-border text-muted-foreground",children:(0,e.jsx)(h.A,{className:`${l?"h-3 w-3":"h-3.5 w-3.5"}`})})}),(0,e.jsx)("div",{className:"flex-1 min-w-0",children:(0,e.jsx)(o.c5,{ref:Q,value:s,onChange:v,onSubmit:_,placeholder:r("comments.addComment"),className:"border border-border bg-card text-sm rounded-lg",disabled:I,entityType:a,entityUuid:b})}),(0,e.jsx)(m.$,{size:"sm",className:"shrink-0 gap-1 bg-[#E07A5F] text-white hover:bg-[#D06A4F]",disabled:!s.trim()||I,onClick:_,children:I?(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"})})]}),z?(0,e.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"})}):E?(0,e.jsxs)("div",{className:"flex flex-col items-center gap-2 py-8 text-sm text-muted-foreground",children:[(0,e.jsx)(k.A,{className:"h-4 w-4"}),(0,e.jsx)("p",{children:r("comments.loadError")}),(0,e.jsx)(m.$,{variant:"outline",size:"sm",onClick:$,children:r("comments.retry")})]}):0===w.length?(0,e.jsx)("p",{className:"py-8 text-center text-sm text-muted-foreground italic",children:r("comments.noComments")}):(0,e.jsxs)("div",{children:[w.map(a=>(0,e.jsx)(D,{comment:a,compact:l,avatarSize:X,gap:Y,iconSize:Z,t:r},a.uuid)),(0,e.jsx)("div",{ref:R,"aria-hidden":"true"}),G?(0,e.jsxs)("div",{className:"flex items-center justify-center py-4",children:[(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"}),(0,e.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:r("comments.loadingMore")})]}):!M&&(0,e.jsx)("p",{className:"py-4 text-center text-xs text-muted-foreground italic",children:r("comments.noMoreComments")})]})]})})}function D({comment:a,compact:b,avatarSize:c,gap:d,iconSize:g,t:h}){let[i,j]=(0,f.useState)(!1),k="agent"===a.author.type,o=k?(0,v.j)(a.author.name):null,p=a.content.length>200,q=o?`${o}18`:void 0;return(0,e.jsxs)("div",{className:`flex ${d} py-3 border-b border-[#F0EDE8] dark:border-[#26241f] last:border-b-0`,children:[(0,e.jsx)(n.eu,{className:`${c} shrink-0`,children:(0,e.jsx)(n.q5,{style:k?{backgroundColor:q,color:o??void 0}:void 0,className:k?"":"bg-border text-muted-foreground text-[11px] font-medium",children:k?(0,e.jsx)(l.A,{className:g}):a.author.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1.5 flex-wrap",children:[(0,e.jsx)("span",{className:`${b?"text-xs":"text-[13px]"} font-semibold text-[#1A1A1A] dark:text-[#CFCFCF]`,children:a.author.name}),(0,e.jsx)("span",{style:k?{backgroundColor:q,color:o??void 0}:void 0,className:`inline-flex items-center rounded px-1.5 py-px text-[9px] font-medium ${k?"":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"}`,children:h(k?"comments.roleAgent":"comments.roleHuman")}),(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,w.r)(c)}(a.createdAt,h)})]}),k&&a.author.owner&&(0,e.jsx)("div",{className:"flex items-center gap-1 mt-0.5",children:(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground italic",children:h("comments.onBehalfOf",{name:a.author.owner.name})})}),(0,e.jsx)("div",{className:`mt-1 ${b?"text-xs":"text-[13px]"} leading-relaxed text-[#3D3D3D] dark:text-[#d8d2ca] max-w-none [&_h1]:text-sm [&_h1]:font-semibold [&_h1]:mt-2 [&_h1]:mb-1 [&_h2]:text-[13px] [&_h2]:font-semibold [&_h2]:mt-2 [&_h2]:mb-1 [&_h3]:text-[13px] [&_h3]:font-semibold [&_h3]:mt-1.5 [&_h3]:mb-0.5 [&_p]:my-1 [&_ul]:my-1 [&_ol]:my-1 [&_li]:my-0.5 [&_code]:bg-secondary [&_code]:text-foreground [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_a]:text-primary [&_pre]:bg-secondary [&_pre]:text-foreground`,children:p&&!i?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(r.z7,{renderMention:z,children:a.content.slice(0,200)+"..."}),(0,e.jsx)(m.$,{variant:"link",size:"sm",onClick:()=>j(!0),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:h("comments.showMore")})]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(r.z7,{renderMention:z,children:a.content}),p&&(0,e.jsx)(m.$,{variant:"link",size:"sm",onClick:()=>j(!1),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:h("comments.showLess")})]})})]})]})}[r,s]=y.then?(await y)():y,d()}catch(a){d(a)}})},61413:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LS:()=>p,U$:()=>l,U1:()=>i,Yi:()=>j,gA:()=>m,hF:()=>h,vr:()=>n,xx:()=>o,yx:()=>k});var e=c(52618),f=c(42558),g=a([e]);async function h({companyUuid:a,skip:b,take:c}){let[d,f]=await Promise.all([e.z.project.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0}}}}),e.z.project.count({where:{companyUuid:a}})]);return{projects:d,total:f}}async function i(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0,activities:!0}}}})}async function j(a,b){return!!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function k(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0}})}async function l(a,b){return(await e.z.project.findMany({where:{companyUuid:a,groupUuid:b},select:{uuid:!0}})).map(a=>a.uuid)}async function m({companyUuid:a,name:b,description:c,groupUuid:d}){let g=await e.z.project.create({data:{companyUuid:a,name:b,description:c,groupUuid:d??null},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0}});return f.B.emitChange({companyUuid:a,projectUuid:g.uuid,entityType:"project",entityUuid:g.uuid,action:"created"}),g}async function n(a,b,c){let d=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return d?e.z.project.update({where:{uuid:d.uuid},data:c,select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}}):null}async function o(a,b){let c=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return!!c&&(await e.z.project.delete({where:{uuid:c.uuid}}),f.B.emitChange({companyUuid:a,projectUuid:b,entityType:"project",entityUuid:b,action:"deleted"}),!0)}async function p(a,b){let[c,d,f,g]=await Promise.all([e.z.idea.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.task.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.proposal.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.document.count({where:{projectUuid:b,companyUuid:a}})]),h=new Map(c.map(a=>[a.status,a._count])),i=c.reduce((a,b)=>a+b._count,0),j=h.get("open")||0,k=new Map(d.map(a=>[a.status,a._count])),l=d.reduce((a,b)=>a+b._count,0),m=k.get("in_progress")||0,n=(k.get("open")||0)+(k.get("assigned")||0),o=k.get("to_verify")||0,p=(k.get("done")||0)+(k.get("closed")||0),q=new Map(f.map(a=>[a.status,a._count])),r=f.reduce((a,b)=>a+b._count,0),s=q.get("pending")||0;return{ideas:{total:i,open:j},tasks:{total:l,inProgress:m,todo:n,toVerify:o,done:p},proposals:{total:r,pending:s},documents:{total:g}}}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},76664:(a,b,c)=>{function d(a){let b="string"==typeof a?new Date(a):a;if(isNaN(b.getTime()))return"";let c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0"),f=String(b.getHours()).padStart(2,"0"),g=String(b.getMinutes()).padStart(2,"0");return`${c}-${d}-${e} ${f}:${g}`}function e(a,b){let c="string"==typeof a?new Date(a):a;return isNaN(c.getTime())?"":c.toLocaleDateString(b,{month:"short",day:"numeric"})}c.d(b,{r:()=>d,s:()=>e})},80251:(a,b,c)=>{c.d(b,{eu:()=>g,q5:()=>h});var d=c(10837);c(21968);var e=c(14672),f=c(96307);function g({className:a,size:b="default",...c}){return(0,d.jsx)(e.Root,{"data-slot":"avatar","data-size":b,className:(0,f.cn)("group/avatar relative flex size-8 shrink-0 overflow-hidden rounded-full select-none data-[size=lg]:size-10 data-[size=sm]:size-6",a),...c})}function h({className:a,...b}){return(0,d.jsx)(e.Fallback,{"data-slot":"avatar-fallback",className:(0,f.cn)("bg-muted text-muted-foreground flex size-full items-center justify-center rounded-full text-sm group-data-[size=sm]/avatar:text-xs",a),...b})}},81013:(a,b,c)=>{c.d(b,{d:()=>e});var d=c(42377);let e=(0,d.createServerReference)("70a52329b7ca0e7885bbe7b08d26305380135ea5a4",d.callServer,void 0,d.findSourceMapURL,"getCommentsAction")},82831:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{z7:()=>k});var e=c(10837),f=c(21968),g=c.n(f),h=c(97450),i=c(10174),j=a([h]);h=(j.then?(await j)():j)[0];let n=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:\?([^)]*))?\)/gi,o="chorus-mention";function k({children:a,renderMention:b}){if(!a||"string"!=typeof a)return null;if(!new RegExp(n.source,n.flags.replace("g","")).test(a))return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{children:a})});if(b)return(0,e.jsx)(l,{renderMention:b,children:a});let{processed:c,mentions:d}=function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j,runtimeCwd:k}=(0,i.vE)(f),l={displayName:c,type:d,uuid:e};return(null!==h||null!==j)&&(l.pinnedHost=h,l.pinnedCwd=j,k&&(l.runtimeCwd=!0)),b.push(l),`\u200B\u200BMENTION_${g}\u200B\u200B`}),mentions:b}}(a);return(0,e.jsx)(m,{mentions:d,children:(0,e.jsx)(h.MarkdownContent,{children:c})})}function l({children:a,renderMention:b}){let{processed:c,mentions:d}=g().useMemo(()=>(function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j,runtimeCwd:k}=(0,i.vE)(f),l={type:d.toLowerCase(),uuid:e.toLowerCase(),displayName:c};(null!==h||null!==j)&&(l.pinnedHost=h,l.pinnedCwd=j,k&&(l.runtimeCwd=!0)),b.push(l);let m=`@${c}`.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");return`<${o} idx="${g}">${m}</${o}>`}),mentions:b}})(a),[a]),f=g().useMemo(()=>({[o]:({idx:a})=>{let c=void 0===a?NaN:parseInt(a,10),f=Number.isInteger(c)?d[c]:void 0;return f?(0,e.jsx)(e.Fragment,{children:b({...f,index:c})}):null}}),[d,b]);return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{components:f,allowedTags:{[o]:["idx"]},literalTagContent:[o],children:c})})}function m({children:a,mentions:b}){let c=g().useRef(null);return(0,e.jsx)("div",{ref:c,className:"overflow-hidden [&_pre]:overflow-x-auto",children:a})}d()}catch(a){d(a)}})},90061:(a,b,c)=>{c.d(b,{fv:()=>p,xQ:()=>q});var d=c(21968),e=c(76172);let f=new Map,g=new Map,h=new Map,i=new Set,j=0;function k(a,b,c,d){return c?d?`${a}:${b}:${c}:${d}`:`${a}:${b}:${c}`:`${a}:${b}`}function l(){j++,i.forEach(a=>a())}function m(a){let b=a.subEntityType,c=a.subEntityUuid,d=k(a.entityType,a.entityUuid,b,c),e=function(a,b,c,d,e){let f=k(a,b,d,e);return`${f}:${c}`}(a.entityType,a.entityUuid,a.agentUuid,b,c),i=g.get(e);if(i&&Date.now()-i<3e3)return;g.set(e,Date.now());let j={agentUuid:a.agentUuid,agentName:a.agentName,action:a.action,timestamp:Date.now()},m=(f.get(d)??[]).filter(b=>b.agentUuid!==a.agentUuid);m.push(j),f.set(d,m);let n=h.get(e);n&&clearTimeout(n);let o=setTimeout(()=>{let b=f.get(d);if(b){let c=b.filter(b=>b.agentUuid!==a.agentUuid);0===c.length?f.delete(d):f.set(d,c)}g.delete(e),h.delete(e),l()},3e3);h.set(e,o),l()}function n(){return j}function o(a){return i.add(a),()=>{i.delete(a)}}function p(a){m({type:"presence",companyUuid:"",projectUuid:"",...a,timestamp:Date.now()})}function q(){return(0,d.useSyncExternalStore)(o,n,n),(0,e.S2)(m),{getPresence:(a,b,c,d)=>{if(c)return f.get(k(a,b,c,d))??[];let e=`${a}:${b}`,g=new Map;for(let[a,b]of f)if(a===e||a.startsWith(e+":"))for(let a of b){let b=g.get(a.agentUuid);(!b||a.timestamp>b.timestamp)&&g.set(a.agentUuid,a)}return[...g.values()]}}}},98581:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>l,s:()=>m});var e=c(2613);c(50785);var f=c(9259),g=c(466),h=c(67738),i=c(97307),j=c(12217),k=a([f,g,h]);[f,g,h]=k.then?(await k)():k;let n=["idea","proposal","task","document"];async function l(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!n.includes(a))return{success:!1,error:`Invalid target type: ${a}`};try{let e=await (0,g.fg)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,cursor:c?.cursor??null,limit:c?.limit??10}),f=await (0,g.Yt)(e.comments);return{success:!0,comments:f,total:e.total,nextCursor:e.nextCursor??null,hasMore:e.hasMore??!1}}catch(b){return i.default.error({err:b,targetType:a},"Failed to get comments"),{success:!1,error:"Failed to load comments"}}}async function m(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!n.includes(a))return{success:!1,error:`Invalid target type: ${a}`};if(!c.trim())return{success:!1,error:"Comment content is required"};try{let e=await (0,g.eT)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,content:c.trim(),authorType:d.type,authorUuid:d.actorUuid}),f=await (0,g.Hu)(a,b,d.companyUuid);f&&await (0,h.createActivity)({companyUuid:d.companyUuid,projectUuid:f,targetType:a,targetUuid:b,actorType:d.type,actorUuid:d.actorUuid,action:"comment_added"});let[i]=await (0,g.Yt)([e]);return{success:!0,comment:i}}catch(b){return i.default.error({err:b,targetType:a},"Failed to create comment"),{success:!1,error:"Failed to create comment"}}}(0,j.D)([l,m]),(0,e.A)(l,"70a52329b7ca0e7885bbe7b08d26305380135ea5a4",null),(0,e.A)(m,"703a8cb74f8937722979e93a1389f0a094605b7cd2",null),d()}catch(a){d(a)}})}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=1722,exports.ids=[1722],exports.modules={81722:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Au:()=>z,DM:()=>w,Vx:()=>t,YG:()=>u,Yd:()=>y,by:()=>p,gt:()=>o,mq:()=>n,ty:()=>s,z7:()=>q,zl:()=>v});var e=c(52618),f=c(42558),g=c(97515),h=a([e,g]);[e,g]=h.then?(await h)():h;let y=["HOST_OFFLINE","TIMEOUT","INVALID_PATH","OUTSIDE_ROOT","NOT_DIRECTORY","ACCESS_DENIED","STALE_TARGET","LIMIT_EXCEEDED","INTERNAL_ERROR"];class z extends Error{constructor(a,b){super(b),this.code=a}}async function i(a,b,c){if(!await e.z.agent.findFirst({where:{uuid:c,companyUuid:a,ownerUuid:b},select:{uuid:!0}}))throw new z("NOT_FOUND","Agent not found")}async function j(a,b){if(!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}}))throw new z("NOT_FOUND","Project not found")}function k(a,b){return a.find(a=>a.host===b&&"online"===a.effectiveStatus)??null}async function l(a,b,c,d){return(await e.z.agentInstance.upsert({where:{companyUuid_agentUuid_host_cwd:{companyUuid:a,agentUuid:b,host:c,cwd:d}},create:{companyUuid:a,agentUuid:b,host:c,cwd:d},update:{updatedAt:new Date},select:{uuid:!0}})).uuid}async function m(a){await i(a.companyUuid,a.userUuid,a.agentUuid);let b=await e.z.daemonDirectoryRequest.findFirst({where:{uuid:a.validationRequestUuid,companyUuid:a.companyUuid,callerUserUuid:a.userUuid,agentUuid:a.agentUuid,operation:"validate",status:"success",completedAt:{gte:new Date(Date.now()-6e4)}}}),c=b?.result&&"object"==typeof b.result&&!Array.isArray(b.result)&&"string"==typeof b.result.normalizedPath?b.result.normalizedPath:null;if(!b||!c)throw new z("STALE_TARGET","Fresh successful validation required");let d=await e.z.daemonConnection.findFirst({where:{uuid:b.targetConnectionUuid,companyUuid:a.companyUuid,agentUuid:a.agentUuid},select:{host:!0}});if(!d)throw new z("STALE_TARGET","Validation target is stale");return{agentUuid:a.agentUuid,host:d.host,cwd:c}}async function n(a){let b=await Promise.all(a.agentCwds.map(b=>m({companyUuid:a.companyUuid,userUuid:a.userUuid,...b})));return e.z.$transaction(async c=>{let d=await c.project.create({data:{companyUuid:a.companyUuid,name:a.name,description:a.description,groupUuid:a.groupUuid},select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}});for(let e of b){let b=await c.agentInstance.upsert({where:{companyUuid_agentUuid_host_cwd:{companyUuid:a.companyUuid,agentUuid:e.agentUuid,host:e.host,cwd:e.cwd}},create:{companyUuid:a.companyUuid,agentUuid:e.agentUuid,host:e.host,cwd:e.cwd},update:{updatedAt:new Date},select:{uuid:!0}});await c.projectAgentCwdPreference.create({data:{companyUuid:a.companyUuid,userUuid:a.userUuid,projectUuid:d.uuid,agentUuid:e.agentUuid,host:e.host,cwd:e.cwd,anchorAgentInstanceUuid:b.uuid}})}return d})}async function o(a){let[b,c]=await Promise.all([e.z.projectAgentCwdPreference.findFirst({where:{companyUuid:a.companyUuid,userUuid:a.actorUserUuid,projectUuid:a.projectUuid,agentUuid:a.agentUuid},select:{uuid:!0,host:!0,cwd:!0,anchorAgentInstanceUuid:!0}}),(0,g._R)(a.companyUuid,a.agentUuid)]);if(a.registeredInstanceUuid){let b=await e.z.agentInstance.findFirst({where:{uuid:a.registeredInstanceUuid,companyUuid:a.companyUuid,agentUuid:a.agentUuid},select:{uuid:!0,host:!0,cwd:!0}});if(b){let d=a.registeredRuntimeCwd?a.registeredHost??b.host:b.host,e=a.registeredRuntimeCwd??b.cwd,f=a.registeredRuntimeCwd?k(c,d):c.find(a=>a.host===d&&a.cwd===e&&"online"===a.effectiveStatus);return{actorUserUuid:a.actorUserUuid,source:"project_fixed"===a.registeredSource?"project_fixed":"registered_instance",agentUuid:a.agentUuid,host:d,cwd:e,availability:f?"ready":"offline",promptPolicy:"project_fixed"===a.registeredSource?"suppress":"none",connectionUuid:f?.uuid??null,agentInstanceUuid:b.uuid}}return{actorUserUuid:a.actorUserUuid,source:"project_fixed"===a.registeredSource?"project_fixed":"registered_instance",agentUuid:a.agentUuid,host:null,cwd:null,availability:"invalid",promptPolicy:"project_fixed"===a.registeredSource?"suppress":"none",connectionUuid:null,agentInstanceUuid:a.registeredInstanceUuid}}if(b){if(!b.host||!b.cwd)return{actorUserUuid:a.actorUserUuid,source:"project_fixed",agentUuid:a.agentUuid,host:b.host||null,cwd:b.cwd||null,availability:"invalid",promptPolicy:"suppress",connectionUuid:null,agentInstanceUuid:b.anchorAgentInstanceUuid};let d=await l(a.companyUuid,a.agentUuid,b.host,b.cwd);b.anchorAgentInstanceUuid!==d&&await e.z.projectAgentCwdPreference.update({where:{uuid:b.uuid},data:{anchorAgentInstanceUuid:d}});let f=k(c,b.host);return{actorUserUuid:a.actorUserUuid,source:"project_fixed",agentUuid:a.agentUuid,host:b.host,cwd:b.cwd,availability:f?"ready":"offline",promptPolicy:"suppress",connectionUuid:f?.uuid??null,agentInstanceUuid:d}}if(a.temporaryTarget){let b=k(c,a.temporaryTarget.host);return{actorUserUuid:a.actorUserUuid,source:"temporary",agentUuid:a.agentUuid,host:a.temporaryTarget.host,cwd:a.temporaryTarget.cwd,availability:b?"ready":"offline",promptPolicy:"none",connectionUuid:b?.uuid??null,agentInstanceUuid:null}}let d=c.find(a=>"online"===a.effectiveStatus)??null;return{actorUserUuid:a.actorUserUuid,source:"unconfigured",agentUuid:a.agentUuid,host:null,cwd:null,availability:d?"ready":"offline",promptPolicy:"select",connectionUuid:d?.uuid??null,agentInstanceUuid:null}}async function p(a,b,c){return await j(a,c),r(a,b,c)}async function q(a,b){return r(a,b,null)}async function r(a,b,c){let[d,f]=await Promise.all([e.z.agent.findMany({where:{companyUuid:a,ownerUuid:b},select:{uuid:!0,name:!0},orderBy:[{name:"asc"},{uuid:"asc"}]}),c?e.z.projectAgentCwdPreference.findMany({where:{companyUuid:a,userUuid:b,projectUuid:c}}):Promise.resolve([])]),g=await e.z.daemonConnection.findMany({where:{companyUuid:a,agentUuid:{in:d.map(a=>a.uuid)},status:"online"},select:{uuid:!0,agentUuid:!0,agentInstanceUuid:!0,host:!0,cwd:!0,lastSeenAt:!0}}),h=new Set(g.map(a=>`${a.agentUuid}\0${a.host}`)),i=new Map(f.map(a=>[a.agentUuid,a]));return d.flatMap(a=>{let b=i.get(a.uuid),c=g.filter(b=>b.agentUuid===a.uuid).map(a=>({connectionUuid:a.uuid,agentInstanceUuid:a.agentInstanceUuid,host:a.host,cwd:a.cwd,effectiveStatus:"online"}));return 0!==c.length||b?[{agent:a,onlineInstances:c,preference:b?{uuid:b.uuid,host:b.host,cwd:b.cwd,anchorAgentInstanceUuid:b.anchorAgentInstanceUuid,status:h.has(`${a.uuid}\0${b.host}`)?"valid":"offline",updatedAt:b.updatedAt}:null}]:[]})}async function s(a){if(await x(),await i(a.companyUuid,a.userUuid,a.agentUuid),"list"===a.operation&&!a.prefix)throw new z("VALIDATION_ERROR","prefix is required");if("validate"===a.operation&&!a.cwd)throw new z("VALIDATION_ERROR","cwd is required");let b=await e.z.daemonConnection.findFirst({where:{uuid:a.targetConnectionUuid,companyUuid:a.companyUuid,agentUuid:a.agentUuid,status:"online"},select:{uuid:!0,host:!0,agentInstanceUuid:!0}});if(!b)throw new z("HOST_OFFLINE","Target host is offline");let c=new Date,d=await e.z.daemonDirectoryRequest.create({data:{companyUuid:a.companyUuid,callerUserUuid:a.userUuid,agentUuid:a.agentUuid,targetConnectionUuid:b.uuid,operation:a.operation,prefix:a.prefix??null,cwd:a.cwd??null,cursor:a.cursor??null,limit:Math.max(1,Math.min(a.limit??50,100)),deadlineAt:new Date(c.getTime()+15e3)}});return f.B.emit((0,f.T)(b.uuid),{type:"control",command:"browse_directory",targetConnectionUuid:b.uuid,requestUuid:d.uuid,operation:a.operation,prefix:a.prefix,cwd:a.cwd,cursor:a.cursor,limit:d.limit,deadlineAt:d.deadlineAt.toISOString()}),d}async function t(a,b,c){let d=await e.z.daemonDirectoryRequest.findFirst({where:{uuid:c,companyUuid:a,callerUserUuid:b}});if(!d)throw new z("NOT_FOUND","Directory request not found");return"pending"===d.status&&d.deadlineAt<=new Date?e.z.daemonDirectoryRequest.update({where:{uuid:d.uuid},data:{status:"error",errorCode:"TIMEOUT",completedAt:new Date}}):d}async function u(a){let b=await e.z.daemonDirectoryRequest.findFirst({where:{uuid:a.requestUuid,companyUuid:a.companyUuid,agentUuid:a.agentUuid,targetConnectionUuid:a.connectionUuid,status:"pending"}});if(!b)throw new z("NOT_FOUND","Directory request not found");if(b.deadlineAt<=new Date)throw await e.z.daemonDirectoryRequest.update({where:{uuid:b.uuid},data:{status:"error",errorCode:"TIMEOUT",completedAt:new Date}}),new z("TIMEOUT","Directory request timed out");if("error"===a.status&&!a.errorCode)throw new z("VALIDATION_ERROR","errorCode is required");if("success"===a.status){let c=a.result;if("roots"===b.operation&&(!c||"object"!=typeof c||Array.isArray(c)||!Array.isArray(c.roots)||0===c.roots.length||!c.roots.every(a=>"string"==typeof a&&a.length>0)))return e.z.daemonDirectoryRequest.update({where:{uuid:b.uuid},data:{status:"error",result:void 0,errorCode:"INTERNAL_ERROR",completedAt:new Date}})}return e.z.daemonDirectoryRequest.update({where:{uuid:b.uuid},data:{status:a.status,result:"success"===a.status?a.result:void 0,errorCode:"error"===a.status?a.errorCode:null,completedAt:new Date}})}async function v(a){await Promise.all([j(a.companyUuid,a.projectUuid),i(a.companyUuid,a.userUuid,a.agentUuid)]);let b=new Date(Date.now()-6e4),c=await e.z.daemonDirectoryRequest.findFirst({where:{uuid:a.validationRequestUuid,companyUuid:a.companyUuid,callerUserUuid:a.userUuid,agentUuid:a.agentUuid,operation:"validate",status:"success",completedAt:{gte:b}}});if(!c?.cwd)throw new z("STALE_TARGET","Fresh successful validation required");let d=c.result&&"object"==typeof c.result&&!Array.isArray(c.result)&&"string"==typeof c.result.normalizedPath?c.result.normalizedPath:null;if(!d)throw new z("STALE_TARGET","Validation result is missing normalized path");let f=await e.z.daemonConnection.findFirst({where:{uuid:c.targetConnectionUuid,companyUuid:a.companyUuid,agentUuid:a.agentUuid},select:{host:!0}});if(!f)throw new z("STALE_TARGET","Validation target is stale");let g=await l(a.companyUuid,a.agentUuid,f.host,d);return e.z.projectAgentCwdPreference.upsert({where:{userUuid_projectUuid_agentUuid:{userUuid:a.userUuid,projectUuid:a.projectUuid,agentUuid:a.agentUuid}},create:{companyUuid:a.companyUuid,userUuid:a.userUuid,projectUuid:a.projectUuid,agentUuid:a.agentUuid,host:f.host,cwd:d,anchorAgentInstanceUuid:g},update:{host:f.host,cwd:d,anchorAgentInstanceUuid:g}})}async function w(a){await j(a.companyUuid,a.projectUuid),await e.z.projectAgentCwdPreference.deleteMany({where:{companyUuid:a.companyUuid,userUuid:a.userUuid,projectUuid:a.projectUuid,agentUuid:a.agentUuid}})}async function x(a=new Date){return e.z.daemonDirectoryRequest.deleteMany({where:{OR:[{deadlineAt:{lt:new Date(a.getTime()-36e5)}},{completedAt:{lt:new Date(a.getTime()-36e5)}}]}})}d()}catch(a){d(a)}})}};
|