@mndrk/agx 2.0.23 → 2.0.25
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/cloud-runtime/standalone/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +1 -0
- package/cloud-runtime/standalone/.next/build-manifest.json +6 -6
- package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/.next/routes-manifest.json +6 -0
- package/cloud-runtime/standalone/.next/server/app/_global-error/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/_global-error/page.js +2 -2
- package/cloud-runtime/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/_not-found/page.js +6 -5
- package/cloud-runtime/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +11 -11
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +7 -7
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/agents/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/agents.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route.js +7 -0
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route.js.map +5 -0
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/.next/server/app/api/providers/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/status/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/automations/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/automations.rsc +11 -11
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +11 -11
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +5 -5
- package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/board/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/board/page.js +6 -6
- package/cloud-runtime/standalone/.next/server/app/board/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/board.rsc +8 -8
- package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +8 -8
- package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/index.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +13 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/projects/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/projects.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/settings/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/settings/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/settings/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/settings.rsc +9 -9
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +9 -9
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/status/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/status/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/status/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/status.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome/page/build-manifest.json +4 -4
- package/cloud-runtime/standalone/.next/server/app/welcome/page.js +5 -5
- package/cloud-runtime/standalone/.next/server/app/welcome/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.html +14 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +10 -10
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +1 -0
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__60ba5058._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__621dcb4a._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__babd2675._.js → [root-of-the-server]__82d76712._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d36da34d._.js → [root-of-the-server]__c2767ca5._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_filesystem_browse_route_actions_8e268170.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/lib_history-store_ts_2e721df2._.js +4 -4
- package/cloud-runtime/standalone/.next/server/chunks/lib_history-store_ts_74d1c060._.js +6 -6
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__fb05a385._.js → [root-of-the-server]__056cdf7d._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__113d6767._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__8d1af2c9._.js → [root-of-the-server]__11e33b9b._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__296a25b5._.js → [root-of-the-server]__19cd257e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__226f8a19._.js +13 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__51980630._.js → [root-of-the-server]__26d669c2._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__47caef59._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0a103abc._.js → [root-of-the-server]__4ebf5947._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__5ffa2883._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__6a9d3855._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__942ca438._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__c45c7360._.js → [root-of-the-server]__a667191a._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1cfbd715._.js → [root-of-the-server]__aa28d46f._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__bd4d5430._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__ab36b420._.js → [root-of-the-server]__bde5bc78._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__cde88183._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ce3b51aa._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__2503b467._.js → [root-of-the-server]__d36dd8bc._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__b77ae83d._.js → [root-of-the-server]__dac5ab29._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__3405b8e4._.js → [root-of-the-server]__e87ba2b0._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__b9356576._.js → [root-of-the-server]__f62d412e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__756711b8._.js → [root-of-the-server]__f63d6594._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__46de03a9._.js → [root-of-the-server]__febbd0b8._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__89c70d6f._.js → [root-of-the-server]__ff22a10e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_a88b4884._.js → _02c78cac._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{node_modules_next_dist_08570d7f._.js → _0b36c9d6._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_0ff7c687._.js +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_0ffd2660._.js +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_37435df3._.js → _173da79d._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_4fe611fe._.js → _1c58ab2d._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_a19a362a._.js → _222af282._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_27cb3359._.js +95 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_8ebf36f6._.js → _3aa32c11._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_43472af3._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_4b5d7c9b._.js +95 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_c52176ad._.js → _4d4ba84b._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_194cda6c._.js → _50d04b8f._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_a8eaf6bc._.js → _629dc55c._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_6a367524._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_93914ecd._.js +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_94effa0f._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_a696e9b3._.js +95 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_ae20456d._.js +4 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_c838f593._.js +95 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_cd5e154b._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_fc18d7b5._.js → _e04b4053._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_e1769638._.js +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_b9d3574c._.js → _f1465cc8._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_d4878ef1._.js → _f2a7beb1._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_fbced30b._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_8d8836a8._.js → _fc1aaf9e._.js} +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_agents_[id]_page_tsx_9c49d8c8._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_agents_page_tsx_f5f08ed8._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_automations_page_tsx_3d732184._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_execution-graph_page_tsx_f854185a._.js +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_global-error_tsx_9170b7a0._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_page_tsx_e0fabf6e._.js +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +5 -5
- package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_03ec2107._.js +4 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_d92e159d.js → node_modules_next_dist_esm_build_templates_app-page_61c49327.js} +3 -3
- package/cloud-runtime/standalone/.next/server/middleware-build-manifest.js +4 -4
- package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/.next/server/pages/404.html +13 -1
- package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
- package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/{785cb91c31bb3303.js → 09f9eeea393db0fd.js} +3 -3
- package/cloud-runtime/standalone/.next/static/chunks/1184bf1bfdf97666.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/2acd153dc5252e88.js +30 -0
- package/cloud-runtime/standalone/.next/static/chunks/2deeba875ec50761.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/45b4d0ee5c92d45b.js +93 -0
- package/cloud-runtime/standalone/.next/static/chunks/5ace4b4f4475962a.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/616d66dbec9e4b8b.js +93 -0
- package/cloud-runtime/standalone/.next/static/chunks/64f812259cf8c243.js +18 -0
- package/cloud-runtime/standalone/.next/static/chunks/6dbf5940e30fa9c7.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/7d4c1d97169c8522.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/7f13efe9329d3f97.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/80219bbddcf65109.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{47ef8bb2118ea917.js → 86ace6febb11ad71.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/{90c7dbc004f59a42.js → 88e24940a5d5d386.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/9d50c2514f72d926.css +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/b079c677d9b39f98.js +5 -0
- package/cloud-runtime/standalone/.next/static/chunks/b4e298542d366e31.js +93 -0
- package/cloud-runtime/standalone/.next/static/chunks/b88352740262931f.js +6 -0
- package/cloud-runtime/standalone/.next/static/chunks/bd6c5b5b4fbd6413.css +2 -0
- package/cloud-runtime/standalone/.next/static/chunks/c5609fd2abb65850.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{7ca3e4f9ed7425a8.js → d95cd010361834be.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/da434b1ad885d636.js +30 -0
- package/cloud-runtime/standalone/.next/static/chunks/e44264686aa5ecbf.js +93 -0
- package/cloud-runtime/standalone/.next/static/chunks/eab1c7d0246592f8.js +8 -0
- package/cloud-runtime/standalone/.next/static/chunks/f7bbf5cfcfed8ba9.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{turbopack-92401168917c21f2.js → turbopack-5b5918f610666d2d.js} +1 -1
- package/cloud-runtime/standalone/README.md +15 -3
- package/cloud-runtime/standalone/app/agents/[id]/page.tsx +147 -147
- package/cloud-runtime/standalone/app/agents/page.tsx +101 -101
- package/cloud-runtime/standalone/app/api/filesystem/browse/route.ts +39 -0
- package/cloud-runtime/standalone/app/api/status/route.ts +1 -1
- package/cloud-runtime/standalone/app/api/threads/route.ts +4 -5
- package/cloud-runtime/standalone/app/automations/page.tsx +1 -1
- package/cloud-runtime/standalone/app/execution-graph/page.tsx +86 -86
- package/cloud-runtime/standalone/app/global-error.tsx +54 -0
- package/cloud-runtime/standalone/app/globals.css +165 -59
- package/cloud-runtime/standalone/app/layout.tsx +17 -0
- package/cloud-runtime/standalone/app/projects/[slug]/layout.tsx +1 -1
- package/cloud-runtime/standalone/app/projects/[slug]/page.tsx +58 -58
- package/cloud-runtime/standalone/app/status/page.tsx +20 -20
- package/cloud-runtime/standalone/app/welcome/page.tsx +20 -15
- package/cloud-runtime/standalone/components/AutomationsBoard.tsx +1 -1
- package/cloud-runtime/standalone/components/ClientOnly.tsx +17 -0
- package/cloud-runtime/standalone/components/ConsentToggle/index.tsx +3 -3
- package/cloud-runtime/standalone/components/ContextMenu.tsx +123 -0
- package/cloud-runtime/standalone/components/DaemonBar.tsx +9 -9
- package/cloud-runtime/standalone/components/DirectoryBrowser.tsx +140 -0
- package/cloud-runtime/standalone/components/FirstRunModal/index.tsx +10 -10
- package/cloud-runtime/standalone/components/KanbanBoard.tsx +9 -9
- package/cloud-runtime/standalone/components/OfflineIndicator.tsx +149 -0
- package/cloud-runtime/standalone/components/ProjectModal.tsx +32 -8
- package/cloud-runtime/standalone/components/TaskCard.tsx +3 -3
- package/cloud-runtime/standalone/components/WorkspaceRootsList/index.tsx +57 -35
- package/cloud-runtime/standalone/components/chat-ui/AttachmentTray.tsx +7 -7
- package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +218 -121
- package/cloud-runtime/standalone/components/chat-ui/ChatPreview.tsx +4 -4
- package/cloud-runtime/standalone/components/chat-ui/CommandPopover.tsx +4 -4
- package/cloud-runtime/standalone/components/chat-ui/Composer.tsx +65 -29
- package/cloud-runtime/standalone/components/chat-ui/FileMentionPopover.tsx +4 -4
- package/cloud-runtime/standalone/components/chat-ui/FileMentionPopoverItem.tsx +9 -9
- package/cloud-runtime/standalone/components/chat-ui/LogPanel.tsx +5 -5
- package/cloud-runtime/standalone/components/chat-ui/Markdown.tsx +11 -11
- package/cloud-runtime/standalone/components/chat-ui/MentionPopover.tsx +11 -11
- package/cloud-runtime/standalone/components/chat-ui/MessageAttachments.tsx +5 -5
- package/cloud-runtime/standalone/components/chat-ui/MessageBubble.tsx +6 -6
- package/cloud-runtime/standalone/components/chat-ui/MessageList.tsx +60 -135
- package/cloud-runtime/standalone/components/chat-ui/ParticipantBar.tsx +507 -263
- package/cloud-runtime/standalone/components/chat-ui/ProjectPicker.tsx +17 -17
- package/cloud-runtime/standalone/components/chat-ui/ReactionChip.tsx +1 -1
- package/cloud-runtime/standalone/components/chat-ui/SearchResults.tsx +14 -14
- package/cloud-runtime/standalone/components/chat-ui/StatusIndicator.tsx +7 -7
- package/cloud-runtime/standalone/components/chat-ui/TaskDraftCard.tsx +14 -14
- package/cloud-runtime/standalone/components/chat-ui/TaskStatusCard.tsx +10 -10
- package/cloud-runtime/standalone/components/chat-ui/ThreadMentionPopover.tsx +8 -8
- package/cloud-runtime/standalone/components/chat-ui/ThreadView.tsx +36 -33
- package/cloud-runtime/standalone/components/chat-ui/TypingIndicator.tsx +7 -7
- package/cloud-runtime/standalone/components/errors/StartupGuardWrapper.tsx +96 -0
- package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +83 -111
- package/cloud-runtime/standalone/fix-primary.js +30 -0
- package/cloud-runtime/standalone/fix-theme.js +78 -0
- package/cloud-runtime/standalone/hooks/useKeyboardShortcuts.ts +131 -0
- package/cloud-runtime/standalone/lib/history-store.ts +6 -1
- package/cloud-runtime/standalone/lib/storage/thread-adapter.ts +3 -3
- package/cloud-runtime/standalone/state/windowState.ts +179 -0
- package/cloud-runtime/standalone/styles/workspaceSidebar.css +89 -94
- package/cloud-runtime/standalone/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__5ea3dff5._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__931817d6._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__d2c48923._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__e68a6e30._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__fad8b80a._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_181427d4._.js +0 -95
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_7dbc349d._.js +0 -95
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_8bbe2ac1._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_a17cabe8._.js +0 -95
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_cf5fdbfb._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_e05b04a5._.js +0 -4
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_f2970e5f._.js +0 -4
- package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_ece394eb.js +0 -3
- package/cloud-runtime/standalone/.next/static/chunks/047593c886feba72.css +0 -2
- package/cloud-runtime/standalone/.next/static/chunks/0c589ec8063c3a1f.js +0 -30
- package/cloud-runtime/standalone/.next/static/chunks/1826707bd2f73ca6.js +0 -8
- package/cloud-runtime/standalone/.next/static/chunks/2a3594d4cb2efe79.css +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/32f13ace6661115d.js +0 -93
- package/cloud-runtime/standalone/.next/static/chunks/3b0a3b913dd15028.js +0 -30
- package/cloud-runtime/standalone/.next/static/chunks/4ee6151684568990.js +0 -93
- package/cloud-runtime/standalone/.next/static/chunks/5aad4adabb65cd20.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/5f5ae2ea4fa2b8f0.js +0 -12
- package/cloud-runtime/standalone/.next/static/chunks/6bb1ecbc3b80922c.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/7657d70cc0c40c81.js +0 -6
- package/cloud-runtime/standalone/.next/static/chunks/78f6cef7d2129d30.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/7f2513325b592f25.js +0 -18
- package/cloud-runtime/standalone/.next/static/chunks/81704a1c525bf2ee.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/8b658ccf17b771b9.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/b39122b85655e5b0.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/b8ca4cb386211980.js +0 -5
- package/cloud-runtime/standalone/.next/static/chunks/e103488c85a7b445.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/e355ac901e70f43d.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/ebebe08434070698.js +0 -93
- /package/cloud-runtime/standalone/.next/static/{R2CPNTvy5domQF90j_DYV → HOfhTqGoYN6GjsW9CCf3t}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/.next/static/{R2CPNTvy5domQF90j_DYV → HOfhTqGoYN6GjsW9CCf3t}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/.next/static/{R2CPNTvy5domQF90j_DYV → HOfhTqGoYN6GjsW9CCf3t}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,11132,e=>{"use strict";var t=e.i(18050),r=e.i(71645);function a({initialPath:e,onSelect:a,onCancel:s}){let[n,o]=(0,r.useState)(e||""),[l,i]=(0,r.useState)(null),[c,d]=(0,r.useState)(!1),[u,p]=(0,r.useState)(null),m=(0,r.useRef)(null),f=(0,r.useCallback)(async e=>{d(!0),p(null);try{let t=e?`?path=${encodeURIComponent(e)}`:"",r=await fetch(`/api/filesystem/browse${t}`),a=await r.json();if(!r.ok)return void p(a.error||"Failed to browse");i(a),o(a.current),m.current?.scrollTo(0,0)}catch{p("Failed to connect")}finally{d(!1)}},[]);return(0,r.useEffect)(()=>{f(e||"")},[]),(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] overflow-hidden shadow-lg",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-[var(--card-border)] bg-[var(--muted)]/30",children:[(0,t.jsx)("input",{value:n,onChange:e=>o(e.target.value),onKeyDown:e=>{"Enter"===e.key&&f(n)},className:"input text-xs flex-1 py-1",placeholder:"Enter path..."}),(0,t.jsx)("button",{type:"button",onClick:()=>f(n),className:"text-[10px] font-bold uppercase tracking-wider text-[var(--primary)] hover:underline px-2 py-1 shrink-0",children:"Go"})]}),(0,t.jsxs)("div",{ref:m,className:"max-h-48 overflow-y-auto",children:[c&&(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)] text-center",children:"Loading..."}),u&&(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--destructive)] text-center",children:u}),!c&&l&&(0,t.jsxs)("div",{className:"py-1",children:[l.parent&&(0,t.jsxs)("button",{type:"button",onClick:()=>f(l.parent),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--muted)]/50 transition-colors flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"↑"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:".."})]}),0===l.dirs.length&&!l.parent&&(0,t.jsx)("div",{className:"px-3 py-3 text-xs text-[var(--muted-foreground)] text-center",children:"No subdirectories"}),l.dirs.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>f(e.path),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--muted)]/50 transition-colors flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"📁"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.path))]})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-t border-[var(--card-border)] bg-[var(--muted)]/30",children:[(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)] truncate max-w-[60%]",children:l?.current||n}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:s,className:"text-xs font-medium text-[var(--muted-foreground)] hover:underline px-2 py-1",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:()=>a(l?.current||n),className:"text-xs font-bold text-[var(--primary)] hover:underline px-2 py-1",children:"Select"})]})]})]})}let s={name:"",description:""},n={name:"",path:"",notes:""};function o(){let[e,t]=(0,r.useState)(s),[a,o]=(0,r.useState)([n]),[l,i]=(0,r.useState)(!1),[c,d]=(0,r.useState)(null),u=(0,r.useCallback)((e,t,r)=>{o(a=>a.map((a,s)=>s===e?{...a,[t]:r}:a))},[]),p=(0,r.useCallback)(()=>{o(e=>[...e,{...n}])},[]),m=(0,r.useCallback)(e=>{o(t=>t.filter((t,r)=>r!==e))},[]),f=(0,r.useCallback)(()=>{t(s),o([n]),d(null)},[]),h=(0,r.useCallback)(e=>{t({name:e.name||"",description:e.description||""}),e.repos&&e.repos.length>0?o(e.repos.map(e=>({id:e.id,name:e.name||"",path:e.path||"",git_url:e.git_url||"",notes:e.notes||""}))):o([n]),d(null)},[]);return{form:e,setForm:t,repos:a,handleRepoChange:u,addRepo:p,removeRepo:m,resetForm:f,hydrateFromProject:h,isSubmitting:l,setIsSubmitting:i,formError:c,setFormError:d}}function l(e,t){let r=t.filter(e=>e.name.trim()&&e.path.trim()).map(e=>({...e.id?{id:e.id}:{},name:e.name.trim(),path:e.path.trim(),...e.git_url?.trim()?{git_url:e.git_url.trim()}:{},notes:e.notes.trim()||void 0}));return{name:e.name.trim(),description:e.description.trim()||void 0,repos:r.length?r:void 0}}function i({form:e,repos:s,isEditingProject:n,isSubmitting:o,onFieldChange:l,onRepoChange:i,onAddRepo:c,onRemoveRepo:d}){let[u,p]=(0,r.useState)([]),[m,f]=(0,r.useState)(null),h=(0,r.useRef)(0);(0,r.useEffect)(()=>{n?p([]):p(s.map((e,t)=>t)),h.current=s.length},[n,s.length]),(0,r.useEffect)(()=>{if(!n){h.current=s.length;return}let e=h.current;p(t=>{let r=t.filter(e=>e<s.length);return s.length>e&&r.push(...Array.from({length:s.length-e},(t,r)=>e+r)),r}),h.current=s.length},[n,s.length]);let x=(0,r.useCallback)(e=>{p(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),g=(0,r.useCallback)(e=>!n||u.includes(e),[u,n]);return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("div",{className:"grid gap-4",children:(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Project Name"}),(0,t.jsx)("input",{value:e.name,onChange:e=>l("name",e.target.value),className:"input w-full",placeholder:"e.g. AGX Cloud",disabled:o})]})}),(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Description"}),(0,t.jsx)("textarea",{value:e.description,onChange:e=>l("description",e.target.value),className:"input w-full h-24 resize-none",placeholder:"What is this project about?",disabled:o})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--card-border)] pb-2",children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"Repositories"}),(0,t.jsx)("button",{type:"button",onClick:c,className:"text-xs font-semibold text-[var(--primary)] hover:underline",disabled:o,children:"+ Add Repository"})]}),(0,t.jsx)("div",{className:"space-y-4",children:s.map((e,r)=>(0,t.jsxs)("div",{className:"p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 space-y-3 relative group",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"text-xs font-bold text-[var(--foreground)] uppercase",children:["Repo #",r+1]}),n&&!g(r)?(0,t.jsxs)("div",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{children:e.name||"Unnamed repository"}),(0,t.jsx)("div",{className:"truncate",children:e.path||"No local path set"})]}):null]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[n&&(0,t.jsx)("button",{type:"button",onClick:()=>x(r),className:"text-xs font-semibold text-[var(--primary)] hover:underline",disabled:o,children:g(r)?"Done":"Edit"}),s.length>1&&(0,t.jsx)("button",{type:"button",onClick:()=>d(r),className:"text-xs font-semibold text-[var(--destructive)] hover:underline",disabled:o,children:"Remove"})]})]}),g(r)?(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsx)("input",{value:e.name,onChange:e=>i(r,"name",e.target.value),placeholder:"Name (e.g. Frontend)",className:"input text-sm",disabled:o}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{value:e.path,onChange:e=>i(r,"path",e.target.value),placeholder:"Local path (mandatory)",className:"input text-sm flex-1",disabled:o}),(0,t.jsx)("button",{type:"button",onClick:()=>f(m===r?null:r),className:"px-3 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--muted)]/30 hover:bg-[var(--muted)]/60 transition-colors text-xs font-semibold text-[var(--muted-foreground)] whitespace-nowrap",disabled:o,children:"Browse"})]}),m===r&&(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)(a,{initialPath:e.path||"",onSelect:e=>{i(r,"path",e),f(null)},onCancel:()=>f(null)})}),(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)("textarea",{value:e.notes,onChange:e=>i(r,"notes",e.target.value),placeholder:"Repo-specific rules and notes (placeholder for conventions, constraints, ownership, deploy notes...)",className:"input text-sm w-full min-h-24 resize-y",disabled:o})})]}):null]},r))})]})]})}function c({isOpen:e,onClose:a,onSubmit:s,editingProject:n,form:o,repos:l,isSubmitting:c,formError:d,onFieldChange:u,onRepoChange:p,onAddRepo:m,onRemoveRepo:f}){let[h,x]=(0,r.useState)([]);return((0,r.useEffect)(()=>{let e=!1;return async function(){if(!n)return x([]);try{let t=await fetch(`/api/projects/${n.id}/memory?producer=system`),r=t.ok?await t.json():{memory:[]};e||x(r.memory??[])}catch{e||x([])}}(),()=>{e=!0}},[n]),e)?(0,t.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:e=>e.target===e.currentTarget&&a(),children:(0,t.jsxs)("div",{className:"modal-content w-full max-w-4xl mx-2 sm:mx-auto bg-[var(--card-bg)] rounded-3xl border border-[var(--card-border)] shadow-2xl animate-scale-in flex flex-col max-h-[90vh]",children:[(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-b border-[var(--card-border)] flex items-center justify-between flex-shrink-0",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-bold",children:n?"Edit Project":"Create New Project"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:n?"Update your project settings and repositories.":"Define a new project and connect repositories."})]}),(0,t.jsx)("button",{onClick:a,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto p-4 sm:p-8",children:[n&&(0,t.jsx)("div",{className:"mb-6",children:(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 p-4",children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"System-Generated Project Knowledge"}),h.length>0?(0,t.jsx)("div",{className:"mt-3 space-y-2",children:h.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-3 py-2 text-sm text-[var(--foreground)]",children:[(0,t.jsx)("div",{children:e.content}),e.created_at?(0,t.jsx)("div",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:new Date(e.created_at).toLocaleString()}):null]},e.id))}):(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--muted-foreground)]",children:"No system-generated project knowledge candidates yet."})]})}),(0,t.jsx)(i,{form:o,repos:l,isEditingProject:!!n,isSubmitting:c,onFieldChange:u,onRepoChange:p,onAddRepo:m,onRemoveRepo:f}),d&&(0,t.jsx)("div",{className:"mt-6 p-4 rounded-xl bg-[var(--destructive-muted)] border border-[var(--destructive)]/20 text-sm text-[var(--destructive)]",children:d})]}),(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-t border-[var(--card-border)] flex items-center justify-end gap-3 flex-shrink-0",children:[(0,t.jsx)("button",{onClick:a,className:"px-6 py-2 rounded-xl border border-[var(--card-border)] hover:bg-[var(--muted)]/50 transition-colors text-sm font-medium",children:"Cancel"}),(0,t.jsx)("button",{onClick:s,disabled:c,className:"btn-primary px-8 py-2 shadow-lg shadow-[var(--primary)]/20 min-w-[120px]",children:c?(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"spinner w-3 h-3 border-2 border-white/20 border-t-white"}),"Saving..."]}):n?"Save Changes":"Create Project"})]})]})}):null}e.s(["createProjectPayload",()=>l,"default",()=>c,"useProjectFormState",()=>o],11132)},74049,e=>{"use strict";var t=e.i(71645);function r(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!1),[n,o]=(0,t.useState)(null),l=(0,t.useCallback)(async()=>{s(!0);try{let e=await fetch("/api/projects");if(!e.ok)throw Error("Failed to fetch projects");let t=await e.json();r(t.projects??[]),o(null)}catch(e){o(e instanceof Error?e:Error("Unknown error"))}finally{s(!1)}},[]);(0,t.useEffect)(()=>{l()},[l]);let i=(0,t.useCallback)(async e=>{let t=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to create project");let a=(await t.json()).project;return r(e=>[a,...e]),a},[]);return{projects:e,isLoading:a,error:n,refetch:l,createProject:i,updateProject:(0,t.useCallback)(async(e,t)=>{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error||"Failed to update project");let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?s:t)),s},[]),deleteProject:(0,t.useCallback)(async e=>{let t=await fetch(`/api/projects/${e}`,{method:"DELETE"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to delete project");r(t=>t.filter(t=>t.id!==e))},[])}}function a(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!0),n=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/projects");if(!e.ok)return;let{projects:t}=await e.json(),a=await Promise.all((t??[]).map(async e=>{let t=[],r=[];try{let[a,s]=await Promise.all([fetch(`/api/projects/${e.id}/agents`),fetch(`/api/projects/${e.id}/threads`)]);a.ok&&(t=(await a.json()).agents??[]),s.ok&&(r=((await s.json()).threads??[]).map(e=>e.thread_id))}catch{}return{...e,repos:e.repos??[],agents:t.map(t=>({project_id:e.id,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at})),thread_ids:r,workspace_ids:r}}));r(a)}catch{}finally{s(!1)}},[]);(0,t.useEffect)(()=>{n()},[n]);let o=(0,t.useCallback)(async(e,t)=>{try{let a="string"==typeof e?{name:e}:e,s=a.name.trim(),n=(a.slug||s.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),o=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,name:s,slug:n})});if(!o.ok)return null;let{project:l}=await o.json(),i=Array.isArray(t)?t:t?[t]:[];for(let e of i)await fetch(`/api/projects/${l.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:e})}).catch(()=>{});let c={...l,repos:l.repos??[],agents:[],thread_ids:i,workspace_ids:i};return r(e=>[...e,c].sort((e,t)=>e.name.localeCompare(t.name))),c}catch{return null}},[]),l=(0,t.useCallback)(async(e,t)=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})})).ok)return;r(r=>r.map(r=>r.id===e?{...r,name:t}:r).sort((e,t)=>e.name.localeCompare(t.name)))}catch{}},[]),i=(0,t.useCallback)(async e=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"DELETE"})).ok)return;r(t=>t.filter(t=>t.id!==e))}catch{}},[]),c=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error||"Failed to update project")}let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?{...t,...s,repos:s.repos??t.repos}:t)),s}catch{return null}},[]),d=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),u=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents?agentId=${t}`,{method:"DELETE"});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]);return{projects:e,isLoading:a,createProject:o,updateProject:c,renameProject:l,deleteProject:i,addAgent:d,removeAgent:u,reorderAgents:(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),moveAgent:(0,t.useCallback)(async(e,t,r)=>{try{await fetch(`/api/projects/${t}/agents?agentId=${e}`,{method:"DELETE"}),await fetch(`/api/projects/${r}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:e})}),await n()}catch{}},[n]),refresh:n}}e.s(["useProjects",()=>r,"useProjectsWithAgents",()=>a])},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return i},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return l}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});function n(e){let t={};for(let[r,a]of e.entries()){let e=t[r];void 0===e?t[r]=a:Array.isArray(e)?e.push(a):t[r]=[e,a]}return t}function o(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,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(r,o(e));else t.set(r,o(a));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,a]of r.entries())e.append(t,a)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return l},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(90809)._(e.r(98183)),o=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,a=e.protocol||"",s=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(n.urlQueryToSearchParams(i)));let d=e.search||i&&`?${i}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||o.test(a))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),l&&"#"!==l[0]&&(l="#"+l),d&&"?"!==d[0]&&(d="?"+d),s=s.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${a}${c}${s}${d}${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 s}});let a=e.r(71645);function s(e,t){let r=(0,a.useRef)(null),s=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=n(e,a)),t&&(s.current=n(t,a))},[e,t])}function n(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 a={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return y},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return h},ST:function(){return x},WEB_VITALS:function(){return n},execOnce:function(){return o},getDisplayName:function(){return u},getLocationOrigin:function(){return c},getURL:function(){return d},isAbsoluteUrl:function(){return i},isResSent:function(){return p},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return m},stringifyError:function(){return k}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),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 d(){let{href:e}=window.location,t=c();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function m(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function f(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(r&&p(r))return a;if(!a)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return a}let h="u">typeof performance,x=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j 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 k(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 n}});let a=e.r(18967),s=e.r(52817);function n(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.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 a}});let a=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},useLinkStatus:function(){return v}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(90809),o=e.r(18050),l=n._(e.r(71645)),i=e.r(61746),c=e.r(8372),d=e.r(18581),u=e.r(18967),p=e.r(5550);e.r(33525);let m=e.r(91949),f=e.r(73668),h=e.r(9396);function x(e){return"string"==typeof e?e:(0,i.formatUrl)(e)}function g(t){var r;let a,s,n,[i,g]=(0,l.useOptimistic)(m.IDLE_LINK_STATUS),v=(0,l.useRef)(null),{href:j,as:y,children:k,prefetch:w=null,passHref:N,replace:C,shallow:S,scroll:_,onClick:E,onMouseEnter:P,onTouchStart:T,legacyBehavior:O=!1,onNavigate:L,ref:A,unstable_dynamicOnHover:$,...R}=t;a=k,O&&("string"==typeof a||"number"==typeof a)&&(a=(0,o.jsx)("a",{children:a}));let I=l.default.useContext(c.AppRouterContext),M=!1!==w,F=!1!==w?null===(r=w)||"auto"===r?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:D,as:U}=l.default.useMemo(()=>{let e=x(j);return{href:e,as:y?x(y):e}},[j,y]);if(O){if(a?.$$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});s=l.default.Children.only(a)}let B=O?s&&"object"==typeof s&&s.ref:A,q=l.default.useCallback(e=>(null!==I&&(v.current=(0,m.mountLinkInstance)(e,D,I,F,M,g)),()=>{v.current&&((0,m.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,m.unmountPrefetchableInstance)(e)}),[M,D,I,F,g]),J={ref:(0,d.useMergedRef)(q,B),onClick(t){O||"function"!=typeof E||E(t),O&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!I||t.defaultPrevented||function(t,r,a,s,n,o,i){if("u">typeof window){let c,{nodeName:d}=t.currentTarget;if("A"===d.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,f.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(99781);l.default.startTransition(()=>{u(a||r,n?"replace":"push",o??!0,s.current)})}}(t,D,U,v,C,_,L)},onMouseEnter(e){O||"function"!=typeof P||P(e),O&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),I&&M&&(0,m.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){O||"function"!=typeof T||T(e),O&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),I&&M&&(0,m.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,u.isAbsoluteUrl)(U)?J.href=U:O&&!N&&("a"!==s.type||"href"in s.props)||(J.href=(0,p.addBasePath)(U)),n=O?l.default.cloneElement(s,J):(0,o.jsx)("a",{...R,...J,children:a}),(0,o.jsx)(b.Provider,{value:i,children:n})}e.r(84508);let b=(0,l.createContext)(m.IDLE_LINK_STATUS),v=()=>(0,l.useContext)(b);("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)},59015,e=>{"use strict";var t=e.i(18050),r=e.i(22016),a=e.i(71645);function s(){let[e,r]=(0,a.useState)(null),[s,n]=(0,a.useState)("loading");(0,a.useEffect)(()=>{let e=!0;async function t(){try{let t=await fetch("/api/health");if(!e)return;if(!t.ok)return void n("error");let a=await t.json();r(a),n(a.connected?"connected":"disconnected")}catch{e&&n("error")}}t();let a=setInterval(t,3e4);return()=>{e=!1,clearInterval(a)}},[]);let o={loading:"Checking database…",connected:`${e?.adapter??"db"} connected (${e?.latencyMs??"?"}ms)`,disconnected:`${e?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":o[s],children:[(0,t.jsx)("span",{className:`w-2 h-2 rounded-full ${{loading:"bg-yellow-400",connected:"bg-green-500",disconnected:"bg-red-500",error:"bg-red-500"}[s]}`}),(0,t.jsx)("span",{className:"hidden sm:inline",children:o[s]})]})}function n({children:e,fullWidth:a=!1,noFooter:n=!1}){return(0,t.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,t.jsx)("nav",{className:"flex-shrink-0 border-b border-[var(--card-border)] bg-[var(--card-bg)]/80 backdrop-blur-lg z-30",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsx)("div",{className:"flex items-center gap-8",children:(0,t.jsx)(r.default,{href:"/",className:"flex items-center gap-3 group",children:(0,t.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:scale-105",children:[(0,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(r.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,t.jsx)(r.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,t.jsx)(r.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,t.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${a?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:e}),!n&&(0,t.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,t.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,t.jsx)(s,{}),(0,t.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function o(e){return(0,t.jsx)(a.Suspense,{fallback:(0,t.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,t.jsx)(n,{...e})})}e.s(["default",()=>o],59015)},3176,e=>{"use strict";let t=new Set(["done","passed"]),r=new Set(["pending","running","awaiting_human","blocked"]);function a(e){return`node--${e}`}function s(e){return e.replace(/_/gu," ")}function n(e,t){return"root"===t.type?t.title?.trim()||"Task Objective":"work"===t.type||"function"===t.type?t.title?.trim()||e:"gate"===t.type?t.gateType.replace(/_gate$/u,"").replace(/_/gu," ").replace(/\b\w/gu,e=>e.toUpperCase()):"fork"===t.type?"Fork":"join"===t.type?`Join (${t.joinStrategy})`:"Conditional"}function o(e){for(let[t,r]of Object.entries(e.nodes))if("root"===r.type)return{id:t,node:r};return null}function l(e){let a,s=o(e);return{mode:e.mode,graphVersion:e.graphVersion,nodeCount:Object.keys(e.nodes).length,progress:0===(a=Object.values(e.nodes).filter(e=>"skipped"!==e.status)).length?100:Math.round(a.filter(e=>t.has(e.status)).length/a.length*100),currentBlocker:function(e){let t=function(e){let t=Object.entries(e.nodes),r=t.filter(([,e])=>"gate"===e.type&&e.required),a=r.find(([,e])=>"failed"===e.status);if(a)return a[0];let s=r.find(([,e])=>"awaiting_human"===e.status);if(s)return s[0];let n=r.find(([,e])=>"pending"===e.status||"running"===e.status);if(n)return n[0];let o=t.find(([,e])=>"work"===e.type&&"blocked"===e.status);return o?.[0]??null}(e);if(!t)return null;let r=e.nodes[t];return r?{nodeId:t,label:n(t,r),status:r.status,required:"gate"===r.type&&r.required}:null}(e),derivedStatus:function(e){let t=Object.keys(e.nodes).length;if(0===t)return"INTAKE";if(1===t){let t=Object.values(e.nodes)[0];if("root"===t.type&&!t.graphCreated)return"INTAKE"}return Object.values(e.nodes).some(e=>r.has(e.status))?"PROGRESS":"DONE"}(e),hasRootNode:null!==s,rootNodeId:s?.id??null}}e.s(["buildGraphSummary",()=>l,"findRootNode",()=>o,"formatNodeStatusLabel",()=>s,"getNodeLabel",()=>n,"toNodeStatusClass",()=>a],3176)},99695,93237,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(74080);let s=[{value:"queued",label:"Queued",color:"var(--status-queued)",icon:"○"},{value:"in_progress",label:"In Progress",color:"var(--status-in-progress)",icon:"◑"},{value:"blocked",label:"Blocked",color:"var(--status-blocked)",icon:"⊘"},{value:"completed",label:"Done",color:"var(--status-completed)",icon:"●"},{value:"failed",label:"Failed",color:"var(--status-failed)",icon:"✕"}];function n({status:e,onStatusChange:n}){let[o,l]=(0,r.useState)(!1),[i,c]=(0,r.useState)(null),d=(0,r.useRef)(null),u=(0,r.useRef)(null),p=(0,r.useCallback)(()=>{if(!d.current)return;let e=d.current.getBoundingClientRect();c({top:e.bottom+4,left:e.left})},[]);(0,r.useEffect)(()=>{if(!o)return;p();let e=e=>{d.current&&!d.current.contains(e.target)&&u.current&&!u.current.contains(e.target)&&l(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[o,p]),(0,r.useEffect)(()=>{l(!1)},[e]);let m=s.find(t=>t.value===e)||s[0],f="completed"===e,h="in_progress"===e;return(0,t.jsxs)("div",{className:"relative flex-shrink-0",ref:d,children:[(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),n&&l(!o)},className:`w-4 h-4 rounded-full border-[1.5px] flex items-center justify-center transition-all
|
|
2
|
+
hover:scale-110 focus-visible:outline-2 focus-visible:outline-[var(--ring)]
|
|
3
|
+
${n?"cursor-pointer":"cursor-default"}
|
|
4
|
+
${h?"animate-pulse":""}
|
|
5
|
+
`,style:{borderColor:m.color,backgroundColor:f?m.color:"transparent"},title:m.label,children:[f&&(0,t.jsx)("svg",{className:"w-2.5 h-2.5 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===e&&(0,t.jsx)("svg",{className:"w-2 h-2",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:m.color,strokeWidth:"1.5",strokeLinecap:"round"})}),h&&(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:m.color}})]}),o&&i&&(0,a.createPortal)((0,t.jsx)("div",{ref:u,className:"fixed z-[9999] py-1 rounded-lg border shadow-lg min-w-[140px]",style:{top:i.top,left:i.left,backgroundColor:"var(--card-bg)",borderColor:"var(--card-border)"},children:s.map(r=>{let a=r.value===e;return(0,t.jsxs)("button",{type:"button",className:`w-full flex items-center gap-2 px-3 py-1.5 text-xs text-left transition-colors
|
|
6
|
+
hover:bg-[var(--item-hover-bg)]
|
|
7
|
+
${a?"font-semibold bg-[var(--item-hover-bg)]":""}
|
|
8
|
+
`,onClick:e=>{e.stopPropagation(),n?.(r.value),l(!1)},children:[(0,t.jsxs)("span",{className:"w-3 h-3 rounded-full border-[1.5px] flex items-center justify-center",style:{borderColor:r.color,backgroundColor:"completed"===r.value?r.color:"transparent"},children:["completed"===r.value&&(0,t.jsx)("svg",{className:"w-2 h-2 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===r.value&&(0,t.jsx)("svg",{className:"w-1.5 h-1.5",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:r.color,strokeWidth:"1.5",strokeLinecap:"round"})}),"in_progress"===r.value&&(0,t.jsx)("div",{className:"w-1 h-1 rounded-full",style:{backgroundColor:r.color}})]}),(0,t.jsx)("span",{style:{color:a?r.color:void 0},children:r.label}),a&&(0,t.jsx)("svg",{className:"w-3 h-3 ml-auto",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2 6L5 9L10 3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]},r.value)})}),document.body)]})}var o=e.i(3176);let l=new Map,i=new Map;async function c(e){let t=l.get(e);if(void 0!==t)return t;let r=i.get(e);if(r)return r;let a=(async()=>{let t=await fetch(`/api/tasks/${e}/graph`,{method:"GET",cache:"no-store"});if(404===t.status)return l.set(e,null),null;let r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||`Failed to fetch graph summary (${t.status})`);let a=r?.graph??null,s=a?(0,o.buildGraphSummary)(a):null;return l.set(e,s),s})();i.set(e,a);try{return await a}finally{i.delete(e)}}function d(e){let t=(0,r.useMemo)(()=>e?l.get(e)??null:null,[e]),[a,s]=(0,r.useState)(t),[n,o]=(0,r.useState)(!!e&&null===t),[i,d]=(0,r.useState)(null),u=(0,r.useCallback)(async()=>{if(!e){s(null),d(null),o(!1);return}o(!0),d(null);try{let t=await c(e);s(t)}catch(e){d(e instanceof Error?e.message:"Failed to fetch graph summary"),s(null)}finally{o(!1)}},[e]);return(0,r.useEffect)(()=>{u()},[u]),{summary:a,isLoading:n,error:i,refresh:u}}function u(e){return l.get(e)??null}async function p(e){await Promise.allSettled(e.map(e=>c(e)))}e.s(["getCachedGraphSummary",()=>u,"prefetchGraphSummaries",()=>p,"useTaskGraphSummary",()=>d],93237);let m={queued:{className:"badge-status-queued",label:"Queued",dotColor:"bg-[var(--status-queued)]"},in_progress:{className:"badge-status-in_progress",label:"In Progress",dotColor:"bg-[var(--status-in-progress)]"},blocked:{className:"badge-status-blocked",label:"Blocked",dotColor:"bg-[var(--status-blocked)]"},completed:{className:"badge-status-completed",label:"Completed",dotColor:"bg-[var(--status-completed)]"},failed:{className:"badge-status-failed",label:"Failed",dotColor:"bg-[var(--status-failed)]"}},f={INTAKE:{icon:"📥",label:"Intake"},PROGRESS:{icon:"🔄",label:"Progress"},DONE:{icon:"✅",label:"Done"}};function h({task:e,onClick:r,compact:a=!1,onStatusChange:s,onApprovalModeChange:o,allTasks:l,relationship:i="none"}){m[e.status||"queued"],e.stage&&f[e.stage];let{summary:c,isLoading:u}=d("draft"!==e.id?e.id:null),p=e.depends_on?.length?e.depends_on.map(e=>{let t=l?.find(t=>t.id===e);return{id:e,title:t?.title||e.slice(0,8),done:t?.status==="completed"}}):null;return p&&p.every(e=>e.done),(0,t.jsxs)("div",{onClick:r,role:"button",tabIndex:0,onKeyDown:e=>"Enter"===e.key&&r?.(),className:`group relative flex flex-col gap-1.5 sm:gap-2 p-2 sm:p-3 rounded-lg
|
|
9
|
+
bg-[var(--card-bg)] border shadow-sm
|
|
10
|
+
transition-all duration-200 cursor-grab active:cursor-grabbing
|
|
11
|
+
focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2
|
|
12
|
+
${"active"===i?"border-primary ring-2 ring-primary/20 z-40":"blocking"===i?"border-[var(--status-blocked)] bg-rose-50/30 dark:bg-rose-950/20 z-20":"dependent"===i?"border-[var(--status-in-progress)] bg-blue-50/30 dark:bg-blue-950/20 z-20":"dimmed"===i?"opacity-40 grayscale scale-[0.98]":"border-[var(--card-border)] hover:shadow-md hover:border-[var(--primary-muted)] hover:ring-1 hover:ring-[var(--primary-muted)]"}
|
|
13
|
+
${"failed"===e.status&&"none"===i?"border-red-200 bg-red-50/30 dark:bg-red-950/20":""}
|
|
14
|
+
${"completed"===e.status&&"none"===i?"opacity-75 bg-[var(--secondary)]":""}
|
|
15
|
+
`,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsx)("h3",{className:`text-sm font-medium text-[var(--foreground)] leading-snug line-clamp-2 sm:line-clamp-3
|
|
16
|
+
${"completed"===e.status?"text-[var(--muted-foreground)] line-through":""}
|
|
17
|
+
`,children:e.title||"Untitled Task"}),(0,t.jsx)("div",{className:"shrink-0 mt-0.5",children:(0,t.jsx)(n,{status:e.status||"queued",onStatusChange:s})})]}),(0,t.jsx)("div",{className:"flex items-center justify-between min-h-[16px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-[var(--muted-foreground)] flex-wrap",children:[void 0!==e.priority&&e.priority>0&&(0,t.jsxs)("span",{className:`px-1.5 py-0.5 rounded font-semibold bg-[var(--secondary)] ${0===e.priority?"text-[var(--primary)]":""}`,children:["P",e.priority]}),o&&("auto"===e.approval_mode?(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400 cursor-pointer select-none",title:"Auto-approve enabled. Click to switch to manual.",onClick:e=>{e.stopPropagation(),o("manual")},children:"AUTO"}):(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-gray-100 text-gray-400 dark:bg-gray-800 dark:text-gray-500 cursor-pointer select-none opacity-0 group-hover:opacity-100 transition-opacity",title:"Manual approval. Click to enable auto-approve.",onClick:e=>{e.stopPropagation(),o("auto")},children:"AUTO"})),"draft"!==e.id&&(0,t.jsx)("span",{className:"opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[9px]",children:e.id.slice(0,5)})]})})]})}e.s(["default",()=>h],99695)},19580,e=>{"use strict";var t=e.i(47167),r=e.i(71645);let a={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:t.default.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:t.default.env.AGX_BOARD_USER_NAME||"Local Board User"};function s(e={}){let n="1"===t.default.env.NEXT_PUBLIC_AGX_BOARD_DISABLE_AUTH,o=e.project,l=e.status,i=e.orphan,c=e.realtime,[d,u]=(0,r.useState)([]),[p,m]=(0,r.useState)(!0),[f,h]=(0,r.useState)(null),[x,g]=(0,r.useState)(null),[b,v]=(0,r.useState)(null),j=(0,r.useCallback)(e=>{if(!e)return[];if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)));if("string"==typeof e){let t=e.trim();if(!t)return[];try{let e=JSON.parse(t);if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)))}catch{}return Array.from(new Set(t.split(",").map(e=>e.trim()).filter(Boolean)))}return[]},[]),y=(0,r.useCallback)(e=>{let t=String(e||"").match(/^---\n([\s\S]*?)\n---\n?/);if(!t)return[];let r=t[1].split("\n").find(e=>e.trim().toLowerCase().startsWith("depends_on:"));return r?j(r.slice(r.indexOf(":")+1).trim()):[]},[j]),k=(0,r.useCallback)((e,t)=>{let r=j(e.depends_on);if(r.length>0)return{...e,depends_on:r};let a="string"==typeof e?.content?y(e.content):[];if(a.length>0)return{...e,depends_on:a};let s=j(t?.depends_on);return s.length>0?{...e,depends_on:s}:e},[y,j]),w=(0,r.useCallback)(async()=>{try{let e=new URLSearchParams;o&&e.set("project",o),l&&e.set("status",l),i&&e.set("orphan","1");let t=await fetch(`/api/tasks?${e.toString()}`);if(!t.ok)throw Error("Failed to fetch tasks");let r=await t.json(),a=Array.isArray(r.tasks)?r.tasks.map(e=>k(e)):[];u(a),h(null)}catch(e){h(e instanceof Error?e:Error("Unknown error"))}finally{m(!1)}},[o,l,i]);(0,r.useEffect)(()=>{w()},[w]),(0,r.useEffect)(()=>{if(!n||!c)return;let e=setInterval(w,3e3);return()=>clearInterval(e)},[n,c,w]),(0,r.useEffect)(()=>{if(n||!c)return;let e={auth:{getSession:async()=>({data:{session:{access_token:"local-token",refresh_token:"local-refresh",expires_in:3600,user:{id:a.id,email:a.email,user_metadata:{name:a.name,full_name:a.name}}}},error:null}),signInWithOAuth:async()=>({error:Error("Auth disabled in AGX Board local mode")}),signOut:async()=>({error:null}),onAuthStateChange:()=>({data:{subscription:{unsubscribe(){}}}})},channel:()=>({on(){return this},subscribe(){return this}}),removeChannel(){}},t=e.channel("tasks-changes").on("postgres_changes",{event:"*",schema:"public",table:"tasks"},e=>{"INSERT"===e.eventType?u(t=>{let r=k(e.new);return t.some(e=>e.id===r.id)?t:[r,...t]}):"UPDATE"===e.eventType?u(t=>t.map(t=>t.id===e.new.id?k(e.new,t):t)):"DELETE"===e.eventType&&u(t=>t.filter(t=>t.id!==e.old.id))}).subscribe();return()=>{e.removeChannel(t)}},[c,n]),(0,r.useEffect)(()=>{if(n||!c)return;let e=setInterval(w,3e3);return()=>clearInterval(e)},[c,n,w]);let N=(0,r.useCallback)(async(e,t)=>{let r=await fetch("/api/tasks",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e,swarm_models:t})});if(!r.ok)throw Error((await r.json()).error||"Failed to create task");let{task:a}=await r.json(),s=k(a);return u(e=>e.some(e=>e.id===s.id)?e:[s,...e]),s},[e.realtime,k]),C=(0,r.useCallback)(async(e,t)=>{let r=await fetch(`/api/tasks/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){let e=null;throw"function"==typeof r.json&&(e=await r.json().catch(()=>null)),Error(e?.error||e?.details||`Failed to update task (${r.status} ${r.statusText||"Error"})`)}let{task:a}=await r.json();return u(t=>t.map(t=>t.id===e?k({...t,...a},t):t)),k(a)},[e.realtime,k]),S=(0,r.useCallback)(async e=>{if(!(await fetch(`/api/tasks/${e}`,{method:"DELETE"})).ok)throw Error("Failed to delete task");u(t=>t.filter(t=>t.id!==e))},[e.realtime]),_=(0,r.useCallback)(async e=>{let t=await fetch("/api/queue/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to complete task stage");let{task:r}=await t.json();return u(t=>t.map(t=>t.id===e.taskId?k({...t,...r},t):t)),k(r)},[e.realtime,k]),E=(0,r.useCallback)(async e=>{g(e.taskId),v(null);try{let t=await fetch(`/api/orchestrator/tasks/${e.taskId}/cancel`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e.reason?{reason:e.reason}:{})});if(!t.ok){let e=await t.json().catch(()=>({})),r=e?.error||"Failed to cancel workflow";throw Error(r)}return t.json()}catch(t){let e=t instanceof Error?t:Error("Failed to cancel workflow");throw v(e),e}finally{g(null)}},[]),P=(0,r.useCallback)(async e=>{let t=await fetch(`/api/tasks/${e}`),r=await t.json().catch(()=>null);if(!t.ok)throw Error(r?.error||"Failed to fetch task details");return k(r?.task)},[k]),T=(0,r.useCallback)(async e=>{let t=await fetch("/api/tasks/assign-orphans",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project_id:e})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||"Failed to assign orphan tasks");return await w(),{updatedCount:Number(r?.updatedCount||0),taskIds:Array.isArray(r?.taskIds)?r.taskIds:[]}},[w]);return{tasks:d,isLoading:p,error:f,cancellingTaskId:x,isCancelling:!!x,cancelError:b,refetch:w,createTask:N,updateTask:C,deleteTask:S,completeTaskStage:_,cancelWorkflow:E,fetchTask:P,assignOrphanTasksToProject:T}}e.s(["useTasks",()=>s],19580)},39012,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(22016),s=e.i(18566),n=e.i(59015);function o({project:e,onEdit:r,onDelete:a,onClick:s,onManageTasks:n}){let o=e.repos&&e.repos.length>0;return(0,t.jsxs)("div",{onClick:()=>s?.(e),className:`p-5 rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] shadow-sm space-y-4 transition-all
|
|
18
|
+
${s?"cursor-pointer hover:border-[var(--primary)] hover:shadow-md active:scale-[0.99]":""}`,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold",children:e.name}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] tracking-wide uppercase",children:e.slug})]}),(0,t.jsxs)("div",{className:"flex flex-col items-end gap-2",children:[(0,t.jsxs)("span",{className:"text-[11px] font-semibold text-[var(--muted-foreground)]",children:["Updated ",new Date(e.updated_at).toLocaleDateString()]}),(r||a||n)&&(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[n&&(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),n(e)},className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] bg-[var(--background)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-all",children:"Tasks"}),r&&(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),r(e)},className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-all bg-[var(--background)]",children:"Edit"}),a&&(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),a(e)},className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] text-[var(--destructive)] hover:border-[var(--destructive)] transition-all bg-[var(--background)]",children:"Delete"})]})]})]}),e.description&&(0,t.jsx)("p",{className:"text-sm text-[var(--foreground)] line-clamp-2",children:e.description}),e.ci_cd_info&&(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] text-[12px] uppercase tracking-wide",children:"CI / CD"}),(0,t.jsx)("p",{className:"text-[14px] text-[var(--accent)] font-medium truncate",children:e.ci_cd_info})]}),e.metadata&&Object.keys(e.metadata).length>0&&(0,t.jsxs)("div",{className:"p-3 rounded-lg bg-[var(--muted)]/20 border border-dashed border-[var(--card-border)] space-y-1",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Metadata"}),(0,t.jsx)("div",{className:"space-y-1",children:Object.entries(e.metadata??{}).filter(([e])=>"undefined"!==e&&""!==e).map(([e,r])=>(0,t.jsxs)("div",{className:"text-[12px] text-[var(--muted-foreground)] flex justify-between",children:[(0,t.jsx)("span",{className:"font-semibold",children:e}),(0,t.jsx)("span",{className:"truncate text-right",children:"string"==typeof r?r:JSON.stringify(r)})]},e))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[12px] uppercase tracking-wider text-[var(--muted-foreground)]",children:"Repositories"}),(0,t.jsx)("span",{className:"text-[12px] text-[var(--muted-foreground)]",children:o?`${e.repos.length} connected`:"Unlinked"})]}),o?(0,t.jsxs)("div",{className:"mt-3 space-y-2",children:[e.repos.slice(0,2).map(e=>(0,t.jsxs)("div",{className:"p-2 rounded-lg border border-[var(--card-border)] bg-[var(--background)] text-[11px]",children:[(0,t.jsx)("div",{className:"font-semibold truncate",children:e.name}),e.path&&(0,t.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] truncate",children:e.path})]},e.id)),e.repos.length>2&&(0,t.jsxs)("p",{className:"text-[10px] text-center text-[var(--muted-foreground)]",children:["+ ",e.repos.length-2," more"]})]}):(0,t.jsx)("p",{className:"mt-3 text-[12px] text-[var(--muted-foreground)]",children:"No repositories added yet."})]})]})}var l=e.i(11132),i=e.i(99695);let c={in_progress:{title:"In Progress",icon:"🔄",color:"var(--status-in-progress)",description:"Currently being worked on by the daemon"},blocked:{title:"Blocked",icon:"🚧",color:"var(--status-blocked)",description:"Waiting for input or resolution"},queued:{title:"Queued",icon:"📋",color:"var(--status-queued)",description:"Ready to be picked up"},completed:{title:"Completed",icon:"✅",color:"var(--status-completed)",description:"Successfully finished"}};function d({tasks:e,onSelectTask:r,onStatusChange:a}){if(0===e.length)return(0,t.jsxs)("div",{className:"text-center py-20 animate-fade-in",children:[(0,t.jsx)("div",{className:"inline-flex items-center justify-center w-16 h-16 rounded-2xl bg-[var(--card-bg)] border border-[var(--card-border)] mb-4",children:(0,t.jsx)("span",{className:"text-3xl",children:"📋"})}),(0,t.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"No tasks yet"}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] text-sm max-w-md mx-auto",children:"Create your first task to get started. Tasks will appear here organized by status."})]});let s=e.filter(e=>"in_progress"===e.status),n=e.filter(e=>"queued"===e.status),o=e.filter(e=>"blocked"===e.status),l=e.filter(e=>"completed"===e.status||"failed"===e.status),d=(e,s)=>{if(0===s.length)return null;let n=c[e];return(0,t.jsxs)("section",{className:"mb-8 animate-fade-in-up",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 mb-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 rounded-lg",style:{backgroundColor:`color-mix(in srgb, ${n.color} 10%, transparent)`},children:[(0,t.jsx)("span",{className:"text-lg",children:n.icon}),(0,t.jsx)("h3",{className:"text-sm font-semibold",style:{color:n.color},children:n.title}),(0,t.jsx)("span",{className:"px-2 py-0.5 rounded-full text-xs font-medium",style:{backgroundColor:`color-mix(in srgb, ${n.color} 15%, transparent)`,color:n.color},children:s.length})]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] hidden sm:block",children:n.description})]}),(0,t.jsx)("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:s.map((e,s)=>(0,t.jsx)("div",{className:"animate-fade-in-up",style:{animationDelay:`${50*s}ms`},children:(0,t.jsx)(i.default,{task:e,onClick:()=>r?.(e),onStatusChange:a?t=>a(e.id,t):void 0})},e.id))})]})};return(0,t.jsxs)("div",{children:[d("in_progress",s),d("blocked",o),d("queued",n),d("completed",l)]})}var u=e.i(19580),p=e.i(74049);function m(){let e=(0,s.useRouter)(),i=(0,s.useSearchParams)(),{projects:c,isLoading:d,error:u,refetch:m,createProject:h,updateProject:x,deleteProject:g}=(0,p.useProjects)(),b=(0,l.useProjectFormState)(),[v,j]=(0,r.useState)(null),[y,k]=(0,r.useState)(!1),[w,N]=(0,r.useState)(null),{form:C,repos:S,handleRepoChange:_,addRepo:E,removeRepo:P,resetForm:T,hydrateFromProject:O,isSubmitting:L,setIsSubmitting:A,formError:$,setFormError:R,setForm:I}=b,M=()=>{j(null),T(),k(!0)},F=e=>{j(e),O(e),k(!0)};(0,r.useEffect)(()=>{let e=i.get("edit");if(!e||0===c.length||y)return;let t=c.find(t=>t.id===e);t&&F(t)},[i,c,y]);let D=(0,r.useCallback)(t=>{t.slug&&e.push(`/projects/${t.slug}`)},[e]),U=(0,r.useCallback)(e=>{N(e)},[]),B=(0,r.useCallback)(()=>{N(null)},[]),q=()=>{T(),k(!1),j(null),i.get("edit")&&e.replace("/projects")},J=async()=>{if(!C.name.trim())return void R("Project name is required");let e=S.find(e=>e.name.trim()&&!e.path.trim());if(e)return void R(`Local path is required for repository "${e.name}"`);R(null),A(!0);let t=(0,l.createProjectPayload)(C,S);try{v?await x(v.id,t):await h(t),q()}catch(e){R(e instanceof Error?e.message:"Failed to save project")}finally{A(!1)}},z=async e=>{if(window.confirm(`Delete project "${e.name}"? This cannot be undone.`))try{await g(e.id)}catch(e){alert(e instanceof Error?e.message:"Failed to delete project")}};return(0,t.jsx)(n.default,{children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto w-full flex flex-col min-h-full",children:[(0,t.jsxs)("header",{className:"flex flex-col sm:flex-row sm:items-center justify-between gap-4 py-8",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:"Projects"}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] mt-1",children:"Manage your projects and their repository contexts."})]}),(0,t.jsxs)("div",{className:"flex gap-3",children:[(0,t.jsx)("button",{onClick:m,className:"px-4 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] hover:border-[var(--primary)] transition-all text-sm font-medium",children:"Refresh"}),(0,t.jsx)("button",{onClick:M,className:"btn-primary px-6 py-2 shadow-lg shadow-[var(--primary)]/20",children:"+ New Project"})]})]}),d?(0,t.jsx)("div",{className:"flex-1 flex items-center justify-center py-20",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] animate-pulse",children:"Loading projects..."})]})}):0===c.length?(0,t.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center py-20 animate-fade-in",children:[(0,t.jsx)("div",{className:"w-24 h-24 rounded-3xl bg-[var(--card-bg)] border border-[var(--card-border)] flex items-center justify-center text-4xl mb-6 shadow-xl",children:"📂"}),(0,t.jsx)("h2",{className:"text-2xl font-bold mb-2",children:"You have no projects"}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] text-center max-w-sm mb-8 leading-relaxed",children:"Create your first project to start organizing your tasks and connecting your repositories."}),(0,t.jsx)("button",{onClick:M,className:"btn-primary px-8 py-3 text-lg shadow-xl shadow-[var(--primary)]/20",children:"Create a Project"})]}):(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 pb-20",children:[(0,t.jsxs)(a.default,{href:"/projects/orphans",className:"p-5 rounded-2xl border border-dashed border-[var(--card-border)] bg-[var(--card-bg)] shadow-sm space-y-4 transition-all hover:border-[var(--primary)] hover:shadow-md",children:[(0,t.jsx)("div",{className:"flex items-start justify-between gap-4",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold",children:"Orphan Tasks"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] tracking-wide uppercase",children:"Unassigned"})]})}),(0,t.jsx)("p",{className:"text-sm text-[var(--foreground)]",children:"Review tasks with empty project assignment and move them into the correct project."})]}),c.map(e=>(0,t.jsx)(o,{project:e,onEdit:F,onDelete:z,onManageTasks:U,onClick:D},e.id))]}),(0,t.jsx)(l.default,{isOpen:y,onClose:q,onSubmit:J,editingProject:v,form:C,repos:S,isSubmitting:L,formError:$,onFieldChange:(e,t)=>I(r=>({...r,[e]:t})),onRepoChange:_,onAddRepo:E,onRemoveRepo:P}),w&&(0,t.jsx)(f,{project:w,onClose:B})]})})}function f({project:e,onClose:r}){let{tasks:a,isLoading:s}=(0,u.useTasks)({project:e.slug});return(0,t.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:e=>e.target===e.currentTarget&&r(),children:(0,t.jsxs)("div",{className:"modal-content w-full max-w-5xl mx-2 sm:mx-auto bg-[var(--card-bg)] rounded-3xl border border-[var(--card-border)] shadow-2xl animate-scale-in flex flex-col max-h-[90vh]",children:[(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-b border-[var(--card-border)] flex items-center justify-between flex-shrink-0",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xl font-bold",children:["Tasks for ",e.name]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:"Viewing all tasks associated with this project."})]}),(0,t.jsx)("button",{onClick:r,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto p-8",children:s?(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-20",children:[(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full mb-4"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading project tasks..."})]}):(0,t.jsx)(d,{tasks:a})}),(0,t.jsx)("div",{className:"px-8 py-6 border-t border-[var(--card-border)] flex justify-end flex-shrink-0",children:(0,t.jsx)("button",{onClick:r,className:"px-6 py-2 rounded-xl border border-[var(--card-border)] hover:bg-[var(--muted)]/50 transition-colors text-sm font-medium",children:"Close"})})]})})}e.s(["default",()=>m],39012)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,71689,e=>{"use strict";let t=(0,e.i(75254).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",()=>t],71689)},14683,e=>{"use strict";let t=(0,e.i(75254).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",()=>t],14683)},73884,e=>{"use strict";let t=(0,e.i(75254).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],73884)},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return l},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return o}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});function a(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function i(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,i(e));else t.set(r,i(n));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return o},formatWithValidation:function(){return u},urlObjectKeys:function(){return l}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(90809)._(e.r(98183)),i=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,n=e.protocol||"",s=e.pathname||"",o=e.hash||"",l=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),l&&"object"==typeof l&&(l=String(a.urlQueryToSearchParams(l)));let c=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||i.test(n))&&!1!==u?(u="//"+(u||""),s&&"/"!==s[0]&&(s="/"+s)):u||(u=""),o&&"#"!==o[0]&&(o="#"+o),c&&"?"!==c[0]&&(c="?"+c),s=s.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${s}${c}${o}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let n=e.r(71645);function s(e,t){let r=(0,n.useRef)(null),s=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=a(e,n)),t&&(s.current=a(t,n))},[e,t])}function a(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 n={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return b},NormalizeError:function(){return v},PageNotFoundError:function(){return y},SP:function(){return h},ST:function(){return x},WEB_VITALS:function(){return a},execOnce:function(){return i},getDisplayName:function(){return d},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return l},isResSent:function(){return f},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return m},stringifyError:function(){return N}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function i(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>o.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function m(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 n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let h="u">typeof performance,x=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class v extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class b extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(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 a}});let n=e.r(18967),s=e.r(52817);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.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 n}});let n=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return y}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(90809),i=e.r(18050),o=a._(e.r(71645)),l=e.r(61746),u=e.r(8372),c=e.r(18581),d=e.r(18967),f=e.r(5550);e.r(33525);let m=e.r(91949),p=e.r(73668),h=e.r(9396);function x(e){return"string"==typeof e?e:(0,l.formatUrl)(e)}function g(t){var r;let n,s,a,[l,g]=(0,o.useOptimistic)(m.IDLE_LINK_STATUS),y=(0,o.useRef)(null),{href:b,as:j,children:N,prefetch:w=null,passHref:k,replace:P,shallow:C,scroll:E,onClick:O,onMouseEnter:S,onTouchStart:_,legacyBehavior:T=!1,onNavigate:L,ref:M,unstable_dynamicOnHover:A,...R}=t;n=N,T&&("string"==typeof n||"number"==typeof n)&&(n=(0,i.jsx)("a",{children:n}));let $=o.default.useContext(u.AppRouterContext),I=!1!==w,U=!1!==w?null===(r=w)||"auto"===r?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:F,as:D}=o.default.useMemo(()=>{let e=x(b);return{href:e,as:j?x(j):e}},[b,j]);if(T){if(n?.$$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});s=o.default.Children.only(n)}let z=T?s&&"object"==typeof s&&s.ref:M,B=o.default.useCallback(e=>(null!==$&&(y.current=(0,m.mountLinkInstance)(e,F,$,U,I,g)),()=>{y.current&&((0,m.unmountLinkForCurrentNavigation)(y.current),y.current=null),(0,m.unmountPrefetchableInstance)(e)}),[I,F,$,U,g]),W={ref:(0,c.useMergedRef)(B,z),onClick(t){T||"function"!=typeof O||O(t),T&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!$||t.defaultPrevented||function(t,r,n,s,a,i,l){if("u">typeof window){let u,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(r)){a&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);o.default.startTransition(()=>{d(n||r,a?"replace":"push",i??!0,s.current)})}}(t,F,D,y,P,E,L)},onMouseEnter(e){T||"function"!=typeof S||S(e),T&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),$&&I&&(0,m.onNavigationIntent)(e.currentTarget,!0===A)},onTouchStart:function(e){T||"function"!=typeof _||_(e),T&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),$&&I&&(0,m.onNavigationIntent)(e.currentTarget,!0===A)}};return(0,d.isAbsoluteUrl)(D)?W.href=D:T&&!k&&("a"!==s.type||"href"in s.props)||(W.href=(0,f.addBasePath)(D)),a=T?o.default.cloneElement(s,W):(0,i.jsx)("a",{...R,...W,children:n}),(0,i.jsx)(v.Provider,{value:l,children:a})}e.r(84508);let v=(0,o.createContext)(m.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(v);("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)},75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let a=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:a=2,absoluteStrokeWidth:i,className:o="",children:l,iconNode:u,...c},d)=>(0,t.createElement)("svg",{ref:d,...s,width:n,height:n,stroke:e,strokeWidth:i?24*Number(a)/Number(n):a,className:r("lucide",o),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...u.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(l)?l:[l]])),i=(e,s)=>{let i=(0,t.forwardRef)(({className:i,...o},l)=>(0,t.createElement)(a,{ref:l,iconNode:s,className:r(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,i),...o}));return i.displayName=n(e),i};e.s(["default",()=>i],75254)},16715,e=>{"use strict";let t=(0,e.i(75254).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],16715)},78894,e=>{"use strict";let t=(0,e.i(75254).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",()=>t],78894)},75092,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(22016),s=e.i(16715),a=e.i(71689),i=e.i(14683),o=e.i(78894),l=e.i(73884);let u=e=>{switch(e){case"ok":return(0,t.jsx)(i.Circle,{className:"w-3 h-3 fill-emerald-400 text-emerald-400"});case"error":return(0,t.jsx)(l.XCircle,{className:"w-3 h-3 text-red-400"});case"unavailable":return(0,t.jsx)(o.AlertTriangle,{className:"w-3 h-3 text-[var(--muted-foreground)]"})}},c=e=>{switch(e){case"ok":return(0,t.jsx)("span",{className:"text-emerald-400 text-xs font-medium",children:"OK"});case"error":return(0,t.jsx)("span",{className:"text-red-400 text-xs font-medium",children:"Error"});case"unavailable":return(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-xs font-medium",children:"Unavailable"})}};function d(){let[e,o]=(0,r.useState)(null),[l,d]=(0,r.useState)(!0),[f,m]=(0,r.useState)(null),p=(0,r.useCallback)(async()=>{d(!0),m(null);try{let e=await fetch("/api/status");if(!e.ok)throw Error(`HTTP ${e.status}`);o(await e.json())}catch(e){m(e instanceof Error?e.message:"Failed to fetch status")}finally{d(!1)}},[]);(0,r.useEffect)(()=>{p();let e=setInterval(p,3e4);return()=>clearInterval(e)},[p]);let h=e?.services.filter(e=>!e.name.startsWith("cli:"))??[],x=e?.services.filter(e=>e.name.startsWith("cli:"))??[];return(0,t.jsx)("div",{className:"min-h-screen bg-[var(--background)] text-[var(--foreground)] p-6",children:(0,t.jsxs)("div",{className:"max-w-2xl mx-auto",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-8",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(n.default,{href:"/",className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:(0,t.jsx)(a.ArrowLeft,{className:"w-4 h-4"})}),(0,t.jsx)("h1",{className:"text-lg font-semibold",children:"System Status"}),e&&(0,t.jsx)("span",{className:`text-xs px-2 py-0.5 rounded-full ${"ok"===e.status?"bg-emerald-400/10 text-emerald-400":"bg-amber-400/10 text-amber-400"}`,children:"ok"===e.status?"All systems operational":"Degraded"})]}),(0,t.jsx)("button",{onClick:p,disabled:l,className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors disabled:opacity-50",children:(0,t.jsx)(s.RefreshCw,{className:`w-4 h-4 ${l?"animate-spin":""}`})})]}),f&&(0,t.jsx)("div",{className:"mb-6 p-3 rounded-lg bg-red-400/10 border border-red-400/20 text-red-400 text-sm",children:f}),(0,t.jsxs)("section",{className:"mb-8",children:[(0,t.jsx)("h2",{className:"text-xs font-medium text-[var(--muted-foreground)] uppercase tracking-wider mb-3",children:"Services"}),(0,t.jsxs)("div",{className:"rounded-lg border border-[var(--border)] divide-y divide-[var(--border)]",children:[h.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[u(e.status),(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[void 0!==e.latencyMs&&(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[e.latencyMs,"ms"]}),c(e.status)]})]},e.name)),0===h.length&&!l&&(0,t.jsx)("div",{className:"px-4 py-3 text-sm text-[var(--muted-foreground)]",children:"No services found"})]})]}),(0,t.jsxs)("section",{className:"mb-8",children:[(0,t.jsx)("h2",{className:"text-xs font-medium text-[var(--muted-foreground)] uppercase tracking-wider mb-3",children:"CLI Providers"}),(0,t.jsx)("div",{className:"rounded-lg border border-[var(--border)] divide-y divide-[var(--border)]",children:x.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[u(e.status),(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name.replace("cli:","")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:e.detail}),c(e.status)]})]},e.name))})]}),e?.limits&&(0,t.jsxs)("section",{className:"mb-8",children:[(0,t.jsx)("h2",{className:"text-xs font-medium text-[var(--muted-foreground)] uppercase tracking-wider mb-3",children:"Operational Limits"}),(0,t.jsxs)("div",{className:"rounded-lg border border-[var(--border)] divide-y divide-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(i.Circle,{className:"w-3 h-3 fill-[var(--muted-foreground)] text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium",children:"Max Workers"})]}),(0,t.jsx)("span",{className:"text-xs text-[var(--app-shell-soft-text)] font-mono",children:e.limits.maxWorkers})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(i.Circle,{className:"w-3 h-3 fill-[var(--muted-foreground)] text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium",children:"Write QPS Ceiling"})]}),(0,t.jsx)("span",{className:"text-xs text-[var(--app-shell-soft-text)] font-mono",children:e.limits.writeQpsCeiling})]}),(0,t.jsx)("div",{className:"px-4 py-2",children:(0,t.jsxs)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:["Single-coordinator / single-writer SQLite architecture."," ",(0,t.jsx)("a",{href:"https://github.com/anthropics/agx-cloud/blob/main/docs/LIMITS.md",target:"_blank",rel:"noopener",className:"underline hover:text-[var(--app-shell-soft-text)]",children:"See LIMITS.md"})]})})]})]}),e&&(0,t.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)] text-center",children:["Last checked: ",new Date(e.timestamp).toLocaleTimeString()]})]})})}e.s(["default",()=>d])}]);
|
|
@@ -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 c(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 a=[],s=!1,l=-1;function f(){s&&n&&(s=!1,n.length?a=n.concat(a):l=-1,a.length&&d())}function d(){if(!s){var e=c(f);s=!0;for(var t=a.length;t;){for(n=a,a=[];++l<t;)n&&n[l].run();l=-1,t=a.length}n=null,s=!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];a.push(new p(e,t)),1!==a.length||s||c(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},18050,(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"),c=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),l=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"),_=Symbol.for("react.activity"),E=Symbol.for("react.view_transition"),h=Symbol.iterator,v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,b={};function m(e,t,r){this.props=e,this.context=t,this.refs=b,this.updater=r||v}function R(){}function O(e,t,r){this.props=e,this.context=t,this.refs=b,this.updater=r||v}m.prototype.isReactComponent={},m.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")},m.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},R.prototype=m.prototype;var T=O.prototype=new R;T.constructor=O,g(T,m.prototype),T.isPureReactComponent=!0;var S=Array.isArray;function j(){}var P={H:null,A:null,T:null,S:null},A=Object.prototype.hasOwnProperty;function x(e,t,r){var n=r.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==n?n:null,props:r}}function N(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var w=/\/+/g;function M(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 C(e,t,r){if(null==e)return e;var n=[],i=0;return!function e(t,r,n,i,c){var a,s,l,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,c)}}if(d)return c=c(t),d=""===i?"."+M(t,0):i,S(c)?(n="",null!=d&&(n=d.replace(w,"$&/")+"/"),e(c,r,n,"",function(e){return e})):null!=c&&(N(c)&&(a=c,s=n+(null==c.key||t&&t.key===c.key?"":(""+c.key).replace(w,"$&/")+"/")+d,c=x(a.type,s,a.props)),r.push(c)),1;d=0;var p=""===i?".":i+":";if(S(t))for(var _=0;_<t.length;_++)f=p+M(i=t[_],_),d+=e(i,r,n,f,c);else if("function"==typeof(_=null===(l=t)||"object"!=typeof l?null:"function"==typeof(l=h&&l[h]||l["@@iterator"])?l:null))for(t=_.call(t),_=0;!(i=t.next()).done;)f=p+M(i=i.value,_++),d+=e(i,r,n,f,c);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(j,j):(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,c);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 D(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 H="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 U(e){var t=P.T,r={};r.types=null!==t?t.types:null,P.T=r;try{var n=e(),o=P.S;null!==o&&o(r,n),"object"==typeof n&&null!==n&&"function"==typeof n.then&&n.then(j,H)}catch(e){H(e)}finally{null!==t&&null!==r.types&&(t.types=r.types),P.T=t}}function L(e){var t=P.T;if(null!==t){var r=t.types;null===r?t.types=[e]:-1===r.indexOf(e)&&r.push(e)}else U(L.bind(null,e))}r.Activity=_,r.Children={map:C,forEach:function(e,t,r){C(e,function(){t.apply(this,arguments)},r)},count:function(e){var t=0;return C(e,function(){t++}),t},toArray:function(e){return C(e,function(e){return e})||[]},only:function(e){if(!N(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},r.Component=m,r.Fragment=i,r.Profiler=a,r.PureComponent=O,r.StrictMode=c,r.Suspense=d,r.ViewTransition=E,r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=P,r.__COMPILER_RUNTIME={__proto__:null,c:function(e){return P.H.useMemoCache(e)}},r.addTransitionType=L,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=g({},e.props),o=e.key;if(null!=t)for(u in void 0!==t.key&&(o=""+t.key),t)A.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),c=0;c<u;c++)i[c]=arguments[c+2];n.children=i}return x(e.type,o,n)},r.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider=e,e.Consumer={$$typeof:s,_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)A.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 c=Array(i),a=0;a<i;a++)c[a]=arguments[a+2];o.children=c}if(e&&e.defaultProps)for(n in i=e.defaultProps)void 0===o[n]&&(o[n]=i[n]);return x(e,u,o)},r.createRef=function(){return{current:null}},r.forwardRef=function(e){return{$$typeof:f,render:e}},r.isValidElement=N,r.lazy=function(e){return{$$typeof:y,_payload:{_status:-1,_result:e},_init:D}},r.memo=function(e,t){return{$$typeof:p,type:e,compare:void 0===t?null:t}},r.startTransition=U,r.unstable_useCacheRefresh=function(){return P.H.useCacheRefresh()},r.use=function(e){return P.H.use(e)},r.useActionState=function(e,t,r){return P.H.useActionState(e,t,r)},r.useCallback=function(e,t){return P.H.useCallback(e,t)},r.useContext=function(e){return P.H.useContext(e)},r.useDebugValue=function(){},r.useDeferredValue=function(e,t){return P.H.useDeferredValue(e,t)},r.useEffect=function(e,t){return P.H.useEffect(e,t)},r.useEffectEvent=function(e){return P.H.useEffectEvent(e)},r.useId=function(){return P.H.useId()},r.useImperativeHandle=function(e,t,r){return P.H.useImperativeHandle(e,t,r)},r.useInsertionEffect=function(e,t){return P.H.useInsertionEffect(e,t)},r.useLayoutEffect=function(e,t){return P.H.useLayoutEffect(e,t)},r.useMemo=function(e,t){return P.H.useMemo(e,t)},r.useOptimistic=function(e,t){return P.H.useOptimistic(e,t)},r.useReducer=function(e,t,r){return P.H.useReducer(e,t,r)},r.useRef=function(e){return P.H.useRef(e)},r.useState=function(e){return P.H.useState(e)},r.useSyncExternalStore=function(e,t,r){return P.H.useSyncExternalStore(e,t,r)},r.useTransition=function(){return P.H.useTransition()},r.version="19.3.0-canary-f93b9fd4-20251217"},71645,(e,t,r)=>{"use strict";t.exports=e.r(50740)},55682,(e,t,r)=>{"use strict";r._=function(e){return e&&e.__esModule?e:{default:e}}},18800,(e,t,r)=>{"use strict";var n=e.r(71645);function o(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var r=2;r<arguments.length;r++)t+="&args[]="+encodeURIComponent(arguments[r])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function u(){}var i={d:{f:u,r:function(){throw Error(o(522))},D:u,C:u,L:u,m:u,X:u,S:u,M:u},p:0,findDOMNode:null},c=Symbol.for("react.portal"),a=Symbol.for("react.optimistic_key"),s=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){return"font"===e?"":"string"==typeof t?"use-credentials"===t?t:"":void 0}r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,r.createPortal=function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!t||1!==t.nodeType&&9!==t.nodeType&&11!==t.nodeType)throw Error(o(299));return function(e,t,r){var n=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:c,key:null==n?null:n===a?a:""+n,children:e,containerInfo:t,implementation:r}}(e,t,null,r)},r.flushSync=function(e){var t=s.T,r=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=r,i.d.f()}},r.preconnect=function(e,t){"string"==typeof e&&(t=t?"string"==typeof(t=t.crossOrigin)?"use-credentials"===t?t:"":void 0:null,i.d.C(e,t))},r.prefetchDNS=function(e){"string"==typeof e&&i.d.D(e)},r.preinit=function(e,t){if("string"==typeof e&&t&&"string"==typeof t.as){var r=t.as,n=l(r,t.crossOrigin),o="string"==typeof t.integrity?t.integrity:void 0,u="string"==typeof t.fetchPriority?t.fetchPriority:void 0;"style"===r?i.d.S(e,"string"==typeof t.precedence?t.precedence:void 0,{crossOrigin:n,integrity:o,fetchPriority:u}):"script"===r&&i.d.X(e,{crossOrigin:n,integrity:o,fetchPriority:u,nonce:"string"==typeof t.nonce?t.nonce:void 0})}},r.preinitModule=function(e,t){if("string"==typeof e)if("object"==typeof t&&null!==t){if(null==t.as||"script"===t.as){var r=l(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:r,integrity:"string"==typeof t.integrity?t.integrity:void 0,nonce:"string"==typeof t.nonce?t.nonce:void 0})}}else null==t&&i.d.M(e)},r.preload=function(e,t){if("string"==typeof e&&"object"==typeof t&&null!==t&&"string"==typeof t.as){var r=t.as,n=l(r,t.crossOrigin);i.d.L(e,r,{crossOrigin:n,integrity:"string"==typeof t.integrity?t.integrity:void 0,nonce:"string"==typeof t.nonce?t.nonce:void 0,type:"string"==typeof t.type?t.type:void 0,fetchPriority:"string"==typeof t.fetchPriority?t.fetchPriority:void 0,referrerPolicy:"string"==typeof t.referrerPolicy?t.referrerPolicy:void 0,imageSrcSet:"string"==typeof t.imageSrcSet?t.imageSrcSet:void 0,imageSizes:"string"==typeof t.imageSizes?t.imageSizes:void 0,media:"string"==typeof t.media?t.media:void 0})}},r.preloadModule=function(e,t){if("string"==typeof e)if(t){var r=l(t.as,t.crossOrigin);i.d.m(e,{as:"string"==typeof t.as&&"script"!==t.as?t.as:void 0,crossOrigin:r,integrity:"string"==typeof t.integrity?t.integrity:void 0})}else i.d.m(e)},r.requestFormReset=function(e){i.d.r(e)},r.unstable_batchedUpdates=function(e,t){return e(t)},r.useFormState=function(e,t,r){return s.H.useFormState(e,t,r)},r.useFormStatus=function(){return s.H.useHostTransitionStatus()},r.version="19.3.0-canary-f93b9fd4-20251217"},74080,(e,t,r)=>{"use strict";!function e(){if("u">typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),t.exports=e.r(18800)},90809,(e,t,r)=>{"use strict";function n(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(n=function(e){return e?r:t})(e)}r._=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=n(t);if(r&&r.has(e))return r.get(e);var o={__proto__:null},u=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var c=u?Object.getOwnPropertyDescriptor(e,i):null;c&&(c.get||c.set)?Object.defineProperty(o,i,c):o[i]=e[i]}return o.default=e,r&&r.set(e,o),o}},76963,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RedirectStatusCode",{enumerable:!0,get:function(){return o}});var n,o=((n={})[n.SeeOther=303]="SeeOther",n[n.TemporaryRedirect=307]="TemporaryRedirect",n[n.PermanentRedirect=308]="PermanentRedirect",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)},68391,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,o={REDIRECT_ERROR_CODE:function(){return c},RedirectType:function(){return a},isRedirectError:function(){return s}};for(var u in o)Object.defineProperty(r,u,{enumerable:!0,get:o[u]});let i=e.r(76963),c="NEXT_REDIRECT";var a=((n={}).push="push",n.replace="replace",n);function s(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let t=e.digest.split(";"),[r,n]=t,o=t.slice(2,-2).join(";"),u=Number(t.at(-2));return r===c&&("replace"===n||"push"===n)&&"string"==typeof o&&!isNaN(u)&&u in i.RedirectStatusCode}("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)},90317,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={bindSnapshot:function(){return s},createAsyncLocalStorage:function(){return a},createSnapshot:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class i{disable(){throw u}getStore(){}run(){throw u}exit(){throw u}enterWith(){throw u}static bind(e){return e}}let c="u">typeof globalThis&&globalThis.AsyncLocalStorage;function a(){return c?new c:new i}function s(e){return c?c.bind(e):i.bind(e)}function l(){return c?c.snapshot():function(e,...t){return e(...t)}}},21768,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ACTION_HEADER:function(){return i},FLIGHT_HEADERS:function(){return y},NEXT_ACTION_NOT_FOUND_HEADER:function(){return m},NEXT_ACTION_REVALIDATED_HEADER:function(){return T},NEXT_DID_POSTPONE_HEADER:function(){return h},NEXT_HMR_REFRESH_HASH_COOKIE:function(){return f},NEXT_HMR_REFRESH_HEADER:function(){return l},NEXT_HTML_REQUEST_ID_HEADER:function(){return O},NEXT_IS_PRERENDER_HEADER:function(){return b},NEXT_REQUEST_ID_HEADER:function(){return R},NEXT_REWRITTEN_PATH_HEADER:function(){return v},NEXT_REWRITTEN_QUERY_HEADER:function(){return g},NEXT_ROUTER_PREFETCH_HEADER:function(){return a},NEXT_ROUTER_SEGMENT_PREFETCH_HEADER:function(){return s},NEXT_ROUTER_STALE_TIME_HEADER:function(){return E},NEXT_ROUTER_STATE_TREE_HEADER:function(){return c},NEXT_RSC_UNION_QUERY:function(){return _},NEXT_URL:function(){return d},RSC_CONTENT_TYPE_HEADER:function(){return p},RSC_HEADER:function(){return u}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u="rsc",i="next-action",c="next-router-state-tree",a="next-router-prefetch",s="next-router-segment-prefetch",l="next-hmr-refresh",f="__next_hmr_refresh_hash__",d="next-url",p="text/x-component",y=[u,c,a,l,s],_="_rsc",E="x-nextjs-stale-time",h="x-nextjs-postponed",v="x-nextjs-rewritten-path",g="x-nextjs-rewritten-query",b="x-nextjs-prerender",m="x-nextjs-action-not-found",R="x-nextjs-request-id",O="x-nextjs-html-request-id",T="x-action-revalidated";("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)},13258,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DEFAULT_SEGMENT_KEY:function(){return f},NOT_FOUND_SEGMENT_KEY:function(){return d},PAGE_SEGMENT_KEY:function(){return l},addSearchParamsIfPageSegment:function(){return a},computeSelectedLayoutSegment:function(){return s},getSegmentValue:function(){return u},getSelectedLayoutSegmentPath:function(){return function e(t,r,n=!0,o=[]){let i;if(n)i=t[1][r];else{let e=t[1];i=e.children??Object.values(e)[0]}if(!i)return o;let c=u(i[0]);return!c||c.startsWith(l)?o:(o.push(c),e(i,r,!1,o))}},isGroupSegment:function(){return i},isParallelRouteSegment:function(){return c}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});function u(e){return Array.isArray(e)?e[1]:e}function i(e){return"("===e[0]&&e.endsWith(")")}function c(e){return e.startsWith("@")&&"@children"!==e}function a(e,t){if(e.includes(l)){let e=JSON.stringify(t);return"{}"!==e?l+"?"+e:l}return e}function s(e,t){if(!e||0===e.length)return null;let r="children"===t?e[0]:e[e.length-1];return r===f?null:r}let l="__PAGE__",f="__DEFAULT__",d="/_not-found"},92838,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={UnrecognizedActionError:function(){return u},unstable_isUnrecognizedActionError:function(){return i}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});class u extends Error{constructor(...e){super(...e),this.name="UnrecognizedActionError"}}function i(e){return!!(e&&"object"==typeof e&&e instanceof u)}("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)},34457,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"actionAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},62266,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"actionAsyncStorage",{enumerable:!0,get:function(){return n.actionAsyncStorageInstance}});let n=e.r(34457)},24063,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getRedirectError:function(){return a},getRedirectStatusCodeFromError:function(){return p},getRedirectTypeFromError:function(){return d},getURLFromRedirectError:function(){return f},permanentRedirect:function(){return l},redirect:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(76963),i=e.r(68391),c="u"<typeof window?e.r(62266).actionAsyncStorage:void 0;function a(e,t,r=u.RedirectStatusCode.TemporaryRedirect){let n=Object.defineProperty(Error(i.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n.digest=`${i.REDIRECT_ERROR_CODE};${t};${e};${r};`,n}function s(e,t){throw a(e,t??=c?.getStore()?.isAction?i.RedirectType.push:i.RedirectType.replace,u.RedirectStatusCode.TemporaryRedirect)}function l(e,t=i.RedirectType.replace){throw a(e,t,u.RedirectStatusCode.PermanentRedirect)}function f(e){return(0,i.isRedirectError)(e)?e.digest.split(";").slice(2,-2).join(";"):null}function d(e){if(!(0,i.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return e.digest.split(";",2)[1]}function p(e){if(!(0,i.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(e.digest.split(";").at(-2))}("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)},8372,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={AppRouterContext:function(){return i},GlobalLayoutRouterContext:function(){return a},LayoutRouterContext:function(){return c},MissingSlotContext:function(){return l},TemplateContext:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(55682)._(e.r(71645)),i=u.default.createContext(null),c=u.default.createContext(null),a=u.default.createContext(null),s=u.default.createContext(null),l=u.default.createContext(new Set)},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 c}};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 c(){}("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(18050),c=u._(e.r(71645)),a=e.r(90373),s=e.r(65713);e.r(78377);let l=e.r(12354),f=e.r(82604),d="u">typeof window&&(0,f.isBot)(window.navigator.userAgent);class p extends c.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,s.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)(l.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,a.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(18050),c=u._(e.r(71645)),a=e.r(76562),s=e.r(24063),l=e.r(68391);function f({redirect:e,reset:t,redirectType:r}){let n=(0,a.useRouter)();return(0,c.useEffect)(()=>{c.default.startTransition(()=>{r===l.RedirectType.push?n.push(e,{}):n.replace(e,{}),t()})},[e,r,t,n]),null}class d extends c.default.Component{constructor(e){super(e),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(e){if((0,l.isRedirectError)(e)){let t=(0,s.getURLFromRedirectError)(e),r=(0,s.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,a.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 c},OutletBoundary:function(){return s},RootLayoutBoundary:function(){return l},ViewportBoundary:function(){return a}};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}},c=i[u.METADATA_BOUNDARY_NAME.slice(0)],a=i[u.VIEWPORT_BOUNDARY_NAME.slice(0)],s=i[u.OUTLET_BOUNDARY_NAME.slice(0)],l=i[u.ROOT_LAYOUT_BOUNDARY_NAME.slice(0)]}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,71689,e=>{"use strict";let t=(0,e.i(75254).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",()=>t],71689)},18566,(e,t,r)=>{t.exports=e.r(76562)},74049,e=>{"use strict";var t=e.i(71645);function r(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!1),[n,l]=(0,t.useState)(null),o=(0,t.useCallback)(async()=>{s(!0);try{let e=await fetch("/api/projects");if(!e.ok)throw Error("Failed to fetch projects");let t=await e.json();r(t.projects??[]),l(null)}catch(e){l(e instanceof Error?e:Error("Unknown error"))}finally{s(!1)}},[]);(0,t.useEffect)(()=>{o()},[o]);let i=(0,t.useCallback)(async e=>{let t=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to create project");let a=(await t.json()).project;return r(e=>[a,...e]),a},[]);return{projects:e,isLoading:a,error:n,refetch:o,createProject:i,updateProject:(0,t.useCallback)(async(e,t)=>{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error||"Failed to update project");let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?s:t)),s},[]),deleteProject:(0,t.useCallback)(async e=>{let t=await fetch(`/api/projects/${e}`,{method:"DELETE"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to delete project");r(t=>t.filter(t=>t.id!==e))},[])}}function a(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!0),n=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/projects");if(!e.ok)return;let{projects:t}=await e.json(),a=await Promise.all((t??[]).map(async e=>{let t=[],r=[];try{let[a,s]=await Promise.all([fetch(`/api/projects/${e.id}/agents`),fetch(`/api/projects/${e.id}/threads`)]);a.ok&&(t=(await a.json()).agents??[]),s.ok&&(r=((await s.json()).threads??[]).map(e=>e.thread_id))}catch{}return{...e,repos:e.repos??[],agents:t.map(t=>({project_id:e.id,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at})),thread_ids:r,workspace_ids:r}}));r(a)}catch{}finally{s(!1)}},[]);(0,t.useEffect)(()=>{n()},[n]);let l=(0,t.useCallback)(async(e,t)=>{try{let a="string"==typeof e?{name:e}:e,s=a.name.trim(),n=(a.slug||s.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),l=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,name:s,slug:n})});if(!l.ok)return null;let{project:o}=await l.json(),i=Array.isArray(t)?t:t?[t]:[];for(let e of i)await fetch(`/api/projects/${o.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:e})}).catch(()=>{});let d={...o,repos:o.repos??[],agents:[],thread_ids:i,workspace_ids:i};return r(e=>[...e,d].sort((e,t)=>e.name.localeCompare(t.name))),d}catch{return null}},[]),o=(0,t.useCallback)(async(e,t)=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})})).ok)return;r(r=>r.map(r=>r.id===e?{...r,name:t}:r).sort((e,t)=>e.name.localeCompare(t.name)))}catch{}},[]),i=(0,t.useCallback)(async e=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"DELETE"})).ok)return;r(t=>t.filter(t=>t.id!==e))}catch{}},[]),d=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error||"Failed to update project")}let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?{...t,...s,repos:s.repos??t.repos}:t)),s}catch{return null}},[]),c=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),u=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents?agentId=${t}`,{method:"DELETE"});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]);return{projects:e,isLoading:a,createProject:l,updateProject:d,renameProject:o,deleteProject:i,addAgent:c,removeAgent:u,reorderAgents:(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),moveAgent:(0,t.useCallback)(async(e,t,r)=>{try{await fetch(`/api/projects/${t}/agents?agentId=${e}`,{method:"DELETE"}),await fetch(`/api/projects/${r}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:e})}),await n()}catch{}},[n]),refresh:n}}e.s(["useProjects",()=>r,"useProjectsWithAgents",()=>a])},39312,e=>{"use strict";let t=(0,e.i(75254).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",()=>t],39312)},3116,e=>{"use strict";let t=(0,e.i(75254).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],3116)},16715,e=>{"use strict";let t=(0,e.i(75254).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],16715)},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return i},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return o}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});function n(e){let t={};for(let[r,a]of e.entries()){let e=t[r];void 0===e?t[r]=a:Array.isArray(e)?e.push(a):t[r]=[e,a]}return t}function l(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(r,l(e));else t.set(r,l(a));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,a]of r.entries())e.append(t,a)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return o},formatWithValidation:function(){return d},urlObjectKeys:function(){return i}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(90809)._(e.r(98183)),l=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,a=e.protocol||"",s=e.pathname||"",o=e.hash||"",i=e.query||"",d=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?d=t+e.host:r&&(d=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(d+=":"+e.port)),i&&"object"==typeof i&&(i=String(n.urlQueryToSearchParams(i)));let c=e.search||i&&`?${i}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||l.test(a))&&!1!==d?(d="//"+(d||""),s&&"/"!==s[0]&&(s="/"+s)):d||(d=""),o&&"#"!==o[0]&&(o="#"+o),c&&"?"!==c[0]&&(c="?"+c),s=s.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${a}${d}${s}${c}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let a=e.r(71645);function s(e,t){let r=(0,a.useRef)(null),s=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=n(e,a)),t&&(s.current=n(t,a))},[e,t])}function n(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 a={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return y},MissingStaticPage:function(){return j},NormalizeError:function(){return v},PageNotFoundError:function(){return b},SP:function(){return f},ST:function(){return h},WEB_VITALS:function(){return n},execOnce:function(){return l},getDisplayName:function(){return u},getLocationOrigin:function(){return d},getURL:function(){return c},isAbsoluteUrl:function(){return i},isResSent:function(){return m},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return x},stringifyError:function(){return N}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function l(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>o.test(e);function d(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=d();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function m(e){return e.finished||e.headersSent}function x(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 a=await e.getInitialProps(t);if(r&&m(r))return a;if(!a)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return a}let f="u">typeof performance,h=f&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class v extends Error{}class b extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j 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 N(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 n}});let a=e.r(18967),s=e.r(52817);function n(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.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 a}});let a=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},useLinkStatus:function(){return b}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(90809),l=e.r(18050),o=n._(e.r(71645)),i=e.r(61746),d=e.r(8372),c=e.r(18581),u=e.r(18967),m=e.r(5550);e.r(33525);let x=e.r(91949),p=e.r(73668),f=e.r(9396);function h(e){return"string"==typeof e?e:(0,i.formatUrl)(e)}function g(t){var r;let a,s,n,[i,g]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),b=(0,o.useRef)(null),{href:j,as:y,children:N,prefetch:k=null,passHref:w,replace:S,shallow:C,scroll:_,onClick:M,onMouseEnter:E,onTouchStart:P,legacyBehavior:O=!1,onNavigate:T,ref:A,unstable_dynamicOnHover:$,...I}=t;a=N,O&&("string"==typeof a||"number"==typeof a)&&(a=(0,l.jsx)("a",{children:a}));let L=o.default.useContext(d.AppRouterContext),R=!1!==k,U=!1!==k?null===(r=k)||"auto"===r?f.FetchStrategy.PPR:f.FetchStrategy.Full:f.FetchStrategy.PPR,{href:D,as:z}=o.default.useMemo(()=>{let e=h(j);return{href:e,as:y?h(y):e}},[j,y]);if(O){if(a?.$$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});s=o.default.Children.only(a)}let F=O?s&&"object"==typeof s&&s.ref:A,V=o.default.useCallback(e=>(null!==L&&(b.current=(0,x.mountLinkInstance)(e,D,L,U,R,g)),()=>{b.current&&((0,x.unmountLinkForCurrentNavigation)(b.current),b.current=null),(0,x.unmountPrefetchableInstance)(e)}),[R,D,L,U,g]),B={ref:(0,c.useMergedRef)(V,F),onClick(t){O||"function"!=typeof M||M(t),O&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!L||t.defaultPrevented||function(t,r,a,s,n,l,i){if("u">typeof window){let d,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((d=t.currentTarget.getAttribute("target"))&&"_self"!==d||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(99781);o.default.startTransition(()=>{u(a||r,n?"replace":"push",l??!0,s.current)})}}(t,D,z,b,S,_,T)},onMouseEnter(e){O||"function"!=typeof E||E(e),O&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),L&&R&&(0,x.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){O||"function"!=typeof P||P(e),O&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),L&&R&&(0,x.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,u.isAbsoluteUrl)(z)?B.href=z:O&&!w&&("a"!==s.type||"href"in s.props)||(B.href=(0,m.addBasePath)(z)),n=O?o.default.cloneElement(s,B):(0,l.jsx)("a",{...I,...B,children:a}),(0,l.jsx)(v.Provider,{value:i,children:n})}e.r(84508);let v=(0,o.createContext)(x.IDLE_LINK_STATUS),b=()=>(0,o.useContext)(v);("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)},75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let n=(0,t.forwardRef)(({color:e="currentColor",size:a=24,strokeWidth:n=2,absoluteStrokeWidth:l,className:o="",children:i,iconNode:d,...c},u)=>(0,t.createElement)("svg",{ref:u,...s,width:a,height:a,stroke:e,strokeWidth:l?24*Number(n)/Number(a):n,className:r("lucide",o),...!i&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...d.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(i)?i:[i]])),l=(e,s)=>{let l=(0,t.forwardRef)(({className:l,...o},i)=>(0,t.createElement)(n,{ref:i,iconNode:s,className:r(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,l),...o}));return l.displayName=a(e),l};e.s(["default",()=>l],75254)},7233,e=>{"use strict";let t=(0,e.i(75254).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",()=>t],7233)},10980,e=>{"use strict";let t=(0,e.i(75254).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);e.s(["BookOpen",()=>t],10980)},55838,(e,t,r)=>{"use strict";var a=e.r(71645),s="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=a.useState,l=a.useEffect,o=a.useLayoutEffect,i=a.useDebugValue;function d(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!s(e,r)}catch(e){return!0}}var c="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),a=n({inst:{value:r,getSnapshot:t}}),s=a[0].inst,c=a[1];return o(function(){s.value=r,s.getSnapshot=t,d(s)&&c({inst:s})},[e,r,t]),l(function(){return d(s)&&c({inst:s}),e(function(){d(s)&&c({inst:s})})},[e]),i(r),r};r.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:c},2239,(e,t,r)=>{"use strict";t.exports=e.r(55838)},52822,(e,t,r)=>{"use strict";var a=e.r(71645),s=e.r(2239),n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},l=s.useSyncExternalStore,o=a.useRef,i=a.useEffect,d=a.useMemo,c=a.useDebugValue;r.useSyncExternalStoreWithSelector=function(e,t,r,a,s){var u=o(null);if(null===u.current){var m={hasValue:!1,value:null};u.current=m}else m=u.current;var x=l(e,(u=d(function(){function e(e){if(!i){if(i=!0,l=e,e=a(e),void 0!==s&&m.hasValue){var t=m.value;if(s(t,e))return o=t}return o=e}if(t=o,n(l,e))return t;var r=a(e);return void 0!==s&&s(t,r)?(l=e,t):(l=e,o=r)}var l,o,i=!1,d=void 0===r?null:r;return[function(){return e(t())},null===d?void 0:function(){return e(d())}]},[t,r,a,s]))[0],u[1]);return i(function(){m.hasValue=!0,m.value=x},[x]),c(x),x}},30224,(e,t,r)=>{"use strict";t.exports=e.r(52822)},88081,e=>{"use strict";let t=(0,e.i(75254).default)("hash",[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]);e.s(["Hash",()=>t],88081)},63059,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],63059)},88699,e=>{"use strict";let t=(0,e.i(75254).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",()=>t],88699)},61911,e=>{"use strict";let t=(0,e.i(75254).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",()=>t],61911)},40160,e=>{"use strict";let t=(0,e.i(75254).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",()=>t],40160)},86311,e=>{"use strict";let t=(0,e.i(75254).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",()=>t],86311)},29415,e=>{"use strict";function t(e){return e.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}e.s(["stripMarkers",()=>t])},81418,e=>{"use strict";let t=(0,e.i(75254).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",()=>t],81418)},23385,e=>{"use strict";let t=(0,e.i(75254).default)("brain-circuit",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M9 13a4.5 4.5 0 0 0 3-4",key:"10igwf"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M12 13h4",key:"1ku699"}],["path",{d:"M12 18h6a2 2 0 0 1 2 2v1",key:"105ag5"}],["path",{d:"M12 8h8",key:"1lhi5i"}],["path",{d:"M16 8V5a2 2 0 0 1 2-2",key:"u6izg6"}],["circle",{cx:"16",cy:"13",r:".5",key:"ry7gng"}],["circle",{cx:"18",cy:"3",r:".5",key:"1aiba7"}],["circle",{cx:"20",cy:"21",r:".5",key:"yhc1fs"}],["circle",{cx:"20",cy:"8",r:".5",key:"1e43v0"}]]);e.s(["BrainCircuit",()=>t],23385)},65143,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(18566),s=e.i(22016),n=e.i(75254);let l=(0,n.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);var o=e.i(39312),i=e.i(23385),d=e.i(71689),c=e.i(61911),u=e.i(88081),m=e.i(86311),x=e.i(10980),p=e.i(83086),f=e.i(16715),h=e.i(63059),g=e.i(3116);let v=(0,n.default)("target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);var b=e.i(66992),j=e.i(81418);let y=(0,n.default)("corner-down-right",[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]]);var N=e.i(40160),k=e.i(88699),w=e.i(25459),S=e.i(74049),C=e.i(29415),_=e.i(14065);function M(){let{id:e}=(0,a.useParams)(),[n,M]=(0,r.useState)(null),[E,P]=(0,r.useState)([]),[O,T]=(0,r.useState)(null),[A,$]=(0,r.useState)([]),[I,L]=(0,r.useState)({total_messages:0,threads_participated:0}),[R,U]=(0,r.useState)(!0),[D,z]=(0,r.useState)("feed"),[F,V]=(0,r.useState)(!1),[B,H]=(0,r.useState)([]),{projects:J}=(0,S.useProjectsWithAgents)();if((0,r.useEffect)(()=>{e&&Promise.all([fetch("/api/participants").then(e=>e.json()),fetch(`/api/agents/${e}/profile`).then(e=>e.ok?e.json():null),fetch(`/api/agents/${e}/messages`).then(e=>e.ok?e.json():null)]).then(([t,r,a])=>{let s=Array.isArray(t)?t:[];P(s),M(s.find(t=>t.id===e)??null),T(r),$(a?.messages??[]),L(a?.stats??{total_messages:0,threads_participated:0}),U(!1)})},[e]),(0,r.useEffect)(()=>{if(!e)return;let t=async()=>{try{let t=await fetch("/api/processes?enrich=1");if(!t.ok)return;let r=await t.json();H(r.filter(t=>t.agentId===e&&("spawning"===t.state||"running"===t.state)))}catch{}};t();let r=setInterval(t,3e3);return()=>clearInterval(r)},[e]),R)return(0,t.jsx)("div",{className:"min-h-screen bg-[var(--background)] flex items-center justify-center",children:(0,t.jsx)("div",{className:"animate-pulse text-[var(--muted-foreground)] text-sm",children:"Loading agent…"})});if(!n)return(0,t.jsxs)("div",{className:"min-h-screen bg-[var(--background)] flex flex-col items-center justify-center gap-4",children:[(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"Agent not found"}),(0,t.jsx)(s.default,{href:"/agents",className:"text-sm text-blue-600 hover:underline",children:"Back to agents"})]});let q=n.color||"#D97706",K=J.filter(e=>e.agents.some(e=>e.agent_id===n.id)),W=O?.self||"",Z=(0,C.stripMarkers)(W),Q=n.identity||"",X=(0,C.stripMarkers)(Q),G=O?.journal??[],Y=G.filter(e=>"reflection"===e.type),ee=O?.inspectability,et=ee?.knowledge.agent.portableSkills??[],er=ee?.knowledge.agent.learnedMemories??[],ea=ee?.evidence,es=A.map(e=>({...e,content:(0,C.stripMarkers)(e.content)})).filter(e=>e.content.length>0),en=new Map;for(let e of E)en.set(e.id,e);let el=e=>{let t=new Date(e),r=Math.floor((Date.now()-t.getTime())/6e4);if(r<1)return"just now";if(r<60)return`${r}m ago`;let a=Math.floor(r/60);if(a<24)return`${a}h ago`;let s=Math.floor(a/24);return s<7?`${s}d ago`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(t)},eo=e=>{let t=new Date(e);return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(t)},ei=[{label:"Messages",value:I.total_messages.toLocaleString(),icon:m.MessageSquare},{label:"Threads",value:String(I.threads_participated),icon:u.Hash},{label:"Journal Entries",value:String(G.length),icon:x.BookOpen},{label:"Projects",value:String(K.length),icon:c.Users}];return(0,t.jsxs)("div",{className:"min-h-screen bg-[var(--background)] text-[var(--foreground)] font-sans selection:bg-amber-100/30",children:[(0,t.jsxs)("nav",{className:"sticky top-0 z-50 bg-[var(--card-bg)]/80 backdrop-blur-md border-b border-[var(--border)] px-4 md:px-8 h-14 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)(s.default,{href:"/agents",className:"p-2 hover:bg-[var(--muted)] rounded-lg transition-colors group",children:(0,t.jsx)(d.ArrowLeft,{className:"w-5 h-5 text-[var(--muted-foreground)] group-hover:text-[var(--foreground)]"})}),(0,t.jsx)("div",{className:"h-4 w-[1px] bg-[var(--muted)] hidden md:block"}),(0,t.jsxs)("div",{className:"hidden md:flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(c.Users,{className:"w-4 h-4"}),(0,t.jsx)(s.default,{href:"/agents",className:"hover:text-[var(--foreground)] transition-colors",children:"Agents"}),(0,t.jsx)(h.ChevronRight,{className:"w-4 h-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-[var(--foreground)] font-semibold",children:n.name})]})]}),(0,t.jsx)("div",{className:"flex items-center gap-3",children:O?.selfVersion&&(0,t.jsxs)("span",{className:"text-xs font-mono text-[var(--muted-foreground)] bg-[var(--muted)] px-2 py-1 rounded",children:["v",O.selfVersion]})})]}),(0,t.jsxs)("main",{className:"max-w-7xl mx-auto p-4 md:p-8 grid grid-cols-1 lg:grid-cols-12 gap-8",children:[(0,t.jsxs)("div",{className:"lg:col-span-4 space-y-6",children:[(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] shadow-xl shadow-black/5 overflow-hidden",children:[(0,t.jsx)("div",{className:"h-32 w-full relative",style:{background:`linear-gradient(135deg, ${q} 0%, ${q}99 100%)`},children:(0,t.jsx)("div",{className:"absolute inset-0 opacity-20 bg-[radial-gradient(#fff_1px,transparent_1px)] [background-size:16px_16px]"})}),(0,t.jsxs)("div",{className:"px-6 pb-6 text-center -mt-16 relative",children:[(0,t.jsxs)("div",{className:"inline-block relative",children:[(0,t.jsx)("img",{alt:n.name,className:"w-32 h-32 rounded-3xl bg-[var(--card-bg)] p-2 border-4 border-[var(--card-bg)] shadow-xl",src:(0,w.agentAvatarUrl)(n.id,128,n.color)}),(0,t.jsx)("div",{className:"absolute bottom-2 right-2 w-6 h-6 bg-green-500 border-4 border-[var(--card-bg)] rounded-full"})]}),(0,t.jsxs)("div",{className:"mt-4 space-y-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2",children:[(0,t.jsx)("h1",{className:"text-2xl font-black tracking-tight",children:n.name}),(0,t.jsx)("span",{className:"px-2 py-0.5 rounded-full text-[10px] font-bold uppercase tracking-wider",style:{backgroundColor:`${q}20`,color:q},children:n.provider})]}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] font-mono text-xs",children:n.model})]}),(0,t.jsxs)("div",{className:"flex flex-wrap justify-center gap-2 mt-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 rounded-full bg-[var(--app-shell-subtle)] border border-[var(--border)] text-xs font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(b.Cpu,{className:"w-3.5 h-3.5"}),n.model]}),(0,t.jsxs)("div",{className:`flex items-center gap-1.5 px-3 py-1.5 rounded-full border text-xs font-medium ${B.length>0?"bg-green-50 border-green-200 text-green-700":"bg-[var(--app-shell-subtle)] border-[var(--border)] text-[var(--muted-foreground)]"}`,children:[(0,t.jsx)(l,{className:`w-3.5 h-3.5 ${B.length>0?"animate-pulse":""}`}),B.length>0?"Working":"Idle"]})]}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3 mt-8",children:ei.map((e,r)=>(0,t.jsxs)("div",{className:"bg-[var(--app-shell-subtle)] p-3 rounded-2xl border border-[var(--border)] text-left hover:border-[var(--border)] transition-colors cursor-default",children:[(0,t.jsx)(e.icon,{className:"w-4 h-4 text-[var(--muted-foreground)] mb-1"}),(0,t.jsx)("div",{className:"text-lg font-bold text-[var(--foreground)]",children:e.value}),(0,t.jsx)("div",{className:"text-[10px] uppercase font-bold text-[var(--muted-foreground)] tracking-wider",children:e.label})]},r))})]})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(o.Zap,{className:"w-3.5 h-3.5"})," Actions"]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>V(!0),className:"flex-1 flex items-center justify-center gap-2 px-3 py-2.5 text-sm font-medium text-[var(--foreground)] bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl hover:bg-[var(--muted)] hover:border-[var(--border)] transition-all",children:[(0,t.jsx)(k.Pencil,{className:"w-3.5 h-3.5"}),"Edit"]}),(0,t.jsxs)("button",{type:"button",onClick:async()=>{let e=await fetch("/api/agents/export",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentIds:[n.id]})});if(!e.ok)return;let t=await e.json(),r=new Blob([JSON.stringify({version:1,exportedAt:new Date().toISOString(),agents:t.agents,projects:[]},null,2)],{type:"application/json"}),a=URL.createObjectURL(r),s=document.createElement("a");s.href=a,s.download=`${n.name.toLowerCase().replace(/\s+/g,"-")}.agent.json`,s.click(),URL.revokeObjectURL(a)},className:"flex-1 flex items-center justify-center gap-2 px-3 py-2.5 text-sm font-medium text-[var(--foreground)] bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl hover:bg-[var(--muted)] hover:border-[var(--border)] transition-all",children:[(0,t.jsx)(N.Download,{className:"w-3.5 h-3.5"}),"Export"]})]})]}),B.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-green-200 ring-1 ring-green-100 p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-green-600 uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(l,{className:"w-3.5 h-3.5 animate-pulse"})," Working Now"]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:B.map(e=>(0,t.jsxs)(s.default,{href:e.threadId?`/thread/${e.threadId}`:"#",className:"flex items-center gap-3 p-2.5 rounded-xl bg-green-50 border border-green-100 hover:border-green-300 hover:bg-green-100 transition-all group/work",children:[(0,t.jsx)("div",{className:"relative shrink-0",children:(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-green-500 animate-pulse"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)] truncate",children:e.threadId?(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)(u.Hash,{className:"w-3 h-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate",children:e.threadTitle||e.threadId.substring(0,12)+"..."})]}):(0,t.jsx)("span",{children:"Main thread"})}),(0,t.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)] capitalize",children:e.state})]}),(0,t.jsx)(h.ChevronRight,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] group-hover/work:text-[var(--muted-foreground)]"})]},`${e.workspaceId}-${e.threadId}`))})]}),n.skills&&n.skills.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(i.BrainCircuit,{className:"w-3.5 h-3.5"})," Portable Knowledge"]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:n.skills.map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors",children:[(0,t.jsx)(o.Zap,{size:10,className:"text-blue-500 shrink-0"}),(0,t.jsx)("span",{className:"text-blue-600 font-mono truncate",title:e.file,children:e.file.split("/").pop()}),e.condition&&(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-[10px] ml-auto shrink-0",children:e.condition})]},r))})]}),(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(j.ShieldCheck,{className:"w-3.5 h-3.5"})," Details"]}),(0,t.jsxs)("div",{className:"space-y-3 text-xs",children:[(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"ID"}),(0,t.jsx)("span",{className:"font-mono bg-[var(--app-shell-subtle)] px-1.5 py-0.5 rounded",children:n.id})]}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Provider"}),(0,t.jsx)("span",{className:"font-medium capitalize",children:n.provider})]}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Model"}),(0,t.jsx)("span",{className:"font-mono",children:n.model})]}),O?.identity?.voice?(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Voice"}),(0,t.jsx)("span",{className:"font-medium",children:String(O.identity.voice)})]}):null,(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Color"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("div",{className:"w-3 h-3 rounded-full border border-[var(--border)]",style:{backgroundColor:n.color}}),(0,t.jsx)("span",{className:"font-mono",children:n.color})]})]}),O?.selfDerivedAt&&(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Last Evolved"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:el(O.selfDerivedAt)})]})]})]}),K.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(c.Users,{className:"w-3.5 h-3.5"})," Active Projects"]}),(0,t.jsx)("div",{className:"space-y-2",children:K.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors group cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("div",{className:"w-8 h-8 rounded-lg bg-[var(--muted)] flex items-center justify-center text-xs font-bold text-[var(--muted-foreground)] group-hover:bg-[var(--card-bg)] group-hover:shadow-sm",children:e.name[0]}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:e.name})]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[e.agents.length," agent",1!==e.agents.length?"s":""]})]},e.id))})]})]})]}),(0,t.jsxs)("div",{className:"lg:col-span-8 space-y-6",children:[(0,t.jsx)("div",{className:"bg-[var(--card-bg)] p-1 rounded-2xl border border-[var(--border)] flex shadow-sm",children:[{key:"inspect",label:"Inspect",icon:j.ShieldCheck},{key:"feed",label:"Feed",icon:m.MessageSquare},{key:"reflections",label:"Reflections",icon:p.Sparkles}].map(e=>(0,t.jsxs)("button",{onClick:()=>z(e.key),className:`flex-1 flex items-center justify-center gap-2 py-3 rounded-xl text-sm font-bold transition-all ${D===e.key?"bg-[var(--foreground)] text-[var(--background)] shadow-lg shadow-black/5":"text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[(0,t.jsx)(e.icon,{className:"w-4 h-4"}),e.label]},e.key))}),(0,t.jsxs)("div",{className:"min-h-[600px]",children:["inspect"===D&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-4",children:[(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(x.BookOpen,{className:"w-4 h-4"})," Identity"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-emerald-50 text-emerald-700",children:"Human-authored"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed",children:"Canonical self-definition. The system can read this, but should not edit it."}),(0,t.jsxs)("div",{className:"mt-4 grid grid-cols-1 md:grid-cols-2 gap-3 text-xs",children:[(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Voice"}),(0,t.jsx)("p",{className:"mt-1 text-[var(--foreground)]",children:String(O?.identity?.voice??"Not set")})]}),(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Seed"}),(0,t.jsx)("p",{className:"mt-1 text-[var(--foreground)]",children:String(O?.identity?.seed??"Not set")})]})]}),ee?.identity.sources?.length?(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)] mb-2",children:"Sources"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:ee.identity.sources.map(e=>(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:e},e))})]}):null]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-amber-100 ring-1 ring-amber-200 p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(p.Sparkles,{className:"w-4 h-4"})," Self-Model"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-amber-100 text-amber-700",children:"System-derived"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed",children:"Reflective specialization model: how this agent currently understands its fit, strengths, and direction."}),Z?(0,t.jsx)("div",{className:"mt-4 text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(_.Markdown,{content:Z})}):(0,t.jsx)("p",{className:"mt-4 text-sm text-[var(--muted-foreground)]",children:"No self-model yet."}),(0,t.jsxs)("div",{className:"mt-4 flex flex-wrap gap-2",children:[O?.selfVersion?(0,t.jsxs)("span",{className:"px-2 py-1 rounded-full bg-amber-50 text-[11px] font-medium text-amber-700",children:["v",O.selfVersion]}):null,O?.selfDerivedAt?(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:el(O.selfDerivedAt)}):null,ee?.selfModel.sources?.map(e=>(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:e},e))]})]})]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(i.BrainCircuit,{className:"w-4 h-4"})," Agent Knowledge"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[et.length+er.length," items"]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Portable Knowledge"}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Human-authored"})]}),0===et.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No portable knowledge attached."}):(0,t.jsx)("div",{className:"space-y-2",children:et.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-[var(--foreground)] truncate",title:e.file,children:e.file}),(0,t.jsx)("span",{className:"text-[10px] font-medium text-[var(--muted-foreground)] shrink-0",children:e.form})]}),e.condition?(0,t.jsxs)("p",{className:"mt-2 text-xs text-[var(--muted-foreground)]",children:["Use when: ",e.condition]}):null]},`${e.file}:${e.condition}`))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Derived Knowledge Candidates"}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"System-derived"})]}),0===er.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No extracted learnings yet."}):(0,t.jsx)("div",{className:"space-y-2",children:er.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:e.type}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:el(e.createdAt)})]}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--foreground)] leading-relaxed",children:e.content}),(0,t.jsxs)("div",{className:"mt-2 text-[10px] text-[var(--muted-foreground)] font-mono",children:["task ",e.taskId]})]},e.id))})]})]})]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(l,{className:"w-4 h-4"})," Evidence"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-[var(--muted)] text-[var(--muted-foreground)]",children:"Non-canonical"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed mb-4",children:"Raw and semi-structured traces that support reflection and learning. These should be inspectable, but not treated as canonical truth."}),(0,t.jsx)("div",{className:"grid grid-cols-2 xl:grid-cols-4 gap-3",children:[{label:"Journal",value:ea?.journalEntries??G.length},{label:"Activity",value:ea?.activityEvents??O?.activity?.length??0},{label:"Reactions",value:ea?.reactions??0},{label:"Comments",value:ea?.comments??0}].map(e=>(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-4",children:[(0,t.jsx)("div",{className:"text-lg font-bold text-[var(--foreground)]",children:e.value}),(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:e.label})]},e.label))})]})]}),"feed"===D&&(0,t.jsxs)("div",{className:"space-y-4",children:[Z||X||O?.identity?.seed?(0,t.jsx)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:Z?(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(v,{className:"w-4 h-4"})," Self-Model"]}),O?.selfDerivedAt&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] flex items-center gap-1",children:[(0,t.jsx)(f.RefreshCw,{className:"w-3 h-3"}),"v",O.selfVersion," — ",el(O.selfDerivedAt)]})]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(_.Markdown,{content:Z})})]}):X?(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2 mb-4",children:[(0,t.jsx)(v,{className:"w-4 h-4"})," Identity"]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(_.Markdown,{content:X})})]}):O?.identity?.seed?(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2 mb-4",children:[(0,t.jsx)(v,{className:"w-4 h-4"})," Identity Seed"]}),(0,t.jsxs)("p",{className:"text-sm text-[var(--muted-foreground)] italic border-l-4 pl-4",style:{borderColor:q},children:["“",String(O.identity.seed),"”"]})]}):null}):null,(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(m.MessageSquare,{className:"w-4 h-4"})," Messages"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[es.length," messages"]})]}),0===es.length?(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-12 text-center",children:[(0,t.jsx)(m.MessageSquare,{size:32,className:"mx-auto mb-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No messages yet"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Messages will appear here as this agent participates in threads"})]}):es.map(e=>{var r;let a=e.prevContent?(0,C.stripMarkers)(e.prevContent):null,l=(e=>{if(!e)return"You";let t=en.get(e);return t?.name??e})(e.prevParticipantId),o=(r=e.prevParticipantId)?en.get(r)?.color??"#94a3b8":"#6366f1",i=e.threadTitle?(0,C.stripMarkers)(e.threadTitle):null;return(0,t.jsx)("article",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 hover:shadow-xl hover:shadow-black/5 transition-all group",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsx)("img",{src:(0,w.agentAvatarUrl)(n.id,40,n.color),alt:"",className:"w-10 h-10 rounded-2xl shrink-0 mt-0.5 shadow-sm"}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"flex items-center justify-between mb-1",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-bold text-[var(--foreground)]",children:n.name}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:["• ",el(e.timestamp)]})]})}),e.rootMessageId&&i&&(0,t.jsxs)(s.default,{href:`/thread/${e.threadId}`,className:"inline-flex items-center gap-1.5 mb-3 px-2.5 py-1 rounded-lg bg-[var(--app-shell-subtle)] border border-[var(--border)] hover:border-[var(--border)] hover:bg-[var(--muted)] transition-colors text-[11px] font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] group/thread",children:[(0,t.jsx)(u.Hash,{className:"w-3 h-3 text-[var(--muted-foreground)] group-hover/thread:text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate max-w-[300px]",children:i}),(0,t.jsx)(h.ChevronRight,{className:"w-3 h-3 text-[var(--muted-foreground)] group-hover/thread:text-[var(--muted-foreground)]"})]}),a&&(0,t.jsxs)("div",{className:"mb-3 flex items-start gap-2 pl-1",children:[(0,t.jsx)(y,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0 mt-1"}),(0,t.jsxs)("div",{className:"flex-1 min-w-0 p-2.5 rounded-xl bg-[var(--app-shell-subtle)] border border-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 mb-1",children:[e.prevParticipantId&&(0,t.jsx)("img",{src:(0,w.agentAvatarUrl)(e.prevParticipantId,16,o),alt:"",className:"w-4 h-4 rounded"}),(0,t.jsx)("span",{className:"text-[10px] font-bold",style:{color:o},children:l})]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed line-clamp-2",children:a})]})]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)]",children:(0,t.jsx)(_.Markdown,{content:e.content})}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-1.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,t.jsx)(g.Clock,{className:"w-3 h-3"}),eo(e.timestamp)]})]})]})},e.id)})]}),"reflections"===D&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(x.BookOpen,{className:"w-4 h-4"})," Journal Reflections"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[Y.length," reflections"]})]}),0===Y.length?(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-12 text-center",children:[(0,t.jsx)(p.Sparkles,{size:32,className:"mx-auto mb-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No reflections yet"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Reflections will appear as this agent evolves its self-model"})]}):Y.map((e,r)=>{let a=e.body?(0,C.stripMarkers)(e.body):"";return(0,t.jsx)("article",{className:"bg-[var(--card-bg)] rounded-3xl border border-amber-100 ring-1 ring-amber-200 p-6 hover:shadow-xl hover:shadow-black/5 transition-all group",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsxs)("div",{className:"relative shrink-0",children:[(0,t.jsx)("img",{alt:"",className:"w-10 h-10 rounded-2xl shadow-sm",src:(0,w.agentAvatarUrl)(n.id,40,n.color)}),(0,t.jsx)("div",{className:"absolute -top-1 -right-1 w-4 h-4 rounded-full flex items-center justify-center border-2 border-[var(--card-bg)]",style:{backgroundColor:q},children:(0,t.jsx)(p.Sparkles,{className:"w-2 h-2 text-white"})})]}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-bold text-[var(--foreground)]",children:n.name}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-amber-100 text-amber-700",children:"reflection"}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:["• ",el(e.t)]})]}),e.selfVersion&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-mono",children:["v",e.selfVersion]})]}),e.observation&&(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mb-3",children:e.observation}),a&&(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(_.Markdown,{content:a})}),(e.judgement||e.delta||e.intent)&&(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3 mt-4 pt-4 border-t border-[var(--border)] group-hover:border-[var(--border)] transition-colors",children:[e.judgement&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Judgment"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.judgement})]}),e.delta&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Delta"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.delta})]}),e.intent&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Intent"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.intent})]})]}),(0,t.jsxs)("div",{className:"mt-4 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,t.jsx)(g.Clock,{className:"w-3 h-3"}),eo(e.t)]}),e.thread&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-mono flex items-center gap-1",children:[(0,t.jsx)(u.Hash,{className:"w-3 h-3"}),e.thread.substring(0,12),"..."]})]})]})]})},e.id??r)})]})]})]})]}),F&&(0,t.jsx)(w.AgentForm,{title:"Edit agent",initial:{name:n.name,provider:n.provider,model:n.model||"",identity:n.identity||"",color:n.color,skills:n.skills||[]},agentId:n.id,submitLabel:"Save",onSubmit:async e=>{await fetch("/api/participants",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:n.id,name:e.name,provider:e.provider,model:e.model,color:e.color,...e.identity?{identity:e.identity}:{},skills:e.skills??[]})}),M({...n,name:e.name,provider:e.provider,model:e.model,identity:e.identity,color:e.color??n.color,skills:e.skills??[]}),V(!1)},onCancel:()=>V(!1)})]})}e.s(["default",()=>M],65143)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,14683,e=>{"use strict";let t=(0,e.i(75254).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",()=>t],14683)},78894,e=>{"use strict";let t=(0,e.i(75254).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",()=>t],78894)},3116,e=>{"use strict";let t=(0,e.i(75254).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],3116)},16715,e=>{"use strict";let t=(0,e.i(75254).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],16715)},73884,e=>{"use strict";let t=(0,e.i(75254).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],73884)},39312,e=>{"use strict";let t=(0,e.i(75254).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",()=>t],39312)},95468,63209,e=>{"use strict";var t=e.i(75254);let r=(0,t.default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["CheckCircle2",()=>r],95468);let a=(0,t.default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",()=>a],63209)},73375,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",()=>t],73375)},50030,e=>{"use strict";var t=e.i(71645);let r=new Set(["spawning","running"]);function a(e,a){let n=a?.intervalMs??3e3,[o,s]=(0,t.useState)(new Set),[i,l]=(0,t.useState)([]),[c,u]=(0,t.useState)({}),d=(0,t.useRef)(e);d.current=e;let f=(0,t.useRef)(a?.messages??[]);f.current=a?.messages??[];let p=(0,t.useRef)(a?.setMessages);p.current=a?.setMessages;let h=(0,t.useRef)(0);(0,t.useEffect)(()=>{let e=a?.messages??[];if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>h.current&&(h.current=t)}},[a?.messages]);let m=(0,t.useCallback)(async()=>{let e=d.current;if(!e){s(new Set),l([]),u({});return}let t=null;if(e.threadId?t=`/api/processes?threadId=${encodeURIComponent(e.threadId)}`:e.workspaceId&&(t=`/api/processes?workspaceId=${encodeURIComponent(e.workspaceId)}`),!t){s(new Set),l([]),u({});return}try{let a=e.workspaceId||e.threadId,n=a?`/api/history?threadId=${encodeURIComponent(a)}&since=${h.current}`:null,o=[fetch(t)];n&&o.push(fetch(n));let[i,c]=await Promise.all(o),m=d.current;if(m?.threadId!==e.threadId||m?.workspaceId!==e.workspaceId)return;if(i.ok){let e=await i.json();l(e);let t=new Set(e.filter(e=>r.has(e.state)).map(e=>e.agentId));s(t);let a={};for(let t of e){if(!r.has(t.state))continue;let e=f.current.find(e=>e.id===t.sinceMessageId),n=e?.rootMessageId??t.sinceMessageId;a[t.agentId]={content:"",rootMessageId:n}}u(a)}if(c?.ok&&p.current){let e=await c.json();if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>h.current&&(h.current=t),p.current(t=>{let r=new Set(t.map(e=>e.id)),a=e.filter(e=>!r.has(e.id)),n=t.map(t=>e.find(e=>e.id===t.id)??t);return 0===a.length?n:[...n,...a].sort((e,t)=>e.timestamp-t.timestamp)})}}}catch{}},[]),y=e?.threadId||e?.workspaceId||null;return(0,t.useEffect)(()=>{if(!y){s(new Set),l([]),u({});return}m();let e=setInterval(m,n);return()=>clearInterval(e)},[y,n,m]),{activeAgents:o,processes:i,streaming:c,poll:m}}e.s(["useProcessPolling",()=>a])},16625,e=>{"use strict";var t=e.i(71645),r=e.i(18566),a=e.i(99438);let n="agx-chat:last-thread";function o(){return void 0!==window.localStorage}function s(){if(o())try{window.localStorage.removeItem(n)}catch{}}let i=e=>[...e].sort((e,t)=>t.createdAt-e.createdAt);function l(e){let l=(0,r.useSearchParams)(),c=(0,t.useRef)(!0),[u,d]=(0,t.useState)([]),[f,p]=(0,t.useState)(null),[h,m]=(0,t.useState)(!0),[y,g]=(0,t.useState)(!0),[w,v]=(0,t.useState)(!1),[k,j]=(0,t.useState)(null),[S,b]=(0,t.useState)(null),T=(0,t.useRef)(!1),C=(0,t.useCallback)(e=>{p(e)},[]);(0,t.useEffect)(()=>(c.current=!0,()=>{c.current=!1}),[]),(0,t.useEffect)(()=>{let t=!1;return(async()=>{try{let r,i=await a.threadService.listThreads();if(t||!c.current)return;d(i);let u=e||l.get("thread")||function(){if(!o())return null;try{return window.localStorage.getItem(n)}catch{return null}}(),{threadId:f,shouldClearSavedId:h,restoredFromStorage:m}=(r=i[0]?.id??null,u?i.some(e=>e.id===u)?{threadId:u,shouldClearSavedId:!1,restoredFromStorage:!0}:{threadId:r,shouldClearSavedId:!0,restoredFromStorage:!1}:{threadId:r,shouldClearSavedId:!1,restoredFromStorage:!1});h&&s(),T.current||(T.current=!0),m&&f?C(f):f?p(e=>e??f):p(null)}catch(e){console.error("Failed to load threads",e)}finally{c.current&&(m(!1),g(!1))}})(),()=>{t=!0}},[C,l,e]),(0,t.useEffect)(()=>{if(T.current)if(f){if(o())try{window.localStorage.setItem(n,f)}catch{}}else s()},[f]);let A=(0,t.useCallback)(async e=>{v(!0);try{let t=await a.threadService.createThread(e);if(!c.current)return t;return d(e=>i([...e.filter(e=>e.id!==t.id),t])),p(t.id),t}catch(e){throw console.error("Failed to create thread",e),e}finally{c.current&&v(!1)}},[]),E=(0,t.useCallback)(async e=>{if(e){j(e);try{if(await a.threadService.deleteThread(e),!c.current)return;let t=[];d(r=>t=i(r.filter(t=>t.id!==e))),p(r=>r===e?t[0]?.id??null:r)}catch(e){throw console.error("Failed to delete thread",e),e}finally{c.current&&j(null)}}},[]),_=(0,t.useCallback)(async(e,t)=>{let r=e.trim(),n=t.trim();if(r&&n){b(r);try{let e=await a.threadService.renameThread(r,n);if(!e||!c.current)return;d(t=>i(t.map(t=>t.id===e.id?e:t)))}catch(e){throw console.error("Failed to rename thread",e),e}finally{c.current&&b(e=>e===r?null:e)}}},[]),I=(0,t.useCallback)(async(e,t)=>{if(e)try{let r=await a.threadService.saveThreadMessages(e,t);if(!r||!c.current)return;d(e=>i(e.map(e=>e.id===r.id?r:e)))}catch(e){console.error("Failed to update thread messages",e)}},[]),O=(0,t.useCallback)(async(e,t)=>{if(e)try{let r=await a.threadService.updateThreadStatus(e,t);if(!r||!c.current)return;d(e=>i(e.map(e=>e.id===r.id?r:e)))}catch(e){console.error("Failed to update thread status",e)}},[]),P=(0,t.useCallback)(async(e,t)=>{if(e)try{let r=await a.threadService.updateThreadOutcomeNote(e,t);if(!r||!c.current)return;d(e=>i(e.map(e=>e.id===r.id?r:e)))}catch(e){console.error("Failed to update thread outcome note",e)}},[]),M=(0,t.useCallback)(async(e,t,r)=>{if(e&&t)try{let n=await a.threadService.updateMessageThreadStatus(e,t,r);if(!n||!c.current)return;d(e=>i(e.map(e=>e.id===n.id?n:e)))}catch(e){console.error("Failed to update message thread status",e)}},[]),x=(0,t.useCallback)(async(e,t,r)=>{if(e&&t)try{let n=await a.threadService.updateMessageOutcomeNote(e,t,r);if(!n||!c.current)return;d(e=>i(e.map(e=>e.id===n.id?n:e)))}catch(e){console.error("Failed to update message outcome note",e)}},[]),N=null!==f&&k===f;return{threads:u,activeThreadId:f,selectThread:C,createThread:A,deleteThread:E,isLoading:h,isRestoringActiveThread:y,isCreating:w,deletingThreadId:k,renamingThreadId:S,isDeletingActiveThread:N,updateThreadMessages:I,renameThread:_,updateThreadStatus:O,updateThreadOutcomeNote:P,updateMessageThreadStatus:M,updateMessageOutcomeNote:x}}e.s(["useThreadState",()=>l],16625)},18566,(e,t,r)=>{t.exports=e.r(76562)},74049,e=>{"use strict";var t=e.i(71645);function r(){let[e,r]=(0,t.useState)([]),[a,n]=(0,t.useState)(!1),[o,s]=(0,t.useState)(null),i=(0,t.useCallback)(async()=>{n(!0);try{let e=await fetch("/api/projects");if(!e.ok)throw Error("Failed to fetch projects");let t=await e.json();r(t.projects??[]),s(null)}catch(e){s(e instanceof Error?e:Error("Unknown error"))}finally{n(!1)}},[]);(0,t.useEffect)(()=>{i()},[i]);let l=(0,t.useCallback)(async e=>{let t=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to create project");let a=(await t.json()).project;return r(e=>[a,...e]),a},[]);return{projects:e,isLoading:a,error:o,refetch:i,createProject:l,updateProject:(0,t.useCallback)(async(e,t)=>{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error||"Failed to update project");let n=(await a.json()).project;return r(t=>t.map(t=>t.id===e?n:t)),n},[]),deleteProject:(0,t.useCallback)(async e=>{let t=await fetch(`/api/projects/${e}`,{method:"DELETE"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to delete project");r(t=>t.filter(t=>t.id!==e))},[])}}function a(){let[e,r]=(0,t.useState)([]),[a,n]=(0,t.useState)(!0),o=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/projects");if(!e.ok)return;let{projects:t}=await e.json(),a=await Promise.all((t??[]).map(async e=>{let t=[],r=[];try{let[a,n]=await Promise.all([fetch(`/api/projects/${e.id}/agents`),fetch(`/api/projects/${e.id}/threads`)]);a.ok&&(t=(await a.json()).agents??[]),n.ok&&(r=((await n.json()).threads??[]).map(e=>e.thread_id))}catch{}return{...e,repos:e.repos??[],agents:t.map(t=>({project_id:e.id,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at})),thread_ids:r,workspace_ids:r}}));r(a)}catch{}finally{n(!1)}},[]);(0,t.useEffect)(()=>{o()},[o]);let s=(0,t.useCallback)(async(e,t)=>{try{let a="string"==typeof e?{name:e}:e,n=a.name.trim(),o=(a.slug||n.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),s=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,name:n,slug:o})});if(!s.ok)return null;let{project:i}=await s.json(),l=Array.isArray(t)?t:t?[t]:[];for(let e of l)await fetch(`/api/projects/${i.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:e})}).catch(()=>{});let c={...i,repos:i.repos??[],agents:[],thread_ids:l,workspace_ids:l};return r(e=>[...e,c].sort((e,t)=>e.name.localeCompare(t.name))),c}catch{return null}},[]),i=(0,t.useCallback)(async(e,t)=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})})).ok)return;r(r=>r.map(r=>r.id===e?{...r,name:t}:r).sort((e,t)=>e.name.localeCompare(t.name)))}catch{}},[]),l=(0,t.useCallback)(async e=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"DELETE"})).ok)return;r(t=>t.filter(t=>t.id!==e))}catch{}},[]),c=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error||"Failed to update project")}let n=(await a.json()).project;return r(t=>t.map(t=>t.id===e?{...t,...n,repos:n.repos??t.repos}:t)),n}catch{return null}},[]),u=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:t})});if(!a.ok)return;let n=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:n}:t))}catch{}},[]),d=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents?agentId=${t}`,{method:"DELETE"});if(!a.ok)return;let n=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:n}:t))}catch{}},[]);return{projects:e,isLoading:a,createProject:s,updateProject:c,renameProject:i,deleteProject:l,addAgent:u,removeAgent:d,reorderAgents:(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:t})});if(!a.ok)return;let n=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:n}:t))}catch{}},[]),moveAgent:(0,t.useCallback)(async(e,t,r)=>{try{await fetch(`/api/projects/${t}/agents?agentId=${e}`,{method:"DELETE"}),await fetch(`/api/projects/${r}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:e})}),await o()}catch{}},[o]),refresh:o}}e.s(["useProjects",()=>r,"useProjectsWithAgents",()=>a])},29415,e=>{"use strict";function t(e){return e.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}e.s(["stripMarkers",()=>t])},86311,e=>{"use strict";let t=(0,e.i(75254).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",()=>t],86311)},99438,e=>{"use strict";let t="agx-chat:threads";function r(){let e=globalThis.localStorage;if(!e)throw Error("LocalThreadAdapter requires a browser-like environment with `localStorage`.");return e}function a(){let e=r().getItem(t);if(!e)return{threads:{}};try{let t=JSON.parse(e);if(t&&"object"==typeof t&&t.threads&&"object"==typeof t.threads)return{threads:Object.fromEntries(Object.entries(t.threads).map(([e,t])=>{var r,a;return[e,(r=e,a=t,{id:r,title:a?.title,messages:Array.isArray(a?.messages)?[...a.messages]:[],createdAt:"number"==typeof a?.createdAt?a.createdAt:Date.now(),updatedAt:"number"==typeof a?.updatedAt?a.updatedAt:Date.now(),metadata:a?.metadata,status:a?.status,outcomeNote:a?.outcomeNote,projectId:"string"==typeof a?.projectId?a.projectId:"string"==typeof a?.teamId?a.teamId:a?.projectId===null||a?.teamId===null?null:void 0})]}))}}catch{}return{threads:{}}}function n(e){r().setItem(t,JSON.stringify(e))}function o(e){return{...e,messages:e.messages.map(e=>({...e})),metadata:e.metadata?{...e.metadata}:void 0}}let s=new class{async saveThread(e){let t=Date.now(),r=a(),s=r.threads[e.id],i=s?.createdAt??e.createdAt??t,l=e.updatedAt??t,c={id:e.id,title:e.title,messages:e.messages.map(e=>({...e})),metadata:e.metadata,createdAt:i,updatedAt:l,status:e.status,outcomeNote:e.outcomeNote,projectId:e.projectId??e.teamId};return r.threads[e.id]=c,n(r),o(c)}async loadThread(e){let t=a().threads[e];return t?o(t):null}async listThreads(e){let t=Object.values(a().threads),r=e?.order??"desc",n=[...t].sort((e,t)=>"asc"===r?e.updatedAt-t.updatedAt:t.updatedAt-e.updatedAt),s=Math.max(0,e?.offset??0),i=e?.limit,l="number"==typeof i&&i>=0?n.slice(s,s+i):n.slice(s);return{total:t.length,threads:l.map(o)}}async deleteThread(e){let t=a();t.threads[e]&&(delete t.threads[e],n(t))}};e.s(["threadService",0,{listThreads:async()=>[...(await s.listThreads({order:"desc"})).threads.filter(e=>!0!==e.metadata?.archived)].sort((e,t)=>t.updatedAt-e.updatedAt),async createThread(e){let t="string"==typeof e?.id?e.id.trim():"";if(t){let r=await s.loadThread(t);if(r){let t={...r.metadata??{},...e?.metadata??{},archived:!1,archivedAt:null};return s.saveThread({id:r.id,title:e?.title??r.title,messages:e?.messages?.length?e.messages:r.messages,metadata:t,createdAt:r.createdAt})}}let r={id:t||("u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`thread-${Date.now()}-${Math.random().toString(16).slice(2)}`),messages:e?.messages?.length?e.messages:[],title:e?.title,metadata:e?.metadata};return s.saveThread(r)},async deleteThread(e){let t=e.trim();if(!t)return;let r=await s.loadThread(t);if(!r)return;let a={...r.metadata??{},archived:!0,archivedAt:Date.now()};await s.saveThread({id:r.id,title:r.title,messages:r.messages,metadata:a,createdAt:r.createdAt})},async renameThread(e,t){let r=e.trim(),a=t.trim();if(!r||!a)return null;let n=await s.loadThread(r);return n?(n.title?.trim()??"")===a?n:s.saveThread({id:n.id,title:a,messages:n.messages,metadata:n.metadata,createdAt:n.createdAt}):null},async updateThreadStatus(e,t){let r=await s.loadThread(e);return r?r.status===t?r:s.saveThread({id:r.id,title:r.title,messages:r.messages,metadata:r.metadata,createdAt:r.createdAt,status:t,outcomeNote:r.outcomeNote}):null},async updateThreadOutcomeNote(e,t){let r=await s.loadThread(e);return r?r.outcomeNote===t?r:s.saveThread({id:r.id,title:r.title,messages:r.messages,metadata:r.metadata,createdAt:r.createdAt,status:r.status,outcomeNote:t}):null},async updateMessageThreadStatus(e,t,r){let a=await s.loadThread(e);if(!a)return null;let n=a.messages.map(e=>e.id===t?{...e,threadStatus:r}:e);return s.saveThread({id:a.id,title:a.title,messages:n,metadata:a.metadata,createdAt:a.createdAt,status:a.status,outcomeNote:a.outcomeNote})},async updateMessageOutcomeNote(e,t,r){let a=await s.loadThread(e);if(!a)return null;let n=a.messages.map(e=>e.id===t?{...e,outcomeNote:r}:e);return s.saveThread({id:a.id,title:a.title,messages:n,metadata:a.metadata,createdAt:a.createdAt,status:a.status,outcomeNote:a.outcomeNote})},async saveThreadMessages(e,t){let r=await s.loadThread(e);if(!r)return null;let a=r.title?.trim()||function(e){let t=e.find(e=>"user"===e.role)?.content?.trim();if(!t)return;let r=t.replace(/\s+/g," ");return r.length>60?`${r.slice(0,60).trim()}…`:r}(t);return function(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r+=1){let a=e[r],n=t[r];if(a.id!==n.id||a.role!==n.role||a.participantId!==n.participantId||a.content!==n.content||a.timestamp!==n.timestamp)return!1}return!0}(r.messages,t)&&(r.title?.trim()||void 0)===a?r:s.saveThread({id:r.id,title:a,messages:t,metadata:r.metadata,createdAt:r.createdAt})}}],99438)},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return l},searchParamsToUrlQuery:function(){return o},urlQueryToSearchParams:function(){return i}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});function o(e){let t={};for(let[r,a]of e.entries()){let e=t[r];void 0===e?t[r]=a:Array.isArray(e)?e.push(a):t[r]=[e,a]}return t}function s(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function i(e){let t=new URLSearchParams;for(let[r,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(r,s(e));else t.set(r,s(a));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,a]of r.entries())e.append(t,a)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return i},formatWithValidation:function(){return c},urlObjectKeys:function(){return l}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let o=e.r(90809)._(e.r(98183)),s=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,a=e.protocol||"",n=e.pathname||"",i=e.hash||"",l=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)),l&&"object"==typeof l&&(l=String(o.urlQueryToSearchParams(l)));let u=e.search||l&&`?${l}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||s.test(a))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),i&&"#"!==i[0]&&(i="#"+i),u&&"?"!==u[0]&&(u="?"+u),n=n.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${a}${c}${n}${u}${i}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return i(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let a=e.r(71645);function n(e,t){let r=(0,a.useRef)(null),n=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=o(e,a)),t&&(n.current=o(t,a))},[e,t])}function o(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 a={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return k},NormalizeError:function(){return w},PageNotFoundError:function(){return v},SP:function(){return m},ST:function(){return y},WEB_VITALS:function(){return o},execOnce:function(){return s},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return l},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return S}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let o=["CLS","FCP","FID","INP","LCP","TTFB"];function s(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),t)}let i=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>i.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 f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(r&&f(r))return a;if(!a)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return a}let m="u">typeof performance,y=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class w extends Error{}class v 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 j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function S(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 o}});let a=e.r(18967),n=e.r(52817);function o(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.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 a}});let a=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},useLinkStatus:function(){return v}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let o=e.r(90809),s=e.r(18050),i=o._(e.r(71645)),l=e.r(61746),c=e.r(8372),u=e.r(18581),d=e.r(18967),f=e.r(5550);e.r(33525);let p=e.r(91949),h=e.r(73668),m=e.r(9396);function y(e){return"string"==typeof e?e:(0,l.formatUrl)(e)}function g(t){var r;let a,n,o,[l,g]=(0,i.useOptimistic)(p.IDLE_LINK_STATUS),v=(0,i.useRef)(null),{href:k,as:j,children:S,prefetch:b=null,passHref:T,replace:C,shallow:A,scroll:E,onClick:_,onMouseEnter:I,onTouchStart:O,legacyBehavior:P=!1,onNavigate:M,ref:x,unstable_dynamicOnHover:N,...$}=t;a=S,P&&("string"==typeof a||"number"==typeof a)&&(a=(0,s.jsx)("a",{children:a}));let R=i.default.useContext(c.AppRouterContext),L=!1!==b,U=!1!==b?null===(r=b)||"auto"===r?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,{href:F,as:D}=i.default.useMemo(()=>{let e=y(k);return{href:e,as:j?y(j):e}},[k,j]);if(P){if(a?.$$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=i.default.Children.only(a)}let z=P?n&&"object"==typeof n&&n.ref:x,J=i.default.useCallback(e=>(null!==R&&(v.current=(0,p.mountLinkInstance)(e,F,R,U,L,g)),()=>{v.current&&((0,p.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,p.unmountPrefetchableInstance)(e)}),[L,F,R,U,g]),q={ref:(0,u.useMergedRef)(J,z),onClick(t){P||"function"!=typeof _||_(t),P&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!R||t.defaultPrevented||function(t,r,a,n,o,s,l){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,h.isLocalURL)(r)){o&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);i.default.startTransition(()=>{d(a||r,o?"replace":"push",s??!0,n.current)})}}(t,F,D,v,C,E,M)},onMouseEnter(e){P||"function"!=typeof I||I(e),P&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),R&&L&&(0,p.onNavigationIntent)(e.currentTarget,!0===N)},onTouchStart:function(e){P||"function"!=typeof O||O(e),P&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),R&&L&&(0,p.onNavigationIntent)(e.currentTarget,!0===N)}};return(0,d.isAbsoluteUrl)(D)?q.href=D:P&&!T&&("a"!==n.type||"href"in n.props)||(q.href=(0,f.addBasePath)(D)),o=P?i.default.cloneElement(n,q):(0,s.jsx)("a",{...$,...q,children:a}),(0,s.jsx)(w.Provider,{value:l,children:o})}e.r(84508);let w=(0,i.createContext)(p.IDLE_LINK_STATUS),v=()=>(0,i.useContext)(w);("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)},75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var n={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let o=(0,t.forwardRef)(({color:e="currentColor",size:a=24,strokeWidth:o=2,absoluteStrokeWidth:s,className:i="",children:l,iconNode:c,...u},d)=>(0,t.createElement)("svg",{ref:d,...n,width:a,height:a,stroke:e,strokeWidth:s?24*Number(o)/Number(a):o,className:r("lucide",i),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(u)&&{"aria-hidden":"true"},...u},[...c.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(l)?l:[l]])),s=(e,n)=>{let s=(0,t.forwardRef)(({className:s,...i},l)=>(0,t.createElement)(o,{ref:l,iconNode:n,className:r(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,s),...i}));return s.displayName=a(e),s};e.s(["default",()=>s],75254)},7233,e=>{"use strict";let t=(0,e.i(75254).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",()=>t],7233)},10980,e=>{"use strict";let t=(0,e.i(75254).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);e.s(["BookOpen",()=>t],10980)},55838,(e,t,r)=>{"use strict";var a=e.r(71645),n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=a.useState,s=a.useEffect,i=a.useLayoutEffect,l=a.useDebugValue;function c(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!n(e,r)}catch(e){return!0}}var u="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),a=o({inst:{value:r,getSnapshot:t}}),n=a[0].inst,u=a[1];return i(function(){n.value=r,n.getSnapshot=t,c(n)&&u({inst:n})},[e,r,t]),s(function(){return c(n)&&u({inst:n}),e(function(){c(n)&&u({inst:n})})},[e]),l(r),r};r.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:u},2239,(e,t,r)=>{"use strict";t.exports=e.r(55838)},52822,(e,t,r)=>{"use strict";var a=e.r(71645),n=e.r(2239),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=n.useSyncExternalStore,i=a.useRef,l=a.useEffect,c=a.useMemo,u=a.useDebugValue;r.useSyncExternalStoreWithSelector=function(e,t,r,a,n){var d=i(null);if(null===d.current){var f={hasValue:!1,value:null};d.current=f}else f=d.current;var p=s(e,(d=c(function(){function e(e){if(!l){if(l=!0,s=e,e=a(e),void 0!==n&&f.hasValue){var t=f.value;if(n(t,e))return i=t}return i=e}if(t=i,o(s,e))return t;var r=a(e);return void 0!==n&&n(t,r)?(s=e,t):(s=e,i=r)}var s,i,l=!1,c=void 0===r?null:r;return[function(){return e(t())},null===c?void 0:function(){return e(c())}]},[t,r,a,n]))[0],d[1]);return l(function(){f.hasValue=!0,f.value=p},[p]),u(p),p}},30224,(e,t,r)=>{"use strict";t.exports=e.r(52822)},63059,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],63059)},88081,e=>{"use strict";let t=(0,e.i(75254).default)("hash",[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]);e.s(["Hash",()=>t],88081)},88699,e=>{"use strict";let t=(0,e.i(75254).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",()=>t],88699)},40160,e=>{"use strict";let t=(0,e.i(75254).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",()=>t],40160)},61911,e=>{"use strict";let t=(0,e.i(75254).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",()=>t],61911)}]);
|