@chorus-aidlc/chorus 0.12.0 → 0.13.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 +440 -392
- package/.next/standalone/.next/app-path-routes-manifest.json +45 -43
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +48 -48
- package/.next/standalone/.next/react-loadable-manifest.json +33 -27
- package/.next/standalone/.next/routes-manifest.json +16 -0
- 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 +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -0
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +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 +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new.html +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies.html +1 -1
- package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin.html +1 -1
- package/.next/standalone/.next/server/app/admin.rsc +2 -2
- package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-connections/route_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_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/refresh/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/session/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_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/execution-state/route_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route.js +6 -4
- 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 +7 -5
- 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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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/keepalive/route_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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/projects/[uuid]/activity/route_client-reference-manifest.js +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_client-reference-manifest.js +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 -0
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -0
- 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_client-reference-manifest.js +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/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/search/route_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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 +1 -1
- package/.next/standalone/.next/server/app/index.rsc +3 -3
- package/.next/standalone/.next/server/app/login/admin/page.js +2 -2
- package/.next/standalone/.next/server/app/login/admin/page.js.nft.json +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 +1 -1
- package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
- package/.next/standalone/.next/server/app/login/callback/page.js +2 -2
- package/.next/standalone/.next/server/app/login/callback/page.js.nft.json +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 +1 -1
- package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
- package/.next/standalone/.next/server/app/login/page.js +2 -2
- package/.next/standalone/.next/server/app/login/page.js.nft.json +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 +1 -1
- package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
- package/.next/standalone/.next/server/app/login/silent-refresh/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/silent-refresh.html +1 -1
- package/.next/standalone/.next/server/app/login/silent-refresh.rsc +2 -2
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +3 -3
- 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 +1 -1
- package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
- package/.next/standalone/.next/server/app/page.js +2 -2
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects.html +1 -1
- package/.next/standalone/.next/server/app/projects.rsc +4 -4
- package/.next/standalone/.next/server/app/settings.html +1 -1
- package/.next/standalone/.next/server/app/settings.rsc +4 -4
- package/.next/standalone/.next/server/app-paths-manifest.json +45 -43
- package/.next/standalone/.next/server/chunks/1113.js +2 -2
- package/.next/standalone/.next/server/chunks/1337.js +1 -1
- package/.next/standalone/.next/server/chunks/1463.js +1 -1
- package/.next/standalone/.next/server/chunks/1559.js +13 -0
- package/.next/standalone/.next/server/chunks/178.js +31 -0
- package/.next/standalone/.next/server/chunks/2315.js +1 -1
- package/.next/standalone/.next/server/chunks/2364.js +2 -2
- package/.next/standalone/.next/server/chunks/2631.js +2 -2
- package/.next/standalone/.next/server/chunks/282.js +1 -1
- package/.next/standalone/.next/server/chunks/2961.js +1 -1
- package/.next/standalone/.next/server/chunks/298.js +1 -0
- package/.next/standalone/.next/server/chunks/3197.js +3 -0
- package/.next/standalone/.next/server/chunks/3217.js +1 -1
- package/.next/standalone/.next/server/chunks/3219.js +1 -1
- package/.next/standalone/.next/server/chunks/3373.js +1 -0
- package/.next/standalone/.next/server/chunks/3680.js +1 -1
- package/.next/standalone/.next/server/chunks/4157.js +1 -1
- package/.next/standalone/.next/server/chunks/4193.js +1 -1
- package/.next/standalone/.next/server/chunks/4375.js +2 -2
- package/.next/standalone/.next/server/chunks/4615.js +1 -1
- package/.next/standalone/.next/server/chunks/5011.js +1 -0
- package/.next/standalone/.next/server/chunks/5090.js +1 -1
- package/.next/standalone/.next/server/chunks/5217.js +1 -1
- package/.next/standalone/.next/server/chunks/5319.js +1 -1
- package/.next/standalone/.next/server/chunks/5453.js +1 -1
- package/.next/standalone/.next/server/chunks/5511.js +1 -1
- package/.next/standalone/.next/server/chunks/5957.js +1 -0
- 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/679.js +1 -0
- package/.next/standalone/.next/server/chunks/6813.js +1 -0
- package/.next/standalone/.next/server/chunks/7160.js +1 -1
- package/.next/standalone/.next/server/chunks/7217.js +1 -1
- package/.next/standalone/.next/server/chunks/7368.js +1 -1
- package/.next/standalone/.next/server/chunks/7421.js +1 -0
- package/.next/standalone/.next/server/chunks/7515.js +1 -1
- package/.next/standalone/.next/server/chunks/7912.js +1 -0
- package/.next/standalone/.next/server/chunks/796.js +6 -6
- package/.next/standalone/.next/server/chunks/8431.js +1 -1
- package/.next/standalone/.next/server/chunks/8812.js +1 -1
- package/.next/standalone/.next/server/chunks/8821.js +1 -0
- package/.next/standalone/.next/server/chunks/903.js +1 -1
- package/.next/standalone/.next/server/chunks/920.js +1 -1
- package/.next/standalone/.next/server/chunks/9273.js +1 -0
- package/.next/standalone/.next/server/chunks/937.js +1 -1
- package/.next/standalone/.next/server/chunks/9849.js +2 -2
- package/.next/standalone/.next/server/chunks/9855.js +6 -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/middleware-react-loadable-manifest.js +1 -1
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/pages-manifest.json +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/10919-7f63b2801a92b8c6.js +1 -0
- package/.next/standalone/.next/static/chunks/{16551-68896c0ca7966ebf.js → 16551-d129ae0de4a04d69.js} +5 -5
- package/.next/standalone/.next/static/chunks/1891-d4a9e756fefba3a9.js +1 -0
- package/.next/standalone/.next/static/chunks/22190.149dd0799cbcba06.js +1 -0
- package/.next/standalone/.next/static/chunks/{2351.35085ef2663aaa44.js → 2351.a2908f154b03857c.js} +1 -1
- package/.next/standalone/.next/static/chunks/{29047.664290ff8a84b205.js → 29047.65b677c7f3e6459f.js} +1 -1
- package/.next/standalone/.next/static/chunks/2987-c15f09093b821b24.js +1 -0
- package/.next/standalone/.next/static/chunks/{30682.c8fc49d63bf75772.js → 30682.b12a9bef588e7b03.js} +1 -1
- package/.next/standalone/.next/static/chunks/31467.9f8adfa602f97fcf.js +115 -0
- package/.next/standalone/.next/static/chunks/{33665.20ed9144405f8b21.js → 33665.804ece4d6c6e4eca.js} +3 -3
- package/.next/standalone/.next/static/chunks/34520.1a6c6a7c421b0ff3.js +1 -0
- package/.next/standalone/.next/static/chunks/36493-5326c14a7240edc8.js +1 -0
- package/.next/standalone/.next/static/chunks/43741-aeea04ab873ac4e9.js +1 -0
- package/.next/standalone/.next/static/chunks/{47066.7848777fc81f5714.js → 47066.214cf62dd898ea16.js} +1 -1
- package/.next/standalone/.next/static/chunks/4860.c3c83713d1f163a5.js +1 -0
- package/.next/standalone/.next/static/chunks/48782.4ca261e8e23a8983.js +24 -0
- package/.next/standalone/.next/static/chunks/49852-5337f139a2f87c46.js +1 -0
- package/.next/standalone/.next/static/chunks/49965-fa11628d5ac8fbbe.js +1 -0
- package/.next/standalone/.next/static/chunks/56812-a6fe5225adc0b2ff.js +1 -0
- package/.next/standalone/.next/static/chunks/58699.364d357d33fcb52f.js +80 -0
- package/.next/standalone/.next/static/chunks/61963.fd130ba09dd25e2e.js +23 -0
- package/.next/standalone/.next/static/chunks/64894-71b047ae8ef2f3d8.js +1 -0
- package/.next/standalone/.next/static/chunks/65317.ab0c5ecb4164b291.js +148 -0
- package/.next/standalone/.next/static/chunks/{69477.4b854e377a3860cc.js → 69477.5b79cd575f93298f.js} +1 -1
- package/.next/standalone/.next/static/chunks/{69763.37d07a3035805bc7.js → 69763.003df47b4ee38644.js} +1 -1
- package/.next/standalone/.next/static/chunks/7317.8e3ce1ce083425d8.js +5 -0
- package/.next/standalone/.next/static/chunks/73506.b9c053e2335b6084.js +1 -0
- package/.next/standalone/.next/static/chunks/78966.075119c3a72135ed.js +1 -0
- package/.next/standalone/.next/static/chunks/79806.21f1d23ca273000d.js +4 -0
- package/.next/standalone/.next/static/chunks/85947.c813bf8bc6e1d675.js +90 -0
- package/.next/standalone/.next/static/chunks/8796-69e708cb8603d8b4.js +1 -0
- package/.next/standalone/.next/static/chunks/91666-3fd4f3512a53ff20.js +1 -0
- package/.next/standalone/.next/static/chunks/91709.ed3bfd285c518df1.js +287 -0
- package/.next/standalone/.next/static/chunks/94400.0d371a4d306a614b.js +1 -0
- package/.next/standalone/.next/static/chunks/96028.cdbf36dca753e70f.js +215 -0
- package/.next/standalone/.next/static/chunks/{96132.3bac072bb2743fb5.js → 96132.ab9b9433c7b2fa1c.js} +1 -1
- package/.next/standalone/.next/static/chunks/97263-018d631416efa5cd.js +1 -0
- package/.next/standalone/.next/static/chunks/97868-55f18a05fe483d85.js +1 -0
- package/.next/standalone/.next/static/chunks/99373.2b68fce200cc323e.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-6061b60d52262d3c.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-78ab05c72bcd04fd.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/{page-f1b0daea9f947caf.js → page-31ae6abada6e6a64.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-478cce81afbfc145.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-494b80e61b485870.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/{page-6620b9d7a2cc766f.js → page-7ebb779f0db4c58b.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-bfbfc5005de2be13.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-fbb4dd4124525f97.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-164fe175720b24a1.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-2742c745a90f843f.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-d5c3dde34d6291a8.js → page-f2313bf05387b39b.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-0da08d8b425acb6a.js → page-955e8fd8d7b0b7c8.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-fec019d974ef8d4e.js → page-0bc22273214e522f.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/{page-44014947a679f91c.js → page-960ab78b5055780c.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/{route-f1b0daea9f947caf.js → route-31ae6abada6e6a64.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/companies/{route-f1b0daea9f947caf.js → route-31ae6abada6e6a64.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/login/{route-f1b0daea9f947caf.js → route-31ae6abada6e6a64.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/session/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/agents/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/api-keys/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/me/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/refresh/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/session/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/comments/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/events/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/health/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/keepalive/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/mcp/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/mentionables/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/project-groups/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/projects/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/search/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-31ae6abada6e6a64.js +1 -0
- package/.next/standalone/.next/static/chunks/app/login/page-d2513f477211dd6f.js +1 -0
- package/.next/standalone/.next/static/chunks/app/onboarding/{page-9a41067d4c5d29d7.js → page-500aded75bf11ed6.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/page-075afd218994d377.js +1 -0
- package/.next/standalone/.next/static/chunks/{f57f1d5e.71d2022a2e2d95ba.js → f57f1d5e.c345ce68aa5052a7.js} +1 -1
- package/.next/standalone/.next/static/chunks/{fcc64ffe-de8d357e657bd162.js → fcc64ffe-2c36a6b45f81782c.js} +3 -3
- package/.next/standalone/.next/static/chunks/webpack-7483083a976ed3d7.js +1 -0
- package/.next/standalone/.next/static/css/ed6baccd62b81c4e.css +1 -0
- package/.next/standalone/package.json +3 -1
- package/README.md +10 -2
- package/README.zh.md +10 -2
- package/chorus.mjs +118 -34
- package/cli/client-args.mjs +1 -1
- package/cli/codex-session-map.mjs +117 -0
- package/cli/codex-spawner.mjs +312 -0
- package/cli/daemon-agent.mjs +32 -6
- package/cli/daemon-banner.mjs +43 -5
- package/cli/daemon.mjs +133 -14
- package/cli/embedded-db.mjs +234 -0
- package/cli/login.mjs +77 -34
- package/cli/spawner-select.mjs +30 -0
- package/cli/sse-listener.mjs +29 -1
- package/cli/upload-hooks.mjs +73 -8
- package/package.json +3 -1
- package/.next/standalone/.next/server/chunks/1596.js +0 -13
- package/.next/standalone/.next/server/chunks/2622.js +0 -1
- package/.next/standalone/.next/server/chunks/3371.js +0 -1
- package/.next/standalone/.next/server/chunks/345.js +0 -1
- package/.next/standalone/.next/server/chunks/4872.js +0 -1
- package/.next/standalone/.next/server/chunks/4958.js +0 -1
- package/.next/standalone/.next/server/chunks/5581.js +0 -1
- package/.next/standalone/.next/server/chunks/6096.js +0 -3
- package/.next/standalone/.next/server/chunks/7063.js +0 -6
- package/.next/standalone/.next/server/chunks/7427.js +0 -1
- package/.next/standalone/.next/server/chunks/7897.js +0 -1
- package/.next/standalone/.next/server/chunks/8245.js +0 -31
- package/.next/standalone/.next/server/chunks/9161.js +0 -1
- package/.next/standalone/.next/static/chunks/22190.ee4e8f3ac0189d87.js +0 -1
- package/.next/standalone/.next/static/chunks/2280-f48bf99ea9d88ece.js +0 -1
- package/.next/standalone/.next/static/chunks/31467.2013df596c751e6e.js +0 -115
- package/.next/standalone/.next/static/chunks/32497-886aa4d3d7bf4967.js +0 -1
- package/.next/standalone/.next/static/chunks/34520.34ba1239c9b5a275.js +0 -1
- package/.next/standalone/.next/static/chunks/40867-04cc0d00205eaf9b.js +0 -1
- package/.next/standalone/.next/static/chunks/42111-1935df3b0dab2095.js +0 -1
- package/.next/standalone/.next/static/chunks/4860.f4242c493fcf182d.js +0 -1
- package/.next/standalone/.next/static/chunks/48782.5b60e8a0f22f6da1.js +0 -24
- package/.next/standalone/.next/static/chunks/54637-71d281d649ea3a17.js +0 -1
- package/.next/standalone/.next/static/chunks/58245-b2ea112ace9624d2.js +0 -1
- package/.next/standalone/.next/static/chunks/58699.fa3b8ce67889f23b.js +0 -80
- package/.next/standalone/.next/static/chunks/61963.18e80afc0dac41e3.js +0 -23
- package/.next/standalone/.next/static/chunks/6239-d78e6f830ce0a7f8.js +0 -1
- package/.next/standalone/.next/static/chunks/65317.7179d4bc41c8075a.js +0 -148
- package/.next/standalone/.next/static/chunks/7317.1a06bc56028637f6.js +0 -5
- package/.next/standalone/.next/static/chunks/73506.7423a313220e1769.js +0 -1
- package/.next/standalone/.next/static/chunks/78917-2b959ab0a7f610b4.js +0 -1
- package/.next/standalone/.next/static/chunks/79806.d210b93e41d4d7ff.js +0 -4
- package/.next/standalone/.next/static/chunks/85947.cf4ac5dd618283ee.js +0 -90
- package/.next/standalone/.next/static/chunks/88561-0b14e1564419f215.js +0 -1
- package/.next/standalone/.next/static/chunks/89035-faf398b7bbc7d2ed.js +0 -1
- package/.next/standalone/.next/static/chunks/91709.f7c8eff0c3692bd6.js +0 -287
- package/.next/standalone/.next/static/chunks/94400.30696ed643217da2.js +0 -1
- package/.next/standalone/.next/static/chunks/96028.427c0bd44fa35314.js +0 -215
- package/.next/standalone/.next/static/chunks/97868-9406a4014b667c2d.js +0 -1
- package/.next/standalone/.next/static/chunks/99373.880b43de1fa6411f.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-f04d5fa070f15acd.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-2944c6c9bc48a7d6.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-c4271886ef004611.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-7a8b60de97bfbd29.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-0a55289b2bc510c2.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-99639479cc98965f.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-5d09141beb5d6aee.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/admin/session/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/agents/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/api-keys/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/me/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/refresh/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/session/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/comments/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/events/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/health/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/keepalive/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/mcp/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/mentionables/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/project-groups/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/projects/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/search/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-f1b0daea9f947caf.js +0 -1
- package/.next/standalone/.next/static/chunks/app/login/page-e7493d55573a52f1.js +0 -1
- package/.next/standalone/.next/static/chunks/app/page-8b4baa950c78ffe7.js +0 -1
- package/.next/standalone/.next/static/chunks/webpack-1556cfd11f7e90d1.js +0 -1
- package/.next/standalone/.next/static/css/6e8fd46b062fd4fc.css +0 -1
- /package/.next/standalone/.next/static/{v1yRpXkt1wNBkZMTE3tiz → W3KEB0tOAICVtfAUfR_M9}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{v1yRpXkt1wNBkZMTE3tiz → W3KEB0tOAICVtfAUfR_M9}/_ssgManifest.js +0 -0
package/cli/sse-listener.mjs
CHANGED
|
@@ -69,6 +69,13 @@ const PROCESS_STARTED_AT = new Date();
|
|
|
69
69
|
* wake: the control event is forked here BEFORE `onEvent`, so the router / WakeQueue
|
|
70
70
|
* never sees it and it can never spawn a new Claude. The handler verifies the target
|
|
71
71
|
* connection + entity and interrupts the running subprocess (see control-handler.mjs).
|
|
72
|
+
* @property {(event: Record<string, unknown>) => void} [onConflict] Called for a
|
|
73
|
+
* `type:"connection_conflict"` data event (add-daemon-connection-conflict-skip): the
|
|
74
|
+
* server refused to register THIS cwd because a live different-process daemon already
|
|
75
|
+
* holds the same (agent, host, cwd). Like `control`, it is forked BEFORE `onEvent` so
|
|
76
|
+
* it can NEVER reach the router / WakeQueue — a conflict is not a wake. The daemon's
|
|
77
|
+
* handler warns and permanently tears down this cwd's listener (it does not reconnect).
|
|
78
|
+
* The event carries `{ host, cwd }` of the conflicting identity.
|
|
72
79
|
* @property {() => Promise<void>} [onReconnect] Called after a reconnect so the
|
|
73
80
|
* caller can back-fill notifications missed during the gap.
|
|
74
81
|
* @property {string} [cwd] The working directory THIS connection serves (T3 — 单
|
|
@@ -91,6 +98,7 @@ export class SseListener {
|
|
|
91
98
|
this.onEvent = opts.onEvent;
|
|
92
99
|
this.onConnectionId = opts.onConnectionId ?? (() => {});
|
|
93
100
|
this.onControl = opts.onControl ?? (() => {});
|
|
101
|
+
this.onConflict = opts.onConflict ?? (() => {});
|
|
94
102
|
this.onReconnect = opts.onReconnect ?? (async () => {});
|
|
95
103
|
/** @type {string|null} The connection this stream registered as (once reported). */
|
|
96
104
|
this.connectionUuid = null;
|
|
@@ -108,8 +116,14 @@ export class SseListener {
|
|
|
108
116
|
// cwd is supplied the daemon is single-path: report the process cwd (the directory
|
|
109
117
|
// it was launched from), identical to today / an old daemon (HARD-1).
|
|
110
118
|
this.cwd = opts.cwd ?? process.cwd();
|
|
119
|
+
// The daemon backend driving this connection (daemon-agent-selection): the
|
|
120
|
+
// server registers the row's `clientType` from this self-report, so a
|
|
121
|
+
// `--agent codex` daemon shows as `codex` instead of mislabelling itself
|
|
122
|
+
// `claude_code`. Defaults to claude_code (the default backend / an old
|
|
123
|
+
// single-backend daemon that never sets it).
|
|
124
|
+
this.clientType = opts.clientType ?? "claude_code";
|
|
111
125
|
const params = new URLSearchParams({
|
|
112
|
-
clientType:
|
|
126
|
+
clientType: this.clientType,
|
|
113
127
|
clientVersion: CLI_VERSION,
|
|
114
128
|
host: hostname(),
|
|
115
129
|
cwd: this.cwd,
|
|
@@ -255,6 +269,20 @@ export class SseListener {
|
|
|
255
269
|
}
|
|
256
270
|
continue;
|
|
257
271
|
}
|
|
272
|
+
// Connection conflict (add-daemon-connection-conflict-skip): the server refused
|
|
273
|
+
// to register THIS cwd because a live different-process daemon already holds the
|
|
274
|
+
// same (agent, host, cwd). Like `control`, fork it to onConflict and `continue`
|
|
275
|
+
// — it MUST NEVER fall through to onEvent (the router / WakeQueue), or a conflict
|
|
276
|
+
// would be mistaken for a wake and could spawn a subprocess. A conflict is not a
|
|
277
|
+
// wake; the daemon's handler warns and tears down this cwd's listener.
|
|
278
|
+
if (event && event.type === "connection_conflict") {
|
|
279
|
+
try {
|
|
280
|
+
this.onConflict(event);
|
|
281
|
+
} catch (err) {
|
|
282
|
+
this.logger.warn(`[Chorus] onConflict callback error: ${err}`);
|
|
283
|
+
}
|
|
284
|
+
continue;
|
|
285
|
+
}
|
|
258
286
|
this.onEvent(event);
|
|
259
287
|
}
|
|
260
288
|
}
|
package/cli/upload-hooks.mjs
CHANGED
|
@@ -145,24 +145,84 @@ export function mergeUploadHooks(...args) {
|
|
|
145
145
|
// top-level type — otherwise a tool-result-only user message would leak. The server
|
|
146
146
|
// ingest stores ONLY `user`/`assistant` text (see /api/daemon/transcript), so this
|
|
147
147
|
// filter mirrors exactly what the server will persist.
|
|
148
|
+
//
|
|
149
|
+
// Harness-injected synthetic content: when the model loads a skill, the skill's full
|
|
150
|
+
// markdown body is delivered as a SYNTHETIC user turn. On the live stream-json stdout
|
|
151
|
+
// (verified against Claude Code CLI 2.1.195 by capturing real `claude -p
|
|
152
|
+
// --output-format stream-json --verbose` output) that envelope is
|
|
153
|
+
// `{ type:"user", isSynthetic:true, message:{ content:[{type:"text", text:"Base
|
|
154
|
+
// directory for this skill: …"}] } }`. Because it's a plain `text` block, the
|
|
155
|
+
// block-level filter alone would KEEP it and leak the whole skill body to Chorus, so
|
|
156
|
+
// we drop `type:"user"` envelopes flagged `isSynthetic:true` outright. ⚠️ FIELD NAME:
|
|
157
|
+
// the live stream marks this `isSynthetic`; the on-disk transcript JSONL
|
|
158
|
+
// (~/.claude/projects/.../*.jsonl, which the daemon does NOT read) marks the SAME
|
|
159
|
+
// message `isMeta` — keying on `isMeta` here would be a silent no-op. Genuine human
|
|
160
|
+
// instructions and the agent's own replies never carry `isSynthetic`, so this is a
|
|
161
|
+
// purely structural match (no size/content heuristic) and cannot drop real content.
|
|
162
|
+
// MCP-server instructions, CLAUDE.md context, and the deferred-tool listing are folded
|
|
163
|
+
// into the dropped `type:"system"` init envelope and never reach this filter. Scope is
|
|
164
|
+
// the Claude Code dialect only — the codex (`item.completed`) path is unaffected.
|
|
148
165
|
|
|
149
166
|
/** Top-level stream-json envelope types that carry a conversation message. */
|
|
150
167
|
const CONVERSATION_TYPES = new Set(["user", "assistant"]);
|
|
151
168
|
|
|
152
169
|
/**
|
|
153
|
-
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
*
|
|
157
|
-
*
|
|
170
|
+
* Remove `<system-reminder>…</system-reminder>` spans from a retained text block
|
|
171
|
+
* (defense-in-depth for harness-injected reminders that ride inside a kept text
|
|
172
|
+
* block). Structural tag match — not a size/content heuristic. Non-reminder text is
|
|
173
|
+
* left untouched; a message that is only a reminder collapses to empty and is then
|
|
174
|
+
* dropped by the caller's emptiness check.
|
|
175
|
+
* @param {string} s
|
|
176
|
+
* @returns {string}
|
|
177
|
+
*/
|
|
178
|
+
function stripSystemReminders(s) {
|
|
179
|
+
return s.replace(/<system-reminder>[\s\S]*?<\/system-reminder>/g, "");
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Extract the plain user/assistant TEXT from one stream object emitted by EITHER
|
|
184
|
+
* backend's headless stream, dropping everything that is not a conversation text
|
|
185
|
+
* block. Returns null when the object is not a keepable conversation message (so
|
|
186
|
+
* the caller can skip it). Never throws — a shape it doesn't recognize yields null
|
|
187
|
+
* rather than an error (defensive against CLI drift).
|
|
188
|
+
*
|
|
189
|
+
* Two stream dialects are recognized (their top-level shapes are disjoint, so no
|
|
190
|
+
* backend flag is needed):
|
|
191
|
+
* - Claude Code stream-json: `{ type: "user"|"assistant", message: { content … } }`.
|
|
192
|
+
* - codex `codex exec --json`: conversation/tool output rides on `item.completed`
|
|
193
|
+
* events discriminated by `item.type`; assistant text is an `agent_message`
|
|
194
|
+
* item with a top-level `item.text` (verified against codex-cli 0.142.3). codex
|
|
195
|
+
* does NOT echo the user prompt (the chat UI renders that from the turn's
|
|
196
|
+
* promptText), and `reasoning` / `command_execution` / lifecycle envelopes are
|
|
197
|
+
* not conversation text — all dropped.
|
|
158
198
|
*
|
|
159
|
-
* @param {any} obj One parsed stream
|
|
199
|
+
* @param {any} obj One parsed stream NDJSON object.
|
|
160
200
|
* @returns {{ role: "user"|"assistant", text: string } | null}
|
|
161
201
|
*/
|
|
162
202
|
export function extractTranscriptText(obj) {
|
|
163
203
|
if (!obj || typeof obj !== "object") return null;
|
|
204
|
+
|
|
205
|
+
// ── codex `codex exec --json` dialect ──
|
|
206
|
+
// Only `item.completed` carries finished output; an `agent_message` item is the
|
|
207
|
+
// assistant's conversation text. Everything else (reasoning, command_execution,
|
|
208
|
+
// file_change, thread.started/turn.* lifecycle) is not user/assistant text.
|
|
209
|
+
if (obj.type === "item.completed") {
|
|
210
|
+
const item = obj.item;
|
|
211
|
+
if (!item || typeof item !== "object" || item.type !== "agent_message") return null;
|
|
212
|
+
const itemText = typeof item.text === "string" ? item.text : "";
|
|
213
|
+
if (!itemText.trim()) return null;
|
|
214
|
+
return { role: "assistant", text: itemText };
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
// ── Claude Code stream-json dialect ──
|
|
164
218
|
if (!CONVERSATION_TYPES.has(obj.type)) return null;
|
|
165
219
|
|
|
220
|
+
// Drop harness-injected synthetic content (e.g. a loaded skill body). Claude Code
|
|
221
|
+
// marks these user turns `isSynthetic:true` on the live stream (NOT the on-disk
|
|
222
|
+
// `isMeta` field). Gated on `type:"user"` so a synthetic *assistant* envelope, if one
|
|
223
|
+
// ever appears, is still treated as real assistant text. Structural match only.
|
|
224
|
+
if (obj.type === "user" && obj.isSynthetic === true) return null;
|
|
225
|
+
|
|
166
226
|
const message = obj.message;
|
|
167
227
|
if (!message || typeof message !== "object") return null;
|
|
168
228
|
// The persisted role is the message's role; fall back to the envelope type (they
|
|
@@ -190,8 +250,13 @@ export function extractTranscriptText(obj) {
|
|
|
190
250
|
return null;
|
|
191
251
|
}
|
|
192
252
|
|
|
193
|
-
//
|
|
194
|
-
//
|
|
253
|
+
// Strip any wrapped <system-reminder> spans (defense-in-depth) before deciding
|
|
254
|
+
// emptiness, so a reminder-only message collapses to nothing and is dropped.
|
|
255
|
+
text = stripSystemReminders(text);
|
|
256
|
+
|
|
257
|
+
// A message with no text (e.g. a user message that was purely a tool_result, an
|
|
258
|
+
// assistant message that was purely tool_use/thinking, or text that was only a
|
|
259
|
+
// system-reminder) is dropped — nothing to store.
|
|
195
260
|
if (!text.trim()) return null;
|
|
196
261
|
return { role, text };
|
|
197
262
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chorus-aidlc/chorus",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "The Agent Harness for AI-Human Collaboration — session lifecycle, task state, sub-agent orchestration, observability, and failure recovery",
|
|
5
5
|
"homepage": "https://github.com/Chorus-AIDLC/Chorus",
|
|
6
6
|
"repository": {
|
|
@@ -92,6 +92,7 @@
|
|
|
92
92
|
"class-variance-authority": "^0.7.1",
|
|
93
93
|
"clsx": "^2.1.1",
|
|
94
94
|
"cmdk": "^1.1.1",
|
|
95
|
+
"d3-hierarchy": "^3.1.2",
|
|
95
96
|
"dagre": "^0.8.5",
|
|
96
97
|
"dotenv": "^16.4.7",
|
|
97
98
|
"framer-motion": "^12.38.0",
|
|
@@ -129,6 +130,7 @@
|
|
|
129
130
|
"@testing-library/react": "^16.3.2",
|
|
130
131
|
"@testing-library/user-event": "^14.6.1",
|
|
131
132
|
"@types/bcryptjs": "^2.4.6",
|
|
133
|
+
"@types/d3-hierarchy": "^3.1.7",
|
|
132
134
|
"@types/dagre": "^0.7.53",
|
|
133
135
|
"@types/mdast": "^4.0.4",
|
|
134
136
|
"@types/node": "^22",
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=1596,exports.ids=[1596],exports.modules={292:(a,b,c)=>{c.d(b,{s:()=>e});var d=c(42377);let e=(0,d.createServerReference)("701c7d60af1f38c31dd99ce4c4ddeba40a4e1458ac",d.callServer,void 0,d.findSourceMapURL,"createCommentAction")},10174:(a,b,c)=>{function d(a){if(!a)return{pinnedHost:null,pinnedCwd:null};let b=new URLSearchParams(a),c=b.has("cwd"),d=b.has("host");if(!c&&!d)return{pinnedHost:null,pinnedCwd:null};let e=b.get("cwd")??"",f=b.get("host");return{pinnedCwd:c&&""!==e?e:null,pinnedHost:d?f??"":null}}function e(a,b,c,d,e){return`@[${a}](${b}:${c}${function(a,b){if(null==a&&null==b)return"";let c=a=>encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"),d=[];return d.push(`cwd=${null==b?"":c(b)}`),null!=a&&d.push(`host=${c(a)}`),`?${d.join("&")}`}(d,e)})`}c.d(b,{$v:()=>e,vE:()=>d})},16164:(a,b,c)=>{c.d(b,{d:()=>e});var d=c(42377);let e=(0,d.createServerReference)("70aaecb121fe1371b6e5075f5954cea3ffaab203bb",d.callServer,void 0,d.findSourceMapURL,"getCommentsAction")},24433:(a,b,c)=>{c.d(b,{c5:()=>v});var d=c(10837),e=c(21968),f=c(87864),g=c(45150),h=c(49101),i=c(9222),j=c(96307),k=c(54722),l=c(42087),m=c(10174),n=c(23871),o=c(11568),p=c(42424);let q=h.A.extend({addAttributes(){return{...this.parent?.(),mentionType:{default:"user",parseHTML:a=>a.getAttribute("data-mention-type")||"user",renderHTML:a=>({"data-mention-type":a.mentionType||"user"})},pinnedHost:{default:null,parseHTML:a=>a.getAttribute("data-pinned-host"),renderHTML:a=>null==a.pinnedHost?{}:{"data-pinned-host":String(a.pinnedHost)}},pinnedCwd:{default:null,parseHTML:a=>a.getAttribute("data-pinned-cwd"),renderHTML:a=>null==a.pinnedCwd?{}:{"data-pinned-cwd":String(a.pinnedCwd)}}}}});function r(a){let b=a.getJSON();return b.content?b.content.map(a=>(function a(b){if("mention"===b.type){let a=b.attrs;return a?(0,m.$v)(a.label||a.id,a.mentionType||"user",a.id,a.pinnedHost??null,a.pinnedCwd??null):""}if("text"===b.type)return b.text||"";if("hardBreak"===b.type)return"\n";let c=b.content;return c?c.map(a).join(""):""})(a)).join("\n"):""}function s(a){if(!a)return{type:"doc",content:[{type:"paragraph"}]};let b=/@\[([^\]]+)\]\((user|agent):([a-f0-9-]+)(?:\?([^)]*))?\)/g;return{type:"doc",content:a.split("\n").map(a=>{let c,d=[],e=0,f=RegExp(b.source,"g");for(;null!==(c=f.exec(a));){c.index>e&&d.push({type:"text",text:a.slice(e,c.index)});let{pinnedHost:b,pinnedCwd:f}=(0,m.vE)(c[4]);d.push({type:"mention",attrs:{id:c[3],label:c[1],mentionType:c[2],pinnedHost:b,pinnedCwd:f}}),e=c.index+c[0].length}return e<a.length&&d.push({type:"text",text:a.slice(e)}),{type:"paragraph",content:d.length>0?d:void 0}})}}function t(a,b,c,d,e,f,g){if(e.innerHTML="",b){let a=document.createElement("div");a.className="flex items-center justify-center py-3 px-4",a.innerHTML='<div class="h-4 w-4 animate-spin rounded-full border-2 border-[#9A9A9A] border-t-transparent"></div>',e.appendChild(a);return}if(0===a.length){let a=document.createElement("div");a.className="py-2 px-3 text-xs text-[#9A9A9A]",a.textContent="No results",e.appendChild(a);return}let h=document.createElement("div");h.className="py-1";let i=0,j=a=>{if(g)return void g(a,c);c({id:a.uuid,label:a.name,mentionType:a.type})},k=()=>{h.innerHTML="",a.forEach((a,b)=>{let c=document.createElement("button");c.type="button",c.className=`flex w-full items-center gap-2.5 px-3 py-1.5 text-left text-sm transition-colors ${b===i?"bg-[#FAF8F4] text-[#2C2C2C]":"text-[#6B6B6B] hover:bg-[#FAF8F4]"}`,c.onclick=()=>j(a);let d=document.createElement("div");d.className="relative shrink-0";let e=document.createElement("div");if(e.className=`flex h-6 w-6 items-center justify-center rounded-full ${"agent"===a.type?"bg-[#C67A52] text-white":"bg-[#E5E0D8] text-[#6B6B6B]"}`,e.innerHTML="agent"===a.type?'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 8V4H8"/><rect width="16" height="12" x="4" y="8" rx="2"/><path d="M2 14h2"/><path d="M20 14h2"/><path d="M15 13v2"/><path d="M9 13v2"/></svg>':'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',d.appendChild(e),"agent"===a.type&&a.online){let a=document.createElement("span");a.className="absolute -bottom-0.5 -right-0.5 h-2 w-2 rounded-full bg-[#22C55E] ring-2 ring-white",a.title=f.online,d.appendChild(a)}let g=document.createElement("div");g.className="min-w-0 flex-1";let k=document.createElement("div");if(k.className="truncate text-xs font-medium",k.textContent=a.name,g.appendChild(k),a.email){let b=document.createElement("div");b.className="truncate text-[10px] text-[#9A9A9A]",b.textContent=a.email,g.appendChild(b)}if("agent"===a.type&&a.online){let b=a.activeCount??0,c=document.createElement("div");b>0?(c.className="mt-0.5 truncate text-[10px] font-medium text-[#15803D]",c.textContent=`▶ ${f.activeCount(b)}`):(c.className="mt-0.5 truncate text-[10px] text-[#9A9A9A]",c.textContent=f.idle),g.appendChild(c)}c.appendChild(d),c.appendChild(g),h.appendChild(c)})};k(),e.appendChild(h),d.current={onKeyDown:({event:b})=>!(0,l.P)(b)&&("ArrowUp"===b.key?(i=i<=0?a.length-1:i-1,k(),!0):"ArrowDown"===b.key?(i=i>=a.length-1?0:i+1,k(),!0):"Enter"===b.key?(a[i]&&j(a[i]),!0):"Escape"===b.key)}}function u({open:a,agentName:b,instances:c,onConfirm:f,onCancel:g}){let h=(0,i.c)("mentionInstance"),[j,k]=(0,e.useState)(null),l=new Set(c.map(a=>a.host)).size;return(0,d.jsx)(o.lG,{open:a,onOpenChange:a=>{a||g()},children:(0,d.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,d.jsxs)(o.c7,{className:"shrink-0",children:[(0,d.jsx)(o.L3,{children:h("title")}),(0,d.jsx)(o.rr,{children:h("subtitle",{name:b,count:c.length,hosts:l})})]}),(0,d.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",children:(0,d.jsx)(n.O,{instances:c,selectedConnectionUuid:j?.connectionUuid??null,onSelect:k,ariaLabel:h("title")})}),(0,d.jsxs)(o.Es,{className:"shrink-0",children:[(0,d.jsx)(p.$,{variant:"ghost",onClick:g,children:h("cancel")}),(0,d.jsx)(p.$,{disabled:!j,onClick:()=>{j&&f(j)},children:h("confirm")})]})]})})}let v=(0,e.forwardRef)(({value:a,onChange:b,placeholder:c,className:h,disabled:m,onSubmit:n},o)=>{let p=(0,e.useRef)([]),v=(0,e.useRef)(!1),w=(0,e.useRef)(null),x=(0,e.useRef)(null),y=(0,e.useRef)(null),z=(0,e.useRef)(null),[,A]=(0,e.useState)(0),B=(0,e.useRef)(!1),C=(0,i.c)("mention"),D=(0,e.useRef)({online:"",offline:"",idle:"",activeCount:()=>""});D.current={online:C("online"),offline:C("offline"),idle:C("idle"),activeCount:a=>C("activeCount",{count:a})};let E=function(a,b){let c=(0,e.useRef)(null),d=(0,e.useRef)(a);return d.current=a,(0,e.useCallback)(a=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>d.current(a),250)},[250])}((0,e.useCallback)(async a=>{v.current=!0,A(a=>a+1);try{let b=await fetch(`/api/mentionables?q=${encodeURIComponent(a)}&limit=10&withInstances=1`);if(b.ok){let a=await b.json();a.success&&(p.current=a.data)}}catch{p.current=[]}finally{v.current=!1,A(a=>a+1)}},[]),250),[F,G]=(0,e.useState)(null),H=(0,e.useCallback)((a,b,c)=>{b({id:a.uuid,label:a.name,mentionType:a.type,pinnedHost:c?c.host:null,pinnedCwd:c?c.cwd:null})},[]),I=(0,e.useRef)(()=>{});I.current=(a,b)=>{let c="agent"===a.type?(a.instances??[]).filter(a=>"online"===a.effectiveStatus):[];return c.length>=2?void G({item:a,onlineInstances:c,command:b}):1===c.length?void H(a,b,c[0]):void H(a,b)};let J=(0,e.useCallback)((a,b)=>I.current(a,b),[]);(0,e.useEffect)(()=>{y.current&&z.current&&t(p.current,v.current,z.current,w,y.current,D.current,J)});let K=(0,f.hG)({immediatelyRender:!1,extensions:[g.A.configure({heading:!1,blockquote:!1,codeBlock:!1,bulletList:!1,orderedList:!1,listItem:!1,horizontalRule:!1}),q.configure({HTMLAttributes:{class:"text-blue-600 font-medium"},renderText:({node:a})=>`@${a.attrs.label??a.attrs.id}`,suggestion:{char:"@",allowSpaces:!0,items:({query:a})=>(E(a),p.current),render:()=>({onStart:a=>{let b=document.createElement("div");if(b.className="z-[100] rounded-md border border-[#E5E0D8] bg-white shadow-md min-w-[200px] max-w-[300px] overflow-hidden",y.current=b,z.current=a.command,a.clientRect){let c="function"==typeof a.clientRect?a.clientRect():a.clientRect;c&&(b.style.position="fixed",b.style.left=`${c.left}px`,window.innerHeight-c.bottom<220?b.style.bottom=`${window.innerHeight-c.top+4}px`:b.style.top=`${c.bottom+4}px`)}(x.current??document.body).appendChild(b),t(p.current,v.current,a.command,w,b,D.current,J)},onUpdate:a=>{if(z.current=a.command,y.current&&a.clientRect){let b="function"==typeof a.clientRect?a.clientRect():a.clientRect;b&&(y.current.style.left=`${b.left}px`,window.innerHeight-b.bottom<220?(y.current.style.top="",y.current.style.bottom=`${window.innerHeight-b.top+4}px`):(y.current.style.bottom="",y.current.style.top=`${b.bottom+4}px`))}y.current&&t(p.current,v.current,a.command,w,y.current,D.current,J)},onKeyDown:a=>!!w.current&&w.current.onKeyDown(a),onExit:()=>{y.current?.remove(),y.current=null,z.current=null,p.current=[],v.current=!1}})}})],content:s(a),editable:!m,editorProps:{attributes:{class:(0,j.cn)("min-h-[36px] max-h-[120px] overflow-y-auto px-3 py-2 text-sm outline-none","prose prose-sm max-w-none [&_p]:my-0"),"data-placeholder":c||""},handleKeyDown:(a,b)=>!(0,l.P)(b)&&"Enter"===b.key&&!b.shiftKey&&!y.current&&!!n&&(b.preventDefault(),n(),!0)},onUpdate:({editor:a})=>{B.current=!0,b(r(a))}});return(0,e.useEffect)(()=>{if(!K||B.current){B.current=!1;return}r(K)!==a&&K.commands.setContent(s(a))},[a,K]),(0,e.useEffect)(()=>{K&&K.setEditable(!m)},[m,K]),(0,e.useImperativeHandle)(o,()=>({focus:()=>K?.commands.focus(),clear:()=>{K?.commands.clearContent(),b("")}})),(0,d.jsxs)("div",{ref:x,className:(0,j.cn)("relative rounded-md border border-input bg-transparent shadow-xs transition-[color,box-shadow]","focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",m&&"cursor-not-allowed opacity-50",h),children:[(0,d.jsx)(f.$Z,{editor:K}),(0,d.jsx)(u,{open:null!==F,agentName:F?.item.name??"",instances:F?.onlineInstances??[],onConfirm:a=>{!function(a,b,c){c.close(),a&&c.defer(()=>{try{c.focusEditor(),c.insert(a,b)}catch(a){c.onError(a)}})}(F,a,{close:()=>G(null),insert:(a,b)=>H(a.item,a.command,b),defer:a=>requestAnimationFrame(a),focusEditor:()=>K?.commands.focus(),onError:a=>k.q.error("MentionEditor: cwd-pinned mention insert failed",a)})},onCancel:()=>G(null)}),(0,d.jsx)("style",{children:`
|
|
2
|
-
.tiptap p.is-editor-empty:first-child::before {
|
|
3
|
-
content: attr(data-placeholder);
|
|
4
|
-
color: #9A9A9A;
|
|
5
|
-
float: left;
|
|
6
|
-
height: 0;
|
|
7
|
-
pointer-events: none;
|
|
8
|
-
}
|
|
9
|
-
.tiptap .mention {
|
|
10
|
-
color: #2563eb;
|
|
11
|
-
font-weight: 500;
|
|
12
|
-
}
|
|
13
|
-
`})]})});v.displayName="MentionEditor"},56828:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$m:()=>C});var e=c(10837),f=c(21968),g=c(9222),h=c(97443),i=c(86460),j=c(24714),k=c(33091),l=c(16235),m=c(42424),n=c(80251),o=c(24433),p=c(16164),q=c(292),r=c(82831),s=c(68797),t=c(76172),u=c(22727),v=c(11573),w=c(76664),x=c(76549),y=a([r,s]);function z(a){return"agent"===a.type?(0,e.jsx)(s.Gm,{mention:a,displayName:a.displayName},a.index):(0,e.jsxs)("span",{className:"text-blue-600 font-medium",title:`${a.type}: ${a.uuid}`,children:["@",a.displayName]},a.index)}function A(a,b){let c=new Map;for(let b of a)c.set(b.uuid,b);for(let a of b)c.set(a.uuid,a);return[...c.values()].sort((a,b)=>a.createdAt!==b.createdAt?a.createdAt<b.createdAt?1:-1:a.uuid<b.uuid?1:-1)}async function B(a,b,c=5){let d=new Set(a.map(a=>a.uuid)),e=[],f=null,g=!1,h=0,i=!1,j=null,k=!1;for(let a=0;a<c;a++){let a=await b(f);if(!a)break;if(k=!0,h=a.total,e.push(...a.comments),i=a.hasMore,j=a.nextCursor,a.comments.some(a=>d.has(a.uuid))||!a.hasMore){g=!0;break}f=a.nextCursor}return k?g?{comments:A(a,e),total:h,contiguous:!0,resetOldestCursor:null,resetHasMore:!1}:{comments:A([],e),total:h,contiguous:!1,resetOldestCursor:j,resetHasMore:i}:null}function C({targetType:a,targetUuid:b,currentUserUuid:c,onCountChange:d,compact:l=!1}){let r=(0,g.c)(),[s,v]=(0,f.useState)(""),[w,y]=(0,f.useState)([]),[z,C]=(0,f.useState)(!0),[E,F]=(0,f.useState)(null),[G,H]=(0,f.useState)(!1),[I,J]=(0,f.useState)(!1),[K,L]=(0,f.useState)(null),[M,N]=(0,f.useState)(!1),[O,P]=(0,f.useState)(0),Q=(0,f.useRef)(null),R=(0,f.useRef)(null),S=(0,f.useRef)(w);S.current=w;let T=(0,f.useRef)(K);T.current=K;let U=(0,f.useRef)(M);U.current=M;let V=(0,f.useRef)(G);V.current=G;let W=(0,f.useRef)(z);W.current=z;let X=l?"h-6 w-6":"h-[30px] w-[30px]",Y=l?"gap-2":"gap-2.5",Z=l?"h-3 w-3":"h-[15px] w-[15px]",$=(0,f.useCallback)(async()=>{C(!0),F(null);let c=await (0,p.d)(a,b,{limit:10});c.success?(y(c.comments),L(c.nextCursor),N(c.hasMore),P(c.total)):F(c.error),C(!1)},[a,b]);(0,f.useCallback)(async()=>{if(V.current||W.current||!U.current||!T.current)return;H(!0);let c=await (0,p.d)(a,b,{cursor:T.current,limit:10});c.success&&(y(a=>A(a,c.comments)),L(c.nextCursor),N(c.hasMore),P(c.total)),H(!1)},[a,b]),(0,t.w0)(a,b,d=>{c&&d.actorUuid===c||B(S.current,async c=>{let d=await (0,p.d)(a,b,{cursor:c,limit:10});return d.success?d:null}).then(a=>{a&&(y(a.comments),P(a.total),a.contiguous||(L(a.resetOldestCursor),N(a.resetHasMore)))})});let _=async()=>{if(!s.trim()||I)return;J(!0);let c=await (0,q.s)(a,b,s);if(J(!1),c.success){let a=!S.current.some(a=>a.uuid===c.comment.uuid);y(a=>A(a,[c.comment])),a&&P(a=>a+1),v(""),Q.current?.clear()}else x.oR.error(c.error)};return(0,e.jsx)(u.D,{entityType:a,entityUuid:b,subEntityType:"comment",children:(0,e.jsxs)("div",{className:"flex flex-col gap-0",children:[(0,e.jsxs)("div",{className:`flex items-center ${Y} pb-3 border-b border-[#F0EDE8]`,children:[(0,e.jsx)(n.eu,{className:`${l?"h-6 w-6":"h-7 w-7"} shrink-0`,children:(0,e.jsx)(n.q5,{className:"bg-[#E5E0D8] text-[#6B6B6B]",children:(0,e.jsx)(h.A,{className:`${l?"h-3 w-3":"h-3.5 w-3.5"}`})})}),(0,e.jsx)("div",{className:"flex-1 min-w-0",children:(0,e.jsx)(o.c5,{ref:Q,value:s,onChange:v,onSubmit:_,placeholder:r("comments.addComment"),className:"border border-[#E5E0D8] bg-white text-sm rounded-lg",disabled:I})}),(0,e.jsx)(m.$,{size:"sm",className:"shrink-0 gap-1 bg-[#E07A5F] text-white hover:bg-[#D06A4F]",disabled:!s.trim()||I,onClick:_,children:I?(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"})})]}),z?(0,e.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):E?(0,e.jsxs)("div",{className:"flex flex-col items-center gap-2 py-8 text-sm text-[#9A9A9A]",children:[(0,e.jsx)(k.A,{className:"h-4 w-4"}),(0,e.jsx)("p",{children:r("comments.loadError")}),(0,e.jsx)(m.$,{variant:"outline",size:"sm",onClick:$,children:r("comments.retry")})]}):0===w.length?(0,e.jsx)("p",{className:"py-8 text-center text-sm text-[#9A9A9A] italic",children:r("comments.noComments")}):(0,e.jsxs)("div",{children:[w.map(a=>(0,e.jsx)(D,{comment:a,compact:l,avatarSize:X,gap:Y,iconSize:Z,t:r},a.uuid)),(0,e.jsx)("div",{ref:R,"aria-hidden":"true"}),G?(0,e.jsxs)("div",{className:"flex items-center justify-center py-4",children:[(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"}),(0,e.jsx)("span",{className:"ml-2 text-xs text-[#9A9A9A]",children:r("comments.loadingMore")})]}):!M&&(0,e.jsx)("p",{className:"py-4 text-center text-xs text-[#BFBFBF] italic",children:r("comments.noMoreComments")})]})]})})}function D({comment:a,compact:b,avatarSize:c,gap:d,iconSize:g,t:h}){let[i,j]=(0,f.useState)(!1),k="agent"===a.author.type,o=k?(0,v.j)(a.author.name):null,p=a.content.length>200,q=o?`${o}18`:void 0;return(0,e.jsxs)("div",{className:`flex ${d} py-3 border-b border-[#F0EDE8] last:border-b-0`,children:[(0,e.jsx)(n.eu,{className:`${c} shrink-0`,children:(0,e.jsx)(n.q5,{style:k?{backgroundColor:q,color:o??void 0}:void 0,className:k?"":"bg-[#E5E0D8] text-[#6B6B6B] text-[11px] font-medium",children:k?(0,e.jsx)(l.A,{className:g}):a.author.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1.5 flex-wrap",children:[(0,e.jsx)("span",{className:`${b?"text-xs":"text-[13px]"} font-semibold text-[#1A1A1A]`,children:a.author.name}),(0,e.jsx)("span",{style:k?{backgroundColor:q,color:o??void 0}:void 0,className:`inline-flex items-center rounded px-1.5 py-px text-[9px] font-medium ${k?"":"bg-[#F0EDE8] text-[#6B6B6B]"}`,children:h(k?"comments.roleAgent":"comments.roleHuman")}),(0,e.jsx)("span",{className:"text-[11px] text-[#BFBFBF]",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,w.r)(c)}(a.createdAt,h)})]}),k&&a.author.owner&&(0,e.jsx)("div",{className:"flex items-center gap-1 mt-0.5",children:(0,e.jsx)("span",{className:"text-[11px] text-[#A3A3A3] italic",children:h("comments.onBehalfOf",{name:a.author.owner.name})})}),(0,e.jsx)("div",{className:`mt-1 ${b?"text-xs":"text-[13px]"} leading-relaxed text-[#3D3D3D] max-w-none [&_h1]:text-sm [&_h1]:font-semibold [&_h1]:mt-2 [&_h1]:mb-1 [&_h2]:text-[13px] [&_h2]:font-semibold [&_h2]:mt-2 [&_h2]:mb-1 [&_h3]:text-[13px] [&_h3]:font-semibold [&_h3]:mt-1.5 [&_h3]:mb-0.5 [&_p]:my-1 [&_ul]:my-1 [&_ol]:my-1 [&_li]:my-0.5`,children:p&&!i?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(r.z7,{renderMention:z,children:a.content.slice(0,200)+"..."}),(0,e.jsx)(m.$,{variant:"link",size:"sm",onClick:()=>j(!0),className:"h-auto p-0 text-[#E07A5F] text-xs font-medium mt-1",children:h("comments.showMore")})]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(r.z7,{renderMention:z,children:a.content}),p&&(0,e.jsx)(m.$,{variant:"link",size:"sm",onClick:()=>j(!1),className:"h-auto p-0 text-[#E07A5F] text-xs font-medium mt-1",children:h("comments.showLess")})]})})]})]})}[r,s]=y.then?(await y)():y,d()}catch(a){d(a)}})},76664:(a,b,c)=>{function d(a){let b="string"==typeof a?new Date(a):a;if(isNaN(b.getTime()))return"";let c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0"),f=String(b.getHours()).padStart(2,"0"),g=String(b.getMinutes()).padStart(2,"0");return`${c}-${d}-${e} ${f}:${g}`}function e(a,b){let c="string"==typeof a?new Date(a):a;return isNaN(c.getTime())?"":c.toLocaleDateString(b,{month:"short",day:"numeric"})}c.d(b,{r:()=>d,s:()=>e})},80251:(a,b,c)=>{c.d(b,{eu:()=>g,q5:()=>h});var d=c(10837);c(21968);var e=c(14672),f=c(96307);function g({className:a,size:b="default",...c}){return(0,d.jsx)(e.Root,{"data-slot":"avatar","data-size":b,className:(0,f.cn)("group/avatar relative flex size-8 shrink-0 overflow-hidden rounded-full select-none data-[size=lg]:size-10 data-[size=sm]:size-6",a),...c})}function h({className:a,...b}){return(0,d.jsx)(e.Fallback,{"data-slot":"avatar-fallback",className:(0,f.cn)("bg-muted text-muted-foreground flex size-full items-center justify-center rounded-full text-sm group-data-[size=sm]/avatar:text-xs",a),...b})}},82831:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{z7:()=>k});var e=c(10837),f=c(21968),g=c.n(f),h=c(97450),i=c(10174),j=a([h]);h=(j.then?(await j)():j)[0];let n=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:\?([^)]*))?\)/gi,o="chorus-mention";function k({children:a,renderMention:b}){if(!a||"string"!=typeof a)return null;if(!new RegExp(n.source,n.flags.replace("g","")).test(a))return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{children:a})});if(b)return(0,e.jsx)(l,{renderMention:b,children:a});let{processed:c,mentions:d}=function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j}=(0,i.vE)(f),k={displayName:c,type:d,uuid:e};return(null!==h||null!==j)&&(k.pinnedHost=h,k.pinnedCwd=j),b.push(k),`\u200B\u200BMENTION_${g}\u200B\u200B`}),mentions:b}}(a);return(0,e.jsx)(m,{mentions:d,children:(0,e.jsx)(h.MarkdownContent,{children:c})})}function l({children:a,renderMention:b}){let{processed:c,mentions:d}=g().useMemo(()=>(function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j}=(0,i.vE)(f),k={type:d.toLowerCase(),uuid:e.toLowerCase(),displayName:c};(null!==h||null!==j)&&(k.pinnedHost=h,k.pinnedCwd=j),b.push(k);let l=`@${c}`.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");return`<${o} idx="${g}">${l}</${o}>`}),mentions:b}})(a),[a]),f=g().useMemo(()=>({[o]:({idx:a})=>{let c=void 0===a?NaN:parseInt(a,10),f=Number.isInteger(c)?d[c]:void 0;return f?(0,e.jsx)(e.Fragment,{children:b({...f,index:c})}):null}}),[d,b]);return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{components:f,allowedTags:{[o]:["idx"]},literalTagContent:[o],children:c})})}function m({children:a,mentions:b}){let c=g().useRef(null);return(0,e.jsx)("div",{ref:c,className:"overflow-hidden [&_pre]:overflow-x-auto",children:a})}d()}catch(a){d(a)}})},98581:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>l,s:()=>m});var e=c(2613);c(50785);var f=c(9259),g=c(466),h=c(67738),i=c(97307),j=c(12217),k=a([f,g,h]);[f,g,h]=k.then?(await k)():k;let n=["idea","proposal","task","document"];async function l(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!n.includes(a))return{success:!1,error:`Invalid target type: ${a}`};try{let e=await (0,g.fg)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,cursor:c?.cursor??null,limit:c?.limit??10}),f=await (0,g.Yt)(e.comments);return{success:!0,comments:f,total:e.total,nextCursor:e.nextCursor??null,hasMore:e.hasMore??!1}}catch(b){return i.default.error({err:b,targetType:a},"Failed to get comments"),{success:!1,error:"Failed to load comments"}}}async function m(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!n.includes(a))return{success:!1,error:`Invalid target type: ${a}`};if(!c.trim())return{success:!1,error:"Comment content is required"};try{let e=await (0,g.eT)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,content:c.trim(),authorType:d.type,authorUuid:d.actorUuid}),f=await (0,g.Hu)(a,b,d.companyUuid);f&&await (0,h.createActivity)({companyUuid:d.companyUuid,projectUuid:f,targetType:a,targetUuid:b,actorType:d.type,actorUuid:d.actorUuid,action:"comment_added"});let[i]=await (0,g.Yt)([e]);return{success:!0,comment:i}}catch(b){return i.default.error({err:b,targetType:a},"Failed to create comment"),{success:!1,error:"Failed to create comment"}}}(0,j.D)([l,m]),(0,e.A)(l,"70aaecb121fe1371b6e5075f5954cea3ffaab203bb",null),(0,e.A)(m,"701c7d60af1f38c31dd99ce4c4ddeba40a4e1458ac",null),d()}catch(a){d(a)}})}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=2622,exports.ids=[2622],exports.modules={130:(a,b)=>{"use strict";function c(a){let{widthInt:b,heightInt:c,blurWidth:d,blurHeight:e,blurDataURL:f,objectFit:g}=a,h=d?40*d:b,i=e?40*e:c,j=h&&i?"viewBox='0 0 "+h+" "+i+"'":"";return"%3Csvg xmlns='http://www.w3.org/2000/svg' "+j+"%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='"+(j?"none":"contain"===g?"xMidYMid":"cover"===g?"xMidYMid slice":"none")+"' style='filter: url(%23b);' href='"+f+"'/%3E%3C/svg%3E"}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getImageBlurSvg",{enumerable:!0,get:function(){return c}})},649:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return g}});let d=c(72026),e=c(76038),f=c(78780);class g{static #a=this.EMPTY=new g(null,{metadata:{},contentType:null});static fromStatic(a,b){return new g(a,{metadata:{},contentType:b})}constructor(a,{contentType:b,waitUntil:c,metadata:d}){this.response=a,this.contentType=b,this.metadata=d,this.waitUntil=c}assignMetadata(a){Object.assign(this.metadata,a)}get isNull(){return null===this.response}get isDynamic(){return"string"!=typeof this.response}toUnchunkedString(a=!1){if(null===this.response)return"";if("string"!=typeof this.response){if(!a)throw Object.defineProperty(new f.InvariantError("dynamic responses cannot be unchunked. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E732",enumerable:!1,configurable:!0});return(0,d.streamToString)(this.readable)}return this.response}get readable(){return null===this.response?new ReadableStream({start(a){a.close()}}):"string"==typeof this.response?(0,d.streamFromString)(this.response):Buffer.isBuffer(this.response)?(0,d.streamFromBuffer)(this.response):Array.isArray(this.response)?(0,d.chainStreams)(...this.response):this.response}coerce(){return null===this.response?[]:"string"==typeof this.response?[(0,d.streamFromString)(this.response)]:Array.isArray(this.response)?this.response:Buffer.isBuffer(this.response)?[(0,d.streamFromBuffer)(this.response)]:[this.response]}unshift(a){this.response=this.coerce(),this.response.unshift(a)}push(a){this.response=this.coerce(),this.response.push(a)}async pipeTo(a){try{await this.readable.pipeTo(a,{preventClose:!0}),this.waitUntil&&await this.waitUntil,await a.close()}catch(b){if((0,e.isAbortError)(b))return void await a.abort(b);throw b}}async pipeToNodeResponse(a){await (0,e.pipeToNodeResponse)(this.readable,a,this.waitUntil)}}},1733:(a,b,c)=>{"use strict";a.exports=c(61031).vendored.contexts.ImageConfigContext},4065:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("tags",[["path",{d:"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z",key:"16rjxf"}],["path",{d:"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193",key:"178nd4"}],["circle",{cx:"10.5",cy:"6.5",r:".5",fill:"currentColor",key:"12ikhr"}]])},4177:(a,b,c)=>{"use strict";Object.defineProperty(b,"e",{enumerable:!0,get:function(){return k}});let d=c(65406),e=c(86658),f=c(29294),g=c(63033),h=c(39472),i=0;async function j(a,b,c,e,f,g,i){await b.set(c,{kind:h.CachedRouteKind.FETCH,data:{headers:{},body:JSON.stringify(a),status:200,url:""},revalidate:"number"!=typeof f?d.CACHE_ONE_YEAR:f},{fetchCache:!0,tags:e,fetchIdx:g,fetchUrl:i})}function k(a,b,c={}){if(0===c.revalidate)throw Object.defineProperty(Error(`Invariant revalidate: 0 can not be passed to unstable_cache(), must be "false" or "> 0" ${a.toString()}`),"__NEXT_ERROR_CODE",{value:"E57",enumerable:!1,configurable:!0});let d=c.tags?(0,e.validateTags)(c.tags,`unstable_cache ${a.toString()}`):[];(0,e.validateRevalidate)(c.revalidate,`unstable_cache ${a.name||a.toString()}`);let l=`${a.toString()}-${Array.isArray(b)&&b.join(",")}`;return async(...b)=>{let e=f.workAsyncStorage.getStore(),k=g.workUnitAsyncStorage.getStore(),m=(null==e?void 0:e.incrementalCache)||globalThis.__incrementalCache;if(!m)throw Object.defineProperty(Error(`Invariant: incrementalCache missing in unstable_cache ${a.toString()}`),"__NEXT_ERROR_CODE",{value:"E469",enumerable:!1,configurable:!0});let n=k?(0,g.getCacheSignal)(k):null;n&&n.beginRead();try{let f=e&&k?function(a,b){switch(b.type){case"request":let c=b.url.pathname,d=new URLSearchParams(b.url.search),e=[...d.keys()].sort((a,b)=>a.localeCompare(b)).map(a=>`${a}=${d.get(a)}`).join("&");return`${c}${e.length?"?":""}${e}`;case"prerender":case"prerender-client":case"prerender-runtime":case"prerender-ppr":case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return a.route;default:return b}}(e,k):"",n=`${l}-${JSON.stringify(b)}`,o=await m.generateCacheKey(n),p=`unstable_cache ${f} ${a.name?` ${a.name}`:o}`,q=(e?e.nextFetchId:i)??1,r=null==k?void 0:k.implicitTags,s={type:"unstable-cache",phase:"render",implicitTags:r,draftMode:k&&e&&(0,g.getDraftModeProviderForCacheScope)(e,k)};if(e){e.nextFetchId=q+1;let f=!1;if(k)switch(k.type){case"cache":case"private-cache":case"prerender":case"prerender-runtime":case"prerender-ppr":case"prerender-legacy":"number"==typeof c.revalidate&&(k.revalidate<c.revalidate||(k.revalidate=c.revalidate));let i=k.tags;if(null===i)k.tags=d.slice();else for(let a of d)i.includes(a)||i.push(a);break;case"unstable-cache":f=!0}if(!f&&"force-no-store"!==e.fetchCache&&!e.isOnDemandRevalidate&&!m.isOnDemandRevalidate&&!e.isDraftMode){let f=await m.get(o,{kind:h.IncrementalCacheKind.FETCH,revalidate:c.revalidate,tags:d,softTags:null==r?void 0:r.tags,fetchIdx:q,fetchUrl:p});if(f&&f.value)if(f.value.kind!==h.CachedRouteKind.FETCH)console.error(`Invariant invalid cacheEntry returned for ${n}`);else{let h=void 0!==f.value.data.body?JSON.parse(f.value.data.body):void 0;if(f.isStale){if(e.pendingRevalidates||(e.pendingRevalidates={}),!e.pendingRevalidates[n]){let f=g.workUnitAsyncStorage.run(s,a,...b).then(async a=>(await j(a,m,o,d,c.revalidate,q,p),a)).catch(a=>(console.error(`revalidating cache with key: ${n}`,a),h));e.isRevalidate&&f.catch(()=>{}),e.pendingRevalidates[n]=f}if(e.isRevalidate)return e.pendingRevalidates[n]}return h}}let l=await g.workUnitAsyncStorage.run(s,a,...b);return e.isDraftMode||(e.pendingRevalidates||(e.pendingRevalidates={}),e.pendingRevalidates[n]=j(l,m,o,d,c.revalidate,q,p)),l}{if(i+=1,!m.isOnDemandRevalidate){let a=await m.get(o,{kind:h.IncrementalCacheKind.FETCH,revalidate:c.revalidate,tags:d,fetchIdx:q,fetchUrl:p,softTags:null==r?void 0:r.tags});if(a&&a.value){if(a.value.kind!==h.CachedRouteKind.FETCH)console.error(`Invariant invalid cacheEntry returned for ${n}`);else if(!a.isStale)return void 0!==a.value.data.body?JSON.parse(a.value.data.body):void 0}}let e=await g.workUnitAsyncStorage.run(s,a,...b);return await j(e,m,o,d,c.revalidate,q,p),e}}finally{n&&n.endRead()}}}},4594:(a,b)=>{"use strict";function c(a){let{ampFirst:b=!1,hybrid:c=!1,hasQuery:d=!1}=void 0===a?{}:a;return b||c&&d}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isInAmpMode",{enumerable:!0,get:function(){return c}})},5562:(a,b,c)=>{let d={unstable_cache:c(4177).e,revalidateTag:c(86073).revalidateTag,revalidatePath:c(86073).revalidatePath,unstable_expireTag:c(86073).unstable_expireTag,unstable_expirePath:c(86073).unstable_expirePath,unstable_noStore:c(15352).M,unstable_cacheLife:c(32143).F,unstable_cacheTag:c(56287).z};a.exports=d,b.unstable_cache=d.unstable_cache,b.revalidatePath=d.revalidatePath,b.revalidateTag=d.revalidateTag,b.unstable_expireTag=d.unstable_expireTag,b.unstable_expirePath=d.unstable_expirePath,b.unstable_noStore=d.unstable_noStore,b.unstable_cacheLife=d.unstable_cacheLife,b.unstable_cacheTag=d.unstable_cacheTag},10355:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"RouteKind",{enumerable:!0,get:function(){return c}});var c=function(a){return a.PAGES="PAGES",a.PAGES_API="PAGES_API",a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.IMAGE="IMAGE",a}({})},15352:(a,b,c)=>{"use strict";Object.defineProperty(b,"M",{enumerable:!0,get:function(){return g}});let d=c(29294),e=c(63033),f=c(13786);function g(){let a=d.workAsyncStorage.getStore(),b=e.workUnitAsyncStorage.getStore();if(a){if(!a.forceStatic){if(a.isUnstableNoStore=!0,b)switch(b.type){case"prerender":case"prerender-client":case"prerender-runtime":return}(0,f.markCurrentScopeAsDynamic)(a,b,"unstable_noStore()")}}}},15640:(a,b,c)=>{"use strict";c.d(b,{default:()=>e.a});var d=c(69467),e=c.n(d)},16865:(a,b,c)=>{"use strict";a.exports=c(61031).vendored.contexts.AmpContext},18900:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{INTERCEPTION_ROUTE_MARKERS:function(){return e},extractInterceptionRouteInformation:function(){return g},isInterceptionRouteAppPath:function(){return f}});let d=c(87549),e=["(..)(..)","(.)","(..)","(...)"];function f(a){return void 0!==a.split("/").find(a=>e.find(b=>a.startsWith(b)))}function g(a){let b,c,f;for(let d of a.split("/"))if(c=e.find(a=>d.startsWith(a))){[b,f]=a.split(c,2);break}if(!b||!c||!f)throw Object.defineProperty(Error("Invalid interception route: "+a+". Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>"),"__NEXT_ERROR_CODE",{value:"E269",enumerable:!1,configurable:!0});switch(b=(0,d.normalizeAppPath)(b),c){case"(.)":f="/"===b?"/"+f:b+"/"+f;break;case"(..)":if("/"===b)throw Object.defineProperty(Error("Invalid interception route: "+a+". Cannot use (..) marker at the root level, use (.) instead."),"__NEXT_ERROR_CODE",{value:"E207",enumerable:!1,configurable:!0});f=b.split("/").slice(0,-1).concat(f).join("/");break;case"(...)":f="/"+f;break;case"(..)(..)":let g=b.split("/");if(g.length<=2)throw Object.defineProperty(Error("Invalid interception route: "+a+". Cannot use (..)(..) marker at the root level or one level up."),"__NEXT_ERROR_CODE",{value:"E486",enumerable:!1,configurable:!0});f=g.slice(0,-2).concat(f).join("/");break;default:throw Object.defineProperty(Error("Invariant: unexpected marker"),"__NEXT_ERROR_CODE",{value:"E112",enumerable:!1,configurable:!0})}return{interceptingRoute:b,interceptedRoute:f}}},19635:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getClientComponentLoaderMetrics:function(){return g},wrapClientComponentLoader:function(){return f}});let c=0,d=0,e=0;function f(a){return"performance"in globalThis?{require:(...b)=>{let f=performance.now();0===c&&(c=f);try{return e+=1,a.__next_app__.require(...b)}finally{d+=performance.now()-f}},loadChunk:(...b)=>{let c=performance.now(),e=a.__next_app__.loadChunk(...b);return e.finally(()=>{d+=performance.now()-c}),e}}:a.__next_app__}function g(a={}){let b=0===c?void 0:{clientComponentLoadStart:c,clientComponentLoadTimes:d,clientComponentLoadCount:e};return a.reset&&(c=0,d=0,e=0),b}},21225:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getSortedRouteObjects:function(){return e},getSortedRoutes:function(){return d}});class c{insert(a){this._insert(a.split("/").filter(Boolean),[],!1)}smoosh(){return this._smoosh()}_smoosh(a){void 0===a&&(a="/");let b=[...this.children.keys()].sort();null!==this.slugName&&b.splice(b.indexOf("[]"),1),null!==this.restSlugName&&b.splice(b.indexOf("[...]"),1),null!==this.optionalRestSlugName&&b.splice(b.indexOf("[[...]]"),1);let c=b.map(b=>this.children.get(b)._smoosh(""+a+b+"/")).reduce((a,b)=>[...a,...b],[]);if(null!==this.slugName&&c.push(...this.children.get("[]")._smoosh(a+"["+this.slugName+"]/")),!this.placeholder){let b="/"===a?"/":a.slice(0,-1);if(null!=this.optionalRestSlugName)throw Object.defineProperty(Error('You cannot define a route with the same specificity as a optional catch-all route ("'+b+'" and "'+b+"[[..."+this.optionalRestSlugName+']]").'),"__NEXT_ERROR_CODE",{value:"E458",enumerable:!1,configurable:!0});c.unshift(b)}return null!==this.restSlugName&&c.push(...this.children.get("[...]")._smoosh(a+"[..."+this.restSlugName+"]/")),null!==this.optionalRestSlugName&&c.push(...this.children.get("[[...]]")._smoosh(a+"[[..."+this.optionalRestSlugName+"]]/")),c}_insert(a,b,d){if(0===a.length){this.placeholder=!1;return}if(d)throw Object.defineProperty(Error("Catch-all must be the last part of the URL."),"__NEXT_ERROR_CODE",{value:"E392",enumerable:!1,configurable:!0});let e=a[0];if(e.startsWith("[")&&e.endsWith("]")){let c=e.slice(1,-1),g=!1;if(c.startsWith("[")&&c.endsWith("]")&&(c=c.slice(1,-1),g=!0),c.startsWith("…"))throw Object.defineProperty(Error("Detected a three-dot character ('…') at ('"+c+"'). Did you mean ('...')?"),"__NEXT_ERROR_CODE",{value:"E147",enumerable:!1,configurable:!0});if(c.startsWith("...")&&(c=c.substring(3),d=!0),c.startsWith("[")||c.endsWith("]"))throw Object.defineProperty(Error("Segment names may not start or end with extra brackets ('"+c+"')."),"__NEXT_ERROR_CODE",{value:"E421",enumerable:!1,configurable:!0});if(c.startsWith("."))throw Object.defineProperty(Error("Segment names may not start with erroneous periods ('"+c+"')."),"__NEXT_ERROR_CODE",{value:"E288",enumerable:!1,configurable:!0});function f(a,c){if(null!==a&&a!==c)throw Object.defineProperty(Error("You cannot use different slug names for the same dynamic path ('"+a+"' !== '"+c+"')."),"__NEXT_ERROR_CODE",{value:"E337",enumerable:!1,configurable:!0});b.forEach(a=>{if(a===c)throw Object.defineProperty(Error('You cannot have the same slug name "'+c+'" repeat within a single dynamic path'),"__NEXT_ERROR_CODE",{value:"E247",enumerable:!1,configurable:!0});if(a.replace(/\W/g,"")===e.replace(/\W/g,""))throw Object.defineProperty(Error('You cannot have the slug names "'+a+'" and "'+c+'" differ only by non-word symbols within a single dynamic path'),"__NEXT_ERROR_CODE",{value:"E499",enumerable:!1,configurable:!0})}),b.push(c)}if(d)if(g){if(null!=this.restSlugName)throw Object.defineProperty(Error('You cannot use both an required and optional catch-all route at the same level ("[...'+this.restSlugName+']" and "'+a[0]+'" ).'),"__NEXT_ERROR_CODE",{value:"E299",enumerable:!1,configurable:!0});f(this.optionalRestSlugName,c),this.optionalRestSlugName=c,e="[[...]]"}else{if(null!=this.optionalRestSlugName)throw Object.defineProperty(Error('You cannot use both an optional and required catch-all route at the same level ("[[...'+this.optionalRestSlugName+']]" and "'+a[0]+'").'),"__NEXT_ERROR_CODE",{value:"E300",enumerable:!1,configurable:!0});f(this.restSlugName,c),this.restSlugName=c,e="[...]"}else{if(g)throw Object.defineProperty(Error('Optional route parameters are not yet supported ("'+a[0]+'").'),"__NEXT_ERROR_CODE",{value:"E435",enumerable:!1,configurable:!0});f(this.slugName,c),this.slugName=c,e="[]"}}this.children.has(e)||this.children.set(e,new c),this.children.get(e)._insert(a.slice(1),b,d)}constructor(){this.placeholder=!0,this.children=new Map,this.slugName=null,this.restSlugName=null,this.optionalRestSlugName=null}}function d(a){let b=new c;return a.forEach(a=>b.insert(a)),b.smoosh()}function e(a,b){let c={},e=[];for(let d=0;d<a.length;d++){let f=b(a[d]);c[f]=d,e[d]=f}return d(e).map(b=>a[c[b]])}},21614:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{VALID_LOADERS:function(){return c},imageConfigDefault:function(){return d}});let c=["default","imgix","cloudinary","akamai","custom"],d={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:60,formats:["image/webp"],maximumResponseBody:5e7,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:void 0,unoptimized:!1}},22954:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{default:function(){return p},defaultHead:function(){return l}});let d=c(83658),e=c(62653),f=c(10837),g=e._(c(21968)),h=d._(c(39097)),i=c(16865),j=c(75387),k=c(4594);function l(a){void 0===a&&(a=!1);let b=[(0,f.jsx)("meta",{charSet:"utf-8"},"charset")];return a||b.push((0,f.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")),b}function m(a,b){return"string"==typeof b||"number"==typeof b?a:b.type===g.default.Fragment?a.concat(g.default.Children.toArray(b.props.children).reduce((a,b)=>"string"==typeof b||"number"==typeof b?a:a.concat(b),[])):a.concat(b)}c(11770);let n=["name","httpEquiv","charSet","itemProp"];function o(a,b){let{inAmpMode:c}=b;return a.reduce(m,[]).reverse().concat(l(c).reverse()).filter(function(){let a=new Set,b=new Set,c=new Set,d={};return e=>{let f=!0,g=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){g=!0;let b=e.key.slice(e.key.indexOf("$")+1);a.has(b)?f=!1:a.add(b)}switch(e.type){case"title":case"base":b.has(e.type)?f=!1:b.add(e.type);break;case"meta":for(let a=0,b=n.length;a<b;a++){let b=n[a];if(e.props.hasOwnProperty(b))if("charSet"===b)c.has(b)?f=!1:c.add(b);else{let a=e.props[b],c=d[b]||new Set;("name"!==b||!g)&&c.has(a)?f=!1:(c.add(a),d[b]=c)}}}return f}}()).reverse().map((a,b)=>{let c=a.key||b;return g.default.cloneElement(a,{key:c})})}let p=function(a){let{children:b}=a,c=(0,g.useContext)(i.AmpStateContext),d=(0,g.useContext)(j.HeadManagerContext);return(0,f.jsx)(h.default,{reduceComponentsToState:o,headManager:d,inAmpMode:(0,k.isInAmpMode)(c),children:b})};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},24714:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]])},24838:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("user-check",[["path",{d:"m16 11 2 2 4-4",key:"9rsbq5"}],["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},27362:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]])},28605:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]])},28929:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isNodeNextRequest:function(){return e},isNodeNextResponse:function(){return f},isWebNextRequest:function(){return c},isWebNextResponse:function(){return d}});let c=a=>!1,d=a=>!1,e=a=>!0,f=a=>!0},30443:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{CachedRouteKind:function(){return c},IncrementalCacheKind:function(){return d}});var c=function(a){return a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PAGES="PAGES",a.FETCH="FETCH",a.REDIRECT="REDIRECT",a.IMAGE="IMAGE",a}({}),d=function(a){return a.APP_PAGE="APP_PAGE",a.APP_ROUTE="APP_ROUTE",a.PAGES="PAGES",a.FETCH="FETCH",a.IMAGE="IMAGE",a}({})},32143:(a,b,c)=>{"use strict";function d(a){throw Object.defineProperty(Error("cacheLife() is only available with the experimental.useCache config."),"__NEXT_ERROR_CODE",{value:"E627",enumerable:!1,configurable:!0})}Object.defineProperty(b,"F",{enumerable:!0,get:function(){return d}}),c(29294),c(63033)},33099:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"Image",{enumerable:!0,get:function(){return u}});let d=c(83658),e=c(62653),f=c(10837),g=e._(c(21968)),h=d._(c(5217)),i=d._(c(22954)),j=c(79539),k=c(21614),l=c(1733);c(11770);let m=c(89766),n=d._(c(45219)),o=c(14508),p={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function q(a,b,c,d,e,f,g){let h=null==a?void 0:a.src;a&&a["data-loaded-src"]!==h&&(a["data-loaded-src"]=h,("decode"in a?a.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(a.parentElement&&a.isConnected){if("empty"!==b&&e(!0),null==c?void 0:c.current){let b=new Event("load");Object.defineProperty(b,"target",{writable:!1,value:a});let d=!1,e=!1;c.current({...b,nativeEvent:b,currentTarget:a,target:a,isDefaultPrevented:()=>d,isPropagationStopped:()=>e,persist:()=>{},preventDefault:()=>{d=!0,b.preventDefault()},stopPropagation:()=>{e=!0,b.stopPropagation()}})}(null==d?void 0:d.current)&&d.current(a)}}))}function r(a){return g.use?{fetchPriority:a}:{fetchpriority:a}}globalThis.__NEXT_IMAGE_IMPORTED=!0;let s=(0,g.forwardRef)((a,b)=>{let{src:c,srcSet:d,sizes:e,height:h,width:i,decoding:j,className:k,style:l,fetchPriority:m,placeholder:n,loading:p,unoptimized:s,fill:t,onLoadRef:u,onLoadingCompleteRef:v,setBlurComplete:w,setShowAltText:x,sizesInput:y,onLoad:z,onError:A,...B}=a,C=(0,g.useCallback)(a=>{a&&(A&&(a.src=a.src),a.complete&&q(a,n,u,v,w,s,y))},[c,n,u,v,w,A,s,y]),D=(0,o.useMergedRef)(b,C);return(0,f.jsx)("img",{...B,...r(m),loading:p,width:i,height:h,decoding:j,"data-nimg":t?"fill":"1",className:k,style:l,sizes:e,srcSet:d,src:c,ref:D,onLoad:a=>{q(a.currentTarget,n,u,v,w,s,y)},onError:a=>{x(!0),"empty"!==n&&w(!0),A&&A(a)}})});function t(a){let{isAppRouter:b,imgAttributes:c}=a,d={as:"image",imageSrcSet:c.srcSet,imageSizes:c.sizes,crossOrigin:c.crossOrigin,referrerPolicy:c.referrerPolicy,...r(c.fetchPriority)};return b&&h.default.preload?(h.default.preload(c.src,d),null):(0,f.jsx)(i.default,{children:(0,f.jsx)("link",{rel:"preload",href:c.srcSet?void 0:c.src,...d},"__nimg-"+c.src+c.srcSet+c.sizes)})}let u=(0,g.forwardRef)((a,b)=>{let c=(0,g.useContext)(m.RouterContext),d=(0,g.useContext)(l.ImageConfigContext),e=(0,g.useMemo)(()=>{var a;let b=p||d||k.imageConfigDefault,c=[...b.deviceSizes,...b.imageSizes].sort((a,b)=>a-b),e=b.deviceSizes.sort((a,b)=>a-b),f=null==(a=b.qualities)?void 0:a.sort((a,b)=>a-b);return{...b,allSizes:c,deviceSizes:e,qualities:f}},[d]),{onLoad:h,onLoadingComplete:i}=a,o=(0,g.useRef)(h);(0,g.useEffect)(()=>{o.current=h},[h]);let q=(0,g.useRef)(i);(0,g.useEffect)(()=>{q.current=i},[i]);let[r,u]=(0,g.useState)(!1),[v,w]=(0,g.useState)(!1),{props:x,meta:y}=(0,j.getImgProps)(a,{defaultLoader:n.default,imgConf:e,blurComplete:r,showAltText:v});return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(s,{...x,unoptimized:y.unoptimized,placeholder:y.placeholder,fill:y.fill,onLoadRef:o,onLoadingCompleteRef:q,setBlurComplete:u,setShowAltText:w,sizesInput:a.sizes,ref:b}),y.priority?(0,f.jsx)(t,{isAppRouter:!c,imgAttributes:x}):null]})});("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},35209:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},38415:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getSortedRouteObjects:function(){return d.getSortedRouteObjects},getSortedRoutes:function(){return d.getSortedRoutes},isDynamicRoute:function(){return e.isDynamicRoute}});let d=c(21225),e=c(80013)},39097:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(21968),e=()=>{};function f(a){var b;let{headManager:c,reduceComponentsToState:f}=a;function g(){if(c&&c.mountedInstances){let b=d.Children.toArray(Array.from(c.mountedInstances).filter(Boolean));c.updateHead(f(b,a))}}return null==c||null==(b=c.mountedInstances)||b.add(a.children),g(),e(()=>{var b;return null==c||null==(b=c.mountedInstances)||b.add(a.children),()=>{var b;null==c||null==(b=c.mountedInstances)||b.delete(a.children)}}),e(()=>(c&&(c._pendingUpdate=g),()=>{c&&(c._pendingUpdate=g)})),null}},39472:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return n}});let d=c(66968),e=c(26473),f=c(24748),g=c(59577),h=c(68127);function i(a,b){if(!a)return b;let c=parseInt(a,10);return Number.isFinite(c)&&c>0?c:b}!function(a,b){Object.keys(a).forEach(function(c){"default"===c||Object.prototype.hasOwnProperty.call(b,c)||Object.defineProperty(b,c,{enumerable:!0,get:function(){return a[c]}})})}(c(30443),b);let j=i(process.env.NEXT_PRIVATE_RESPONSE_CACHE_TTL,1e4),k=i(process.env.NEXT_PRIVATE_RESPONSE_CACHE_MAX_SIZE,150),l="__ttl_sentinel__";function m(a,b){return`${a}\0${b??l}`}class n{constructor(a,b=k,c=j){this.batcher=d.Batcher.create({cacheKeyFn:({key:a,isOnDemandRevalidate:b})=>`${a}-${b?"1":"0"}`,schedulerFn:g.scheduleOnNextTick}),this.revalidateBatcher=d.Batcher.create({schedulerFn:g.scheduleOnNextTick}),this.evictedInvocationIDs=new Set,this.minimal_mode=a,this.maxSize=b,this.ttl=c,this.cache=new e.LRUCache(b,void 0,a=>{let b=function(a){let b=a.lastIndexOf("\0");if(-1===b)return;let c=a.slice(b+1);return c===l?void 0:c}(a);if(b){if(this.evictedInvocationIDs.size>=100){let a=this.evictedInvocationIDs.values().next().value;a&&this.evictedInvocationIDs.delete(a)}this.evictedInvocationIDs.add(b)}})}async get(a,b,c){if(!a)return b({hasResolved:!1,previousCacheEntry:null});if(this.minimal_mode){let b=m(a,c.invocationID),d=this.cache.get(b);if(d){if(void 0!==c.invocationID)return(0,h.toResponseCacheEntry)(d.entry);let a=Date.now();if(d.expiresAt>a)return(0,h.toResponseCacheEntry)(d.entry);this.cache.remove(b)}c.invocationID&&this.evictedInvocationIDs.has(c.invocationID)&&(0,f.warnOnce)(`Response cache entry was evicted for invocation ${c.invocationID}. Consider increasing NEXT_PRIVATE_RESPONSE_CACHE_MAX_SIZE (current: ${this.maxSize}).`)}let{incrementalCache:d,isOnDemandRevalidate:e=!1,isFallback:g=!1,isRoutePPREnabled:i=!1,isPrefetch:j=!1,waitUntil:k,routeKind:l,invocationID:n}=c,o=await this.batcher.batch({key:a,isOnDemandRevalidate:e},(c,f)=>{let h=this.handleGet(a,b,{incrementalCache:d,isOnDemandRevalidate:e,isFallback:g,isRoutePPREnabled:i,isPrefetch:j,routeKind:l,invocationID:n},f);return k&&k(h),h});return(0,h.toResponseCacheEntry)(o)}async handleGet(a,b,c,d){let e=null,f=!1;try{if((e=this.minimal_mode?null:await c.incrementalCache.get(a,{kind:(0,h.routeKindToIncrementalCacheKind)(c.routeKind),isRoutePPREnabled:c.isRoutePPREnabled,isFallback:c.isFallback}))&&!c.isOnDemandRevalidate&&(d(e),f=!0,!e.isStale||c.isPrefetch))return e;let g=await this.revalidate(a,c.incrementalCache,c.isRoutePPREnabled,c.isFallback,b,e,null!==e&&!c.isOnDemandRevalidate,void 0,c.invocationID);if(!g){if(this.minimal_mode){let b=m(a,c.invocationID);this.cache.remove(b)}return null}return c.isOnDemandRevalidate,g}catch(a){if(f)return console.error(a),null;throw a}}async revalidate(a,b,c,d,e,f,g,h,i){return this.revalidateBatcher.batch(a,()=>{let j=this.handleRevalidate(a,b,c,d,e,f,g,i);return h&&h(j),j})}async handleRevalidate(a,b,c,d,e,f,g,i){try{let j=await e({hasResolved:g,previousCacheEntry:f,isRevalidating:!0});if(!j)return null;let k=await (0,h.fromResponseCacheEntry)({...j,isMiss:!f});if(k.cacheControl)if(this.minimal_mode){let b=m(a,i);this.cache.set(b,{entry:k,expiresAt:Date.now()+this.ttl})}else await b.set(a,k.value,{cacheControl:k.cacheControl,isRoutePPREnabled:c,isFallback:d});return k}catch(e){if(null==f?void 0:f.cacheControl){let e=Math.min(Math.max(f.cacheControl.revalidate||3,3),30),g=void 0===f.cacheControl.expire?void 0:Math.max(e+3,f.cacheControl.expire);await b.set(a,f.value,{cacheControl:{revalidate:e,expire:g},isRoutePPREnabled:c,isFallback:d})}throw e}}}},45219:(a,b)=>{"use strict";function c(a){var b;let{config:c,src:d,width:e,quality:f}=a,g=f||(null==(b=c.qualities)?void 0:b.reduce((a,b)=>Math.abs(b-75)<Math.abs(a-75)?b:a))||75;return c.path+"?url="+encodeURIComponent(d)+"&w="+e+"&q="+g+(d.startsWith("/_next/static/media/"),"")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return d}}),c.__next_img_default=!0;let d=c},46839:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]])},56287:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("cacheTag() is only available with the experimental.useCache config."),"__NEXT_ERROR_CODE",{value:"E628",enumerable:!1,configurable:!0})}Object.defineProperty(b,"z",{enumerable:!0,get:function(){return d}}),c(63033),c(86658)},57208:(a,b)=>{"use strict";let c;Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"cloneResponse",{enumerable:!0,get:function(){return e}});let d=()=>{};function e(a){if(!a.body)return[a,a];let[b,d]=a.body.tee(),e=new Response(b,{status:a.status,statusText:a.statusText,headers:a.headers});Object.defineProperty(e,"url",{value:a.url,configurable:!0,enumerable:!0,writable:!1}),c&&e.body&&c.register(e,new WeakRef(e.body));let f=new Response(d,{status:a.status,statusText:a.statusText,headers:a.headers});return Object.defineProperty(f,"url",{value:a.url,configurable:!0,enumerable:!0,writable:!1}),[e,f]}globalThis.FinalizationRegistry&&(c=new FinalizationRegistry(a=>{let b=a.deref();b&&!b.locked&&b.cancel("Response object has been garbage collected").then(d)}))},58194:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{NEXT_REQUEST_META:function(){return c},addRequestMeta:function(){return f},getRequestMeta:function(){return d},removeRequestMeta:function(){return g},setRequestMeta:function(){return e}});let c=Symbol.for("NextInternalRequestMeta");function d(a,b){let d=a[c]||{};return"string"==typeof b?d[b]:d}function e(a,b){return a[c]=b,b}function f(a,b,c){let f=d(a);return f[b]=c,e(a,f)}function g(a,b){let c=d(a);return delete c[b],e(a,c)}},66968:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"Batcher",{enumerable:!0,get:function(){return e}});let d=c(54501);class e{constructor(a,b=a=>a()){this.cacheKeyFn=a,this.schedulerFn=b,this.pending=new Map}static create(a){return new e(null==a?void 0:a.cacheKeyFn,null==a?void 0:a.schedulerFn)}async batch(a,b){let c=this.cacheKeyFn?await this.cacheKeyFn(a):a;if(null===c)return b(c,Promise.resolve);let e=this.pending.get(c);if(e)return e;let{promise:f,resolve:g,reject:h}=new d.DetachedPromise;return this.pending.set(c,f),this.schedulerFn(async()=>{try{let a=await b(c,g);g(a)}catch(a){h(a)}finally{this.pending.delete(c)}}),f}}},68127:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{fromResponseCacheEntry:function(){return h},routeKindToIncrementalCacheKind:function(){return j},toResponseCacheEntry:function(){return i}});let d=c(30443),e=function(a){return a&&a.__esModule?a:{default:a}}(c(649)),f=c(10355),g=c(65406);async function h(a){var b,c;return{...a,value:(null==(b=a.value)?void 0:b.kind)===d.CachedRouteKind.PAGES?{kind:d.CachedRouteKind.PAGES,html:await a.value.html.toUnchunkedString(!0),pageData:a.value.pageData,headers:a.value.headers,status:a.value.status}:(null==(c=a.value)?void 0:c.kind)===d.CachedRouteKind.APP_PAGE?{kind:d.CachedRouteKind.APP_PAGE,html:await a.value.html.toUnchunkedString(!0),postponed:a.value.postponed,rscData:a.value.rscData,headers:a.value.headers,status:a.value.status,segmentData:a.value.segmentData}:a.value}}async function i(a){var b,c;return a?{isMiss:a.isMiss,isStale:a.isStale,cacheControl:a.cacheControl,value:(null==(b=a.value)?void 0:b.kind)===d.CachedRouteKind.PAGES?{kind:d.CachedRouteKind.PAGES,html:e.default.fromStatic(a.value.html,g.HTML_CONTENT_TYPE_HEADER),pageData:a.value.pageData,headers:a.value.headers,status:a.value.status}:(null==(c=a.value)?void 0:c.kind)===d.CachedRouteKind.APP_PAGE?{kind:d.CachedRouteKind.APP_PAGE,html:e.default.fromStatic(a.value.html,g.HTML_CONTENT_TYPE_HEADER),rscData:a.value.rscData,headers:a.value.headers,status:a.value.status,postponed:a.value.postponed,segmentData:a.value.segmentData}:a.value}:null}function j(a){switch(a){case f.RouteKind.PAGES:return d.IncrementalCacheKind.PAGES;case f.RouteKind.APP_PAGE:return d.IncrementalCacheKind.APP_PAGE;case f.RouteKind.IMAGE:return d.IncrementalCacheKind.IMAGE;case f.RouteKind.APP_ROUTE:return d.IncrementalCacheKind.APP_ROUTE;case f.RouteKind.PAGES_API:throw Object.defineProperty(Error(`Unexpected route kind ${a}`),"__NEXT_ERROR_CODE",{value:"E64",enumerable:!1,configurable:!0});default:return a}}},69467:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{default:function(){return i},getImageProps:function(){return h}});let d=c(83658),e=c(79539),f=c(33099),g=d._(c(45219));function h(a){let{props:b}=(0,e.getImgProps)(a,{defaultLoader:g.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[a,c]of Object.entries(b))void 0===c&&delete b[a];return{props:b}}let i=f.Image},71833:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]])},72135:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"createDedupeFetch",{enumerable:!0,get:function(){return h}});let d=function(a,b){if(a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=g(b);if(c&&c.has(a))return c.get(a);var d={__proto__:null},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!==f&&Object.prototype.hasOwnProperty.call(a,f)){var h=e?Object.getOwnPropertyDescriptor(a,f):null;h&&(h.get||h.set)?Object.defineProperty(d,f,h):d[f]=a[f]}return d.default=a,c&&c.set(a,d),d}(c(97119)),e=c(57208),f=c(78780);function g(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(g=function(a){return a?c:b})(a)}function h(a){let b=d.cache(a=>[]);return function(c,d){let g,h;if(d&&d.signal)return a(c,d);if("string"!=typeof c||d){let b="string"==typeof c||c instanceof URL?new Request(c,d):c;if("GET"!==b.method&&"HEAD"!==b.method||b.keepalive)return a(c,d);h=JSON.stringify([b.method,Array.from(b.headers.entries()),b.mode,b.redirect,b.credentials,b.referrer,b.referrerPolicy,b.integrity]),g=b.url}else h='["GET",[],null,"follow",null,null,null,null]',g=c;let i=b(g);for(let a=0,b=i.length;a<b;a+=1){let[b,c]=i[a];if(b===h)return c.then(()=>{let b=i[a][2];if(!b)throw Object.defineProperty(new f.InvariantError("No cached response"),"__NEXT_ERROR_CODE",{value:"E579",enumerable:!1,configurable:!0});let[c,d]=(0,e.cloneResponse)(b);return i[a][2]=d,c})}let j=a(c,d),k=[h,j,null];return i.push(k),j.then(a=>{let[b,c]=(0,e.cloneResponse)(a);return k[2]=c,b})}}},73112:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},75387:(a,b,c)=>{"use strict";a.exports=c(61031).vendored.contexts.HeadManagerContext},75888:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]])},76038:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isAbortError:function(){return i},pipeToNodeResponse:function(){return j}});let d=c(77532),e=c(54501),f=c(53072),g=c(12442),h=c(19635);function i(a){return(null==a?void 0:a.name)==="AbortError"||(null==a?void 0:a.name)===d.ResponseAbortedName}async function j(a,b,c){try{let{errored:i,destroyed:j}=b;if(i||j)return;let k=(0,d.createAbortController)(b),l=function(a,b){let c=!1,d=new e.DetachedPromise;function i(){d.resolve()}a.on("drain",i),a.once("close",()=>{a.off("drain",i),d.resolve()});let j=new e.DetachedPromise;return a.once("finish",()=>{j.resolve()}),new WritableStream({write:async b=>{if(!c){if(c=!0,"performance"in globalThis&&process.env.NEXT_OTEL_PERFORMANCE_PREFIX){let a=(0,h.getClientComponentLoaderMetrics)();a&&performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-client-component-loading`,{start:a.clientComponentLoadStart,end:a.clientComponentLoadStart+a.clientComponentLoadTimes})}a.flushHeaders(),(0,f.getTracer)().trace(g.NextNodeServerSpan.startResponse,{spanName:"start response"},()=>void 0)}try{let c=a.write(b);"flush"in a&&"function"==typeof a.flush&&a.flush(),c||(await d.promise,d=new e.DetachedPromise)}catch(b){throw a.end(),Object.defineProperty(Error("failed to write chunk to response",{cause:b}),"__NEXT_ERROR_CODE",{value:"E321",enumerable:!1,configurable:!0})}},abort:b=>{a.writableFinished||a.destroy(b)},close:async()=>{if(b&&await b,!a.writableFinished)return a.end(),j.promise}})}(b,c);await a.pipeTo(l,{signal:k.signal})}catch(a){if(i(a))return;throw Object.defineProperty(Error("failed to pipe response",{cause:a}),"__NEXT_ERROR_CODE",{value:"E180",enumerable:!1,configurable:!0})}}},76723:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},77532:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{NextRequestAdapter:function(){return l},ResponseAborted:function(){return i},ResponseAbortedName:function(){return h},createAbortController:function(){return j},signalFromNodeResponse:function(){return k}});let d=c(58194),e=c(63279),f=c(40343),g=c(28929),h="ResponseAborted";class i extends Error{constructor(...a){super(...a),this.name=h}}function j(a){let b=new AbortController;return a.once("close",()=>{a.writableFinished||b.abort(new i)}),b}function k(a){let{errored:b,destroyed:c}=a;if(b||c)return AbortSignal.abort(b??new i);let{signal:d}=j(a);return d}class l{static fromBaseNextRequest(a,b){if((0,g.isNodeNextRequest)(a))return l.fromNodeNextRequest(a,b);throw Object.defineProperty(Error("Invariant: Unsupported NextRequest type"),"__NEXT_ERROR_CODE",{value:"E345",enumerable:!1,configurable:!0})}static fromNodeNextRequest(a,b){let c,g=null;if("GET"!==a.method&&"HEAD"!==a.method&&a.body&&(g=a.body),a.url.startsWith("http"))c=new URL(a.url);else{let b=(0,d.getRequestMeta)(a,"initURL");c=b&&b.startsWith("http")?new URL(a.url,b):new URL(a.url,"http://n")}return new f.NextRequest(c,{method:a.method,headers:(0,e.fromNodeOutgoingHttpHeaders)(a.headers),duplex:"half",signal:b,...b.aborted?{}:{body:g}})}static fromWebNextRequest(a){let b=null;return"GET"!==a.method&&"HEAD"!==a.method&&(b=a.body),new f.NextRequest(a.url,{method:a.method,headers:(0,e.fromNodeOutgoingHttpHeaders)(a.headers),duplex:"half",signal:a.request.signal,...a.request.signal.aborted?{}:{body:b}})}}},79539:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getImgProps",{enumerable:!0,get:function(){return i}}),c(11770);let d=c(130),e=c(21614),f=["-moz-initial","fill","none","scale-down",void 0];function g(a){return void 0!==a.default}function h(a){return void 0===a?a:"number"==typeof a?Number.isFinite(a)?a:NaN:"string"==typeof a&&/^[0-9]+$/.test(a)?parseInt(a,10):NaN}function i(a,b){var c,i;let j,k,l,{src:m,sizes:n,unoptimized:o=!1,priority:p=!1,loading:q,className:r,quality:s,width:t,height:u,fill:v=!1,style:w,overrideSrc:x,onLoad:y,onLoadingComplete:z,placeholder:A="empty",blurDataURL:B,fetchPriority:C,decoding:D="async",layout:E,objectFit:F,objectPosition:G,lazyBoundary:H,lazyRoot:I,...J}=a,{imgConf:K,showAltText:L,blurComplete:M,defaultLoader:N}=b,O=K||e.imageConfigDefault;if("allSizes"in O)j=O;else{let a=[...O.deviceSizes,...O.imageSizes].sort((a,b)=>a-b),b=O.deviceSizes.sort((a,b)=>a-b),d=null==(c=O.qualities)?void 0:c.sort((a,b)=>a-b);j={...O,allSizes:a,deviceSizes:b,qualities:d}}if(void 0===N)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let P=J.loader||N;delete J.loader,delete J.srcSet;let Q="__next_img_default"in P;if(Q){if("custom"===j.loader)throw Object.defineProperty(Error('Image with src "'+m+'" is missing "loader" prop.\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader'),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let a=P;P=b=>{let{config:c,...d}=b;return a(d)}}if(E){"fill"===E&&(v=!0);let a={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[E];a&&(w={...w,...a});let b={responsive:"100vw",fill:"100vw"}[E];b&&!n&&(n=b)}let R="",S=h(t),T=h(u);if((i=m)&&"object"==typeof i&&(g(i)||void 0!==i.src)){let a=g(m)?m.default:m;if(!a.src)throw Object.defineProperty(Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received "+JSON.stringify(a)),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!a.height||!a.width)throw Object.defineProperty(Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received "+JSON.stringify(a)),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(k=a.blurWidth,l=a.blurHeight,B=B||a.blurDataURL,R=a.src,!v)if(S||T){if(S&&!T){let b=S/a.width;T=Math.round(a.height*b)}else if(!S&&T){let b=T/a.height;S=Math.round(a.width*b)}}else S=a.width,T=a.height}let U=!p&&("lazy"===q||void 0===q);(!(m="string"==typeof m?m:R)||m.startsWith("data:")||m.startsWith("blob:"))&&(o=!0,U=!1),j.unoptimized&&(o=!0),Q&&!j.dangerouslyAllowSVG&&m.split("?",1)[0].endsWith(".svg")&&(o=!0);let V=h(s),W=Object.assign(v?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:F,objectPosition:G}:{},L?{}:{color:"transparent"},w),X=M||"empty"===A?null:"blur"===A?'url("data:image/svg+xml;charset=utf-8,'+(0,d.getImageBlurSvg)({widthInt:S,heightInt:T,blurWidth:k,blurHeight:l,blurDataURL:B||"",objectFit:W.objectFit})+'")':'url("'+A+'")',Y=f.includes(W.objectFit)?"fill"===W.objectFit?"100% 100%":"cover":W.objectFit,Z=X?{backgroundSize:Y,backgroundPosition:W.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:X}:{},$=function(a){let{config:b,src:c,unoptimized:d,width:e,quality:f,sizes:g,loader:h}=a;if(d)return{src:c,srcSet:void 0,sizes:void 0};let{widths:i,kind:j}=function(a,b,c){let{deviceSizes:d,allSizes:e}=a;if(c){let a=/(^|\s)(1?\d?\d)vw/g,b=[];for(let d;d=a.exec(c);)b.push(parseInt(d[2]));if(b.length){let a=.01*Math.min(...b);return{widths:e.filter(b=>b>=d[0]*a),kind:"w"}}return{widths:e,kind:"w"}}return"number"!=typeof b?{widths:d,kind:"w"}:{widths:[...new Set([b,2*b].map(a=>e.find(b=>b>=a)||e[e.length-1]))],kind:"x"}}(b,e,g),k=i.length-1;return{sizes:g||"w"!==j?g:"100vw",srcSet:i.map((a,d)=>h({config:b,src:c,quality:f,width:a})+" "+("w"===j?a:d+1)+j).join(", "),src:h({config:b,src:c,quality:f,width:i[k]})}}({config:j,src:m,unoptimized:o,width:S,quality:V,sizes:n,loader:P});return{props:{...J,loading:U?"lazy":q,fetchPriority:C,width:S,height:T,decoding:D,className:r,style:{...W,...Z},sizes:$.sizes,srcSet:$.srcSet,src:x||$.src},meta:{unoptimized:o,priority:p,placeholder:A,fill:v}}}},80013:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isDynamicRoute",{enumerable:!0,get:function(){return g}});let d=c(18900),e=/\/[^/]*\[[^/]+\][^/]*(?=\/|$)/,f=/\/\[[^/]+\](?=\/|$)/;function g(a,b){return(void 0===b&&(b=!0),(0,d.isInterceptionRouteAppPath)(a)&&(a=(0,d.extractInterceptionRouteInformation)(a).interceptedRoute),b)?f.test(a):e.test(a)}},86073:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{revalidatePath:function(){return n},revalidateTag:function(){return k},unstable_expirePath:function(){return l},unstable_expireTag:function(){return m}});let d=c(13786),e=c(38415),f=c(65406),g=c(29294),h=c(63033),i=c(18462),j=c(78780);function k(a){return o([a],`revalidateTag ${a}`)}function l(a,b){if(a.length>f.NEXT_CACHE_SOFT_TAG_MAX_LENGTH)return void console.warn(`Warning: expirePath received "${a}" which exceeded max length of ${f.NEXT_CACHE_SOFT_TAG_MAX_LENGTH}. See more info here https://nextjs.org/docs/app/api-reference/functions/unstable_expirePath`);let c=`${f.NEXT_CACHE_IMPLICIT_TAG_ID}${a}`;return b?c+=`${c.endsWith("/")?"":"/"}${b}`:(0,e.isDynamicRoute)(a)&&console.warn(`Warning: a dynamic page path "${a}" was passed to "expirePath", but the "type" parameter is missing. This has no effect by default, see more info here https://nextjs.org/docs/app/api-reference/functions/unstable_expirePath`),o([c],`unstable_expirePath ${a}`)}function m(...a){return o(a,`unstable_expireTag ${a.join(", ")}`)}function n(a,b){if(a.length>f.NEXT_CACHE_SOFT_TAG_MAX_LENGTH)return void console.warn(`Warning: revalidatePath received "${a}" which exceeded max length of ${f.NEXT_CACHE_SOFT_TAG_MAX_LENGTH}. See more info here https://nextjs.org/docs/app/api-reference/functions/revalidatePath`);let c=`${f.NEXT_CACHE_IMPLICIT_TAG_ID}${a}`;return b?c+=`${c.endsWith("/")?"":"/"}${b}`:(0,e.isDynamicRoute)(a)&&console.warn(`Warning: a dynamic page path "${a}" was passed to "revalidatePath", but the "type" parameter is missing. This has no effect by default, see more info here https://nextjs.org/docs/app/api-reference/functions/revalidatePath`),o([c],`revalidatePath ${a}`)}function o(a,b){let c=g.workAsyncStorage.getStore();if(!c||!c.incrementalCache)throw Object.defineProperty(Error(`Invariant: static generation store missing in ${b}`),"__NEXT_ERROR_CODE",{value:"E263",enumerable:!1,configurable:!0});let e=h.workUnitAsyncStorage.getStore();if(e){if("render"===e.phase)throw Object.defineProperty(Error(`Route ${c.route} used "${b}" during render which is unsupported. To ensure revalidation is performed consistently it must always happen outside of renders and cached functions. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E7",enumerable:!1,configurable:!0});switch(e.type){case"cache":case"private-cache":throw Object.defineProperty(Error(`Route ${c.route} used "${b}" inside a "use cache" which is unsupported. To ensure revalidation is performed consistently it must always happen outside of renders and cached functions. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E181",enumerable:!1,configurable:!0});case"unstable-cache":throw Object.defineProperty(Error(`Route ${c.route} used "${b}" inside a function cached with "unstable_cache(...)" which is unsupported. To ensure revalidation is performed consistently it must always happen outside of renders and cached functions. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E306",enumerable:!1,configurable:!0});case"prerender":case"prerender-runtime":let a=Object.defineProperty(Error(`Route ${c.route} used ${b} without first calling \`await connection()\`.`),"__NEXT_ERROR_CODE",{value:"E406",enumerable:!1,configurable:!0});return(0,d.abortAndThrowOnSynchronousRequestDataAccess)(c.route,b,a,e);case"prerender-client":throw Object.defineProperty(new j.InvariantError(`${b} must not be used within a client component. Next.js should be preventing ${b} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0});case"prerender-ppr":return(0,d.postponeWithTracking)(c.route,b,e.dynamicTracking);case"prerender-legacy":e.revalidate=0;let f=Object.defineProperty(new i.DynamicServerError(`Route ${c.route} couldn't be rendered statically because it used \`${b}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw c.dynamicUsageDescription=b,c.dynamicUsageStack=f.stack,f}}for(let b of(c.pendingRevalidatedTags||(c.pendingRevalidatedTags=[]),a))c.pendingRevalidatedTags.includes(b)||c.pendingRevalidatedTags.push(b);c.pathWasRevalidated=!0}},86658:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{NEXT_PATCH_SYMBOL:function(){return n},createPatchedFetcher:function(){return t},patchFetch:function(){return u},validateRevalidate:function(){return o},validateTags:function(){return p}});let d=c(12442),e=c(53072),f=c(65406),g=c(13786),h=c(91275),i=c(72135),j=c(63033),k=c(39472),l=c(59577),m=c(57208),n=Symbol.for("next-patch");function o(a,b){try{let c;if(!1===a)c=f.INFINITE_CACHE;else if("number"==typeof a&&!isNaN(a)&&a>-1)c=a;else if(void 0!==a)throw Object.defineProperty(Error(`Invalid revalidate value "${a}" on "${b}", must be a non-negative number or false`),"__NEXT_ERROR_CODE",{value:"E179",enumerable:!1,configurable:!0});return c}catch(a){if(a instanceof Error&&a.message.includes("Invalid revalidate"))throw a;return}}function p(a,b){let c=[],d=[];for(let e=0;e<a.length;e++){let g=a[e];if("string"!=typeof g?d.push({tag:g,reason:"invalid type, must be a string"}):g.length>f.NEXT_CACHE_TAG_MAX_LENGTH?d.push({tag:g,reason:`exceeded max length of ${f.NEXT_CACHE_TAG_MAX_LENGTH}`}):c.push(g),c.length>f.NEXT_CACHE_TAG_MAX_ITEMS){console.warn(`Warning: exceeded max tag count for ${b}, dropped tags:`,a.slice(e).join(", "));break}}if(d.length>0)for(let{tag:a,reason:c}of(console.warn(`Warning: invalid tags passed to ${b}: `),d))console.log(`tag: "${a}" ${c}`);return c}function q(a,b){a.shouldTrackFetchMetrics&&(a.fetchMetrics??=[],a.fetchMetrics.push({...b,end:performance.timeOrigin+performance.now(),idx:a.nextFetchId||0}))}async function r(a,b,c,d,e,f){let g=await a.arrayBuffer(),h={headers:Object.fromEntries(a.headers.entries()),body:Buffer.from(g).toString("base64"),status:a.status,url:a.url};return c&&await d.set(b,{kind:k.CachedRouteKind.FETCH,data:h,revalidate:e},c),await f(),new Response(g,{headers:a.headers,status:a.status,statusText:a.statusText})}async function s(a,b,c,d,e,f,g,h,i){let[j,l]=(0,m.cloneResponse)(b),n=j.arrayBuffer().then(async a=>{let b=Buffer.from(a),h={headers:Object.fromEntries(j.headers.entries()),body:b.toString("base64"),status:j.status,url:j.url};null==f||f.set(c,h),d&&await e.set(c,{kind:k.CachedRouteKind.FETCH,data:h,revalidate:g},d)}).catch(a=>console.warn("Failed to set fetch cache",h,a)).finally(i),o=`cache-set-${c}`;return a.pendingRevalidates??={},o in a.pendingRevalidates&&await a.pendingRevalidates[o],a.pendingRevalidates[o]=n.finally(()=>{var b;(null==(b=a.pendingRevalidates)?void 0:b[o])&&delete a.pendingRevalidates[o]}),l}function t(a,{workAsyncStorage:b,workUnitAsyncStorage:c}){let i=async function(i,n){var t,u;let v;try{(v=new URL(i instanceof Request?i.url:i)).username="",v.password=""}catch{v=void 0}let w=(null==v?void 0:v.href)??"",x=(null==n||null==(t=n.method)?void 0:t.toUpperCase())||"GET",y=(null==n||null==(u=n.next)?void 0:u.internal)===!0,z="1"===process.env.NEXT_OTEL_FETCH_DISABLED,A=y?void 0:performance.timeOrigin+performance.now(),B=b.getStore(),C=c.getStore(),D=C?(0,j.getCacheSignal)(C):null;D&&D.beginRead();let E=(0,e.getTracer)().trace(y?d.NextNodeServerSpan.internalFetch:d.AppRenderSpan.fetch,{hideSpan:z,kind:e.SpanKind.CLIENT,spanName:["fetch",x,w].filter(Boolean).join(" "),attributes:{"http.url":w,"http.method":x,"net.peer.name":null==v?void 0:v.hostname,"net.peer.port":(null==v?void 0:v.port)||void 0}},async()=>{var b;let c,d,e,j,t,u;if(y||!B||B.isDraftMode)return a(i,n);let v=i&&"object"==typeof i&&"string"==typeof i.method,x=a=>(null==n?void 0:n[a])||(v?i[a]:null),z=a=>{var b,c,d;return void 0!==(null==n||null==(b=n.next)?void 0:b[a])?null==n||null==(c=n.next)?void 0:c[a]:v?null==(d=i.next)?void 0:d[a]:void 0},E=z("revalidate"),F=E,G=p(z("tags")||[],`fetch ${i.toString()}`);if(C)switch(C.type){case"prerender":case"prerender-runtime":case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"cache":case"private-cache":c=C}if(c&&Array.isArray(G)){let a=c.tags??(c.tags=[]);for(let b of G)a.includes(b)||a.push(b)}let H=null==C?void 0:C.implicitTags,I=B.fetchCache;C&&"unstable-cache"===C.type&&(I="force-no-store");let J=!!B.isUnstableNoStore,K=x("cache"),L="";"string"==typeof K&&void 0!==F&&("force-cache"===K&&0===F||"no-store"===K&&(F>0||!1===F))&&(d=`Specified "cache: ${K}" and "revalidate: ${F}", only one should be specified.`,K=void 0,F=void 0);let M="no-cache"===K||"no-store"===K||"force-no-store"===I||"only-no-store"===I,N=!I&&!K&&!F&&B.forceDynamic;"force-cache"===K&&void 0===F?F=!1:(M||N)&&(F=0),("no-cache"===K||"no-store"===K)&&(L=`cache: ${K}`),u=o(F,B.route);let O=x("headers"),P="function"==typeof(null==O?void 0:O.get)?O:new Headers(O||{}),Q=P.get("authorization")||P.get("cookie"),R=!["get","head"].includes((null==(b=x("method"))?void 0:b.toLowerCase())||"get"),S=void 0==I&&(void 0==K||"default"===K)&&void 0==F,T=!!((Q||R)&&(null==c?void 0:c.revalidate)===0),U=!1;if(!T&&S&&(B.isBuildTimePrerendering?U=!0:T=!0),S&&void 0!==C)switch(C.type){case"prerender":case"prerender-runtime":case"prerender-client":return D&&(D.endRead(),D=null),(0,h.makeHangingPromise)(C.renderSignal,B.route,"fetch()")}switch(I){case"force-no-store":L="fetchCache = force-no-store";break;case"only-no-store":if("force-cache"===K||void 0!==u&&u>0)throw Object.defineProperty(Error(`cache: 'force-cache' used on fetch for ${w} with 'export const fetchCache = 'only-no-store'`),"__NEXT_ERROR_CODE",{value:"E448",enumerable:!1,configurable:!0});L="fetchCache = only-no-store";break;case"only-cache":if("no-store"===K)throw Object.defineProperty(Error(`cache: 'no-store' used on fetch for ${w} with 'export const fetchCache = 'only-cache'`),"__NEXT_ERROR_CODE",{value:"E521",enumerable:!1,configurable:!0});break;case"force-cache":(void 0===F||0===F)&&(L="fetchCache = force-cache",u=f.INFINITE_CACHE)}if(void 0===u?"default-cache"!==I||J?"default-no-store"===I?(u=0,L="fetchCache = default-no-store"):J?(u=0,L="noStore call"):T?(u=0,L="auto no cache"):(L="auto cache",u=c?c.revalidate:f.INFINITE_CACHE):(u=f.INFINITE_CACHE,L="fetchCache = default-cache"):L||(L=`revalidate: ${u}`),!(B.forceStatic&&0===u)&&!T&&c&&u<c.revalidate){if(0===u){if(C)switch(C.type){case"prerender":case"prerender-client":case"prerender-runtime":return D&&(D.endRead(),D=null),(0,h.makeHangingPromise)(C.renderSignal,B.route,"fetch()")}(0,g.markCurrentScopeAsDynamic)(B,C,`revalidate: 0 fetch ${i} ${B.route}`)}c&&E===u&&(c.revalidate=u)}let V="number"==typeof u&&u>0,{incrementalCache:W}=B,X=!1;if(C)switch(C.type){case"request":case"cache":case"private-cache":X=C.isHmrRefresh??!1,j=C.serverComponentsHmrCache}if(W&&(V||j))try{e=await W.generateCacheKey(w,v?i:n)}catch(a){console.error("Failed to generate cache key for",i)}let Y=B.nextFetchId??1;B.nextFetchId=Y+1;let Z=()=>{},$=async(b,c)=>{let g=["cache","credentials","headers","integrity","keepalive","method","mode","redirect","referrer","referrerPolicy","window","duplex",...b?[]:["signal"]];if(v){let a=i,b={body:a._ogBody||a.body};for(let c of g)b[c]=a[c];i=new Request(a.url,b)}else if(n){let{_ogBody:a,body:c,signal:d,...e}=n;n={...e,body:a||c,signal:b?void 0:d}}let h={...n,next:{...null==n?void 0:n.next,fetchType:"origin",fetchIdx:Y}};return a(i,h).then(async a=>{if(!b&&A&&q(B,{start:A,url:w,cacheReason:c||L,cacheStatus:0===u||c?"skip":"miss",cacheWarning:d,status:a.status,method:h.method||"GET"}),200===a.status&&W&&e&&(V||j)){let b=u>=f.INFINITE_CACHE?f.CACHE_ONE_YEAR:u,c=V?{fetchCache:!0,fetchUrl:w,fetchIdx:Y,tags:G,isImplicitBuildTimeCache:U}:void 0;switch(null==C?void 0:C.type){case"prerender":case"prerender-client":case"prerender-runtime":return r(a,e,c,W,b,Z);case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":case void 0:return s(B,a,e,c,W,j,b,i,Z)}}return await Z(),a}).catch(a=>{throw Z(),a})},_=!1,aa=!1;if(e&&W){let a;if(X&&j&&(a=j.get(e),aa=!0),V&&!a){Z=await W.lock(e);let b=B.isOnDemandRevalidate?null:await W.get(e,{kind:k.IncrementalCacheKind.FETCH,revalidate:u,fetchUrl:w,fetchIdx:Y,tags:G,softTags:null==H?void 0:H.tags});if(S&&C)switch(C.type){case"prerender":case"prerender-client":case"prerender-runtime":await (0,l.waitAtLeastOneReactRenderTask)()}if(b?await Z():t="cache-control: no-cache (hard refresh)",(null==b?void 0:b.value)&&b.value.kind===k.CachedRouteKind.FETCH)if(B.isRevalidate&&b.isStale)_=!0;else{if(b.isStale&&(B.pendingRevalidates??={},!B.pendingRevalidates[e])){let a=$(!0).then(async a=>({body:await a.arrayBuffer(),headers:a.headers,status:a.status,statusText:a.statusText})).finally(()=>{B.pendingRevalidates??={},delete B.pendingRevalidates[e||""]});a.catch(console.error),B.pendingRevalidates[e]=a}a=b.value.data}}if(a){A&&q(B,{start:A,url:w,cacheReason:L,cacheStatus:aa?"hmr":"hit",cacheWarning:d,status:a.status||200,method:(null==n?void 0:n.method)||"GET"});let b=new Response(Buffer.from(a.body,"base64"),{headers:a.headers,status:a.status});return Object.defineProperty(b,"url",{value:a.url}),b}}if(B.isStaticGeneration&&n&&"object"==typeof n){let{cache:a}=n;if("no-store"===a){if(C)switch(C.type){case"prerender":case"prerender-client":case"prerender-runtime":return D&&(D.endRead(),D=null),(0,h.makeHangingPromise)(C.renderSignal,B.route,"fetch()")}(0,g.markCurrentScopeAsDynamic)(B,C,`no-store fetch ${i} ${B.route}`)}let b="next"in n,{next:d={}}=n;if("number"==typeof d.revalidate&&c&&d.revalidate<c.revalidate){if(0===d.revalidate){if(C)switch(C.type){case"prerender":case"prerender-client":case"prerender-runtime":return(0,h.makeHangingPromise)(C.renderSignal,B.route,"fetch()")}(0,g.markCurrentScopeAsDynamic)(B,C,`revalidate: 0 fetch ${i} ${B.route}`)}B.forceStatic&&0===d.revalidate||(c.revalidate=d.revalidate)}b&&delete n.next}if(!e||!_)return $(!1,t);{let a=e;B.pendingRevalidates??={};let b=B.pendingRevalidates[a];if(b){let a=await b;return new Response(a.body,{headers:a.headers,status:a.status,statusText:a.statusText})}let c=$(!0,t).then(m.cloneResponse);return(b=c.then(async a=>{let b=a[0];return{body:await b.arrayBuffer(),headers:b.headers,status:b.status,statusText:b.statusText}}).finally(()=>{var b;(null==(b=B.pendingRevalidates)?void 0:b[a])&&delete B.pendingRevalidates[a]})).catch(()=>{}),B.pendingRevalidates[a]=b,c.then(a=>a[1])}});if(D)try{return await E}finally{D&&D.endRead()}return E};return i.__nextPatched=!0,i.__nextGetStaticStore=()=>b,i._nextOriginalFetch=a,globalThis[n]=!0,Object.defineProperty(i,"name",{value:"fetch",writable:!1}),i}function u(a){if(!0===globalThis[n])return;let b=(0,i.createDedupeFetch)(globalThis.fetch);globalThis.fetch=t(b,a)}},86677:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]])},86691:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]])},89766:(a,b,c)=>{"use strict";a.exports=c(61031).vendored.contexts.RouterContext},97825:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=3371,exports.ids=[3371],exports.modules={2978:(a,b,c)=>{Promise.resolve().then(c.bind(c,69187))},18151:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,29723,23)),Promise.resolve().then(c.t.bind(c,31706,23)),Promise.resolve().then(c.t.bind(c,75324,23)),Promise.resolve().then(c.t.bind(c,20227,23)),Promise.resolve().then(c.t.bind(c,2931,23)),Promise.resolve().then(c.t.bind(c,17531,23)),Promise.resolve().then(c.t.bind(c,69357,23)),Promise.resolve().then(c.t.bind(c,69442,23)),Promise.resolve().then(c.t.bind(c,99875,23))},18421:(a,b,c)=>{var d={"./en.json":[50920,920],"./zh.json":[86113,6113]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=18421,a.exports=e},21130:(a,b,c)=>{Promise.resolve().then(c.bind(c,58857))},21865:(a,b,c)=>{"use strict";c.d(b,{HB:()=>e,JK:()=>h,XQ:()=>g,bN:()=>i,vh:()=>f});var d=c(99582);function e(a){let b=function(a){let b=process.env.NEXTAUTH_URL||"http://localhost:8637";return{authority:a.issuer,client_id:a.clientId,redirect_uri:`${b}/login/callback`,post_logout_redirect_uri:`${b}/login`,response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,silent_redirect_uri:`${b}/login/silent-refresh`,accessTokenExpiringNotificationTimeInSeconds:60,userStore:void 0,extraQueryParams:{company:a.companyUuid}}}(a);return new d.$5(b)}function f(a){}function g(){return null}function h(){}function i(a){return{sub:a.profile.sub,email:a.profile.email,name:a.profile.name,picture:a.profile.picture,accessToken:a.access_token,refreshToken:a.refresh_token,expiresAt:a.expires_at,idToken:a.id_token}}},32376:()=>{},33367:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(10948);let e=async a=>[{type:"image/x-icon",sizes:"256x256",url:(0,d.fillMetadataSegment)(".",await a.params,"favicon.ico")+""}]},35198:(a,b,c)=>{"use strict";c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},40340:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k,metadata:()=>j});var d=c(10023),e=c(28103),f=c.n(e),g=c(85355),h=c.n(g),i=c(69187);c(32376);let j={title:{default:"Chorus",template:"%s | Chorus"},description:"AI Agent & Human collaboration platform for the AI-Driven Development Lifecycle",openGraph:{title:"Chorus",description:"AI Agent & Human collaboration platform for the AI-Driven Development Lifecycle",type:"website",siteName:"Chorus"}};function k({children:a}){return(0,d.jsx)("html",{lang:"en",children:(0,d.jsx)("body",{className:`${f().variable} ${h().variable} antialiased`,children:(0,d.jsx)(i.LocaleProvider,{children:a})})})}},42424:(a,b,c)=>{"use strict";c.d(b,{$:()=>i});var d=c(10837);c(21968);var e=c(35973),f=c(11156),g=c(96307);let h=(0,e.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function i({className:a,variant:b="default",size:c="default",asChild:e=!1,...i}){let j=e?f.bL:"button";return(0,d.jsx)(j,{"data-slot":"button","data-variant":b,"data-size":c,className:(0,g.cn)(h({variant:b,size:c,className:a})),...i})}},48415:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,16885,23)),Promise.resolve().then(c.t.bind(c,30892,23)),Promise.resolve().then(c.t.bind(c,89410,23)),Promise.resolve().then(c.t.bind(c,99349,23)),Promise.resolve().then(c.t.bind(c,41105,23)),Promise.resolve().then(c.t.bind(c,89065,23)),Promise.resolve().then(c.t.bind(c,403,23)),Promise.resolve().then(c.t.bind(c,33532,23)),Promise.resolve().then(c.bind(c,41905))},54722:(a,b,c)=>{"use strict";c.d(b,{q:()=>g});let d={debug:0,info:1,warn:2,error:3},e=process.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function f(a){return d[a]>=d[e]}let g={debug:(a,...b)=>{f("debug")&&console.debug(`[Chorus] ${a}`,...b)},info:(a,...b)=>{f("info")&&console.info(`[Chorus] ${a}`,...b)},warn:(a,...b)=>{f("warn")&&console.warn(`[Chorus] ${a}`,...b)},error:(a,...b)=>{f("error")&&console.error(`[Chorus] ${a}`,...b)}}},58857:(a,b,c)=>{"use strict";c.d(b,{LocaleProvider:()=>j,Y:()=>i});var d=c(10837),e=c(21968),f=c(13256),g=c(97553);c(54722);let h=(0,e.createContext)(null);function i(){let a=(0,e.useContext)(h);if(!a)throw Error("useLocale must be used within LocaleProvider");return a}function j({children:a}){let[b,c]=(0,e.useState)(g.q),[i,j]=(0,e.useState)(null),[k,l]=(0,e.useState)(!1),m=(0,e.useCallback)(a=>{c(a),localStorage.setItem("chorus-locale",a),document.cookie=`chorus-locale=${a};path=/;max-age=31536000;SameSite=Lax`,document.documentElement.lang=a},[]);return k&&i?(0,d.jsx)(h.Provider,{value:{locale:b,setLocale:m},children:(0,d.jsx)(f.A,{locale:b,messages:i,children:a})}):null}},69187:(a,b,c)=>{"use strict";c.d(b,{LocaleProvider:()=>e});var d=c(37143);(0,d.registerClientReference)(function(){throw Error("Attempted to call useLocale() from the server but useLocale is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/dev/ai-pm/src/contexts/locale-context.tsx","useLocale");let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call LocaleProvider() from the server but LocaleProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/dev/ai-pm/src/contexts/locale-context.tsx","LocaleProvider")},93524:(a,b,c)=>{"use strict";c.d(b,{OX:()=>l,aK:()=>k,dv:()=>f,hj:()=>g,ri:()=>n,tm:()=>m,vN:()=>i,w9:()=>h});var d=c(21865),e=c(54722);function f(){return null}function g(a){return(0,d.vh)(a),(0,d.HB)(a)}function h(){}async function i(){let a=f();if(!a)return null;try{return await a.getUser()}catch{return null}}async function j(){let a=await i();return a?a.access_token:null}async function k(a,b){try{return(await fetch("/api/auth/sync-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:a,refreshToken:b})})).ok}catch{return e.q.error("Failed to sync token to cookie"),!1}}async function l(){try{await fetch("/api/keepalive",{method:"GET",credentials:"same-origin",cache:"no-store"})}catch{}}async function m(a,b={}){let c=await j(),d=new Headers(b.headers);c&&d.set("Authorization",`Bearer ${c}`);let e=await fetch(a,{...b,headers:d});if(401===e.status)if(f());else try{if((await fetch("/api/auth/refresh",{method:"POST"})).ok)return d.delete("Authorization"),fetch(a,{...b,headers:d})}catch{}return e}async function n(){try{await fetch("/api/auth/logout",{method:"POST"})}catch{}let a=f();if(a)try{await a.removeUser()}catch{}h(),(0,d.JK)()}},96307:(a,b,c)=>{"use strict";c.d(b,{cn:()=>f});var d=c(25335),e=c(30393);function f(...a){return(0,e.QP)((0,d.$)(a))}},97553:(a,b,c)=>{"use strict";c.d(b,{AL:()=>g,IB:()=>d,L$:()=>f,q:()=>e});let d=["en","zh"],e="en",f={en:"English",zh:"中文"};function g(){if("undefined"==typeof navigator)return e;let a=navigator.language.split("-")[0];return d.includes(a)?a:e}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=345,exports.ids=[345],exports.modules={2623:(a,b,c)=>{c.d(b,{h:()=>w});var d=c(10837),e=c(21968),f=c(9222),g=c(1007),h=c(76549),i=c(86460),j=c(56149),k=c(9810),l=c(55775),m=c(42424),n=c(2852),o=c(11568),p=c(10297),q=c(74113),r=c(96307),s=c(42377);let t=(0,s.createServerReference)("00423656837d53af20d1cd96b1368bad35b5a06679",s.callServer,void 0,s.findSourceMapURL,"getProjectsAndGroupsAction");s.callServer,s.findSourceMapURL;let u=(0,s.createServerReference)("605aee24f55397387550bcc6d5f577568c83fff746",s.callServer,void 0,s.findSourceMapURL,"moveIdeaAction");var v=c(54722);function w({open:a,onOpenChange:b,ideaUuid:c,projectUuid:s,onMoved:w}){let x=(0,f.c)("ideas"),y=(0,f.c)("common"),z=(0,g.useRouter)(),[A,B]=(0,e.useState)([]),[C,D]=(0,e.useState)(!1),[E,F]=(0,e.useState)(null),[G,H]=(0,e.useState)(!1),I=(()=>{if(!E)return null;for(let a of A){let b=a.projects.find(a=>a.uuid===E);if(b)return b.name}return null})(),[J,K]=(0,e.useState)(null),[L,M]=(0,e.useState)(!1),[N,O]=(0,e.useState)(null),[P,Q]=(0,e.useState)(!1),[R,S]=(0,e.useState)(null);(0,e.useRef)(0);let T=(0,e.useCallback)(a=>{a&&a.addEventListener("wheel",a=>a.stopPropagation(),{passive:!0})},[]);(0,e.useCallback)(async()=>{F(null),K(null),O(null),S(null),D(!0);try{let a=await t();if(a.success){let{projects:b,groups:c}=a.data,d=b.filter(a=>a.uuid!==s).map(a=>({uuid:a.uuid,name:a.name,groupUuid:a.groupUuid})),e=new Map;for(let a of c)e.set(a.uuid,a.name);let f=new Map,g=[];for(let a of d)a.groupUuid&&e.has(a.groupUuid)?(f.has(a.groupUuid)||f.set(a.groupUuid,{uuid:a.groupUuid,name:e.get(a.groupUuid),projects:[]}),f.get(a.groupUuid).projects.push({uuid:a.uuid,name:a.name})):g.push({uuid:a.uuid,name:a.name});let h=[...f.values()];g.length>0&&h.push({uuid:"ungrouped",name:x("ungrouped"),projects:g}),B(h)}}catch(a){v.q.error("Failed to load projects for move dialog:",a),B([])}D(!1)},[s,x]);let U=async()=>{if(E&&J&&!P){Q(!0),S(null);try{let a=await u(c,E);if(a.success){let d=a.moved;h.oR.success(x("moveDialog.successToast",{...d}),{action:{label:x("moveDialog.viewMovedIdea"),onClick:()=>{z.push(`/projects/${E}/dashboard?panel=${c}&tab=overview`)}}}),b(!1),z.refresh(),w(d)}else S(x("moveDialog.error",{message:a.error||x("moveFailed")}))}catch(a){S(x("moveDialog.error",{message:a instanceof Error?a.message:x("moveFailed")}))}Q(!1)}};return(0,d.jsx)(o.lG,{open:a,onOpenChange:b,children:(0,d.jsxs)(o.Cf,{children:[(0,d.jsxs)(o.c7,{children:[(0,d.jsx)(o.L3,{children:x("moveDialog.title")}),(0,d.jsx)(o.rr,{children:x("moveDialog.description")})]}),(0,d.jsxs)("div",{className:"space-y-3 pt-1",children:[(0,d.jsx)(n.J,{htmlFor:"move-target-project",className:"text-[13px] font-medium text-[#2C2C2C]",children:x("moveDialog.targetProjectLabel")}),C?(0,d.jsx)("div",{className:"flex items-center justify-center h-10 border border-[#E5E0D8] rounded-md",children:(0,d.jsx)(i.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):(0,d.jsxs)(q.AM,{open:G,onOpenChange:H,children:[(0,d.jsx)(q.Wv,{asChild:!0,children:(0,d.jsxs)(m.$,{id:"move-target-project",variant:"outline",role:"combobox","aria-expanded":G,className:(0,r.cn)("w-full justify-between border-[#E5E0D8] font-normal",!I&&"text-[#9A9A9A]"),children:[I??x("moveDialog.targetProjectPlaceholder"),(0,d.jsx)(j.A,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,d.jsx)(q.hl,{ref:T,className:"w-[--radix-popover-trigger-width] p-0 pointer-events-auto",align:"start",children:(0,d.jsxs)(p.uB,{children:[(0,d.jsx)(p.G7,{placeholder:x("moveDialog.searchProjects")}),(0,d.jsxs)(p.oI,{children:[(0,d.jsx)(p.xL,{children:x("noProjectsFound")}),A.map(a=>(0,d.jsx)(p.L$,{heading:a.name,children:a.projects.map(b=>(0,d.jsxs)(p.h_,{value:`${b.name} ${a.name}`,onSelect:()=>{F(b.uuid),H(!1)},children:[(0,d.jsx)(k.A,{className:(0,r.cn)("mr-2 h-4 w-4",E===b.uuid?"opacity-100":"opacity-0")}),b.name]},b.uuid))},a.uuid))]})]})})]}),E&&(0,d.jsx)("div",{role:"status","aria-live":"polite",className:"rounded-lg border border-[#E5E0D8] bg-[#FAF8F4] p-3 text-[13px] text-[#2C2C2C]",children:L?(0,d.jsxs)("div",{className:"flex items-center gap-2 text-[#6B6B6B]",children:[(0,d.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}),(0,d.jsx)("span",{children:x("moveDialog.previewLoading")})]}):N?(0,d.jsxs)("div",{className:"flex items-start gap-2 text-destructive",children:[(0,d.jsx)(l.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{children:N})]}):J?(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)("p",{children:x("moveDialog.previewSummary",{...J})}),(0,d.jsx)("p",{className:"text-[12px] text-[#9A9A9A]",children:x("moveDialog.previewWarning")})]}):null}),R&&(0,d.jsx)("p",{className:"text-xs text-destructive",role:"alert",children:R})]}),(0,d.jsxs)("div",{className:"flex justify-end gap-3 pt-2",children:[(0,d.jsx)(m.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:()=>b(!1),disabled:P,children:y("cancel")}),(0,d.jsx)(m.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:U,disabled:!E||!J||P||L,children:P?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i.A,{className:"mr-2 h-4 w-4 animate-spin"}),x("moving")]}):x("moveDialog.confirm")})]})]})})}},4284:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{a1:()=>g});var e=c(71255);c(62729);var f=a([e]);async function g(a){let b=await e.z.projectGroup.findMany({where:{companyUuid:a},orderBy:{createdAt:"asc"}}),c=b.map(a=>a.uuid),d=c.length>0?await e.z.project.groupBy({by:["groupUuid"],where:{companyUuid:a,groupUuid:{in:c}},_count:{_all:!0}}):[],f=new Map(d.map(a=>[a.groupUuid,a._count._all])),g=b.map(a=>({uuid:a.uuid,name:a.name,description:a.description,projectCount:f.get(a.uuid)??0,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()})),h=await e.z.project.count({where:{companyUuid:a,groupUuid:null}});return{groups:g,total:b.length,ungroupedCount:h}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},5797:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]])},10901:(a,b,c)=>{c.d(b,{E:()=>f});var d=c(10837),e=c(96307);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"skeleton",className:(0,e.cn)("bg-accent animate-pulse rounded-md",a),...b})}},14856:(a,b,c)=>{c.d(b,{Z:()=>e});var d=c(42377);let e=(0,d.createServerReference)("6047e5f9e0b0b8ab34e4ec087a5b7c646953446365",d.callServer,void 0,d.findSourceMapURL,"deleteIdeaAction")},21605:(a,b,c)=>{c.d(b,{x:()=>e});var d=c(42377);let e=(0,d.createServerReference)("400cda1396142e823c70236309129832b2bb93f1dd",d.callServer,void 0,d.findSourceMapURL,"getIdeaActivitiesAction")},22110:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{e1:()=>o,em:()=>n,yu:()=>p,zS:()=>m});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(23733),i=c(71255),j=c(97307),k=c(12217),l=a([g,h,i]);async function m(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.t8)({companyUuid:b.companyUuid,ideaUuid:a});return{success:!0,data:c}}catch(a){return j.default.error({err:a},"Failed to get elaboration"),{success:!1,error:a instanceof Error?a.message:"Failed to get elaboration"}}}async function n(a,b,c){let d=await (0,g.d)();if(!d)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.Rm)({companyUuid:d.companyUuid,ideaUuid:a,roundUuid:b,actorUuid:d.actorUuid,actorType:d.type,answers:c}),g=await i.z.idea.findFirst({where:{uuid:a,companyUuid:d.companyUuid}});return g&&((0,f.revalidatePath)(`/projects/${g.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${g.projectUuid}/ideas`)),{success:!0,data:e}}catch(a){return j.default.error({err:a},"Failed to submit elaboration answers"),{success:!1,error:a instanceof Error?a.message:"Failed to submit answers"}}}async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};if("user"!==b.type&&"super_admin"!==b.type)return{success:!1,error:"Only users can verify elaboration"};try{let c=await (0,h.A7)({companyUuid:b.companyUuid,ideaUuid:a,actorUuid:b.actorUuid,actorType:b.type}),d=await i.z.idea.findFirst({where:{uuid:a,companyUuid:b.companyUuid}});return d&&((0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas`)),{success:!0,data:c}}catch(a){return j.default.error({err:a},"Failed to verify elaboration"),{success:!1,error:a instanceof Error?a.message:"Failed to verify elaboration"}}}async function p(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{await (0,h.Y_)({companyUuid:c.companyUuid,ideaUuid:a,actorUuid:c.actorUuid,actorType:c.type,reason:b});let d=await i.z.idea.findFirst({where:{uuid:a,companyUuid:c.companyUuid}});return d&&((0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas`)),{success:!0}}catch(a){return j.default.error({err:a},"Failed to skip elaboration"),{success:!1,error:a instanceof Error?a.message:"Failed to skip elaboration"}}}[g,h,i]=l.then?(await l)():l,(0,k.D)([m,n,o,p]),(0,e.A)(m,"40ce810a8ca47feb397612ce1c7ecbe14d1af7c174",null),(0,e.A)(n,"70f53da122c27dd0a56d3ad8b1b2e4a6e9c956822c",null),(0,e.A)(o,"4068d7c2e443443c634efddd8eba7ba864eb9a1436",null),(0,e.A)(p,"605495c490084c9c830a5fe1db3cca4e56e5277160",null),d()}catch(a){d(a)}})},23157:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Ax:()=>p,G3:()=>t,M$:()=>q,UD:()=>s,ZL:()=>r,qN:()=>o});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(61212),i=c(28774),j=c(61076),k=c(67738),l=c(97307),m=c(12217),n=a([g,h,i,j,k]);async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.MY)(b.companyUuid,a);if(!c)return{success:!1,error:"Idea not found"};if("elaborated"===c.status)return{success:!1,error:"Idea is not available for assignment"};return await (0,h.Xo)({ideaUuid:a,companyUuid:b.companyUuid,assigneeType:b.type,assigneeUuid:b.actorUuid,assignedByUuid:b.actorUuid}),await (0,k.createActivity)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"idea",targetUuid:a,actorType:b.type,actorUuid:b.actorUuid,action:"assigned",value:{assigneeType:b.type,assigneeUuid:b.actorUuid}}),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas`),{success:!0}}catch(a){return l.default.error({err:a},"Failed to claim idea"),{success:!1,error:"Failed to claim idea"}}}async function p(a,b,c){let d=await (0,g.d)();if(!d||"user"!==d.type)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.MY)(d.companyUuid,a);if(!e)return{success:!1,error:"Idea not found"};if("elaborated"===e.status)return{success:!1,error:"Idea is not available for assignment"};return await (0,h.Xo)({ideaUuid:a,companyUuid:d.companyUuid,assigneeType:"agent",assigneeUuid:b,assignedByUuid:d.actorUuid,instanceUuid:c??void 0}),await (0,k.createActivity)({companyUuid:d.companyUuid,projectUuid:e.projectUuid,targetType:"idea",targetUuid:a,actorType:"user",actorUuid:d.actorUuid,action:"assigned",value:{assigneeType:"agent",assigneeUuid:b,...c?{instanceUuid:c}:{}}}),(0,f.revalidatePath)(`/projects/${e.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${e.projectUuid}/ideas`),{success:!0}}catch(a){return l.default.error({err:a},"Failed to claim idea to agent"),{success:!1,error:"Failed to claim idea"}}}async function q(a,b){let c=await (0,g.d)();if(!c||"user"!==c.type)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.MY)(c.companyUuid,a);if(!d)return{success:!1,error:"Idea not found"};if("elaborated"===d.status)return{success:!1,error:"Idea is not available for assignment"};return await (0,h.Xo)({ideaUuid:a,companyUuid:c.companyUuid,assigneeType:"user",assigneeUuid:b,assignedByUuid:c.actorUuid}),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas`),{success:!0}}catch(a){return l.default.error({err:a},"Failed to claim idea to user"),{success:!1,error:"Failed to claim idea"}}}async function r(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.MY)(b.companyUuid,a);if(!c)return{success:!1,error:"Idea not found"};if("elaborated"===c.status)return{success:!1,error:"Idea cannot be released from current status"};return await (0,h.h_)(c.uuid),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas`),{success:!0}}catch(a){return l.default.error({err:a},"Failed to release idea"),{success:!1,error:"Failed to release idea"}}}async function s(){let a=await (0,g.d)();if(!a||"user"!==a.type)return{agents:[],users:[]};try{let[b,c]=await Promise.all([(0,i.ic)(a.companyUuid,"idea:write",a.actorUuid),(0,i.A8)(a.companyUuid)]);return{agents:b,users:c}}catch(a){return l.default.error({err:a},"Failed to get assignable agents"),{agents:[],users:[]}}}async function t(a){let b=await (0,g.d)();if(!b||"user"!==b.type)return{instances:[]};try{return{instances:(await (0,j._R)(b.companyUuid,a)).map(a=>({connectionUuid:a.uuid,agentInstanceUuid:a.agentInstanceUuid,host:a.host,cwd:a.cwd,effectiveStatus:a.effectiveStatus}))}}catch(a){return l.default.error({err:a},"Failed to get agent instances"),{instances:[]}}}[g,h,i,j,k]=n.then?(await n)():n,(0,m.D)([o,p,q,r,s,t]),(0,e.A)(o,"403c9443216a4f1eef9d6101ed01aff7b9140167fd",null),(0,e.A)(p,"7026a06f628dca22015d61b394daf2d85b8b5b923c",null),(0,e.A)(q,"60dab0269ee9248c8f083ea74c0edeb86627c626e5",null),(0,e.A)(r,"408a78aa45415e5b54f4a7437be793a4a713a88c33",null),(0,e.A)(s,"00e25dcfd0973eb848c09d7467227c3a499831fc31",null),(0,e.A)(t,"40a91f711f02008a0d8f89a422d87331c355e51b5c",null),d()}catch(a){d(a)}})},23733:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A7:()=>l,Rm:()=>k,Y_:()=>m,t8:()=>n});var e=c(71255),f=c(62729),g=c(85806),h=c(92633),i=a([e,g,h]);async function j(a,b,c){if(b.assigneeUuid===c)return!0;if("agent_instance"===b.assigneeType){let d=await (0,h.wo)(a,b.assigneeType,b.assigneeUuid);return null!==d&&d===c}return!1}async function k({companyUuid:a,ideaUuid:b,roundUuid:c,actorUuid:d,actorType:h,answers:i}){let j=c;if(!j){let c=await e.z.elaborationRound.findMany({where:{ideaUuid:b,companyUuid:a,status:"pending_answers"},select:{uuid:!0}});if(0===c.length)throw Error("no active round to answer");if(c.length>1)throw Error("multiple active rounds; specify roundUuid");j=c[0].uuid}let k=await e.z.elaborationRound.findFirst({where:{uuid:j,ideaUuid:b,companyUuid:a},include:{questions:!0}});if(!k)throw Error("Elaboration round not found");if("pending_answers"!==k.status)throw Error(`Round is '${k.status}', expected 'pending_answers'`);let l=new Date;for(let a of i){let b=k.questions.find(b=>b.questionId===a.questionId);if(!b)throw Error(`Question '${a.questionId}' not found in round`);if(null!==a.selectedOptionId){if(!b.options.find(b=>b.id===a.selectedOptionId))throw Error(`Invalid option '${a.selectedOptionId}' for question '${a.questionId}'`)}else if(!a.customText?.trim())throw Error(`Question '${a.questionId}': custom text is required when no option is selected`);await e.z.elaborationQuestion.update({where:{uuid:b.uuid},data:{selectedOptionId:a.selectedOptionId,customText:a.customText,answeredAt:l,answeredByType:h,answeredByUuid:d}})}let m=(await e.z.elaborationQuestion.findMany({where:{roundUuid:j}})).filter(a=>a.required).every(a=>null!==a.answeredAt),n=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});m&&(await e.z.elaborationRound.update({where:{uuid:j},data:{status:"answered"}}),n?.elaborationStatus!=="resolved"&&await e.z.idea.update({where:{uuid:b},data:{elaborationStatus:"validating"}})),await g.f0.createActivity({companyUuid:a,projectUuid:n.projectUuid,targetType:"idea",targetUuid:b,actorType:h,actorUuid:d,action:"elaboration_answered",value:{roundNumber:k.roundNumber,answeredCount:i.length}}),f.B.emitChange({companyUuid:a,projectUuid:n.projectUuid,entityType:"idea",entityUuid:b,action:"updated"});let p=await e.z.elaborationRound.findUnique({where:{uuid:j},include:{questions:!0}});return o(p)}async function l({companyUuid:a,ideaUuid:b,actorUuid:c,actorType:d}){let h=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});if(!h)throw Error("Idea not found");let i=await e.z.elaborationRound.findMany({where:{ideaUuid:b,companyUuid:a}});if(0===i.length)throw Error("Cannot resolve: the Idea has no elaboration rounds");let j=i.filter(a=>"pending_answers"===a.status);if(j.length>0)throw Error(`Cannot resolve: ${j.length} round(s) still have unanswered questions`);return await e.z.idea.update({where:{uuid:b},data:{status:"elaborated",elaborationStatus:"resolved"}}),await g.f0.createActivity({companyUuid:a,projectUuid:h.projectUuid,targetType:"idea",targetUuid:b,actorType:d,actorUuid:c,action:"elaboration_verified",value:{totalRounds:i.length}}),f.B.emitChange({companyUuid:a,projectUuid:h.projectUuid,entityType:"idea",entityUuid:b,action:"updated"}),n({companyUuid:a,ideaUuid:b})}async function m({companyUuid:a,ideaUuid:b,actorUuid:c,actorType:d,reason:h}){let i=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});if(!i)throw Error("Idea not found");if(!await j(a,i,c))throw Error("Only the assigned agent can skip elaboration");if("elaborating"!==i.status)throw Error(`Cannot skip elaboration from status '${i.status}'`);await e.z.idea.update({where:{uuid:b},data:{status:"elaborated",elaborationDepth:"minimal",elaborationStatus:"resolved"}}),await g.f0.createActivity({companyUuid:a,projectUuid:i.projectUuid,targetType:"idea",targetUuid:b,actorType:d,actorUuid:c,action:"elaboration_skipped",value:{reason:h}}),f.B.emitChange({companyUuid:a,projectUuid:i.projectUuid,entityType:"idea",entityUuid:b,action:"updated"})}async function n({companyUuid:a,ideaUuid:b}){let c=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});if(!c)throw Error("Idea not found");let d=await e.z.elaborationRound.findMany({where:{ideaUuid:b,companyUuid:a},include:{questions:!0},orderBy:{roundNumber:"asc"}}),f=d.flatMap(a=>a.questions),g=f.filter(a=>null!==a.answeredAt),h=d.filter(a=>"pending_answers"!==a.status),i=d.find(a=>"pending_answers"===a.status);return{ideaUuid:b,depth:c.elaborationDepth,status:c.elaborationStatus,rounds:d.map(o),summary:{totalQuestions:f.length,answeredQuestions:g.length,validatedRounds:h.length,pendingRound:i?.roundNumber||null}}}function o(a){return{uuid:a.uuid,roundNumber:a.roundNumber,status:a.status,isAppended:a.isAppended,createdBy:{type:a.createdByType,uuid:a.createdByUuid},validatedAt:a.validatedAt?.toISOString()||null,createdAt:a.createdAt.toISOString(),questions:a.questions.map(p)}}function p(a){return{uuid:a.uuid,questionId:a.questionId,text:a.text,category:a.category,options:a.options,required:a.required,answer:a.answeredAt?{selectedOptionId:a.selectedOptionId,customText:a.customText,answeredAt:a.answeredAt.toISOString(),answeredBy:{type:a.answeredByType,uuid:a.answeredByUuid}}:null,issue:a.issueType?{type:a.issueType,description:a.issueDescription||""}:null}}[e,g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},24364:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("arrow-right-left",[["path",{d:"m16 3 4 4-4 4",key:"1x1c3m"}],["path",{d:"M20 7H4",key:"zbl0bi"}],["path",{d:"m8 21-4-4 4-4",key:"h9nckh"}],["path",{d:"M4 17h16",key:"g4d7ey"}]])},26402:(a,b,c)=>{c.d(b,{o:()=>d});function d({ideaStatus:a,elaborationStatus:b,elaboration:c}){return!("elaborating"!==a||"resolved"===b||!c||0===c.rounds.length||c.rounds.some(a=>"pending_answers"===a.status))}},30259:(a,b,c)=>{c.a(a,async(a,b)=>{try{var d=c(71255),e=c(92633),f=c(61212),g=a([d,e,f]);[d,e,f]=g.then?(await g)():g,b()}catch(a){b(a)}})},31138:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{JQ:()=>o,Z$:()=>p,w$:()=>n,zK:()=>q});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(61212),i=c(97879),j=c(466),k=c(97307),l=c(12217),m=a([g,h,i,j]);async function n(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.i1)({companyUuid:b.companyUuid,projectUuid:a.projectUuid,title:a.title,content:a.content||null,attachments:a.attachments||null,createdByUuid:b.actorUuid});return(0,f.revalidatePath)(`/projects/${a.projectUuid}/ideas`),{success:!0,ideaUuid:c.uuid}}catch(a){return k.default.error({err:a},"Failed to create idea"),{success:!1,error:"Failed to create idea"}}}async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.JF)(a.ideaUuid,b.companyUuid,{title:a.title,content:a.content},{actorType:b.type,actorUuid:b.actorUuid});return(0,f.revalidatePath)(`/projects/${a.projectUuid}/ideas`),{success:!0,idea:c}}catch(a){return k.default.error({err:a},"Failed to update idea"),{success:!1,error:"Failed to update idea"}}}async function p(a,b){if(!await (0,g.d)())return{success:!1,error:"Unauthorized"};try{return await (0,h.Nm)(a),(0,f.revalidatePath)(`/projects/${b}/ideas`),{success:!0}}catch(a){return k.default.error({err:a},"Failed to delete idea"),{success:!1,error:"Failed to delete idea"}}}async function q(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let{ideas:c}=await (0,h.BB)({companyUuid:b.companyUuid,projectUuid:a,skip:0,take:1e3}),d=c.map(a=>a.uuid),[e,f]=await Promise.all([d.length>0?(0,i.e1)(b.companyUuid,d):Promise.resolve({usedIdeas:[]}),d.length>0?(0,j.uA)(b.companyUuid,"idea",d):Promise.resolve({})]),g=e.usedIdeas.map(a=>a.uuid),k={};for(let a of e.usedIdeas)k[a.uuid]=a.proposalUuid;let l=c.map(a=>({...a,commentCount:f[a.uuid]||0}));return{success:!0,data:{ideas:l,usedIdeaUuids:g,ideaProposalMap:k}}}catch(a){return k.default.error({err:a},"Failed to fetch ideas"),{success:!1,error:"Failed to fetch ideas"}}}[g,h,i,j]=m.then?(await m)():m,(0,l.D)([n,o,p,q]),(0,e.A)(n,"408c5f84fea2c0ae2f0d83aee87f6e6cfb4197e322",null),(0,e.A)(o,"40790b72c792d2c2fa46044fe0c82e0a49ee9ea155",null),(0,e.A)(p,"6047e5f9e0b0b8ab34e4ec087a5b7c646953446365",null),(0,e.A)(q,"4045c4fc8914df864a4ee17f3f630d9f2403c9a27b",null),d()}catch(a){d(a)}})},33501:(a,b,c)=>{c.d(b,{z:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40ce810a8ca47feb397612ce1c7ecbe14d1af7c174",d.callServer,void 0,d.findSourceMapURL,"getElaborationAction")},34964:(a,b,c)=>{c.d(b,{e:()=>e});var d=c(42377);let e=(0,d.createServerReference)("4068d7c2e443443c634efddd8eba7ba864eb9a1436",d.callServer,void 0,d.findSourceMapURL,"verifyElaborationAction")},49102:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},57644:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Qd:()=>r,U$:()=>w,UN:()=>u,WD:()=>y,co:()=>v,cq:()=>q,d1:()=>z,nR:()=>s,s$:()=>x,wm:()=>t,zS:()=>A});var e=c(2613);c(50785);var f=c(9259),g=c(61212),h=c(97879),i=c(53870),j=c(50530),k=c(33994),l=c(4284),m=c(23733),n=c(97307),o=c(12217),p=a([f,g,h,i,j,k,l,m]);async function q(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"Unauthorized"};let c=await (0,g.Zl)(b.companyUuid,a);return c?{success:!0,data:c}:{success:!1,error:"Not found"}}async function r(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"Unauthorized"};let c=await (0,j.gg)(b.companyUuid,a);return c?{success:!0,data:c}:{success:!1,error:"Not found"}}async function s(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,g.bY)(c.companyUuid,a,b,c.actorUuid,c.type);return{success:!0,moved:d.moved}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to move idea"}}}async function t(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,g.MY)(c.companyUuid,a);if(!d)return{success:!1,error:"Idea not found"};if(d.projectUuid===b)return{success:!1,error:"Idea is already in the target project"};let e=await (0,g.jJ)(c.companyUuid,a,b);return{success:!0,moved:e.moved}}catch(a){return n.default.error({err:a},"Failed to preview idea move"),{success:!1,error:a instanceof Error?a.message:"Failed to preview move"}}}async function u(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};let d=await (0,h.fS)(c.companyUuid,a,b);return{success:!0,data:d}}async function v(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};let{tasks:d}=await (0,j.Vk)({companyUuid:c.companyUuid,projectUuid:a,proposalUuids:[b],skip:0,take:100});return{success:!0,data:d}}async function w(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};let d=(await (0,h.fS)(c.companyUuid,a,b)).filter(a=>"approved"===a.status).map(a=>a.uuid),e=await (0,i.yZ)(c.companyUuid,d,"report");return e.sort((a,b)=>new Date(b.createdAt).getTime()-new Date(a.createdAt).getTime()),{success:!0,data:e}}async function x(){let a=await (0,f.d)();if(!a)return{success:!1,error:"Unauthorized"};let[{projects:b},{groups:c}]=await Promise.all([(0,k.hF)({companyUuid:a.companyUuid,skip:0,take:100}),(0,l.a1)(a.companyUuid)]);return{success:!0,data:{projects:b,groups:c}}}async function y(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,g.EZ)(a,b,c.companyUuid,{actorType:c.type,actorUuid:c.actorUuid});return{success:!0,data:d}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to set parent"}}}async function z(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"Unauthorized"};let{ideas:c,total:d}=await (0,g.BB)({companyUuid:b.companyUuid,projectUuid:a,skip:0,take:200});return{success:!0,data:c.map(a=>({uuid:a.uuid,title:a.title})),total:d,hasMore:d>c.length}}async function A(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,m.t8)({companyUuid:b.companyUuid,ideaUuid:a});return{success:!0,data:c}}catch(a){return n.default.error({err:a},"Failed to get elaboration"),{success:!1,error:a instanceof Error?a.message:"Failed to get elaboration"}}}[f,g,h,i,j,k,l,m]=p.then?(await p)():p,(0,o.D)([q,r,s,t,u,v,w,x,y,z,A]),(0,e.A)(q,"4085059a021f513673df0a86e5d2eac0b18866bb1f",null),(0,e.A)(r,"4074583a40eef70f09841db623a0680a154df5c78c",null),(0,e.A)(s,"605aee24f55397387550bcc6d5f577568c83fff746",null),(0,e.A)(t,"60f31de57b050278cc31df8aaff8a7e74ec2299c3f",null),(0,e.A)(u,"605a800c65218e49ee8880902b0205028b5e1fbecc",null),(0,e.A)(v,"60bdb88a48e978bacbfc4c5ff019e2a0f93acc53ca",null),(0,e.A)(w,"6036ce857944dd50df3f06692e1c2f3190c848641e",null),(0,e.A)(x,"00423656837d53af20d1cd96b1368bad35b5a06679",null),(0,e.A)(y,"607fa233df3a6f91be030c198b15022752cc1118be",null),(0,e.A)(z,"40bf3a7c038496a7b83f39c4cdfab08c0354b62923",null),(0,e.A)(A,"405fb7bd8b13cbdaa09691ee3ef4afc1a93a2c49a3",null),d()}catch(a){d(a)}})},73428:(a,b,c)=>{c.d(b,{R:()=>w});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(21790),i=c(49102),j=c(20447),k=c(67832),l=c(87461),m=c(9810),n=c(86460),o=c(42424),p=c(9994),q=c(82658),r=c(42377);let s=(0,r.createServerReference)("70f53da122c27dd0a56d3ad8b1b2e4a6e9c956822c",r.callServer,void 0,r.findSourceMapURL,"submitElaborationAnswersAction");var t=c(42087);let u="__other__",v={functional:"functional",non_functional:"nonFunctional",business_context:"businessContext",technical_context:"technicalContext",user_scenario:"userScenario",scope:"scope"};function w({ideaUuid:a,elaboration:b,onRefresh:c}){let e=(0,g.c)("elaboration"),h=(0,f.useRouter)();if(!b||0===b.rounds.length)return null;let{summary:i,rounds:j}=b;return(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:e("title")}),(0,d.jsx)("span",{className:"text-xs font-medium text-[#C67A52]",children:e("answeredCounter",{answered:i.answeredQuestions,total:i.totalQuestions})})]}),(0,d.jsx)("div",{className:"space-y-2.5",children:j.map(b=>(0,d.jsx)(x,{round:b,ideaUuid:a,onAnswered:async()=>{await c?.(),h.refresh()}},b.uuid))})]})}function x({round:a,ideaUuid:b,onAnswered:c}){let f=(0,g.c)("elaboration"),j="pending_answers"===a.status,k="answered"===a.status||"validated"===a.status||"needs_followup"===a.status,[l,m]=(0,e.useState)(j);return(0,d.jsx)(q.Nt,{open:l,onOpenChange:m,children:(0,d.jsxs)("div",{className:"overflow-hidden rounded-xl border border-[#E5E0D8] bg-white",children:[(0,d.jsx)(q.R6,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",className:`flex w-full items-center justify-between px-4 py-3 text-left transition-colors cursor-pointer hover:bg-[#FAF8F4] ${l?"bg-[#F7F6F3] border-b border-[#E5E0D8]":""}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[l?(0,d.jsx)(h.A,{className:"h-4 w-4 text-[#6B6B6B]"}):(0,d.jsx)(i.A,{className:"h-4 w-4 text-[#6B6B6B]"}),(0,d.jsx)("span",{className:`flex h-[22px] w-[22px] shrink-0 items-center justify-center rounded-full text-[11px] font-semibold text-white ${j?"bg-[#C67A52]":"bg-[#888780]"}`,children:a.roundNumber}),(0,d.jsx)("span",{className:"text-[13px] font-semibold text-[#2C2C2C]",children:f("roundLabel",{number:a.roundNumber})}),a.isAppended&&(0,d.jsx)("span",{className:"rounded bg-[#EDE7F6] px-2 py-0.5 text-[10px] font-medium text-[#6A4FB6]",children:f("appendedBadge")}),!l&&(0,d.jsxs)("span",{className:"text-xs text-[#9A9A9A]",children:["\xb7 ",f("questionCount",{count:a.questions.length})]})]}),k?(0,d.jsx)("span",{className:"rounded bg-[#E8F5E9] px-2 py-0.5 text-[10px] font-medium text-[#2E7D32]",children:f("statusAnswered")}):(0,d.jsx)("span",{className:"rounded bg-[#FFF3E0] px-2 py-0.5 text-[10px] font-medium text-[#E65100]",children:f("pendingAnswers")})]})}),(0,d.jsx)(q.Ke,{children:j?(0,d.jsx)(z,{round:a,ideaUuid:b,onAnswered:c}):(0,d.jsx)(y,{round:a})})]})})}function y({round:a}){let b=(0,g.c)("elaboration");return(0,d.jsx)("div",{className:"space-y-4 px-4 py-4",children:a.questions.map((c,e)=>{let f=c.answer?.selectedOptionId?c.options.find(a=>a.id===c.answer?.selectedOptionId):null,g=c.answer?.customText||f?.label||b("noAnswer"),h=v[c.category]||c.category;return(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,d.jsxs)("span",{className:"text-xs leading-relaxed text-[#6B6B6B]",children:["Q: ",c.text]}),(0,d.jsx)("span",{className:"shrink-0 text-[11px] italic text-[#B0B0B0]",children:b(`category.${h}`)})]}),(0,d.jsxs)("p",{className:"mt-1 text-xs font-medium leading-relaxed text-[#2C2C2C]",children:["A: ",g]}),e<a.questions.length-1&&(0,d.jsx)("div",{className:"mt-4 h-px bg-[#F0EEEA]"})]},c.uuid)})})}function z({round:a,ideaUuid:b,onAnswered:c}){let f=(0,g.c)("elaboration"),[h,q]=(0,e.useState)(0),r=(0,e.useRef)(h),[w,x]=(0,e.useState)("right"),[y,z]=(0,e.useState)({}),[A,B]=(0,e.useState)(!1),[C,D]=(0,e.useState)(null),E=(0,e.useCallback)((a,b)=>{x("left"===b?"right":"left"),q(a)},[]),F=a.questions,G=F[h],H=v[G.category]||G.category,I=(0,e.useCallback)((a,b)=>{if(z(c=>({...c,[a]:{questionId:a,selectedOptionId:b===u?null:b,customText:b===u?c[a]?.customText||"":null}})),b!==u){let a=Math.min(F.length-1,r.current+1);a!==r.current&&setTimeout(()=>E(a,"left"),200)}},[F.length,E]),J=(0,e.useCallback)((a,b)=>{z(c=>({...c,[a]:{...c[a],questionId:a,selectedOptionId:null,customText:b}}))},[]),K=F.filter(a=>a.required).every(a=>{let b=y[a.questionId];return!!b&&!!(b.selectedOptionId||b.customText&&b.customText.trim())}),L=async()=>{B(!0),D(null);let d=Object.values(y),e=await s(b,a.uuid,d);e.success?(await c(),B(!1)):(B(!1),D(e.error||f("submitFailed")))},M=(a=>{let b=y[a];return b?null===b.selectedOptionId&&null!==b.customText&&void 0!==b.customText?u:b.selectedOptionId||null:null})(G.questionId),N=M===u,O=h===F.length-1,P=!!(y[G.questionId]?.customText??"").trim();return(0,d.jsxs)("div",{className:"overflow-hidden p-3.5",children:[(0,d.jsxs)("div",{className:"right"===w?"animate-in slide-in-from-right-4 duration-200":"animate-in slide-in-from-left-4 duration-200",children:[(0,d.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,d.jsx)("div",{className:"flex-1 text-sm text-[#6B6B6B]",children:G.text}),(0,d.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,d.jsx)(o.$,{variant:"ghost",size:"icon",onClick:()=>E(h-1,"right"),disabled:0===h,className:"h-7 w-7 text-[#6B6B6B] disabled:opacity-30",children:(0,d.jsx)(j.A,{className:"h-4 w-4"})}),(0,d.jsx)("span",{className:"text-xs text-[#9A9A9A]",children:f("navCounter",{current:h+1,total:F.length})}),(0,d.jsx)(o.$,{variant:"ghost",size:"icon",onClick:()=>E(h+1,"left"),disabled:h===F.length-1,className:"h-7 w-7 text-[#6B6B6B] disabled:opacity-30",children:(0,d.jsx)(i.A,{className:"h-4 w-4"})})]})]}),(0,d.jsxs)("div",{className:"mt-3",children:[G.options.map((a,b)=>{let c=M===a.id;return(0,d.jsxs)("div",{children:[(0,d.jsxs)(o.$,{variant:"ghost",onClick:()=>I(G.questionId,a.id),className:`flex w-full items-start justify-between gap-2.5 px-3.5 py-3 h-auto text-left transition-colors rounded-none ${c?"bg-[#F7F6F3]":"hover:bg-[#FAF8F4]"}`,children:[(0,d.jsxs)("span",{className:"flex flex-1 min-w-0 items-start gap-2.5",children:[(0,d.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md bg-[#E5E0D8] text-xs font-medium text-[#5F5E5A]",children:b+1}),(0,d.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col items-start",children:[(0,d.jsx)("span",{className:"whitespace-normal [overflow-wrap:anywhere] text-[13px] text-[#2C2C2A]",children:a.label}),a.description&&(0,d.jsx)("span",{className:"whitespace-normal [overflow-wrap:anywhere] text-[11px] text-[#9A9A9A]",children:a.description})]})]}),c&&(0,d.jsx)(k.A,{className:"mt-1 h-4 w-4 shrink-0 text-[#888780]"})]}),b<G.options.length-1&&(0,d.jsx)("div",{className:"h-px bg-[#F0EEEA]"})]},a.id)}),(0,d.jsx)("div",{className:"h-px bg-[#F0EEEA]"}),(0,d.jsxs)("div",{className:`flex w-full items-center gap-2.5 px-3.5 py-3 transition-colors ${N?"bg-[#F7F6F3]":"hover:bg-[#FAF8F4]"}`,children:[(0,d.jsx)("span",{className:"flex h-7 w-7 shrink-0 cursor-pointer items-center justify-center rounded-md bg-[#E5E0D8]",onClick:()=>I(G.questionId,u),children:(0,d.jsx)(l.A,{className:"h-3.5 w-3.5 text-[#B4B2A9]"})}),N?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(p.p,{type:"text",value:y[G.questionId]?.customText||"",onChange:a=>J(G.questionId,a.target.value),onKeyDown:a=>{if((0,t.P)(a)||"Enter"!==a.key||a.shiftKey||a.ctrlKey||a.metaKey||(a.preventDefault(),O||!P))return;let b=r.current+1;setTimeout(()=>E(b,"left"),200)},placeholder:f("somethingElse"),className:"flex-1 border-none bg-transparent text-[13px] text-[#2C2C2A] placeholder:italic placeholder:text-[#B4B2A9] shadow-none focus-visible:ring-0",autoFocus:!0}),!O&&(0,d.jsx)(o.$,{type:"button",variant:"ghost",size:"icon",onClick:()=>{if(O||!P)return;let a=r.current+1;setTimeout(()=>E(a,"left"),200)},disabled:!P,"aria-label":f("confirmAnswerAria"),className:"h-7 w-7 text-[#6B6B6B] disabled:opacity-30",children:(0,d.jsx)(m.A,{className:"h-4 w-4"})})]}):(0,d.jsx)(o.$,{variant:"ghost",onClick:()=>I(G.questionId,u),className:"flex-1 justify-start text-left text-[13px] italic text-[#B4B2A9] h-auto p-0 hover:bg-transparent",children:f("somethingElse")})]})]})]},h),C&&(0,d.jsx)("div",{className:"mt-3 rounded-lg bg-destructive/10 p-2.5 text-[12px] text-destructive",children:C}),(0,d.jsxs)("div",{className:"mt-3 flex items-center justify-between",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1.5 text-[11px] text-[#B0B0B0]",children:[(0,d.jsx)("span",{className:"inline-block h-1.5 w-1.5 rounded-full bg-[#C67A52]"}),f(`category.${H}`)]}),(0,d.jsx)(o.$,{onClick:L,disabled:!K||A,className:"bg-[#C67A52] hover:bg-[#B56A42] text-white text-[13px]",children:A?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.A,{className:"mr-2 h-3.5 w-3.5 animate-spin"}),f("submitting")]}):f("submitAnswers")})]})]})}},78303:(a,b,c)=>{c.d(b,{i:()=>x});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(86460),i=c(16235),j=c(21692),k=c(97443),l=c(42424),m=c(94214),n=c(2852),o=c(11225),p=c(55732),q=c(23871),r=c(27696),s=c(42377);s.callServer,s.findSourceMapURL,s.callServer,s.findSourceMapURL;let t=(0,s.createServerReference)("403c9443216a4f1eef9d6101ed01aff7b9140167fd",s.callServer,void 0,s.findSourceMapURL,"claimIdeaAction"),u=(0,s.createServerReference)("7026a06f628dca22015d61b394daf2d85b8b5b923c",s.callServer,void 0,s.findSourceMapURL,"claimIdeaToAgentAction"),v=(0,s.createServerReference)("60dab0269ee9248c8f083ea74c0edeb86627c626e5",s.callServer,void 0,s.findSourceMapURL,"claimIdeaToUserAction"),w=(0,s.createServerReference)("408a78aa45415e5b54f4a7437be793a4a713a88c33",s.callServer,void 0,s.findSourceMapURL,"releaseIdeaAction");function x({idea:a,projectUuid:b,currentUserUuid:c,onClose:s}){let x=(0,g.c)(),y=(0,f.useRouter)(),[z,A]=(0,e.useState)(!1),[B,C]=(0,e.useState)("self"),[D,E]=(0,e.useState)(""),[F,G]=(0,e.useState)(""),[H,I]=(0,e.useState)([]),[J,K]=(0,e.useState)([]),[L,M]=(0,e.useState)(!0),[N,O]=(0,e.useState)(null),[P,Q]=(0,e.useState)([]),[R,S]=(0,e.useState)(!1),[T,U]=(0,e.useState)(null),V=!!a.assignee,W=P.find(a=>a.connectionUuid===T)??null,X=new Set(P.map(a=>a.host)).size>1,Y=async()=>{let b;if(A(!0),O(null),"self"===B)b=await t(a.uuid);else if("agent"===B&&D)b=await u(a.uuid,D,W?.agentInstanceUuid??void 0);else if("user"===B&&F)b=await v(a.uuid,F);else{if("release"!==B)return void A(!1);b=await w(a.uuid)}A(!1),b?.success?(y.refresh(),s()):b?.error&&O(b.error)},Z="self"===B||"agent"===B&&D||"user"===B&&F||"release"===B&&V;return(0,d.jsxs)(m._8,{open:!0,onOpenChange:a=>{a||s()},className:"bg-white sm:max-w-[400px]",header:(0,d.jsx)(m.AI,{className:"text-base font-semibold text-[#2C2C2C]",children:x("ideas.assignIdea")}),footer:(0,d.jsxs)("div",{className:"flex w-full items-center justify-end gap-4",children:[(0,d.jsx)(l.$,{variant:"outline",onClick:s,disabled:z,className:"border-[#E5E0D8]",children:x("common.cancel")}),(0,d.jsx)(l.$,{onClick:Y,disabled:z||!Z,className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:z?(0,d.jsx)(h.A,{className:"h-4 w-4 animate-spin"}):"release"===B?x("common.release"):function(){if("agent"!==B||!W)return x("common.assign");let a=(0,r.kn)(W.cwd),b=a.isUnknown?x(a.label):a.label,c=(0,r.g9)(W.host),d=c.isUnknown?x(c.label):c.label;return X?x("assignInstance.assignToWithHost",{path:b,host:d}):x("assignInstance.assignTo",{path:b})}()})]}),bodyClassName:"space-y-4",children:[(0,d.jsxs)("div",{className:"rounded-lg bg-[#FAF8F4] p-3",children:[(0,d.jsx)("p",{className:"text-[13px] font-medium text-[#2C2C2C]",children:a.title}),a.content&&(0,d.jsx)("p",{className:"mt-1 text-[11px] text-[#6B6B6B] line-clamp-2",children:a.content})]}),V&&(0,d.jsx)("div",{className:"rounded-lg bg-[#E3F2FD] p-3",children:(0,d.jsxs)("p",{className:"text-xs text-[#1976D2]",children:[x("common.currentAssignee"),": ",(0,d.jsx)("span",{className:"font-medium",children:a.assignee?.name})]})}),N&&(0,d.jsx)("div",{className:"rounded-lg bg-[#FEE2E2] p-3",children:(0,d.jsx)("p",{className:"text-xs text-[#D32F2F]",children:N})}),(0,d.jsx)("p",{className:"text-[13px] text-[#6B6B6B]",children:x("ideas.selectIdeaAssignee")}),L?(0,d.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,d.jsx)(h.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):(0,d.jsxs)(o.z,{value:B,onValueChange:a=>C(a),className:"space-y-3",children:[(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors cursor-pointer ${"self"===B?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8] hover:border-[#C67A52]/50"}`,onClick:()=>C("self"),children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(o.C,{value:"self",id:"idea-self",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(n.J,{htmlFor:"idea-self",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:x("assign.assignToMyself")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-[#6B6B6B] leading-relaxed",children:x("ideas.assignToMyselfIdeaDesc")})]}),(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors ${"agent"===B?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8]"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>C("agent"),children:[(0,d.jsx)(o.C,{value:"agent",id:"idea-agent",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(n.J,{htmlFor:"idea-agent",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:x("ideas.orAssignToPmAgent")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-[#6B6B6B] leading-relaxed",children:x("ideas.onlySelectedPmAgentCanWork")}),"agent"===B&&(0,d.jsxs)("div",{className:"mt-3 ml-6 space-y-3",children:[(0,d.jsxs)(p.l6,{value:D,onValueChange:E,children:[(0,d.jsx)(p.bq,{className:"w-full border-[#E5E0D8]",children:(0,d.jsx)(p.yv,{placeholder:x("ideas.selectPmAgent")})}),(0,d.jsx)(p.gC,{className:"z-[120]",children:H.length>0?H.map(a=>(0,d.jsx)(p.eb,{value:a.uuid,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(i.A,{className:"h-4 w-4 text-[#C67A52]"}),(0,d.jsx)("span",{children:a.name})]})},a.uuid)):(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:x("ideas.noPmAgentsAvailable")})})]}),D&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:x("assignInstance.workingDirectory")}),R?(0,d.jsxs)("div",{className:"flex items-center gap-2 py-2 text-xs text-[#9A9A9A]",children:[(0,d.jsx)(h.A,{className:"h-3.5 w-3.5 animate-spin"}),x("assignInstance.loadingInstances")]}):0===P.length?(0,d.jsx)("p",{className:"rounded-lg bg-[#FAF8F4] p-2.5 text-[11px] leading-relaxed text-[#6B6B6B]",children:x("assignInstance.noInstances")}):(0,d.jsx)(q.O,{instances:P,selectedConnectionUuid:T,onSelect:a=>U(a.connectionUuid),ariaLabel:x("assignInstance.workingDirectory")}),(0,d.jsxs)("div",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-[#9A8C7E]",children:[(0,d.jsx)(j.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,d.jsx)("span",{children:x("assignInstance.ideaPinNote")})]})]})]})]}),(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors ${"user"===B?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8]"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>C("user"),children:[(0,d.jsx)(o.C,{value:"user",id:"idea-user",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(n.J,{htmlFor:"idea-user",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:x("assign.orAssignToUser")})]}),"user"===B&&(0,d.jsx)("div",{className:"mt-3 ml-6",children:(0,d.jsxs)(p.l6,{value:F,onValueChange:G,children:[(0,d.jsx)(p.bq,{className:"w-full border-[#E5E0D8]",children:(0,d.jsx)(p.yv,{placeholder:x("tasks.selectUser")})}),(0,d.jsx)(p.gC,{className:"z-[120]",children:J.length>0?J.map(a=>(0,d.jsx)(p.eb,{value:a.uuid,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(k.A,{className:"h-4 w-4 text-[#6B6B6B]"}),(0,d.jsx)("span",{children:a.name||a.email})]})},a.uuid)):(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:x("tasks.noUsersAvailable")})})]})})]}),V&&(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors cursor-pointer ${"release"===B?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8] hover:border-[#C67A52]/50"}`,onClick:()=>C("release"),children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(o.C,{value:"release",id:"idea-release",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(n.J,{htmlFor:"idea-release",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:x("assign.releaseAssignee")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-[#6B6B6B] leading-relaxed",children:x("ideas.releaseIdeaAssigneeDesc")})]})]})]})}},80041:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{x:()=>l});var e=c(2613);c(50785);var f=c(9259),g=c(67738),h=c(61212),i=c(97307),j=c(12217),k=a([f,g,h]);async function l(a){let b=await (0,f.d)();if(!b)return{activities:[],total:0};try{let c=await (0,h.MY)(b.companyUuid,a);if(!c)return{activities:[],total:0};return await (0,g.listActivitiesWithActorNames)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"idea",targetUuid:a,skip:0,take:50})}catch(a){return i.default.error({err:a},"Failed to get idea activities"),{activities:[],total:0}}}[f,g,h]=k.then?(await k)():k,(0,j.D)([l]),(0,e.A)(l,"400cda1396142e823c70236309129832b2bb93f1dd",null),d()}catch(a){d(a)}})},82870:(a,b,c)=>{c.a(a,async(a,b)=>{try{var d=c(71255),e=c(92633),f=c(30259),g=a([d,e,f]);[d,e,f]=g.then?(await g)():g,b()}catch(a){b(a)}})},84819:(a,b,c)=>{c.d(b,{Separator:()=>g});var d=c(10837);c(21968);var e=c(72229),f=c(96307);function g({className:a,orientation:b="horizontal",decorative:c=!0,...g}){return(0,d.jsx)(e.b,{"data-slot":"separator",decorative:c,orientation:b,className:(0,f.cn)("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",a),...g})}},85806:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{f0:()=>l});var e=c(33994),f=c(61212),g=c(50530),h=c(53870),i=c(97879),j=c(28774),k=c(466),l=c(67738),m=c(82870),n=c(23733),o=a([e,f,g,h,i,j,k,l,m,n]);[e,f,g,h,i,j,k,l,m,n]=o.then?(await o)():o,d()}catch(a){d(a)}})},97285:(a,b,c)=>{c.d(b,{J:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40790b72c792d2c2fa46044fe0c82e0a49ee9ea155",d.callServer,void 0,d.findSourceMapURL,"updateIdeaAction")}};
|