@jiggai/kitchen 0.1.11 → 0.2.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/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +21 -0
- package/.next/build-manifest.json +6 -6
- package/.next/prerender-manifest.json +11 -6
- package/.next/routes-manifest.json +146 -0
- package/.next/server/app/_global-error/page/build-manifest.json +4 -4
- package/.next/server/app/_global-error/page.js +3 -3
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +2 -2
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +4 -4
- package/.next/server/app/_not-found/page.js +10 -9
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +5 -5
- package/.next/server/app/_not-found.segments/_full.segment.rsc +5 -5
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/agents/[agentId]/page/build-manifest.json +4 -4
- package/.next/server/app/agents/[agentId]/page.js +8 -8
- package/.next/server/app/agents/[agentId]/page.js.nft.json +1 -1
- package/.next/server/app/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/[id]/route.js +1 -1
- package/.next/server/app/api/agents/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/add/route.js +1 -1
- package/.next/server/app/api/agents/add/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/file/route.js +1 -1
- package/.next/server/app/api/agents/file/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/files/route.js +1 -1
- package/.next/server/app/api/agents/files/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/identity/route.js +1 -1
- package/.next/server/app/api/agents/identity/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/route.js +1 -1
- package/.next/server/app/api/agents/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/skills/install/route.js +1 -1
- package/.next/server/app/api/agents/skills/install/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/skills/route.js +1 -1
- package/.next/server/app/api/agents/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/update/route.js +1 -1
- package/.next/server/app/api/agents/update/route.js.nft.json +1 -1
- package/.next/server/app/api/channels/bindings/route.js +1 -1
- package/.next/server/app/api/channels/bindings/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/delete/route.js +1 -1
- package/.next/server/app/api/cron/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/job/route.js +1 -1
- package/.next/server/app/api/cron/job/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/jobs/route.js +1 -1
- package/.next/server/app/api/cron/jobs/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/recipe-installed/route.js +1 -1
- package/.next/server/app/api/cron/recipe-installed/route.js.nft.json +1 -1
- package/.next/server/app/api/gateway/restart/route.js +1 -1
- package/.next/server/app/api/gateway/restart/route.js.nft.json +1 -1
- package/.next/server/app/api/goals/[id]/promote/route.js +1 -1
- package/.next/server/app/api/goals/[id]/promote/route.js.nft.json +1 -1
- package/.next/server/app/api/goals/[id]/route.js +1 -1
- package/.next/server/app/api/goals/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/goals/route.js +1 -1
- package/.next/server/app/api/goals/route.js.nft.json +1 -1
- package/.next/server/app/api/ids/check/route.js +1 -1
- package/.next/server/app/api/ids/check/route.js.nft.json +1 -1
- package/.next/server/app/api/marketplace/recipes/[slug]/route.js +1 -1
- package/.next/server/app/api/marketplace/recipes/[slug]/route.js.nft.json +1 -1
- package/.next/server/app/api/marketplace/recipes/route.js +1 -1
- package/.next/server/app/api/marketplace/recipes/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/[id]/route.js +1 -1
- package/.next/server/app/api/recipes/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/clone/route.js +1 -1
- package/.next/server/app/api/recipes/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/custom-team/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/recipes/custom-team/route/build-manifest.json +11 -0
- package/.next/server/app/api/recipes/custom-team/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/recipes/custom-team/route.js +6 -0
- package/.next/server/app/api/recipes/custom-team/route.js.map +5 -0
- package/.next/server/app/api/recipes/custom-team/route.js.nft.json +1 -0
- package/.next/server/app/api/recipes/custom-team/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/recipes/delete/route.js +1 -1
- package/.next/server/app/api/recipes/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/route.js +1 -1
- package/.next/server/app/api/recipes/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/team-agents/route.js +1 -1
- package/.next/server/app/api/recipes/team-agents/route.js.nft.json +1 -1
- package/.next/server/app/api/scaffold/route.js +1 -2
- package/.next/server/app/api/scaffold/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/cron-installation/route.js +1 -1
- package/.next/server/app/api/settings/cron-installation/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/available/route.js +1 -1
- package/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/.next/server/app/api/swarms/start/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/swarms/start/route/build-manifest.json +11 -0
- package/.next/server/app/api/swarms/start/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/swarms/start/route.js +6 -0
- package/.next/server/app/api/swarms/start/route.js.map +5 -0
- package/.next/server/app/api/swarms/start/route.js.nft.json +1 -0
- package/.next/server/app/api/swarms/start/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/swarms/status/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/swarms/status/route/build-manifest.json +11 -0
- package/.next/server/app/api/swarms/status/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/swarms/status/route.js +6 -0
- package/.next/server/app/api/swarms/status/route.js.map +5 -0
- package/.next/server/app/api/swarms/status/route.js.nft.json +1 -0
- package/.next/server/app/api/swarms/status/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route.js +6 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route.js.map +5 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route.js +6 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route.js.map +5 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route.js +6 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route.js.map +5 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route.js +6 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route.js.map +5 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route.js +6 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route.js.map +5 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/file/route.js +1 -1
- package/.next/server/app/api/teams/file/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/files/route.js +1 -1
- package/.next/server/app/api/teams/files/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/memory/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/memory/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/memory/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/memory/route.js +6 -0
- package/.next/server/app/api/teams/memory/route.js.map +5 -0
- package/.next/server/app/api/teams/memory/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/memory/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/meta/route.js +1 -1
- package/.next/server/app/api/teams/meta/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/orchestrator/install/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/orchestrator/install/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/orchestrator/install/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/orchestrator/install/route.js +6 -0
- package/.next/server/app/api/teams/orchestrator/install/route.js.map +5 -0
- package/.next/server/app/api/teams/orchestrator/install/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/orchestrator/install/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/orchestrator/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/orchestrator/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/orchestrator/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/orchestrator/route.js +6 -0
- package/.next/server/app/api/teams/orchestrator/route.js.map +5 -0
- package/.next/server/app/api/teams/orchestrator/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/orchestrator/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/remove-team/route.js +2 -1
- package/.next/server/app/api/teams/remove-team/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/skills/install/route.js +1 -1
- package/.next/server/app/api/teams/skills/install/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/skills/route.js +1 -1
- package/.next/server/app/api/teams/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/workflow-runs/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/workflow-runs/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/workflow-runs/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/workflow-runs/route.js +7 -0
- package/.next/server/app/api/teams/workflow-runs/route.js.map +5 -0
- package/.next/server/app/api/teams/workflow-runs/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/workflow-runs/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/workflow-templates/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/workflow-templates/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/workflow-templates/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/workflow-templates/route.js +6 -0
- package/.next/server/app/api/teams/workflow-templates/route.js.map +5 -0
- package/.next/server/app/api/teams/workflow-templates/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/workflow-templates/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/workflows/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/workflows/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/workflows/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/workflows/route.js +6 -0
- package/.next/server/app/api/teams/workflows/route.js.map +5 -0
- package/.next/server/app/api/teams/workflows/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/workflows/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/tickets/assign/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/tickets/assign/route/build-manifest.json +11 -0
- package/.next/server/app/api/tickets/assign/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/tickets/assign/route.js +6 -0
- package/.next/server/app/api/tickets/assign/route.js.map +5 -0
- package/.next/server/app/api/tickets/assign/route.js.nft.json +1 -0
- package/.next/server/app/api/tickets/assign/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/tickets/assignees/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/tickets/assignees/route/build-manifest.json +11 -0
- package/.next/server/app/api/tickets/assignees/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/tickets/assignees/route.js +6 -0
- package/.next/server/app/api/tickets/assignees/route.js.map +5 -0
- package/.next/server/app/api/tickets/assignees/route.js.nft.json +1 -0
- package/.next/server/app/api/tickets/assignees/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/tickets/move/route.js +1 -1
- package/.next/server/app/api/tickets/move/route.js.nft.json +1 -1
- package/.next/server/app/channels/page/build-manifest.json +4 -4
- package/.next/server/app/channels/page.js +8 -8
- package/.next/server/app/channels/page.js.nft.json +1 -1
- package/.next/server/app/channels/page_client-reference-manifest.js +1 -1
- package/.next/server/app/channels.html +2 -2
- package/.next/server/app/channels.rsc +6 -6
- package/.next/server/app/channels.segments/_full.segment.rsc +6 -6
- package/.next/server/app/channels.segments/_head.segment.rsc +1 -1
- package/.next/server/app/channels.segments/_index.segment.rsc +3 -3
- package/.next/server/app/channels.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/channels.segments/channels/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/channels.segments/channels.segment.rsc +1 -1
- package/.next/server/app/cron-jobs/page/build-manifest.json +4 -4
- package/.next/server/app/cron-jobs/page.js +8 -8
- package/.next/server/app/cron-jobs/page.js.nft.json +1 -1
- package/.next/server/app/cron-jobs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/cron-jobs.html +1 -1
- package/.next/server/app/cron-jobs.rsc +7 -7
- package/.next/server/app/cron-jobs.segments/_full.segment.rsc +7 -7
- package/.next/server/app/cron-jobs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/cron-jobs.segments/_index.segment.rsc +3 -3
- package/.next/server/app/cron-jobs.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/cron-jobs.segments/cron-jobs/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/cron-jobs.segments/cron-jobs.segment.rsc +1 -1
- package/.next/server/app/goals/[id]/page/build-manifest.json +4 -4
- package/.next/server/app/goals/[id]/page.js +8 -8
- package/.next/server/app/goals/[id]/page.js.nft.json +1 -1
- package/.next/server/app/goals/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals/new/page/build-manifest.json +4 -4
- package/.next/server/app/goals/new/page.js +8 -8
- package/.next/server/app/goals/new/page.js.nft.json +1 -1
- package/.next/server/app/goals/new/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals/new.html +2 -2
- package/.next/server/app/goals/new.rsc +6 -6
- package/.next/server/app/goals/new.segments/_full.segment.rsc +6 -6
- package/.next/server/app/goals/new.segments/_head.segment.rsc +1 -1
- package/.next/server/app/goals/new.segments/_index.segment.rsc +3 -3
- package/.next/server/app/goals/new.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/goals/new.segments/goals/new/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/goals/new.segments/goals/new.segment.rsc +1 -1
- package/.next/server/app/goals/new.segments/goals.segment.rsc +1 -1
- package/.next/server/app/goals/page/build-manifest.json +4 -4
- package/.next/server/app/goals/page.js +8 -8
- package/.next/server/app/goals/page.js.nft.json +1 -1
- package/.next/server/app/goals/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals.html +1 -1
- package/.next/server/app/goals.rsc +6 -6
- package/.next/server/app/goals.segments/_full.segment.rsc +6 -6
- package/.next/server/app/goals.segments/_head.segment.rsc +1 -1
- package/.next/server/app/goals.segments/_index.segment.rsc +3 -3
- package/.next/server/app/goals.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/goals.segments/goals/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/goals.segments/goals.segment.rsc +1 -1
- package/.next/server/app/manifest.webmanifest/route/app-paths-manifest.json +3 -0
- package/.next/server/app/manifest.webmanifest/route/build-manifest.json +11 -0
- package/.next/server/app/manifest.webmanifest/route/server-reference-manifest.json +4 -0
- package/.next/server/app/manifest.webmanifest/route.js +6 -0
- package/.next/server/app/manifest.webmanifest/route.js.map +5 -0
- package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -0
- package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +2 -0
- package/.next/server/app/manifest.webmanifest.body +1 -0
- package/.next/server/app/manifest.webmanifest.meta +1 -0
- package/.next/server/app/page/build-manifest.json +4 -4
- package/.next/server/app/page.js +10 -9
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recipes/[id]/page/build-manifest.json +4 -4
- package/.next/server/app/recipes/[id]/page.js +10 -9
- package/.next/server/app/recipes/[id]/page.js.nft.json +1 -1
- package/.next/server/app/recipes/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recipes/page/build-manifest.json +4 -4
- package/.next/server/app/recipes/page.js +9 -9
- package/.next/server/app/recipes/page.js.nft.json +1 -1
- package/.next/server/app/recipes/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page/build-manifest.json +4 -4
- package/.next/server/app/settings/page.js +8 -8
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +6 -6
- package/.next/server/app/settings.segments/_full.segment.rsc +6 -6
- package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_index.segment.rsc +3 -3
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/.next/server/app/teams/[teamId]/page/build-manifest.json +4 -4
- package/.next/server/app/teams/[teamId]/page.js +10 -9
- package/.next/server/app/teams/[teamId]/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page/app-paths-manifest.json +3 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page/build-manifest.json +17 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page/next-font-manifest.json +11 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page/server-reference-manifest.json +4 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page.js +18 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page.js.map +5 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page.js.nft.json +1 -0
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page_client-reference-manifest.js +2 -0
- package/.next/server/app/teams/[teamId]/tickets/page/app-paths-manifest.json +3 -0
- package/.next/server/app/teams/[teamId]/tickets/page/build-manifest.json +17 -0
- package/.next/server/app/teams/[teamId]/tickets/page/next-font-manifest.json +11 -0
- package/.next/server/app/teams/[teamId]/tickets/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/teams/[teamId]/tickets/page/server-reference-manifest.json +4 -0
- package/.next/server/app/teams/[teamId]/tickets/page.js +18 -0
- package/.next/server/app/teams/[teamId]/tickets/page.js.map +5 -0
- package/.next/server/app/teams/[teamId]/tickets/page.js.nft.json +1 -0
- package/.next/server/app/teams/[teamId]/tickets/page_client-reference-manifest.js +2 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page/app-paths-manifest.json +3 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page/build-manifest.json +17 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page/next-font-manifest.json +11 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page/server-reference-manifest.json +4 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page.js +19 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page.js.map +5 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page.js.nft.json +1 -0
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page_client-reference-manifest.js +2 -0
- package/.next/server/app/teams/[teamId]/workflows/page/app-paths-manifest.json +3 -0
- package/.next/server/app/teams/[teamId]/workflows/page/build-manifest.json +17 -0
- package/.next/server/app/teams/[teamId]/workflows/page/next-font-manifest.json +11 -0
- package/.next/server/app/teams/[teamId]/workflows/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/teams/[teamId]/workflows/page/server-reference-manifest.json +4 -0
- package/.next/server/app/teams/[teamId]/workflows/page.js +20 -0
- package/.next/server/app/teams/[teamId]/workflows/page.js.map +5 -0
- package/.next/server/app/teams/[teamId]/workflows/page.js.nft.json +1 -0
- package/.next/server/app/teams/[teamId]/workflows/page_client-reference-manifest.js +2 -0
- package/.next/server/app/tickets/[ticket]/page/build-manifest.json +4 -4
- package/.next/server/app/tickets/[ticket]/page.js +8 -8
- package/.next/server/app/tickets/[ticket]/page.js.nft.json +1 -1
- package/.next/server/app/tickets/[ticket]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/tickets/page/build-manifest.json +4 -4
- package/.next/server/app/tickets/page.js +8 -8
- package/.next/server/app/tickets/page.js.nft.json +1 -1
- package/.next/server/app/tickets/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +21 -0
- package/.next/server/chunks/[root-of-the-server]__04d535a1._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__04d535a1._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0554d494._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0554d494._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__05f5e243._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__05f5e243._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0e5f94e2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0e5f94e2._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__107d374d._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__107d374d._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1106aaf7._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__1106aaf7._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1805932c._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1805932c._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__26c618a3._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__26c618a3._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__2fa553db._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__2fa553db._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__392e585d._.js +18 -0
- package/.next/server/chunks/[root-of-the-server]__392e585d._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__3cddf0a5._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3cddf0a5._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__3f7058b4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3f7058b4._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__477c3d5b._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__477c3d5b._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__47eb3111._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__47eb3111._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__4898071c._.js +2 -2
- package/.next/server/chunks/[root-of-the-server]__59a6cf09._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__59a6cf09._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__5ea38a67._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__5ea38a67._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__6629e914._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__6629e914._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__667c3a2d._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__667c3a2d._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__691a8e5d._.js +6 -0
- package/.next/server/chunks/[root-of-the-server]__691a8e5d._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__698cf062._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__698cf062._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__69be1758._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__69be1758._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__6d8e7b75._.js +6 -0
- package/.next/server/chunks/[root-of-the-server]__6d8e7b75._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__6e5826c5._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__6e5826c5._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__795578f0._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__795578f0._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__7a331e51._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__7a331e51._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__7e46fb06._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__7e46fb06._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__864a08dd._.js +10 -0
- package/.next/server/chunks/[root-of-the-server]__864a08dd._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__8a811a30._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__8a811a30._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__8e27e9f7._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__8e27e9f7._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__8ea22d0a._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__8ea22d0a._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__904a6d9f._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__904a6d9f._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__a12dc320._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__a12dc320._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__a6ade549._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__a6ade549._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__abcda400._.js +6 -0
- package/.next/server/chunks/[root-of-the-server]__abcda400._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__b002764e._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__b002764e._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__bc3630f4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__bc3630f4._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__befb8c19._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__befb8c19._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__bf608f29._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__be5f57b2._.js.map → [root-of-the-server]__bf608f29._.js.map} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__74b80ca4._.js → [root-of-the-server]__c63a9f28._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__c86c0469._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__c86c0469._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__c9e4c772._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__c9e4c772._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__cbe01b74._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__cbe01b74._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__ce9cfa39._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__ce9cfa39._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__d924e5ac._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__d924e5ac._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__e40409a2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__e40409a2._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__e6fa5823._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__e6fa5823._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__e8bfeaba._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__e8bfeaba._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__e8f8017b._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__e8f8017b._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__ee5cefd8._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__ee5cefd8._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__ef60acef._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__ef60acef._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__fdda9176._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__a6ac3ddf._.js.map → [root-of-the-server]__fdda9176._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__fec14c75._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__fec14c75._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__fef7183d._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__fef7183d._.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_recipes_custom-team_route_actions_861b1489.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_swarms_start_route_actions_b79e9029.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_swarms_start_route_actions_b79e9029.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_swarms_status_route_actions_54826df0.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_swarms_status_route_actions_54826df0.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_[teamId]_tickets_move_route_actions_b47d8708.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_[teamId]_tickets_move_route_actions_b47d8708.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_memory_route_actions_5b7dc699.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_memory_route_actions_5b7dc699.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_orchestrator_install_route_actions_49b6602b.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_orchestrator_install_route_actions_49b6602b.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_orchestrator_route_actions_1949c463.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_orchestrator_route_actions_1949c463.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflow-runs_route_actions_8327ac7d.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflow-runs_route_actions_8327ac7d.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflow-templates_route_actions_87b51d57.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflow-templates_route_actions_87b51d57.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflows_route_actions_43dd6e07.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflows_route_actions_43dd6e07.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_tickets_assign_route_actions_629cc773.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_tickets_assign_route_actions_629cc773.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_tickets_assignees_route_actions_64d3d63e.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_tickets_assignees_route_actions_64d3d63e.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_manifest_webmanifest_route_actions_1bff3fca.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_manifest_webmanifest_route_actions_1bff3fca.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_assign_route_actions_50521c46.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_assign_route_actions_50521c46.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_assignees_route_actions_75675d78.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_assignees_route_actions_75675d78.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_delete_route_actions_9d6ca9f4.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_delete_route_actions_9d6ca9f4.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_move-to-goals_route_actions_760612ca.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_tickets_move-to-goals_route_actions_760612ca.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_1fe98a49.js +16 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_1fe98a49.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0d4cb2ba._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__285ae6b7._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__46e08d44._.js.map → [root-of-the-server]__285ae6b7._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__28f5d174._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__28f5d174._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__2bef6884._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__15600e29._.js.map → [root-of-the-server]__2bef6884._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__37c705d4._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__37c705d4._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__3ec61b25._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__3ec61b25._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__3efd25c4._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__2a6f1e3e._.js.map → [root-of-the-server]__3efd25c4._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__44d2d5fa._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__44d2d5fa._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__49281b4c._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__49281b4c._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__4c4391c1._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__4c4391c1._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__4c6592ca._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__4c6592ca._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__682758bd._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__682758bd._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__6bd48d33._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__6bd48d33._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__78972f52._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__78972f52._.js.map +1 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__e2e52c6e._.js → [root-of-the-server]__78cdd31e._.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__92524828._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__247198dc._.js.map → [root-of-the-server]__92524828._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__9a7d79aa._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__9a7d79aa._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__9e1ab064._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__9e1ab064._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__ad654f09._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__ad654f09._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__b2617fbf._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__fd669584._.js.map → [root-of-the-server]__b2617fbf._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__b5f65083._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__b5f65083._.js.map +1 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__4c6cc96d._.js → [root-of-the-server]__de18d058._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__4c6cc96d._.js.map → [root-of-the-server]__de18d058._.js.map} +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__7180d770._.js → [root-of-the-server]__e364449b._.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__e364449b._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__e5d416d5._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__3ad3e5b1._.js.map → [root-of-the-server]__e5d416d5._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__e94ab521._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__e94ab521._.js.map +1 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__b9356576._.js → [root-of-the-server]__f62d412e._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__b9356576._.js.map → [root-of-the-server]__f62d412e._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__f8a2f82d._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__f8a2f82d._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__fbe5ff69._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__3575e6da._.js.map → [root-of-the-server]__fbe5ff69._.js.map} +1 -1
- package/.next/server/chunks/ssr/_018dfe6b._.js +27 -0
- package/.next/server/chunks/ssr/_018dfe6b._.js.map +1 -0
- package/.next/server/chunks/ssr/{_8c45edba._.js → _0bdae23a._.js} +3 -3
- package/.next/server/chunks/ssr/_0bdae23a._.js.map +1 -0
- package/.next/server/chunks/ssr/{_d27483a1._.js → _19aa68d3._.js} +3 -3
- package/.next/server/chunks/ssr/_19aa68d3._.js.map +1 -0
- package/.next/server/chunks/ssr/{_25e6aab8._.js → _347e2d56._.js} +3 -3
- package/.next/server/chunks/ssr/_347e2d56._.js.map +1 -0
- package/.next/server/chunks/ssr/_3c9015dc._.js +4 -0
- package/.next/server/chunks/ssr/_3c9015dc._.js.map +1 -0
- package/.next/server/chunks/ssr/_41ca4e70._.js +3 -0
- package/.next/server/chunks/ssr/_41ca4e70._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules_next_dist_12287b3d._.js → _49fb12c2._.js} +3 -3
- package/.next/server/chunks/ssr/_49fb12c2._.js.map +1 -0
- package/.next/server/chunks/ssr/{_3c8b2df6._.js → _536983a4._.js} +3 -3
- package/.next/server/chunks/ssr/_536983a4._.js.map +1 -0
- package/.next/server/chunks/ssr/_5443093b._.js +3 -0
- package/.next/server/chunks/ssr/_5443093b._.js.map +1 -0
- package/.next/server/chunks/ssr/{_cd23c5af._.js → _5b282394._.js} +3 -3
- package/.next/server/chunks/ssr/_5b282394._.js.map +1 -0
- package/.next/server/chunks/ssr/{_6e70b5a4._.js → _5cc24343._.js} +3 -3
- package/.next/server/chunks/ssr/_5cc24343._.js.map +1 -0
- package/.next/server/chunks/ssr/_67830ad6._.js +3 -0
- package/.next/server/chunks/ssr/_67830ad6._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_68c68167.js → _7eac37fb._.js} +3 -3
- package/.next/server/chunks/ssr/_7eac37fb._.js.map +1 -0
- package/.next/server/chunks/ssr/{_92140ca3._.js → _802ee40f._.js} +3 -3
- package/.next/server/chunks/ssr/{_25e6aab8._.js.map → _802ee40f._.js.map} +1 -1
- package/.next/server/chunks/ssr/{_8c8207c1._.js → _8062e992._.js} +3 -3
- package/.next/server/chunks/ssr/_8062e992._.js.map +1 -0
- package/.next/server/chunks/ssr/{_0808c2b9._.js → _99994c05._.js} +3 -3
- package/.next/server/chunks/ssr/_99994c05._.js.map +1 -0
- package/.next/server/chunks/ssr/{_b5e9afcc._.js → _aafc99aa._.js} +3 -3
- package/.next/server/chunks/ssr/_aafc99aa._.js.map +1 -0
- package/.next/server/chunks/ssr/{_39e6e769._.js → _b7f3caf7._.js} +3 -3
- package/.next/server/chunks/ssr/_b7f3caf7._.js.map +1 -0
- package/.next/server/chunks/ssr/_c2041f88._.js +4 -0
- package/.next/server/chunks/ssr/_c2041f88._.js.map +1 -0
- package/.next/server/chunks/ssr/_d2e9dda9._.js +4 -0
- package/.next/server/chunks/ssr/_d2e9dda9._.js.map +1 -0
- package/.next/server/chunks/ssr/{_3158c108._.js → _f4d8af3b._.js} +3 -3
- package/.next/server/chunks/ssr/_f4d8af3b._.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_tickets_[ticket]_page_actions_25ad633d.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_tickets_[ticket]_page_actions_25ad633d.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_tickets_page_actions_dffb2525.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_tickets_page_actions_dffb2525.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_workflows_page_actions_3defde35.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_workflows_page_actions_3defde35.js.map +1 -0
- package/.next/server/chunks/ssr/b1a17_app_teams_[teamId]_workflows_[workflowId]_workflows-editor-client_tsx_5e714aa2._.js +3 -0
- package/.next/server/chunks/ssr/b1a17_app_teams_[teamId]_workflows_[workflowId]_workflows-editor-client_tsx_5e714aa2._.js.map +1 -0
- package/.next/server/chunks/ssr/ce889_server_app_teams_[teamId]_workflows_[workflowId]_page_actions_880cbbc3.js +3 -0
- package/.next/server/chunks/ssr/ce889_server_app_teams_[teamId]_workflows_[workflowId]_page_actions_880cbbc3.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_ea845e5f._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_ea845e5f._.js.map +1 -0
- package/.next/server/chunks/ssr/{_da6f800e._.js → node_modules_next_aefa2538._.js} +2 -2
- package/.next/server/chunks/ssr/node_modules_next_aefa2538._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_8a37abed._.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_8a37abed._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules_next_dist_client_components_9774470f._.js → node_modules_next_dist_client_components_2fffaa3a._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules_next_dist_client_components_9774470f._.js.map → node_modules_next_dist_client_components_2fffaa3a._.js.map} +1 -1
- package/.next/server/chunks/ssr/{_68793c1f._.js → node_modules_next_dist_esm_build_templates_app-page_b5ef32b4.js} +3 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_b5ef32b4.js.map +1 -0
- package/.next/server/chunks/ssr/src_13139e3d._.js +3 -0
- package/.next/server/chunks/ssr/src_13139e3d._.js.map +1 -0
- package/.next/server/chunks/ssr/src_2a73b867._.js +3 -0
- package/.next/server/chunks/ssr/src_2a73b867._.js.map +1 -0
- package/.next/server/chunks/ssr/src_2dbb3b7f._.js +3 -0
- package/.next/server/chunks/ssr/src_2dbb3b7f._.js.map +1 -0
- package/.next/server/chunks/ssr/src_417bc4a6._.js +3 -0
- package/.next/server/chunks/ssr/src_417bc4a6._.js.map +1 -0
- package/.next/server/chunks/ssr/src_59477309._.js +3 -0
- package/.next/server/chunks/ssr/src_59477309._.js.map +1 -0
- package/.next/server/chunks/ssr/src_79d55c05._.js +3 -0
- package/.next/server/chunks/ssr/src_79d55c05._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_HomeClient_tsx_f9f7568d._.js +1 -1
- package/.next/server/chunks/ssr/src_app_HomeClient_tsx_f9f7568d._.js.map +1 -1
- package/.next/server/chunks/ssr/src_app_agents_[agentId]_agent-editor_tsx_f85bbe65._.js +1 -1
- package/.next/server/chunks/ssr/src_app_agents_[agentId]_agent-editor_tsx_f85bbe65._.js.map +1 -1
- package/.next/server/chunks/ssr/src_app_global-error_tsx_aa661ba4._.js +3 -0
- package/.next/server/chunks/ssr/src_app_global-error_tsx_aa661ba4._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_not-found_tsx_3f23d179._.js +3 -0
- package/.next/server/chunks/ssr/src_app_not-found_tsx_3f23d179._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_recipes_[id]_RecipeEditor_index_tsx_98393217._.js +3 -0
- package/.next/server/chunks/ssr/src_app_recipes_[id]_RecipeEditor_index_tsx_98393217._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_recipes_recipes-client_tsx_8ed3ca94._.js +1 -1
- package/.next/server/chunks/ssr/src_app_recipes_recipes-client_tsx_8ed3ca94._.js.map +1 -1
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_team-editor_index_tsx_e68e9cbc._.js +12 -0
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_team-editor_index_tsx_e68e9cbc._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_tickets_TicketsBoardClient_tsx_5e156ef3._.js +1 -1
- package/.next/server/chunks/ssr/src_app_tickets_TicketsBoardClient_tsx_5e156ef3._.js.map +1 -1
- package/.next/server/chunks/ssr/src_e54f24fb._.js +3 -0
- package/.next/server/chunks/ssr/src_e54f24fb._.js.map +1 -0
- package/.next/server/middleware-build-manifest.js +4 -4
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +16 -0
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/static/chunks/0edab8a24d59a626.js +2 -0
- package/.next/static/chunks/11da0a52793b005a.js +1 -0
- package/.next/static/chunks/150338287c7dae30.js +1 -0
- package/.next/static/chunks/236ef28eb649c432.js +1 -0
- package/.next/static/chunks/3e1fe6be993c61fb.js +1 -0
- package/.next/static/chunks/55a88f2071ebe766.js +1 -0
- package/.next/static/chunks/5cf42ef49ad071af.js +10 -0
- package/.next/static/chunks/62e0c437eb8fc2da.js +1 -0
- package/.next/static/chunks/{82abf2d65f5428ae.js → 68a088aa49e6124a.js} +3 -3
- package/.next/static/chunks/7bb0aafbf73524bf.js +1 -0
- package/.next/static/chunks/8d359fbce4ebb835.js +1 -0
- package/.next/static/chunks/9197ecb9606557f3.js +1 -0
- package/.next/static/chunks/93719e85369dd453.js +1 -0
- package/.next/static/chunks/b244476ded155cf9.css +3 -0
- package/.next/static/chunks/c75e00652e6b7d85.js +1 -0
- package/.next/static/chunks/c84580993f22c17a.js +1 -0
- package/.next/static/chunks/d73a47fc8def319c.js +1 -0
- package/.next/static/chunks/daa78a9d669e23f5.js +1 -0
- package/.next/static/chunks/db4da5ee45033817.js +1 -0
- package/.next/static/chunks/e8021fea9aee6b63.js +1 -0
- package/.next/static/chunks/e854e56ea8cb6236.js +1 -0
- package/.next/static/chunks/ffff6b5105288d2c.js +1 -0
- package/.next/static/chunks/{turbopack-ae1340e658f67df8.js → turbopack-0236a74c4f471967.js} +1 -1
- package/README.md +22 -1
- package/openclaw/index.ts +133 -26
- package/openclaw.plugin.json +9 -1
- package/package.json +24 -3
- package/public/android-chrome-192x192.png +0 -0
- package/public/android-chrome-512x512.png +0 -0
- package/public/apple-touch-icon.png +0 -0
- package/public/chef.jpg +0 -0
- package/public/favicon-16x16.png +0 -0
- package/public/favicon-32x32.png +0 -0
- package/public/favicon.ico +0 -0
- package/src/app/HomeClient.tsx +8 -9
- package/src/app/agents/[agentId]/agent-editor-tabs.tsx +298 -0
- package/src/app/agents/[agentId]/agent-editor.tsx +200 -428
- package/src/app/api/__tests__/agents-add-route.test.ts +143 -0
- package/src/app/api/__tests__/agents-file-route.test.ts +117 -0
- package/src/app/api/__tests__/agents-files-route.test.ts +61 -0
- package/src/app/api/__tests__/agents-id-route.test.ts +104 -0
- package/src/app/api/__tests__/agents-identity-route.test.ts +92 -0
- package/src/app/api/__tests__/agents-route.test.ts +54 -0
- package/src/app/api/__tests__/agents-skills-install-route.test.ts +131 -0
- package/src/app/api/__tests__/agents-skills-route.test.ts +64 -0
- package/src/app/api/__tests__/agents-update-route.test.ts +95 -0
- package/src/app/api/__tests__/channels-bindings-route.test.ts +143 -0
- package/src/app/api/__tests__/cron-delete-route.test.ts +93 -0
- package/src/app/api/__tests__/cron-job-route.test.ts +78 -0
- package/src/app/api/__tests__/cron-jobs-route.test.ts +116 -0
- package/src/app/api/__tests__/cron-recipe-installed-route.test.ts +114 -0
- package/src/app/api/__tests__/gateway-restart-route.test.ts +36 -0
- package/src/app/api/__tests__/goals-promote-route.test.ts +200 -0
- package/src/app/api/__tests__/goals-route.test.ts +184 -0
- package/src/app/api/__tests__/ids-check-route.test.ts +188 -0
- package/src/app/api/__tests__/marketplace-recipes-route.test.ts +123 -0
- package/src/app/api/__tests__/recipes-clone-route.test.ts +221 -0
- package/src/app/api/__tests__/recipes-delete-route.test.ts +248 -0
- package/src/app/api/__tests__/recipes-id-route.test.ts +166 -0
- package/src/app/api/__tests__/recipes-route.test.ts +57 -0
- package/src/app/api/__tests__/recipes-team-agents-route.test.ts +135 -0
- package/src/app/api/__tests__/scaffold-route.test.ts +173 -0
- package/src/app/api/__tests__/settings-cron-installation-route.test.ts +82 -0
- package/src/app/api/__tests__/skills-available-route.test.ts +47 -0
- package/src/app/api/__tests__/swarms-start-route.test.ts +79 -0
- package/src/app/api/__tests__/swarms-status-route.test.ts +42 -0
- package/src/app/api/__tests__/teams-file-route.test.ts +129 -0
- package/src/app/api/__tests__/teams-files-route.test.ts +57 -0
- package/src/app/api/__tests__/teams-meta-route.test.ts +113 -0
- package/src/app/api/__tests__/teams-orchestrator-install-route.test.ts +66 -0
- package/src/app/api/__tests__/teams-orchestrator-route.test.ts +59 -0
- package/src/app/api/__tests__/teams-remove-team-route.test.ts +122 -0
- package/src/app/api/__tests__/teams-skills-install-route.test.ts +78 -0
- package/src/app/api/__tests__/teams-skills-route.test.ts +73 -0
- package/src/app/api/__tests__/teams-workflow-runs-route.test.ts +85 -0
- package/src/app/api/__tests__/teams-workflows-route.test.ts +110 -0
- package/src/app/api/__tests__/tickets-move-route.test.ts +60 -0
- package/src/app/api/agents/[id]/route.ts +33 -29
- package/src/app/api/agents/add/route.ts +38 -33
- package/src/app/api/agents/file/route.ts +14 -27
- package/src/app/api/agents/files/route.ts +7 -62
- package/src/app/api/agents/route.ts +3 -10
- package/src/app/api/agents/skills/install/route.ts +2 -14
- package/src/app/api/agents/skills/route.ts +6 -18
- package/src/app/api/channels/bindings/route.ts +6 -15
- package/src/app/api/cron/__tests__/helpers.test.ts +164 -0
- package/src/app/api/cron/delete/route.ts +4 -63
- package/src/app/api/cron/helpers.ts +172 -0
- package/src/app/api/cron/jobs/route.ts +24 -113
- package/src/app/api/cron/recipe-installed/route.ts +6 -4
- package/src/app/api/gateway/restart/route.ts +2 -1
- package/src/app/api/goals/[id]/promote/route.ts +10 -43
- package/src/app/api/goals/[id]/route.ts +10 -16
- package/src/app/api/goals/route.ts +3 -6
- package/src/app/api/ids/check/route.ts +18 -26
- package/src/app/api/marketplace/recipes/[slug]/route.ts +2 -2
- package/src/app/api/recipes/[id]/route.ts +3 -9
- package/src/app/api/recipes/clone/route.ts +3 -38
- package/src/app/api/recipes/custom-team/route.ts +193 -0
- package/src/app/api/recipes/delete/helpers.ts +65 -0
- package/src/app/api/recipes/delete/route.ts +11 -78
- package/src/app/api/recipes/team-agents/__tests__/helpers.test.ts +156 -0
- package/src/app/api/recipes/team-agents/helpers.ts +151 -0
- package/src/app/api/recipes/team-agents/route.ts +27 -125
- package/src/app/api/scaffold/__tests__/helpers.test.ts +186 -0
- package/src/app/api/scaffold/helpers.ts +214 -0
- package/src/app/api/scaffold/route.ts +40 -274
- package/src/app/api/settings/cron-installation/route.ts +3 -2
- package/src/app/api/skills/available/route.ts +2 -1
- package/src/app/api/swarms/start/route.ts +100 -0
- package/src/app/api/swarms/status/route.ts +31 -0
- package/src/app/api/teams/[teamId]/tickets/assign/route.ts +105 -0
- package/src/app/api/teams/[teamId]/tickets/assignees/route.ts +27 -0
- package/src/app/api/teams/[teamId]/tickets/delete/route.ts +55 -0
- package/src/app/api/teams/[teamId]/tickets/move/route.ts +70 -0
- package/src/app/api/teams/[teamId]/tickets/move-to-goals/route.ts +56 -0
- package/src/app/api/teams/file/route.ts +26 -47
- package/src/app/api/teams/files/route.ts +13 -45
- package/src/app/api/teams/memory/route.ts +250 -0
- package/src/app/api/teams/meta/route.ts +16 -35
- package/src/app/api/teams/orchestrator/install/route.ts +129 -0
- package/src/app/api/teams/orchestrator/route.ts +216 -0
- package/src/app/api/teams/remove-team/route.ts +7 -15
- package/src/app/api/teams/skills/install/route.ts +2 -13
- package/src/app/api/teams/skills/route.ts +6 -17
- package/src/app/api/teams/workflow-runs/route.ts +534 -0
- package/src/app/api/teams/workflow-templates/route.ts +71 -0
- package/src/app/api/teams/workflows/route.ts +55 -0
- package/src/app/api/tickets/assign/route.ts +94 -0
- package/src/app/api/tickets/assignees/route.ts +24 -0
- package/src/app/api/tickets/move/route.ts +31 -0
- package/src/app/channels/channels-client.tsx +48 -47
- package/src/app/cron-jobs/cron-jobs-client.tsx +11 -14
- package/src/app/cron-jobs/page.tsx +1 -1
- package/src/app/global-error.tsx +50 -0
- package/src/app/goals/[id]/goal-editor.tsx +74 -179
- package/src/app/goals/goals-client.tsx +30 -39
- package/src/app/goals/new/page.tsx +45 -124
- package/src/app/layout.tsx +8 -0
- package/src/app/manifest.ts +15 -0
- package/src/app/not-found.tsx +8 -0
- package/src/app/page.tsx +4 -31
- package/src/app/recipes/CreateAgentModal.tsx +98 -153
- package/src/app/recipes/CreateCustomTeamModal.tsx +375 -0
- package/src/app/recipes/CreateModalShell.tsx +55 -0
- package/src/app/recipes/CreateTeamModal.tsx +54 -105
- package/src/app/recipes/[id]/RecipeEditor/RecipeEditorCreateModal.tsx +72 -0
- package/src/app/recipes/[id]/RecipeEditor/RecipeEditorPanel.tsx +216 -0
- package/src/app/recipes/[id]/RecipeEditor/index.tsx +271 -0
- package/src/app/recipes/[id]/RecipeEditor/recipe-editor-utils.ts +46 -0
- package/src/app/recipes/[id]/RecipeEditor/types.ts +52 -0
- package/src/app/recipes/[id]/page.tsx +4 -18
- package/src/app/recipes/page.tsx +9 -2
- package/src/app/recipes/recipes-client.tsx +266 -156
- package/src/app/settings/page.tsx +1 -1
- package/src/app/settings/settings-client.tsx +11 -10
- package/src/app/teams/[teamId]/CloneTeamModal.tsx +77 -111
- package/src/app/teams/[teamId]/OrchestratorPanel.tsx +255 -0
- package/src/app/teams/[teamId]/OrchestratorSetupModal.tsx +184 -0
- package/src/app/teams/[teamId]/PublishChangesModal.tsx +21 -42
- package/src/app/teams/[teamId]/page.tsx +27 -49
- package/src/app/teams/[teamId]/team-editor/TeamAgentsTab.tsx +145 -0
- package/src/app/teams/[teamId]/team-editor/TeamCronTab.tsx +72 -0
- package/src/app/teams/[teamId]/team-editor/TeamFilesTab.tsx +74 -0
- package/src/app/teams/[teamId]/team-editor/TeamMemoryTab.tsx +349 -0
- package/src/app/teams/[teamId]/team-editor/TeamRecipeTab.tsx +151 -0
- package/src/app/teams/[teamId]/team-editor/TeamSkillsTab.tsx +68 -0
- package/src/app/teams/[teamId]/team-editor/index.tsx +558 -0
- package/src/app/teams/[teamId]/team-editor/team-editor-data.ts +255 -0
- package/src/app/teams/[teamId]/team-editor/team-editor-utils.ts +78 -0
- package/src/app/teams/[teamId]/team-editor/types.ts +34 -0
- package/src/app/teams/[teamId]/tickets/[ticket]/page.tsx +35 -0
- package/src/app/teams/[teamId]/tickets/page.tsx +15 -0
- package/src/app/teams/[teamId]/workflows/[workflowId]/WorkflowCanvas.tsx +111 -0
- package/src/app/teams/[teamId]/workflows/[workflowId]/page.tsx +27 -0
- package/src/app/teams/[teamId]/workflows/[workflowId]/workflows-editor-client.tsx +1608 -0
- package/src/app/teams/[teamId]/workflows/page.tsx +40 -0
- package/src/app/teams/[teamId]/workflows/workflows-client.tsx +494 -0
- package/src/app/tickets/TicketDetailClient.tsx +147 -0
- package/src/app/tickets/TicketsBoardClient.tsx +11 -57
- package/src/app/tickets/[ticket]/TicketAssignControl.tsx +112 -0
- package/src/app/tickets/[ticket]/page.tsx +13 -21
- package/src/app/tickets/page.tsx +5 -2
- package/src/components/AppShell.tsx +252 -31
- package/src/{app/cron-jobs/DeleteCronJobModal.tsx → components/ConfirmationModal.tsx} +35 -17
- package/src/components/DeleteEntityModal.tsx +41 -0
- package/src/components/ErrorBoundary.tsx +70 -0
- package/src/components/FileListWithOptionalToggle.tsx +86 -0
- package/src/components/GoalFormFields.tsx +163 -0
- package/src/components/ScaffoldOverlay.tsx +7 -10
- package/src/components/ToastProvider.tsx +22 -18
- package/src/components/__tests__/ConfirmationModal.test.tsx +109 -0
- package/src/components/__tests__/ErrorBoundary.test.tsx +39 -0
- package/src/components/__tests__/FileListWithOptionalToggle.test.tsx +109 -0
- package/src/components/__tests__/GoalFormFields.test.tsx +117 -0
- package/src/components/delete-modals.tsx +59 -0
- package/src/components/icons.tsx +12 -10
- package/src/lib/__tests__/agent-workspace.test.ts +44 -0
- package/src/lib/__tests__/agents.test.ts +36 -0
- package/src/lib/__tests__/api-route-helpers.test.ts +188 -0
- package/src/lib/__tests__/cron.test.ts +45 -0
- package/src/lib/__tests__/editor-utils.test.ts +38 -0
- package/src/lib/__tests__/errors.test.ts +15 -0
- package/src/lib/__tests__/exec.test.ts +13 -0
- package/src/lib/__tests__/fetch-json.test.ts +118 -0
- package/src/lib/__tests__/gateway.test.ts +234 -0
- package/src/lib/__tests__/goal-promote.test.ts +39 -0
- package/src/lib/__tests__/goals-client.test.ts +26 -0
- package/src/lib/__tests__/goals.test.ts +275 -0
- package/src/lib/__tests__/json.test.ts +15 -0
- package/src/lib/__tests__/kitchen-api.test.ts +32 -0
- package/src/lib/__tests__/marketplace.test.ts +116 -0
- package/src/lib/__tests__/openclaw.test.ts +129 -0
- package/src/lib/__tests__/paths.test.ts +136 -0
- package/src/lib/__tests__/poll.test.ts +26 -0
- package/src/lib/__tests__/recipe-clone.test.ts +85 -0
- package/src/lib/__tests__/recipe-team-agents.test.ts +70 -0
- package/src/lib/__tests__/recipes.test.ts +199 -0
- package/src/lib/__tests__/scaffold-client.test.ts +106 -0
- package/src/lib/__tests__/scaffold.test.ts +64 -0
- package/src/lib/__tests__/slugify.test.ts +23 -0
- package/src/lib/__tests__/tickets.test.ts +158 -0
- package/src/lib/__tests__/type-guards.test.ts +18 -0
- package/src/lib/__tests__/use-slugified-id.test.tsx +120 -0
- package/src/lib/agents.ts +17 -0
- package/src/lib/api-route-helpers.ts +157 -0
- package/src/lib/cron.ts +40 -0
- package/src/lib/editor-utils.ts +18 -0
- package/src/lib/errors.ts +7 -0
- package/src/lib/exec.ts +4 -0
- package/src/lib/fetch-json.ts +29 -0
- package/src/lib/gateway.ts +5 -1
- package/src/lib/goal-promote.ts +27 -0
- package/src/lib/goals-client.ts +69 -0
- package/src/lib/goals.ts +22 -3
- package/src/lib/json.ts +10 -0
- package/src/lib/openclaw.ts +28 -13
- package/src/lib/paths.ts +12 -0
- package/src/lib/poll.ts +18 -0
- package/src/lib/recipe-clone.ts +42 -0
- package/src/lib/recipe-team-agents.ts +30 -0
- package/src/lib/recipes.ts +47 -0
- package/src/lib/scaffold-client.ts +31 -0
- package/src/lib/scaffold.ts +37 -0
- package/src/lib/slugify.ts +25 -0
- package/src/lib/swarms.ts +25 -0
- package/src/lib/tickets.ts +81 -25
- package/src/lib/type-guards.ts +3 -0
- package/src/lib/use-slugified-id.ts +35 -0
- package/src/lib/workflows/README.md +11 -0
- package/src/lib/workflows/__tests__/storage.test.ts +129 -0
- package/src/lib/workflows/__tests__/validate.test.ts +92 -0
- package/src/lib/workflows/api-handlers.ts +35 -0
- package/src/lib/workflows/readdir.ts +23 -0
- package/src/lib/workflows/runs-storage.ts +59 -0
- package/src/lib/workflows/runs-types.ts +42 -0
- package/src/lib/workflows/storage.ts +70 -0
- package/src/lib/workflows/templates/index.ts +1 -0
- package/src/lib/workflows/templates/marketing-cadence-v1.ts +142 -0
- package/src/lib/workflows/types.ts +48 -0
- package/src/lib/workflows/validate.ts +92 -0
- package/.next/server/app/tickets.html +0 -1
- package/.next/server/app/tickets.meta +0 -15
- package/.next/server/app/tickets.rsc +0 -19
- package/.next/server/app/tickets.segments/_full.segment.rsc +0 -19
- package/.next/server/app/tickets.segments/_head.segment.rsc +0 -6
- package/.next/server/app/tickets.segments/_index.segment.rsc +0 -6
- package/.next/server/app/tickets.segments/_tree.segment.rsc +0 -4
- package/.next/server/app/tickets.segments/tickets/__PAGE__.segment.rsc +0 -8
- package/.next/server/app/tickets.segments/tickets.segment.rsc +0 -4
- package/.next/server/chunks/[root-of-the-server]__055885ce._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__055885ce._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__0c01c5c7._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__0c01c5c7._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__1398a33a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1398a33a._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__159c002b._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__159c002b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__20c60fb7._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__20c60fb7._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__2588560d._.js +0 -6
- package/.next/server/chunks/[root-of-the-server]__2588560d._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__27293e91._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__27293e91._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__29c85a51._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__29c85a51._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__29fa8108._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__29fa8108._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__2bd44067._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__2bd44067._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__2dd1afff._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__2dd1afff._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__401ab759._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__401ab759._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__422c7160._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__422c7160._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__4670294e._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__4670294e._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__4eda99a9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__4eda99a9._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__54478298._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__54478298._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__6dbdb384._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__6dbdb384._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__94d68aa3._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__94d68aa3._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__9ecbb339._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__9ecbb339._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__a27f8405._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__a27f8405._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__a6ac3ddf._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__b11231a9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__b11231a9._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__b59b3cdd._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__b59b3cdd._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__b5c2b370._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__b5c2b370._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__b955e35a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__b955e35a._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__be5f57b2._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__c4ff0427._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__c4ff0427._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__c4ffbb03._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__c4ffbb03._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__d737ca42._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__d737ca42._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__df7df3ac._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__df7df3ac._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__dfca6557._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__dfca6557._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__e6184ba3._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__e6184ba3._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__ed0323e9._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__ed0323e9._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__f585823b._.js +0 -6
- package/.next/server/chunks/[root-of-the-server]__f585823b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__ff940674._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__ff940674._.js.map +0 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_5a9305ea.js +0 -6
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_5a9305ea.js.map +0 -1
- package/.next/server/chunks/src_lib_d2210cbf._.js +0 -3
- package/.next/server/chunks/src_lib_d2210cbf._.js.map +0 -1
- package/.next/server/chunks/ssr/[externals]__c37e9f91._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__15600e29._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__247198dc._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__2a6f1e3e._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__346f79e5._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__346f79e5._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__3575e6da._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__3ad3e5b1._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__3bc7ad0a._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__4393e897._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__4393e897._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__46e08d44._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__491e06fa._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__491e06fa._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__507d2fc9._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__507d2fc9._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__5d24d429._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__5d24d429._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__7180d770._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__82ce3aee._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__82ce3aee._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__8d24c9c3._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__8d24c9c3._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__a457c799._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__a457c799._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__bc3b27b0._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__bc3b27b0._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__f75a61bf._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__f75a61bf._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__fd669584._.js +0 -3
- package/.next/server/chunks/ssr/_0808c2b9._.js.map +0 -1
- package/.next/server/chunks/ssr/_1aad1d9b._.js +0 -24
- package/.next/server/chunks/ssr/_1aad1d9b._.js.map +0 -1
- package/.next/server/chunks/ssr/_3158c108._.js.map +0 -1
- package/.next/server/chunks/ssr/_39e6e769._.js.map +0 -1
- package/.next/server/chunks/ssr/_3c8b2df6._.js.map +0 -1
- package/.next/server/chunks/ssr/_5070929e._.js +0 -3
- package/.next/server/chunks/ssr/_5070929e._.js.map +0 -1
- package/.next/server/chunks/ssr/_68793c1f._.js.map +0 -1
- package/.next/server/chunks/ssr/_6e70b5a4._.js.map +0 -1
- package/.next/server/chunks/ssr/_8c45edba._.js.map +0 -1
- package/.next/server/chunks/ssr/_8c8207c1._.js.map +0 -1
- package/.next/server/chunks/ssr/_92140ca3._.js.map +0 -1
- package/.next/server/chunks/ssr/_b5e9afcc._.js.map +0 -1
- package/.next/server/chunks/ssr/_cd23c5af._.js.map +0 -1
- package/.next/server/chunks/ssr/_d27483a1._.js.map +0 -1
- package/.next/server/chunks/ssr/_da6f800e._.js.map +0 -1
- package/.next/server/chunks/ssr/d4b1c_modules_next_dist_server_route-modules_app-page_vendored_ssr_react-dom_6ef9314a.js +0 -3
- package/.next/server/chunks/ssr/d4b1c_modules_next_dist_server_route-modules_app-page_vendored_ssr_react-dom_6ef9314a.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_12287b3d._.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_852965c2._.js +0 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_852965c2._.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js +0 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_ece394eb.js +0 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_ece394eb.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_68c68167.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_channels_channels-client_tsx_8c8be116._.js +0 -3
- package/.next/server/chunks/ssr/src_app_channels_channels-client_tsx_8c8be116._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_goals_[id]_goal-editor_tsx_7df8193f._.js +0 -3
- package/.next/server/chunks/ssr/src_app_goals_[id]_goal-editor_tsx_7df8193f._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_goals_goals-client_tsx_a45eeff4._.js +0 -3
- package/.next/server/chunks/ssr/src_app_goals_goals-client_tsx_a45eeff4._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_goals_new_page_tsx_8f749229._.js +0 -3
- package/.next/server/chunks/ssr/src_app_goals_new_page_tsx_8f749229._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_recipes_[id]_RecipeEditor_tsx_c6d38350._.js +0 -3
- package/.next/server/chunks/ssr/src_app_recipes_[id]_RecipeEditor_tsx_c6d38350._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_settings_settings-client_tsx_279084f8._.js +0 -3
- package/.next/server/chunks/ssr/src_app_settings_settings-client_tsx_279084f8._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_team-editor_tsx_2900b91d._.js +0 -12
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_team-editor_tsx_2900b91d._.js.map +0 -1
- package/.next/static/chunks/10cbf02e6fc36465.js +0 -2
- package/.next/static/chunks/1ce21af6dfb18ee3.js +0 -1
- package/.next/static/chunks/40f7fde35327d214.js +0 -1
- package/.next/static/chunks/54beb791bcc086ae.js +0 -1
- package/.next/static/chunks/55866d57aa2c7a9c.js +0 -1
- package/.next/static/chunks/6a7862e37c616cc3.js +0 -1
- package/.next/static/chunks/817ae077ec8c6255.js +0 -1
- package/.next/static/chunks/8484c54dc9a377e8.js +0 -10
- package/.next/static/chunks/8662fcc3cdff66f3.js +0 -1
- package/.next/static/chunks/99208ebf7e47471d.js +0 -1
- package/.next/static/chunks/a4e69b85b74277a7.css +0 -3
- package/.next/static/chunks/a9ed074e89b16a5e.js +0 -1
- package/.next/static/chunks/c6dfa918cafb6c0c.js +0 -1
- package/.next/static/chunks/d1c5f764e5fd615a.js +0 -1
- package/.next/static/chunks/d4ce2f908d8c4dea.js +0 -1
- package/.next/static/chunks/de9e30e86ef31e72.js +0 -1
- package/src/app/recipes/DeleteRecipeModal.tsx +0 -62
- package/src/app/recipes/[id]/RecipeEditor.tsx +0 -697
- package/src/app/teams/[teamId]/DeleteTeamModal.tsx +0 -54
- package/src/app/teams/[teamId]/team-editor.tsx +0 -1195
- /package/.next/server/chunks/{[root-of-the-server]__74b80ca4._.js.map → [root-of-the-server]__c63a9f28._.js.map} +0 -0
- /package/.next/server/chunks/{ssr/[externals]__c37e9f91._.js.map → _next-internal_server_app_api_recipes_custom-team_route_actions_861b1489.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__3bc7ad0a._.js.map → [root-of-the-server]__0d4cb2ba._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__e2e52c6e._.js.map → [root-of-the-server]__78cdd31e._.js.map} +0 -0
- /package/.next/static/{N9RkFGiZEAkG3RdK_y3XE → z9yFlFZ5f_hw9mm0nfMJl}/_buildManifest.js +0 -0
- /package/.next/static/{N9RkFGiZEAkG3RdK_y3XE → z9yFlFZ5f_hw9mm0nfMJl}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{N9RkFGiZEAkG3RdK_y3XE → z9yFlFZ5f_hw9mm0nfMJl}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,42771,e=>{"use strict";async function t(e){return Promise.all(e.map(e=>fetch(e,{cache:"no-store"})))}async function r(e,t){let r=await fetch(e,t),o=await r.json();if(!r.ok)throw Error(o.error??"Request failed");return o}async function o(e,t){let r=await fetch(e,t),o=await r.json();return r.ok?{ok:!0,data:o}:{ok:!1,status:r.status,error:o.error??"Request failed"}}e.s(["fetchAll",()=>t,"fetchJson",()=>r,"fetchJsonWithStatus",()=>o])},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return o}});let o=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={assign:function(){return i},searchParamsToUrlQuery:function(){return s},urlQueryToSearchParams:function(){return l}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});function s(e){let t={};for(let[r,o]of e.entries()){let e=t[r];void 0===e?t[r]=o:Array.isArray(e)?e.push(o):t[r]=[e,o]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,o]of Object.entries(e))if(Array.isArray(o))for(let e of o)t.append(r,a(e));else t.set(r,a(o));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,o]of r.entries())e.append(t,o)}return e}},95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={formatUrl:function(){return l},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let s=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,o=e.protocol||"",n=e.pathname||"",l=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(s.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return o&&!o.endsWith(":")&&(o+=":"),e.slashes||(!o||a.test(o))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),l&&"#"!==l[0]&&(l="#"+l),u&&"?"!==u[0]&&(u="?"+u),n=n.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${o}${c}${n}${u}${l}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return l(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let o=e.r(71645);function n(e,t){let r=(0,o.useRef)(null),n=(0,o.useRef)(null);return(0,o.useCallback)(o=>{if(null===o){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=s(e,o)),t&&(n.current=s(t,o))},[e,t])}function s(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={DecodeError:function(){return v},MiddlewareNotFoundError:function(){return y},MissingStaticPage:function(){return k},NormalizeError:function(){return g},PageNotFoundError:function(){return b},SP:function(){return m},ST:function(){return x},WEB_VITALS:function(){return s},execOnce:function(){return a},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return i},isResSent:function(){return h},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return f},stringifyError:function(){return j}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let s=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...o)=>(r||(r=!0,t=e(...o)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>l.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function u(){let{href:e}=window.location,t=c();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function h(e){return e.finished||e.headersSent}function f(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function p(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await p(t.Component,t.ctx)}:{};let o=await e.getInitialProps(t);if(r&&h(r))return o;if(!o)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${o}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return o}let m="u">typeof performance,x=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class v extends Error{}class g extends Error{}class b extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class k extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class y extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function j(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return s}});let o=e.r(18967),n=e.r(52817);function s(e){if(!(0,o.isAbsoluteUrl)(e))return!0;try{let t=(0,o.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return o}});let o=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={default:function(){return v},useLinkStatus:function(){return b}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let s=e.r(90809),a=e.r(43476),l=s._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),d=e.r(18967),h=e.r(5550);e.r(33525);let f=e.r(91949),p=e.r(73668),m=e.r(9396);function x(e){return"string"==typeof e?e:(0,i.formatUrl)(e)}function v(t){var r;let o,n,s,[i,v]=(0,l.useOptimistic)(f.IDLE_LINK_STATUS),b=(0,l.useRef)(null),{href:k,as:y,children:j,prefetch:w=null,passHref:N,replace:C,shallow:P,scroll:M,onClick:S,onMouseEnter:E,onTouchStart:R,legacyBehavior:_=!1,onNavigate:T,ref:O,unstable_dynamicOnHover:L,...A}=t;o=j,_&&("string"==typeof o||"number"==typeof o)&&(o=(0,a.jsx)("a",{children:o}));let I=l.default.useContext(c.AppRouterContext),$=!1!==w,B=!1!==w?null===(r=w)||"auto"===r?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,{href:U,as:W}=l.default.useMemo(()=>{let e=x(k);return{href:e,as:y?x(y):e}},[k,y]);if(_){if(o?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});n=l.default.Children.only(o)}let z=_?n&&"object"==typeof n&&n.ref:O,D=l.default.useCallback(e=>(null!==I&&(b.current=(0,f.mountLinkInstance)(e,U,I,B,$,v)),()=>{b.current&&((0,f.unmountLinkForCurrentNavigation)(b.current),b.current=null),(0,f.unmountPrefetchableInstance)(e)}),[$,U,I,B,v]),F={ref:(0,u.useMergedRef)(D,z),onClick(t){_||"function"!=typeof S||S(t),_&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!I||t.defaultPrevented||function(t,r,o,n,s,a,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(r)){s&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);l.default.startTransition(()=>{d(o||r,s?"replace":"push",a??!0,n.current)})}}(t,U,W,b,C,M,T)},onMouseEnter(e){_||"function"!=typeof E||E(e),_&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),I&&$&&(0,f.onNavigationIntent)(e.currentTarget,!0===L)},onTouchStart:function(e){_||"function"!=typeof R||R(e),_&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),I&&$&&(0,f.onNavigationIntent)(e.currentTarget,!0===L)}};return(0,d.isAbsoluteUrl)(W)?F.href=W:_&&!N&&("a"!==n.type||"href"in n.props)||(F.href=(0,h.addBasePath)(W)),s=_?l.default.cloneElement(n,F):(0,a.jsx)("a",{...A,...F,children:o}),(0,a.jsx)(g.Provider,{value:i,children:s})}e.r(84508);let g=(0,l.createContext)(f.IDLE_LINK_STATUS),b=()=>(0,l.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},76972,e=>{"use strict";var t=e.i(43476),r=e.i(71645);let o=(0,r.createContext)(null);function n({kind:e}){return"success"===e?(0,t.jsx)("svg",{viewBox:"0 0 20 20",fill:"currentColor",className:"h-5 w-5 text-emerald-400",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.707a1 1 0 00-1.414-1.414L9 10.172 7.707 8.879a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})}):"error"===e?(0,t.jsx)("svg",{viewBox:"0 0 20 20",fill:"currentColor",className:"h-5 w-5 text-red-400",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm-1-5a1 1 0 112 0 1 1 0 01-2 0zm0-8a1 1 0 012 0v6a1 1 0 11-2 0V5z",clipRule:"evenodd"})}):(0,t.jsx)("svg",{viewBox:"0 0 20 20",fill:"currentColor",className:"h-5 w-5 text-slate-300",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M18 10A8 8 0 11 2 10a8 8 0 0116 0zM9 9a1 1 0 112 0v5a1 1 0 11-2 0V9zm0-3a1 1 0 112 0 1 1 0 01-2 0z",clipRule:"evenodd"})})}function s({children:e}){let[s,a]=(0,r.useState)([]),l=(0,r.useCallback)(e=>{a(t=>t.filter(t=>t.id!==e))},[]),i=(0,r.useCallback)(e=>{a(t=>t.map(t=>t.id===e?{...t,state:"leave"}:t)),window.setTimeout(()=>l(e),250)},[l]),c=(0,r.useCallback)(e=>{a(t=>t.map(t=>t.id===e?{...t,state:"show"}:t))},[]),u=(0,r.useCallback)(e=>{let t,r=`${Date.now()}-${(t=new Uint8Array(8),crypto.getRandomValues(t),Array.from(t,e=>e.toString(16).padStart(2,"0")).join(""))}`,o={id:r,timeoutMs:5e3,state:"enter",...e};a(e=>[o,...e].slice(0,4)),window.setTimeout(()=>c(r),10);let n=o.timeoutMs;n&&n>0&&window.setTimeout(()=>i(r),n)},[i,c]),d=(0,r.useMemo)(()=>({push:u}),[u]);return(0,t.jsxs)(o.Provider,{value:d,children:[e,(0,t.jsx)("div",{"aria-live":"assertive",className:"pointer-events-none fixed inset-0 z-[100] flex items-end px-4 py-6 sm:p-6",children:(0,t.jsx)("div",{className:"flex w-full flex-col items-start space-y-4",children:s.map(e=>{var r;return(0,t.jsx)("div",{className:"pointer-events-auto w-full max-w-sm overflow-hidden rounded-lg border bg-[color:var(--ck-toast-bg)] shadow-[var(--ck-shadow-2)] transition-all duration-200 ease-out border-[color:var(--ck-toast-border)] "+("enter"===(r=e.state)||"leave"===r?"translate-x-[-16px] opacity-0":"translate-x-0 opacity-100"),children:(0,t.jsx)("div",{className:"p-4",children:(0,t.jsxs)("div",{className:"flex items-start",children:[(0,t.jsx)("div",{className:"shrink-0",children:(0,t.jsx)(n,{kind:e.kind})}),(0,t.jsxs)("div",{className:"ml-3 w-0 flex-1",children:[e.title?(0,t.jsx)("p",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:e.title}):null,(0,t.jsx)("p",{className:"whitespace-pre-wrap text-sm text-[color:var(--ck-text-primary)]",children:e.message})]}),(0,t.jsx)("div",{className:"ml-4 flex shrink-0",children:(0,t.jsxs)("button",{type:"button",onClick:()=>i(e.id),className:"inline-flex rounded-md bg-transparent text-[color:var(--ck-text-tertiary)] hover:text-[color:var(--ck-text-primary)]","aria-label":"Dismiss",title:"Dismiss",children:[(0,t.jsx)("span",{className:"sr-only",children:"Close"}),(0,t.jsx)("svg",{viewBox:"0 0 20 20",fill:"currentColor",className:"h-5 w-5",children:(0,t.jsx)("path",{d:"M6.28 5.22a.75.75 0 00-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 101.06 1.06L10 11.06l3.72 3.72a.75.75 0 101.06-1.06L11.06 10l3.72-3.72a.75.75 0 10-1.06-1.06L10 8.94 6.28 5.22z"})})]})})]})})},e.id)})})})]})}function a(){let e=(0,r.useContext)(o);if(!e)throw Error("useToast must be used within ToastProvider");return e}e.s(["ToastProvider",()=>s,"useToast",()=>a])},49830,e=>{"use strict";var t=e.i(43476),r=e.i(22016),o=e.i(18566),n=e.i(71645),s=n;class a extends s.default.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){console.error("ErrorBoundary caught:",e,t)}render(){return this.state.hasError&&this.state.error?this.props.fallback?this.props.fallback:(0,t.jsxs)("div",{className:"ck-glass mx-auto max-w-2xl p-6 sm:p-8",children:[(0,t.jsx)("h1",{className:"text-xl font-semibold tracking-tight text-[color:var(--ck-text-primary)]",children:"Something went wrong"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"An unexpected error occurred. You can try refreshing the page or go back home."}),(0,t.jsx)("pre",{className:"mt-4 overflow-auto rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-3 font-mono text-xs text-[color:var(--ck-text-secondary)]",children:this.state.error.message}),(0,t.jsxs)("div",{className:"mt-6 flex flex-wrap gap-3",children:[(0,t.jsx)("button",{type:"button",onClick:()=>window.location.reload(),className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-4 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] hover:bg-[var(--ck-accent-red)]/90",children:"Refresh page"}),(0,t.jsx)(r.default,{href:"/",className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-4 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] hover:bg-white/10",children:"Go home"})]})]}):this.props.children}}var l=e.i(42771);function i({className:e,children:r}){return(0,t.jsx)("svg",{className:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:r})}function c({className:e}){return(0,t.jsxs)(i,{className:e,children:[(0,t.jsx)("path",{d:"M12 18a6 6 0 1 0 0-12 6 6 0 0 0 0 12Z",stroke:"currentColor",strokeWidth:"1.8"}),(0,t.jsx)("path",{d:"M12 2v2.5",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M12 19.5V22",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M2 12h2.5",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M19.5 12H22",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M4.2 4.2 6 6",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M18 18l1.8 1.8",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M18 6l1.8-1.8",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M4.2 19.8 6 18",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"})]})}function u({className:e}){return(0,t.jsx)(i,{className:e,children:(0,t.jsx)("path",{d:"M21 14.2A7.8 7.8 0 0 1 9.8 3a7 7 0 1 0 11.2 11.2Z",stroke:"currentColor",strokeWidth:"1.8",strokeLinejoin:"round"})})}let d="ck-theme";function h(){return"light"===window.localStorage.getItem(d)?"light":"dark"}function f(){let[e,r]=(0,n.useState)(h);(0,n.useEffect)(()=>{document.documentElement.dataset.theme=e,window.localStorage.setItem(d,e)},[e]);let o="dark"===e?"Switch to light mode":"Switch to dark mode";return(0,t.jsxs)("button",{type:"button",onClick:function(){r(e=>"dark"===e?"light":"dark")},className:"grid h-9 w-9 place-items-center rounded-full border border-[color:var(--ck-border-subtle)] bg-[color:var(--ck-bg-glass)] text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] transition-colors hover:bg-[color:var(--ck-bg-glass-strong)]","aria-label":o,title:o,children:[(0,t.jsx)("span",{className:"sr-only",suppressHydrationWarning:!0,children:o}),"dark"===e?(0,t.jsx)(u,{className:"h-4.5 w-4.5"}):(0,t.jsx)(c,{className:"h-4.5 w-4.5"})]})}var p=e.i(76972);function m({children:e}){return(0,t.jsx)("span",{className:"grid size-7 place-items-center text-[color:var(--ck-text-secondary)]","aria-hidden":!0,children:e})}function x({href:e,label:o,icon:n,active:s,collapsed:a}){return(0,t.jsxs)(r.default,{href:e,title:o,className:(s?"flex items-center rounded-[var(--ck-radius-sm)] bg-white/10 text-sm font-medium text-[color:var(--ck-text-primary)]":"flex items-center rounded-[var(--ck-radius-sm)] text-sm font-medium text-[color:var(--ck-text-secondary)] transition-colors hover:bg-white/5 hover:text-[color:var(--ck-text-primary)]")+(a?" justify-center px-0 py-3":" gap-4 px-4 py-3"),children:[n,a?null:(0,t.jsx)("span",{children:o})]})}function v({children:e}){let s=(0,o.usePathname)()||"/",i=(0,o.useRouter)(),c=(0,n.useMemo)(()=>{let e=s.match(/^\/teams\/([^/]+)(?:\/|$)/);return e?decodeURIComponent(e[1]):null},[s]),[u,d]=(0,n.useState)(!1);(0,n.useEffect)(()=>{try{let e=localStorage.getItem("ck-leftnav-collapsed");d("1"===e)}catch{}},[]);let[h,v]=(0,n.useState)([]);(0,n.useEffect)(()=>{(async()=>{try{let e=await (0,l.fetchJson)("/api/agents",{cache:"no-store"}),t=Array.isArray(e.agents)?e.agents:[],r=new Set;for(let e of t){let t=String(e.workspace??"").split("/").filter(Boolean).find(e=>e.startsWith("workspace-"))??"";if(!t)continue;let o=t.slice(10);o&&"workspace"!==o&&r.add(o)}v(Array.from(r).sort())}catch{v([])}})()},[]);let g=[{href:"/",label:"Home",icon:(0,t.jsx)(m,{children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[(0,t.jsx)("path",{d:"M3 11l9-8 9 8"}),(0,t.jsx)("path",{d:"M5 10v10h14V10"})]})})},{href:"/recipes",label:"Recipes",icon:(0,t.jsx)(m,{children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[(0,t.jsx)("path",{d:"M6 4h12v16H6z"}),(0,t.jsx)("path",{d:"M9 8h6"}),(0,t.jsx)("path",{d:"M9 12h6"})]})})},{href:"/tickets",label:"Tickets",icon:(0,t.jsx)(m,{children:(0,t.jsx)("svg",{viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeWidth:"2",children:(0,t.jsx)("path",{d:"M4 7h16v4a2 2 0 0 1 0 4v4H4v-4a2 2 0 0 0 0-4z"})})})},{href:"/goals",label:"Goals",icon:(0,t.jsx)(m,{children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,t.jsx)("path",{d:"M12 7v5l3 3"})]})})},{href:"/cron-jobs",label:"Cron jobs",icon:(0,t.jsx)(m,{children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,t.jsx)("path",{d:"M12 7v5"})]})})},{href:"/settings",label:"Settings",icon:(0,t.jsx)(m,{children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[(0,t.jsx)("path",{d:"M12 15.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7Z"}),(0,t.jsx)("path",{d:"M19.4 15a7.9 7.9 0 0 0 .1-1l2-1.5-2-3.5-2.4.5a7.8 7.8 0 0 0-1.7-1L13.5 3h-4L8.6 6.5a7.8 7.8 0 0 0-1.7 1L4.5 7l-2 3.5 2 1.5a7.9 7.9 0 0 0 .1 1l-2 1.5 2 3.5 2.4-.5a7.8 7.8 0 0 0 1.7 1L10.5 21h4l.9-3.5a7.8 7.8 0 0 0 1.7-1l2.4.5 2-3.5-2-1.5Z"})]})})}],b=u?"w-16":"w-72";return(0,t.jsx)(p.ToastProvider,{children:(0,t.jsxs)("div",{className:"flex h-dvh w-dvw overflow-hidden",children:[(0,t.jsxs)("aside",{className:`flex shrink-0 flex-col border-r border-[color:var(--ck-border-subtle)] bg-[color:var(--ck-bg-glass)] backdrop-blur-[var(--ck-glass-blur)] ${b}`,children:[(0,t.jsxs)("div",{className:"flex h-14 items-center justify-between gap-2 border-b border-[color:var(--ck-border-subtle)] px-3",children:[(0,t.jsx)(r.default,{href:"/",className:"text-sm font-semibold tracking-tight",title:"Home",children:u?"CK":"Claw Kitchen"}),(0,t.jsx)("button",{onClick:function(){d(e=>{let t=!e;try{localStorage.setItem("ck-leftnav-collapsed",t?"1":"0")}catch{}return t})},className:"rounded-[var(--ck-radius-sm)] px-2 py-1 text-sm text-[color:var(--ck-text-secondary)] hover:bg-white/5 hover:text-[color:var(--ck-text-primary)]",title:u?"Expand":"Collapse",children:u?"»":"«"})]}),(0,t.jsx)("div",{className:"border-b border-[color:var(--ck-border-subtle)] p-2",children:u?(0,t.jsx)("button",{className:"w-full rounded-[var(--ck-radius-sm)] bg-white/5 px-2 py-2 text-xs font-medium text-[color:var(--ck-text-secondary)] hover:bg-white/10",title:c?`Team: ${c}`:"Select team",onClick:()=>{h[0]&&i.push(`/teams/${encodeURIComponent(h[0])}`)},children:"👥"}):(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("div",{className:"px-2 pt-1 text-xs font-semibold uppercase tracking-wide text-[color:var(--ck-text-tertiary)]",children:"Team"}),(0,t.jsxs)("select",{value:c??"",onChange:e=>{let t=e.target.value;t&&i.push(`/teams/${encodeURIComponent(t)}`)},className:"w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-2 py-2 text-sm text-[color:var(--ck-text-primary)]",children:[(0,t.jsx)("option",{value:"",children:"(select)"}),h.map(e=>(0,t.jsx)("option",{value:e,children:e},e))]})]})}),(0,t.jsxs)("nav",{className:"min-h-0 flex-1 overflow-auto p-2",children:[(0,t.jsx)("div",{className:"mt-2 px-2 pb-2 pt-2"}),g.map(e=>(0,t.jsx)(x,{href:e.href,label:e.label,icon:(0,t.jsx)("span",{"aria-hidden":!0,children:e.icon}),collapsed:u,active:s===e.href||s.startsWith(e.href+"/")},e.href))]}),(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2 border-t border-[color:var(--ck-border-subtle)] p-2",children:[(0,t.jsx)("a",{href:"https://github.com/JIGGAI/ClawRecipes/tree/main/docs",target:"_blank",rel:"noreferrer",className:u?"mx-auto rounded-[var(--ck-radius-sm)] px-2 py-2 text-sm text-[color:var(--ck-text-secondary)] hover:bg-white/5 hover:text-[color:var(--ck-text-primary)]":"rounded-[var(--ck-radius-sm)] px-3 py-2 text-sm font-medium text-[color:var(--ck-text-secondary)] hover:bg-white/5 hover:text-[color:var(--ck-text-primary)]",title:"Docs",children:u?"📖":"Docs"}),u?null:(0,t.jsx)(f,{})]})]}),(0,t.jsx)("div",{className:"min-w-0 flex-1",children:(0,t.jsx)("main",{className:"h-full overflow-auto p-4 md:p-6",children:(0,t.jsx)(a,{children:e})})})]})})}e.s(["AppShell",()=>v],49830)}]);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,86103,e=>{"use strict";var t=e.i(43476),s=e.i(71645);e.i(22258);var a=e.i(94988),r=e.i(18566),i=e.i(54510),l=e.i(44355);function o({open:e,teamId:s,recipeId:a,onClose:r,onConfirm:i,busy:o}){return(0,t.jsxs)(l.ConfirmationModal,{open:e,onClose:r,title:"Publish changes",confirmLabel:"Publish changes",confirmBusyLabel:"Publishing…",busy:o,onConfirm:i,confirmButtonClassName:"rounded-[var(--ck-radius-sm)] bg-emerald-600 px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] hover:bg-emerald-500 disabled:opacity-50",children:[(0,t.jsxs)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:["This will re-scaffold team ",(0,t.jsx)("code",{className:"font-mono",children:s})," from recipe ",(0,t.jsx)("code",{className:"font-mono",children:a}),"."]}),(0,t.jsxs)("div",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-amber-400/30 bg-amber-500/10 p-3 text-sm text-amber-100",children:[(0,t.jsx)("div",{className:"font-medium",children:"Complete overwrite"}),(0,t.jsxs)("div",{className:"mt-1",children:["All existing team workspace files managed by the recipe will be overwritten (for example: ",(0,t.jsx)("code",{className:"font-mono",children:"AGENTS.md"}),","," ",(0,t.jsx)("code",{className:"font-mono",children:"SOUL.md"}),", role templates, and other scaffolded files). Any manual edits in those files will be lost."]})]})]})}var c=e.i(76972),n=e.i(82310),d=e.i(42771);function m(e,t){try{return JSON.parse(e)}catch{return t}}async function x(e){let[t,s]=await Promise.all([(0,d.fetchJson)("/api/recipes",{cache:"no-store"}),fetch(`/api/teams/meta?teamId=${encodeURIComponent(e)}`,{cache:"no-store"})]);return{recipesData:t,metaRes:s}}async function h(e){let t=await (0,d.fetchAll)([`/api/teams/files?teamId=${encodeURIComponent(e)}`,`/api/cron/jobs?teamId=${encodeURIComponent(e)}`,"/api/agents",`/api/teams/skills?teamId=${encodeURIComponent(e)}`,"/api/skills/available"]),s=await Promise.all(t.map(e=>e.text()));return{responses:t,texts:s}}async function p(e,t){t.setTeamFilesLoading(!0),t.setCronLoading(!0),t.setTeamAgentsLoading(!0),t.setSkillsLoading(!0);try{let{responses:s,texts:a}=await h(e),[r,i,l,o,c]=s,[n,d,x,p,u]=a,v=m(n,{});r.ok&&v.ok&&Array.isArray(v.files)&&t.setTeamFiles(v.files.map(e=>({name:String(e.name??""),missing:!!e.missing,required:!!e.required,rationale:"string"==typeof e.rationale?e.rationale:void 0})));let g=m(d,{});i.ok&&g.ok&&Array.isArray(g.jobs)&&t.setCronJobs(g.jobs);let k=m(x,{});if(l.ok&&Array.isArray(k.agents)){let s=k.agents.filter(t=>String(t.id??"").startsWith(`${e}-`));t.setTeamAgents(s.map(e=>({id:String(e.id??""),identityName:"string"==typeof e.identityName?e.identityName:void 0})))}let f=m(p,{});o.ok&&f.ok&&Array.isArray(f.skills)&&t.setSkillsList(f.skills);let y=m(u,{});if(c.ok&&y.ok&&Array.isArray(y.skills)){let e=y.skills;t.setAvailableSkills(e),t.setSelectedSkill(t=>{let s=String(t??"").trim();return s&&e.includes(s)?s:e[0]??""})}}finally{t.setTeamFilesLoading(!1),t.setCronLoading(!1),t.setTeamAgentsLoading(!1),t.setSkillsLoading(!1)}}async function u(e,t){let s=await x(e);t.setRecipes(s.recipesData.recipes??[]);let a=null;try{let e=await s.metaRes.json(),r=e.meta;s.metaRes.ok&&e.ok&&r?.recipeId?(a={recipeId:String(r.recipeId),recipeName:"string"==typeof r.recipeName?r.recipeName:void 0},t.setTeamMetaRecipeHash("string"==typeof r.recipeHash?r.recipeHash:null)):t.setTeamMetaRecipeHash(null)}catch{t.setTeamMetaRecipeHash(null)}if(a)t.setLockedFromId(a.recipeId),t.setLockedFromName(a.recipeName??null),t.setProvenanceMissing(!1),t.setFromId(a.recipeId);else{t.setLockedFromId(null),t.setLockedFromName(null),t.setProvenanceMissing(!0);let a=s.recipesData.recipes??[],r=a.find(t=>"team"===t.kind&&t.id===e),i=a.find(e=>"team"===e.kind),l=r??i;l&&t.setFromId(l.id)}await p(e,{setTeamFiles:t.setTeamFiles,setCronJobs:t.setCronJobs,setTeamAgents:t.setTeamAgents,setSkillsList:t.setSkillsList,setAvailableSkills:t.setAvailableSkills,setSelectedSkill:t.setSelectedSkill,setTeamFilesLoading:t.setTeamFilesLoading,setCronLoading:t.setCronLoading,setTeamAgentsLoading:t.setTeamAgentsLoading,setSkillsLoading:t.setSkillsLoading})}async function v(e){try{let t=await (0,d.fetchJson)("/api/agents",{cache:"no-store"}),s=(Array.isArray(t.agents)?t.agents:[]).filter(t=>String(t.id??"").startsWith(`${e}-`)).map(e=>({id:String(e.id??""),identityName:"string"==typeof e.identityName?e.identityName:void 0}));return{ok:!0,agents:s}}catch{return{ok:!1,agents:[]}}}async function g(e,t,s){try{await (0,d.fetchJson)("/api/scaffold",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({kind:"team",recipeId:t.trim(),teamId:e,applyConfig:!0,overwrite:!1,allowExisting:!0,cronInstallChoice:"no"})})}catch(e){s((0,n.errorMessage)(e),"error")}}async function k(e,t,s,a){let r=Date.now();for(;Date.now()-r<a;){try{let a=await v(e);if(a.ok){s(a.agents);let e=!!t&&a.agents.some(e=>e.id===t);if(!t||e)return!0}}catch{}await new Promise(e=>setTimeout(e,500))}return!1}async function f(e){let{teamId:t,toId:s,newRole:a,derivedRole:r,newRoleName:i,content:l,setContent:o,setTeamAgents:c,flashMessage:m,ensureCustomRecipeExists:x}=e;try{await x({overwrite:!1})}catch(t){let e=(0,n.errorMessage)(t);if(!/Recipe id already exists:/i.test(e))throw t}let h=await (0,d.fetchJson)("/api/recipes/team-agents",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify("__custom__"===a?{recipeId:s.trim(),op:"add",role:r,name:i}:{recipeId:s.trim(),op:"addLike",baseRole:r,teamId:t,name:i})});if(!h.ok)throw Error("Failed updating agents list");o(String(h.content??l)),await g(t,s,m);let p="string"==typeof h.addedAgentId?h.addedAgentId:"";if(!await k(t,p,c,5e3)&&p){try{fetch("/api/gateway/restart",{method:"POST"})}catch{}await k(t,p,c,1e4)}m(`Updated agents list in ${s}`,"success")}function y(e){return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"mt-6 grid grid-cols-1 gap-4 lg:grid-cols-2",children:[(0,t.jsxs)("div",{className:"ck-glass-strong p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Custom recipe target"}),e.loading?(0,t.jsx)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:"Loading team…"}):null]}),(0,t.jsx)("label",{className:"mt-3 block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Team id"}),(0,t.jsx)("input",{value:e.toId,onChange:t=>e.setToId(t.target.value),disabled:!e.canEditTargetId,className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)] disabled:opacity-70"}),(0,t.jsx)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:"This is the custom recipe id that will be created when you save."}),(0,t.jsx)("label",{className:"mt-3 block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Team name"}),(0,t.jsx)("input",{value:e.toName,onChange:t=>e.setToName(t.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}),(0,t.jsxs)("div",{className:"mt-4 grid grid-cols-1 gap-2",children:[(0,t.jsx)("button",{type:"button",disabled:e.saving||!e.teamIdValid||!e.targetIdValid||e.targetIsBuiltin,onClick:()=>e.onSaveCustom(!0),className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:e.saving?"Saving":"Save"}),(0,t.jsx)("button",{type:"button",disabled:e.saving||!e.teamIdValid||!e.targetIdValid||e.targetIsBuiltin||!e.loadedRecipeHash||!e.teamMetaRecipeHash||e.loadedRecipeHash===e.teamMetaRecipeHash,onClick:e.onPublishOpen,className:"rounded-[var(--ck-radius-sm)] bg-emerald-600 px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:e.publishing?"Publishing":"Publish changes"}),(0,t.jsx)("button",{type:"button",disabled:e.saving,onClick:e.onDeleteOpen,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] disabled:opacity-50",children:"Delete Team"})]})]}),(0,t.jsxs)("div",{className:"ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Notes"}),(0,t.jsxs)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Parent recipe (locked)"}),(0,t.jsx)("select",{disabled:!0,className:"mt-2 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)] disabled:opacity-70",value:e.fromId,onChange:t=>e.setFromId(t.target.value),children:e.teamRecipes.map(e=>(0,t.jsxs)("option",{value:e.id,children:[e.id," (",e.source,")"]},`${e.source}:${e.id}`))}),e.lockedFromId&&(0,t.jsxs)("div",{className:"mt-2 text-xs text-[color:var(--ck-text-tertiary)]",children:[(0,t.jsx)("code",{children:e.lockedFromId}),e.lockedFromName?` (${e.lockedFromName})`:""]}),!e.lockedFromId&&e.provenanceMissing&&(0,t.jsx)("div",{className:"mt-2 text-xs text-[color:var(--ck-text-tertiary)]",children:"Provenance not found for this team."})]}),(0,t.jsxs)("ul",{className:"mt-4 list-disc space-y-1 pl-5 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("li",{children:"Save writes the custom recipe file identified by Team id."}),(0,t.jsx)("li",{children:"Publish changes re-scaffolds this team from your custom recipe."}),(0,t.jsx)("li",{children:"Delete Team runs openclaw recipes remove-team."})]})]})]}),(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Recipe markdown"}),e.recipeLoadError?(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:e.recipeLoadError}):null,(0,t.jsx)("textarea",{value:e.content,onChange:t=>{e.setContent(t.target.value),e.setLoadedRecipeHash(null)},className:"mt-2 h-[55vh] w-full resize-none rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-3 font-mono text-xs text-[color:var(--ck-text-primary)]",spellCheck:!1})]})]})}function b(e){let{teamId:s,toId:a,recipeAgents:r,newRole:i,setNewRole:l,customRole:o,setCustomRole:c,newRoleName:n,setNewRoleName:d,derivedRole:m,saving:x,teamAgents:h,teamAgentsLoading:p,onAddAgent:u}=e;return(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Agents in this team"}),(0,t.jsxs)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:["Add/remove agents by updating the ",(0,t.jsx)("code",{children:"agents:"})," list in your custom team recipe (",(0,t.jsx)("code",{children:a}),")."]}),(0,t.jsxs)("div",{className:"mt-4 grid grid-cols-1 gap-3 sm:grid-cols-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Role"}),(0,t.jsxs)("select",{value:i,onChange:e=>{let t=e.target.value;if(l(t),"__custom__"===t){c(""),d("");return}c("");let s=r.find(e=>e.role===t);d(s?.name||"")},className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]",children:[(0,t.jsx)("option",{value:"",children:"Select…"}),r.map(e=>(0,t.jsx)("option",{value:e.role,children:e.name||e.role},e.role)),(0,t.jsx)("option",{value:"__custom__",children:"Other…"})]}),"__custom__"===i?(0,t.jsx)("input",{value:o,onChange:e=>c(e.target.value),placeholder:"role (e.g. researcher)",className:"mt-2 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}):null,(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:["This writes to the recipe's ",(0,t.jsx)("code",{children:"agents:"})," list."]})]}),(0,t.jsx)("div",{className:"sm:col-span-2",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Name (optional)"}),(0,t.jsx)("input",{value:n,onChange:e=>d(e.target.value),placeholder:"Onchain Researcher",className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"})]})})]}),(0,t.jsx)("div",{className:"mt-3 flex flex-wrap gap-2",children:(0,t.jsx)("button",{disabled:x||!m,onClick:u,className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:"Add agent"})}),(0,t.jsxs)("div",{className:"mt-6",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Detected installed team agents (read-only)"}),(0,t.jsxs)("ul",{className:"mt-2 space-y-2",children:[h.length?h.map(e=>(0,t.jsxs)("li",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"truncate text-sm font-medium text-[color:var(--ck-text-primary)]",children:e.identityName||e.id}),(0,t.jsx)("div",{className:"text-xs text-[color:var(--ck-text-secondary)]",children:e.id})]}),(0,t.jsx)("a",{className:"text-sm font-medium text-[var(--ck-accent-red)] hover:text-[color:var(--ck-accent-red-hover)]",href:"/agents/"+encodeURIComponent(e.id)+"?returnTo="+encodeURIComponent("/teams/"+s+"?tab=agents"),children:"Edit"})]},e.id)):null,0===h.length&&!p&&(0,t.jsx)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"No team agents detected."}),0===h.length&&p&&(0,t.jsx)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"Loading…"})]})]})]})}function j(e){return(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Skills"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"Skills installed in this team workspace. For agent-specific skills, open the agent from the Agents tab."}),(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Installed"}),(0,t.jsx)("ul",{className:"mt-2 list-disc space-y-1 pl-5 text-sm text-[color:var(--ck-text-secondary)]",children:e.skillsList.length?e.skillsList.map(e=>(0,t.jsx)("li",{children:e},e)):(0,t.jsx)("li",{children:"None installed."})})]}),(0,t.jsxs)("div",{className:"mt-5 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/15 p-3",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Add a skill"}),(0,t.jsxs)("div",{className:"mt-2 flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,t.jsx)("select",{value:e.selectedSkill,onChange:t=>e.setSelectedSkill(t.target.value),disabled:e.installingSkill||e.skillsLoading||!e.availableSkills.length,className:"w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]",children:e.availableSkills.length?e.availableSkills.map(e=>(0,t.jsx)("option",{value:e,children:e},e)):(0,t.jsx)("option",{value:"",children:"No skills found"})}),(0,t.jsx)("button",{type:"button",disabled:e.installingSkill||e.skillsLoading||!e.selectedSkill,onClick:e.onInstallSkill,className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:e.installingSkill?"Adding":"Add"})]}),e.teamSkillError&&(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:e.teamSkillError}),e.teamSkillMsg&&(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-emerald-400/30 bg-emerald-500/10 p-3 text-sm text-emerald-100",children:e.teamSkillMsg}),(0,t.jsxs)("div",{className:"mt-2 text-xs text-[color:var(--ck-text-tertiary)]",children:["Uses openclaw recipes install-skill with team-id ",e.teamId,"."]})]})]})}function N(e){let{cronJobs:s,cronLoading:a,saving:r,onCronAction:i}=e;return(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Cron jobs (filtered by team name)"}),(0,t.jsxs)("ul",{className:"mt-3 space-y-3",children:[s.length?s.map(e=>{let s=String(e.id??e.jobId??"").trim(),a=s||String(e.name??"job"),l=String(e.name??e.id??e.jobId??"(unnamed)"),o=e.enabled??e.state?.enabled;return(0,t.jsxs)("li",{className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"font-medium text-[color:var(--ck-text-primary)]",children:l}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-secondary)]",children:["Enabled: ",String(o??"?")]}),(0,t.jsxs)("div",{className:"mt-2 flex flex-wrap gap-2",children:[(0,t.jsx)("button",{disabled:r||!s,onClick:()=>i(s,l,"run"),className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-2.5 py-1.5 text-xs font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:"Run"}),(0,t.jsx)("button",{disabled:r||!s,onClick:()=>i(s,l,"enable"),className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-2.5 py-1.5 text-xs font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:"Enable"}),(0,t.jsx)("button",{disabled:r||!s,onClick:()=>i(s,l,"disable"),className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-2.5 py-1.5 text-xs font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:"Disable"}),s?null:(0,t.jsx)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:"(missing id)"})]})]},a)}):null,0===s.length&&a&&(0,t.jsx)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"Loading"}),0===s.length&&!a&&(0,t.jsx)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"No cron jobs detected for this team."})]})]})}var w=e.i(72532);function S(e){let{teamFiles:s,teamFilesLoading:a,showOptionalFiles:r,setShowOptionalFiles:i,fileName:l,fileContent:o,setFileContent:c,teamFileError:n,saving:d,onLoadTeamFile:m,onSaveTeamFile:x}=e;return(0,t.jsxs)("div",{className:"mt-6 grid grid-cols-1 gap-4 lg:grid-cols-3",children:[(0,t.jsx)(w.FileListWithOptionalToggle,{title:"Team files",files:s,loading:a,showOptionalFiles:r,onShowOptionalChange:i,selectedFileName:l,onSelectFile:m}),(0,t.jsxs)("div",{className:"ck-glass-strong p-4 lg:col-span-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:["Edit: ",l]}),(0,t.jsx)("button",{disabled:d,onClick:x,className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:d?"Saving…":"Save file"})]}),n?(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:n}):null,(0,t.jsx)("textarea",{value:o,onChange:e=>c(e.target.value),className:"mt-3 h-[55vh] w-full resize-none rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-3 font-mono text-xs text-[color:var(--ck-text-primary)]",spellCheck:!1})]})]})}function I(e){return`${e._file??""}:${e._line??0}`}function C({teamId:e}){let[a,r]=(0,s.useState)(!1),[i,l]=(0,s.useState)(""),[o,c]=(0,s.useState)([]),[d,m]=(0,s.useState)([]),[x,h]=(0,s.useState)([]),[p,u]=(0,s.useState)("learning"),[v,g]=(0,s.useState)(""),[k,f]=(0,s.useState)(""),[y,b]=(0,s.useState)(!1),[j,N]=(0,s.useState)(null);async function w(){r(!0),l("");try{let t=await fetch(`/api/teams/memory?teamId=${encodeURIComponent(e)}`,{cache:"no-store"}),s=await t.json();if(!t.ok||!s.ok)throw Error(s.error||"Failed to load memory");c(Array.isArray(s.files)?s.files:[]),m(Array.isArray(s.pinnedItems)?s.pinnedItems:[]),h(Array.isArray(s.items)?s.items:[])}catch(e){l((0,n.errorMessage)(e)),c([]),m([]),h([])}finally{r(!1)}}(0,s.useEffect)(()=>{w()},[e]);let S=(0,s.useMemo)(()=>[{label:"decision",value:"decision"},{label:"learning",value:"learning"},{label:"bug",value:"bug"},{label:"customer",value:"customer"},{label:"release",value:"release"}],[]),C=(0,s.useMemo)(()=>new Set(d.map(e=>e._key)),[d]);async function T(t){let s=I(t);if(t._file&&t._line){N(s),l("");try{let s={op:"pin",ts:new Date().toISOString(),actor:`${e}-lead`,key:{file:"team.jsonl",line:t._line},item:{ts:t.ts,author:t.author,type:t.type,content:t.content,source:t.source}},a=await fetch(`/api/teams/memory?teamId=${encodeURIComponent(e)}`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(s)}),r=await a.json();if(!a.ok||!r.ok)throw Error(r.error||"Failed to pin");await w()}catch(e){l((0,n.errorMessage)(e))}finally{N(null)}}}async function A(t){let s=I(t);if(t._file&&t._line){N(s),l("");try{let s={op:"unpin",ts:new Date().toISOString(),actor:`${e}-lead`,key:{file:"team.jsonl",line:t._line}},a=await fetch(`/api/teams/memory?teamId=${encodeURIComponent(e)}`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(s)}),r=await a.json();if(!a.ok||!r.ok)throw Error(r.error||"Failed to unpin");await w()}catch(e){l((0,n.errorMessage)(e))}finally{N(null)}}}return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"ck-glass p-4",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Team memory (file-first)"}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:["Stored in ",(0,t.jsx)("span",{className:"font-mono",children:"shared-context/memory/*.jsonl"}),". Items must be attributable."]})]}),(0,t.jsx)("button",{type:"button",onClick:w,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10",children:"Refresh"})]}),i?(0,t.jsx)("div",{className:"mt-3 rounded border border-red-400/30 bg-red-500/10 p-2 text-sm text-red-100",children:i}):null,(0,t.jsxs)("div",{className:"mt-3 text-xs text-[color:var(--ck-text-secondary)]",children:["Files: ",o.length?o.join(", "):"(none)"]})]}),(0,t.jsxs)("div",{className:"ck-glass p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Add memory item"}),(0,t.jsxs)("div",{className:"mt-3 grid grid-cols-1 gap-3 md:grid-cols-2",children:[(0,t.jsxs)("label",{className:"block",children:[(0,t.jsx)("div",{className:"text-[10px] uppercase tracking-wide text-[color:var(--ck-text-tertiary)]",children:"type"}),(0,t.jsx)("select",{value:p,onChange:e=>u(e.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-2 py-2 text-sm text-[color:var(--ck-text-primary)]",children:S.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))})]}),(0,t.jsxs)("label",{className:"block",children:[(0,t.jsx)("div",{className:"text-[10px] uppercase tracking-wide text-[color:var(--ck-text-tertiary)]",children:"source (ticket/pr/path)"}),(0,t.jsx)("input",{value:k,onChange:e=>f(e.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-2 py-2 text-sm text-[color:var(--ck-text-primary)]",placeholder:"e.g. ticket 0088, PR https://..., shared-context/DECISIONS.md"})]}),(0,t.jsxs)("label",{className:"block md:col-span-2",children:[(0,t.jsx)("div",{className:"text-[10px] uppercase tracking-wide text-[color:var(--ck-text-tertiary)]",children:"content"}),(0,t.jsx)("textarea",{value:v,onChange:e=>g(e.target.value),className:"mt-1 h-[110px] w-full resize-none rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-2 text-sm text-[color:var(--ck-text-primary)]",placeholder:"Write a small, specific memory item…"})]}),(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)("button",{type:"button",disabled:y||!v.trim(),onClick:async()=>{b(!0),l("");try{let t={op:"append",ts:new Date().toISOString(),author:`${e}-lead`,type:p,content:v.trim(),source:k.trim()?{text:k.trim()}:void 0,file:"team.jsonl"},s=await fetch(`/api/teams/memory?teamId=${encodeURIComponent(e)}`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(t)}),a=await s.json();if(!s.ok||!a.ok)throw Error(a.error||"Failed to append memory");g(""),f(""),await w()}catch(e){l((0,n.errorMessage)(e))}finally{b(!1)}},className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:y?"Saving…":"Append to team.jsonl"})})]})]}),(0,t.jsxs)("div",{className:"ck-glass p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Pinned memory"}),(0,t.jsxs)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:[d.length," pinned"]})]}),a?(0,t.jsx)("div",{className:"mt-3 text-sm text-[color:var(--ck-text-secondary)]",children:"Loading…"}):null,(0,t.jsx)("div",{className:"mt-3 space-y-3",children:d.length?d.map(e=>(0,t.jsxs)("div",{className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,t.jsxs)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:[(0,t.jsx)("span",{className:"font-mono",children:e.ts}),(0,t.jsx)("span",{className:"mx-2",children:"•"}),(0,t.jsx)("span",{className:"rounded bg-white/5 px-2 py-0.5 font-mono",children:e.type}),(0,t.jsx)("span",{className:"mx-2",children:"•"}),(0,t.jsx)("span",{className:"font-mono",children:e.author}),(0,t.jsx)("span",{className:"mx-2",children:"•"}),(0,t.jsxs)("span",{className:"font-mono",children:["pinned ",e.pinnedAt]})]}),(0,t.jsx)("button",{type:"button",onClick:()=>void A(e),disabled:j===e._key,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-2 py-1 text-xs font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:j===e._key?"Unpinning…":"Unpin"})]}),(0,t.jsx)("div",{className:"mt-2 whitespace-pre-wrap text-sm text-[color:var(--ck-text-primary)]",children:e.content}),e.source?(0,t.jsx)("pre",{className:"mt-2 overflow-auto rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/30 p-2 text-[10px] text-[color:var(--ck-text-secondary)]",children:JSON.stringify(e.source,null,2)}):null]},e._key)):(0,t.jsx)("div",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"No pinned items yet."})})]}),(0,t.jsxs)("div",{className:"ck-glass p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Recent memory"}),(0,t.jsxs)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:["Showing ",x.length," (max 200)"]})]}),a?(0,t.jsx)("div",{className:"mt-3 text-sm text-[color:var(--ck-text-secondary)]",children:"Loading…"}):null,(0,t.jsx)("div",{className:"mt-3 space-y-3",children:x.length?x.map(e=>{let s=I(e),a=C.has(s);return(0,t.jsxs)("div",{className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,t.jsxs)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:[(0,t.jsx)("span",{className:"font-mono",children:e.ts}),(0,t.jsx)("span",{className:"mx-2",children:"•"}),(0,t.jsx)("span",{className:"rounded bg-white/5 px-2 py-0.5 font-mono",children:e.type}),(0,t.jsx)("span",{className:"mx-2",children:"•"}),(0,t.jsx)("span",{className:"font-mono",children:e.author})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[e._file?(0,t.jsxs)("span",{className:"text-[10px] text-[color:var(--ck-text-tertiary)] font-mono",children:[e._file,":",e._line]}):null,(0,t.jsx)("button",{type:"button",onClick:()=>void T(e),disabled:a||j===s||!e._file||!e._line,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-2 py-1 text-xs font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:a?"Pinned":j===s?"Pinning…":"Pin"})]})]}),(0,t.jsx)("div",{className:"mt-2 whitespace-pre-wrap text-sm text-[color:var(--ck-text-primary)]",children:e.content}),e.source?(0,t.jsx)("pre",{className:"mt-2 overflow-auto rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/30 p-2 text-[10px] text-[color:var(--ck-text-secondary)]",children:JSON.stringify(e.source,null,2)}):null]},`${e._file??"?"}:${e._line??0}`)}):(0,t.jsx)("div",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"No memory items yet."})})]})]})}var T=e.i(74080);function A({open:e,onClose:a,teamId:r,onInstalled:i}){let l=(0,s.useMemo)(()=>`${r}-swarm-orchestrator`,[r]),[o,c]=(0,s.useState)(l),[n,m]=(0,s.useState)(""),[x,h]=(0,s.useState)("/home/control/swarm-worktrees"),[p,u]=(0,s.useState)("origin/main"),[v,g]=(0,s.useState)(!0),[k,f]=(0,s.useState)(!0),[y,b]=(0,s.useState)(!1),[j,N]=(0,s.useState)(null),[w,S]=(0,s.useState)(null),I=(0,s.useMemo)(()=>({effectiveAgentId:String(o??"").toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/--+/g,"-")}),[o]);return e?(0,T.createPortal)((0,t.jsxs)("div",{className:"fixed inset-0 z-[210]",children:[(0,t.jsx)("div",{className:"fixed inset-0 bg-black/60",onClick:()=>{y||a()}}),(0,t.jsx)("div",{className:"fixed inset-0 overflow-y-auto",children:(0,t.jsx)("div",{className:"flex min-h-full items-center justify-center p-4",children:(0,t.jsxs)("div",{className:"w-full max-w-xl rounded-2xl border border-white/10 bg-[color:var(--ck-bg-glass-strong)] p-5 shadow-[var(--ck-shadow-2)]",children:[(0,t.jsx)("div",{className:"text-lg font-semibold text-[color:var(--ck-text-primary)]",children:"Add Orchestrator"}),(0,t.jsxs)("p",{className:"mt-1 text-sm text-[color:var(--ck-text-secondary)]",children:["This will scaffold a new ",(0,t.jsx)("span",{className:"font-mono text-xs",children:"swarm-orchestrator"})," agent workspace for this team and prefill its config."]}),(0,t.jsx)("label",{className:"mt-4 block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Orchestrator agent id"}),(0,t.jsx)("input",{value:o,onChange:e=>c(e.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:["Default: ",(0,t.jsx)("span",{className:"font-mono",children:l})," (normalized: ",(0,t.jsx)("span",{className:"font-mono",children:I.effectiveAgentId}),")"]}),(0,t.jsx)("label",{className:"mt-4 block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Repo directory (SWARM_REPO_DIR)"}),(0,t.jsx)("input",{value:n,onChange:e=>m(e.target.value),placeholder:"/home/control/clawkitchen",className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}),(0,t.jsxs)("div",{className:"mt-4 grid grid-cols-1 gap-3 md:grid-cols-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Worktree root (SWARM_WORKTREE_ROOT)"}),(0,t.jsx)("input",{value:x,onChange:e=>h(e.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}),(0,t.jsx)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:"Recommend a dedicated folder outside the repo."})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Base ref (SWARM_BASE_REF)"}),(0,t.jsx)("input",{value:p,onChange:e=>u(e.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"})]})]}),(0,t.jsxs)("label",{className:"mt-5 flex items-start gap-2 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("input",{type:"checkbox",checked:v,onChange:e=>g(e.target.checked),className:"mt-1"}),(0,t.jsxs)("span",{children:["Add this agent to OpenClaw config (recommended).",(0,t.jsx)("br",{}),(0,t.jsxs)("span",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:["This will modify ",(0,t.jsx)("span",{className:"font-mono",children:"~/.openclaw/openclaw.json"})," to add ",(0,t.jsx)("span",{className:"font-mono",children:I.effectiveAgentId}),"."]})]})]}),(0,t.jsxs)("label",{className:"mt-3 flex items-start gap-2 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("input",{type:"checkbox",checked:k,onChange:e=>f(e.target.checked),className:"mt-1"}),(0,t.jsxs)("span",{children:["Make scripts executable (developer convenience).",(0,t.jsx)("br",{}),(0,t.jsxs)("span",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:["Runs ",(0,t.jsx)("span",{className:"font-mono",children:"chmod +x .clawdbot/*.sh"})," in the orchestrator workspace."]})]})]}),j?(0,t.jsx)("div",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:j}):null,w?(0,t.jsxs)("div",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-emerald-400/30 bg-emerald-500/10 p-3 text-sm text-emerald-100",children:["Installed ",(0,t.jsx)("span",{className:"font-mono",children:w.orchestratorAgentId})," → ",(0,t.jsx)("span",{className:"font-mono",children:w.workspace})]}):null,(0,t.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:a,disabled:y,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:"Cancel"}),(0,t.jsx)("button",{type:"button",disabled:y||!I.effectiveAgentId||!n.trim(),onClick:async()=>{b(!0),N(null),S(null);try{let e=await (0,d.fetchJson)("/api/teams/orchestrator/install",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({teamId:r,orchestratorAgentId:I.effectiveAgentId,repoDir:n.trim(),worktreeRoot:x.trim(),baseRef:p.trim(),applyConfig:v,makeExecutable:k})});if(!e.ok)throw Error(e.error);S({orchestratorAgentId:e.orchestratorAgentId,workspace:e.workspace}),i()}catch(e){N(e instanceof Error?e.message:String(e))}finally{b(!1)}},className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] hover:bg-[var(--ck-accent-red-hover)] disabled:opacity-50",children:y?"Installing…":"Install"})]})]})})})]}),document.body):null}function R({teamId:e}){let[a,r]=(0,s.useState)(!0),[i,l]=(0,s.useState)(null),[o,c]=(0,s.useState)(null),[n,m]=(0,s.useState)(!1),x=(0,s.useCallback)(async()=>{r(!0);try{let t=await (0,d.fetchJson)(`/api/teams/orchestrator?teamId=${encodeURIComponent(e)}`,{cache:"no-store"});l(t),c(new Date().toISOString())}catch(e){l({ok:!1,error:e instanceof Error?e.message:String(e)}),c(new Date().toISOString())}finally{r(!1)}},[e]);return((0,s.useEffect)(()=>{x()},[x]),a)?(0,t.jsx)("div",{className:"mt-6 ck-glass-strong p-4",children:"Loading orchestrator state…"}):i?i.ok?i.present?(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Orchestrator"}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-secondary)]",children:["Agent: ",(0,t.jsx)("span",{className:"font-mono",children:i.agent.id}),i.agent.identityName?` (${i.agent.identityName})`:""]}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-secondary)]",children:["Workspace: ",(0,t.jsx)("span",{className:"font-mono",children:i.agent.workspace})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:o?(0,t.jsxs)("span",{children:["Last updated: ",(0,t.jsx)("span",{className:"font-mono",children:o})]}):null}),(0,t.jsx)("button",{type:"button",onClick:()=>void x(),disabled:a,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] transition-colors hover:bg-white/10 active:bg-white/15 disabled:opacity-50",children:a?"Refreshing…":"Refresh"})]})]}),(0,t.jsxs)("div",{className:"mt-5 grid grid-cols-1 gap-4 lg:grid-cols-2",children:[(0,t.jsxs)("section",{className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"tmux sessions"}),i.tmuxSessions.length?(0,t.jsx)("ul",{className:"mt-2 space-y-2",children:i.tmuxSessions.map(e=>(0,t.jsxs)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("span",{className:"font-mono",children:e.name}),(0,t.jsxs)("span",{className:"ml-2 text-xs text-[color:var(--ck-text-tertiary)]",children:["attached=",String(e.attached),"number"==typeof e.windows?` windows=${e.windows}`:""]})]},e.name))}):(0,t.jsx)("div",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"No sessions detected (or tmux not running)."})]}),(0,t.jsxs)("section",{className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"git worktrees"}),i.worktrees.length?(0,t.jsx)("ul",{className:"mt-2 space-y-2",children:i.worktrees.map(e=>(0,t.jsxs)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("div",{className:"font-mono text-xs",children:e.path}),(0,t.jsxs)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:[e.branch?e.branch:"(no branch)",e.sha?` @ ${e.sha.slice(0,7)}`:""]})]},e.path))}):(0,t.jsx)("div",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"No worktrees detected."})]})]}),(0,t.jsxs)("section",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Active tasks"}),i.activeTasksSummary?(0,t.jsxs)("div",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("div",{className:"font-mono text-xs",children:i.activeTasksSummary.path}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:["number"==typeof i.activeTasksSummary.taskCount?`tasks=${i.activeTasksSummary.taskCount}`:"tasks=?",i.activeTasksSummary.rawType?` type=${i.activeTasksSummary.rawType}`:""]})]}):(0,t.jsx)("div",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"No active-tasks.json found."})]}),(0,t.jsxs)("section",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"CLI quick actions"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"The orchestrator is designed to be driven from the CLI (and usually tmux). Common commands:"}),(0,t.jsxs)("ul",{className:"mt-2 list-disc space-y-1 pl-5 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsxs)("li",{children:[(0,t.jsx)("span",{className:"font-mono text-xs",children:"tmux ls"}),(0,t.jsx)("span",{className:"ml-2 text-xs text-[color:var(--ck-text-tertiary)]",children:"(list sessions)"})]}),(0,t.jsxs)("li",{children:[(0,t.jsx)("span",{className:"font-mono text-xs",children:"tmux attach -t <session>"}),(0,t.jsx)("span",{className:"ml-2 text-xs text-[color:var(--ck-text-tertiary)]",children:"(jump into a running swarm)"})]}),(0,t.jsxs)("li",{children:[(0,t.jsxs)("span",{className:"font-mono text-xs",children:["git -C ",i.agent.workspace," worktree list"]}),(0,t.jsx)("span",{className:"ml-2 text-xs text-[color:var(--ck-text-tertiary)]",children:"(inspect worktrees)"})]})]}),(0,t.jsx)("p",{className:"mt-3 text-xs text-[color:var(--ck-text-tertiary)]",children:"Note: ClawKitchen is read-only here; it surfaces status and pointers, but does not run or attach to tmux."})]}),(0,t.jsxs)("section",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Human approval gate (recommended)"}),(0,t.jsxs)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:["For workflows that publish, deploy, or send outbound messages, keep a ",(0,t.jsx)("strong",{children:"human approval step"}),"."]}),(0,t.jsxs)("ul",{className:"mt-2 list-disc space-y-1 pl-5 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("li",{children:"Generate a proposed change/post as a draft."}),(0,t.jsx)("li",{children:"Send the draft to a bound messaging channel (e.g. Telegram) for approval."}),(0,t.jsx)("li",{children:"Only execute the final action after explicit approve/deny."})]})]}),(0,t.jsxs)("section",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Where to change settings"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"These are the common knobs for a swarm/orchestrator scaffold (read-only references):"}),(0,t.jsx)("ul",{className:"mt-2 list-disc space-y-1 pl-5 text-sm text-[color:var(--ck-text-secondary)]",children:i.settingsPaths.map(e=>(0,t.jsx)("li",{className:"font-mono text-xs",children:e},e))})]})]}):(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Orchestrator"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"No swarm/orchestrator detected for this team."})]}),(0,t.jsx)("button",{type:"button",onClick:()=>m(!0),className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] hover:bg-[var(--ck-accent-red-hover)]",children:"Add Orchestrator"})]}),(0,t.jsxs)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/20 p-3 text-sm text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-tertiary)]",children:"Detection"}),(0,t.jsx)("div",{className:"mt-1 font-mono text-xs",children:i.reason||"(no reason provided)"})]}),(0,t.jsxs)("p",{className:"mt-3 text-sm text-[color:var(--ck-text-secondary)]",children:["Default convention is ",(0,t.jsx)("code",{children:"<teamId>-swarm-orchestrator"}),". Once installed, this tab will show: tmux sessions, git worktrees/branches, and active task state."]}),(0,t.jsx)(A,{open:n,onClose:()=>m(!1),teamId:e,onInstalled:()=>{m(!1),x()}})]}):(0,t.jsxs)("div",{className:"mt-6 ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Orchestrator"}),(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:i.error})]}):(0,t.jsx)("div",{className:"mt-6 ck-glass-strong p-4",children:"No orchestrator state available."})}var O=e.i(92140);let L=[{id:"recipe",label:"Recipe"},{id:"agents",label:"Agents"},{id:"skills",label:"Skills"},{id:"cron",label:"Cron"},{id:"files",label:"Files"},{id:"memory",label:"Memory"},{id:"orchestrator",label:"Orchestrator"},{id:"workflows",label:"Workflows"}];function $({teamId:e,initialTab:l}){let m=(0,r.useRouter)(),[x,h]=(0,s.useState)([]),[p,v]=(0,s.useState)(""),[g,k]=(0,s.useState)(null),[w,I]=(0,s.useState)(null),[T,A]=(0,s.useState)(!1),[$,F]=(0,s.useState)(e),[_,M]=(0,s.useState)(e),[P,E]=(0,s.useState)(""),[J,U]=(0,s.useState)(null),[D,H]=(0,s.useState)(()=>["recipe","agents","skills","cron","files","memory","orchestrator","workflows"].includes(l)?l:"recipe"),[W,B]=(0,s.useState)(!0),[z,V]=(0,s.useState)(!1),[q,K]=(0,s.useState)(!1),[G,Q]=(0,s.useState)(!1),[X,Y]=(0,s.useState)(!1),[Z,ee]=(0,s.useState)(""),et=(0,c.useToast)(),[es,ea]=(0,s.useState)(!1),[er,ei]=(0,s.useState)(!1),[el,eo]=(0,s.useState)(null);function ec(e,t="info"){let s=String(e??"").trim();s&&et.push({kind:t,message:s})}let[en,ed]=(0,s.useState)([]),[em,ex]=(0,s.useState)(!1),[eh,ep]=(0,s.useState)(""),[eu,ev]=(0,s.useState)(!1),[eg,ek]=(0,s.useState)("SOUL.md"),[ef,ey]=(0,s.useState)(""),[eb,ej]=(0,s.useState)([]),[eN,ew]=(0,s.useState)(!1),[eS,eI]=(0,s.useState)([]),[eC,eT]=(0,s.useState)(!1),eA=(0,s.useMemo)(()=>{let e=String(P??"");if(!e.startsWith("---\n"))return[];let t=e.indexOf("\n---\n",4);if(-1===t)return[];let s=e.slice(4,t+1);try{let e=(0,a.parse)(s)??{};return(Array.isArray(e.agents)?e.agents:[]).map(e=>e).map(e=>({role:String(e.role??"").trim(),name:"string"==typeof e.name?e.name:void 0})).filter(e=>!!e.role)}catch{return[]}},[P]),[eR,eO]=(0,s.useState)(""),[eL,e$]=(0,s.useState)(""),[eF,e_]=(0,s.useState)(""),eM=(0,s.useMemo)(()=>("__custom__"===eR?eL:eR).trim()||"",[eR,eL]),[eP,eE]=(0,s.useState)([]),[eJ,eU]=(0,s.useState)([]),[eD,eH]=(0,s.useState)(!1),[eW,eB]=(0,s.useState)(""),[ez,eV]=(0,s.useState)(!1),[eq,eK]=(0,s.useState)(""),[eG,eQ]=(0,s.useState)(""),eX=(0,s.useMemo)(()=>x.filter(e=>"team"===e.kind),[x]),eY=(0,s.useMemo)(()=>x.find(e=>e.id===$&&"workspace"===e.source)??x.find(e=>e.id===$)??null,[x,$]),eZ=!!e.trim(),e0=!!$.trim(),e1=x.some(e=>e.id===$&&"workspace"===e.source),e2=!!(eY?.source==="builtin"&&!e1);async function e3(){let e=$.trim();if(e){Y(!0),ee("");try{let t=await (0,d.fetchJson)(`/api/recipes/${encodeURIComponent(e)}`,{cache:"no-store"}),s=t.recipe;E(s.content),U("string"==typeof t.recipeHash?t.recipeHash:null)}catch(e){ee((0,n.errorMessage)(e))}finally{Y(!1)}}}async function e5(e){let t=p.trim(),s=String(e.toId??$).trim(),a=String(e.toName??_).trim(),r=!!e.overwrite,i=!!e.scaffold;if(!t)throw Error("Source recipe id is required");if(!s)throw Error("Custom recipe id is required");return await (0,d.fetchJson)("/api/recipes/clone",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({fromId:t,toId:s,toName:a||void 0,overwrite:r,scaffold:i})})}async function e4(e,t){V(!0),ec("");try{let s=await e5({overwrite:e,...t});if(s.scaffold&&!s.scaffold.ok&&ec(`Scaffold failed (recipe was still cloned): ${s.scaffold.error||"Unknown error"}`,"error"),P.trim()&&P.trim()!==s.content.trim()){let e=function(e,t){if(!e.startsWith("---\n"))return e;let s=e.indexOf("\n---\n",4);if(-1===s)return e;let a=e.slice(4,s),r=e.slice(s+5),{next:i,sawTeamBlock:l,patched:o}=function(e,t){let s=[],a=!1,r=!1,i=!1;for(let l of e){if(/^team\s*:\s*$/i.test(l)){a=!0,r=!0,s.push(l);continue}if(a&&/^\S/.test(l)&&(a=!1),a&&/^\s+teamId\s*:/i.test(l)){s.push(` teamId: ${t}`),i=!0;continue}s.push(l)}return{next:s,sawTeamBlock:r,patched:i}}(a.split("\n"),t);if(l&&!o){let e=[];for(let s of i)e.push(s),/^team\s*:\s*$/i.test(s)&&e.push(` teamId: ${t}`);return`---
|
|
2
|
+
${e.join("\n")}
|
|
3
|
+
---
|
|
4
|
+
${r}`}return`---
|
|
5
|
+
${i.join("\n")}
|
|
6
|
+
---
|
|
7
|
+
${r}`}(function(e,t){var s;let a,r;if(!e.startsWith("---\n"))return e;let i=e.indexOf("\n---\n",4);if(-1===i)return e;let l=e.slice(4,i),o=e.slice(i+5),c=(s=l.split("\n"),a=!1,r=s.map(e=>/^id\s*:/i.test(e)?(a=!0,`id: ${t}`):e),a||r.unshift(`id: ${t}`),r);return`---
|
|
8
|
+
${c.join("\n")}
|
|
9
|
+
---
|
|
10
|
+
${o}`}(P,$.trim()),$.trim());await (0,d.fetchJson)(`/api/recipes/${encodeURIComponent($.trim())}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({content:e})}),E(e)}else E(s.content);try{let e=await (0,d.fetchJson)(`/api/recipes/${encodeURIComponent($.trim())}`,{cache:"no-store"});"string"==typeof e.recipeHash&&U(e.recipeHash)}catch{U(null)}ec(`Saved team recipe: ${s.filePath}`,"success")}catch(e){ec((0,n.errorMessage)(e),"error")}finally{V(!1)}}async function e6(t){V(!0),ep("");try{let s=await (0,d.fetchJson)(`/api/teams/file?teamId=${encodeURIComponent(e)}&name=${encodeURIComponent(t)}`,{cache:"no-store"});if(!s.ok)throw Error("Failed to load file");ek(t),ey(String(s.content??""))}catch(e){ep((0,n.errorMessage)(e))}finally{V(!1)}}async function e7(){V(!0),ep("");try{if(!(await (0,d.fetchJson)("/api/teams/file",{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({teamId:e,name:eg,content:ef})})).ok)throw Error("Failed to save file")}catch(e){ep((0,n.errorMessage)(e))}finally{V(!1)}}async function e8(){V(!0);try{await f({teamId:e,toId:$,newRole:eR,derivedRole:eM,newRoleName:eF,content:P,setContent:E,setTeamAgents:eI,flashMessage:ec,ensureCustomRecipeExists:e5})}catch(e){ec((0,n.errorMessage)(e),"error")}finally{V(!1)}}async function e9(e,t,s){V(!0);try{await (0,d.fetchJson)("/api/cron/job",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({id:e,action:s})}),ec(`Cron ${s}: ${t}`,"success")}catch(e){ec((0,n.errorMessage)(e),"error")}finally{V(!1)}}async function te(){eV(!0),eK(""),eQ("");try{await (0,d.fetchJson)("/api/teams/skills/install",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({teamId:e,skill:eW})}),eK(`Installed skill: ${eW}`);try{let t=await (0,d.fetchJson)(`/api/teams/skills?teamId=${encodeURIComponent(e)}`,{cache:"no-store"});t.ok&&Array.isArray(t.skills)&&eE(t.skills)}catch{}}catch(e){eQ((0,n.errorMessage)(e))}finally{eV(!1)}}return(0,s.useEffect)(()=>{F(e),M(e),E(""),U(null),eo(null),ei(!1),ea(!1),l&&["recipe","agents","skills","cron","files","memory","orchestrator","workflows"].includes(l)&&H(l)},[e,l]),(0,s.useEffect)(()=>{let t=!1;return B(!0),u(e,{setRecipes:h,setLockedFromId:k,setLockedFromName:I,setProvenanceMissing:A,setFromId:v,setTeamMetaRecipeHash:eo,setTeamFiles:ed,setCronJobs:ej,setTeamAgents:eI,setSkillsList:eE,setAvailableSkills:eU,setSelectedSkill:eB,setTeamFilesLoading:ex,setCronLoading:ew,setTeamAgentsLoading:eT,setSkillsLoading:eH}).then(()=>{t||B(!1)}).catch(e=>{ec((0,n.errorMessage)(e),"error"),t||B(!1)}),()=>{t=!0}},[e]),(0,s.useEffect)(()=>{!$.trim()||P.trim()||X||e3()},[$]),(0,t.jsxs)("div",{className:"ck-glass w-full p-6 sm:p-8",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Team editor"}),(0,t.jsxs)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:["Bootstrap a ",(0,t.jsx)("strong",{children:"custom team recipe"})," for this installed team, without modifying builtin recipes."]}),(0,t.jsx)("div",{className:"mt-6 flex flex-wrap gap-2",children:L.map(e=>(0,t.jsx)("button",{onClick:()=>H(e.id),className:D===e.id?"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)]":"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] hover:bg-white/10",children:e.label},e.id))}),"recipe"===D&&(0,t.jsx)(y,{loading:W,fromId:p,setFromId:v,toId:$,setToId:F,toName:_,setToName:M,canEditTargetId:!0,teamRecipes:eX,lockedFromId:g,lockedFromName:w,provenanceMissing:T,saving:z,teamIdValid:eZ,targetIdValid:e0,targetIsBuiltin:e2,loadedRecipeHash:J,teamMetaRecipeHash:el,publishing:q,content:P,setContent:E,setLoadedRecipeHash:U,recipeLoadError:Z,onSaveCustom:e4,onPublishOpen:()=>ei(!0),onDeleteOpen:()=>ea(!0)}),"agents"===D&&(0,t.jsx)(b,{teamId:e,toId:$,recipeAgents:eA,newRole:eR,setNewRole:eO,customRole:eL,setCustomRole:e$,newRoleName:eF,setNewRoleName:e_,derivedRole:eM,saving:z,teamAgents:eS,teamAgentsLoading:eC,onAddAgent:e8}),"skills"===D&&(0,t.jsx)(j,{teamId:e,skillsList:eP,availableSkills:eJ,skillsLoading:eD,selectedSkill:eW,setSelectedSkill:eB,installingSkill:ez,teamSkillMsg:eq,teamSkillError:eG,onInstallSkill:te}),"cron"===D&&(0,t.jsx)(N,{cronJobs:eb,cronLoading:eN,saving:z,onCronAction:e9}),"workflows"===D&&(0,t.jsx)("div",{className:"mt-6",children:(0,t.jsx)(O.default,{teamId:e})}),"orchestrator"===D&&(0,t.jsx)(R,{teamId:e}),"memory"===D&&(0,t.jsx)("div",{className:"mt-6",children:(0,t.jsx)(C,{teamId:e})}),"files"===D&&(0,t.jsx)(S,{teamFiles:en,teamFilesLoading:em,showOptionalFiles:eu,setShowOptionalFiles:ev,fileName:eg,fileContent:ef,setFileContent:ey,teamFileError:eh,saving:z,onLoadTeamFile:e6,onSaveTeamFile:e7}),(0,t.jsx)(o,{open:er,teamId:e,recipeId:$,busy:q,onClose:()=>ei(!1),onConfirm:async()=>{K(!0);try{await (0,d.fetchJson)("/api/scaffold",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({kind:"team",recipeId:$.trim(),teamId:e,overwrite:!0,applyConfig:!0})});try{let t=await (0,d.fetchJson)(`/api/teams/meta?teamId=${encodeURIComponent(e)}`,{cache:"no-store"});t.ok&&t.meta&&"string"==typeof t.meta.recipeHash&&eo(t.meta.recipeHash)}catch{}ei(!1),ec("Published changes to active team","success")}catch(e){ec((0,n.errorMessage)(e),"error")}finally{K(!1)}}}),(0,t.jsx)(i.DeleteTeamModal,{open:es,teamId:e,busy:G,onClose:()=>ea(!1),onConfirm:async()=>{Q(!0);try{await (0,d.fetchJson)("/api/teams/remove-team",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({teamId:e})}),ec("Deleted team successfully","success"),ea(!1),setTimeout(()=>m.push("/"),250)}catch(e){ec((0,n.errorMessage)(e),"error")}finally{Q(!1)}}})]})}e.s(["default",()=>$],86103)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,82310,e=>{"use strict";function s(e){return e instanceof Error?e.message:String(e)}e.s(["errorMessage",()=>s])},41588,e=>{"use strict";var s=e.i(43476),t=e.i(22016),a=e.i(82310),l=e.i(42771),r=e.i(18566),n=e.i(71645);async function c(){try{return{goals:(await (0,l.fetchJson)("/api/goals",{cache:"no-store"})).goals??[],error:null}}catch(e){return{goals:[],error:(0,a.errorMessage)(e)}}}function i({children:e}){return(0,s.jsx)("span",{className:"rounded-full bg-[color:var(--ck-bg-glass)] px-2 py-0.5 text-xs text-[color:var(--ck-text-secondary)]",children:e})}function o(){let[e,l]=(0,n.useState)(null),[o,d]=(0,n.useState)(null),x=((0,r.useSearchParams)().get("team")??"").trim(),[m,u]=(0,n.useState)("all");async function h(){l(null),d(null);try{let{goals:e,error:s}=await c();d(s),l(s?[]:e)}catch(e){d((0,a.errorMessage)(e)),l([])}}(0,n.useEffect)(()=>{let e=!1;return(async()=>{try{let{goals:s,error:t}=await c();if(e)return;d(t),l(t?[]:s)}catch(s){if(e)return;d((0,a.errorMessage)(s)),l([])}})(),()=>{e=!0}},[]);let g=(0,n.useMemo)(()=>{let s=e??[];return(x&&(s=s.filter(e=>Array.isArray(e.teams)&&e.teams.includes(x))),"all"===m)?s:s.filter(e=>e.status===m)},[e,m,x]),p=(0,n.useMemo)(()=>{let s=e??[],t={all:s.length,active:0,planned:0,done:0};for(let e of s)"active"===e.status?t.active+=1:"done"===e.status?t.done+=1:t.planned+=1;return t},[e]);function v(e){return(0,s.jsx)(t.default,{href:`/goals/${encodeURIComponent(e.id)}`,className:"block ck-glass p-5 transition hover:bg-[color:var(--ck-bg-glass)]",children:(0,s.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("div",{className:"truncate text-base font-semibold text-[color:var(--ck-text-primary)]",children:e.title}),(0,s.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:[(0,s.jsx)("span",{className:"font-mono",children:e.id}),e.updatedAt?` • updated ${new Date(e.updatedAt).toLocaleString()}`:""]})]}),(0,s.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,s.jsx)(i,{children:e.status}),e.teams?.slice(0,3).map(e=>(0,s.jsx)(i,{children:e},e)),e.tags?.slice(0,3).map(e=>(0,s.jsxs)(i,{children:["#",e]},e))]})]})},e.id)}return(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Goals"}),(0,s.jsxs)("p",{className:"mt-1 text-sm text-[color:var(--ck-text-secondary)]",children:["Stored in ",(0,s.jsx)("code",{className:"font-mono",children:"~/.openclaw/workspace/notes/goals/"}),x?(0,s.jsxs)(s.Fragment,{children:[" ","• filtered by team ",(0,s.jsx)("code",{className:"font-mono",children:x})]}):null]})]}),(0,s.jsx)(t.default,{href:"/goals/new",className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white",children:"Create goal"})]}),(0,s.jsx)("div",{className:"ck-glass p-4",children:(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,s.jsx)("label",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"Status"}),(0,s.jsxs)("select",{className:"rounded-[var(--ck-radius-sm)] border border-[color:var(--ck-border-subtle)] bg-transparent px-2 py-1 text-sm",value:m,onChange:e=>u(e.target.value),children:[(0,s.jsxs)("option",{value:"all",children:["All (",p.all,")"]}),(0,s.jsxs)("option",{value:"active",children:["Active (",p.active,")"]}),(0,s.jsxs)("option",{value:"planned",children:["Planned (",p.planned,")"]}),(0,s.jsxs)("option",{value:"done",children:["Done (",p.done,")"]})]}),(0,s.jsx)("button",{className:"ml-auto text-sm font-medium hover:underline",onClick:()=>void h(),children:"Refresh"})]})}),o?(0,s.jsx)("div",{className:"ck-glass p-4 text-sm text-red-300",children:o}):null,null==e&&(0,s.jsx)("div",{className:"ck-glass p-6 text-sm text-[color:var(--ck-text-secondary)]",children:"Loading…"}),null!=e&&0===g.length&&(0,s.jsxs)("div",{className:"ck-glass p-6",children:[(0,s.jsx)("div",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"No goals yet."}),(0,s.jsx)("div",{className:"mt-3",children:(0,s.jsx)(t.default,{href:"/goals/new",className:"text-sm font-medium hover:underline",children:"Create your first goal →"})})]}),null!=e&&g.length>0&&"all"!==m&&(0,s.jsx)("div",{className:"space-y-3",children:g.map(v)}),null!=e&&g.length>0&&"all"===m&&(0,s.jsx)("div",{className:"space-y-8",children:["active","planned","done"].map(e=>{let t=g.filter(s=>s.status===e);return t.length?(0,s.jsxs)("section",{children:[(0,s.jsx)("div",{className:"mb-2 flex items-end justify-between",children:(0,s.jsxs)("h2",{className:"text-sm font-semibold tracking-wide text-[color:var(--ck-text-secondary)] uppercase",children:[e," (",t.length,")"]})}),(0,s.jsx)("div",{className:"space-y-3",children:t.map(v)})]},e):null})})]})}e.s(["default",()=>o])}]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,12718,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"InvariantError",{enumerable:!0,get:function(){return n}});class n extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),this.name="InvariantError"}}},32061,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={BailoutToCSRError:function(){return i},isBailoutToCSRError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="BAILOUT_TO_CLIENT_SIDE_RENDERING";class i extends Error{constructor(e){super(`Bail out to client-side rendering: ${e}`),this.reason=e,this.digest=o}}function u(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===o}},54394,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HTTPAccessErrorStatus:function(){return o},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return u},getAccessFallbackErrorTypeByStatus:function(){return d},getAccessFallbackHTTPStatus:function(){return c},isHTTPAccessFallbackError:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},i=new Set(Object.values(o)),u="NEXT_HTTP_ERROR_FALLBACK";function s(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let[t,r]=e.digest.split(";");return t===u&&i.has(Number(r))}function c(e){return Number(e.digest.split(";")[1])}function d(e){switch(e){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},65713,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isNextRouterError",{enumerable:!0,get:function(){return o}});let n=e.r(54394),a=e.r(68391);function o(e){return(0,a.isRedirectError)(e)||(0,n.isHTTPAccessFallbackError)(e)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},3680,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return a}});class n extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class a extends URLSearchParams{append(){throw new n}delete(){throw new n}set(){throw new n}sort(){throw new n}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},61994,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={NavigationPromisesContext:function(){return d},PathParamsContext:function(){return c},PathnameContext:function(){return s},ReadonlyURLSearchParams:function(){return i.ReadonlyURLSearchParams},SearchParamsContext:function(){return u},createDevToolsInstrumentedPromise:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(71645),i=e.r(3680),u=(0,o.createContext)(null),s=(0,o.createContext)(null),c=(0,o.createContext)(null),d=(0,o.createContext)(null);function l(e,t){let r=Promise.resolve(t);return r.status="fulfilled",r.value=t,r.displayName=`${e} (SSR)`,r}},45955,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workUnitAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},62141,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getCacheSignal:function(){return y},getDraftModeProviderForCacheScope:function(){return m},getHmrRefreshHash:function(){return f},getPrerenderResumeDataCache:function(){return d},getRenderResumeDataCache:function(){return l},getRuntimeStagePromise:function(){return b},getServerComponentsHmrCache:function(){return h},isHmrRefresh:function(){return p},throwForMissingRequestStore:function(){return s},throwInvariantForMissingStore:function(){return c},workUnitAsyncStorage:function(){return o.workUnitAsyncStorageInstance}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(45955),i=e.r(21768),u=e.r(12718);function s(e){throw Object.defineProperty(Error(`\`${e}\` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context`),"__NEXT_ERROR_CODE",{value:"E251",enumerable:!1,configurable:!0})}function c(){throw Object.defineProperty(new u.InvariantError("Expected workUnitAsyncStorage to have a store."),"__NEXT_ERROR_CODE",{value:"E696",enumerable:!1,configurable:!0})}function d(e){switch(e.type){case"prerender":case"prerender-runtime":case"prerender-ppr":case"prerender-client":return e.prerenderResumeDataCache;case"request":if(e.prerenderResumeDataCache)return e.prerenderResumeDataCache;case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return null;default:return e}}function l(e){switch(e.type){case"request":case"prerender":case"prerender-runtime":case"prerender-client":if(e.renderResumeDataCache)return e.renderResumeDataCache;case"prerender-ppr":return e.prerenderResumeDataCache??null;case"cache":case"private-cache":case"unstable-cache":case"prerender-legacy":return null;default:return e}}function f(e,t){if(e.dev)switch(t.type){case"cache":case"private-cache":case"prerender":case"prerender-runtime":return t.hmrRefreshHash;case"request":var r;return null==(r=t.cookies.get(i.NEXT_HMR_REFRESH_HASH_COOKIE))?void 0:r.value}}function p(e,t){if(e.dev)switch(t.type){case"cache":case"private-cache":case"request":return t.isHmrRefresh??!1}return!1}function h(e,t){if(e.dev)switch(t.type){case"cache":case"private-cache":case"request":return t.serverComponentsHmrCache}}function m(e,t){if(e.isDraftMode)switch(t.type){case"cache":case"private-cache":case"unstable-cache":case"prerender-runtime":case"request":return t.draftMode}}function y(e){switch(e.type){case"prerender":case"prerender-client":case"prerender-runtime":return e.cacheSignal;case"request":if(e.cacheSignal)return e.cacheSignal;case"prerender-ppr":case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return null;default:return e}}function b(e){switch(e.type){case"prerender-runtime":case"private-cache":return e.runtimeStagePromise;case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"unstable-cache":return null;default:return e}}},13957,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ServerInsertedHTMLContext:function(){return i},useServerInsertedHTML:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(90809)._(e.r(71645)),i=o.default.createContext(null);function u(e){let t=(0,o.useContext)(i);t&&t(e)}},22783,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"notFound",{enumerable:!0,get:function(){return o}});let n=e.r(54394),a=`${n.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function o(){let e=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw e.digest=a,e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},79854,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"forbidden",{enumerable:!0,get:function(){return n}}),e.r(54394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},22683,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unauthorized",{enumerable:!0,get:function(){return n}}),e.r(54394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},15507,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unstable_rethrow",{enumerable:!0,get:function(){return function e(t){if((0,a.isNextRouterError)(t)||(0,n.isBailoutToCSRError)(t))throw t;t instanceof Error&&"cause"in t&&e(t.cause)}}});let n=e.r(32061),a=e.r(65713);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},63138,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={isHangingPromiseRejectionError:function(){return o},makeDevtoolsIOAwarePromise:function(){return l},makeHangingPromise:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===i}let i="HANGING_PROMISE_REJECTION";class u extends Error{constructor(e,t){super(`During prerendering, ${t} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${t} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${e}".`),this.route=e,this.expression=t,this.digest=i}}let s=new WeakMap;function c(e,t,r){if(e.aborted)return Promise.reject(new u(t,r));{let n=new Promise((n,a)=>{let o=a.bind(null,new u(t,r)),i=s.get(e);if(i)i.push(o);else{let t=[o];s.set(e,t),e.addEventListener("abort",()=>{for(let e=0;e<t.length;e++)t[e]()},{once:!0})}});return n.catch(d),n}}function d(){}function l(e,t,r){return t.stagedRendering?t.stagedRendering.delayUntilStage(r,void 0,e):new Promise(t=>{setTimeout(()=>{t(e)},0)})}},67287,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isPostpone",{enumerable:!0,get:function(){return a}});let n=Symbol.for("react.postpone");function a(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}},76353,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DynamicServerError:function(){return i},isDynamicServerError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="DYNAMIC_SERVER_USAGE";class i extends Error{constructor(e){super(`Dynamic server usage: ${e}`),this.description=e,this.digest=o}}function u(e){return"object"==typeof e&&null!==e&&"digest"in e&&"string"==typeof e.digest&&e.digest===o}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},43248,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={StaticGenBailoutError:function(){return i},isStaticGenBailoutError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="NEXT_STATIC_GEN_BAILOUT";class i extends Error{constructor(...e){super(...e),this.code=o}}function u(e){return"object"==typeof e&&null!==e&&"code"in e&&e.code===o}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},54839,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={METADATA_BOUNDARY_NAME:function(){return o},OUTLET_BOUNDARY_NAME:function(){return u},ROOT_LAYOUT_BOUNDARY_NAME:function(){return s},VIEWPORT_BOUNDARY_NAME:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="__next_metadata_boundary__",i="__next_viewport_boundary__",u="__next_outlet_boundary__",s="__next_root_layout_boundary__"},29419,(e,t,r)=>{"use strict";var n=e.i(47167);Object.defineProperty(r,"__esModule",{value:!0});var a={atLeastOneTask:function(){return s},scheduleImmediate:function(){return u},scheduleOnNextTick:function(){return i},waitAtLeastOneReactRenderTask:function(){return c}};for(var o in a)Object.defineProperty(r,o,{enumerable:!0,get:a[o]});let i=e=>{Promise.resolve().then(()=>{n.default.nextTick(e)})},u=e=>{setImmediate(e)};function s(){return new Promise(e=>u(e))}function c(){return new Promise(e=>setImmediate(e))}},67673,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a,o={Postpone:function(){return j},PreludeState:function(){return Z},abortAndThrowOnSynchronousRequestDataAccess:function(){return S},abortOnSynchronousPlatformIOAccess:function(){return P},accessedDynamicData:function(){return N},annotateDynamicAccess:function(){return B},consumeDynamicAccess:function(){return I},createDynamicTrackingState:function(){return g},createDynamicValidationState:function(){return _},createHangingInputAbortSignal:function(){return $},createRenderInBrowserAbortSignal:function(){return L},delayUntilRuntimeStage:function(){return er},formatDynamicAPIAccesses:function(){return U},getFirstDynamicReason:function(){return E},getStaticShellDisallowedDynamicReasons:function(){return et},isDynamicPostpone:function(){return x},isPrerenderInterruptedError:function(){return k},logDisallowedDynamicError:function(){return Q},markCurrentScopeAsDynamic:function(){return R},postponeWithTracking:function(){return D},throwIfDisallowedDynamic:function(){return ee},throwToInterruptStaticGeneration:function(){return v},trackAllowedDynamicAccess:function(){return Y},trackDynamicDataInDynamicRender:function(){return O},trackDynamicHoleInRuntimeShell:function(){return V},trackDynamicHoleInStaticShell:function(){return K},useDynamicRouteParams:function(){return H},useDynamicSearchParams:function(){return X}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});let u=(n=e.r(71645))&&n.__esModule?n:{default:n},s=e.r(76353),c=e.r(43248),d=e.r(62141),l=e.r(63599),f=e.r(63138),p=e.r(54839),h=e.r(29419),m=e.r(32061),y=e.r(12718),b="function"==typeof u.default.unstable_postpone;function g(e){return{isDebugDynamicAccesses:e,dynamicAccesses:[],syncDynamicErrorWithStack:null}}function _(){return{hasSuspenseAboveBody:!1,hasDynamicMetadata:!1,dynamicMetadata:null,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[]}}function E(e){var t;return null==(t=e.dynamicAccesses[0])?void 0:t.expression}function R(e,t,r){if(t)switch(t.type){case"cache":case"unstable-cache":case"private-cache":return}if(!e.forceDynamic&&!e.forceStatic){if(e.dynamicShouldError)throw Object.defineProperty(new c.StaticGenBailoutError(`Route ${e.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`${r}\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E553",enumerable:!1,configurable:!0});if(t)switch(t.type){case"prerender-ppr":return D(e.route,r,t.dynamicTracking);case"prerender-legacy":t.revalidate=0;let n=Object.defineProperty(new s.DynamicServerError(`Route ${e.route} couldn't be rendered statically because it used ${r}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E550",enumerable:!1,configurable:!0});throw e.dynamicUsageDescription=r,e.dynamicUsageStack=n.stack,n}}}function v(e,t,r){let n=Object.defineProperty(new s.DynamicServerError(`Route ${t.route} couldn't be rendered statically because it used \`${e}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw r.revalidate=0,t.dynamicUsageDescription=e,t.dynamicUsageStack=n.stack,n}function O(e){switch(e.type){case"cache":case"unstable-cache":case"private-cache":return}}function w(e,t,r){let n=C(`Route ${e} needs to bail out of prerendering at this point because it used ${t}.`);r.controller.abort(n);let a=r.dynamicTracking;a&&a.dynamicAccesses.push({stack:a.isDebugDynamicAccesses?Error().stack:void 0,expression:t})}function P(e,t,r,n){let a=n.dynamicTracking;w(e,t,n),a&&null===a.syncDynamicErrorWithStack&&(a.syncDynamicErrorWithStack=r)}function S(e,t,r,n){if(!1===n.controller.signal.aborted){w(e,t,n);let a=n.dynamicTracking;a&&null===a.syncDynamicErrorWithStack&&(a.syncDynamicErrorWithStack=r)}throw C(`Route ${e} needs to bail out of prerendering at this point because it used ${t}.`)}function j({reason:e,route:t}){let r=d.workUnitAsyncStorage.getStore();D(t,e,r&&"prerender-ppr"===r.type?r.dynamicTracking:null)}function D(e,t,r){(function(){if(!b)throw Object.defineProperty(Error("Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E224",enumerable:!1,configurable:!0})})(),r&&r.dynamicAccesses.push({stack:r.isDebugDynamicAccesses?Error().stack:void 0,expression:t}),u.default.unstable_postpone(T(e,t))}function T(e,t){return`Route ${e} needs to bail out of prerendering at this point because it used ${t}. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`}function x(e){return"object"==typeof e&&null!==e&&"string"==typeof e.message&&A(e.message)}function A(e){return e.includes("needs to bail out of prerendering at this point because it used")&&e.includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")}if(!1===A(T("%%%","^^^")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});let M="NEXT_PRERENDER_INTERRUPTED";function C(e){let t=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t.digest=M,t}function k(e){return"object"==typeof e&&null!==e&&e.digest===M&&"name"in e&&"message"in e&&e instanceof Error}function N(e){return e.length>0}function I(e,t){return e.dynamicAccesses.push(...t.dynamicAccesses),e.dynamicAccesses}function U(e){return e.filter(e=>"string"==typeof e.stack&&e.stack.length>0).map(({expression:e,stack:t})=>(t=t.split("\n").slice(4).filter(e=>!(e.includes("node_modules/next/")||e.includes(" (<anonymous>)")||e.includes(" (node:"))).join("\n"),`Dynamic API Usage Debug - ${e}:
|
|
2
|
-
${t}`))}function L(){let e=new AbortController;return e.abort(Object.defineProperty(new
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,12718,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"InvariantError",{enumerable:!0,get:function(){return n}});class n extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),this.name="InvariantError"}}},32061,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={BailoutToCSRError:function(){return i},isBailoutToCSRError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="BAILOUT_TO_CLIENT_SIDE_RENDERING";class i extends Error{constructor(e){super(`Bail out to client-side rendering: ${e}`),this.reason=e,this.digest=o}}function u(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===o}},54394,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HTTPAccessErrorStatus:function(){return o},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return u},getAccessFallbackErrorTypeByStatus:function(){return d},getAccessFallbackHTTPStatus:function(){return c},isHTTPAccessFallbackError:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},i=new Set(Object.values(o)),u="NEXT_HTTP_ERROR_FALLBACK";function s(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let[t,r]=e.digest.split(";");return t===u&&i.has(Number(r))}function c(e){return Number(e.digest.split(";")[1])}function d(e){switch(e){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},65713,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isNextRouterError",{enumerable:!0,get:function(){return o}});let n=e.r(54394),a=e.r(68391);function o(e){return(0,a.isRedirectError)(e)||(0,n.isHTTPAccessFallbackError)(e)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},3680,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return a}});class n extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class a extends URLSearchParams{append(){throw new n}delete(){throw new n}set(){throw new n}sort(){throw new n}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},61994,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={NavigationPromisesContext:function(){return d},PathParamsContext:function(){return c},PathnameContext:function(){return s},ReadonlyURLSearchParams:function(){return i.ReadonlyURLSearchParams},SearchParamsContext:function(){return u},createDevToolsInstrumentedPromise:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(71645),i=e.r(3680),u=(0,o.createContext)(null),s=(0,o.createContext)(null),c=(0,o.createContext)(null),d=(0,o.createContext)(null);function l(e,t){let r=Promise.resolve(t);return r.status="fulfilled",r.value=t,r.displayName=`${e} (SSR)`,r}},45955,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workUnitAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},62141,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getCacheSignal:function(){return m},getDraftModeProviderForCacheScope:function(){return y},getHmrRefreshHash:function(){return f},getPrerenderResumeDataCache:function(){return d},getRenderResumeDataCache:function(){return l},getRuntimeStagePromise:function(){return b},getServerComponentsHmrCache:function(){return h},isHmrRefresh:function(){return p},throwForMissingRequestStore:function(){return s},throwInvariantForMissingStore:function(){return c},workUnitAsyncStorage:function(){return o.workUnitAsyncStorageInstance}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(45955),i=e.r(21768),u=e.r(12718);function s(e){throw Object.defineProperty(Error(`\`${e}\` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context`),"__NEXT_ERROR_CODE",{value:"E251",enumerable:!1,configurable:!0})}function c(){throw Object.defineProperty(new u.InvariantError("Expected workUnitAsyncStorage to have a store."),"__NEXT_ERROR_CODE",{value:"E696",enumerable:!1,configurable:!0})}function d(e){switch(e.type){case"prerender":case"prerender-runtime":case"prerender-ppr":case"prerender-client":return e.prerenderResumeDataCache;case"request":if(e.prerenderResumeDataCache)return e.prerenderResumeDataCache;case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return null;default:return e}}function l(e){switch(e.type){case"request":case"prerender":case"prerender-runtime":case"prerender-client":if(e.renderResumeDataCache)return e.renderResumeDataCache;case"prerender-ppr":return e.prerenderResumeDataCache??null;case"cache":case"private-cache":case"unstable-cache":case"prerender-legacy":return null;default:return e}}function f(e,t){if(e.dev)switch(t.type){case"cache":case"private-cache":case"prerender":case"prerender-runtime":return t.hmrRefreshHash;case"request":var r;return null==(r=t.cookies.get(i.NEXT_HMR_REFRESH_HASH_COOKIE))?void 0:r.value}}function p(e,t){if(e.dev)switch(t.type){case"cache":case"private-cache":case"request":return t.isHmrRefresh??!1}return!1}function h(e,t){if(e.dev)switch(t.type){case"cache":case"private-cache":case"request":return t.serverComponentsHmrCache}}function y(e,t){if(e.isDraftMode)switch(t.type){case"cache":case"private-cache":case"unstable-cache":case"prerender-runtime":case"request":return t.draftMode}}function m(e){switch(e.type){case"prerender":case"prerender-client":case"prerender-runtime":return e.cacheSignal;case"request":if(e.cacheSignal)return e.cacheSignal;case"prerender-ppr":case"prerender-legacy":case"cache":case"private-cache":case"unstable-cache":return null;default:return e}}function b(e){switch(e.type){case"prerender-runtime":case"private-cache":return e.runtimeStagePromise;case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"unstable-cache":return null;default:return e}}},42344,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},63599,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=e.r(42344)},13957,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ServerInsertedHTMLContext:function(){return i},useServerInsertedHTML:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(90809)._(e.r(71645)),i=o.default.createContext(null);function u(e){let t=(0,o.useContext)(i);t&&t(e)}},22783,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"notFound",{enumerable:!0,get:function(){return o}});let n=e.r(54394),a=`${n.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function o(){let e=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw e.digest=a,e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},79854,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"forbidden",{enumerable:!0,get:function(){return n}}),e.r(54394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},22683,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unauthorized",{enumerable:!0,get:function(){return n}}),e.r(54394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},15507,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unstable_rethrow",{enumerable:!0,get:function(){return function e(t){if((0,a.isNextRouterError)(t)||(0,n.isBailoutToCSRError)(t))throw t;t instanceof Error&&"cause"in t&&e(t.cause)}}});let n=e.r(32061),a=e.r(65713);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},63138,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={isHangingPromiseRejectionError:function(){return o},makeDevtoolsIOAwarePromise:function(){return l},makeHangingPromise:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===i}let i="HANGING_PROMISE_REJECTION";class u extends Error{constructor(e,t){super(`During prerendering, ${t} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${t} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${e}".`),this.route=e,this.expression=t,this.digest=i}}let s=new WeakMap;function c(e,t,r){if(e.aborted)return Promise.reject(new u(t,r));{let n=new Promise((n,a)=>{let o=a.bind(null,new u(t,r)),i=s.get(e);if(i)i.push(o);else{let t=[o];s.set(e,t),e.addEventListener("abort",()=>{for(let e=0;e<t.length;e++)t[e]()},{once:!0})}});return n.catch(d),n}}function d(){}function l(e,t,r){return t.stagedRendering?t.stagedRendering.delayUntilStage(r,void 0,e):new Promise(t=>{setTimeout(()=>{t(e)},0)})}},67287,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isPostpone",{enumerable:!0,get:function(){return a}});let n=Symbol.for("react.postpone");function a(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}},76353,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DynamicServerError:function(){return i},isDynamicServerError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="DYNAMIC_SERVER_USAGE";class i extends Error{constructor(e){super(`Dynamic server usage: ${e}`),this.description=e,this.digest=o}}function u(e){return"object"==typeof e&&null!==e&&"digest"in e&&"string"==typeof e.digest&&e.digest===o}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},43248,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={StaticGenBailoutError:function(){return i},isStaticGenBailoutError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="NEXT_STATIC_GEN_BAILOUT";class i extends Error{constructor(...e){super(...e),this.code=o}}function u(e){return"object"==typeof e&&null!==e&&"code"in e&&e.code===o}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},54839,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={METADATA_BOUNDARY_NAME:function(){return o},OUTLET_BOUNDARY_NAME:function(){return u},ROOT_LAYOUT_BOUNDARY_NAME:function(){return s},VIEWPORT_BOUNDARY_NAME:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="__next_metadata_boundary__",i="__next_viewport_boundary__",u="__next_outlet_boundary__",s="__next_root_layout_boundary__"},29419,(e,t,r)=>{"use strict";var n=e.i(47167);Object.defineProperty(r,"__esModule",{value:!0});var a={atLeastOneTask:function(){return s},scheduleImmediate:function(){return u},scheduleOnNextTick:function(){return i},waitAtLeastOneReactRenderTask:function(){return c}};for(var o in a)Object.defineProperty(r,o,{enumerable:!0,get:a[o]});let i=e=>{Promise.resolve().then(()=>{n.default.nextTick(e)})},u=e=>{setImmediate(e)};function s(){return new Promise(e=>u(e))}function c(){return new Promise(e=>setImmediate(e))}},67673,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a,o={Postpone:function(){return j},PreludeState:function(){return Z},abortAndThrowOnSynchronousRequestDataAccess:function(){return S},abortOnSynchronousPlatformIOAccess:function(){return P},accessedDynamicData:function(){return N},annotateDynamicAccess:function(){return B},consumeDynamicAccess:function(){return I},createDynamicTrackingState:function(){return g},createDynamicValidationState:function(){return _},createHangingInputAbortSignal:function(){return $},createRenderInBrowserAbortSignal:function(){return L},delayUntilRuntimeStage:function(){return er},formatDynamicAPIAccesses:function(){return U},getFirstDynamicReason:function(){return E},getStaticShellDisallowedDynamicReasons:function(){return et},isDynamicPostpone:function(){return x},isPrerenderInterruptedError:function(){return k},logDisallowedDynamicError:function(){return Q},markCurrentScopeAsDynamic:function(){return R},postponeWithTracking:function(){return D},throwIfDisallowedDynamic:function(){return ee},throwToInterruptStaticGeneration:function(){return v},trackAllowedDynamicAccess:function(){return Y},trackDynamicDataInDynamicRender:function(){return O},trackDynamicHoleInRuntimeShell:function(){return V},trackDynamicHoleInStaticShell:function(){return K},useDynamicRouteParams:function(){return H},useDynamicSearchParams:function(){return X}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});let u=(n=e.r(71645))&&n.__esModule?n:{default:n},s=e.r(76353),c=e.r(43248),d=e.r(62141),l=e.r(63599),f=e.r(63138),p=e.r(54839),h=e.r(29419),y=e.r(32061),m=e.r(12718),b="function"==typeof u.default.unstable_postpone;function g(e){return{isDebugDynamicAccesses:e,dynamicAccesses:[],syncDynamicErrorWithStack:null}}function _(){return{hasSuspenseAboveBody:!1,hasDynamicMetadata:!1,dynamicMetadata:null,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[]}}function E(e){var t;return null==(t=e.dynamicAccesses[0])?void 0:t.expression}function R(e,t,r){if(t)switch(t.type){case"cache":case"unstable-cache":case"private-cache":return}if(!e.forceDynamic&&!e.forceStatic){if(e.dynamicShouldError)throw Object.defineProperty(new c.StaticGenBailoutError(`Route ${e.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`${r}\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E553",enumerable:!1,configurable:!0});if(t)switch(t.type){case"prerender-ppr":return D(e.route,r,t.dynamicTracking);case"prerender-legacy":t.revalidate=0;let n=Object.defineProperty(new s.DynamicServerError(`Route ${e.route} couldn't be rendered statically because it used ${r}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E550",enumerable:!1,configurable:!0});throw e.dynamicUsageDescription=r,e.dynamicUsageStack=n.stack,n}}}function v(e,t,r){let n=Object.defineProperty(new s.DynamicServerError(`Route ${t.route} couldn't be rendered statically because it used \`${e}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw r.revalidate=0,t.dynamicUsageDescription=e,t.dynamicUsageStack=n.stack,n}function O(e){switch(e.type){case"cache":case"unstable-cache":case"private-cache":return}}function w(e,t,r){let n=C(`Route ${e} needs to bail out of prerendering at this point because it used ${t}.`);r.controller.abort(n);let a=r.dynamicTracking;a&&a.dynamicAccesses.push({stack:a.isDebugDynamicAccesses?Error().stack:void 0,expression:t})}function P(e,t,r,n){let a=n.dynamicTracking;w(e,t,n),a&&null===a.syncDynamicErrorWithStack&&(a.syncDynamicErrorWithStack=r)}function S(e,t,r,n){if(!1===n.controller.signal.aborted){w(e,t,n);let a=n.dynamicTracking;a&&null===a.syncDynamicErrorWithStack&&(a.syncDynamicErrorWithStack=r)}throw C(`Route ${e} needs to bail out of prerendering at this point because it used ${t}.`)}function j({reason:e,route:t}){let r=d.workUnitAsyncStorage.getStore();D(t,e,r&&"prerender-ppr"===r.type?r.dynamicTracking:null)}function D(e,t,r){(function(){if(!b)throw Object.defineProperty(Error("Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E224",enumerable:!1,configurable:!0})})(),r&&r.dynamicAccesses.push({stack:r.isDebugDynamicAccesses?Error().stack:void 0,expression:t}),u.default.unstable_postpone(T(e,t))}function T(e,t){return`Route ${e} needs to bail out of prerendering at this point because it used ${t}. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`}function x(e){return"object"==typeof e&&null!==e&&"string"==typeof e.message&&A(e.message)}function A(e){return e.includes("needs to bail out of prerendering at this point because it used")&&e.includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")}if(!1===A(T("%%%","^^^")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});let M="NEXT_PRERENDER_INTERRUPTED";function C(e){let t=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t.digest=M,t}function k(e){return"object"==typeof e&&null!==e&&e.digest===M&&"name"in e&&"message"in e&&e instanceof Error}function N(e){return e.length>0}function I(e,t){return e.dynamicAccesses.push(...t.dynamicAccesses),e.dynamicAccesses}function U(e){return e.filter(e=>"string"==typeof e.stack&&e.stack.length>0).map(({expression:e,stack:t})=>(t=t.split("\n").slice(4).filter(e=>!(e.includes("node_modules/next/")||e.includes(" (<anonymous>)")||e.includes(" (node:"))).join("\n"),`Dynamic API Usage Debug - ${e}:
|
|
2
|
+
${t}`))}function L(){let e=new AbortController;return e.abort(Object.defineProperty(new y.BailoutToCSRError("Render in Browser"),"__NEXT_ERROR_CODE",{value:"E721",enumerable:!1,configurable:!0})),e.signal}function $(e){switch(e.type){case"prerender":case"prerender-runtime":let t=new AbortController;if(e.cacheSignal)e.cacheSignal.inputReady().then(()=>{t.abort()});else{let r=(0,d.getRuntimeStagePromise)(e);r?r.then(()=>(0,h.scheduleOnNextTick)(()=>t.abort())):(0,h.scheduleOnNextTick)(()=>t.abort())}return t.signal;case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":return}}function B(e,t){let r=t.dynamicTracking;r&&r.dynamicAccesses.push({stack:r.isDebugDynamicAccesses?Error().stack:void 0,expression:e})}function H(e){let t=l.workAsyncStorage.getStore(),r=d.workUnitAsyncStorage.getStore();if(t&&r)switch(r.type){case"prerender-client":case"prerender":{let n=r.fallbackRouteParams;n&&n.size>0&&u.default.use((0,f.makeHangingPromise)(r.renderSignal,t.route,e));break}case"prerender-ppr":{let n=r.fallbackRouteParams;if(n&&n.size>0)return D(t.route,e,r.dynamicTracking);break}case"prerender-runtime":throw Object.defineProperty(new m.InvariantError(`\`${e}\` was called during a runtime prerender. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E771",enumerable:!1,configurable:!0});case"cache":case"private-cache":throw Object.defineProperty(new m.InvariantError(`\`${e}\` was called inside a cache scope. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0})}}function X(e){let t=l.workAsyncStorage.getStore(),r=d.workUnitAsyncStorage.getStore();if(t)switch(!r&&(0,d.throwForMissingRequestStore)(e),r.type){case"prerender-client":u.default.use((0,f.makeHangingPromise)(r.renderSignal,t.route,e));break;case"prerender-legacy":case"prerender-ppr":if(t.forceStatic)return;throw Object.defineProperty(new y.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});case"prerender":case"prerender-runtime":throw Object.defineProperty(new m.InvariantError(`\`${e}\` was called from a Server Component. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E795",enumerable:!1,configurable:!0});case"cache":case"unstable-cache":case"private-cache":throw Object.defineProperty(new m.InvariantError(`\`${e}\` was called inside a cache scope. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0});case"request":return}}let F=/\n\s+at Suspense \(<anonymous>\)/,W=RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at ${p.ROOT_LAYOUT_BOUNDARY_NAME} \\([^\\n]*\\)`),q=RegExp(`\\n\\s+at ${p.METADATA_BOUNDARY_NAME}[\\n\\s]`),G=RegExp(`\\n\\s+at ${p.VIEWPORT_BOUNDARY_NAME}[\\n\\s]`),z=RegExp(`\\n\\s+at ${p.OUTLET_BOUNDARY_NAME}[\\n\\s]`);function Y(e,t,r,n){if(!z.test(t)){if(q.test(t)){r.hasDynamicMetadata=!0;return}if(G.test(t)){r.hasDynamicViewport=!0;return}if(W.test(t)){r.hasAllowedDynamic=!0,r.hasSuspenseAboveBody=!0;return}else if(F.test(t)){r.hasAllowedDynamic=!0;return}else{if(n.syncDynamicErrorWithStack)return void r.dynamicErrors.push(n.syncDynamicErrorWithStack);let a=J(`Route "${e.route}": Uncached data was accessed outside of <Suspense>. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route`,t);return void r.dynamicErrors.push(a)}}}function V(e,t,r,n){if(!z.test(t)){if(q.test(t)){r.dynamicMetadata=J(`Route "${e.route}": Uncached data or \`connection()\` was accessed inside \`generateMetadata\`. Except for this instance, the page would have been entirely prerenderable which may have been the intended behavior. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`,t);return}if(G.test(t)){let n=J(`Route "${e.route}": Uncached data or \`connection()\` was accessed inside \`generateViewport\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`,t);r.dynamicErrors.push(n);return}if(W.test(t)){r.hasAllowedDynamic=!0,r.hasSuspenseAboveBody=!0;return}else if(F.test(t)){r.hasAllowedDynamic=!0;return}else{if(n.syncDynamicErrorWithStack)return void r.dynamicErrors.push(n.syncDynamicErrorWithStack);let a=J(`Route "${e.route}": Uncached data or \`connection()\` was accessed outside of \`<Suspense>\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route`,t);return void r.dynamicErrors.push(a)}}}function K(e,t,r,n){if(!z.test(t)){if(q.test(t)){r.dynamicMetadata=J(`Route "${e.route}": Runtime data such as \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` was accessed inside \`generateMetadata\` or you have file-based metadata such as icons that depend on dynamic params segments. Except for this instance, the page would have been entirely prerenderable which may have been the intended behavior. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`,t);return}if(G.test(t)){let n=J(`Route "${e.route}": Runtime data such as \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` was accessed inside \`generateViewport\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`,t);r.dynamicErrors.push(n);return}if(W.test(t)){r.hasAllowedDynamic=!0,r.hasSuspenseAboveBody=!0;return}else if(F.test(t)){r.hasAllowedDynamic=!0;return}else{if(n.syncDynamicErrorWithStack)return void r.dynamicErrors.push(n.syncDynamicErrorWithStack);let a=J(`Route "${e.route}": Runtime data such as \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` was accessed outside of \`<Suspense>\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route`,t);return void r.dynamicErrors.push(a)}}}function J(e,t){let r=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return r.stack=r.name+": "+e+t,r}var Z=((a={})[a.Full=0]="Full",a[a.Empty=1]="Empty",a[a.Errored=2]="Errored",a);function Q(e,t){console.error(t),e.dev||(e.hasReadableErrorStacks?console.error(`To get a more detailed stack trace and pinpoint the issue, start the app in development mode by running \`next dev\`, then open "${e.route}" in your browser to investigate the error.`):console.error(`To get a more detailed stack trace and pinpoint the issue, try one of the following:
|
|
3
3
|
- Start the app in development mode by running \`next dev\`, then open "${e.route}" in your browser to investigate the error.
|
|
4
|
-
- Rerun the production build with \`next build --debug-prerender\` to generate better stack traces.`))}function ee(e,t,r,n){if(n.syncDynamicErrorWithStack)throw Q(e,n.syncDynamicErrorWithStack),new c.StaticGenBailoutError;if(0!==t){if(r.hasSuspenseAboveBody)return;let n=r.dynamicErrors;if(n.length>0){for(let t=0;t<n.length;t++)Q(e,n[t]);throw new c.StaticGenBailoutError}if(r.hasDynamicViewport)throw console.error(`Route "${e.route}" has a \`generateViewport\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) without explicitly allowing fully dynamic rendering. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`),new c.StaticGenBailoutError;if(1===t)throw console.error(`Route "${e.route}" did not produce a static shell and Next.js was unable to determine a reason. This is a bug in Next.js.`),new c.StaticGenBailoutError}else if(!1===r.hasAllowedDynamic&&r.hasDynamicMetadata)throw console.error(`Route "${e.route}" has a \`generateMetadata\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) when the rest of the route does not. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`),new c.StaticGenBailoutError}function et(e,t,r){if(r.hasSuspenseAboveBody)return[];if(0!==t){let n=r.dynamicErrors;if(n.length>0)return n;if(1===t)return[Object.defineProperty(new
|
|
4
|
+
- Rerun the production build with \`next build --debug-prerender\` to generate better stack traces.`))}function ee(e,t,r,n){if(n.syncDynamicErrorWithStack)throw Q(e,n.syncDynamicErrorWithStack),new c.StaticGenBailoutError;if(0!==t){if(r.hasSuspenseAboveBody)return;let n=r.dynamicErrors;if(n.length>0){for(let t=0;t<n.length;t++)Q(e,n[t]);throw new c.StaticGenBailoutError}if(r.hasDynamicViewport)throw console.error(`Route "${e.route}" has a \`generateViewport\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) without explicitly allowing fully dynamic rendering. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`),new c.StaticGenBailoutError;if(1===t)throw console.error(`Route "${e.route}" did not produce a static shell and Next.js was unable to determine a reason. This is a bug in Next.js.`),new c.StaticGenBailoutError}else if(!1===r.hasAllowedDynamic&&r.hasDynamicMetadata)throw console.error(`Route "${e.route}" has a \`generateMetadata\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) when the rest of the route does not. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`),new c.StaticGenBailoutError}function et(e,t,r){if(r.hasSuspenseAboveBody)return[];if(0!==t){let n=r.dynamicErrors;if(n.length>0)return n;if(1===t)return[Object.defineProperty(new m.InvariantError(`Route "${e.route}" did not produce a static shell and Next.js was unable to determine a reason.`),"__NEXT_ERROR_CODE",{value:"E936",enumerable:!1,configurable:!0})]}else if(!1===r.hasAllowedDynamic&&0===r.dynamicErrors.length&&r.dynamicMetadata)return[r.dynamicMetadata];return[]}function er(e,t){return e.runtimeStagePromise?e.runtimeStagePromise.then(()=>t):t}},91414,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unstable_rethrow",{enumerable:!0,get:function(){return function e(t){if((0,i.isNextRouterError)(t)||(0,o.isBailoutToCSRError)(t)||(0,s.isDynamicServerError)(t)||(0,u.isDynamicPostpone)(t)||(0,a.isPostpone)(t)||(0,n.isHangingPromiseRejectionError)(t)||(0,u.isPrerenderInterruptedError)(t))throw t;t instanceof Error&&"cause"in t&&e(t.cause)}}});let n=e.r(63138),a=e.r(67287),o=e.r(32061),i=e.r(65713),u=e.r(67673),s=e.r(76353);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},90508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unstable_rethrow",{enumerable:!0,get:function(){return n}});let n="u"<typeof window?e.r(91414).unstable_rethrow:e.r(15507).unstable_rethrow;("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},92805,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ReadonlyURLSearchParams:function(){return o.ReadonlyURLSearchParams},RedirectType:function(){return u.RedirectType},forbidden:function(){return c.forbidden},notFound:function(){return s.notFound},permanentRedirect:function(){return i.permanentRedirect},redirect:function(){return i.redirect},unauthorized:function(){return d.unauthorized},unstable_isUnrecognizedActionError:function(){return f},unstable_rethrow:function(){return l.unstable_rethrow}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(3680),i=e.r(24063),u=e.r(68391),s=e.r(22783),c=e.r(79854),d=e.r(22683),l=e.r(90508);function f(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},76562,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ReadonlyURLSearchParams:function(){return u.ReadonlyURLSearchParams},RedirectType:function(){return l.RedirectType},ServerInsertedHTMLContext:function(){return c.ServerInsertedHTMLContext},forbidden:function(){return l.forbidden},notFound:function(){return l.notFound},permanentRedirect:function(){return l.permanentRedirect},redirect:function(){return l.redirect},unauthorized:function(){return l.unauthorized},unstable_isUnrecognizedActionError:function(){return d.unstable_isUnrecognizedActionError},unstable_rethrow:function(){return l.unstable_rethrow},useParams:function(){return b},usePathname:function(){return y},useRouter:function(){return m},useSearchParams:function(){return h},useSelectedLayoutSegment:function(){return _},useSelectedLayoutSegments:function(){return g},useServerInsertedHTML:function(){return c.useServerInsertedHTML}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(90809)._(e.r(71645)),i=e.r(8372),u=e.r(61994),s=e.r(13258),c=e.r(13957),d=e.r(92838),l=e.r(92805),f="u"<typeof window?e.r(67673).useDynamicRouteParams:void 0,p="u"<typeof window?e.r(67673).useDynamicSearchParams:void 0;function h(){p?.("useSearchParams()");let e=(0,o.useContext)(u.SearchParamsContext);return(0,o.useMemo)(()=>e?new u.ReadonlyURLSearchParams(e):null,[e])}function y(){return f?.("usePathname()"),(0,o.useContext)(u.PathnameContext)}function m(){let e=(0,o.useContext)(i.AppRouterContext);if(null===e)throw Object.defineProperty(Error("invariant expected app router to be mounted"),"__NEXT_ERROR_CODE",{value:"E238",enumerable:!1,configurable:!0});return e}function b(){return f?.("useParams()"),(0,o.useContext)(u.PathParamsContext)}function g(e="children"){f?.("useSelectedLayoutSegments()");let t=(0,o.useContext)(i.LayoutRouterContext);return t?(0,s.getSelectedLayoutSegmentPath)(t.parentTree,e):null}function _(e="children"){f?.("useSelectedLayoutSegment()"),(0,o.useContext)(u.NavigationPromisesContext);let t=g(e);return(0,s.computeSelectedLayoutSegment)(t,e)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,82310,e=>{"use strict";function t(e){return e instanceof Error?e.message:String(e)}e.s(["errorMessage",()=>t])},36288,e=>{"use strict";var t=e.i(43476),s=e.i(22016),r=e.i(18566),a=e.i(71645),n=e.i(76972),c=e.i(82310),i=e.i(42771);function o({teamId:e,ticket:s,currentOwner:n}){let c=(0,r.useRouter)(),[i,o]=(0,a.useState)([]),[l,d]=(0,a.useState)(n??""),[m,x]=(0,a.useState)(!1),[u,k]=(0,a.useState)(null);(0,a.useEffect)(()=>{let t=!1;return(async()=>{try{let s=e?`/api/teams/${encodeURIComponent(e)}/tickets/assignees`:"/api/tickets/assignees",r=await fetch(s,{cache:"no-store"}),a=await r.json();if(t)return;o(Array.isArray(a.assignees)?a.assignees:[])}catch{if(t)return;o([])}})(),()=>{t=!0}},[]);let h=(0,a.useMemo)(()=>{let e=new Set(i);return n&&e.add(n),Array.from(e).sort()},[i,n]);async function p(){x(!0),k(null);try{let t=e?`/api/teams/${encodeURIComponent(e)}/tickets/assign`:"/api/tickets/assign",r=await fetch(t,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({ticket:s,assignee:l})}),a=await r.json();if(!r.ok)return void k(a.error||"Assign failed");c.refresh()}catch{k("Assign failed")}finally{x(!1)}}return(0,t.jsxs)("div",{className:"ck-glass p-4",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-tertiary)]",children:"Assignee"}),(0,t.jsxs)("select",{className:"rounded-md border border-white/10 bg-black/20 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]",value:l,onChange:e=>d(e.target.value),children:[(0,t.jsx)("option",{value:"",disabled:!0,children:"Select…"}),h.map(e=>(0,t.jsx)("option",{value:e,children:e},e))]}),(0,t.jsx)("button",{type:"button",onClick:p,disabled:m||!l||l===(n??""),className:"rounded-md bg-emerald-600 px-3 py-2 text-sm font-semibold text-white hover:bg-emerald-500 disabled:cursor-not-allowed disabled:opacity-50",children:m?"Assigning…":"Assign"}),n?(0,t.jsxs)("div",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:["Currently: ",n]}):null]}),u?(0,t.jsx)("div",{className:"mt-2 text-xs text-red-300",children:u}):null]})}function l(e){let l=(0,r.useRouter)(),d=(0,n.useToast)(),[m,x]=(0,a.useTransition)(),[u,k]=(0,a.useState)(null),[h,p]=(0,a.useState)(null);async function b(){k(null),await (0,i.fetchJson)(`/api/teams/${encodeURIComponent(e.teamId)}/tickets/move-to-goals`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({ticket:e.ticketId})})}async function f(){k(null),await (0,i.fetchJson)(`/api/teams/${encodeURIComponent(e.teamId)}/tickets/delete`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({ticket:e.ticketId})})}return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)(s.default,{href:e.backHref??"/tickets",className:"text-sm font-medium hover:underline",children:"← Back"}),(0,t.jsx)("span",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:e.file})]}),u?(0,t.jsx)("div",{className:"ck-glass border border-[color:var(--ck-border-strong)] p-3 text-sm text-[color:var(--ck-text-primary)]",children:u}):null,void 0!==e.currentOwner?(0,t.jsx)(o,{teamId:e.teamId,ticket:e.ticketId,currentOwner:e.currentOwner??null}):null,(0,t.jsx)("div",{className:"ck-glass p-4",children:(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[(0,t.jsx)("button",{className:"rounded border border-[color:var(--ck-border-subtle)] px-3 py-1.5 text-xs font-medium text-[color:var(--ck-text-secondary)] hover:border-[color:var(--ck-border-strong)]",onClick:()=>p({kind:"goals"}),disabled:m,children:"Move to Goals"}),(0,t.jsx)("button",{className:"rounded border border-[color:var(--ck-accent-red)] bg-[color:var(--ck-accent-red-soft)] px-3 py-1.5 text-xs font-medium text-[color:var(--ck-accent-red)] hover:bg-[color:var(--ck-accent-red-soft-strong)]",onClick:()=>p({kind:"delete"}),disabled:m,children:"Delete Ticket"})]})}),(0,t.jsx)("div",{className:"ck-glass p-6",children:(0,t.jsx)("pre",{className:"whitespace-pre-wrap break-words text-sm leading-6 text-[color:var(--ck-text-primary)]",children:e.markdown})}),h?(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 p-4",children:(0,t.jsxs)("div",{className:"ck-glass w-full max-w-lg rounded-[var(--ck-radius-md)] border border-[color:var(--ck-border-strong)] p-4",children:[(0,t.jsx)("div",{className:"text-sm font-semibold text-[color:var(--ck-text-primary)]",children:"goals"===h.kind?"Move to Goals":"Delete ticket"}),(0,t.jsx)("div",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"goals"===h.kind?(0,t.jsxs)(t.Fragment,{children:["This will move the ticket out of the work lanes into ",(0,t.jsx)("code",{children:"work/goals/"})," so it won’t be picked up by automation."]}):(0,t.jsx)(t.Fragment,{children:"This will permanently remove the ticket markdown file. Assignment stubs (if any) will be archived."})}),(0,t.jsxs)("div",{className:"mt-4 flex items-center justify-end gap-2",children:[(0,t.jsx)("button",{className:"rounded border border-[color:var(--ck-border-subtle)] px-3 py-1.5 text-xs text-[color:var(--ck-text-secondary)]",onClick:()=>p(null),disabled:m,children:"Cancel"}),(0,t.jsx)("button",{className:"delete"===h.kind?"rounded bg-[color:var(--ck-accent-red)] px-3 py-1.5 text-xs font-medium text-white":"rounded bg-[color:var(--ck-accent)] px-3 py-1.5 text-xs font-medium text-black",onClick:()=>{let t=h.kind;p(null),x(()=>{("goals"===t?b():f()).then(()=>{d.push({kind:"success",message:"delete"===t?"Ticket deleted.":"Moved to Goals."}),"delete"===t?l.push(e.backHref??"/tickets"):l.refresh()}).catch(e=>k((0,c.errorMessage)(e)))})},disabled:m,children:"Confirm"})]})]})}):null]})}e.s(["TicketDetailClient",()=>l],36288)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,54523,e=>{"use strict";var t=e.i(43476),s=e.i(22016),r=e.i(71645);function a(e){if(!e)return null;let t=e.split("/").filter(Boolean).find(e=>e.startsWith("workspace-"))??"";return t&&t.slice(10)||null}function l(e){return e.endsWith("-team")?e.slice(0,-5):e}function o({agents:e,teamNames:o}){let c=(0,r.useMemo)(()=>{let t=new Set;for(let s of e){let e=a(s.workspace);e&&t.add(e)}return Array.from(t).sort()},[e]),[i,n]=(0,r.useState)("all"),d=(0,r.useMemo)(()=>{let t=new Map;for(let s of e){let e=a(s.workspace)??"personal";if("all"!==i&&e!==i)continue;let r=t.get(e)??[];r.push(s),t.set(e,r)}return Array.from(t.keys()).sort((e,t)=>"personal"===e?1:"personal"===t?-1:e.localeCompare(t)).map(e=>{let s,r,a="personal"===e?"Personal / Unassigned":(s=l(e),o[e]||o[s]||((r=s.replace(/[-_]+/g," ").replace(/\s+/g," ").trim())?r.split(" ").map(e=>/^(ai|api|cli|ui|ux|sre|qa|devops)$/i.test(e)?e.toUpperCase():e.slice(0,1).toUpperCase()+e.slice(1)).join(" "):s));return{key:e,title:a,subtitle:"personal"===e?null:`workspace-${e}`,agents:(t.get(e)??[]).slice().sort((e,t)=>e.id.localeCompare(t.id)),isTeam:"personal"!==e}})},[e,i,o]);return(0,t.jsxs)("div",{className:"ck-glass w-full p-6 sm:p-8",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h1",{className:"text-3xl font-semibold tracking-tight",children:["Claw Kitchen"," ",(0,t.jsx)("span",{className:"text-sm align-middle text-[color:var(--ck-text-secondary)]",children:"(v2)"})]}),(0,t.jsx)("p",{className:"mt-2 max-w-prose text-[color:var(--ck-text-secondary)]",children:"Installed agents on this machine, grouped by team workspace when available."})]}),(0,t.jsxs)("div",{className:"flex flex-col items-start gap-2 sm:items-end",children:[(0,t.jsx)(s.default,{href:"/recipes?createCustomTeam=1",className:"rounded-[var(--ck-radius-sm)] border border-[color:var(--ck-border-subtle)] bg-[color:var(--ck-bg-glass)] px-3 py-1.5 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] transition-colors hover:bg-[color:var(--ck-bg-glass-strong)]",children:"Create team"}),(0,t.jsx)(s.default,{href:"/recipes",className:"text-sm font-medium text-[color:var(--ck-text-secondary)] transition-colors hover:text-[color:var(--ck-text-primary)]",children:"Recipes"}),(0,t.jsx)(s.default,{href:"/tickets",className:"text-sm font-medium text-[color:var(--ck-text-secondary)] transition-colors hover:text-[color:var(--ck-text-primary)]",children:"Tickets"}),(0,t.jsx)(s.default,{href:"/settings",className:"text-sm font-medium text-[color:var(--ck-text-secondary)] transition-colors hover:text-[color:var(--ck-text-primary)]",children:"Settings"})]})]}),c.length?(0,t.jsxs)("div",{className:"mt-6",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Team filter"}),(0,t.jsxs)("select",{className:"mt-2 w-full rounded-[var(--ck-radius-sm)] border border-[color:var(--ck-border-subtle)] bg-[color:var(--ck-bg-glass)] px-3 py-2 text-sm text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] sm:w-[280px]",value:i,onChange:e=>n(e.target.value),children:[(0,t.jsx)("option",{value:"all",children:"All teams"}),c.map(e=>{let s=o[e]||o[l(e)]||e;return(0,t.jsx)("option",{value:e,children:s},e)}),(0,t.jsx)("option",{value:"personal",children:"Personal / Unassigned"})]})]}):null,(0,t.jsx)("div",{className:"mt-8 space-y-8",children:d.map(e=>(0,t.jsxs)("section",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("h2",{className:"truncate text-lg font-semibold tracking-tight text-[color:var(--ck-text-primary)]",children:e.title}),e.subtitle?(0,t.jsx)("div",{className:"mt-0.5 truncate text-xs text-[color:var(--ck-text-secondary)]",children:e.subtitle}):null]}),e.isTeam?(0,t.jsx)(s.default,{href:`/teams/${encodeURIComponent(e.key)}`,className:"rounded-[var(--ck-radius-sm)] border border-[color:var(--ck-border-subtle)] bg-[color:var(--ck-bg-glass)] px-3 py-1.5 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] transition-colors hover:bg-[color:var(--ck-bg-glass-strong)]",children:"Edit"}):null]}),(0,t.jsx)("div",{className:"mt-3 grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3",children:e.agents.map(e=>(0,t.jsxs)(s.default,{href:`/agents/${encodeURIComponent(e.id)}`,className:"ck-glass block px-4 py-3 transition-colors hover:bg-[color:var(--ck-bg-glass-strong)]",children:[(0,t.jsx)("div",{className:"truncate font-medium text-[color:var(--ck-text-primary)]",children:e.identityName||e.id}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-secondary)]",children:[e.id,e.isDefault?" • default":""]}),e.model?(0,t.jsx)("div",{className:"mt-1 truncate text-xs text-[color:var(--ck-text-tertiary)]",children:e.model}):null]},e.id))})]},e.key))}),(0,t.jsxs)("p",{className:"mt-10 text-xs text-[color:var(--ck-text-tertiary)]",children:["Note: Team detection currently uses the convention ",(0,t.jsx)("code",{children:"~/.openclaw/workspace-<teamId>"}),"."]})]})}e.s(["default",()=>o])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,82310,e=>{"use strict";function t(e){return e instanceof Error?e.message:String(e)}e.s(["errorMessage",()=>t])},54510,44355,e=>{"use strict";var t=e.i(43476),a=e.i(74080);function s({open:e,onClose:s,title:r,children:l,error:i,confirmLabel:n,confirmBusyLabel:o,onConfirm:c,confirmDisabled:d,busy:m,confirmButtonClassName:x}){if(!e)return null;let u=m??!1,h=u&&o?o:n,g="confirmation-modal-title";return(0,a.createPortal)((0,t.jsxs)("div",{className:"fixed inset-0 z-[200]",children:[(0,t.jsx)("div",{className:"fixed inset-0 bg-black/60",onClick:s,"aria-hidden":"true"}),(0,t.jsx)("div",{className:"fixed inset-0 overflow-y-auto",role:"dialog","aria-modal":"true","aria-labelledby":g,children:(0,t.jsx)("div",{className:"flex min-h-full items-center justify-center p-4",children:(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-2xl border border-white/10 bg-[color:var(--ck-bg-glass-strong)] p-5 shadow-[var(--ck-shadow-2)]",children:[(0,t.jsx)("h2",{id:g,className:"text-lg font-semibold text-[color:var(--ck-text-primary)]",children:r}),l,i?(0,t.jsx)("div",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:i}):null,(0,t.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:s,className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10",children:"Cancel"}),(0,t.jsx)("button",{type:"button",disabled:(d??!1)||u,onClick:c,className:x??"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] transition-colors hover:bg-[var(--ck-accent-red-hover)] disabled:opacity-50",children:h})]})]})})})]}),document.body)}function r({open:e,onClose:a,title:r,entityLabel:l,bodyText:i,onConfirm:n,busy:o,error:c}){return(0,t.jsx)(s,{open:e,onClose:a,title:r,confirmLabel:"Delete",confirmBusyLabel:"Deleting…",onConfirm:n,busy:o,error:c??void 0,children:(0,t.jsxs)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:[r," ",(0,t.jsx)("code",{className:"font-mono",children:l}),"? ",i]})})}function l(e){return function(a){let s=a[e.entityLabelKey];return(0,t.jsx)(r,{open:a.open,onClose:a.onClose,title:e.title,entityLabel:s,bodyText:e.bodyText,onConfirm:a.onConfirm,busy:a.busy,error:a.error})}}e.s(["ConfirmationModal",()=>s],44355);let i=l({title:"Delete agent",bodyText:"This will remove its workspace/state.",entityLabelKey:"agentId"}),n=l({title:"Delete Team",bodyText:"This will remove the team workspace, agents, and stamped cron jobs.",entityLabelKey:"teamId"}),o=l({title:"Delete recipe",bodyText:"This removes the markdown file from your workspace.",entityLabelKey:"recipeId"}),c=l({title:"Delete cron job",bodyText:"This removes it from the Gateway scheduler. You can recreate it later.",entityLabelKey:"jobLabel"});e.s(["DeleteAgentModal",0,i,"DeleteCronJobModal",0,c,"DeleteRecipeModal",0,o,"DeleteTeamModal",0,n],54510)},72532,e=>{"use strict";var t=e.i(43476);function a({title:e,files:a,loading:s,showOptionalFiles:r,onShowOptionalChange:l,selectedFileName:i,onSelectFile:n,renderItemExtra:o}){let c=r?a:a.filter(e=>e.required||!e.missing);return(0,t.jsxs)("div",{className:"ck-glass-strong p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:e}),(0,t.jsxs)("label",{className:"flex items-center gap-2 text-xs text-[color:var(--ck-text-secondary)]",children:[(0,t.jsx)("input",{type:"checkbox",checked:r,onChange:e=>l(e.target.checked)}),"Show optional"]})]}),(0,t.jsx)("div",{className:"mt-2 text-xs text-[color:var(--ck-text-tertiary)]",children:"Default view hides optional missing files to reduce noise."}),(0,t.jsxs)("ul",{className:"mt-3 space-y-1",children:[s?(0,t.jsx)("li",{className:"text-sm text-[color:var(--ck-text-secondary)]",children:"Loading…"}):null,c.map(e=>{var a;let s;return(0,t.jsx)("li",{children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>n(e.name),className:(a=e.name,s="w-full rounded-[var(--ck-radius-sm)] px-3 py-2 text-left text-sm",i===a?`${s} bg-white/10 text-[color:var(--ck-text-primary)]`:`${s} text-[color:var(--ck-text-secondary)] hover:bg-white/5`),children:[(0,t.jsx)("span",{className:e.required?"text-[color:var(--ck-text-primary)]":"text-[color:var(--ck-text-secondary)]",children:e.name}),(0,t.jsx)("span",{className:"ml-2 text-[10px] uppercase tracking-wide text-[color:var(--ck-text-tertiary)]",children:e.required?"required":"optional"}),e.missing?(0,t.jsx)("span",{className:"ml-2 text-xs text-[color:var(--ck-text-tertiary)]",children:"missing"}):null]}),o?.(e)]})},e.name)})]})]})}e.s(["FileListWithOptionalToggle",()=>a])},88810,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(18566),r=e.i(82310),l=e.i(42771),i=e.i(54510),n=e.i(72532);function o({name:e,emoji:a,theme:s,avatar:r,saving:l,returnTo:i,onNameChange:n,onEmojiChange:o,onThemeChange:c,onAvatarChange:d,onSave:m,router:x}){return(0,t.jsxs)("div",{className:"ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Identity"}),(0,t.jsx)("label",{className:"mt-3 block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Name"}),(0,t.jsx)("input",{value:e,onChange:e=>n(e.target.value),className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}),(0,t.jsxs)("div",{className:"mt-3 grid grid-cols-1 gap-3 sm:grid-cols-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Emoji"}),(0,t.jsx)("input",{value:a,onChange:e=>o(e.target.value),placeholder:"🦞",className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Theme"}),(0,t.jsx)("input",{value:s,onChange:e=>c(e.target.value),placeholder:"warm, sharp, calm",className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Avatar"}),(0,t.jsx)("input",{value:r,onChange:e=>d(e.target.value),placeholder:"avatars/openclaw.png",className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"})]})]}),(0,t.jsxs)("div",{className:"mt-4 flex flex-col gap-2 sm:flex-row",children:[(0,t.jsx)("button",{disabled:l,onClick:m,className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] transition-colors hover:bg-[var(--ck-accent-red-hover)] active:bg-[var(--ck-accent-red-active)] disabled:opacity-50",children:l?"Saving…":"Save"}),i?(0,t.jsx)("button",{disabled:l,onClick:async()=>{await m(),x.push(i)},className:"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] transition-colors hover:bg-white/10 active:bg-white/15 disabled:opacity-50",children:"Save & return"}):null]})]})}function c({model:e,saving:a,onModelChange:s,onSave:r}){return(0,t.jsxs)("div",{className:"ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Config"}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:"Thin slice: edit the configured model id for this agent (writes to OpenClaw config)."}),(0,t.jsx)("label",{className:"mt-3 block text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Model"}),(0,t.jsx)("input",{value:e,onChange:e=>s(e.target.value),placeholder:"openai/gpt-5.2",className:"mt-1 w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]"}),(0,t.jsx)("div",{className:"mt-3",children:(0,t.jsx)("button",{disabled:a,onClick:r,className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:a?"Saving…":"Save config"})})]})}function d({agentId:e,skillsList:a,availableSkills:s,skillsLoading:r,selectedSkill:l,installingSkill:i,skillError:n,skillMsg:o,onSelectedSkillChange:c,onInstallSkill:d}){return(0,t.jsxs)("div",{className:"ck-glass-strong p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:"Skills"}),(0,t.jsxs)("p",{className:"mt-2 text-sm text-[color:var(--ck-text-secondary)]",children:["Skills installed in this ",(0,t.jsx)("strong",{children:"agent"})," workspace (",(0,t.jsx)("code",{children:"skills/"}),"). If you want a skill available to all agents, add it at the team level."]}),(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Installed"}),(0,t.jsxs)("ul",{className:"mt-2 list-disc space-y-1 pl-5 text-sm text-[color:var(--ck-text-secondary)]",children:[r&&(0,t.jsx)("li",{children:"Loading…"}),!r&&a.length>0&&a.map(e=>(0,t.jsx)("li",{children:e},e)),!r&&!a.length&&(0,t.jsx)("li",{children:"None installed."})]})]}),(0,t.jsxs)("div",{className:"mt-5 rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/15 p-3",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[color:var(--ck-text-secondary)]",children:"Add a skill"}),(0,t.jsxs)("div",{className:"mt-2 flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,t.jsx)("select",{value:l,onChange:e=>c(e.target.value),className:"w-full rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 px-3 py-2 text-sm text-[color:var(--ck-text-primary)]",disabled:i||!s.length,children:s.length?s.map(e=>(0,t.jsx)("option",{value:e,children:e},e)):(0,t.jsx)("option",{value:"",children:"No skills found"})}),(0,t.jsx)("button",{type:"button",disabled:i||!l,onClick:()=>void d(),className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:i?"Adding…":"Add"})]}),n&&(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:n}),!n&&o&&(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-emerald-400/30 bg-emerald-500/10 p-3 text-sm text-emerald-100",children:o}),(0,t.jsxs)("div",{className:"mt-2 text-xs text-[color:var(--ck-text-tertiary)]",children:["This uses ",(0,t.jsxs)("code",{children:["openclaw recipes install-skill <skill> --agent-id ",e," --yes"]}),"."]})]})]})}function m({agentFiles:e,agentFilesLoading:a,showOptionalFiles:s,fileName:r,fileContent:l,loadingFile:i,saving:o,fileError:c,onShowOptionalChange:d,onLoadFile:m,onFileContentChange:x,onSaveFile:u,onCreateMissingFile:h}){return(0,t.jsxs)("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-3",children:[(0,t.jsx)(n.FileListWithOptionalToggle,{title:"Agent files",files:e,loading:a,showOptionalFiles:s,onShowOptionalChange:d,selectedFileName:r,onSelectFile:m,renderItemExtra:e=>e.missing?(0,t.jsx)("button",{type:"button",disabled:o,onClick:()=>void h(e.name),className:"shrink-0 rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-2 py-1 text-xs font-medium text-[color:var(--ck-text-primary)] hover:bg-white/10 disabled:opacity-50",children:"Create"}):null}),(0,t.jsxs)("div",{className:"ck-glass-strong p-4 lg:col-span-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"text-sm font-medium text-[color:var(--ck-text-primary)]",children:["Edit: ",r]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[i?(0,t.jsx)("span",{className:"text-xs text-[color:var(--ck-text-tertiary)]",children:"Loading…"}):null,(0,t.jsx)("button",{disabled:o,onClick:u,className:"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)] disabled:opacity-50",children:o?"Saving…":"Save file"})]})]}),c?(0,t.jsx)("div",{className:"mt-3 rounded-[var(--ck-radius-sm)] border border-red-400/30 bg-red-500/10 p-3 text-sm text-red-100",children:c}):null,(0,t.jsx)("textarea",{value:l,onChange:e=>x(e.target.value),className:"mt-3 h-[55vh] w-full resize-none rounded-[var(--ck-radius-sm)] border border-white/10 bg-black/25 p-3 font-mono text-xs text-[color:var(--ck-text-primary)]",spellCheck:!1})]})]})}async function x(e,t){t.setAgentFilesLoading(!0),t.setSkillsLoading(!0);try{let[a,s,r]=await (0,l.fetchAll)([`/api/agents/files?agentId=${encodeURIComponent(e)}`,`/api/agents/skills?agentId=${encodeURIComponent(e)}`,"/api/skills/available"]),i=[];try{let e=await a.json();if(a.ok&&e.ok){let a=Array.isArray(e.files)?e.files:[];t.setAgentFiles(a.map(e=>({name:String(e.name??""),missing:!!e.missing,required:!!e.required,rationale:"string"==typeof e.rationale?e.rationale:void 0})))}}catch{}try{let e=await s.json();s.ok&&e.ok&&(i=Array.isArray(e.skills)?e.skills:[],t.setSkillsList(i))}catch{}try{let e=await r.json();if(r.ok&&e.ok){let a=Array.isArray(e.skills)?e.skills:[];t.setAvailableSkills(a);let s=a.find(e=>!i.includes(e));t.setSelectedSkill(s??a[0]??"")}}catch{}}finally{t.setAgentFilesLoading(!1),t.setSkillsLoading(!1)}}function u({agentId:e,returnTo:n}){let u=(0,s.useRouter)(),[h,g]=(0,a.useState)(null),[p,v]=(0,a.useState)(!0),[k,b]=(0,a.useState)(!1),[y,f]=(0,a.useState)(!1),[j,w]=(0,a.useState)(""),[N,S]=(0,a.useState)(""),[C,T]=(0,a.useState)(""),[A,L]=(0,a.useState)(""),[I,E]=(0,a.useState)(!1),[O,F]=(0,a.useState)(!1),[D,M]=(0,a.useState)(null),[U,R]=(0,a.useState)("identity"),[J,$]=(0,a.useState)(""),[K,P]=(0,a.useState)(""),[q,B]=(0,a.useState)(""),[G,W]=(0,a.useState)(""),[Y,z]=(0,a.useState)(""),[H,V]=(0,a.useState)([]),[Q,X]=(0,a.useState)([]),[Z,_]=(0,a.useState)(!1),[ee,et]=(0,a.useState)(""),[ea,es]=(0,a.useState)(!1),[er,el]=(0,a.useState)([]),[ei,en]=(0,a.useState)(!1),[eo,ec]=(0,a.useState)(!1),[ed,em]=(0,a.useState)("SOUL.md"),[ex,eu]=(0,a.useState)(""),eh=e.includes("-")?e.split("-").slice(0,-1).join("-"):"";async function eg(e){b(!0),w("");try{let t=await e();w(t)}catch(e){w((0,r.errorMessage)(e))}finally{b(!1)}}async function ep(){await eg(async()=>(await (0,l.fetchJson)("/api/agents/identity",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({agentId:e,name:J,emoji:K,theme:q,avatar:G})}),"Saved identity via openclaw agents set-identity"))}async function ev(){await eg(async()=>(await (0,l.fetchJson)("/api/agents/update",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({agentId:e,patch:{model:Y}})}),"Saved agent config (model) and restarted gateway"))}async function ek(t){em(t),eu(""),f(!0),S("");try{let a=await (0,l.fetchJson)(`/api/agents/file?agentId=${encodeURIComponent(e)}&name=${encodeURIComponent(t)}`,{cache:"no-store"});if(!a.ok)throw Error("Failed to load file");eu(String(a.content??""))}catch(e){S((0,r.errorMessage)(e))}finally{f(!1)}}async function eb(){b(!0),S("");try{if(!(await (0,l.fetchJson)("/api/agents/file",{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({agentId:e,name:ed,content:ex})})).ok)throw Error("Failed to save file");try{let t=await (0,l.fetchJson)(`/api/agents/files?agentId=${encodeURIComponent(e)}`,{cache:"no-store"});t.ok&&Array.isArray(t.files)&&el(t.files)}catch{}}catch(e){S((0,r.errorMessage)(e))}finally{b(!1)}}async function ey(e){em(e),S(""),eu(function(e){switch(e){case"SOUL.md":return"# SOUL.md\n\n";case"AGENTS.md":return"# AGENTS.md\n\n";case"TOOLS.md":return"# TOOLS.md\n\n";case"STATUS.md":return"# STATUS.md\n\n- (empty)\n";case"NOTES.md":return"# NOTES.md\n\n- (empty)\n";case"IDENTITY.md":return"# IDENTITY.md\n\n- **Name:**\n- **Creature:**\n- **Vibe:**\n- **Emoji:**\n- **Avatar:**\n";case"USER.md":return"# USER.md\n\n";case"HEARTBEAT.md":return"# HEARTBEAT.md\n\n# Keep this file empty (or with only comments) to skip heartbeat API calls.\n";default:return""}}(e)),await eb()}async function ef(){F(!0),M(null),w("");try{await (0,l.fetchJson)(`/api/agents/${encodeURIComponent(e)}`,{method:"DELETE"}),window.location.href="/"}catch(e){M((0,r.errorMessage)(e)),F(!1)}}return(0,a.useEffect)(()=>{(async()=>{v(!0),w("");try{let t=await (0,l.fetchJson)("/api/agents",{cache:"no-store"}),a=(Array.isArray(t.agents)?t.agents:[]).find(t=>t.id===e)??null;g(a),$(a?.identityName??""),z(a?.model??""),v(!1),x(e,{setAgentFiles:el,setSkillsList:V,setAvailableSkills:X,setSelectedSkill:et,setAgentFilesLoading:en,setSkillsLoading:_})}catch(e){w((0,r.errorMessage)(e))}finally{v(!1)}})()},[e]),(0,a.useEffect)(()=>{if("files"!==U||!er.length)return;let e=er.some(e=>e.name===ed),t=er[0]?.name,a=e?ed:t;a&&(a!==ed&&(em(a),eu("")),ex||ek(a))},[U,e,er.length]),p?(0,t.jsx)("div",{className:"ck-glass mx-auto max-w-4xl p-6",children:"Loading…"}):h?(0,t.jsxs)("div",{className:"ck-glass mx-auto max-w-4xl p-6 sm:p-8",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Agent editor"}),(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-secondary)]",children:[h.id,h.isDefault?" • default":"",h.model?` • ${h.model}`:""]})]}),(0,t.jsx)("button",{type:"button",disabled:k,onClick:()=>{M(null),E(!0)},className:"rounded-[var(--ck-radius-sm)] border border-[color:rgba(255,59,48,0.45)] bg-[color:rgba(255,59,48,0.08)] px-3 py-2 text-sm font-medium text-[color:var(--ck-accent-red)] shadow-[var(--ck-shadow-1)] transition-colors hover:bg-[color:rgba(255,59,48,0.12)] disabled:opacity-50",children:"Delete agent"})]}),h.workspace?(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:["Workspace: ",h.workspace]}):null,eh?(0,t.jsxs)("div",{className:"mt-1 text-xs text-[color:var(--ck-text-tertiary)]",children:["Team: ",eh]}):null,j?(0,t.jsx)("div",{className:"mt-4 rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 p-3 text-sm text-[color:var(--ck-text-primary)]",children:j}):null,(0,t.jsx)("div",{className:"mt-6 flex flex-wrap gap-2",children:[{id:"identity",label:"Identity"},{id:"config",label:"Config"},{id:"skills",label:"Skills"},{id:"files",label:"Files"}].map(e=>(0,t.jsx)("button",{onClick:()=>R(e.id),className:U===e.id?"rounded-[var(--ck-radius-sm)] bg-[var(--ck-accent-red)] px-3 py-2 text-sm font-medium text-white shadow-[var(--ck-shadow-1)]":"rounded-[var(--ck-radius-sm)] border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-[color:var(--ck-text-primary)] shadow-[var(--ck-shadow-1)] hover:bg-white/10",children:e.label},e.id))}),(0,t.jsxs)("div",{className:"mt-6 grid grid-cols-1 gap-4",children:["identity"===U&&(0,t.jsx)(o,{name:J,emoji:K,theme:q,avatar:G,saving:k,returnTo:n,onNameChange:$,onEmojiChange:P,onThemeChange:B,onAvatarChange:W,onSave:ep,router:u}),"config"===U&&(0,t.jsx)(c,{model:Y,saving:k,onModelChange:z,onSave:ev}),"skills"===U&&(0,t.jsx)(d,{agentId:e,skillsList:H,availableSkills:Q,skillsLoading:Z,selectedSkill:ee,installingSkill:ea,skillError:A,skillMsg:C,onSelectedSkillChange:et,onInstallSkill:async()=>{es(!0),T(""),L("");try{await (0,l.fetchJson)("/api/agents/skills/install",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({agentId:e,skill:ee})}),T(`Installed skill: ${ee}`);try{let t=await (0,l.fetchJson)(`/api/agents/skills?agentId=${encodeURIComponent(e)}`,{cache:"no-store"});t.ok&&Array.isArray(t.skills)&&V(t.skills)}catch{}}catch(e){L((0,r.errorMessage)(e))}finally{es(!1)}}}),"files"===U&&(0,t.jsx)(m,{agentFiles:er,agentFilesLoading:ei,showOptionalFiles:eo,fileName:ed,fileContent:ex,loadingFile:y,saving:k,fileError:N,onShowOptionalChange:ec,onLoadFile:ek,onFileContentChange:eu,onSaveFile:eb,onCreateMissingFile:ey})]}),(0,t.jsx)(i.DeleteAgentModal,{open:I,agentId:e,busy:O,error:D,onClose:()=>E(!1),onConfirm:()=>void ef()})]}):(0,t.jsxs)("div",{className:"ck-glass mx-auto max-w-4xl p-6",children:["Agent not found: ",e]})}e.s(["default",()=>u],88810)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,35451,(e,t,r)=>{var n={229:function(e){var t,r,n,o=e.exports={};function u(){throw Error("setTimeout has not been defined")}function i(){throw Error("clearTimeout has not been defined")}try{t="function"==typeof setTimeout?setTimeout:u}catch(e){t=u}try{r="function"==typeof clearTimeout?clearTimeout:i}catch(e){r=i}function l(e){if(t===setTimeout)return setTimeout(e,0);if((t===u||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}var s=[],a=!1,c=-1;function f(){a&&n&&(a=!1,n.length?s=n.concat(s):c=-1,s.length&&d())}function d(){if(!a){var e=l(f);a=!0;for(var t=s.length;t;){for(n=s,s=[];++c<t;)n&&n[c].run();c=-1,t=s.length}n=null,a=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===i||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function y(){}o.nextTick=function(e){var t=Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];s.push(new p(e,t)),1!==s.length||a||l(d)},p.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=y,o.addListener=y,o.once=y,o.off=y,o.removeListener=y,o.removeAllListeners=y,o.emit=y,o.prependListener=y,o.prependOnceListener=y,o.listeners=function(e){return[]},o.binding=function(e){throw Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw Error("process.chdir is not supported")},o.umask=function(){return 0}}},o={};function u(e){var t=o[e];if(void 0!==t)return t.exports;var r=o[e]={exports:{}},i=!0;try{n[e](r,r.exports,u),i=!1}finally{i&&delete o[e]}return r.exports}u.ab="/ROOT/node_modules/next/dist/compiled/process/",t.exports=u(229)},47167,(e,t,r)=>{"use strict";var n,o;t.exports=(null==(n=e.g.process)?void 0:n.env)&&"object"==typeof(null==(o=e.g.process)?void 0:o.env)?e.g.process:e.r(35451)},45689,(e,t,r)=>{"use strict";var n=Symbol.for("react.transitional.element");function o(e,t,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==t.key&&(o=""+t.key),"key"in t)for(var u in r={},t)"key"!==u&&(r[u]=t[u]);else r=t;return{$$typeof:n,type:e,key:o,ref:void 0!==(t=r.ref)?t:null,props:r}}r.Fragment=Symbol.for("react.fragment"),r.jsx=o,r.jsxs=o},43476,(e,t,r)=>{"use strict";t.exports=e.r(45689)},50740,(e,t,r)=>{"use strict";var n=e.i(47167),o=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),l=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),c=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),h=Symbol.for("react.activity"),_=Symbol.for("react.view_transition"),v=Symbol.iterator,m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,g={};function j(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||m}function E(){}function w(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||m}j.prototype.isReactComponent={},j.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},j.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},E.prototype=j.prototype;var O=w.prototype=new E;O.constructor=w,b(O,j.prototype),O.isPureReactComponent=!0;var S=Array.isArray;function x(){}var T={H:null,A:null,T:null,S:null},R=Object.prototype.hasOwnProperty;function A(e,t,r){var n=r.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==n?n:null,props:r}}function P(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var M=/\/+/g;function H(e,t){var r,n;return"object"==typeof e&&null!==e&&null!=e.key?(r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,function(e){return n[e]})):t.toString(36)}function k(e,t,r){if(null==e)return e;var n=[],i=0;return!function e(t,r,n,i,l){var s,a,c,f=typeof t;("undefined"===f||"boolean"===f)&&(t=null);var d=!1;if(null===t)d=!0;else switch(f){case"bigint":case"string":case"number":d=!0;break;case"object":switch(t.$$typeof){case o:case u:d=!0;break;case y:return e((d=t._init)(t._payload),r,n,i,l)}}if(d)return l=l(t),d=""===i?"."+H(t,0):i,S(l)?(n="",null!=d&&(n=d.replace(M,"$&/")+"/"),e(l,r,n,"",function(e){return e})):null!=l&&(P(l)&&(s=l,a=n+(null==l.key||t&&t.key===l.key?"":(""+l.key).replace(M,"$&/")+"/")+d,l=A(s.type,a,s.props)),r.push(l)),1;d=0;var p=""===i?".":i+":";if(S(t))for(var h=0;h<t.length;h++)f=p+H(i=t[h],h),d+=e(i,r,n,f,l);else if("function"==typeof(h=null===(c=t)||"object"!=typeof c?null:"function"==typeof(c=v&&c[v]||c["@@iterator"])?c:null))for(t=h.call(t),h=0;!(i=t.next()).done;)f=p+H(i=i.value,h++),d+=e(i,r,n,f,l);else if("object"===f){if("function"==typeof t.then)return e(function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch("string"==typeof e.status?e.then(x,x):(e.status="pending",e.then(function(t){"pending"===e.status&&(e.status="fulfilled",e.value=t)},function(t){"pending"===e.status&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}(t),r,n,i,l);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===(r=String(t))?"object with keys {"+Object.keys(t).join(", ")+"}":r)+"). If you meant to render a collection of children, use an array instead.")}return d}(e,n,"","",function(e){return t.call(r,e,i++)}),n}function U(e){if(-1===e._status){var t=e._result;(t=t()).then(function(t){(0===e._status||-1===e._status)&&(e._status=1,e._result=t)},function(t){(0===e._status||-1===e._status)&&(e._status=2,e._result=t)}),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var C="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"==typeof n.default&&"function"==typeof n.default.emit)return void n.default.emit("uncaughtException",e);console.error(e)};function N(e){var t=T.T,r={};r.types=null!==t?t.types:null,T.T=r;try{var n=e(),o=T.S;null!==o&&o(r,n),"object"==typeof n&&null!==n&&"function"==typeof n.then&&n.then(x,C)}catch(e){C(e)}finally{null!==t&&null!==r.types&&(t.types=r.types),T.T=t}}function $(e){var t=T.T;if(null!==t){var r=t.types;null===r?t.types=[e]:-1===r.indexOf(e)&&r.push(e)}else N($.bind(null,e))}r.Activity=h,r.Children={map:k,forEach:function(e,t,r){k(e,function(){t.apply(this,arguments)},r)},count:function(e){var t=0;return k(e,function(){t++}),t},toArray:function(e){return k(e,function(e){return e})||[]},only:function(e){if(!P(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},r.Component=j,r.Fragment=i,r.Profiler=s,r.PureComponent=w,r.StrictMode=l,r.Suspense=d,r.ViewTransition=_,r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,r.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},r.addTransitionType=$,r.cache=function(e){return function(){return e.apply(null,arguments)}},r.cacheSignal=function(){return null},r.cloneElement=function(e,t,r){if(null==e)throw Error("The argument must be a React element, but you passed "+e+".");var n=b({},e.props),o=e.key;if(null!=t)for(u in void 0!==t.key&&(o=""+t.key),t)R.call(t,u)&&"key"!==u&&"__self"!==u&&"__source"!==u&&("ref"!==u||void 0!==t.ref)&&(n[u]=t[u]);var u=arguments.length-2;if(1===u)n.children=r;else if(1<u){for(var i=Array(u),l=0;l<u;l++)i[l]=arguments[l+2];n.children=i}return A(e.type,o,n)},r.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider=e,e.Consumer={$$typeof:a,_context:e},e},r.createElement=function(e,t,r){var n,o={},u=null;if(null!=t)for(n in void 0!==t.key&&(u=""+t.key),t)R.call(t,n)&&"key"!==n&&"__self"!==n&&"__source"!==n&&(o[n]=t[n]);var i=arguments.length-2;if(1===i)o.children=r;else if(1<i){for(var l=Array(i),s=0;s<i;s++)l[s]=arguments[s+2];o.children=l}if(e&&e.defaultProps)for(n in i=e.defaultProps)void 0===o[n]&&(o[n]=i[n]);return A(e,u,o)},r.createRef=function(){return{current:null}},r.forwardRef=function(e){return{$$typeof:f,render:e}},r.isValidElement=P,r.lazy=function(e){return{$$typeof:y,_payload:{_status:-1,_result:e},_init:U}},r.memo=function(e,t){return{$$typeof:p,type:e,compare:void 0===t?null:t}},r.startTransition=N,r.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},r.use=function(e){return T.H.use(e)},r.useActionState=function(e,t,r){return T.H.useActionState(e,t,r)},r.useCallback=function(e,t){return T.H.useCallback(e,t)},r.useContext=function(e){return T.H.useContext(e)},r.useDebugValue=function(){},r.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},r.useEffect=function(e,t){return T.H.useEffect(e,t)},r.useEffectEvent=function(e){return T.H.useEffectEvent(e)},r.useId=function(){return T.H.useId()},r.useImperativeHandle=function(e,t,r){return T.H.useImperativeHandle(e,t,r)},r.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},r.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},r.useMemo=function(e,t){return T.H.useMemo(e,t)},r.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},r.useReducer=function(e,t,r){return T.H.useReducer(e,t,r)},r.useRef=function(e){return T.H.useRef(e)},r.useState=function(e){return T.H.useState(e)},r.useSyncExternalStore=function(e,t,r){return T.H.useSyncExternalStore(e,t,r)},r.useTransition=function(){return T.H.useTransition()},r.version="19.3.0-canary-f93b9fd4-20251217"},71645,(e,t,r)=>{"use strict";t.exports=e.r(50740)},90373,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useUntrackedPathname",{enumerable:!0,get:function(){return u}});let n=e.r(71645),o=e.r(61994);function u(){return!function(){if("u"<typeof window){let{workUnitAsyncStorage:t}=e.r(62141),r=t.getStore();if(!r)return!1;switch(r.type){case"prerender":case"prerender-client":case"prerender-ppr":let n=r.fallbackRouteParams;return!!n&&n.size>0}}return!1}()?(0,n.useContext)(o.PathnameContext):null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},78377,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={handleHardNavError:function(){return i},useNavFailureHandler:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(71645);let u=e.r(51191);function i(e){return!!(e&&"u">typeof window)&&!!window.next.__pendingUrl&&(0,u.createHrefFromUrl)(new URL(window.location.href))!==(0,u.createHrefFromUrl)(window.next.__pendingUrl)&&(console.error("Error occurred during navigation, falling back to hard navigation",e),window.location.href=window.next.__pendingUrl.toString(),!0)}function l(){}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},12354,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HandleISRError",{enumerable:!0,get:function(){return o}});let n="u"<typeof window?e.r(63599).workAsyncStorage:void 0;function o({error:e}){if(n){let t=n.getStore();if(t?.isStaticGeneration)throw e&&console.error(e),e}return null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},72383,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ErrorBoundary:function(){return y},ErrorBoundaryHandler:function(){return p}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(55682),i=e.r(43476),l=u._(e.r(71645)),s=e.r(90373),a=e.r(65713);e.r(78377);let c=e.r(12354),f=e.r(82604),d="u">typeof window&&(0,f.isBot)(window.navigator.userAgent);class p extends l.default.Component{constructor(e){super(e),this.reset=()=>{this.setState({error:null})},this.state={error:null,previousPathname:this.props.pathname}}static getDerivedStateFromError(e){if((0,a.isNextRouterError)(e))throw e;return{error:e}}static getDerivedStateFromProps(e,t){let{error:r}=t;return e.pathname!==t.previousPathname&&t.error?{error:null,previousPathname:e.pathname}:{error:t.error,previousPathname:e.pathname}}render(){return this.state.error&&!d?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(c.HandleISRError,{error:this.state.error}),this.props.errorStyles,this.props.errorScripts,(0,i.jsx)(this.props.errorComponent,{error:this.state.error,reset:this.reset})]}):this.props.children}}function y({errorComponent:e,errorStyles:t,errorScripts:r,children:n}){let o=(0,s.useUntrackedPathname)();return e?(0,i.jsx)(p,{pathname:o,errorComponent:e,errorStyles:t,errorScripts:r,children:n}):(0,i.jsx)(i.Fragment,{children:n})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58442,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={RedirectBoundary:function(){return p},RedirectErrorBoundary:function(){return d}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(90809),i=e.r(43476),l=u._(e.r(71645)),s=e.r(76562),a=e.r(24063),c=e.r(68391);function f({redirect:e,reset:t,redirectType:r}){let n=(0,s.useRouter)();return(0,l.useEffect)(()=>{l.default.startTransition(()=>{r===c.RedirectType.push?n.push(e,{}):n.replace(e,{}),t()})},[e,r,t,n]),null}class d extends l.default.Component{constructor(e){super(e),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(e){if((0,c.isRedirectError)(e)){let t=(0,a.getURLFromRedirectError)(e),r=(0,a.getRedirectTypeFromError)(e);return"handled"in e?{redirect:null,redirectType:null}:{redirect:t,redirectType:r}}throw e}render(){let{redirect:e,redirectType:t}=this.state;return null!==e&&null!==t?(0,i.jsx)(f,{redirect:e,redirectType:t,reset:()=>this.setState({redirect:null})}):this.props.children}}function p({children:e}){let t=(0,s.useRouter)();return(0,i.jsx)(d,{router:t,children:e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1244,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unresolvedThenable",{enumerable:!0,get:function(){return n}});let n={then:()=>{}};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},97367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={MetadataBoundary:function(){return l},OutletBoundary:function(){return a},RootLayoutBoundary:function(){return c},ViewportBoundary:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(54839),i={[u.METADATA_BOUNDARY_NAME]:function({children:e}){return e},[u.VIEWPORT_BOUNDARY_NAME]:function({children:e}){return e},[u.OUTLET_BOUNDARY_NAME]:function({children:e}){return e},[u.ROOT_LAYOUT_BOUNDARY_NAME]:function({children:e}){return e}},l=i[u.METADATA_BOUNDARY_NAME.slice(0)],s=i[u.VIEWPORT_BOUNDARY_NAME.slice(0)],a=i[u.OUTLET_BOUNDARY_NAME.slice(0)],c=i[u.ROOT_LAYOUT_BOUNDARY_NAME.slice(0)]},68027,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let n=e.r(43476),o=e.r(12354),u={fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},i={fontSize:"14px",fontWeight:400,lineHeight:"28px",margin:"0 8px"},l=function({error:e}){let t=e?.digest;return(0,n.jsxs)("html",{id:"__next_error__",children:[(0,n.jsx)("head",{}),(0,n.jsxs)("body",{children:[(0,n.jsx)(o.HandleISRError,{error:e}),(0,n.jsx)("div",{style:u,children:(0,n.jsxs)("div",{children:[(0,n.jsxs)("h2",{style:i,children:["Application error: a ",t?"server":"client","-side exception has occurred while loading ",window.location.hostname," (see the"," ",t?"server logs":"browser console"," for more information)."]}),t?(0,n.jsx)("p",{style:i,children:`Digest: ${t}`}):null]})})]})]})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]);
|