@chorus-aidlc/chorus 0.16.4 → 0.17.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 +420 -420
- package/.next/standalone/.next/app-path-routes-manifest.json +53 -53
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +45 -45
- package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
- 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_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_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_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
- 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_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 +1 -1
- 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 +2 -2
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -1
- 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.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.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.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -1
- 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.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 +4 -4
- 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.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -1
- 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.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/login.html +2 -2
- package/.next/standalone/.next/server/app/login.rsc +1 -1
- package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
- 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 +2 -2
- 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 +2 -2
- package/.next/standalone/.next/server/app/settings.html +2 -2
- package/.next/standalone/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/.next/server/app-paths-manifest.json +53 -53
- package/.next/standalone/.next/server/chunks/{5205.js → 1114.js} +1 -1
- package/.next/standalone/.next/server/chunks/1318.js +1 -1
- package/.next/standalone/.next/server/chunks/1437.js +1 -0
- package/.next/standalone/.next/server/chunks/1559.js +2 -2
- package/.next/standalone/.next/server/chunks/2572.js +1 -1
- package/.next/standalone/.next/server/chunks/2961.js +1 -1
- package/.next/standalone/.next/server/chunks/{9793.js → 3045.js} +1 -1
- package/.next/standalone/.next/server/chunks/3831.js +37 -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/{4394.js → 5706.js} +1 -1
- package/.next/standalone/.next/server/chunks/6113.js +1 -1
- package/.next/standalone/.next/server/chunks/6207.js +1 -1
- package/.next/standalone/.next/server/chunks/6515.js +2 -2
- package/.next/standalone/.next/server/chunks/679.js +1 -1
- 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/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/chunks/9449.js +1 -0
- package/.next/standalone/.next/server/chunks/9458.js +1 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/.next/server/middleware-manifest.json +5 -5
- 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.a6268c75ca8a2163.js → 11595.bbe40924d18958bf.js} +1 -1
- package/.next/standalone/.next/static/chunks/18139-e6ef4b5869593f8e.js +1 -0
- package/.next/standalone/.next/static/chunks/28856-ef2cb58fbd404ef9.js +1 -0
- package/.next/standalone/.next/static/chunks/{31308-fda6febfb2882a28.js → 31308-bb4a97b3f39c22dd.js} +1 -1
- package/.next/standalone/.next/static/chunks/{33456.16ff7edf00137539.js → 33456.5499eb8e892b110a.js} +1 -1
- package/.next/standalone/.next/static/chunks/{4860.9e06848eb531e667.js → 4860.be77046fb2b3a2bd.js} +1 -1
- package/.next/standalone/.next/static/chunks/66873-e3be53f41b3f2255.js +1 -0
- package/.next/standalone/.next/static/chunks/70303-aec3d52ad87602a3.js +1 -0
- package/.next/standalone/.next/static/chunks/76201-83b26515f85ce37c.js +1 -0
- package/.next/standalone/.next/static/chunks/78917-a8a8dff98857c045.js +1 -0
- package/.next/standalone/.next/static/chunks/97663-9c3ae4fd60b353db.js +1 -0
- package/.next/standalone/.next/static/chunks/{99373.81b79c91858f9099.js → 99373.111493dc260a2a04.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/{layout-b742c51c0a764daf.js → layout-40fe7d026c5a7c6d.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-87d4d0fe90fca28c.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-1206abaee85dc915.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/{page-425acbe9ade5fa83.js → page-474e494097c8945f.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-e902b19328092ccf.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-f273288c3530aa0f.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-6568a7b08bf9a54b.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-fbd3c27b68666234.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-58b48aa0a11603c3.js → page-15bb6e1696668512.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-286faced32c6133f.js → page-2bea97214b1595cc.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-2bf7ceee62b574c7.js +1 -0
- package/.next/standalone/.next/static/chunks/app/onboarding/{page-5c82cf3abd856301.js → page-540da64d7ba16dc7.js} +1 -1
- package/.next/standalone/.next/static/chunks/{webpack-4d1cc14b13e247b6.js → webpack-7cbb3ba6792f1fb3.js} +1 -1
- 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/bin/chorus-api.sh +44 -1
- package/.next/standalone/public/chorus-plugin/bin/on-session-start.sh +4 -3
- package/.next/standalone/public/chorus-plugin/bin/tests/test-mcp-cli-delegation.sh +244 -0
- package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +19 -1
- package/.next/standalone/public/chorus-plugin/skills/chorus-cli/SKILL.md +57 -0
- package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +2 -2
- package/.next/standalone/public/chorus-plugin/skills/docs/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 +85 -42
- package/.next/standalone/public/chorus-plugin/skills/orchestrate/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +2 -2
- 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 +3 -3
- package/.next/standalone/public/dsh-credentials.sh +20 -127
- package/.next/standalone/public/install-codex.sh +21 -406
- package/.next/standalone/public/install-kiro.sh +20 -344
- package/.next/standalone/public/install-opencode.sh +20 -275
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-cli/SKILL.md +57 -0
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +2 -2
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-docs/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 +85 -42
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-orchestrate/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +2 -2
- 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 +3 -3
- package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +44 -1
- package/.next/standalone/public/kiro-plugin/bin/on-agent-spawn.sh +6 -4
- package/.next/standalone/public/kiro-plugin/manifest.txt +41 -0
- package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/chorus/SKILL.md +19 -1
- package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/develop-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/docs-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/idea-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/orchestrate-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/proposal-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/review-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/yolo-chorus/SKILL.md +1 -1
- package/.next/standalone/public/test-dsh-credentials.sh +22 -38
- package/.next/standalone/public/test-install-codex.sh +31 -79
- package/README.ja.md +2 -2
- package/README.ko.md +2 -2
- package/README.md +2 -2
- package/README.zh.md +2 -2
- package/chorus.mjs +35 -1
- package/cli/agent-backend-prompt.mjs +3 -2
- package/cli/agents.mjs +329 -0
- package/cli/chorus-client.mjs +69 -0
- package/cli/claude-spawner.mjs +4 -0
- package/cli/codex-spawner.mjs +11 -6
- package/cli/credentials.mjs +185 -3
- package/cli/daemon-agent.mjs +26 -2
- package/cli/daemon-config.mjs +27 -2
- package/cli/daemon-service.mjs +120 -33
- package/cli/daemon.mjs +128 -22
- package/cli/dsh-spawner.mjs +7 -0
- package/cli/init/adapters.mjs +137 -0
- package/cli/init/agent-type-map.mjs +60 -0
- package/cli/init/chorus-plugin-consts.mjs +16 -0
- package/cli/init/codex-mcp-config.mjs +183 -0
- package/cli/init/contracts.mjs +120 -0
- package/cli/init/detect.mjs +97 -0
- package/cli/init/file-template.mjs +248 -0
- package/cli/init/install-methods.mjs +508 -0
- package/cli/init/registry.mjs +74 -0
- package/cli/init/run-command.mjs +30 -0
- package/cli/init/select.mjs +111 -0
- package/cli/init/steps/credential-seed.mjs +751 -0
- package/cli/init/steps/daemon-setup.mjs +246 -0
- package/cli/init/steps/plugin-install.mjs +37 -0
- package/cli/init-args.mjs +137 -0
- package/cli/init.mjs +198 -0
- package/cli/kiro-spawner.mjs +4 -0
- package/cli/mcp-args.mjs +280 -0
- package/cli/mcp.mjs +164 -0
- package/cli/spawner-select.mjs +45 -2
- package/package.json +1 -1
- package/.next/standalone/.next/server/chunks/3594.js +0 -1
- package/.next/standalone/.next/server/chunks/5351.js +0 -33
- package/.next/standalone/.next/server/chunks/6667.js +0 -1
- package/.next/standalone/.next/server/chunks/6995.js +0 -1
- package/.next/standalone/.next/static/chunks/19887-b805e1dcee8c367b.js +0 -1
- package/.next/standalone/.next/static/chunks/29108-5a11eea003f4cc11.js +0 -1
- package/.next/standalone/.next/static/chunks/53073-a7ed20af6538a178.js +0 -1
- package/.next/standalone/.next/static/chunks/6603-e70ddeab6ad09c50.js +0 -1
- package/.next/standalone/.next/static/chunks/78917-1b59cbb806b3ecfc.js +0 -1
- package/.next/standalone/.next/static/chunks/82751-3e161e1d8dbda3ac.js +0 -1
- package/.next/standalone/.next/static/chunks/99366-425e9ef22e60e3e2.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-f636e00c28f425ea.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-c004f1a194af7fa5.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-fdd617457730a116.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-b9eb4e0692996657.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-d5b222f379b2e8ca.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-0a6c2d0e1b68e0e4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-1507a761e67c2aa9.js +0 -1
- /package/.next/standalone/.next/static/{6sHDgeKioa0SJR1MAbcYG → 0spgxl3lP26Fl1otd1D7R}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{6sHDgeKioa0SJR1MAbcYG → 0spgxl3lP26Fl1otd1D7R}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[82751],{875:(e,t,a)=>{a.d(t,{i:()=>j});var s=a(90508),r=a(1856),n=a(39268),i=a(85226),l=a(22922),d=a(97438),o=a(14554),c=a(15972),u=a(88064),x=a(39077),m=a(39674),p=a(42305),h=a(62990),f=a(59208),g=a(94643);function j(e){var t;let{open:a,onOpenChange:j,projectUuid:v,onCreated:b,parentUuid:y,parentTitle:N}=e,k=(0,n.c)("ideaTracker"),w=(0,n.c)("ideaTracker.lineage"),C=!!y,S=(0,n.c)("common"),[F,A]=(0,r.useState)(""),[E,_]=(0,r.useState)(""),[D,T]=(0,r.useState)(!1),[U,R]=(0,r.useState)(!1),[P,I]=(0,r.useState)(null),[M,B]=(0,r.useState)(!1),[L,z]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(!a||C)return;let e=!1;return(0,h.tm)("/api/projects/".concat(encodeURIComponent(v),"/agent-cwds")).then(async t=>{if(!t.ok)return;let a=await t.json();if(!e){var s,r;z((null!=(r=null==a||null==(s=a.data)?void 0:s.agents)?r:[]).some(e=>e.preference))}}).catch(()=>{e||z(!1)}),()=>{e=!0}},[C,a,v]);let V=(0,f.kz)(),q=(null!=(t=null==V?void 0:V.connections)?t:[]).some(e=>"online"===e.effectiveStatus),[$,O]=(0,r.useState)("form"),K=!C,G=C?"form":$,H=async()=>{let e=F.trim();if(e){R(!0),I(null);try{var t;let a=await fetch("/api/projects/".concat(v,"/ideas"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:e,content:E.trim()||void 0,...y?{parentUuid:y}:{},...D?{isContainer:!0}:{}})}),s=await a.json();s.success&&(null==(t=s.data)?void 0:t.uuid)?(A(""),_(""),T(!1),j(!1),null==b||b(s.data.uuid)):I(s.error||k("error.createFailed"))}catch(e){I(k("error.createFailed"))}finally{R(!1)}}},J=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"space-y-4 py-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"idea-title",children:k("newIdea.ideaTitle")}),(0,s.jsx)(o.p,{id:"idea-title",value:F,onChange:e=>A(e.target.value),placeholder:k("newIdea.titlePlaceholder"),autoFocus:!0,onKeyDown:e=>{!(0,p.P)(e)&&"Enter"===e.key&&!e.shiftKey&&F.trim()&&(e.preventDefault(),H())}})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(u.J,{htmlFor:"idea-content",children:[k("newIdea.description"),(0,s.jsxs)("span",{className:"ml-1 text-xs font-normal text-muted-foreground",children:["(",S("optional"),")"]})]}),(0,s.jsx)(c.T,{id:"idea-content",value:E,onChange:e=>_(e.target.value),placeholder:k("newIdea.descriptionPlaceholder"),rows:4,className:"resize-none"})]}),(0,s.jsxs)("div",{className:"flex items-start gap-2",children:[(0,s.jsx)(x.S,{id:"idea-is-container",checked:D,onCheckedChange:e=>T(!0===e),className:"mt-0.5"}),(0,s.jsxs)("div",{className:"grid gap-1 leading-none",children:[(0,s.jsx)(u.J,{htmlFor:"idea-is-container",className:"cursor-pointer",children:w("makeContainer")}),(0,s.jsx)("p",{className:"text-xs font-normal text-muted-foreground",children:w("containerHint")})]})]}),P&&(0,s.jsx)("div",{className:"rounded-lg bg-destructive/10 px-3 py-2 text-[12px] text-destructive",children:P})]}),(0,s.jsxs)(d.Es,{children:[(0,s.jsx)(l.$,{variant:"outline",onClick:()=>j(!1),disabled:U,children:S("cancel")}),(0,s.jsxs)(l.$,{onClick:H,disabled:U||!F.trim(),className:"bg-primary hover:bg-[#B56A42] text-white",children:[U?(0,s.jsx)(i.A,{className:"mr-2 h-4 w-4 animate-spin"}):null,S("create")]})]})]}),Q=async e=>{let t=await (0,h.tm)("/api/ideas/conversational",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectUuid:v,agentUuid:e.agentUuid,connectionUuid:e.connectionUuid,descriptionText:e.userText,...M?{decompose:!0}:{}})});if(!t.ok){let e=null;try{let a=await t.json();"string"==typeof(null==a?void 0:a.error)&&a.error&&(e=a.error)}catch(e){}throw new g.fF(t.status,e)}let a=null;try{var s;let e=await t.json();(null==e?void 0:e.success)&&(null==(s=e.data)?void 0:s.session)&&(a=e.data.session)}catch(e){}if(!a)throw new g.fF(t.status,null);return a},W=(0,s.jsxs)("div",{className:"space-y-3 py-2",children:[(0,s.jsxs)("div",{className:"flex items-start gap-2",children:[(0,s.jsx)(x.S,{id:"idea-decompose",checked:M,onCheckedChange:e=>B(!0===e),className:"mt-0.5"}),(0,s.jsxs)("div",{className:"grid gap-1 leading-none",children:[(0,s.jsx)(u.J,{htmlFor:"idea-decompose",className:"cursor-pointer",children:k("newIdea.decompose")}),(0,s.jsx)("p",{className:"text-xs font-normal text-muted-foreground",children:k("newIdea.decomposeHint")})]})]}),(0,s.jsx)(g.jH,{projectUuid:v,dispatch:Q,onStarted:e=>{j(!1),null==V||V.openChatForSession(e)}})]});return(0,s.jsx)(d.lG,{open:a,onOpenChange:j,children:(0,s.jsxs)(d.Cf,{className:"sm:max-w-[480px]",children:[(0,s.jsxs)(d.c7,{children:[(0,s.jsx)(d.L3,{children:C?w("deriveIdea"):k("newIdea.title")}),C&&N&&(0,s.jsxs)("p",{className:"text-[13px] text-muted-foreground",children:[w("derivedFrom")," \xb7 ",N]})]}),K&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(m.tU,{value:G,onValueChange:e=>O(e),children:(0,s.jsxs)(m.j7,{className:"grid w-full grid-cols-2",children:[(0,s.jsx)(m.Xi,{value:"form",children:k("newIdea.modeForm")}),(0,s.jsx)(m.Xi,{value:"conversation",disabled:!q&&!L,children:k("newIdea.modeConversation")})]})}),!q&&(0,s.jsxs)("div",{className:"rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] px-3 py-2",children:[(0,s.jsx)("p",{className:"px-1 pt-1 text-[12px] font-medium text-muted-foreground",children:k("newIdea.modeConversationOfflineHint")}),(0,s.jsx)(g.Bs,{variant:"compact"})]})]}),"form"===G?J:W]})})}},5725:(e,t,a)=>{a.d(t,{b:()=>o});var s=a(1856),r=a(93367),n=a(90508),i="horizontal",l=["horizontal","vertical"],d=s.forwardRef((e,t)=>{var a;let{decorative:s,orientation:d=i,...o}=e,c=(a=d,l.includes(a))?d:i;return(0,n.jsx)(r.sG.div,{"data-orientation":c,...s?{role:"none"}:{"aria-orientation":"vertical"===c?c:void 0,role:"separator"},...o,ref:t})});d.displayName="Separator";var o=d},24522:(e,t,a)=>{a.d(t,{K:()=>p});var s=a(90508),r=a(1856),n=a(39268),i=a(70633),l=a(9160),d=a(22922),o=a(57731),c=a(64993),u=a(97261),x=a(82523),m=a(90795);function p(e){let{title:t,type:a,content:p,mode:h="overlay",onClose:f,onBack:g}=e,j=(0,n.c)("documents"),[v,b]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=setTimeout(()=>b(!0),300);return()=>clearTimeout(e)},[]),(0,r.useEffect)(()=>{let e=e=>{"Escape"!==e.key||e.defaultPrevented||(e.preventDefault(),f())};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[f]);let y="sidebyside"===h;return(0,s.jsxs)(s.Fragment,{children:[!y&&(0,s.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:f}),(0,s.jsxs)("div",{className:"fixed top-14 md:top-0 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-card shadow-xl border-l border-border ".concat(y?"z-40 ".concat(v?"":"animate-in slide-in-from-right duration-300"):"z-50 right-0 ".concat(v?"":"animate-in slide-in-from-right duration-300")),style:y?{right:"".concat(m.L8,"px")}:void 0,children:[(0,s.jsxs)("div",{className:"flex items-center justify-between border-b border-secondary px-6 py-5",children:[g&&(0,s.jsx)(d.$,{variant:"ghost",size:"icon",className:"mr-2 h-8 w-8 shrink-0",onClick:g,children:(0,s.jsx)(i.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,s.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,s.jsx)("h2",{className:"text-base font-semibold text-foreground truncate",children:t}),(0,s.jsx)("div",{className:"mt-1.5",children:(0,s.jsx)(o.E,{variant:"outline",className:"text-[10px] font-medium border-border text-muted-foreground bg-secondary px-2 py-0.5 font-mono",children:j(x.y[a]||"typeOther")})})]}),(0,s.jsx)(d.$,{variant:"outline",size:"icon",className:"ml-4 h-8 w-8 shrink-0 border-border",onClick:f,children:(0,s.jsx)(l.A,{className:"h-4 w-4 text-muted-foreground"})})]}),(0,s.jsx)(c.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,s.jsx)("div",{className:"px-6 py-5 text-[13px] leading-relaxed text-foreground prose prose-sm max-w-none [&_h1]:text-lg [&_h1]:font-semibold [&_h1]:mt-4 [&_h1]:mb-2 [&_h2]:text-base [&_h2]:font-semibold [&_h2]:mt-3 [&_h2]:mb-1.5 [&_h3]:text-sm [&_h3]:font-medium [&_h3]:mt-2 [&_h3]:mb-1 [&_p]:text-[13px] [&_p]:text-foreground/80 [&_p]:my-1.5 [&_li]:text-[13px] [&_li]:text-foreground/80 [&_ul]:my-1 [&_ol]:my-1 [&_strong]:text-foreground [&_code]:text-[12px] [&_code]:bg-secondary [&_code]:text-foreground [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_pre]:bg-secondary [&_pre]:text-foreground [&_pre]:p-3 [&_pre]:rounded-lg [&_pre]:my-2 [&_a]:text-primary",children:(0,s.jsx)(u.MarkdownContent,{children:(0,x.j)(p)})})})]})]})}},27251:(e,t,a)=>{a.d(t,{Q:()=>r});var s=a(52217);let r=(0,s.createServerReference)("40bbd1b0376808960fb33e7569ba6eb1f6588104ae",s.callServer,void 0,s.findSourceMapURL,"getTaskAction")},39077:(e,t,a)=>{a.d(t,{S:()=>l});var s=a(90508);a(1856);var r=a(60532),n=a(98861),i=a(24377);function l(e){let{className:t,...a}=e;return(0,s.jsx)(n.Root,{"data-slot":"checkbox",className:(0,i.cn)("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...a,children:(0,s.jsx)(n.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none",children:(0,s.jsx)(r.A,{className:"size-3.5"})})})}},39674:(e,t,a)=>{a.d(t,{Xi:()=>d,av:()=>o,j7:()=>l,tU:()=>i});var s=a(90508);a(1856);var r=a(79834),n=a(24377);function i(e){let{className:t,...a}=e;return(0,s.jsx)(r.Root,{"data-slot":"tabs",className:(0,n.cn)("flex flex-col gap-2",t),...a})}function l(e){let{className:t,...a}=e;return(0,s.jsx)(r.List,{"data-slot":"tabs-list",className:(0,n.cn)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...a})}function d(e){let{className:t,...a}=e;return(0,s.jsx)(r.Trigger,{"data-slot":"tabs-trigger",className:(0,n.cn)("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a})}function o(e){let{className:t,...a}=e;return(0,s.jsx)(r.Content,{"data-slot":"tabs-content",className:(0,n.cn)("flex-1 outline-none",t),...a})}},48127:(e,t,a)=>{a.d(t,{A:()=>s});let s=(0,a(66206).A)("corner-down-right",[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]])},64131:(e,t,a)=>{a.d(t,{A:()=>s});let s=(0,a(66206).A)("git-fork",[["circle",{cx:"12",cy:"18",r:"3",key:"1mpf1b"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["path",{d:"M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9",key:"1uq4wg"}],["path",{d:"M12 12v3",key:"158kv8"}]])},71921:(e,t,a)=>{a.d(t,{A:()=>s});let s=(0,a(66206).A)("clipboard-list",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]])},76047:(e,t,a)=>{a.d(t,{D:()=>e0});var s=a(90508),r=a(1856),n=a(39268),i=a(91814),l=a(67587),d=a(64131),o=a(95900),c=a(57893),u=a(9160),x=a(85226),m=a(66206);let p=(0,m.A)("corner-left-up",[["path",{d:"M14 9 9 4 4 9",key:"1af5af"}],["path",{d:"M20 20h-7a4 4 0 0 1-4-4V4",key:"1blwi3"}]]);var h=a(48127),f=a(34956),g=a(42533),j=a(97413),v=a(22922),b=a(64993),y=a(57731),N=a(14554),k=a(15972),w=a(88064),C=a(12210),S=a(51817),F=a(63964),A=a(5425),E=a(84247),_=a(73764),D=a(97261),T=a(16544),U=a(65626),R=a(73693),P=a(91385),I=a(92691),M=a(94643),B=a(29532);function L(e){let{assignee:t,onReassign:a,editable:r}=e,i=(0,n.c)("common"),l=!0===r&&"function"==typeof a,d=i(t?"reassign":"assign"),o=t?(0,s.jsxs)(s.Fragment,{children:[(0,B.bB)(t)?(0,s.jsx)(P.AgentAvatar,{name:t.name,size:28,className:"rounded-full"}):(0,s.jsx)(R.eu,{className:"h-7 w-7",children:(0,s.jsx)(R.q5,{className:"bg-border text-muted-foreground",children:t.name.charAt(0).toUpperCase()})}),(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("div",{className:"text-sm font-medium text-foreground",children:t.name}),(0,s.jsx)("div",{className:"text-xs text-muted-foreground",children:i((0,B.bB)(t)?"agent":"user")}),"agent_instance"===t.type&&t.instance&&(0,s.jsx)("div",{className:"mt-1",children:(0,s.jsx)(M.jQ,{cwd:t.instance.cwd,host:t.instance.host})})]})]}):(0,s.jsx)("span",{className:"text-sm text-muted-foreground",children:i("unassigned")}),c="mt-2 flex items-center gap-2.5 rounded-lg bg-background p-3";return(0,s.jsxs)("div",{children:[(0,s.jsx)(w.J,{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:i("assignee")}),l?(0,s.jsx)(I.Bc,{delayDuration:300,children:(0,s.jsxs)(I.m_,{children:[(0,s.jsx)(I.k$,{asChild:!0,children:(0,s.jsx)("button",{type:"button",onClick:a,"aria-label":d,className:"".concat(c," w-full cursor-pointer text-left"),children:o})}),(0,s.jsx)(I.ZI,{children:d})]})}):(0,s.jsx)("div",{className:c,children:o})]})}function z(e){let{idea:t,elaboration:a,isLoading:r,onRefresh:i,onReassign:l,canReassign:d}=e,o=(0,n.c)("ideaTracker"),c=(0,n.c)("common");return r?(0,s.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,s.jsx)(x.A,{className:"h-5 w-5 animate-spin text-primary"})}):(0,s.jsxs)(T.P.div,{variants:U.qG,initial:"initial",animate:"animate",children:[(0,s.jsx)(L,{assignee:t.assignee,onReassign:l,editable:d}),(0,s.jsx)(E.Separator,{className:"my-5 bg-secondary"}),a&&a.rounds.length>0?(0,s.jsx)("div",{children:(0,s.jsx)(_.R,{ideaUuid:t.uuid,elaboration:a,onRefresh:i})}):"open"===t.status?(0,s.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-8 text-center",children:[(0,s.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-[#FFF3E0] dark:bg-[#3a2a12]",children:(0,s.jsx)(A.A,{className:"h-5 w-5 text-[#E65100] dark:text-[#F0A050]"})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-sm font-medium text-foreground",children:o("panel.elaborationNotStarted")}),(0,s.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("panel.elaborationNotStartedDesc")})]})]}):(0,s.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-8 text-center",children:[(0,s.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-[#E3F2FD] dark:bg-[#13253a]",children:(0,s.jsx)(A.A,{className:"h-5 w-5 text-[#1976D2] dark:text-[#5AA9F0]"})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-sm font-medium text-foreground",children:o("panel.elaborationWaiting")}),(0,s.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("panel.elaborationWaitingDesc")})]})]}),t.content&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(E.Separator,{className:"my-5 bg-secondary"}),(0,s.jsxs)("div",{children:[(0,s.jsx)(w.J,{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:c("content")}),(0,s.jsx)("div",{className:"mt-2",children:(0,s.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-foreground",children:(0,s.jsx)(D.MarkdownContent,{children:t.content})})})]})]})]})}var V=a(12790),q=a.n(V),$=a(71921),O=a(78948),K=a(37915),G=a(17730),H=a(32470),J=a(96213),Q=a(47754),W=a(92745),X=a(82523),Z=a(88207),Y=a(4277),ee=a(67712);function et(e){let{idea:t,projectUuid:a,onTaskClick:i,onDocClick:l,initialProposals:d}=e,o=(0,n.c)("ideaTracker"),[c,u]=(0,r.useState)(null!=d?d:[]),[m,p]=(0,r.useState)(!d),h=(0,r.useCallback)(async()=>{try{let e=await (0,Z.U)(a,t.uuid);if(e.success)return u(e.data),e.data}catch(e){ee.q.error("Failed to fetch proposals:",e)}finally{p(!1)}return[]},[a,t.uuid]);(0,r.useEffect)(()=>{d||h()},[h,d]);let f=(0,r.useRef)(c);f.current=c;let{getPresence:g}=(0,Q.xQ)();return((0,F.eV)("proposal",async()=>{let e=f.current;for(let n of(await h())){var t,a,s,r;let i=e.find(e=>e.uuid===n.uuid);if(!i)continue;let l=new Set((null!=(t=i.documentDrafts)?t:[]).map(e=>e.uuid)),d=new Set((null!=(a=i.taskDrafts)?a:[]).map(e=>e.uuid)),o=(null!=(s=n.documentDrafts)?s:[]).filter(e=>e.uuid&&!l.has(e.uuid)),c=(null!=(r=n.taskDrafts)?r:[]).filter(e=>e.uuid&&!d.has(e.uuid)),u=[...o.map(e=>e.uuid),...c.map(e=>e.uuid)];if(u.length>0){let e=g("proposal",n.uuid)[0];if(e)for(let t of u)(0,Q.fv)({entityType:"proposal",entityUuid:n.uuid,subEntityType:"draft",subEntityUuid:t,agentUuid:e.agentUuid,agentName:e.agentName,action:"mutate"})}}}),m)?(0,s.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,s.jsx)(x.A,{className:"h-5 w-5 animate-spin text-primary"})}):0===c.length?(0,s.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-12 text-center",children:[(0,s.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-[#F3E5F5] dark:bg-[#281630]",children:(0,s.jsx)($.A,{className:"h-5 w-5 text-[#7B1FA2] dark:text-[#C98FE0]"})}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:o("panel.noProposals")})]}):(0,s.jsx)("div",{className:"space-y-5",children:c.map(e=>(0,s.jsx)(es,{proposal:e,projectUuid:a,onTaskClick:i,onDocClick:l},e.uuid))})}let ea={draft:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-muted-foreground",pending:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",approved:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#5A9E6F] dark:text-[#6FD19A]",rejected:"bg-[#FFEBEE] dark:bg-[#331619] text-[#C4574C] dark:text-[#F0897E]",revised:"bg-[#E3F2FD] dark:bg-[#13253a] text-[#1976D2] dark:text-[#5AA9F0]",closed:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-muted-foreground"};function es(e){let{proposal:t,projectUuid:a,onTaskClick:i,onDocClick:l}=e,d=(0,n.c)("ideaTracker"),o=(0,n.c)(),c=(0,n.c)("proposals"),u=(0,n.c)("tasks"),x=(0,n.c)("documents"),m=t.documentDrafts||[],p=t.taskDrafts||[],[h,f]=(0,r.useState)(new Set),[g,j]=(0,r.useState)("cards"),[b,N]=(0,r.useState)([]),k="approved"===t.status;(0,r.useEffect)(()=>{k&&(0,Y.c)(a,t.uuid).then(e=>{e.success&&N(e.data||[])}).catch(e=>ee.q.error("Failed to fetch materialized tasks:",e))},[k,a,t.uuid]);let w=(0,r.useMemo)(()=>{let e=new Map;for(let t of b)e.set(t.title,t);return e},[b]),{dagTasks:C,dagEdges:S,dagHeight:F}=(0,r.useMemo)(()=>{let e=p.map(e=>{let t=w.get(e.title);return{uuid:(null==t?void 0:t.uuid)||e.uuid,title:e.title,status:(null==t?void 0:t.status)||"open",priority:e.priority||"medium"}}),t=[],a=new Map(p.map(e=>[e.uuid,e]));for(let e of p)if(e.dependsOnDraftUuids)for(let s of e.dependsOnDraftUuids){let r=w.get(e.title),n=a.get(s),i=n?w.get(n.title):void 0;t.push({from:(null==r?void 0:r.uuid)||e.uuid,to:(null==i?void 0:i.uuid)||s})}return{dagTasks:e,dagEdges:t,dagHeight:Math.max(350,90*e.length)}},[p,w]),A=k?b.filter(e=>"done"===e.status||"closed"===e.status).length:0;return(0,s.jsxs)("div",{className:"space-y-5",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("h3",{className:"text-[14px] font-semibold text-foreground truncate flex-1",children:t.title}),(0,s.jsx)(y.E,{className:"text-[11px] font-semibold border-0 shrink-0 ".concat(ea[t.status]||""),children:o("status.".concat(t.status))})]}),t.description&&(0,s.jsx)("div",{className:"max-h-[120px] overflow-y-auto text-[13px] leading-relaxed text-foreground/80 prose prose-sm max-w-none [&_h1]:text-sm [&_h2]:text-[13px] [&_h3]:text-xs [&_p]:text-[13px] [&_p]:text-foreground/80 [&_p]:my-1.5 [&_li]:text-[13px] [&_li]:text-foreground/80 [&_ul]:my-1 [&_ol]:my-1 [&_strong]:text-foreground [&_code]:bg-secondary [&_code]:text-foreground [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_a]:text-primary",children:(0,s.jsx)(D.MarkdownContent,{children:(0,X.j)(t.description)})}),(0,s.jsxs)(q(),{href:"/projects/".concat(a,"/proposals/").concat(t.uuid),className:"flex items-center gap-1 text-[13px] font-medium text-primary hover:underline",children:[d("panel.viewProposal"),(0,s.jsx)(O.A,{className:"h-3.5 w-3.5"})]}),m.length>0&&(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[1px] text-muted-foreground",children:c(k?"documents":"documentDrafts")}),(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground",children:m.length})]}),(0,s.jsx)("div",{className:"space-y-0",children:m.map((e,a)=>(0,s.jsx)(J.D,{entityType:"proposal",entityUuid:t.uuid,subEntityType:"draft",subEntityUuid:e.uuid||"draft-".concat(a),badgeInside:!0,children:(0,s.jsxs)(v.$,{variant:"ghost",className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-3.5 hover:bg-background transition-colors cursor-pointer -mx-1 px-1 rounded-lg",onClick:()=>e.content&&(null==l?void 0:l({title:e.title,type:e.type,content:e.content})),children:[(0,s.jsx)(K.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)(y.E,{variant:"outline",className:"shrink-0 text-[10px] font-medium border-border text-muted-foreground bg-secondary px-2 py-0.5 font-mono",children:x(X.y[e.type]||"typeOther")}),(0,s.jsx)("span",{className:"flex-1 min-w-0 text-left text-[13px] text-foreground truncate",children:e.title})]})},e.uuid||a))})]}),(p.length>0||b.length>0)&&(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between pb-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[1px] text-muted-foreground",children:c(k?"tasks":"taskDrafts")}),(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground",children:k&&b.length>0?b.length:p.length})]}),(0,s.jsxs)("span",{className:"text-[12px] text-muted-foreground",children:[A,"/",k&&b.length>0?b.length:p.length]})]}),(0,s.jsx)("div",{className:"-mx-6 border-t border-border"}),S.length>0&&(0,s.jsxs)("div",{className:"flex gap-0.5 rounded-lg border border-border bg-[#F7F6F3] dark:bg-[#1e1d1b] p-0.5 mt-3 w-fit",children:[(0,s.jsx)(v.$,{variant:"ghost",size:"sm",onClick:()=>j("cards"),className:"rounded-md px-2.5 py-1 h-auto text-[11px] font-medium transition-colors ".concat("cards"===g?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-muted-foreground"),children:c("cardsView")}),(0,s.jsx)(v.$,{variant:"ghost",size:"sm",onClick:()=>j("dag"),className:"rounded-md px-2.5 py-1 h-auto text-[11px] font-medium transition-colors ".concat("dag"===g?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-muted-foreground"),children:u("dagView")})]}),"cards"===g&&(0,s.jsx)("div",{className:"space-y-0",children:k&&b.length>0?b.map(e=>(0,s.jsx)(J.D,{entityType:"task",entityUuid:e.uuid,badgeInside:!0,children:(0,s.jsx)(ei,{task:{uuid:e.uuid,title:e.title},expanded:!1,onToggle:()=>{},onNavigate:i?()=>i(e.uuid):void 0,taskStatus:e.status})},e.uuid)):p.map((e,a)=>(0,s.jsx)(J.D,{entityType:"proposal",entityUuid:t.uuid,subEntityType:"draft",subEntityUuid:e.uuid,badgeInside:!0,children:(0,s.jsx)(ei,{task:e,expanded:h.has(a),onToggle:()=>{f(e=>{let t=new Set(e);return t.has(a)?t.delete(a):t.add(a),t})}})},e.uuid))}),"dag"===g&&(0,s.jsx)("div",{className:"mt-3",children:(0,s.jsx)(W._u,{tasks:C,edges:S,readonly:!0,height:F,onNodeClick:i})})]}),0===m.length&&0===p.length&&0===b.length&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground italic",children:c("emptyContainer")})]})}let er={open:"border-[#D9D9D9] dark:border-[#3a3a40] bg-card",assigned:"border-[#1976D2] bg-[#1976D2]",in_progress:"border-[#5A9E6F] bg-[#5A9E6F]",to_verify:"border-[#7B1FA2] bg-[#7B1FA2]",done:"border-[#00796B] bg-[#00796B]",closed:"border-[#9A9A9A] bg-[#9A9A9A] dark:border-[#6b6862] dark:bg-[#6b6862]"},en={open:null,assigned:null,in_progress:{className:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#5A9E6F] dark:text-[#6FD19A]",key:"inProgress"},to_verify:{className:"bg-[#F3E5F5] dark:bg-[#281630] text-[#7B1FA2] dark:text-[#C98FE0]",key:"toVerify"},done:{className:"bg-[#E0F2F1] dark:bg-[#12292a] text-[#00796B] dark:text-[#4FD1C0]",key:"done"},closed:{className:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-muted-foreground",key:"done"}};function ei(e){let{task:t,expanded:a,onToggle:r,onNavigate:i,taskStatus:l}=e,d=(0,n.c)("proposals"),o=(0,n.c)("acceptanceCriteria"),c=(0,n.c)("status"),u=t.acceptanceCriteriaItems||[],x=!!(t.description||u.length>0),m=l?er[l]||er.open:"border-[#D9D9D9] dark:border-[#3a3a40] bg-card",p=l?en[l]:null,h=(0,s.jsx)("span",{className:"shrink-0 h-2 w-2 rounded-full border-[1.5px] ".concat(m," transition-colors")}),f=(0,s.jsx)("span",{className:"flex-1 min-w-0 text-[13px] leading-snug truncate text-muted-foreground",children:t.title}),g=p?(0,s.jsx)("span",{className:"shrink-0 rounded px-1.5 py-0.5 text-[10px] font-medium ".concat(p.className),children:c(p.key)}):null;return i?(0,s.jsxs)(v.$,{variant:"ghost",onClick:i,className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-4 cursor-pointer hover:bg-background -mx-1 px-1 rounded-lg transition-colors",children:[(0,s.jsx)(K.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),h,f,g]}):(0,s.jsxs)("div",{children:[(0,s.jsxs)(v.$,{variant:"ghost",onClick:x?r:void 0,className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-4 ".concat(x?"cursor-pointer hover:bg-background -mx-1 px-1 rounded-lg":""," transition-colors"),children:[a?(0,s.jsx)(G.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}):(0,s.jsx)(O.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),h,f,g]}),a&&x&&(0,s.jsxs)("div",{className:"pb-3 pl-5 space-y-3",children:[t.description&&(0,s.jsx)("p",{className:"text-[11px] leading-relaxed text-muted-foreground",children:t.description}),u.length>0&&(0,s.jsxs)("div",{className:"rounded-lg bg-background p-3 space-y-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(H.A,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,s.jsx)("span",{className:"text-[11px] font-semibold text-foreground",children:d("taskAcceptanceCriteria")})]}),(0,s.jsx)("div",{className:"space-y-1.5",children:u.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,s.jsx)("p",{className:"text-[11px] leading-snug text-foreground/80 flex-1",children:e.description}),!1!==e.required&&(0,s.jsx)("span",{className:"shrink-0 text-[10px] font-medium text-[#E65100] dark:text-[#F0A050]",children:o("required")})]},t))})]})]})]})}var el=a(29767);let ed=(0,m.A)("message-square-text",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M7 11h10",key:"1twpyw"}],["path",{d:"M7 15h6",key:"d9of3u"}],["path",{d:"M7 7h8",key:"af5zfr"}]]);var eo=a(56770),ec=a(60532),eu=a(97964),ex=a(52217);let em=(0,ex.createServerReference)("406a1ea166eba751771eb7dd0f2a56499e77ed49a4",ex.callServer,void 0,ex.findSourceMapURL,"getElaborationAction");var ep=a(90795);function eh(e){let{idea:t,proposals:a,tasks:i,onSelectTask:l}=e,d=(0,n.c)("ideaTracker"),o=(0,n.c)(),[c,u]=(0,r.useState)(null),[x,m]=(0,r.useState)(new Set);(0,r.useEffect)(()=>{"open"!==t.status&&em(t.uuid).then(e=>{e.success&&e.data&&u(e.data)})},[t.uuid,t.status]);let p=(0,r.useMemo)(()=>"open"===t.status?"idea_created":"elaborating"===t.status||0===a.length?"elaboration":a.some(e=>"approved"===e.status)&&i.length>0?"tasks":"proposal",[t.status,a,i]),h=(0,r.useMemo)(()=>{let e=["idea_created","elaboration","proposal","tasks"],t=e.indexOf(p);return e.map((e,a)=>({id:e,labelKey:({idea_created:"panel.timeline.ideaCreated",elaboration:"panel.timeline.elaboration",proposal:"panel.timeline.proposal",tasks:"panel.timeline.tasksProgress"})[e],status:a<t?"completed":a===t?"active":"upcoming",icon:({idea_created:(0,s.jsx)(el.A,{className:"h-3.5 w-3.5"}),elaboration:(0,s.jsx)(ed,{className:"h-3.5 w-3.5"}),proposal:(0,s.jsx)($.A,{className:"h-3.5 w-3.5"}),tasks:(0,s.jsx)(H.A,{className:"h-3.5 w-3.5"})})[e]}))},[p]);(0,r.useEffect)(()=>{let e=h.find(e=>"active"===e.status);e&&m(new Set([e.id]))},[p]);let f=(0,r.useCallback)(e=>{m(t=>{let a=new Set(t);return a.has(e)?a.delete(e):a.add(e),a})},[]),g=(0,r.useMemo)(()=>"open"===t.status?d("panel.timeline.noElaboration"):"skipped"===t.elaborationStatus?d("panel.timeline.elaborationSkipped"):"resolved"===t.elaborationStatus&&c?d("panel.timeline.elaborationComplete",{count:c.summary.totalQuestions}):"elaborating"===t.status?d("panel.timeline.elaborationInProgress"):c&&c.summary.totalQuestions>0?d("panel.timeline.elaborationComplete",{count:c.summary.totalQuestions}):d("panel.timeline.noElaboration"),[t.status,t.elaborationStatus,c,d]),j=(0,r.useMemo)(()=>{if(0===a.length)return d("panel.timeline.noProposal");let e=a.filter(e=>"approved"===e.status).length,t=a.filter(e=>"pending"===e.status).length;if(e>0&&1===a.length)return d("panel.timeline.proposalApproved");if(e>0)return d("panel.timeline.proposalsApproved",{count:e,total:a.length});if(t>0)return d("panel.timeline.proposalPending");switch(a[0].status){case"draft":default:return d("panel.timeline.proposalDraft");case"rejected":return d("panel.timeline.proposalRejected")}},[a,d]),v=(0,r.useMemo)(()=>{let e=0,t=0;for(let l of a){var s,r,n,i;e+=null!=(n=null==(s=l.documentDrafts)?void 0:s.length)?n:0,t+=null!=(i=null==(r=l.taskDrafts)?void 0:r.length)?i:0}return{docCount:e,taskDraftCount:t}},[a]),b=(0,r.useMemo)(()=>{let e=i.filter(e=>"done"===e.status||"closed"===e.status).length,t=i.filter(e=>"in_progress"===e.status).length;return{done:e,inProgress:t,toVerify:i.filter(e=>"to_verify"===e.status).length,open:i.filter(e=>"open"===e.status||"assigned"===e.status).length,total:i.length}},[i]);return(0,s.jsx)("div",{className:"space-y-0",children:h.map((e,r)=>{let n=x.has(e.id),u=r===h.length-1;return(0,s.jsxs)("div",{className:"flex gap-3",children:[(0,s.jsxs)("div",{className:"flex flex-col items-center w-5 shrink-0",children:[(0,s.jsx)("div",{className:"mt-1",children:"completed"===e.status?(0,s.jsx)("div",{className:"h-5 w-5 rounded-full bg-[#E0F2F1] dark:bg-[#12292a] flex items-center justify-center",children:(0,s.jsx)(ec.A,{className:"h-3 w-3 text-[#00796B] dark:text-[#4FD1C0]"})}):"active"===e.status?(0,s.jsx)("div",{className:"h-5 w-5 rounded-full bg-primary flex items-center justify-center",children:(0,s.jsx)(eu.A,{className:"h-2 w-2 fill-white text-white"})}):(0,s.jsx)("div",{className:"h-5 w-5 rounded-full border-2 border-dashed border-[#D9D9D9] dark:border-[#3a3a40] flex items-center justify-center",children:(0,s.jsx)(eu.A,{className:"h-2 w-2 text-muted-foreground"})})}),!u&&(0,s.jsx)("div",{className:"flex-1 w-px bg-border mt-1 min-h-[8px]"})]}),(0,s.jsxs)("div",{className:"flex-1 min-w-0 ".concat(u?"pb-0":"pb-4"),children:[(0,s.jsxs)("button",{onClick:()=>f(e.id),className:"flex items-center gap-1.5 w-full text-left group cursor-pointer",children:[n?(0,s.jsx)(G.A,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}):(0,s.jsx)(O.A,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}),(0,s.jsx)("span",{className:"text-[13px] font-medium ".concat("active"===e.status?"text-primary":"completed"===e.status?"text-foreground":"text-muted-foreground"),children:d(e.labelKey)}),!n&&(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground truncate ml-1",children:(e=>{switch(e.id){case"idea_created":return t.createdBy?t.createdBy.name:"";case"elaboration":return g;case"proposal":return j;case"tasks":return i.length>0?d("panel.timeline.tasksComplete",{done:b.done,total:b.total}):d("panel.timeline.noTasks");default:return""}})(e)})]}),(e=>{let r=x.has(e.id);switch(e.id){case"idea_created":return r?(0,s.jsxs)("div",{className:"mt-2 space-y-1.5",children:[t.createdBy&&(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:d("panel.timeline.createdBy",{name:t.createdBy.name})}),(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:(0,ep.fw)(t.createdAt,o)}),t.content&&(0,s.jsxs)("p",{className:"text-[12px] text-muted-foreground line-clamp-2",children:[t.content.slice(0,120),t.content.length>120?"...":""]})]}):null;case"elaboration":return r?(0,s.jsxs)("div",{className:"mt-2 space-y-1.5",children:[(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:g}),c&&c.rounds.length>0&&(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:d("panel.timeline.rounds",{count:c.rounds.length})})]}):null;case"proposal":return r?(0,s.jsxs)("div",{className:"mt-2 space-y-1.5",children:[(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:j}),a.length>0&&(0,s.jsxs)("div",{className:"space-y-1",children:[v.docCount>0&&(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-[12px] text-muted-foreground",children:[(0,s.jsx)(eo.A,{className:"h-3 w-3"}),(0,s.jsx)("span",{children:d("panel.timeline.documents",{count:v.docCount})})]}),v.taskDraftCount>0&&(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-[12px] text-muted-foreground",children:[(0,s.jsx)(H.A,{className:"h-3 w-3"}),(0,s.jsx)("span",{children:d("panel.timeline.tasks",{count:v.taskDraftCount})})]})]})]}):null;case"tasks":return r?(0,s.jsx)("div",{className:"mt-2 space-y-2",children:0===i.length?(0,s.jsx)("p",{className:"text-[12px] text-muted-foreground",children:d("panel.timeline.noTasks")}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)("div",{className:"flex-1 h-1.5 rounded-full bg-[#F0EDE8] dark:bg-[#1f1e1c] overflow-hidden flex",children:[b.done>0&&(0,s.jsx)("div",{className:"h-full bg-[#00796B]",style:{width:"".concat(b.done/b.total*100,"%")}}),b.inProgress>0&&(0,s.jsx)("div",{className:"h-full bg-[#1976D2]",style:{width:"".concat(b.inProgress/b.total*100,"%")}}),b.toVerify>0&&(0,s.jsx)("div",{className:"h-full bg-[#7B1FA2]",style:{width:"".concat(b.toVerify/b.total*100,"%")}})]}),(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground shrink-0",children:d("panel.timeline.tasksComplete",{done:b.done,total:b.total})})]}),(0,s.jsxs)("div",{className:"space-y-1",children:[i.slice(0,5).map(e=>(0,s.jsxs)("button",{onClick:()=>l(e.uuid),className:"flex items-center gap-2 w-full text-left rounded-md px-2 py-1.5 hover:bg-secondary transition-colors group cursor-pointer",children:[(0,s.jsx)(K.A,{className:"h-3 w-3 text-muted-foreground shrink-0 group-hover:text-primary"}),(0,s.jsx)("span",{className:"h-2 w-2 rounded-full shrink-0 ".concat((0,ep.eT)(e.status))}),(0,s.jsx)("span",{className:"flex-1 text-[12px] text-foreground truncate group-hover:text-primary",children:e.title})]},e.uuid)),i.length>5&&(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground px-2",children:d("panel.timeline.moreItems",{count:i.length-5})})]})]})}):null;default:return null}})(e)]})]},e.id)})})}let ef=(0,ex.createServerReference)("603964df7ea6e899b7f77fb2fb1c2814093c4be728",ex.callServer,void 0,ex.findSourceMapURL,"getReportsForIdeaAction");function eg(e){let{projectUuid:t,ideaUuid:a,proposals:i,onDocClick:l}=e,d=(0,n.c)("idea"),o=(0,n.c)("documents"),[c,u]=(0,r.useState)([]),[m,p]=(0,r.useState)(!0),h=i.some(e=>"approved"===e.status),f=(0,r.useCallback)(async()=>{if(!h){u([]),p(!1);return}try{let e=await ef(t,a);if(e.success){let t=[...e.data].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime());u(t.map(e=>{var t;return{uuid:e.uuid,title:e.title,type:e.type,content:null!=(t=e.content)?t:null,createdAt:e.createdAt}}))}}catch(e){ee.q.error("Failed to fetch reports for idea:",e)}finally{p(!1)}},[t,a,h]);return((0,r.useEffect)(()=>{p(!0),f()},[f]),(0,F.eV)("document",f),m)?h?(0,s.jsx)("div",{className:"flex items-center justify-center py-3",children:(0,s.jsx)(x.A,{className:"h-4 w-4 animate-spin text-primary"})}):null:0===c.length?null:(0,s.jsxs)("div",{className:"mt-6 space-y-3",children:[(0,s.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[1px] text-muted-foreground",children:d("reportsList")}),(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground",children:c.length}),(0,s.jsxs)("span",{className:"text-[11px] text-muted-foreground",children:["\xb7 ",d("reportsAcrossProposals")]})]}),(0,s.jsx)("div",{className:"space-y-0",children:c.map(e=>(0,s.jsxs)(v.$,{variant:"ghost",className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-3.5 hover:bg-background transition-colors cursor-pointer -mx-1 px-1 rounded-lg",onClick:()=>{var t;return l({title:e.title,type:"report",content:null!=(t=e.content)?t:""})},children:[(0,s.jsx)(K.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)(y.E,{variant:"outline",className:"shrink-0 text-[10px] font-medium border-border text-muted-foreground bg-secondary px-2 py-0.5 font-mono",children:o(X.y[e.type]||"typeOther")}),(0,s.jsx)("span",{className:"flex-1 min-w-0 text-left text-[13px] text-foreground truncate",children:e.title})]},e.uuid))})]})}var ej=a(94903),ev=a(92657);let eb=["in_progress","to_verify","open","assigned","done","closed"];function ey(e){let{tasks:t,projectUuid:a,proposalUuids:i,onSelectTask:l}=e,d=(0,n.c)("ideaTracker"),[o,c]=(0,r.useState)({}),u=(0,r.useMemo)(()=>t.map(e=>e.uuid),[t]),x=(0,r.useCallback)(async()=>{if(0===u.length)return;let e=await (0,ev.h)(u);e.success&&e.data&&c(e.data)},[u]);(0,r.useEffect)(()=>{x()},[x]),(0,F.eV)("task",x);let m=(0,r.useMemo)(()=>{let e=[];for(let a of eb){let s=t.filter(e=>e.status===a);s.length>0&&e.push({status:a,tasks:s})}let a=new Set(eb),s=t.filter(e=>!a.has(e.status));return s.length>0&&e.push({status:"other",tasks:s}),e},[t]),[p,h]=(0,r.useState)(new Set),f=(0,r.useMemo)(()=>{let e=t.length,a=t.filter(e=>"done"===e.status||"closed"===e.status).length,s=0,r=0,n=0,i=0;for(let e of t)e.acceptanceSummary&&(s+=e.acceptanceSummary.total,r+=e.acceptanceSummary.passed,n+=e.acceptanceSummary.required,i+=e.acceptanceSummary.requiredPassed);return{total:e,done:a,acTotal:s,acPassed:r,acRequired:n,acRequiredPassed:i}},[t]);return 0===t.length?(0,s.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-12 text-center",children:[(0,s.jsx)(H.A,{className:"h-8 w-8 text-muted-foreground"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:d("panel.taskList.noTasks")})]}):(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 rounded-lg bg-[#FAFAF7] dark:bg-[#1e1e1c] px-3 py-2",children:[(0,s.jsx)("span",{className:"text-[12px] text-muted-foreground",children:d("panel.taskList.summary",{done:f.done,total:f.total})}),f.acTotal>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[12px] text-muted-foreground",children:"\xb7"}),(0,s.jsx)("span",{className:"text-[12px] text-muted-foreground",children:d("panel.taskList.acSummary",{passed:f.acRequiredPassed,total:f.acRequired})})]}),i.length>0&&(0,s.jsxs)(q(),{href:"/projects/".concat(a,"/tasks?proposalUuids=").concat(i.join(",")),className:"ml-auto flex items-center gap-1 text-[13px] font-medium text-primary shrink-0",children:[d("panel.taskList.viewKanban"),(0,s.jsx)(O.A,{className:"h-3.5 w-3.5"})]})]}),m.map(e=>{let t=p.has(e.status);return(0,s.jsxs)("div",{children:[(0,s.jsxs)("button",{onClick:()=>{var t;return t=e.status,void h(e=>{let a=new Set(e);return a.has(t)?a.delete(t):a.add(t),a})},className:"flex items-center gap-2 w-full text-left py-1.5 group cursor-pointer",children:[t?(0,s.jsx)(O.A,{className:"h-3.5 w-3.5 text-muted-foreground"}):(0,s.jsx)(G.A,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,s.jsx)("span",{className:"h-2 w-2 rounded-full shrink-0 ".concat((0,ep.eT)(e.status))}),(0,s.jsx)("span",{className:"text-[13px] font-medium text-foreground",children:function(e,t){switch(e){case"in_progress":return t("panel.taskList.inProgress");case"to_verify":return t("panel.taskList.toVerify");case"open":return t("panel.taskList.open");case"assigned":return t("panel.taskList.assigned");case"done":return t("panel.taskList.done");case"closed":return t("panel.taskList.closed");default:return e}}(e.status,d)}),(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground ml-auto",children:e.tasks.length})]}),!t&&(0,s.jsx)("div",{className:"ml-3 space-y-0.5",children:e.tasks.map(e=>{let t=o[e.uuid]||0,a=e.acceptanceSummary;return(0,s.jsx)(J.D,{entityType:"task",entityUuid:e.uuid,badgeInside:!0,children:(0,s.jsxs)("button",{onClick:()=>l(e.uuid),className:"flex items-center gap-2 w-full text-left rounded-md px-2.5 py-2 hover:bg-secondary transition-colors group cursor-pointer",children:[(0,s.jsx)(K.A,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0 group-hover:text-primary"}),(0,s.jsx)("span",{className:"h-1.5 w-1.5 rounded-full shrink-0 ".concat((0,ep.eT)(e.status))}),(0,s.jsx)("span",{className:"flex-1 text-[13px] text-foreground truncate group-hover:text-primary",children:e.title}),a&&a.total>0&&(0,s.jsxs)("span",{className:"inline-flex items-center gap-0.5 shrink-0 rounded-full bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0.5 text-[10px] text-muted-foreground",children:[(0,s.jsx)(ec.A,{className:"h-2.5 w-2.5"}),a.requiredPassed,"/",a.required]}),e.assignee&&(0,s.jsxs)("span",{className:"shrink-0 inline-flex items-center gap-1 text-[10px] text-muted-foreground max-w-[72px] truncate",title:e.assignee.name,children:[(0,B.bB)(e.assignee)?(0,s.jsx)(P.AgentAvatar,{name:e.assignee.name,size:14,className:"shrink-0 rounded-full"}):(0,s.jsx)(ej.A,{className:"h-2.5 w-2.5 shrink-0"}),e.assignee.name.split(/[@\s]/)[0]]}),t>0&&(0,s.jsx)("span",{className:"inline-flex items-center justify-center h-4 min-w-[16px] rounded-full bg-[#E8F5E9] dark:bg-[#14281a] text-[#2E7D32] dark:text-[#5FD07E] text-[9px] font-semibold shrink-0",title:d("panel.taskList.workersActive",{count:t}),children:t})]})},e.uuid)})})]},e.status)})]})}var eN=a(84336);function ek(e){let{ideaUuid:t}=e,a=(0,n.c)(),[i,l]=(0,r.useState)([]),[d,o]=(0,r.useState)(!0),c=(0,r.useCallback)(async()=>{o(!0),l((await (0,eN.x)(t)).activities),o(!1)},[t]);return(0,r.useEffect)(()=>{c()},[c]),(0,s.jsxs)("div",{className:"mt-5",children:[(0,s.jsx)(w.J,{className:"text-[11px] font-medium uppercase tracking-wider text-muted-foreground",children:a("common.activity")}),(0,s.jsx)("div",{className:"mt-2",children:d?(0,s.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,s.jsx)(x.A,{className:"h-4 w-4 animate-spin text-muted-foreground"})}):0===i.length?(0,s.jsx)("p",{className:"text-sm text-muted-foreground italic",children:a("common.noActivity")}):i.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-stretch gap-2.5",children:[(0,s.jsxs)("div",{className:"flex flex-col items-center w-2 shrink-0",children:[(0,s.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded-full border-[1.5px] border-[#D9D9D9] dark:border-[#3a3a40] bg-card"}),t<i.length-1&&(0,s.jsx)("div",{className:"flex-1 w-px bg-border mt-1"})]}),(0,s.jsxs)("div",{className:"flex-1 pb-3",children:[(0,s.jsx)("p",{className:"text-[13px] text-foreground",children:function(e,t){let{action:a,actorName:s}=e;switch(a){case"created":case"idea_created":return t("activity.ideaCreated",{actor:s});case"assigned":case"idea_assigned":return t("activity.ideaAssigned",{actor:s});case"claimed":case"idea_claimed":return t("activity.ideaClaimed",{actor:s});case"released":case"idea_released":return t("activity.ideaReleased",{actor:s});case"status_changed":case"idea_status_changed":return t("activity.ideaStatusChanged",{actor:s});case"edited":case"idea_edited":return t("activity.ideaEdited",{actor:s});case"reparented":case"idea_reparented":return t("activity.ideaReparented",{actor:s});case"elaboration_started":return t("activity.elaborationStarted",{actor:s});case"elaboration_answered":return t("activity.elaborationAnswered",{actor:s});case"elaboration_skipped":return t("activity.elaborationSkipped",{actor:s});case"elaboration_resolved":return t("activity.elaborationResolved",{actor:s});case"elaboration_followup":return t("activity.elaborationFollowup",{actor:s});default:return t("activity.genericAction",{actor:s,action:a})}}(e,a)}),(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground",children:(0,ep.fw)(e.createdAt,a)})]})]},e.uuid))})]})}var ew=a(6603);function eC(e){let{ideaUuid:t,currentUserUuid:a,commentCount:i,onCommentCountChange:l}=e,d=(0,n.c)("ideaTracker"),[o,c]=(0,r.useState)("comments");return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex gap-1 rounded-lg bg-secondary p-0.5",children:[(0,s.jsxs)("button",{onClick:()=>c("comments"),className:"flex-1 rounded-md px-3 py-1.5 text-[13px] font-medium transition-colors flex items-center justify-center gap-1.5 cursor-pointer ".concat("comments"===o?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-muted-foreground"),children:[d("panel.activityTab.comments"),i>0&&(0,s.jsx)("span",{className:"inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-secondary text-muted-foreground text-[10px] font-semibold leading-none",children:i})]}),(0,s.jsx)("button",{onClick:()=>c("activity"),className:"flex-1 rounded-md px-3 py-1.5 text-[13px] font-medium transition-colors cursor-pointer ".concat("activity"===o?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-muted-foreground"),children:d("panel.activityTab.activity")})]}),(0,s.jsx)("div",{children:"activity"===o?(0,s.jsx)(ek,{ideaUuid:t}):(0,s.jsx)(ew.$m,{targetType:"idea",targetUuid:t,currentUserUuid:a,onCountChange:l,compact:!0})})]})}var eS=a(79507),eF=a(24522),eA=a(26092);let eE=(0,m.A)("ban",[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var e_=a(30028),eD=a(97438),eT=a(4365),eU=a(24377);let eR=(0,ex.createServerReference)("40961fd2c514e009922e207a11cabfc30983a4ba2e",ex.callServer,void 0,ex.findSourceMapURL,"getProjectIdeasForPickerAction"),eP=(0,ex.createServerReference)("60c60e6d3d8ab3e1c7a1feeb6a5f95223a80a10bf9",ex.callServer,void 0,ex.findSourceMapURL,"setIdeaParentAction");function eI(e){let{open:t,onOpenChange:a,ideaUuid:d,ideaTitle:o,projectUuid:c,currentParentUuid:u,descendantUuids:m,onChanged:p}=e,h=(0,n.c)("ideaTracker.lineage"),f=(0,n.c)("common"),g=(0,i.r)(),[j,b]=(0,r.useState)([]),[y,N]=(0,r.useState)(!1),[k,w]=(0,r.useState)(!1),[C,S]=(0,r.useState)(!1),[F,A]=(0,r.useState)(null),E=new Set([d,...m]),_=(0,r.useCallback)(async()=>{w(!0),A(null);try{let e=await eR(c);e.success?(b(e.data),N(e.hasMore)):A(e.error)}catch(e){ee.q.error("Failed to load parent candidates:",e),A(h("saveFailed"))}w(!1)},[c,h]);(0,r.useEffect)(()=>{t&&_()},[t,_]);let D=async e=>{if(!C){S(!0),A(null);try{let t=await eP(d,e);t.success?(l.oR.success(e?h("save"):h("detach")),a(!1),g.refresh(),p()):A(t.error||h("saveFailed"))}catch(e){A(e instanceof Error?e.message:h("saveFailed"))}S(!1)}};return(0,s.jsx)(eD.lG,{open:t,onOpenChange:a,children:(0,s.jsxs)(eD.Cf,{children:[(0,s.jsxs)(eD.c7,{children:[(0,s.jsx)(eD.L3,{children:h("setParentTitle")}),(0,s.jsx)(eD.rr,{children:h("setParentDescription",{title:o})})]}),(0,s.jsxs)("div",{className:"min-w-0 space-y-3 pt-1",children:[k?(0,s.jsx)("div",{className:"flex h-40 items-center justify-center",children:(0,s.jsx)(x.A,{className:"h-5 w-5 animate-spin text-muted-foreground"})}):(0,s.jsx)("div",{className:"rounded-md border border-border",children:(0,s.jsxs)(eT.uB,{children:[(0,s.jsx)(eT.G7,{placeholder:h("searchPlaceholder")}),(0,s.jsxs)(eT.oI,{children:[(0,s.jsx)(eT.xL,{children:h("noCandidates")}),(0,s.jsx)(eT.L$,{children:j.map(e=>{let t=E.has(e.uuid),a=e.uuid===u;return(0,s.jsxs)(eT.h_,{value:e.title,disabled:t,onSelect:()=>{t||D(e.uuid)},className:(0,eU.cn)("flex min-w-0 items-center justify-between gap-2",t&&"opacity-55",a&&"bg-primary/10"),children:[(0,s.jsx)("span",{className:"min-w-0 flex-1 truncate text-[13px] text-foreground",children:e.title}),t&&(0,s.jsxs)("span",{className:"flex shrink-0 items-center gap-1 text-[11px] font-medium text-[#B0654A] dark:text-[#EBA890]",children:[(0,s.jsx)(eE,{className:"h-3 w-3"}),h("cycleBlocked")]})]},e.uuid)})})]})]})}),(0,s.jsxs)("div",{className:"flex items-start gap-2 rounded-md bg-[#FBF0EB] dark:bg-[#221e1b] px-3 py-2.5",children:[(0,s.jsx)(e_.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-[#B0654A] dark:text-[#EBA890]"}),(0,s.jsx)("p",{className:"text-[12px] leading-relaxed text-[#9A5238] dark:text-[#E9A088]",children:h("cycleWarning")})]}),y&&(0,s.jsx)("p",{className:"px-1 text-[12px] text-muted-foreground",role:"status",children:h("pickerTruncated")}),F&&(0,s.jsx)("p",{className:"text-xs text-destructive",role:"alert",children:F})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3 pt-2",children:[u?(0,s.jsx)(v.$,{variant:"outline",className:"border-border",onClick:()=>D(null),disabled:C,children:h("detach")}):(0,s.jsx)("span",{}),(0,s.jsx)(v.$,{variant:"outline",className:"border-border",onClick:()=>a(!1),disabled:C,children:f("cancel")})]})]})})}var eM=a(875),eB=a(55561),eL=a(28112);let ez=(0,ex.createServerReference)("40105aaae35dd17e0115cd8b12393c5a55a0c22ec3",ex.callServer,void 0,ex.findSourceMapURL,"getIdeaAction");var eV=a(27251),eq=a(73785),e$=a(30615),eO=a(90665),eK=a(11166),eG=a(53001),eH=a(29496),eJ=a(80973),eQ=a(2201),eW=a(21180),eX=a(35020),eZ=a(38106),eY=a(77390);function e0(e){var t,a,m,A,E,_,D;let{ideaUuid:T,projectUuid:U,currentUserUuid:R,onClose:P,onNavigate:I}=e,M=(0,n.c)(),B=(0,n.c)("ideaTracker"),L=(0,n.c)("status"),V=(0,n.c)("ideaTracker.lineage"),q=(0,i.r)(),[$,O]=(0,r.useState)(null),[K,G]=(0,r.useState)(!0),[H,J]=(0,r.useState)(null),[Q,W]=(0,r.useState)([]),[X,ea]=(0,r.useState)([]),[es,er]=(0,r.useState)("overview"),[en,ei]=(0,r.useState)(new Set(["overview"])),[el,ed]=(0,r.useState)(!1),[eo,ec]=(0,r.useState)(0),[eu,ex]=(0,r.useState)(!1),[em,ef]=(0,r.useState)(!1),[ej,ev]=(0,r.useState)(null),[eb,eN]=(0,r.useState)(!0),[ek,ew]=(0,r.useState)(!1),[eE,e_]=(0,r.useState)(null),[eD,eT]=(0,r.useState)(!1),{start:eU,pickerState:eR,confirmPick:eP,cancelPick:e0,isResolving:e1}=(0,eQ.E)({reassignNoWake:eX.U,previewIdeaUuid:null==$?void 0:$.uuid}),[e2,e5]=(0,r.useState)(!1),[e3,e4]=(0,r.useState)(""),[e9,e6]=(0,r.useState)(""),[e8,e7]=(0,r.useState)(!1),[te,tt]=(0,r.useState)(null),[ta,ts]=(0,r.useState)(!1),[tr,tn]=(0,r.useState)(!1),[ti,tl]=(0,r.useState)(!1),[td,to]=(0,r.useState)(!1),[tc,tu]=(0,r.useState)(null),[tx,tm]=(0,r.useState)(null),[tp,th]=(0,r.useState)(null),tf=(0,r.useCallback)(e=>{th(null),tu(e)},[]),tg=(0,r.useCallback)(e=>{tu(null),tm(null),th(e)},[]),[tj,tv]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=window.matchMedia("(min-width: 960px)");tv(e.matches);let t=e=>tv(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]);let[tb,ty]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=setTimeout(()=>ty(!0),300);return()=>clearTimeout(e)},[]);let tN=(0,r.useCallback)(e=>{let t=new URLSearchParams(window.location.search);t.set("tab",e),window.history.replaceState(null,"","".concat(window.location.pathname,"?").concat(t.toString()))},[]),tk=(0,r.useCallback)(async()=>{try{let e=await ez(T);e.success?(O(e.data),J(null)):J(B("Not found"===e.error?"panel.notFound":"panel.loadFailed"))}catch(e){J(B("panel.loadFailed"))}finally{G(!1)}},[T,B]);(0,r.useEffect)(()=>{G(!0),tk()},[tk]),(0,F.eV)("idea",tk),(0,F.eV)("proposal",tk),(0,F.eV)("task",tk);let tw=null==$?void 0:$.uuid,tC=null==$?void 0:$.status,tS=(0,r.useCallback)(async()=>{if(!tw||"open"===tC)return void W([]);try{let e=await (0,Z.U)(U,tw);e.success&&W(e.data)}catch(e){ee.q.error("Failed to fetch proposals:",e)}},[U,tw,tC]);(0,r.useEffect)(()=>{tS()},[tS]),(0,F.eV)("proposal",tS);let tF=(0,r.useCallback)(async()=>{let e=Q.filter(e=>"approved"===e.status);if(0===e.length)return void ea([]);try{let t=(await Promise.all(e.map(e=>(0,Y.c)(U,e.uuid)))).flatMap(e=>e.success&&e.data?e.data.map(e=>{var t,a,s;return{uuid:e.uuid,title:e.title,status:e.status,commentCount:null!=(t=e.commentCount)?t:0,assignee:null!=(a=e.assignee)?a:null,acceptanceSummary:null!=(s=e.acceptanceSummary)?s:null}}):[]);ea(t)}catch(e){ee.q.error("Failed to fetch tasks:",e)}},[U,Q]);(0,r.useEffect)(()=>{tF()},[tF]),(0,F.eV)("task",tF);let tA=(0,r.useCallback)(async()=>{if(!tw)return;let e=await (0,eq.z)(tw);e.success&&e.data&&ev(e.data),eN(!1)},[tw]);(0,r.useEffect)(()=>{tA()},[tA]),(0,F.eV)("idea",tA);let tE=(0,r.useMemo)(()=>$?function(e,t,a){let s=["overview"];return s.push("elaboration"),t.length>0&&s.push("proposal"),a.length>0&&s.push("tasks"),s.push("activity"),s}(0,Q,X):["overview","activity"],[$,Q,X]),t_=(0,r.useRef)(new URLSearchParams(window.location.search).get("tab")),tD=$?function(e){switch(e){case"open":case"researching":case"answer_questions":return"elaboration";case"planning":case"review_proposal":return"proposal";case"building":case"verify_work":return"tasks";default:return"overview"}}($.badgeHint):"overview";(0,r.useEffect)(()=>{let e;if(!$||el)return;let t=t_.current;if(t)if(!tE.includes(t))return;else e=t,t_.current=null,ed(!0);else if(tE.includes(tD))e=tD;else{if("overview"!==tD)return;e="overview"}er(e),ei(t=>new Set([...t,e])),tN(e)},[null==$?void 0:$.uuid,tD,tE]),(0,r.useEffect)(()=>{ed(!1)},[T]),(0,r.useEffect)(()=>{tE.includes(es)||er("overview")},[tE,es]);let tT=(0,r.useMemo)(()=>X.filter(e=>"in_progress"===e.status||"assigned"===e.status||"to_verify"===e.status).length,[X]),tU=(0,r.useCallback)(()=>{if(!tc)return void tm(null);(0,eV.Q)(tc).then(e=>{e.success&&tm(e.data)}).catch(e=>ee.q.error("Failed to load task details:",e))},[tc]);(0,r.useEffect)(()=>{tU()},[tU]),(0,F.eV)("task",tU),(0,r.useEffect)(()=>{e5(!1),e4((null==$?void 0:$.title)||""),e6((null==$?void 0:$.content)||""),tt(null)},[null==$?void 0:$.uuid,null==$?void 0:$.title,null==$?void 0:$.content]);let tR=()=>{e5(!1),e4((null==$?void 0:$.title)||""),e6((null==$?void 0:$.content)||""),tt(null)},tP=async()=>{if(!$||!e3.trim())return void tt(M("ideas.titleRequired"));e7(!0),tt(null);let e=await (0,eB.J)({ideaUuid:$.uuid,projectUuid:U,title:e3.trim(),content:e9.trim()||null});e7(!1),e.success?(e5(!1),await tk(),q.refresh()):tt(e.error||M("ideas.updateFailed"))},tI=async()=>{if(!$)return;ef(!0);let e=await (0,eL.Z)($.uuid,U);ef(!1),e.success&&(P(),q.refresh())},tM=async()=>{if(!$)return;ew(!0),e_(null);let e=await (0,e$.e)($.uuid);ew(!1),e.success?(eT(!0),await tk(),q.refresh()):e_(e.error||M("elaboration.verifyFailed"))},tB=async e=>{var t;if(!$)return;ts(!0),O({...$,isContainer:e});let a=await (0,eB.J)({ideaUuid:$.uuid,projectUuid:U,title:$.title,content:null!=(t=$.content)?t:null,isContainer:e});ts(!1),a.success?(await tk(),q.refresh()):(O({...$,isContainer:!e}),l.oR.error(a.error||M("ideas.updateFailed")))},tL=(null==$?void 0:$.derivedStatus)||"todo",tz=(null==$?void 0:$.isContainer)===!0,tV=null!==$,tq=(0,eK.o)({ideaStatus:null==$?void 0:$.status,elaborationStatus:null==$?void 0:$.elaborationStatus,elaboration:ej});return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:P}),(0,s.jsxs)("div",{className:"fixed right-0 top-14 md:top-0 z-50 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col border-l border-border bg-card shadow-xl ".concat(tb?"":"animate-in slide-in-from-right duration-300"),children:[(0,s.jsxs)("div",{className:"flex items-center justify-between border-b border-secondary px-6 py-5",children:[(0,s.jsx)("div",{className:"flex-1 min-w-0",children:K?(0,s.jsx)("div",{className:"h-5 w-40 animate-pulse rounded bg-secondary"}):$?e2?(0,s.jsx)("h2",{className:"text-base font-semibold text-foreground",children:M("ideas.editIdea")}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider ".concat(tz?"text-primary":"text-muted-foreground"),children:tz?V("typeTheme"):V("typeIdea")}),(0,s.jsx)("h2",{className:"text-base font-semibold text-foreground truncate",children:$.title}),(0,s.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,s.jsx)(y.E,{className:ep._5[tL]||ep._5.todo,children:$.badgeHint?B("badge.".concat(ep.Wl[$.badgeHint]||"open")):L(ep.Bj[tL]||"todo")}),tz&&$.childProgress&&$.childProgress.total>0&&(0,s.jsxs)("span",{className:"flex items-center gap-1 text-xs font-medium text-primary",title:V("childrenDone",{done:$.childProgress.done,total:$.childProgress.total}),children:[(0,s.jsx)(eY.C,{done:$.childProgress.done,total:$.childProgress.total,size:13,stroke:2}),$.childProgress.done,"/",$.childProgress.total]}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:(0,eZ.r)($.createdAt)})]})]}):(0,s.jsx)("h2",{className:"text-base font-semibold text-foreground",children:B("panel.notFound")})}),(0,s.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[$&&!e2&&(0,s.jsxs)(v.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-border px-2.5",onClick:()=>to(!0),title:V("deriveIdea"),"aria-label":V("deriveIdea"),children:[(0,s.jsx)(d.A,{className:"h-3.5 w-3.5 text-primary"}),(0,s.jsx)("span",{className:"text-[12px] font-medium text-primary",children:V("derive")})]}),$&&!e2&&(0,s.jsx)(v.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-border",onClick:()=>tn(!0),title:M("ideas.actions.move"),"aria-label":M("ideas.actions.move"),children:(0,s.jsx)(o.A,{className:"h-4 w-4 text-muted-foreground"})}),$&&"elaborated"!==$.status&&!e2&&(0,s.jsx)(v.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-border",onClick:()=>{$&&(e4($.title),e6($.content||""),tt(null),e5(!0))},title:M("ideas.editIdea"),children:(0,s.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,s.jsx)(v.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-border",onClick:e2?tR:P,children:(0,s.jsx)(u.A,{className:"h-4 w-4 text-muted-foreground"})})]})]}),$&&!K&&!e2&&(0,s.jsx)("div",{className:"border-b border-secondary px-6",children:(0,s.jsx)("div",{className:"flex gap-0 -mb-px",children:tE.map(e=>(0,s.jsxs)("button",{onClick:()=>{er(e),ed(!0),ei(t=>new Set([...t,e])),tN(e)},className:"relative flex items-center gap-1.5 px-3 py-2.5 text-[13px] font-medium transition-colors cursor-pointer ".concat(es===e?"text-primary border-b-2 border-primary":"text-muted-foreground hover:text-muted-foreground"),children:[B("panel.tabs.".concat(e)),"tasks"===e&&tT>0&&(0,s.jsx)("span",{className:"inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-[#E3F2FD] dark:bg-[#13253a] text-[#1976D2] dark:text-[#5AA9F0] text-[10px] font-semibold leading-none",children:tT}),"activity"===e&&eo>0&&(0,s.jsx)("span",{className:"inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-secondary text-muted-foreground text-[10px] font-semibold leading-none",children:eo})]},e))})}),(0,s.jsx)(b.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,s.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:K?(0,s.jsxs)("div",{className:"flex flex-1 items-center justify-center py-12",children:[(0,s.jsx)(x.A,{className:"h-6 w-6 animate-spin text-primary"}),(0,s.jsx)("span",{className:"ml-2 text-sm text-muted-foreground",children:B("loading")})]}):H?(0,s.jsx)("div",{className:"flex flex-1 items-center justify-center py-12",children:(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:H})}):$?e2?(0,s.jsxs)("div",{className:"space-y-5",children:[te&&(0,s.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:te}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(w.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-foreground",children:M("ideas.titleLabel")}),(0,s.jsx)(N.p,{id:"edit-title",value:e3,onChange:e=>e4(e.target.value),className:"border-border text-sm focus-visible:ring-primary",autoFocus:!0})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(w.J,{htmlFor:"edit-content",className:"text-[13px] font-medium text-foreground",children:M("common.content")}),(0,s.jsx)(k.T,{id:"edit-content",value:e9,onChange:e=>e6(e.target.value),rows:8,className:"border-border text-sm resize-none focus-visible:ring-primary"})]})]}):(0,s.jsxs)(s.Fragment,{children:[en.has("overview")&&(0,s.jsxs)("div",{style:{display:"overview"===es?"block":"none"},children:[(0,s.jsxs)("div",{className:"mb-5 flex items-start justify-between gap-3 rounded-lg border border-[#EFEBE3] dark:border-[#2a2a2e] bg-background px-3.5 py-3",children:[(0,s.jsxs)("div",{className:"min-w-0 space-y-0.5",children:[(0,s.jsxs)(w.J,{htmlFor:"container-toggle",className:"flex items-center gap-1.5 text-[13px] font-medium text-foreground",children:[(0,s.jsx)(d.A,{className:"h-3.5 w-3.5 text-primary","aria-hidden":!0}),V("container")]}),(0,s.jsx)("p",{className:"text-[11px] leading-relaxed text-muted-foreground",children:V("containerDescription")})]}),(0,s.jsx)(C.d,{id:"container-toggle",checked:tz,disabled:ta,onCheckedChange:tB,"aria-label":V("makeContainer")})]}),(0,s.jsx)(eh,{idea:$,proposals:Q,tasks:X,onSelectTask:tf}),(0,s.jsxs)("div",{className:"mt-5 space-y-2",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(d.A,{className:"h-3.5 w-3.5 text-primary"}),(0,s.jsx)("span",{className:"text-[12px] font-semibold text-foreground/80",children:V("title")})]}),(0,s.jsxs)(v.$,{variant:"outline",size:"sm",className:"h-7 gap-1 border-border px-2 text-[11px] text-muted-foreground",onClick:()=>tl(!0),children:[(0,s.jsx)(c.A,{className:"h-3 w-3"}),$.parentUuid?V("changeParent"):V("setParent")]})]}),$.parent?(0,s.jsxs)("button",{type:"button",onClick:()=>null==I?void 0:I($.parent.uuid),className:"flex w-full items-center gap-2 rounded-lg bg-background px-3 py-2.5 text-left transition-colors hover:bg-secondary",children:[(0,s.jsx)(p,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)("span",{className:"shrink-0 text-[12px] text-muted-foreground",children:V("derivedFrom")}),(0,s.jsx)("span",{className:"min-w-0 flex-1 truncate text-[12px] font-medium text-foreground/80",children:$.parent.title})]}):(0,s.jsx)("p",{className:"px-1 text-[12px] text-muted-foreground",children:V("noParent")}),$.children&&$.children.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-1 pt-1",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)("span",{className:"text-[12px] font-medium text-foreground/80",children:V("derivedIdeas")}),(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground",children:$.children.length})]}),(()=>{let e=$.children.filter(e=>"done"===e.derivedStatus).length,t=$.children.length;return(0,s.jsxs)("span",{className:"flex items-center gap-1.5 text-[12px] text-muted-foreground",title:V("childrenDone",{done:e,total:t}),children:[(0,s.jsx)(eY.C,{done:e,total:t,size:14,stroke:2}),e,"/",t]})})()]}),(0,s.jsx)("div",{className:"overflow-hidden rounded-lg border border-[#EFEBE3] dark:border-[#2a2a2e]",children:$.children.map((e,t)=>(0,s.jsxs)("div",{children:[t>0&&(0,s.jsx)("div",{className:"h-px bg-[#F0EEEA] dark:bg-[#1f1e1c]"}),(0,s.jsxs)("button",{type:"button",onClick:()=>null==I?void 0:I(e.uuid),className:"flex w-full items-center justify-between gap-2 px-3 py-2.5 text-left transition-colors hover:bg-background",children:[(0,s.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,s.jsx)(h.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)("span",{className:"truncate text-[12px] text-foreground",children:e.title})]}),(0,s.jsx)(y.E,{className:"shrink-0 border-0 text-[10px] ".concat(ep._5[e.derivedStatus]||ep._5.todo),children:L(ep.Bj[e.derivedStatus]||"todo")})]})]},e.uuid))})]})]}),(0,s.jsx)(eg,{projectUuid:U,ideaUuid:$.uuid,proposals:Q,onDocClick:tg}),(0,s.jsxs)("div",{className:"mt-5 space-y-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(f.A,{className:"h-3.5 w-3.5 text-primary"}),(0,s.jsx)("span",{className:"text-[12px] font-semibold text-foreground/80",children:M("references.title")})]}),(0,s.jsx)(eJ.ReferencesSection,{targetType:"idea",targetUuid:$.uuid,canWrite:!0,compact:!0})]})]}),tE.includes("elaboration")&&en.has("elaboration")&&(0,s.jsx)("div",{style:{display:"elaboration"===es?"block":"none"},children:(0,s.jsx)(z,{idea:$,elaboration:ej,isLoading:eb,onRefresh:async()=>{await tA(),await tk()},onReassign:()=>ex(!0),canReassign:tV})}),tE.includes("proposal")&&en.has("proposal")&&(0,s.jsx)("div",{style:{display:"proposal"===es?"block":"none"},children:(0,s.jsx)(et,{idea:$,projectUuid:U,onTaskClick:tf,onDocClick:tg,initialProposals:Q})}),tE.includes("tasks")&&en.has("tasks")&&(0,s.jsx)("div",{style:{display:"tasks"===es?"block":"none"},children:(0,s.jsx)(ey,{tasks:X,projectUuid:U,proposalUuids:Q.filter(e=>"approved"===e.status).map(e=>e.uuid),onSelectTask:tf})}),en.has("activity")&&(0,s.jsx)("div",{style:{display:"activity"===es?"block":"none"},children:(0,s.jsx)(eC,{ideaUuid:$.uuid,currentUserUuid:R,commentCount:eo,onCommentCountChange:ec})})]}):null})}),$&&!K&&(0,s.jsx)("div",{className:"border-t border-secondary px-6 py-4",children:e2?(0,s.jsxs)("div",{className:"flex items-center justify-end gap-3",children:[(0,s.jsx)(v.$,{variant:"outline",className:"border-border",onClick:tR,disabled:e8,children:M("common.cancel")}),(0,s.jsx)(v.$,{className:"bg-primary hover:bg-[#B56A42] text-white",onClick:tP,disabled:e8||!e3.trim(),children:e8?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4 animate-spin"}),M("common.save")]}):M("common.save")})]}):(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,s.jsxs)("div",{className:"flex-1 min-w-0 flex flex-wrap items-center gap-2",children:[!tz&&(0,s.jsxs)(s.Fragment,{children:[tq&&!eD&&(0,s.jsx)(v.$,{className:"bg-primary hover:bg-[#B56A42] text-white",onClick:()=>{$&&eU({ideaUuid:$.uuid,wake:tM})},disabled:ek||e1,children:ek?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4 animate-spin"}),M("elaboration.verifying")]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(g.A,{className:"mr-2 h-4 w-4"}),M("elaboration.verifyButton")]})}),eD&&(0,s.jsx)("span",{className:"text-[11px] text-[#00796B] dark:text-[#4FD1C0]",children:M("elaboration.verifiedQueuedHint")}),eE&&(0,s.jsx)("span",{className:"text-[11px] text-destructive",children:eE}),(0,s.jsx)(eG.w,{ideaUuid:$.uuid,assignee:$.assignee,assigneeName:null==(t=$.assignee)?void 0:t.name,proposals:Q,tasks:X,onStarted:()=>{tk()}}),(0,s.jsx)(eH.s,{ideaUuid:$.uuid,assignee:$.assignee,assigneeName:null==(a=$.assignee)?void 0:a.name,proposals:Q,tasks:X,onStarted:()=>{tk()}})]}),tz&&(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground",children:V("containerHint")})]}),(0,s.jsxs)(S.Lt,{children:[(0,s.jsx)(S.tv,{asChild:!0,children:(0,s.jsx)(v.$,{variant:"outline",size:"icon",className:"shrink-0 h-8 w-8 border-border text-[#EF4444] dark:text-[#F0897E] hover:bg-[#FFEBEE] dark:hover:bg-[#331619] hover:text-[#EF4444] hover:border-[#EF4444]",children:(0,s.jsx)(j.A,{className:"h-4 w-4"})})}),(0,s.jsxs)(S.EO,{children:[(0,s.jsxs)(S.wd,{children:[(0,s.jsx)(S.r7,{children:M("ideas.deleteIdea")}),(0,s.jsx)(S.$v,{children:M("ideas.deleteIdeaConfirm",{title:$.title})})]}),(0,s.jsxs)(S.ck,{children:[(0,s.jsx)(S.Zr,{children:M("common.cancel")}),(0,s.jsx)(S.Rx,{variant:"destructive",onClick:tI,disabled:em,children:em?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4 animate-spin"}),M("common.delete")]}):M("common.delete")})]})]})]})]})})]}),(0,s.jsx)(eA.h,{open:tr,onOpenChange:tn,ideaUuid:T,projectUuid:U,onMoved:()=>P()}),$&&(0,s.jsx)(eI,{open:ti,onOpenChange:tl,ideaUuid:$.uuid,ideaTitle:$.title,projectUuid:U,currentParentUuid:null!=(A=$.parentUuid)?A:null,descendantUuids:null!=(E=$.descendantUuids)?E:[],onChanged:tk}),$&&(0,s.jsx)(eM.i,{open:td,onOpenChange:to,projectUuid:U,parentUuid:$.uuid,parentTitle:$.title,onCreated:e=>{l.oR.success(V("deriveIdea")),q.refresh(),null==I||I(e)}}),eu&&$&&(0,s.jsx)(eO.i,{idea:{uuid:$.uuid,title:$.title,content:$.content,status:$.status,assignee:$.assignee?{type:$.assignee.type,uuid:$.assignee.uuid,name:$.assignee.name}:null},projectUuid:U,currentUserUuid:R,onClose:()=>{ex(!1),tk()}}),(0,s.jsx)(eW.V,{open:null!==eR,agentName:null!=(_=null==$||null==(m=$.assignee)?void 0:m.name)?_:"",instances:null!=(D=null==eR?void 0:eR.instances)?D:[],onConfirm:eP,onCancel:e0}),tc&&tx&&(0,s.jsx)(eS.v,{task:tx,projectUuid:U,currentUserUuid:R,mode:tj?"sidebyside":"overlay",onClose:()=>{tu(null),tm(null)},onBack:()=>{tu(null),tm(null)}}),tp&&(0,s.jsx)(eF.K,{title:tp.title,type:tp.type,content:tp.content,mode:tj?"sidebyside":"overlay",onClose:()=>th(null),onBack:()=>th(null)})]})}},77390:(e,t,a)=>{a.d(t,{C:()=>n});var s=a(90508),r=a(24377);function n(e){let{done:t,total:a,size:n=14,stroke:i=2,className:l,color:d="#B26B3D",trackColor:o="#EAD9C8"}=e,c=(n-i)/2,u=2*Math.PI*c,x=a>0?Math.min(1,Math.max(0,t/a)):0,m=a>0&&t>=a;return(0,s.jsxs)("svg",{width:n,height:n,viewBox:"0 0 ".concat(n," ").concat(n),className:(0,r.cn)("shrink-0",l),role:"img","aria-label":"".concat(t,"/").concat(a),children:[(0,s.jsx)("circle",{cx:n/2,cy:n/2,r:c,fill:"none",stroke:o,strokeWidth:i}),x>0&&(0,s.jsx)("circle",{cx:n/2,cy:n/2,r:c,fill:"none",stroke:m?"#1D9E75":d,strokeWidth:i,strokeDasharray:u,strokeDashoffset:u*(1-x),strokeLinecap:"round",transform:"rotate(-90 ".concat(n/2," ").concat(n/2,")")})]})}},79834:(e,t,a)=>{a.r(t),a.d(t,{Content:()=>D,List:()=>E,Root:()=>A,Tabs:()=>v,TabsContent:()=>C,TabsList:()=>y,TabsTrigger:()=>k,Trigger:()=>_,createTabsScope:()=>h});var s=a(1856),r=a(33328),n=a(21032),i=a(94782),l=a(19900),d=a(93367),o=a(72599),c=a(66249),u=a(40577),x=a(90508),m="Tabs",[p,h]=(0,n.A)(m,[i.RG]),f=(0,i.RG)(),[g,j]=p(m),v=s.forwardRef((e,t)=>{let{__scopeTabs:a,value:s,onValueChange:r,defaultValue:n,orientation:i="horizontal",dir:l,activationMode:p="automatic",...h}=e,f=(0,o.jH)(l),[j,v]=(0,c.i)({prop:s,onChange:r,defaultProp:null!=n?n:"",caller:m});return(0,x.jsx)(g,{scope:a,baseId:(0,u.B)(),value:j,onValueChange:v,orientation:i,dir:f,activationMode:p,children:(0,x.jsx)(d.sG.div,{dir:f,"data-orientation":i,...h,ref:t})})});v.displayName=m;var b="TabsList",y=s.forwardRef((e,t)=>{let{__scopeTabs:a,loop:s=!0,...r}=e,n=j(b,a),l=f(a);return(0,x.jsx)(i.bL,{asChild:!0,...l,orientation:n.orientation,dir:n.dir,loop:s,children:(0,x.jsx)(d.sG.div,{role:"tablist","aria-orientation":n.orientation,...r,ref:t})})});y.displayName=b;var N="TabsTrigger",k=s.forwardRef((e,t)=>{let{__scopeTabs:a,value:s,disabled:n=!1,...l}=e,o=j(N,a),c=f(a),u=S(o.baseId,s),m=F(o.baseId,s),p=s===o.value;return(0,x.jsx)(i.q7,{asChild:!0,...c,focusable:!n,active:p,children:(0,x.jsx)(d.sG.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":m,"data-state":p?"active":"inactive","data-disabled":n?"":void 0,disabled:n,id:u,...l,ref:t,onMouseDown:(0,r.mK)(e.onMouseDown,e=>{n||0!==e.button||!1!==e.ctrlKey?e.preventDefault():o.onValueChange(s)}),onKeyDown:(0,r.mK)(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&o.onValueChange(s)}),onFocus:(0,r.mK)(e.onFocus,()=>{let e="manual"!==o.activationMode;p||n||!e||o.onValueChange(s)})})})});k.displayName=N;var w="TabsContent",C=s.forwardRef((e,t)=>{let{__scopeTabs:a,value:r,forceMount:n,children:i,...o}=e,c=j(w,a),u=S(c.baseId,r),m=F(c.baseId,r),p=r===c.value,h=s.useRef(p);return s.useEffect(()=>{let e=requestAnimationFrame(()=>h.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,x.jsx)(l.C,{present:n||p,children:a=>{let{present:s}=a;return(0,x.jsx)(d.sG.div,{"data-state":p?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":u,hidden:!s,id:m,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:h.current?"0s":void 0},children:s&&i})}})});function S(e,t){return"".concat(e,"-trigger-").concat(t)}function F(e,t){return"".concat(e,"-content-").concat(t)}C.displayName=w;var A=v,E=y,_=k,D=C},82523:(e,t,a)=>{function s(e){return e.replace(/\\n/g,"\n")}a.d(t,{j:()=>s,y:()=>r});let r={prd:"typePrd",tech_design:"typeTechDesign",adr:"typeAdr",spec:"typeSpec",guide:"typeGuide",design:"typeDesign",note:"typeNote",report:"typeReport",other:"typeOther"}},98861:(e,t,a)=>{a.r(t),a.d(t,{Checkbox:()=>y,CheckboxIndicator:()=>k,Indicator:()=>k,Root:()=>y,createCheckboxScope:()=>h,unstable_BubbleInput:()=>C,unstable_CheckboxBubbleInput:()=>C,unstable_CheckboxProvider:()=>j,unstable_CheckboxTrigger:()=>b,unstable_Provider:()=>j,unstable_Trigger:()=>b});var s=a(1856),r=a(34124),n=a(21032),i=a(33328),l=a(66249),d=a(72009),o=a(3705),c=a(19900),u=a(93367),x=a(90508),m="Checkbox",[p,h]=(0,n.A)(m),[f,g]=p(m);function j(e){let{__scopeCheckbox:t,checked:a,children:r,defaultChecked:n,disabled:i,form:d,name:o,onCheckedChange:c,required:u,value:p="on",internal_do_not_use_render:h}=e,[g,j]=(0,l.i)({prop:a,defaultProp:null!=n&&n,onChange:c,caller:m}),[v,b]=s.useState(null),[y,N]=s.useState(null),k=s.useRef(!1),w=!v||!!d||!!v.closest("form"),C={checked:g,disabled:i,setChecked:j,control:v,setControl:b,name:o,form:d,value:p,hasConsumerStoppedPropagationRef:k,required:u,defaultChecked:!S(n)&&n,isFormControl:w,bubbleInput:y,setBubbleInput:N};return(0,x.jsx)(f,{scope:t,...C,children:"function"==typeof h?h(C):r})}var v="CheckboxTrigger",b=s.forwardRef((e,t)=>{let{__scopeCheckbox:a,onKeyDown:n,onClick:l,...d}=e,{control:o,value:c,disabled:m,checked:p,required:h,setControl:f,setChecked:j,hasConsumerStoppedPropagationRef:b,isFormControl:y,bubbleInput:N}=g(v,a),k=(0,r.s)(t,f),w=s.useRef(p);return s.useEffect(()=>{let e=null==o?void 0:o.form;if(e){let t=()=>j(w.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[o,j]),(0,x.jsx)(u.sG.button,{type:"button",role:"checkbox","aria-checked":S(p)?"mixed":p,"aria-required":h,"data-state":F(p),"data-disabled":m?"":void 0,disabled:m,value:c,...d,ref:k,onKeyDown:(0,i.mK)(n,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:(0,i.mK)(l,e=>{j(e=>!!S(e)||!e),N&&y&&(b.current=e.isPropagationStopped(),b.current||e.stopPropagation())})})});b.displayName=v;var y=s.forwardRef((e,t)=>{let{__scopeCheckbox:a,name:s,checked:r,defaultChecked:n,required:i,disabled:l,value:d,onCheckedChange:o,form:c,...u}=e;return(0,x.jsx)(j,{__scopeCheckbox:a,checked:r,defaultChecked:n,disabled:l,required:i,onCheckedChange:o,name:s,form:c,value:d,internal_do_not_use_render:e=>{let{isFormControl:s}=e;return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(b,{...u,ref:t,__scopeCheckbox:a}),s&&(0,x.jsx)(C,{__scopeCheckbox:a})]})}})});y.displayName=m;var N="CheckboxIndicator",k=s.forwardRef((e,t)=>{let{__scopeCheckbox:a,forceMount:s,...r}=e,n=g(N,a);return(0,x.jsx)(c.C,{present:s||S(n.checked)||!0===n.checked,children:(0,x.jsx)(u.sG.span,{"data-state":F(n.checked),"data-disabled":n.disabled?"":void 0,...r,ref:t,style:{pointerEvents:"none",...e.style}})})});k.displayName=N;var w="CheckboxBubbleInput",C=s.forwardRef((e,t)=>{let{__scopeCheckbox:a,...n}=e,{control:i,hasConsumerStoppedPropagationRef:l,checked:c,defaultChecked:m,required:p,disabled:h,name:f,value:j,form:v,bubbleInput:b,setBubbleInput:y}=g(w,a),N=(0,r.s)(t,y),k=(0,d.Z)(c),C=(0,o.X)(i);s.useEffect(()=>{if(!b)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(k!==c&&e){let a=new Event("click",{bubbles:t});b.indeterminate=S(c),e.call(b,!S(c)&&c),b.dispatchEvent(a)}},[b,k,c,l]);let F=s.useRef(!S(c)&&c);return(0,x.jsx)(u.sG.input,{type:"checkbox","aria-hidden":!0,defaultChecked:null!=m?m:F.current,required:p,disabled:h,name:f,value:j,form:v,...n,tabIndex:-1,ref:N,style:{...n.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function S(e){return"indeterminate"===e}function F(e){return S(e)?"indeterminate":e?"checked":"unchecked"}C.displayName=w}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[99366],{3848:(e,t,r)=>{r.d(t,{L:()=>l});var a=r(90508),s=r(1856),n=r(39268),i=r(92691);function l(e){let{notes:t}=e,r=(0,n.c)(),[l,d]=(0,s.useState)(!1),o=null==t?void 0:t.trim();if(!o)return null;let c=(0,a.jsx)("button",{type:"button",onClick:()=>d(e=>!e),"aria-expanded":l,"aria-label":r("references.toggleNotes"),className:"mt-1 w-full cursor-pointer text-left text-xs leading-relaxed text-muted-foreground ".concat(l?"block":"line-clamp-2"),children:o});return l?c:(0,a.jsx)(i.Bc,{delayDuration:200,children:(0,a.jsxs)(i.m_,{children:[(0,a.jsx)(i.k$,{asChild:!0,children:c}),(0,a.jsx)(i.ZI,{className:"max-w-xs whitespace-pre-wrap break-words",children:o})]})})}},4365:(e,t,r)=>{r.d(t,{G7:()=>d,L$:()=>u,h_:()=>m,oI:()=>o,uB:()=>l,xL:()=>c});var a=r(90508);r(1856);var s=r(64731),n=r(30044),i=r(24377);function l(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB,{"data-slot":"command",className:(0,i.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...r})}function d(e){let{className:t,...r}=e;return(0,a.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,a.jsx)(n.A,{className:"size-4 shrink-0 opacity-50"}),(0,a.jsx)(s.uB.Input,{"data-slot":"command-input",className:(0,i.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...r})]})}function o(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB.List,{"data-slot":"command-list",className:(0,i.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",t),...r})}function c(e){let{...t}=e;return(0,a.jsx)(s.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...t})}function u(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB.Group,{"data-slot":"command-group",className:(0,i.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",t),...r})}function m(e){let{className:t,...r}=e;return(0,a.jsx)(s.uB.Item,{"data-slot":"command-item",className:(0,i.cn)("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",t),...r})}},12210:(e,t,r)=>{r.d(t,{d:()=>i});var a=r(90508);r(1856);var s=r(60322),n=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)(s.Root,{"data-slot":"switch",className:(0,n.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:ring-ring/50 inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...r,children:(0,a.jsx)(s.Thumb,{"data-slot":"switch-thumb",className:(0,n.cn)("bg-background pointer-events-none block size-4 rounded-full ring-0 shadow-lg transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})})}},13108:(e,t,r)=>{r.d(t,{C:()=>c,K:()=>m});var a=r(90508),s=r(39268),n=r(97413),i=r(5616),l=r(22922),d=r(14554),o=r(12210);function c(e){let{items:t,onChange:r,disabled:c}=e,u=(0,s.c)(),m=(e,a)=>{let s=t.slice();s[e]={...s[e],...a},r(s)};return(0,a.jsxs)("div",{className:"space-y-3",children:[t.length>0&&(0,a.jsx)("div",{className:"space-y-2",children:t.map((e,s)=>(0,a.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-[#E5E2DC] dark:border-[#2a2a2e] bg-background p-2.5",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:(0,a.jsx)(d.p,{value:e.description,onChange:e=>m(s,{description:e.target.value}),placeholder:u("acceptanceCriteria.criterionPlaceholder"),className:"border-[#E5E2DC] dark:border-[#2a2a2e] text-sm focus-visible:ring-primary h-8",disabled:c})}),(0,a.jsxs)("div",{className:"flex items-center gap-2 shrink-0 pt-1",children:[(0,a.jsx)(o.d,{checked:e.required,onCheckedChange:e=>m(s,{required:e}),className:"data-[state=checked]:bg-primary",disabled:c}),(0,a.jsx)("span",{className:"text-[10px] font-medium text-muted-foreground min-w-[52px]",children:e.required?u("acceptanceCriteria.required"):u("acceptanceCriteria.optional")}),(0,a.jsx)(l.$,{variant:"outline",size:"sm",className:"h-7 w-7 p-0 border-[#E5E2DC] dark:border-[#2a2a2e] text-muted-foreground hover:text-[#D32F2F] hover:border-[#D32F2F] hover:bg-[#FFEBEE] dark:hover:bg-[#331619]",onClick:()=>{r(t.filter((e,t)=>t!==s))},disabled:c,type:"button",children:(0,a.jsx)(n.A,{className:"h-3 w-3"})})]})]},s))}),(0,a.jsxs)(l.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-[#E5E2DC] dark:border-[#2a2a2e] text-xs text-muted-foreground hover:text-primary hover:border-primary",onClick:()=>{r([...t,{description:"",required:!0}])},disabled:c,type:"button",children:[(0,a.jsx)(i.A,{className:"h-3 w-3"}),u("acceptanceCriteria.addCriterion")]})]})}function u(e){return{description:e.description.trim(),required:!!e.required}}function m(e,t){if(e.length!==t.length)return!0;for(let r=0;r<e.length;r++){let a=u(e[r]),s=u(t[r]);if(a.description!==s.description||a.required!==s.required)return!0}return!1}},17722:(e,t,r)=>{r.d(t,{AI:()=>l,_8:()=>i});var a=r(90508);r(1856);var s=r(97438),n=r(24377);function i(e){let{open:t,onOpenChange:r,header:i,footer:l,children:d,className:o,bodyClassName:c,zIndexClassName:u="z-[110]",showCloseButton:m=!0}=e;return(0,a.jsx)(s.lG,{open:t,onOpenChange:r,children:(0,a.jsxs)(s.Cf,{className:(0,n.cn)("flex max-h-[85svh] flex-col gap-0 overflow-hidden p-0",u,o),overlayClassName:u,showCloseButton:m,children:[(0,a.jsx)(s.c7,{className:"shrink-0 border-b border-border px-6 py-5 text-left",children:i}),(0,a.jsx)("div",{className:(0,n.cn)("min-h-0 flex-1 overflow-y-auto px-6 py-4",c),children:d}),(0,a.jsx)(s.Es,{className:"shrink-0 border-t border-border px-6 py-5",children:l})]})})}let l=s.L3},29532:(e,t,r)=>{function a(e,t){return!!e&&!!t&&("user"===e.type?"user"===t.type&&e.uuid===t.uuid:"agent"===e.type?"agent"===t.type&&e.uuid===t.uuid:"agent_instance"===e.type&&"agent"===t.type&&!!e.agentUuid&&e.agentUuid===t.uuid)}function s(e){return!!e&&("agent"===e.type||"agent_instance"===e.type)}r.d(t,{RU:()=>a,bB:()=>s})},36228:(e,t,r)=>{r.d(t,{j:()=>s});var a=r(52217);let s=(0,a.createServerReference)("60ae6b94e79af15519b59ef86fde7955627b673bee",a.callServer,void 0,a.findSourceMapURL,"listReferencesAction")},49914:(e,t,r)=>{r.d(t,{W:()=>s});var a=r(1856);function s(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=document.documentElement,r=()=>t(e.classList.contains("dark"));r();let a=new MutationObserver(r);return a.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>a.disconnect()},[]),e}},65626:(e,t,r)=>{r.d(t,{K5:()=>d,Rf:()=>l,Yv:()=>a,bK:()=>i,qG:()=>n,tE:()=>s});let a={fast:.15,normal:.2,slow:.3,easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1],stagger:.04,staggerFast:.03,spring:{type:"spring",stiffness:500,damping:30},tween:{type:"tween",duration:.2,ease:[0,0,.2,1]}},s={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,y:-4,transition:{duration:a.fast,ease:a.easeOut}}},n={initial:{opacity:0},animate:{opacity:1,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,transition:{duration:a.fast,ease:a.easeOut}}};a.normal,a.easeOut,a.fast,a.easeOut;let i={initial:{},animate:{transition:{staggerChildren:a.stagger}}},l={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}}},d={initial:{opacity:0,scale:.95,y:-4},animate:{opacity:1,scale:1,y:0,transition:{duration:a.fast,ease:a.easeOut}},exit:{opacity:0,scale:.95,y:-4,transition:{duration:a.fast,ease:a.easeOut}}}},68876:(e,t,r)=>{r.d(t,{N2:()=>o,mP:()=>l,qQ:()=>d});var a=r(25167),s=r(81235),n=r(27472),i=r(18267);let l=["docs","repo","issue_pr","paper_blog"],d={docs:{labelKey:"references.typeDocs",badgeClass:"bg-blue-50 text-blue-700 dark:bg-[#13253a] dark:text-[#5AA9F0]",icon:a.A},repo:{labelKey:"references.typeRepo",badgeClass:"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]",icon:s.A},issue_pr:{labelKey:"references.typeIssuePr",badgeClass:"bg-purple-50 text-purple-700 dark:bg-[#281630] dark:text-[#C98FE0]",icon:n.A},paper_blog:{labelKey:"references.typePaperBlog",badgeClass:"bg-amber-50 text-amber-700 dark:bg-[#332a12] dark:text-[#E0B44E]",icon:i.A}};function o(e){return l.includes(e)}},80973:(e,t,r)=>{r.d(t,{ReferencesSection:()=>E});var a=r(90508),s=r(1856),n=r(91814),i=r(39268),l=r(34956),d=r(20578),o=r(57893),c=r(85226),u=r(97413),m=r(5616),p=r(57731),f=r(22922),x=r(14554),h=r(88064),g=r(15972),b=r(97438),v=r(91846),y=r(51817),j=r(36228),N=r(52217);let w=(0,N.createServerReference)("40d2006df77a76b6939ef98736bd8e226f349ff231",N.callServer,void 0,N.findSourceMapURL,"updateReferenceAction"),k=(0,N.createServerReference)("40eb6e4cb6e7c6f637698a8d43f7ef66f5e91f498b",N.callServer,void 0,N.findSourceMapURL,"createReferenceAction"),C=(0,N.createServerReference)("40ff3abfaf160ca7ffec4e1889fd36149293c64d37",N.callServer,void 0,N.findSourceMapURL,"deleteReferenceAction");var R=r(68876),S=r(3848);function E(e){let{targetType:t,targetUuid:r,canWrite:N,initialReferences:E,compact:_=!1}=e,A=(0,i.c)(),F=(0,n.r)(),[L,q]=(0,s.useState)(null!=E?E:[]),[O,z]=(0,s.useState)(void 0!==E),[B,$]=(0,s.useState)(!1),[D,P]=(0,s.useState)(null),[K,I]=(0,s.useState)("docs"),[U,G]=(0,s.useState)(""),[J,M]=(0,s.useState)(""),[Q,T]=(0,s.useState)(""),[Z,V]=(0,s.useState)(null),[W,Y]=(0,s.useState)(!1),[H,X]=(0,s.useState)(null),ee=(0,s.useCallback)(async()=>{let e=await (0,j.j)(t,r);e.success&&q(e.references),z(!0)},[t,r]);(0,s.useEffect)(()=>{void 0===E&&ee()},[E,ee]);let et=async()=>{if(!U.trim())return void V(A("references.urlRequired"));if(!J.trim())return void V(A("references.titleRequired"));Y(!0),V(null);let e=Q.trim()?Q.trim():null,a=D?await w({uuid:D.uuid,type:K,url:U.trim(),title:J.trim(),notes:e}):await k({targetType:t,targetUuid:r,type:K,url:U.trim(),title:J.trim(),notes:e});Y(!1),a.success?($(!1),await ee(),F.refresh()):V(a.error||(D?A("references.updateFailed"):A("references.addFailed")))},er=async e=>{X(e);let t=await C(e);X(null),t.success&&(await ee(),F.refresh())};return(0,a.jsxs)("div",{className:_?"space-y-2":"space-y-2.5",children:[0===L.length?(0,a.jsx)("p",{className:"text-sm italic text-muted-foreground",children:O?A("references.empty"):A("references.loading")}):(0,a.jsx)("div",{className:"space-y-2",children:L.map(e=>{var t,r;let s=(0,R.N2)(e.type)?R.qQ[e.type]:null,n=null!=(t=null==s?void 0:s.icon)?t:l.A;return(0,a.jsx)("div",{className:"group rounded-lg border border-border bg-background p-3",children:(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("div",{className:"mb-1 flex items-center gap-2",children:(0,a.jsxs)(p.E,{className:"gap-1 border-0 text-[10px] font-medium ".concat(null!=(r=null==s?void 0:s.badgeClass)?r:"bg-secondary text-muted-foreground"),children:[(0,a.jsx)(n,{className:"h-3 w-3"}),s?A(s.labelKey):e.type]})}),(0,a.jsxs)("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",title:e.title,className:"flex min-w-0 items-center gap-1 text-sm font-medium text-primary hover:underline",children:[(0,a.jsx)("span",{className:"truncate",children:e.title}),(0,a.jsx)(d.A,{className:"h-3 w-3 shrink-0"})]}),(0,a.jsx)(S.L,{notes:e.notes})]}),N&&(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-0.5 transition-opacity md:opacity-0 md:group-hover:opacity-100 md:focus-within:opacity-100",children:[(0,a.jsx)(f.$,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>{var t;P(e),I(e.type),G(e.url),M(e.title),T(null!=(t=e.notes)?t:""),V(null),$(!0)},"aria-label":A("references.editReference"),children:(0,a.jsx)(o.A,{className:"h-3.5 w-3.5 text-muted-foreground"})}),(0,a.jsxs)(y.Lt,{children:[(0,a.jsx)(y.tv,{asChild:!0,children:(0,a.jsx)(f.$,{variant:"ghost",size:"icon",className:"h-7 w-7","aria-label":A("references.deleteReference"),children:H===e.uuid?(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 animate-spin text-muted-foreground"}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5 text-destructive"})})}),(0,a.jsxs)(y.EO,{children:[(0,a.jsxs)(y.wd,{children:[(0,a.jsx)(y.r7,{children:A("references.deleteReference")}),(0,a.jsx)(y.$v,{children:A("references.deleteConfirm",{title:e.title})})]}),(0,a.jsxs)(y.ck,{children:[(0,a.jsx)(y.Zr,{children:A("common.cancel")}),(0,a.jsx)(y.Rx,{variant:"destructive",onClick:()=>er(e.uuid),children:A("common.delete")})]})]})]})]})]})},e.uuid)})}),N&&(0,a.jsxs)(f.$,{variant:"outline",size:"sm",className:"h-8 w-full gap-1.5 border-border border-dashed text-xs text-muted-foreground",onClick:()=>{P(null),I("docs"),G(""),M(""),T(""),V(null),$(!0)},children:[(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"}),A("references.addReference")]}),(0,a.jsx)(b.lG,{open:B,onOpenChange:$,children:(0,a.jsxs)(b.Cf,{className:"sm:max-w-[480px]",children:[(0,a.jsx)(b.c7,{children:(0,a.jsx)(b.L3,{children:D?A("references.editReference"):A("references.addReference")})}),(0,a.jsxs)("div",{className:"space-y-4 py-2",children:[Z&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:Z}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(h.J,{htmlFor:"ref-type",className:"text-[13px] font-medium text-foreground",children:A("references.typeLabel")}),(0,a.jsxs)(v.l6,{value:K,onValueChange:I,children:[(0,a.jsx)(v.bq,{id:"ref-type",className:"border-border focus:ring-primary",children:(0,a.jsx)(v.yv,{})}),(0,a.jsx)(v.gC,{children:R.mP.map(e=>(0,a.jsx)(v.eb,{value:e,children:A(R.qQ[e].labelKey)},e))})]})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(h.J,{htmlFor:"ref-url",className:"text-[13px] font-medium text-foreground",children:[A("references.urlLabel")," *"]}),(0,a.jsx)(x.p,{id:"ref-url",value:U,onChange:e=>G(e.target.value),placeholder:A("references.urlPlaceholder"),className:"border-border focus-visible:ring-primary",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(h.J,{htmlFor:"ref-title",className:"text-[13px] font-medium text-foreground",children:[A("references.titleLabel")," *"]}),(0,a.jsx)(x.p,{id:"ref-title",value:J,onChange:e=>M(e.target.value),placeholder:A("references.titlePlaceholder"),className:"border-border focus-visible:ring-primary"})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(h.J,{htmlFor:"ref-notes",className:"text-[13px] font-medium text-foreground",children:A("references.notesLabel")}),(0,a.jsx)(g.T,{id:"ref-notes",value:Q,onChange:e=>T(e.target.value),placeholder:A("references.notesPlaceholder"),rows:3,className:"resize-none border-border focus-visible:ring-primary"})]})]}),(0,a.jsxs)(b.Es,{children:[(0,a.jsx)(f.$,{variant:"outline",onClick:()=>$(!1),disabled:W,className:"border-border",children:A("common.cancel")}),(0,a.jsx)(f.$,{onClick:et,disabled:W||!U.trim()||!J.trim(),className:"bg-primary hover:bg-primary/90 text-primary-foreground",children:W?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4 animate-spin"}),A("common.saving")]}):D?A("common.save"):A("references.add")})]})]})})]})}},88064:(e,t,r)=>{r.d(t,{J:()=>i});var a=r(90508);r(1856);var s=r(58057),n=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)(s.Root,{"data-slot":"label",className:(0,n.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}},92691:(e,t,r)=>{r.d(t,{Bc:()=>i,ZI:()=>o,k$:()=>d,m_:()=>l});var a=r(90508);r(1856);var s=r(45841),n=r(24377);function i(e){let{delayDuration:t=0,...r}=e;return(0,a.jsx)(s.Provider,{"data-slot":"tooltip-provider",delayDuration:t,...r})}function l(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"tooltip",...t})}function d(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"tooltip-trigger",...t})}function o(e){let{className:t,sideOffset:r=0,children:i,...l}=e;return(0,a.jsx)(s.Portal,{children:(0,a.jsxs)(s.Content,{"data-slot":"tooltip-content",sideOffset:r,className:(0,n.cn)("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",t),...l,children:[i,(0,a.jsx)(s.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[85e3],{5095:(e,t,s)=>{"use strict";s.d(t,{ProjectSettingsModal:()=>N});var a=s(90508),r=s(1856),n=s(23675),l=s(91814),d=s(39268),i=s(52309),o=s(85226),c=s(22922),u=s(14554),x=s(88064),m=s(15972),p=s(97438),h=s(84247),g=s(51817),f=s(52217);let j=(0,f.createServerReference)("602178a2adf65ab0139461c8a32ef931c6b5f0b6d5",f.callServer,void 0,f.findSourceMapURL,"updateProjectAction"),b=(0,f.createServerReference)("40014aa5b3868791a0b037d081a4465451bf191c48",f.callServer,void 0,f.findSourceMapURL,"deleteProjectAction");var v=s(70481);function N(e){let{projectUuid:t,projectName:s,projectDescription:f}=e,N=(0,d.c)(),w=(0,n.useSearchParams)(),y=(0,l.r)(),[k,C]=(0,r.useState)("agent-cwds"===w.get("settings")),[A,S]=(0,r.useState)(s),[E,F]=(0,r.useState)(f||""),[_,D]=(0,r.useState)(!1),[P,z]=(0,r.useState)(!1),U=(0,r.useRef)(null),[M,I]=(0,r.useState)(null),O=async()=>{var e;D(!0),I(null);let s=await (null==(e=U.current)?void 0:e.validate());if(!s)return void D(!1);let a=await j(t,{name:A,description:E||null,agentCwds:{upserts:s.upserts.map(e=>{let{agentUuid:t,validationRequestUuid:s}=e;return{agentUuid:t,validationRequestUuid:s}}),clears:s.clears}});D(!1),a.success?(window.dispatchEvent(new CustomEvent("project-cwd-updated",{detail:{projectUuid:t}})),C(!1),y.refresh()):a.error.agentUuid&&I({agentUuid:a.error.agentUuid,message:a.error.message})},B=async()=>{z(!0);let e=await b(t);e&&!e.success&&z(!1)};return(0,a.jsxs)(p.lG,{open:k,onOpenChange:C,children:[(0,a.jsx)(p.zM,{asChild:!0,children:(0,a.jsxs)(c.$,{variant:"outline",size:"sm",className:"gap-1.5 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] bg-card text-[12px] font-normal text-foreground hover:border-primary hover:bg-card",children:[(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 text-muted-foreground"}),N("dashboard.settings")]})}),(0,a.jsxs)(p.Cf,{className:"flex max-h-[90svh] flex-col gap-0 overflow-hidden rounded-2xl border-0 p-0 sm:max-w-[620px]",children:[(0,a.jsx)(p.c7,{className:"px-7 py-6",children:(0,a.jsx)(p.L3,{className:"text-[20px] font-semibold tracking-tight text-foreground",children:N("projectSettings.title")})}),(0,a.jsx)(h.Separator,{className:"bg-[#E5E2DC] dark:bg-[#26241f]"}),(0,a.jsx)("div",{className:"min-h-0 overflow-y-auto",children:(0,a.jsxs)("div",{className:"flex flex-col gap-7 p-5 sm:p-7",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-5",children:[(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:N("projectSettings.basicInfo")}),(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)(x.J,{className:"text-[12px] font-medium text-muted-foreground",children:N("projectSettings.projectName")}),(0,a.jsx)(u.p,{value:A,onChange:e=>S(e.target.value),className:"h-11 rounded-[10px] border-[#E5E2DC] dark:border-[#2a2a2e] text-[14px] text-foreground focus-visible:ring-primary"})]}),(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)(x.J,{className:"text-[12px] font-medium text-muted-foreground",children:N("projectSettings.description")}),(0,a.jsx)(m.T,{value:E,onChange:e=>F(e.target.value),rows:3,className:"resize-none rounded-[10px] border-[#E5E2DC] dark:border-[#2a2a2e] text-[14px] text-foreground focus-visible:ring-primary"})]})]}),(0,a.jsx)(h.Separator,{className:"bg-[#E5E2DC] dark:bg-[#26241f]"}),(0,a.jsx)(v.O,{ref:U,projectUuid:t,agentError:M}),(0,a.jsx)(c.$,{onClick:O,disabled:_||!A.trim(),className:"w-fit rounded-[10px] bg-primary px-6 text-[13px] font-semibold text-white hover:bg-[#B56A42]",children:_?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),N("projectSettings.saving")]}):N("projectSettings.saveChanges")}),(0,a.jsx)(h.Separator,{className:"bg-[#E5E2DC] dark:bg-[#26241f]"}),(0,a.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-[#C4574C] dark:text-[#F0897E]",children:N("projectSettings.dangerZone")}),(0,a.jsx)("div",{className:"rounded-xl border border-[#C4574C40] bg-[#C4574C08] px-[18px] py-4",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,a.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:N("projectSettings.deleteTitle")}),(0,a.jsx)("span",{className:"text-[12px] text-muted-foreground",children:N("projectSettings.deleteDescription")})]}),(0,a.jsxs)(g.Lt,{children:[(0,a.jsx)(g.tv,{asChild:!0,children:(0,a.jsx)(c.$,{variant:"destructive",size:"sm",className:"ml-4 shrink-0 rounded-lg bg-[#C4574C] px-[18px] text-[12px] font-medium hover:bg-[#B3463B]",children:N("common.delete")})}),(0,a.jsxs)(g.EO,{children:[(0,a.jsxs)(g.wd,{children:[(0,a.jsx)(g.r7,{children:N("projectOverview.deleteProject")}),(0,a.jsx)(g.$v,{children:N("projectOverview.deleteProjectConfirm",{name:s})})]}),(0,a.jsxs)(g.ck,{children:[(0,a.jsx)(g.Zr,{children:N("common.cancel")}),(0,a.jsx)(g.Rx,{variant:"destructive",onClick:B,disabled:P,children:P?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),N("common.delete")]}):N("common.delete")})]})]})]})]})})]})]})})]})]})}},18789:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]])},29622:(e,t,s)=>{"use strict";s.d(t,{IdeaTracker:()=>ee});var a=s(90508),r=s(39268),n=s(1856),l=s(83064),d=s(64131);let i=(0,s(66206).A)("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);var o=s(5616),c=s(22922),u=s(81531),x=s(36755),m=s(29767),p=s(57223),h=s(63964),g=s(17730),f=s(78948),j=s(81750),b=s(96213),v=s(48127),N=s(34956),w=s(38106),y=s(77390),k=s(36228),C=s(85226),A=s(20578),S=s(57731),E=s(68876),F=s(3848);function _(e){let{references:t,isLoading:s}=e,n=(0,r.c)();return(0,a.jsx)("div",{className:"space-y-2",children:s?(0,a.jsxs)("p",{className:"flex items-center gap-1.5 text-xs italic text-muted-foreground",children:[(0,a.jsx)(C.A,{className:"h-3 w-3 animate-spin"}),n("references.loading")]}):0===t.length?(0,a.jsx)("p",{className:"text-xs italic text-muted-foreground",children:n("references.empty")}):t.map(e=>{var t,s;let r=(0,E.N2)(e.type)?E.qQ[e.type]:null,l=null!=(t=null==r?void 0:r.icon)?t:N.A;return(0,a.jsxs)("div",{className:"rounded-lg border border-border bg-background p-2.5",children:[(0,a.jsx)("div",{className:"mb-1 flex items-center gap-2",children:(0,a.jsxs)(S.E,{className:"gap-1 border-0 text-[10px] font-medium ".concat(null!=(s=null==r?void 0:r.badgeClass)?s:"bg-secondary text-muted-foreground"),children:[(0,a.jsx)(l,{className:"h-3 w-3"}),r?n(r.labelKey):e.type]})}),(0,a.jsxs)("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",title:e.title,className:"flex min-w-0 items-center gap-1 text-sm font-medium text-primary hover:underline",children:[(0,a.jsx)("span",{className:"truncate",children:e.title}),(0,a.jsx)(A.A,{className:"h-3 w-3 shrink-0"})]}),(0,a.jsx)(F.L,{notes:e.notes})]},e.uuid)})})}let D={open:"open",researching:"researching",answer_questions:"answerQuestions",planning:"planning",review_proposal:"reviewProposal",building:"building",verify_work:"verifyWork",done:"done",closed:"closed"},P={open:"text-muted-foreground",researching:"text-[#7F77DD] dark:text-[#A99FF0]",answer_questions:"text-[#C47A20] dark:text-[#E0A050]",planning:"text-[#7F77DD] dark:text-[#A99FF0]",review_proposal:"text-[#C47A20] dark:text-[#E0A050]",building:"text-[#7F77DD] dark:text-[#A99FF0]",verify_work:"text-[#C47A20] dark:text-[#E0A050]",done:"text-[#1D9E75] dark:text-[#4FD1A0]",closed:"text-muted-foreground"};function z(e){var t,s;let{idea:l,onClick:i,depth:o=0,showConnector:c=!1}=e,u=(0,r.c)("ideaTracker"),x=(0,r.c)(),m=l.badgeHint?D[l.badgeHint]:null,p=l.badgeHint&&P[l.badgeHint]||"text-muted-foreground",h=null!=(t=l.childCount)?t:0,g=null!=(s=l.referenceCount)?s:0,[b,C]=(0,n.useState)(!1),[A,S]=(0,n.useState)([]),[E,F]=(0,n.useState)(!1),[z,U]=(0,n.useState)(!1),M=!0===l.isContainer;return(0,a.jsxs)(j.Nt,{open:b,onOpenChange:e=>{C(e),!e||z||E||(U(!0),F(!0),(0,k.j)("idea",l.uuid).then(e=>{e.success&&S(e.references),F(!1)}))},children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-3.5 py-3 transition-colors ".concat(i?"cursor-pointer hover:bg-background":""),onClick:i?()=>i(l.uuid):void 0,style:o>0?{paddingLeft:"".concat(14+22*o,"px")}:void 0,children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-center gap-2.5",children:[c&&(0,a.jsx)(v.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,a.jsx)("span",{className:"shrink-0 text-[11px] font-semibold tracking-wide ".concat(M?"text-primary":"font-normal tracking-normal text-muted-foreground"),children:u(M?"lineage.typeTheme":"lineage.typeIdea")}),(0,a.jsx)("span",{className:"truncate text-[13px] text-foreground ".concat(M?"font-medium":""),children:l.title}),m&&(0,a.jsx)("span",{className:"shrink-0 rounded bg-secondary px-1.5 py-0.5 text-[11px] ".concat(p),children:u("badge.".concat(m))}),M&&l.childProgress&&l.childProgress.total>0?(0,a.jsxs)("span",{className:"flex shrink-0 items-center gap-1 rounded bg-primary/[0.12] px-1.5 py-0.5 text-[11px] font-medium text-primary",title:u("lineage.childrenDone",{done:l.childProgress.done,total:l.childProgress.total}),children:[(0,a.jsx)(y.C,{done:l.childProgress.done,total:l.childProgress.total,size:12,stroke:2}),l.childProgress.done,"/",l.childProgress.total]}):h>0?(0,a.jsxs)("span",{className:"flex shrink-0 items-center gap-1 rounded bg-primary/[0.12] px-1.5 py-0.5 text-[11px] font-medium text-primary",children:[(0,a.jsx)(d.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),u("lineage.derivedCount",{count:h})]}):null,g>0&&(0,a.jsxs)(j.R6,{onClick:e=>e.stopPropagation(),"aria-label":x("references.countLabel",{count:g}),title:x("references.countLabel",{count:g}),className:"group/refs flex shrink-0 items-center gap-1 rounded bg-secondary px-1.5 py-0.5 text-[11px] font-medium text-muted-foreground transition-colors hover:text-foreground",children:[(0,a.jsx)(f.A,{className:"h-2.5 w-2.5 transition-transform ".concat(b?"rotate-90":""),"aria-hidden":!0}),(0,a.jsx)(N.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),g]})]}),(0,a.jsx)("span",{className:"shrink-0 pl-4 text-[12px] text-muted-foreground",children:(0,w.s)(l.createdAt)})]}),g>0&&(0,a.jsx)(j.Ke,{onClick:e=>e.stopPropagation(),children:(0,a.jsx)("div",{className:"px-3.5 pb-3",style:o>0?{paddingLeft:"".concat(14+22*o,"px")}:void 0,children:(0,a.jsx)(_,{references:A,isLoading:E})})})]})}let U={human_conduct_required:{fill:"#7F77DD"},in_progress:{fill:"#378ADD"},todo:{stroke:"#888780"},done:{fill:"#1D9E75"}},M={todo:"todo",in_progress:"inProgress",human_conduct_required:"humanConductRequired",done:"done"};function I(e){let{status:t,ideas:s,defaultOpen:l=!0,onIdeaClick:d}=e,i=(0,r.c)("ideaTracker"),o=s.length>0,[c,u]=(0,n.useState)(!!o&&l),x=M[t]||"todo",m=U[t]||U.todo;return(0,a.jsxs)(j.Nt,{open:c,onOpenChange:u,children:[(0,a.jsxs)(j.R6,{className:"group flex w-full cursor-pointer items-center gap-2 px-0 pb-1.5 pt-0",children:[c?(0,a.jsx)(g.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground"}):(0,a.jsx)(f.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground"}),(0,a.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full",style:{backgroundColor:m.fill,border:m.stroke?"1.5px solid ".concat(m.stroke):void 0}}),(0,a.jsx)("span",{className:"text-[13px] font-medium transition-colors group-hover:text-foreground ".concat(o?"text-foreground/80":"text-muted-foreground/60"),children:i("status.".concat(x))}),(0,a.jsx)("span",{className:"text-[12px] text-muted-foreground transition-colors group-hover:text-foreground",children:s.length})]}),o&&(0,a.jsx)(j.Ke,{children:(0,a.jsx)("div",{className:"overflow-hidden rounded-lg bg-card",children:s.map((e,t)=>(0,a.jsxs)("div",{children:[t>0&&(0,a.jsx)("div",{className:"mx-0 h-px bg-[#F0EEEA] dark:bg-[#1f1e1c]"}),(0,a.jsx)(b.D,{entityType:"idea",entityUuid:e.uuid,badgeInside:!0,children:(0,a.jsx)(z,{idea:e,onClick:d})})]},e.uuid))})})]})}function O(e){let{ideas:t,onIdeaClick:s}=e,r=(0,n.useMemo)(()=>(function(e){let t=new Map(e.map(e=>[e.uuid,e])),s=new Map,a=[];for(let l of e){var r,n;let e=null!=(r=l.parentUuid)?r:null;if(e&&t.has(e)){let t=null!=(n=s.get(e))?n:[];t.push(l),s.set(e,t)}else a.push(l)}let l=[],d=new Set,i=(e,t,a)=>{var r;if(!d.has(e.uuid))for(let n of(d.add(e.uuid),a.push({idea:e,depth:t,showConnector:t>0}),null!=(r=s.get(e.uuid))?r:[]))i(n,t+1,a)};for(let e of a){let t=[];i(e,0,t),t.length>0&&l.push(t)}for(let t of e)d.has(t.uuid)||(d.add(t.uuid),l.push([{idea:t,depth:0,showConnector:!1}]));return l})(t),[t]);return(0,a.jsx)("div",{className:"space-y-2.5",children:r.map(e=>(0,a.jsx)("div",{"data-testid":"lineage-tree-group",className:"overflow-hidden rounded-lg bg-card",children:e.map((e,t)=>(0,a.jsxs)("div",{children:[t>0&&(0,a.jsx)("div",{className:"mx-0 h-px bg-[#F0EEEA] dark:bg-[#1f1e1c]"}),(0,a.jsx)(b.D,{entityType:"idea",entityUuid:e.idea.uuid,badgeInside:!0,children:(0,a.jsx)(z,{idea:e.idea,onClick:s,depth:e.depth,showConnector:e.showConnector})})]},e.idea.uuid))},e[0].idea.uuid))})}let B=["human_conduct_required","in_progress","todo","done"];function R(e){var t;let{projectUuid:s,initialData:l,viewMode:d,onIdeaClick:i,onNewIdea:u,onEmptyChange:g}=e,f=(0,r.c)("ideaTracker"),[j,b]=(0,n.useState)(null!=(t=null==l?void 0:l.groups)?t:{}),[v,N]=(0,n.useState)(!l),[w,y]=(0,n.useState)(null),k=(0,n.useCallback)(async()=>{try{let e=await fetch("/api/projects/".concat(s,"/ideas/tracker")),t=await e.json();t.success&&t.data?(b(t.data.groups),y(null)):y(t.error||f("error.loadFailed"))}catch(e){y(f("error.loadFailed"))}finally{N(!1)}},[s,f]);(0,h.eV)("idea",k),(0,h.eV)("proposal",k),(0,h.eV)("task",k),(0,n.useEffect)(()=>{l||k()},[k,l]);let C=B.reduce((e,t)=>e+(j[t]||[]).length,0);(0,n.useEffect)(()=>{v||null==g||g(0===C)},[C,v,g]);let A=B.flatMap(e=>j[e]||[]);return v?(0,a.jsx)("div",{className:"space-y-4",children:[1,2,3].map(e=>(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(p.E,{className:"h-5 w-32"}),(0,a.jsx)(p.E,{className:"h-12 w-full rounded-lg"}),(0,a.jsx)(p.E,{className:"h-12 w-full rounded-lg"})]},e))}):w&&0===Object.keys(j).length?(0,a.jsxs)("div",{className:"flex flex-col items-center gap-4 py-16",children:[(0,a.jsx)(x.A,{className:"h-10 w-10 text-[#E65100] dark:text-[#F0A050]"}),(0,a.jsx)("p",{className:"text-[13px] text-muted-foreground",children:w}),(0,a.jsx)(c.$,{variant:"outline",size:"sm",onClick:()=>{N(!0),y(null),k()},className:"border-border text-foreground",children:f("actions.retry")})]}):0===C?(0,a.jsxs)("div",{className:"flex min-h-[60vh] flex-col items-center justify-center gap-3",children:[(0,a.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-full bg-secondary",children:(0,a.jsx)(m.A,{className:"h-5 w-5 text-muted-foreground"})}),(0,a.jsx)("p",{className:"text-[13px] font-medium text-muted-foreground",children:f("empty.noIdeas")}),(0,a.jsx)("p",{className:"max-w-[260px] text-center text-[12px] leading-relaxed text-muted-foreground",children:f("empty.getStarted")}),u&&(0,a.jsxs)(c.$,{onClick:u,size:"sm",className:"mt-2 gap-1.5 rounded-md bg-primary px-4 py-2 text-white hover:bg-[#B56A42]",children:[(0,a.jsx)(o.A,{className:"h-4 w-4"}),f("actions.newIdea")]})]}):(0,a.jsxs)("div",{className:"space-y-4",children:[w&&Object.keys(j).length>0&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 px-3 py-2 text-[12px] text-destructive",children:w}),"tree"===d?(0,a.jsx)(O,{ideas:A,onIdeaClick:i}):(0,a.jsx)("div",{className:"space-y-4",children:B.map(e=>{let t=j[e]||[];return 0===t.length?null:(0,a.jsx)(I,{status:e,ideas:t,defaultOpen:"done"!==e,onIdeaClick:i},e)})})]})}var T=s(12790),L=s.n(T),$=s(48416),V=s(90795),q=s(18789),H=s(71921),Z=s(56770);let K=[{key:"todo",bg:"#E65100"},{key:"inProgress",bg:"#5A9E6F"},{key:"toVerify",bg:"#7B1FA2"},{key:"done",bg:"#00796B"}],J={idea:"bg-primary",task:"bg-[#5A9E6F]",proposal:"bg-[#1976D2]",document:"bg-[#9A9A9A]"};function Q(e){let{projectUuid:t,initialData:s}=e,l=(0,r.c)(),d=(0,r.c)("ideaTracker"),[i,o]=(0,n.useState)(null!=s?s:null),[c,u]=(0,n.useState)(!s),x=(0,n.useCallback)(async()=>{try{let e=await fetch("/api/projects/".concat(t,"/stats"));if(!e.ok)return;let s=await e.json();s.success&&o(s.data)}finally{u(!1)}},[t]);if((0,n.useEffect)(()=>{s||x()},[x,s]),(0,h.eV)(["idea","task","proposal","document"],x),c)return(0,a.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,a.jsx)(C.A,{className:"h-6 w-6 animate-spin text-muted-foreground"})});if(!i)return null;let{stats:p,recentActivities:g}=i,f=[{label:d("stats.totalIdeas"),value:p.ideas.total,badge:p.ideas.open>0?d("stats.openCount",{count:p.ideas.open}):null,badgeStyle:"bg-primary/[0.13] text-primary",href:"/projects/".concat(t,"/dashboard"),iconBg:"bg-[#FFF3E0] dark:bg-[#3a2a12]",icon:(0,a.jsx)(m.A,{className:"h-5 w-5 text-[#E65100] dark:text-[#F0A050]"})},{label:d("stats.totalTasks"),value:p.tasks.total,badge:p.tasks.inProgress>0?d("stats.activeCount",{count:p.tasks.inProgress}):null,badgeStyle:"bg-[#5A9E6F20] text-[#5A9E6F] dark:text-[#6FD19A]",href:"/projects/".concat(t,"/tasks"),iconBg:"bg-[#E3F2FD] dark:bg-[#13253a]",icon:(0,a.jsx)(q.A,{className:"h-5 w-5 text-[#1976D2] dark:text-[#5AA9F0]"})},{label:d("stats.totalProposals"),value:p.proposals.total,badge:p.proposals.pending>0?d("stats.pendingCount",{count:p.proposals.pending}):null,badgeStyle:"bg-primary/[0.13] text-primary",href:"/projects/".concat(t,"/proposals"),iconBg:"bg-[#F3E5F5] dark:bg-[#281630]",icon:(0,a.jsx)(H.A,{className:"h-5 w-5 text-[#7B1FA2] dark:text-[#C98FE0]"})},{label:d("stats.totalDocuments"),value:p.documents.total,badge:null,badgeStyle:"",href:"/projects/".concat(t,"/documents"),iconBg:"bg-[#E8F5E9] dark:bg-[#14281a]",icon:(0,a.jsx)(Z.A,{className:"h-5 w-5 text-[#5A9E6F] dark:text-[#6FD19A]"})}],j=[p.tasks.todo,p.tasks.inProgress,p.tasks.toVerify,p.tasks.done],b=p.tasks.total,v=[{label:d("stats.todoCount",{count:p.tasks.todo}),color:"#E65100"},{label:d("stats.inProgressCount",{count:p.tasks.inProgress}),color:"#5A9E6F"},{label:d("stats.toVerifyCount",{count:p.tasks.toVerify}),color:"#7B1FA2"},{label:d("stats.doneCount",{count:p.tasks.done}),color:"#00796B"}];return(0,a.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,a.jsx)("div",{className:"grid grid-cols-2 gap-3 md:gap-4 lg:grid-cols-4",children:f.map(e=>(0,a.jsx)(L(),{href:e.href,children:(0,a.jsxs)($.Zp,{className:"cursor-pointer rounded-2xl border-0 bg-card p-3 shadow-none transition-all hover:shadow-md md:p-5",children:[(0,a.jsxs)("div",{className:"mb-2 flex items-center justify-between md:mb-3.5",children:[(0,a.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg md:h-10 md:w-10 md:rounded-xl ".concat(e.iconBg),children:e.icon}),e.badge&&(0,a.jsx)("span",{className:"hidden rounded-lg px-2.5 py-1 text-[11px] font-medium sm:inline ".concat(e.badgeStyle),children:e.badge})]}),(0,a.jsx)("div",{className:"text-2xl font-semibold leading-none tracking-tight text-foreground md:text-[32px]",children:e.value}),(0,a.jsx)("div",{className:"mt-0.5 text-[12px] text-muted-foreground md:text-[13px]",children:e.label})]})},e.label))}),(0,a.jsxs)("div",{className:"grid min-h-0 gap-5 lg:grid-cols-2",children:[(0,a.jsxs)($.Zp,{className:"flex flex-col rounded-2xl border-0 bg-card p-6 shadow-none",children:[(0,a.jsxs)("div",{className:"mb-5 flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-[16px] font-semibold text-foreground",children:d("stats.taskPipeline")}),(0,a.jsx)("span",{className:"text-[12px] text-muted-foreground",children:d("stats.totalCount",{count:b})})]}),b>0?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-5 flex h-3 w-full overflow-hidden rounded-md",children:j.map((e,t)=>e>0?(0,a.jsx)("div",{className:"h-full",style:{width:"".concat(e/b*100,"%"),backgroundColor:K[t].bg}},K[t].key):null)}),(0,a.jsx)("div",{className:"flex flex-wrap gap-5",children:v.map(e=>(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("div",{className:"h-2.5 w-2.5 rounded-sm",style:{backgroundColor:e.color}}),(0,a.jsx)("span",{className:"text-[12px] text-muted-foreground",children:e.label})]},e.color))})]}):(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center py-10 text-[13px] text-muted-foreground",children:d("stats.noTasks")})]}),(0,a.jsxs)($.Zp,{className:"flex flex-col rounded-2xl border-0 bg-card p-6 shadow-none",children:[(0,a.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-[16px] font-semibold text-foreground",children:d("stats.recentActivity")}),(0,a.jsx)(L(),{href:"/projects/".concat(t,"/activity"),className:"text-[12px] font-medium text-primary hover:underline",children:d("stats.viewAll")})]}),g.length>0?(0,a.jsx)("div",{className:"flex flex-col",children:g.map((e,t)=>{let s=J[e.targetType]||"bg-[#9A9A9A]";return(0,a.jsxs)("div",{className:"flex items-start gap-3 py-3 ".concat(t<g.length-1?"border-b border-secondary":""),children:[(0,a.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded-full ".concat(s)}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("p",{className:"text-[13px] text-foreground",children:[e.actorName," ",e.action]}),(0,a.jsx)("span",{className:"text-[11px] text-muted-foreground",children:(0,V.fw)(e.createdAt,l)})]})]},e.uuid)})}):(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center py-10 text-[13px] text-muted-foreground",children:d("stats.noActivity")})]})]})]})}var G=s(76047),W=s(875);let X=["ideas","lineage","stats"],Y=e=>"chorus:dashboard-view:".concat(e);function ee(e){let{projectUuid:t,projectName:s,currentUserUuid:x,initialTrackerData:m,initialStatsData:p,initialSelectedIdeaUuid:h}=e,g=(0,r.c)("ideaTracker"),[f,j]=(0,n.useState)(()=>{var e;return(e=null==m?void 0:m.groups)&&Object.values(e).some(e=>e.some(e=>{var t;return!!e.parentUuid||(null!=(t=e.childCount)?t:0)>0}))?"lineage":"ideas"}),[b,v]=(0,n.useState)(!1);(0,n.useEffect)(()=>{let e=function(e){let t=null;try{t=window.localStorage.getItem(Y(e))}catch(e){return null}return X.includes(t)?t:null}(t);e&&j(e)},[t]);let[N,w]=(0,n.useState)(()=>!!m&&0===Object.values(m.groups).reduce((e,t)=>e+t.length,0)),y="/projects/".concat(t,"/dashboard"),{selectedId:k,openPanel:C,closePanel:A}=(0,u.T)(y,h),S=[{id:"ideas",label:g("tabs.ideas"),icon:l.A},{id:"lineage",label:g("tabs.lineage"),icon:d.A},{id:"stats",label:g("tabs.stats"),icon:i}];return(0,a.jsxs)("div",{className:"flex h-full flex-col",children:[(0,a.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,a.jsx)("div",{className:"inline-flex items-center gap-0.5 rounded-lg bg-[#EFEBE3] dark:bg-[#201e1a] p-0.5",children:S.map(e=>{let{id:s,label:r,icon:n}=e;return(0,a.jsxs)("button",{type:"button",onClick:()=>(e=>{j(e);try{window.localStorage.setItem(Y(t),e)}catch(e){}})(s),"aria-pressed":f===s,className:"flex cursor-pointer items-center gap-1.5 rounded-md px-3 py-1.5 text-[12px] transition-colors ".concat(f===s?"bg-card font-medium text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[(0,a.jsx)(n,{className:"h-3.5 w-3.5"}),r]},s)})}),"stats"!==f&&!N&&(0,a.jsxs)(c.$,{onClick:()=>v(!0),size:"sm",className:"gap-1.5 rounded-md bg-primary px-3.5 py-2 text-white hover:bg-[#B56A42]",children:[(0,a.jsx)(o.A,{className:"h-4 w-4"}),g("actions.newIdea")]})]}),"stats"===f?(0,a.jsx)(Q,{projectUuid:t,initialData:p}):(0,a.jsx)(R,{projectUuid:t,initialData:m,viewMode:"lineage"===f?"tree":"flat",onIdeaClick:C,onNewIdea:()=>v(!0),onEmptyChange:w}),(0,a.jsx)(W.i,{open:b,onOpenChange:v,projectUuid:t,projectName:s,onCreated:e=>C(e)}),k&&(0,a.jsx)(G.D,{ideaUuid:k,projectUuid:t,currentUserUuid:x,onClose:A,onNavigate:C})]})}},30366:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]])},69525:(e,t,s)=>{"use strict";s.d(t,{ProjectCwdSummary:()=>x});var a=s(90508),r=s(1856),n=s(39268),l=s(62990),d=s(30423),i=s(59208),o=s(91385),c=s(22922),u=s(92691);function x(e){let{projectUuid:t}=e,s=(0,n.c)("fixedCwdAnchor"),x=(0,i.kz)(),[m,p]=(0,r.useState)([]),h=(0,r.useCallback)(async()=>{var e,s;let a=await (0,l.tm)("/api/projects/".concat(encodeURIComponent(t),"/agent-cwds"));if(!a.ok)return;let r=await a.json();p((null!=(s=null==r||null==(e=r.data)?void 0:e.agents)?s:[]).filter(e=>{var t;return null==(t=e.preference)?void 0:t.cwd}))},[t]);return((0,r.useEffect)(()=>{let e=!1,s=e=>{let s=e.detail;(null==s?void 0:s.projectUuid)===t&&h().catch(()=>p([]))};return h().catch(()=>{e||p([])}),window.addEventListener("project-cwd-updated",s),()=>{e=!0,window.removeEventListener("project-cwd-updated",s)}},[h,t]),0===m.length)?null:(0,a.jsx)(u.Bc,{children:(0,a.jsx)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5","aria-label":s("title"),children:m.map(e=>{let{agent:t,preference:r}=e;return(0,a.jsxs)(u.m_,{children:[(0,a.jsx)(u.k$,{asChild:!0,children:(0,a.jsxs)(c.$,{type:"button",variant:"ghost","aria-label":s("openAgentChat",{agent:t.name}),onClick:()=>null==x?void 0:x.openChatForAgent(t.uuid,{host:r.host,cwd:r.cwd}),className:"inline-flex h-auto max-w-full items-center gap-1.5 rounded-md border border-border bg-card px-2 py-1 text-[11px] font-normal text-muted-foreground hover:bg-accent hover:text-accent-foreground",children:[(0,a.jsx)(o.AgentAvatar,{name:t.name,size:16,className:"rounded-full"}),(0,a.jsx)("span",{className:"max-w-[min(12rem,50vw)] truncate font-medium text-foreground",children:t.name}),(0,a.jsx)("span",{"data-testid":"cwd-agent-dot",className:"size-2 shrink-0 rounded-full",style:{backgroundColor:(0,d.j)(t.name)},"aria-hidden":!0})]})}),(0,a.jsxs)(u.ZI,{side:"bottom",className:"flex items-center gap-2",children:[(0,a.jsx)(o.AgentAvatar,{name:t.name,size:"sm",className:"rounded-md"}),(0,a.jsx)("span",{className:"font-mono",children:r.cwd})]})]},t.uuid)})})})}},70481:(e,t,s)=>{"use strict";s.d(t,{O:()=>m});var a=s(90508),r=s(1856),n=s(39268),l=s(85226),d=s(59133),i=s(30366),o=s(97413),c=s(91385),u=s(22922),x=s(41837);let m=(0,r.forwardRef)(function(e,t){let{projectUuid:s,agentError:m}=e,p=(0,n.c)(),[h,g]=(0,r.useState)([]),[f,j]=(0,r.useState)({}),[b,v]=(0,r.useState)(new Set),[N,w]=(0,r.useState)(!0),[y,k]=(0,r.useState)(null),[C,A]=(0,r.useState)(!1),[S,E]=(0,r.useState)({}),F=(0,r.useCallback)(async()=>{w(!0),A(!1);try{let e=await fetch(s?"/api/projects/".concat(encodeURIComponent(s),"/agent-cwds"):"/api/projects/agent-cwd-options"),t=await e.json();if(!e.ok||!t.success)throw Error("load failed");g(t.data.agents)}catch(e){A(!0)}finally{w(!1)}},[s]);(0,r.useEffect)(()=>{F()},[F]);let _=(e,t)=>{j(e),v(t)};return(0,r.useImperativeHandle)(t,()=>({validate:async()=>{let e=[];for(let t of Object.values(f))try{let s=await (0,x.q)(t);e.push(s),j(e=>({...e,[t.agentUuid]:s}))}catch(s){let e=s instanceof Error?s.message:"INTERNAL_ERROR";return E(s=>({...s,[t.agentUuid]:p("directoryBrowser.errors.".concat(e))})),k(t.agentUuid),null}return{upserts:e,clears:[...b]}}}),[b,f,p]),(0,a.jsxs)("div",{className:"flex min-w-0 flex-col gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:p("projectSettings.agentCwds.title")}),(0,a.jsx)("p",{className:"mt-1 text-[12px] text-muted-foreground",children:p("projectSettings.agentCwds.description")})]}),N&&(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,a.jsx)(l.A,{className:"size-4 animate-spin"}),p("projectSettings.agentCwds.loading")]}),C&&(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",role:"alert",children:[(0,a.jsx)("span",{className:"text-xs text-destructive",children:p("projectSettings.agentCwds.loadFailed")}),(0,a.jsxs)(u.$,{type:"button",size:"sm",variant:"outline",onClick:()=>void F(),children:[(0,a.jsx)(d.A,{className:"mr-2 size-3.5"}),p("common.retry")]})]}),!N&&!C&&0===h.length&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:p("projectSettings.agentCwds.emptyOnline")}),h.map(e=>{let t=f[e.agent.uuid],r=b.has(e.agent.uuid)?null:t?{host:t.host,cwd:t.cwd,status:"valid"}:e.preference;return(0,a.jsxs)("div",{className:"min-w-0 rounded-lg border border-border p-4",children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-start gap-2.5",children:[(0,a.jsx)(c.AgentAvatar,{name:e.agent.name,size:"sm",className:"mt-0.5 rounded-md"}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-semibold",children:e.agent.name}),r?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("p",{className:"mt-1 break-all font-mono text-[11px]",children:r.cwd}),(0,a.jsx)("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",children:r.host}),(0,a.jsx)("p",{className:"valid"===r.status?"mt-1 text-[11px] text-emerald-700 dark:text-emerald-400":"mt-1 text-[11px] text-destructive",children:p("projectSettings.agentCwds.status.".concat(r.status))})]}):(0,a.jsx)("p",{className:"mt-1 text-[11px] text-muted-foreground",children:p("projectSettings.agentCwds.notConfigured")})]})]}),(0,a.jsxs)("div",{className:"flex shrink-0 gap-1",children:[(0,a.jsx)(u.$,{type:"button",size:"icon",variant:"ghost",title:p(r?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),"aria-label":p(r?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),onClick:()=>k(y===e.agent.uuid?null:e.agent.uuid),children:(0,a.jsx)(i.A,{className:"size-4"})}),r&&(0,a.jsx)(u.$,{type:"button",size:"icon",variant:"ghost",className:"text-destructive",title:p("projectSettings.agentCwds.clear"),"aria-label":p("projectSettings.agentCwds.clear"),onClick:()=>(e=>{let t={...f};delete t[e];let a=new Set(b);s&&a.add(e),_(t,a)})(e.agent.uuid),children:(0,a.jsx)(o.A,{className:"size-4"})})]})]}),y===e.agent.uuid&&(0,a.jsxs)("div",{className:"mt-4 border-t border-border pt-4",children:[(0,a.jsx)(x.e,{agentUuid:e.agent.uuid,instances:e.onlineInstances,showConfirm:!1,onValidated:()=>void 0,onSelectionChange:t=>((e,t)=>{if(!e)return;let s=new Set(b);s.delete(t),_({...f,[t]:e},s),E(e=>{let s={...e};return delete s[t],s})})(t,e.agent.uuid)}),(S[e.agent.uuid]||(null==m?void 0:m.agentUuid)===e.agent.uuid)&&(0,a.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:S[e.agent.uuid]||(null==m?void 0:m.message)})]}),y!==e.agent.uuid&&(null==m?void 0:m.agentUuid)===e.agent.uuid&&(0,a.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:m.message})]},e.agent.uuid)})]})})},83064:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]])},97723:(e,t,s)=>{"use strict";s.d(t,{CollapsibleMarkdown:()=>i});var a=s(90508),r=s(1856),n=s(39268),l=s(22922),d=s(97261);function i(e){let{content:t,className:s}=e,i=(0,n.c)(),[o,c]=(0,r.useState)(!1),[u,x]=(0,r.useState)(!1),m=(0,r.useRef)(null);return(0,r.useEffect)(()=>{let e=m.current;if(!e)return;let t=()=>x(e.scrollHeight>81);t();let s=new ResizeObserver(t);return s.observe(e),()=>s.disconnect()},[t]),(0,a.jsxs)("div",{className:s,children:[(0,a.jsx)("div",{ref:m,className:"overflow-hidden [&_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 [&_p:first-child]:mt-0 [&_p:last-child]:mb-0",style:o?void 0:{maxHeight:80},children:(0,a.jsx)(d.MarkdownContent,{children:t})}),u&&(0,a.jsx)(l.$,{variant:"link",size:"sm",onClick:()=>c(e=>!e),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:i(o?"common.showLess":"common.showMore")})]})}},99861:(e,t,s)=>{Promise.resolve().then(s.bind(s,29622)),Promise.resolve().then(s.bind(s,69525)),Promise.resolve().then(s.bind(s,5095)),Promise.resolve().then(s.bind(s,97723))}},e=>{e.O(0,[41282,87326,93151,41752,30996,57084,59764,12079,18944,27290,12790,26885,14655,21932,20204,30724,16544,94170,27201,16551,97784,14753,45532,70552,17099,15183,65096,87325,29305,31308,27370,94643,6603,99366,53073,29108,82751,74951,65496,77358],()=>e(e.s=99861)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[61461],{6493:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});let r=(0,n(66206).A)("file-spreadsheet",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]])},6841:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});let r=(0,n(66206).A)("file-type",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M11 18h2",key:"12mj7e"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M9 13v-.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v.5",key:"qbrxap"}]])},11148:(e,t,n)=>{"use strict";n.d(t,{DocumentContent:()=>u});var r=n(90508),s=n(1856),o=n(91814),a=n(39268),d=n(97261),i=n(48416),l=n(22922),c=n(52217);let m=(0,c.createServerReference)("70cce6bf633f55bfc23305d4def92ed7926f1b1453",c.callServer,void 0,c.findSourceMapURL,"updateDocumentAction");function u(e){let{documentUuid:t,projectUuid:n,initialContent:c}=e,u=(0,a.c)(),h=(0,o.r)(),[p,v]=(0,s.useState)(!1),[f,x]=(0,s.useState)(c),[b,j]=(0,s.useTransition)();return(0,r.jsxs)(i.Zp,{className:"flex-1 overflow-auto border-border p-6",children:[(0,r.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,r.jsx)("h2",{className:"text-lg font-medium text-foreground",children:u("common.content")}),p?(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(l.$,{variant:"outline",onClick:()=>{x(c),v(!1)},disabled:b,className:"border-border text-muted-foreground",children:u("common.cancel")}),(0,r.jsx)(l.$,{onClick:()=>{j(async()=>{(await m(t,n,f)).success&&(v(!1),h.refresh())})},disabled:b,className:"bg-[#5A9E6F] hover:bg-[#4A8E5F] text-white",children:u(b?"common.processing":"documents.saveChanges")})]}):(0,r.jsxs)(l.$,{onClick:()=>v(!0),className:"bg-primary hover:bg-[#B56A42] text-white",children:[(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"mr-2 h-4 w-4",children:(0,r.jsx)("path",{d:"M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"})}),u("common.edit")]})]}),p?(0,r.jsx)("textarea",{value:f,onChange:e=>x(e.target.value),className:"h-full w-full resize-none rounded-lg border border-border p-4 font-mono text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary",placeholder:u("documents.documentContent")}):(0,r.jsx)("div",{className:"prose prose-sm max-w-none text-foreground",children:c?(0,r.jsx)(d.MarkdownContent,{children:c}):(0,r.jsx)("span",{className:"text-[#9A9A9A] italic",children:u("common.noContent")})})]})}},12294:(e,t,n)=>{Promise.resolve().then(n.bind(n,52053)),Promise.resolve().then(n.bind(n,90299)),Promise.resolve().then(n.bind(n,65514)),Promise.resolve().then(n.bind(n,98861)),Promise.resolve().then(n.bind(n,38476)),Promise.resolve().then(n.bind(n,74542)),Promise.resolve().then(n.bind(n,71350)),Promise.resolve().then(n.bind(n,39025)),Promise.resolve().then(n.bind(n,75368)),Promise.resolve().then(n.bind(n,89684)),Promise.resolve().then(n.bind(n,58057)),Promise.resolve().then(n.bind(n,6512)),Promise.resolve().then(n.bind(n,25051)),Promise.resolve().then(n.bind(n,4374)),Promise.resolve().then(n.bind(n,19345)),Promise.resolve().then(n.bind(n,79919)),Promise.resolve().then(n.bind(n,17533)),Promise.resolve().then(n.bind(n,99545)),Promise.resolve().then(n.bind(n,63197)),Promise.resolve().then(n.bind(n,65326)),Promise.resolve().then(n.bind(n,48218)),Promise.resolve().then(n.bind(n,56260)),Promise.resolve().then(n.bind(n,60322)),Promise.resolve().then(n.bind(n,79834)),Promise.resolve().then(n.bind(n,6947)),Promise.resolve().then(n.bind(n,88878)),Promise.resolve().then(n.bind(n,34857)),Promise.resolve().then(n.bind(n,97006)),Promise.resolve().then(n.bind(n,45841)),Promise.resolve().then(n.t.bind(n,12790,23)),Promise.resolve().then(n.bind(n,38769)),Promise.resolve().then(n.bind(n,89971)),Promise.resolve().then(n.bind(n,11148)),Promise.resolve().then(n.bind(n,76546))},15044:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});let r=(0,n(66206).A)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]])},38769:(e,t,n)=>{"use strict";n.d(t,{DocumentActions:()=>f});var r=n(90508),s=n(69386),o=n(1856),a=n(91814),d=n(39268),i=n(97413),l=n(85226),c=n(67587),m=n(22922),u=n(51817),h=n(52217);let p=(0,h.createServerReference)("401123b098a27b5386b5275e3d0e72ef95d4ed757d",h.callServer,void 0,h.findSourceMapURL,"deleteDocumentAction");function v(e){let{documentUuid:t,documentTitle:n,projectUuid:s}=e,h=(0,d.c)("documents"),v=(0,d.c)("common"),f=(0,a.r)(),[x,b]=o.useState(!1),[j,g]=o.useState(!1),[y,w]=o.useState(null),P=async()=>{g(!0),w(null);let e=await p(t);if(e.success){c.oR.success(h("deleteSuccess")),b(!1),g(!1),f.replace("/projects/".concat(e.projectUuid,"/documents")),f.refresh();return}let n="not_found"===e.error?h("deleteFailedNotFound"):h("deleteFailed");w(n),c.oR.error(n),g(!1)};return(0,r.jsxs)(u.Lt,{open:x,onOpenChange:e=>{!j&&(b(e),e||w(null))},children:[(0,r.jsx)(u.tv,{asChild:!0,children:(0,r.jsxs)(m.$,{variant:"destructive",size:"sm",children:[(0,r.jsx)(i.A,{className:"mr-2 h-4 w-4"}),v("delete")]})}),(0,r.jsxs)(u.EO,{children:[(0,r.jsxs)(u.wd,{children:[(0,r.jsx)(u.r7,{children:h("deleteDocument")}),(0,r.jsx)(u.$v,{children:h("deleteDocumentDescription",{title:n})})]}),y&&(0,r.jsx)("p",{className:"text-sm text-destructive",role:"alert",children:y}),(0,r.jsxs)(u.ck,{children:[(0,r.jsx)(u.Zr,{disabled:j,children:v("cancel")}),(0,r.jsx)(m.$,{variant:"destructive",disabled:j,onClick:P,children:j?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(l.A,{className:"mr-2 h-4 w-4 animate-spin"}),v("delete")]}):v("delete")})]})]})]})}function f(e){let{documentUuid:t,projectUuid:n,documentTitle:o,canDelete:a,exportDoc:d}=e;return(0,r.jsxs)("div",{className:"flex gap-2",children:[d?(0,r.jsx)(s.E,{document:d}):(0,r.jsx)(s.E,{documentUuid:t}),a&&(0,r.jsx)(v,{documentUuid:t,documentTitle:o,projectUuid:n})]})}},66343:(e,t,n)=>{"use strict";n.d(t,{Hr:()=>p,Ht:()=>m,SQ:()=>l,_2:()=>c,lp:()=>u,mB:()=>h,rI:()=>d,ty:()=>i});var r=n(90508);n(1856);var s=n(97964),o=n(39025),a=n(24377);function d(e){let{...t}=e;return(0,r.jsx)(o.Root,{"data-slot":"dropdown-menu",...t})}function i(e){let{...t}=e;return(0,r.jsx)(o.Trigger,{"data-slot":"dropdown-menu-trigger",...t})}function l(e){let{className:t,sideOffset:n=4,...s}=e;return(0,r.jsx)(o.Portal,{children:(0,r.jsx)(o.Content,{"data-slot":"dropdown-menu-content",sideOffset:n,className:(0,a.cn)("bg-popover text-popover-foreground z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s})})}function c(e){let{className:t,inset:n,variant:s="default",...d}=e;return(0,r.jsx)(o.Item,{"data-slot":"dropdown-menu-item","data-inset":n,"data-variant":s,className:(0,a.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0","data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive","data-[inset]:pl-8 [&_svg]:size-4",t),...d})}function m(e){let{className:t,children:n,...d}=e;return(0,r.jsxs)(o.RadioItem,{"data-slot":"dropdown-menu-radio-item",className:(0,a.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:size-4",t),...d,children:[(0,r.jsx)("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:(0,r.jsx)(o.ItemIndicator,{children:(0,r.jsx)(s.A,{className:"size-2 fill-current"})})}),n]})}function u(e){let{className:t,inset:n,...s}=e;return(0,r.jsx)(o.Label,{"data-slot":"dropdown-menu-label","data-inset":n,className:(0,a.cn)("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",t),...s})}function h(e){let{className:t,...n}=e;return(0,r.jsx)(o.Separator,{"data-slot":"dropdown-menu-separator",className:(0,a.cn)("bg-border -mx-1 my-1 h-px",t),...n})}function p(e){let{...t}=e;return(0,r.jsx)(o.RadioGroup,{"data-slot":"dropdown-menu-radio-group",...t})}},69386:(e,t,n)=>{"use strict";n.d(t,{E:()=>v});var r=n(90508),s=n(1856),o=n(67587),a=n(56770),d=n(6841),i=n(6493),l=n(85226),c=n(15044),m=n(39268),u=n(66343),h=n(22922),p=n(67712);function v(e){let{document:t,documentUuid:v,variant:f="default"}=e,x=(0,m.c)(),{exportDocument:b,isExporting:j,exportError:g}=function(){let[e,t]=(0,s.useState)(!1),[r,o]=(0,s.useState)(null);return{exportDocument:(0,s.useCallback)(async(e,r)=>{t(!0),o(null);try{let t,o,d=function(e){let t=e.replace(/[\\/:*?"<>|]/g,"").replace(/\s+/g," ").trim().replace(/\s/g,"-");return t.length>0?t:"document"}(e.title);if("md"===r){let{exportAsMarkdownBlob:r}=await n.e(50681).then(n.bind(n,50681));t=r(e),o="md"}else if("pdf"===r){let{exportAsPdf:r}=await n.e(34966).then(n.bind(n,34966));t=await r(e),o="pdf"}else if("docx"===r){let{exportAsDocx:r}=await n.e(9634).then(n.bind(n,9634));t=await r(e),o="docx"}else throw Error("Unsupported export format: ".concat(String(r)));var s=t,a="".concat(d,".").concat(o);let i=URL.createObjectURL(s),l=document.createElement("a");l.href=i,l.download=a,l.rel="noopener",l.style.display="none",document.body.appendChild(l),l.click(),document.body.removeChild(l),setTimeout(()=>URL.revokeObjectURL(i),1e3)}catch(e){o(e instanceof Error?e.message:String(e)),p.q.error("useDocumentExport export failed",e)}finally{t(!1)}},[]),isExporting:e,exportError:r}}(),[y,w]=(0,s.useState)(null);async function P(e){w(e);try{let i=t;if(!i&&v){var n,r,s,a,d;let e=await fetch("/api/documents/".concat(v)),t=await e.json();if(!t.success||!t.data)return void o.oR.error(x("export.exportError"));let l=t.data;i={title:l.title,content:null!=(s=l.content)?s:"",type:l.type,version:l.version,createdAt:l.createdAt,updatedAt:l.updatedAt,createdByName:null!=(a=null==(n=l.createdBy)?void 0:n.name)?a:"",projectName:null!=(d=null==(r=l.project)?void 0:r.name)?d:""}}i&&await b(i,e)}finally{w(null),g&&o.oR.error(g)}}let k=[{format:"md",labelKey:"export.formatMd",icon:a.A},{format:"pdf",labelKey:"export.formatPdf",icon:d.A},{format:"docx",labelKey:"export.formatDocx",icon:i.A}],N="compact"===f;return(0,r.jsxs)(u.rI,{children:[(0,r.jsx)(u.ty,{asChild:!0,children:(0,r.jsxs)(h.$,{variant:"ghost"===f?"ghost":"outline",size:N?"sm":"default",className:N?"h-6 text-[11px] text-muted-foreground hover:text-foreground":"border-border text-muted-foreground gap-1.5",disabled:j,children:[j?(0,r.jsx)(l.A,{className:"".concat(N?"h-3 w-3":"h-4 w-4"," animate-spin")}):(0,r.jsx)(c.A,{className:N?"h-3 w-3":"h-4 w-4"}),!N&&x("export.exportDocument")]})}),(0,r.jsx)(u.SQ,{align:"end",className:"w-48",children:k.map(e=>{let{format:t,labelKey:n,icon:s}=e;return(0,r.jsxs)(u._2,{onClick:e=>{e.stopPropagation(),e.preventDefault(),P(t)},disabled:j,children:[y===t?(0,r.jsx)(l.A,{className:"h-4 w-4 animate-spin"}):(0,r.jsx)(s,{className:"h-4 w-4"}),x(n)]},t)})})]})}},76546:(e,t,n)=>{"use strict";n.d(t,{FormattedDateTime:()=>o});var r=n(90508),s=n(38106);function o(e){let{date:t}=e;return(0,r.jsx)(r.Fragment,{children:(0,s.r)(t)})}},89971:(e,t,n)=>{"use strict";n.d(t,{DocumentComments:()=>o});var r=n(90508),s=n(6603);function o(e){let{documentUuid:t,currentUserUuid:n}=e;return(0,r.jsx)(s.$m,{targetType:"document",targetUuid:t,currentUserUuid:n,compact:!0})}}},e=>{e.O(0,[87326,93151,41752,30996,57084,12079,18944,27290,12790,26885,14655,21932,20204,30724,94170,27201,16551,97784,14753,45532,70552,17099,15183,65096,87325,29305,39025,51603,27370,94643,6603,74951,65496,77358],()=>e(e.s=12294)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[13280],{22081:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i}});let a=r(90508),n=r(1856),l=r(38878);function s(e){return{default:e&&"default"in e?e.default:e}}r(23667);let o={loader:()=>Promise.resolve(s(()=>null)),loading:null,ssr:!0},i=function(e){let t={...o,...e},r=(0,n.lazy)(()=>t.loader().then(s)),i=t.loading;function u(e){let s=i?(0,a.jsx)(i,{isLoading:!0,pastDelay:!0,error:null}):null,o=!t.ssr||!!t.loading,u=o?n.Suspense:n.Fragment,d=t.ssr?(0,a.jsxs)(a.Fragment,{children:[null,(0,a.jsx)(r,{...e})]}):(0,a.jsx)(l.BailoutToCSR,{reason:"next/dynamic",children:(0,a.jsx)(r,{...e})});return(0,a.jsx)(u,{...o?{fallback:s}:{},children:d})}return u.displayName="LoadableComponent",u}},23217:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("square-check-big",[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]])},23667:(e,t,r)=>{"use strict";function a(e){let{moduleIds:t}=e;return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return a}}),r(90508),r(38129),r(66516),r(83745)},38878:(e,t,r)=>{"use strict";function a(e){let{reason:t,children:r}=e;return r}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return a}}),r(52330)},40026:(e,t,r)=>{Promise.resolve().then(r.bind(r,79412))},49889:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n}});let a=r(32728)._(r(22081));function n(e,t){var r;let n={};"function"==typeof e&&(n.loader=e);let l={...n,...t};return(0,a.default)({...l,modules:null==(r=l.loadableGenerated)?void 0:r.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},58866:(e,t,r)=>{"use strict";r.d(t,{AnimatedEmptyState:()=>l});var a=r(90508),n=r(16544);function l(e){let{children:t}=e;return(0,a.jsx)(n.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},children:t})}},62205:(e,t,r)=>{"use strict";r.d(t,{a:()=>n});var a=r(1856);function n(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=window.matchMedia("(max-width: 767px)");t(e.matches);let r=e=>t(e.matches);return e.addEventListener("change",r),()=>e.removeEventListener("change",r)},[]),e}},63117:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{bindSnapshot:function(){return s},createAsyncLocalStorage:function(){return l},createSnapshot:function(){return o}});let r=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class a{disable(){throw r}getStore(){}run(){throw r}exit(){throw r}enterWith(){throw r}static bind(e){return e}}let n="undefined"!=typeof globalThis&&globalThis.AsyncLocalStorage;function l(){return n?new n:new a}function s(e){return n?n.bind(e):a.bind(e)}function o(){return n?n.snapshot():function(e,...t){return e(...t)}}},66516:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorage",{enumerable:!0,get:function(){return a.workAsyncStorageInstance}});let a=r(92919)},76542:(e,t,r)=>{"use strict";r.d(t,{U:()=>i});var a=r(89929);function n(e,t){return e.parent===t.parent?1:2}function l(e){var t=e.children;return t?t[0]:e.t}function s(e){var t=e.children;return t?t[t.length-1]:e.t}function o(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function i(e,t){let r=new Map;for(let t of e)r.set(t.id,t);let i=new Map,u=new Map;for(let e of t)"lineage"===e.kind?i.has(e.target)||i.set(e.target,e.source):"depends"!==e.kind||u.has(e.target)||u.set(e.target,e.source);let d=e=>{if("idea"===e.type){let t=i.get(e.id);return void 0!==t&&r.has(t)?t:void 0}if("task"===e.type){let t=u.get(e.id);if(void 0!==t&&r.has(t))return t}return void 0!==e.ownerId&&r.has(e.ownerId)?e.ownerId:void 0},c=new Map,p=new Map,h=[];for(let t of e){let e=d(t);if(void 0===e)h.push(t);else{p.set(t.id,e);let r=c.get(e);r?r.push(t):c.set(e,[t])}}let f=(e,t)=>{var r;t.add(e.id);let a=null!=(r=c.get(e.id))?r:[],n=[];for(let e of a)t.has(e.id)||n.push(f(e,t));return{id:e.id,children:n}},m=(function(){var e=n,t=1,r=1,a=null;function i(n){var l=function(e){for(var t,r,a,n,l,s=new o(e,0),i=[s];t=i.pop();)if(a=t._.children)for(t.children=Array(l=a.length),n=l-1;n>=0;--n)i.push(r=t.children[n]=new o(a[n],n)),r.parent=t;return(s.parent=new o(null,0)).children=[s],s}(n);if(l.eachAfter(u),l.parent.m=-l.z,l.eachBefore(d),a)n.eachBefore(c);else{var s=n,i=n,p=n;n.eachBefore(function(e){e.x<s.x&&(s=e),e.x>i.x&&(i=e),e.depth>p.depth&&(p=e)});var h=s===i?1:e(s,i)/2,f=h-s.x,m=t/(i.x+h+f),g=r/(p.depth||1);n.eachBefore(function(e){e.x=(e.x+f)*m,e.y=e.depth*g})}return n}function u(t){var r=t.children,a=t.parent.children,n=t.i?a[t.i-1]:null;if(r){!function(e){for(var t,r=0,a=0,n=e.children,l=n.length;--l>=0;)t=n[l],t.z+=r,t.m+=r,r+=t.s+(a+=t.c)}(t);var o=(r[0].z+r[r.length-1].z)/2;n?(t.z=n.z+e(t._,n._),t.m=t.z-o):t.z=o}else n&&(t.z=n.z+e(t._,n._));t.parent.A=function(t,r,a){if(r){for(var n,o,i,u=t,d=t,c=r,p=u.parent.children[0],h=u.m,f=d.m,m=c.m,g=p.m;c=s(c),u=l(u),c&&u;)p=l(p),(d=s(d)).a=t,(i=c.z+m-u.z-h+e(c._,u._))>0&&(!function(e,t,r){var a=r/(t.i-e.i);t.c-=a,t.s+=r,e.c+=a,t.z+=r,t.m+=r}((n=c,o=a,n.a.parent===t.parent?n.a:o),t,i),h+=i,f+=i),m+=c.m,h+=u.m,g+=p.m,f+=d.m;c&&!s(d)&&(d.t=c,d.m+=m-f),u&&!l(p)&&(p.t=u,p.m+=h-g,a=t)}return a}(t,n,t.parent.A||a[0])}function d(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function c(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(a=!1,t=+e[0],r=+e[1],i):a?null:[t,r]},i.nodeSize=function(e){return arguments.length?(a=!0,t=+e[0],r=+e[1],i):a?[t,r]:null},i})().nodeSize([72,280]),g=new Map,x=[],y=0;for(let e of h){let t=f(e,new Set),r=(0,a.Ay)(t);m(r);let n=1/0,l=-1/0;r.each(e=>{e.x<n&&(n=e.x),e.x>l&&(l=e.x)}),Number.isFinite(n)||(n=0,l=0);let s=y-n;r.eachBefore(e=>{let t=e.data.id;g.set(t,{id:t,x:e.y,y:e.x+s,depth:e.depth}),x.push({id:t,depth:e.depth})}),y=l+s+96}return{positions:g,outline:x,treeParentById:p}}o.prototype=Object.create(a.bP.prototype)},79412:(e,t,r)=>{"use strict";r.d(t,{ResourceGraph:()=>R});var a=r(90508),n=r(1856),l=r(49889),s=r.n(l),o=r(39268),i=r(29767),u=r(71921),d=r(23217),c=r(56770),p=r(66206);let h=(0,p.A)("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]);var f=r(9160),m=r(30044);let g=(0,p.A)("minimize-2",[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]]),x=(0,p.A)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]);var y=r(89967),v=r(17730),b=r(22922),j=r(48416),w=r(39077),k=r(14554),S=r(88064),N=r(92691),C=r(58866),A=r(81531),M=r(62205),_=r(42305),z=r(63964),E=r(76542),I=r(67712),O=r(76047),P=r(79507),U=r(24522),F=r(27251);let B=s()(()=>r.e(38366).then(r.bind(r,15985)).then(e=>e.ForceGraphCanvas),{loadableGenerated:{webpack:()=>[15985]},ssr:!1,loading:()=>(0,a.jsx)("div",{className:"absolute inset-0 flex items-center justify-center text-sm text-muted-foreground",children:"…"})}),L={idea:{color:"#7C4DFF",darkColor:"#9B82FF",Icon:i.A},proposal:{color:"#2563EB",darkColor:"#5A8DEF",Icon:u.A},task:{color:"#E8833A",darkColor:"#F0964E",Icon:d.A},document:{color:"#00897B",darkColor:"#1CA695",Icon:c.A}},q={idea:!0,proposal:!0,task:!0,document:!0};function R(e){var t;let{projectUuid:r,currentUserUuid:l}=e,s=(0,o.c)(),i=(0,M.a)(),[u,d]=(0,n.useState)(null),[c,p]=(0,n.useState)(null),[R,T]=(0,n.useState)(q),V="/projects/".concat(r,"/graph"),{selectedId:$,openPanel:H,closePanel:Z}=(0,A.T)(V,null),[G,K]=(0,n.useState)(null),[J,Q]=(0,n.useState)(null),[W,X]=(0,n.useState)(null),[Y,ee]=(0,n.useState)(()=>new Set),[et,er]=(0,n.useState)(()=>new Set),[ea,en]=(0,n.useState)(""),[el,es]=(0,n.useState)(0),[eo,ei]=(0,n.useState)(null),[eu,ed]=(0,n.useState)(!1),ec=(0,n.useRef)(!1),ep=(0,n.useRef)(0),eh=(0,n.useRef)(null),ef=(0,n.useCallback)(async()=>{var e,t;null==(e=eh.current)||e.abort();let a=new AbortController;eh.current=a;let n=++ep.current;try{let e=await fetch("/api/projects/".concat(r,"/resource-graph"),{signal:a.signal}),l=await e.json();if(a.signal.aborted||n!==ep.current)return;if(!e.ok||!l.success||!l.data)return void p(null!=(t=l.error)?t:s("graph.loadFailed"));let o=l.data,i=new Set(o.nodes.map(e=>e.uuid)),u=e=>{let t=!1,r=new Set;for(let a of e)i.has(a)?r.add(a):t=!0;return t?r:e};ee(u),er(u),p(null),d(o)}catch(e){if(a.signal.aborted||n!==ep.current)return;console.error("[resource-graph] fetch failed",e),p(s("graph.loadFailed"))}},[r,s]);(0,n.useEffect)(()=>(p(null),d(null),ee(new Set),er(new Set),en(""),es(0),ei(null),ec.current=!1,ef(),()=>{var e;null==(e=eh.current)||e.abort()}),[r,ef]),(0,z.eV)("idea",ef),(0,z.eV)("proposal",ef),(0,z.eV)("task",ef),(0,z.eV)("document",ef);let em=(0,n.useCallback)(e=>{T(t=>({...t,[e]:!t[e]}))},[]),eg=(0,n.useCallback)((e,t)=>{"idea"===t?ee(t=>{let r=new Set(t);if(r.has(e)){var a;r.delete(e);let t=(null!=(a=null==u?void 0:u.nodes)?a:[]).filter(t=>{var r;return"proposal"===t.type&&(null!=(r=t.sourceIdeaUuids)?r:[]).includes(e)}).map(e=>e.uuid);t.length>0&&er(e=>{let r=!1,a=new Set(e);for(let e of t)a.delete(e)&&(r=!0);return r?a:e})}else r.add(e);return r}):"proposal"===t&&er(t=>{let r=new Set(t);return r.has(e)?r.delete(e):r.add(e),r})},[u]),ex=Y.size>0||et.size>0,ey=(0,n.useCallback)(()=>{if(!u)return;let e=new Set,t=new Set;for(let r of u.nodes)"idea"===r.type?e.add(r.uuid):"proposal"===r.type&&t.add(r.uuid);ee(e),er(t)},[u]),ev=(0,n.useCallback)(()=>{ee(new Set),er(new Set)},[]),{forceNodes:eb,forceLinks:ej,isEmpty:ew}=(0,n.useMemo)(()=>{if(!u)return{forceNodes:[],forceLinks:[],isEmpty:!0};let{visibleNodeUuids:e,visibleEdgeIndices:t,childCountByHub:r}=function(e,t,r){var a,n,l,s,o,i;let{nodes:u,edges:d}=e,c=new Set,p=new Map,h=[];for(let e of u)"idea"===e.type?c.add(e.uuid):"proposal"===e.type?p.set(e.uuid,e):h.push(e);let f=new Map;for(let e of c)f.set(e,0);for(let e of p.keys())f.set(e,0);for(let e of p.values())for(let t of null!=(a=e.sourceIdeaUuids)?a:[])c.has(t)&&f.set(t,(null!=(n=f.get(t))?n:0)+1);for(let e of h){let t=null!=(l=e.proposalUuid)?l:null;null!==t&&p.has(t)&&f.set(t,(null!=(s=f.get(t))?s:0)+1)}let m=new Set(c),g=new Set;for(let e of p.values()){let r=(null!=(o=e.sourceIdeaUuids)?o:[]).filter(e=>c.has(e));(0===r.length||r.some(e=>t.has(e)))&&(g.add(e.uuid),m.add(e.uuid))}for(let e of h){let t=null!=(i=e.proposalUuid)?i:null;if(null===t||!p.has(t)){m.add(e.uuid);continue}g.has(t)&&r.has(t)&&m.add(e.uuid)}let x=[];for(let e=0;e<d.length;e++){let t=d[e];m.has(t.from)&&m.has(t.to)&&x.push(e)}return{visibleNodeUuids:m,visibleEdgeIndices:x,childCountByHub:f}}(u,Y,et),a=u.nodes.filter(t=>e.has(t.uuid)&&R[t.type]),n=new Set(a.map(e=>e.uuid)),l=t.map(e=>u.edges[e]).filter(e=>n.has(e.from)&&n.has(e.to)),s=new Set(u.nodes.filter(e=>"idea"===e.type).map(e=>e.uuid)),o=new Map;for(let e of u.nodes){var i;if("proposal"!==e.type)continue;let t=(null!=(i=e.sourceIdeaUuids)?i:[]).find(e=>s.has(e));o.set(e.uuid,t)}let d=new Set(o.keys());return{forceNodes:a.map(e=>{var t,a;let n="idea"===e.type||"proposal"===e.type?null!=(t=r.get(e.uuid))?t:0:void 0,l="idea"===e.type?Y.has(e.uuid):"proposal"===e.type?et.has(e.uuid):void 0;return{id:e.uuid,type:e.type,title:e.title,status:e.status,childCount:n,expanded:l,hasAffordance:(a=e.type,("idea"===a||"proposal"===a)&&(null!=n?n:0)>0),ownerId:(e=>{if("proposal"===e.type)return o.get(e.uuid);if("task"===e.type||"document"===e.type){var t;let r=null!=(t=e.proposalUuid)?t:void 0;return r&&d.has(r)?r:void 0}})(e)}}),forceLinks:l.map(e=>({source:e.from,target:e.to,kind:e.kind})),isEmpty:0===a.length}},[u,Y,et,R]),ek=(0,n.useMemo)(()=>{if(!u)return null;var e=u.nodes.filter(e=>R[e.type]);let t=ea.trim().toLowerCase();if(""===t)return null;let r=new Set;for(let a of e)a.title.toLowerCase().includes(t)&&r.add(a.uuid);return r},[u,ea,R]),eS=null!==ek,eN=(0,n.useMemo)(()=>{if(null===ek||0===ek.size)return[];let{outline:e}=(0,E.U)(eb,ej),t=[];for(let r of e)ek.has(r.id)&&t.push(r.id);return t},[ek,eb,ej]),eC=eN.length,eA=eC>0?(el%eC+eC)%eC:0,eM=eC>0?eN[eA]:null,e_=(0,n.useRef)(eN);e_.current=eN;let ez=(0,n.useRef)(el);ez.current=el,(0,n.useEffect)(()=>{if(!u||null===ek||0===ek.size)return;let{ideaUuids:e,proposalUuids:t}=function(e,t){let r=new Set,a=new Set,n=new Set,l=new Map,s=new Map;for(let t of e.nodes)s.set(t.uuid,t),"idea"===t.type?n.add(t.uuid):"proposal"===t.type&&l.set(t.uuid,t);let o=e=>{var t;return(null!=(t=e.sourceIdeaUuids)?t:[]).find(e=>n.has(e))};for(let e of t){var i;let t=s.get(e);if(void 0===t||"idea"===t.type)continue;if("proposal"===t.type){let e=o(t);void 0!==e&&r.add(e);continue}let n=null!=(i=t.proposalUuid)?i:null;if(null===n)continue;let u=l.get(n);if(void 0===u)continue;a.add(n);let d=o(u);void 0!==d&&r.add(d)}return{ideaUuids:r,proposalUuids:a}}(u,ek);e.size>0&&ee(t=>{let r=!1,a=new Set(t);for(let t of e)a.has(t)||(a.add(t),r=!0);return r?a:t}),t.size>0&&er(e=>{let r=!1,a=new Set(e);for(let e of t)a.has(e)||(a.add(e),r=!0);return r?a:e})},[u,ek]),(0,n.useEffect)(()=>{let e=ec.current;!eS&&e&&(es(0),ei(null)),ec.current=eS},[eS]),(0,n.useEffect)(()=>{es(0)},[ea]),(0,n.useEffect)(()=>{if(null===ek)return;let e=setTimeout(()=>{let e=e_.current;if(0===e.length)return void ei(null);let t=(ez.current%e.length+e.length)%e.length;ei(e[t])},200);return()=>clearTimeout(e)},[ea,ek]);let eE=(0,n.useCallback)(e=>{let t=e_.current,r=t.length;if(0===r)return;let a=((ez.current+e)%r+r)%r;es(a),ei(t[a])},[]),eI=(0,n.useCallback)(()=>{en("")},[]),eO=(0,n.useCallback)(e=>{(0,_.P)(e)||("Enter"===e.key?(e.preventDefault(),eE(e.shiftKey?-1:1)):"Escape"===e.key&&(e.preventDefault(),eI()))},[eI,eE]),eP=(0,n.useCallback)(e=>{X(null),K(e)},[]),eU=(0,n.useCallback)(e=>{K(null),Q(null),X(e)},[]);(0,n.useEffect)(()=>{if(!G)return void Q(null);let e=!1;return(0,F.Q)(G).then(t=>{e||(t.success?Q(t.data):I.q.error("Failed to load task for graph panel:",t.error))}).catch(t=>{e||I.q.error("Failed to load task for graph panel:",t)}),()=>{e=!0}},[G]);let[eF,eB]=(0,n.useState)(null);(0,n.useEffect)(()=>{if(!eF)return;let e=new AbortController;return(async()=>{try{var t;let r=await fetch("/api/documents/".concat(eF),{signal:e.signal}),a=await r.json();if(e.signal.aborted)return;if(!r.ok||!a.success||!a.data)return void I.q.error("Failed to load document for graph panel:",a.error);eU({title:a.data.title,type:a.data.type,content:null!=(t=a.data.content)?t:""})}catch(t){if(e.signal.aborted)return;I.q.error("Failed to load document for graph panel:",t)}})(),()=>e.abort()},[eF,eU]);let eL=(0,n.useCallback)((e,t,r)=>{if(r&&("idea"===t||"proposal"===t))return void eg(e,t);switch(t){case"idea":return void H(e,"elaboration");case"proposal":{var a,n;let t=(null!=(n=null==u||null==(a=u.nodes.find(t=>t.uuid===e))?void 0:a.sourceIdeaUuids)?n:[])[0];if(!t)return void I.q.warn("[resource-graph] proposal node has no project-local source idea; cannot open panel",{proposalUuid:e});H(t,"proposal");return}case"task":return void eP(e);case"document":K(null),Q(null),X(null),eB(e);return}},[u,H,eP,eg]),eq=null!=(t=null!=$?$:G)?t:eF,eR=(0,n.useCallback)(()=>{X(null),eB(null)},[]),eD=(0,a.jsxs)(a.Fragment,{children:[$&&(0,a.jsx)(O.D,{ideaUuid:$,projectUuid:r,currentUserUuid:l,onClose:Z,onNavigate:H},$),G&&J&&(0,a.jsx)(P.v,{task:J,projectUuid:r,currentUserUuid:l,mode:"overlay",onClose:()=>{K(null),Q(null)}}),W&&(0,a.jsx)(U.K,{title:W.title,type:W.type,content:W.content,mode:"overlay",onClose:eR})]});return c?(0,a.jsxs)("div",{className:"p-4 md:p-8",children:[(0,a.jsx)(D,{t:s}),(0,a.jsx)(j.Zp,{className:"border-border p-6 text-sm text-[#B71C1C] dark:text-[#F08078]",children:c}),eD]}):u?(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col p-4 md:p-8",children:[(0,a.jsx)(D,{t:s}),(0,a.jsxs)("div",{className:"relative flex-1 min-h-[600px] overflow-hidden rounded-[10px] border border-border bg-background",children:[ew&&(0,a.jsx)(C.AnimatedEmptyState,{children:(0,a.jsxs)(j.Zp,{className:"m-12 flex flex-col items-center justify-center border-border p-8 text-center",children:[(0,a.jsx)("h3",{className:"mb-2 text-base font-medium text-foreground",children:s("graph.emptyTitle")}),(0,a.jsx)("p",{className:"max-w-sm text-sm text-muted-foreground",children:s("graph.emptyDesc")})]})}),!ew&&(0,a.jsx)(B,{nodes:eb,links:ej,selectedId:eq,onNodeClick:eL,matchIds:ek,currentMatchId:eM,centerNodeId:eo}),(0,a.jsx)("div",{className:"absolute right-3 top-3 z-10",children:i&&!eu?(0,a.jsx)(b.$,{type:"button",variant:"outline",size:"icon",onClick:()=>ed(!0),"aria-label":s("graph.controls.open"),"data-testid":"graph-controls-toggle",className:"bg-card/95 shadow-sm backdrop-blur",children:(0,a.jsx)(h,{className:"h-4 w-4"})}):(0,a.jsxs)(j.Zp,{className:"w-[208px] border-border bg-card/95 p-2.5 shadow-sm backdrop-blur",children:[i&&(0,a.jsx)("div",{className:"mb-1.5 flex justify-end",children:(0,a.jsx)(b.$,{type:"button",variant:"ghost",size:"icon-xs",onClick:()=>ed(!1),"aria-label":s("graph.controls.close"),"data-testid":"graph-controls-collapse",className:"text-muted-foreground",children:(0,a.jsx)(f.A,{className:"h-3.5 w-3.5"})})}),!ew&&(0,a.jsxs)("div",{className:"mb-2","data-testid":"graph-search",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsxs)("div",{className:"relative flex-1",children:[(0,a.jsx)(m.A,{className:"pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[#9A9A9A]","aria-hidden":"true"}),(0,a.jsx)(k.p,{type:"text",value:ea,onChange:e=>en(e.target.value),onKeyDown:eO,placeholder:s("graph.search.placeholder"),"aria-label":s("graph.search.placeholder"),"data-testid":"graph-search-input",className:"h-8 pl-8 pr-8 text-xs"}),""!==ea&&(0,a.jsx)(b.$,{type:"button",variant:"ghost",size:"icon-xs",onClick:eI,"aria-label":s("graph.search.clear"),"data-testid":"graph-search-clear",className:"absolute right-1 top-1/2 -translate-y-1/2 text-muted-foreground",children:(0,a.jsx)(f.A,{className:"h-3.5 w-3.5"})})]}),(0,a.jsx)(N.Bc,{delayDuration:300,children:(0,a.jsxs)(N.m_,{children:[(0,a.jsx)(N.k$,{asChild:!0,children:(0,a.jsx)(b.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:ex?ev:ey,"aria-label":ex?s("graph.collapseAll"):s("graph.expandAll"),"data-testid":"graph-expand-toggle",className:"shrink-0 text-muted-foreground",children:ex?(0,a.jsx)(g,{className:"h-3.5 w-3.5"}):(0,a.jsx)(x,{className:"h-3.5 w-3.5"})})}),(0,a.jsx)(N.ZI,{side:"bottom",children:ex?s("graph.collapseAll"):s("graph.expandAll")})]})})]}),eS&&(0,a.jsxs)("div",{className:"mt-1.5 flex items-center justify-between gap-2","data-testid":"graph-search-nav",children:[eC>0?(0,a.jsx)("span",{className:"text-[11px] tabular-nums text-muted-foreground","data-testid":"graph-search-count",children:s("graph.search.count",{current:eA+1,total:eC})}):(0,a.jsx)("span",{className:"text-[11px] text-[#B07B00] dark:text-[#E0A050]","data-testid":"graph-search-no-matches",children:s("graph.search.noMatches")}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(b.$,{type:"button",variant:"ghost",size:"icon-xs",onClick:()=>eE(-1),disabled:0===eC,"aria-label":s("graph.search.prev"),"data-testid":"graph-search-prev",children:(0,a.jsx)(y.A,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(b.$,{type:"button",variant:"ghost",size:"icon-xs",onClick:()=>eE(1),disabled:0===eC,"aria-label":s("graph.search.next"),"data-testid":"graph-search-next",children:(0,a.jsx)(v.A,{className:"h-3.5 w-3.5"})})]})]})]}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-x-2 gap-y-1.5",children:["idea","proposal","task","document"].map(e=>{let t=L[e],r="graph-filter-".concat(e);return(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(w.S,{id:r,checked:R[e],onCheckedChange:()=>em(e)}),(0,a.jsx)("span",{className:"graph-swatch h-2 w-2 shrink-0 rounded-full",style:{"--swatch":t.color,"--swatch-dark":t.darkColor}}),(0,a.jsx)(S.J,{htmlFor:r,className:"cursor-pointer text-xs text-foreground",children:s("graph.filters.".concat(e))})]},e)})})]})})]}),eD]}):(0,a.jsxs)("div",{className:"p-4 md:p-8",children:[(0,a.jsx)(D,{t:s}),(0,a.jsx)(j.Zp,{className:"flex items-center justify-center border-border p-12 text-sm text-muted-foreground",children:s("graph.loading")}),eD]})}function D(e){let{t}=e;return(0,a.jsx)("div",{className:"mb-6 flex items-center justify-between",children:(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:t("graph.title")}),(0,a.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:t("graph.subtitle")})]})})}},92919:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return a}});let a=(0,r(63117).createAsyncLocalStorage)()}},e=>{e.O(0,[41282,87326,93151,41752,30996,57084,59764,12079,18944,27290,12790,26885,14655,21932,20204,30724,16544,94170,27201,16551,97784,14753,45532,70552,17099,15183,65096,87325,29305,31308,27370,94643,6603,99366,53073,29108,82751,74951,65496,77358],()=>e(e.s=40026)),_N_E=e.O()}]);
|