constellai 0.3.6 → 0.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +3 -3
- package/.next/build-manifest.json +6 -6
- package/.next/next-minimal-server.js.nft.json +1 -1
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +6 -6
- package/.next/server/app/(app)/activity/page.js +2 -2
- package/.next/server/app/(app)/activity/page.js.nft.json +1 -1
- package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/agents/[handle]/page.js +3 -3
- package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/code/page.js +2 -2
- package/.next/server/app/(app)/code/page.js.nft.json +1 -1
- package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/config/page.js +2 -2
- package/.next/server/app/(app)/config/page.js.nft.json +1 -1
- package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/costs/page.js +2 -2
- package/.next/server/app/(app)/costs/page.js.nft.json +1 -1
- package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/cron/page.js +2 -2
- package/.next/server/app/(app)/cron/page.js.nft.json +1 -1
- package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/dashboard/page.js +2 -2
- package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -1
- package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/design/page.js +53 -53
- package/.next/server/app/(app)/design/page.js.nft.json +1 -1
- package/.next/server/app/(app)/design/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/docs/[id]/page.js +2 -2
- package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/docs/page.js +2 -2
- package/.next/server/app/(app)/docs/page.js.nft.json +1 -1
- package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/github/page.js +2 -2
- package/.next/server/app/(app)/github/page.js.nft.json +1 -1
- package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/goals/page.js +2 -2
- package/.next/server/app/(app)/goals/page.js.nft.json +1 -1
- package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/inbox/page.js +2 -2
- package/.next/server/app/(app)/inbox/page.js.nft.json +1 -1
- package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/knowledge/page.js +3 -3
- package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -1
- package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/models/page.js +2 -2
- package/.next/server/app/(app)/models/page.js.nft.json +1 -1
- package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/notifications/page.js +2 -2
- package/.next/server/app/(app)/notifications/page.js.nft.json +1 -1
- package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/org/page.js +4 -4
- package/.next/server/app/(app)/org/page.js.nft.json +1 -1
- package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/organizations/page.js +2 -2
- package/.next/server/app/(app)/organizations/page.js.nft.json +1 -1
- package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/page.js +3 -3
- package/.next/server/app/(app)/page.js.nft.json +1 -1
- package/.next/server/app/(app)/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/planner/page.js +3 -3
- package/.next/server/app/(app)/planner/page.js.nft.json +1 -1
- package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/plugins/page.js +2 -2
- package/.next/server/app/(app)/plugins/page.js.nft.json +1 -1
- package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/pm/page.js +2 -2
- package/.next/server/app/(app)/pm/page.js.nft.json +1 -1
- package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/prepare-deploy/page.js +3 -3
- package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -1
- package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/profile/page.js +2 -2
- package/.next/server/app/(app)/profile/page.js.nft.json +1 -1
- package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/pulse/page.js +2 -2
- package/.next/server/app/(app)/pulse/page.js.nft.json +1 -1
- package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/reports/[id]/page.js +3 -3
- package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/reports/page.js +3 -3
- package/.next/server/app/(app)/reports/page.js.nft.json +1 -1
- package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/routines/page.js +2 -2
- package/.next/server/app/(app)/routines/page.js.nft.json +1 -1
- package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/search/page.js +2 -2
- package/.next/server/app/(app)/search/page.js.nft.json +1 -1
- package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/security/page.js +2 -2
- package/.next/server/app/(app)/security/page.js.nft.json +1 -1
- package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/skills/page.js +3 -3
- package/.next/server/app/(app)/skills/page.js.nft.json +1 -1
- package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/tasks/page.js +2 -2
- package/.next/server/app/(app)/tasks/page.js.nft.json +1 -1
- package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/test-dev/page.js +2 -2
- package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -1
- package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/update/page.js +3 -3
- package/.next/server/app/(app)/update/page.js.nft.json +1 -1
- package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(auth)/login/page.js +2 -2
- package/.next/server/app/(auth)/login/page.js.nft.json +1 -1
- package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(auth)/onboarding/page.js +2 -2
- package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -1
- package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error/page.js +3 -3
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +8 -8
- package/.next/server/app/_global-error.segments/_full.segment.rsc +8 -8
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +3 -3
- package/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
- package/.next/server/app/_global-error.segments/_index.segment.rsc +4 -4
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/[...all]/route.js +1 -1
- package/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/tick/route.js +5 -5
- package/.next/server/app/api/cron/tick/route.js.nft.json +1 -1
- package/.next/server/app/api/health/route.js +1 -1
- package/.next/server/app/api/health/route.js.nft.json +1 -1
- package/.next/server/app/api/locks/acquire/route.js +1 -1
- package/.next/server/app/api/locks/acquire/route.js.nft.json +1 -1
- package/.next/server/app/api/models/progress/route.js +1 -1
- package/.next/server/app/api/models/progress/route.js.nft.json +1 -1
- package/.next/server/app/api/passkey/authenticate/options/route.js +1 -1
- package/.next/server/app/api/passkey/authenticate/options/route.js.nft.json +1 -1
- package/.next/server/app/api/passkey/authenticate/verify/route.js +1 -1
- package/.next/server/app/api/passkey/authenticate/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/passkey/register/options/route.js +1 -1
- package/.next/server/app/api/passkey/register/options/route.js.nft.json +1 -1
- package/.next/server/app/api/passkey/register/verify/route.js +1 -1
- package/.next/server/app/api/passkey/register/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/stream/route.js +2 -2
- package/.next/server/app/api/stream/route.js.nft.json +1 -1
- package/.next/server/app/api/sync/file/route.js +2 -2
- package/.next/server/app/api/sync/file/route.js.nft.json +1 -1
- package/.next/server/app/api/telegram/poll/route.js +19 -19
- package/.next/server/app/api/telegram/poll/route.js.nft.json +1 -1
- package/.next/server/app/api/upload/route.js +1 -1
- package/.next/server/app/api/upload/route.js.nft.json +1 -1
- package/.next/server/app/api/v1/[[...path]]/route.js +1 -1
- package/.next/server/app/api/v1/[[...path]]/route.js.nft.json +1 -1
- package/.next/server/app-paths-manifest.json +3 -3
- package/.next/server/chunks/1033.js +14 -0
- package/.next/server/chunks/1243.js +1 -0
- package/.next/server/chunks/{6719.js → 1304.js} +1 -1
- package/.next/server/chunks/1678.js +417 -0
- package/.next/server/chunks/1952.js +1 -0
- package/.next/server/chunks/{8561.js → 1986.js} +2 -2
- package/.next/server/chunks/2118.js +869 -0
- package/.next/server/chunks/2323.js +1 -0
- package/.next/server/chunks/{7336.js → 2392.js} +1 -1
- package/.next/server/chunks/2559.js +479 -0
- package/.next/server/chunks/26.js +1 -0
- package/.next/server/chunks/{5278.js → 3140.js} +1 -1
- package/.next/server/chunks/{6479.js → 3172.js} +1 -1
- package/.next/server/chunks/3205.js +1 -0
- package/.next/server/chunks/3392.js +1 -0
- package/.next/server/chunks/{4979.js → 3987.js} +5 -5
- package/.next/server/chunks/404.js +1 -0
- package/.next/server/chunks/415.js +1 -0
- package/.next/server/chunks/4288.js +1 -0
- package/.next/server/chunks/{2599.js → 4411.js} +1 -1
- package/.next/server/chunks/{7912.js → 4561.js} +1 -1
- package/.next/server/chunks/4587.js +1 -0
- package/.next/server/chunks/4679.js +462 -1
- package/.next/server/chunks/4769.js +1 -0
- package/.next/server/chunks/4882.js +2 -0
- package/.next/server/chunks/4897.js +15 -0
- package/.next/server/chunks/5015.js +15 -0
- package/.next/server/chunks/{658.js → 5361.js} +3 -3
- package/.next/server/chunks/5557.js +1 -0
- package/.next/server/chunks/{2517.js → 5593.js} +1 -1
- package/.next/server/chunks/5661.js +1 -0
- package/.next/server/chunks/5802.js +1 -0
- package/.next/server/chunks/5878.js +1 -0
- package/.next/server/chunks/5911.js +18 -0
- package/.next/server/chunks/6083.js +1 -0
- package/.next/server/chunks/{4302.js → 6121.js} +13 -13
- package/.next/server/chunks/6309.js +1 -0
- package/.next/server/chunks/6538.js +4 -0
- package/.next/server/chunks/6585.js +1 -0
- package/.next/server/chunks/{3243.js → 6778.js} +2 -2
- package/.next/server/chunks/6807.js +1 -0
- package/.next/server/chunks/{1388.js → 6948.js} +1 -1
- package/.next/server/chunks/{1591.js → 699.js} +2 -2
- package/.next/server/chunks/7109.js +1 -0
- package/.next/server/chunks/714.js +1 -0
- package/.next/server/chunks/7474.js +1 -0
- package/.next/server/chunks/{7037.js → 7677.js} +1 -1
- package/.next/server/chunks/77.js +3 -0
- package/.next/server/chunks/7727.js +1 -0
- package/.next/server/chunks/7867.js +22 -0
- package/.next/server/chunks/{259.js → 7905.js} +5 -5
- package/.next/server/chunks/{3609.js → 7911.js} +1 -1
- package/.next/server/chunks/{2867.js → 8134.js} +2 -2
- package/.next/server/chunks/{9783.js → 8211.js} +2 -2
- package/.next/server/chunks/8224.js +1 -0
- package/.next/server/chunks/8237.js +12 -0
- package/.next/server/chunks/8498.js +1 -0
- package/.next/server/chunks/{8823.js → 907.js} +10 -10
- package/.next/server/chunks/{7778.js → 9099.js} +1 -1
- package/.next/server/chunks/912.js +1 -0
- package/.next/server/chunks/9180.js +1 -0
- package/.next/server/chunks/9344.js +910 -0
- package/.next/server/chunks/9374.js +1 -0
- package/.next/server/chunks/939.js +1 -0
- package/.next/server/chunks/9419.js +1 -0
- package/.next/server/chunks/9426.js +188 -0
- package/.next/server/chunks/9677.js +17 -0
- package/.next/server/chunks/978.js +1 -0
- package/.next/server/chunks/9795.js +21 -0
- package/.next/server/instrumentation.js +1 -1
- package/.next/server/instrumentation.js.nft.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/middleware.js +6 -6
- package/.next/server/middleware.js.nft.json +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/171-2a8b8f61f7ab0828.js +1 -0
- package/.next/static/chunks/{23550918-ff694f70f4b0648c.js → 1ceccf25-731706dbe95504b9.js} +1 -1
- package/.next/static/chunks/3556-dbb9200143640484.js +1 -0
- package/.next/static/chunks/{2320-fc8b39380e69d465.js → 3703-b09be945970ea475.js} +1 -1
- package/.next/static/chunks/5452-d0ce3b51601a5815.js +1 -0
- package/.next/static/chunks/5523-9c369c915ee6d9c9.js +1 -0
- package/.next/static/chunks/7066-c10959874b2315bf.js +32 -0
- package/.next/static/chunks/717-1d1163010e3b541d.js +1 -0
- package/.next/static/chunks/7218-21f40f9caef5d658.js +12 -0
- package/.next/static/chunks/7363-b9ebe28fed23b997.js +1 -0
- package/.next/static/chunks/7621-87d8d0d0568de3ca.js +4 -0
- package/.next/static/chunks/{5920.6451a68b63918988.js → 7790.b648690cf25f29eb.js} +1 -1
- package/.next/static/chunks/{7509.721cd47a931c5518.js → 8251.6fedb7dc4d720bab.js} +1 -1
- package/.next/static/chunks/9279-467412113ad55642.js +1 -0
- package/.next/static/chunks/928-6dec8198101bc3e6.js +1 -0
- package/.next/static/chunks/9874-dc2fbf114916382b.js +1 -0
- package/.next/static/chunks/app/(app)/activity/page-ce3fc6003368f592.js +1 -0
- package/.next/static/chunks/app/(app)/agents/[handle]/page-236e13b8edadd480.js +1 -0
- package/.next/static/chunks/app/(app)/code/page-18ae765c81a2c709.js +1 -0
- package/.next/static/chunks/app/(app)/config/page-8a6fcf6c04337210.js +1 -0
- package/.next/static/chunks/app/(app)/costs/page-230b0ef03a2024b0.js +1 -0
- package/.next/static/chunks/app/(app)/cron/page-ca89769e2522191d.js +1 -0
- package/.next/static/chunks/app/(app)/dashboard/page-6237c3a35cce55ce.js +1 -0
- package/.next/static/chunks/app/(app)/design/{page-f48c0487d240248e.js → page-5997054187e59e74.js} +3 -3
- package/.next/static/chunks/app/(app)/docs/[id]/page-3362d323e0f4dada.js +1 -0
- package/.next/static/chunks/app/(app)/docs/page-d7d8018a7884a4b4.js +1 -0
- package/.next/static/chunks/app/(app)/error-f9a3caa63e064a7e.js +1 -0
- package/.next/static/chunks/app/(app)/github/page-f5c1cae725d080fb.js +1 -0
- package/.next/static/chunks/app/(app)/goals/page-95e85ce115ed9ff3.js +1 -0
- package/.next/static/chunks/app/(app)/inbox/page-474c3f0a181bbbd3.js +12 -0
- package/.next/static/chunks/app/(app)/knowledge/page-08596428ca34b620.js +1 -0
- package/.next/static/chunks/app/(app)/layout-720a1171f7152d86.js +1 -0
- package/.next/static/chunks/app/(app)/models/page-fa1eb257e6911c9a.js +1 -0
- package/.next/static/chunks/app/(app)/notifications/page-31f2a041bdb497b9.js +12 -0
- package/.next/static/chunks/app/(app)/org/page-666438930ddc4639.js +12 -0
- package/.next/static/chunks/app/(app)/organizations/page-0de7da829c9b2249.js +1 -0
- package/.next/static/chunks/app/(app)/page-bfcf3d25f468240f.js +1 -0
- package/.next/static/chunks/app/(app)/planner/page-0fc0ebe2d338769a.js +1 -0
- package/.next/static/chunks/app/(app)/plugins/page-ad369fbfec6f3d1c.js +1 -0
- package/.next/static/chunks/app/(app)/pm/page-bb39c9d9a4f0d597.js +1 -0
- package/.next/static/chunks/app/(app)/prepare-deploy/page-f182991e68b159c1.js +1 -0
- package/.next/static/chunks/app/(app)/profile/page-cf5fe16bfad2a7ba.js +1 -0
- package/.next/static/chunks/app/(app)/pulse/page-03877c467c491e8a.js +1 -0
- package/.next/static/chunks/app/(app)/reports/[id]/page-ca89769e2522191d.js +1 -0
- package/.next/static/chunks/app/(app)/reports/page-7741b6a25e582791.js +1 -0
- package/.next/static/chunks/app/(app)/routines/page-ea83e6337e7502c2.js +1 -0
- package/.next/static/chunks/app/(app)/search/page-5e7f7cf0cc51b76f.js +1 -0
- package/.next/static/chunks/app/(app)/security/page-410144cdc35e19cc.js +1 -0
- package/.next/static/chunks/app/(app)/skills/page-90e5d8a24920c275.js +1 -0
- package/.next/static/chunks/app/(app)/tasks/page-4d535f34ae9c44ca.js +1 -0
- package/.next/static/chunks/app/(app)/test-dev/page-782c8cadd8a10feb.js +1 -0
- package/.next/static/chunks/app/(app)/update/page-decdb0ece526b50f.js +1 -0
- package/.next/static/chunks/app/(auth)/login/page-147a9be880c44d42.js +1 -0
- package/.next/static/chunks/app/(auth)/onboarding/page-8548be7e3ab3659e.js +1 -0
- package/.next/static/chunks/app/_global-error/{page-eacef2b697bd0982.js → page-ffc45e65538b6024.js} +1 -1
- package/.next/static/chunks/app/_not-found/page-405e53afca481eab.js +1 -0
- package/.next/static/chunks/app/api/auth/[...all]/{route-eacef2b697bd0982.js → route-ffc45e65538b6024.js} +1 -1
- package/.next/static/chunks/app/api/cron/tick/{route-eacef2b697bd0982.js → route-ffc45e65538b6024.js} +1 -1
- package/.next/static/chunks/app/api/health/{route-eacef2b697bd0982.js → route-ffc45e65538b6024.js} +1 -1
- package/.next/static/chunks/app/api/locks/acquire/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/models/progress/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/options/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/verify/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/options/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/verify/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/stream/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/sync/file/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/telegram/poll/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/upload/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/api/v1/[[...path]]/route-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/app/error-e128df085a794b38.js +1 -0
- package/.next/static/chunks/app/global-error-339c61c4184d384a.js +1 -0
- package/.next/static/chunks/app/layout-c717657a60a7f62c.js +1 -0
- package/.next/static/chunks/main-143b6dbf9c5dc129.js +5 -0
- package/.next/static/chunks/main-app-8ce4eaae11d4f233.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-ffc45e65538b6024.js +1 -0
- package/.next/static/chunks/webpack-0e63b9ea83aeb0a2.js +1 -0
- package/.next/trace-build +1 -1
- package/CHANGELOG.md +45 -1
- package/README.md +1 -1
- package/README.pt-BR.md +1 -1
- package/THIRD_PARTY_LICENSES.md +64 -0
- package/docs/UPDATE.md +17 -3
- package/docs/en/AI_ARCHITECTURE.md +2 -2
- package/docs/en/CHAT_COMMANDS.md +1 -1
- package/docs/en/CONFIGURATION.md +1 -1
- package/docs/en/DESIGN.md +1 -1
- package/docs/en/FAQ.md +3 -3
- package/docs/en/GOALS_SPECS_ISSUES.md +1 -1
- package/docs/en/MCP.md +2 -2
- package/docs/en/PLUGINS.md +2 -2
- package/docs/en/PORTABLE_MODE.md +1 -1
- package/docs/en/PUBLISHING.md +14 -15
- package/docs/en/README.md +1 -1
- package/docs/en/SECURITY.md +3 -3
- package/docs/en/START_MODE.md +1 -1
- package/docs/en/TELEGRAM.md +1 -1
- package/docs/en/TROUBLESHOOTING.md +1 -1
- package/docs/en/VPS_MODE.md +2 -2
- package/docs/pt/AI_ARCHITECTURE.md +2 -2
- package/docs/pt/CHAT_COMMANDS.md +1 -1
- package/docs/pt/CONFIGURATION.md +1 -1
- package/docs/pt/DESIGN.md +1 -1
- package/docs/pt/FAQ.md +3 -3
- package/docs/pt/GOALS_SPECS_ISSUES.md +1 -1
- package/docs/pt/MCP.md +1 -1
- package/docs/pt/PLUGINS.md +2 -2
- package/docs/pt/PORTABLE_MODE.md +1 -1
- package/docs/pt/PUBLISHING.md +6 -7
- package/docs/pt/README.md +1 -1
- package/docs/pt/SECURITY.md +3 -3
- package/docs/pt/START_MODE.md +1 -1
- package/docs/pt/TELEGRAM.md +1 -1
- package/docs/pt/TROUBLESHOOTING.md +2 -2
- package/docs/pt/VPS_MODE.md +1 -1
- package/package.json +10 -9
- package/scripts/publish-public.mjs +21 -16
- package/.next/server/chunks/1249.js +0 -910
- package/.next/server/chunks/1572.js +0 -1
- package/.next/server/chunks/158.js +0 -21
- package/.next/server/chunks/1619.js +0 -188
- package/.next/server/chunks/162.js +0 -1
- package/.next/server/chunks/1765.js +0 -1
- package/.next/server/chunks/1845.js +0 -462
- package/.next/server/chunks/2341.js +0 -1
- package/.next/server/chunks/2495.js +0 -1
- package/.next/server/chunks/260.js +0 -1
- package/.next/server/chunks/288.js +0 -1
- package/.next/server/chunks/2960.js +0 -14
- package/.next/server/chunks/3050.js +0 -18
- package/.next/server/chunks/3056.js +0 -1
- package/.next/server/chunks/3131.js +0 -1
- package/.next/server/chunks/3234.js +0 -869
- package/.next/server/chunks/3266.js +0 -15
- package/.next/server/chunks/3550.js +0 -1
- package/.next/server/chunks/4467.js +0 -12
- package/.next/server/chunks/4616.js +0 -479
- package/.next/server/chunks/4619.js +0 -1
- package/.next/server/chunks/4804.js +0 -1
- package/.next/server/chunks/4832.js +0 -2
- package/.next/server/chunks/5060.js +0 -1
- package/.next/server/chunks/535.js +0 -1
- package/.next/server/chunks/5614.js +0 -1
- package/.next/server/chunks/6431.js +0 -1
- package/.next/server/chunks/6658.js +0 -1
- package/.next/server/chunks/6706.js +0 -1
- package/.next/server/chunks/683.js +0 -1
- package/.next/server/chunks/6873.js +0 -1
- package/.next/server/chunks/7225.js +0 -4
- package/.next/server/chunks/73.js +0 -17
- package/.next/server/chunks/7514.js +0 -1
- package/.next/server/chunks/7589.js +0 -22
- package/.next/server/chunks/7622.js +0 -1
- package/.next/server/chunks/7949.js +0 -1
- package/.next/server/chunks/7971.js +0 -1
- package/.next/server/chunks/7989.js +0 -1
- package/.next/server/chunks/8497.js +0 -1
- package/.next/server/chunks/850.js +0 -1
- package/.next/server/chunks/8623.js +0 -1
- package/.next/server/chunks/8719.js +0 -417
- package/.next/server/chunks/8762.js +0 -15
- package/.next/server/chunks/9676.js +0 -1
- package/.next/server/chunks/9680.js +0 -1
- package/.next/server/chunks/9969.js +0 -3
- package/.next/static/chunks/2831-d7f6495bf43f4f9d.js +0 -4
- package/.next/static/chunks/3219-486bddbf87074d04.js +0 -1
- package/.next/static/chunks/3775-82dcdf23109aa5bf.js +0 -1
- package/.next/static/chunks/4263-adecb5b466380b6e.js +0 -1
- package/.next/static/chunks/6834-4759af1ce7d95fb6.js +0 -32
- package/.next/static/chunks/6836-341614c5418e2aa4.js +0 -1
- package/.next/static/chunks/7555-d2209e697b0a798e.js +0 -1
- package/.next/static/chunks/8306-7418693cd7fd5861.js +0 -1
- package/.next/static/chunks/8370-8b3e7106703024ce.js +0 -12
- package/.next/static/chunks/9219-4a39a98b5502d9d1.js +0 -1
- package/.next/static/chunks/9562-4b50b4e408bc0a42.js +0 -1
- package/.next/static/chunks/9690-ea874aec65263b9d.js +0 -1
- package/.next/static/chunks/app/(app)/activity/page-cf8d67941440bdce.js +0 -1
- package/.next/static/chunks/app/(app)/agents/[handle]/page-7baa24f1ae8bc400.js +0 -1
- package/.next/static/chunks/app/(app)/code/page-b342d74807e8b914.js +0 -1
- package/.next/static/chunks/app/(app)/config/page-1e68ba8d20215d67.js +0 -1
- package/.next/static/chunks/app/(app)/costs/page-a58d759eec6048df.js +0 -1
- package/.next/static/chunks/app/(app)/cron/page-cc7f4e3d8ab5618f.js +0 -1
- package/.next/static/chunks/app/(app)/dashboard/page-7757c33acf751c4c.js +0 -1
- package/.next/static/chunks/app/(app)/docs/[id]/page-95c52cf457d869ef.js +0 -1
- package/.next/static/chunks/app/(app)/docs/page-fbc50cd357d5e2ca.js +0 -1
- package/.next/static/chunks/app/(app)/error-988cd28480809861.js +0 -1
- package/.next/static/chunks/app/(app)/github/page-dac138256ed91e65.js +0 -1
- package/.next/static/chunks/app/(app)/goals/page-f87d40f6832d63b3.js +0 -1
- package/.next/static/chunks/app/(app)/inbox/page-49c1293e0d98874f.js +0 -12
- package/.next/static/chunks/app/(app)/knowledge/page-18fca436883ed5cc.js +0 -1
- package/.next/static/chunks/app/(app)/layout-c9778f98c0103f74.js +0 -1
- package/.next/static/chunks/app/(app)/models/page-030c085cd7767495.js +0 -1
- package/.next/static/chunks/app/(app)/notifications/page-12af3fee8b36a00e.js +0 -12
- package/.next/static/chunks/app/(app)/org/page-576001ff4a820744.js +0 -12
- package/.next/static/chunks/app/(app)/organizations/page-b973e1eee6e56baf.js +0 -1
- package/.next/static/chunks/app/(app)/page-cef52fc5f4fd4418.js +0 -1
- package/.next/static/chunks/app/(app)/planner/page-da2db56914346192.js +0 -1
- package/.next/static/chunks/app/(app)/plugins/page-3b78b76ecb21d616.js +0 -1
- package/.next/static/chunks/app/(app)/pm/page-78303379c1ea5dc5.js +0 -1
- package/.next/static/chunks/app/(app)/prepare-deploy/page-98b1bd3bf712bb60.js +0 -1
- package/.next/static/chunks/app/(app)/profile/page-de24af53de0ef2b2.js +0 -1
- package/.next/static/chunks/app/(app)/pulse/page-db7fd63369c01fa2.js +0 -1
- package/.next/static/chunks/app/(app)/reports/[id]/page-cc7f4e3d8ab5618f.js +0 -1
- package/.next/static/chunks/app/(app)/reports/page-97ab95e6f8b77b62.js +0 -1
- package/.next/static/chunks/app/(app)/routines/page-cf6a3331775ca11b.js +0 -1
- package/.next/static/chunks/app/(app)/search/page-3960825f66b05606.js +0 -1
- package/.next/static/chunks/app/(app)/security/page-53b0770355cf7aa4.js +0 -1
- package/.next/static/chunks/app/(app)/skills/page-809a73b94861f8b8.js +0 -1
- package/.next/static/chunks/app/(app)/tasks/page-b2497927d127f7aa.js +0 -1
- package/.next/static/chunks/app/(app)/test-dev/page-93ec5d89e2afb612.js +0 -1
- package/.next/static/chunks/app/(app)/update/page-a23322af4e59a93c.js +0 -1
- package/.next/static/chunks/app/(auth)/login/page-446681bfb762cb05.js +0 -1
- package/.next/static/chunks/app/(auth)/onboarding/page-2b8cb3e0b024c995.js +0 -1
- package/.next/static/chunks/app/_not-found/page-dc38b02aebeab535.js +0 -1
- package/.next/static/chunks/app/api/locks/acquire/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/models/progress/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/passkey/authenticate/options/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/passkey/authenticate/verify/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/passkey/register/options/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/passkey/register/verify/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/stream/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/sync/file/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/telegram/poll/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/upload/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/api/v1/[[...path]]/route-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/app/error-09899a13c38b6e89.js +0 -1
- package/.next/static/chunks/app/global-error-c2ea8fef715f226d.js +0 -1
- package/.next/static/chunks/app/layout-e6008e66aea1a849.js +0 -1
- package/.next/static/chunks/main-722e16032e7764d1.js +0 -5
- package/.next/static/chunks/main-app-761880af2b6f1962.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-eacef2b697bd0982.js +0 -1
- package/.next/static/chunks/webpack-222e3894b78c67db.js +0 -1
- package/docs/assets/blackhole.svg +0 -37
- /package/.next/static/{fb-rRThu8P8AXEQQBbLgT → ehoxBsPzAtE_FyZ2VpMF0}/_buildManifest.js +0 -0
- /package/.next/static/{fb-rRThu8P8AXEQQBbLgT → ehoxBsPzAtE_FyZ2VpMF0}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[717],{2710:(e,t,n)=>{n.d(t,{qV:()=>o});let r=["javascript:","data:","vbscript:"];function o(e){let t;try{t=new URL(e)}catch{return!0}return!r.includes(t.protocol)}},3571:(e,t,n)=>{n.d(t,{M:()=>eT});var r=n(5036);let o=Object.create(null),i=e=>globalThis.process?.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?o:globalThis),s=new Proxy(o,{get:(e,t)=>i()[t]??o[t],has:(e,t)=>t in i()||t in o,set:(e,t,n)=>(i(!0)[t]=n,!0),deleteProperty(e,t){if(!t)return!1;let n=i(!0);return delete n[t],!0},ownKeys:()=>Object.keys(i(!0))});function a(e,t){return void 0!==r&&r.env?r.env[e]??t:"u">typeof Deno?Deno.env.get(e)??t:"u">typeof Bun?Bun.env[e]??t:t}s.NODE_ENV,Object.freeze({get BETTER_AUTH_SECRET(){return a("BETTER_AUTH_SECRET")},get AUTH_SECRET(){return a("AUTH_SECRET")},get BETTER_AUTH_TELEMETRY(){return a("BETTER_AUTH_TELEMETRY")},get BETTER_AUTH_TELEMETRY_ID(){return a("BETTER_AUTH_TELEMETRY_ID")},get NODE_ENV(){return a("NODE_ENV","development")},get PACKAGE_VERSION(){return a("PACKAGE_VERSION","0.0.0")},get BETTER_AUTH_TELEMETRY_ENDPOINT(){return a("BETTER_AUTH_TELEMETRY_ENDPOINT","")}});let l={OK:200,CREATED:201,ACCEPTED:202,NO_CONTENT:204,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,TEMPORARY_REDIRECT:307,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,"I'M_A_TEAPOT":418,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE:431,UNAVAILABLE_FOR_LEGAL_REASONS:451,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511};var u=class extends Error{constructor(e="INTERNAL_SERVER_ERROR",t,n={},r="number"==typeof e?e:l[e]){super(t?.message,t?.cause?{cause:t.cause}:void 0),this.status=e,this.body=t,this.headers=n,this.statusCode=r,this.name="APIError",this.status=e,this.headers=n,this.statusCode=r,this.body=t}};Symbol.for("better-call:api-error-headers"),function(e,t){class n extends e{#e;constructor(...e){if(function(){let e=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit");return void 0===e?Object.isExtensible(Error):Object.prototype.hasOwnProperty.call(e,"writable")?e.writable:void 0!==e.set}()){const t=Error.stackTraceLimit;Error.stackTraceLimit=0,super(...e),Error.stackTraceLimit=t}else super(...e);const t=Error().stack;t&&(this.#e=function(e){let t=e.split("\n at ");return t.length<=1?e:(t.splice(1,1),t.join("\n at "))}(t.replace(/^Error/,this.name)))}get errorStack(){return this.#e}}Object.defineProperty(n.prototype,"constructor",{get:()=>t,enumerable:!1,configurable:!0})}(u,Error);var c=class extends Error{constructor(e,t){super(e,t),this.name="BetterAuthError",this.message=e,this.stack=""}};function f(e){let t=e.length;for(;t>0&&47===e.charCodeAt(t-1);)t--;return t===e.length?e:e.slice(0,t)}function d(e,t="/api/auth"){try{let t=new URL(e);if("http:"!==t.protocol&&"https:"!==t.protocol)throw new c(`Invalid base URL: ${e}. URL must include 'http://' or 'https://'`)}catch(t){if(t instanceof c)throw t;throw new c(`Invalid base URL: ${e}. Please provide a valid base URL.`,{cause:t})}if(function(e){try{return"/"!==(f(new URL(e).pathname)||"/")}catch{throw new c(`Invalid base URL: ${e}. Please provide a valid base URL.`)}}(e))return e;let n=f(e);return t&&"/"!==t?(t=t.startsWith("/")?t:`/${t}`,`${n}${t}`):n}let p={proto:/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,constructor:/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,protoShort:/"__proto__"\s*:/,constructorShort:/"constructor"\s*:/},h=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/,E={true:!0,false:!1,null:null,undefined:void 0,nan:NaN,infinity:1/0,"-infinity":-1/0},T=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,7}))?(?:Z|([+-])(\d{2}):(\d{2}))$/;var v=n(2710);let g={id:"redirect",name:"Redirect",hooks:{onSuccess(e){if(e.data?.url&&e.data?.redirect&&(0,v.qV)(e.data.url)&&"u">typeof window&&window.location&&window.location)try{window.location.href=e.data.url}catch{}}}},b=(e,t,n,r)=>(e.events=e.events||{},e.events[n+10]||(e.events[n+10]=r(t=>{e.events[n].reduceRight((e,t)=>(t(e),e),{shared:{},...t})})),e.events[n]=e.events[n]||[],e.events[n].push(t),()=>{let r=e.events[n],o=r.indexOf(t);r.splice(o,1),r.length||(delete e.events[n],e.events[n+10](),delete e.events[n+10])});function y(e){if("object"!=typeof e||null===e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function O(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!O(e[n],t[n]))return!1;return!0}if(y(e)&&y(t)){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n)if(!(r in t)||!O(e[r],t[r]))return!1;return!0}return!1}let w=Symbol.for("better-auth:broadcast-channel");var R=class{listeners=new Set;name;constructor(e="better-auth.message"){this.name=e}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}post(e){if("u">typeof window)try{localStorage.setItem(this.name,JSON.stringify({...e,timestamp:Math.floor(Date.now()/1e3)}))}catch{}}setup(){if("u"<typeof window||void 0===window.addEventListener)return()=>{};let e=e=>{if(e.key!==this.name)return;let t=JSON.parse(e.newValue??"{}");t?.event==="session"&&t?.data&&this.listeners.forEach(e=>e(t))};return window.addEventListener("storage",e),()=>{window.removeEventListener("storage",e)}}};function _(e="better-auth.message"){return globalThis[w]||(globalThis[w]=new R(e)),globalThis[w]}let m=Symbol.for("better-auth:focus-manager");var S=class{listeners=new Set;subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setFocused(e){this.listeners.forEach(t=>t(e))}setup(){if("u"<typeof window||"u"<typeof document||void 0===window.addEventListener)return()=>{};let e=()=>{"visible"===document.visibilityState&&this.setFocused(!0)};return document.addEventListener("visibilitychange",e,!1),()=>{document.removeEventListener("visibilitychange",e,!1)}}};function A(){return globalThis[m]||(globalThis[m]=new S),globalThis[m]}let L=Symbol.for("better-auth:online-manager");var P=class{listeners=new Set;isOnline="u"<typeof navigator||navigator.onLine;subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setOnline(e){this.isOnline=e,this.listeners.forEach(t=>t(e))}setup(){if("u"<typeof window||void 0===window.addEventListener)return()=>{};let e=()=>this.setOnline(!0),t=()=>this.setOnline(!1);return window.addEventListener("online",e,!1),window.addEventListener("offline",t,!1),()=>{window.removeEventListener("online",e,!1),window.removeEventListener("offline",t,!1)}}};function U(){return globalThis[L]||(globalThis[L]=new P),globalThis[L]}let I=()=>Math.floor(Date.now()/1e3),N=[],D=0,C=globalThis.nanostoresGlobal||={epoch:0},j=e=>{let t=[],n={get:()=>(n.lc||n.listen(()=>{})(),n.value),init:e,lc:0,listen:e=>(n.lc=t.push(e),()=>{for(let t=D+4;t<N.length;)N[t]===e?N.splice(t,4):t+=4;let r=t.indexOf(e);~r&&(t.splice(r,1),--n.lc||n.off())}),notify(e,r){C.epoch++;let o=!N.length;for(let o of t)N.push(o,n.value,e,r);if(o){for(D=0;D<N.length;D+=4)N[D](N[D+1],N[D+2],N[D+3]);N.length=0}},off(){},set(e){let t=n.value;t!==e&&(n.value=e,n.notify(t))},subscribe(e){let t=n.listen(e);return e(n.value),t},value:e};return n};function k(e){return"object"==typeof e&&null!==e&&"data"in e&&"error"in e?e:{data:e,error:null}}function B(e,t){return O(e.data,t.data)&&e.error===t.error&&e.isPending===t.isPending&&e.isRefetching===t.isRefetching&&e.refetch===t.refetch}function F(e){if(null===e||"object"!=typeof e)return!1;let t=Object.getPrototypeOf(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.iterator in e)&&(!(Symbol.toStringTag in e)||"[object Module]"===Object.prototype.toString.call(e))}function x(e){return(...t)=>t.reduce((t,n)=>(function e(t,n,r=".",o){if(!F(n))return e(t,{},r,o);let i={...n};for(let n of Object.keys(t)){if("__proto__"===n||"constructor"===n)continue;let s=t[n];null!=s&&(o&&o(i,n,s,r)||(Array.isArray(s)&&Array.isArray(i[n])?i[n]=[...s,...i[n]]:F(s)&&F(i[n])?i[n]=e(s,i[n],(r?`${r}.`:"")+n.toString(),o):i[n]=s))}return i})(t,n,"",e),{})}let M=x();x((e,t,n)=>{if(void 0!==e[t]&&"function"==typeof n)return e[t]=n(e[t]),!0}),x((e,t,n)=>{if(Array.isArray(e[t])&&"function"==typeof n)return e[t]=n(e[t]),!0});var $=Object.defineProperty,q=Object.defineProperties,H=Object.getOwnPropertyDescriptors,V=Object.getOwnPropertySymbols,W=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable,Y=(e,t,n)=>t in e?$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,K=(e,t)=>{for(var n in t||(t={}))W.call(t,n)&&Y(e,n,t[n]);if(V)for(var n of V(t))G.call(t,n)&&Y(e,n,t[n]);return e},Q=(e,t)=>q(e,H(t)),X=class extends Error{constructor(e,t,n){super(t||e.toString(),{cause:n}),this.status=e,this.statusText=t,this.error=n,Error.captureStackTrace(this,this.constructor)}},J=async(e,t)=>{var n,r,o,i,s,a;let l=t||{},u={onRequest:[null==t?void 0:t.onRequest],onResponse:[null==t?void 0:t.onResponse],onSuccess:[null==t?void 0:t.onSuccess],onError:[null==t?void 0:t.onError],onRetry:[null==t?void 0:t.onRetry]};if(!t||!(null==t?void 0:t.plugins))return{url:e,options:l,hooks:u};for(let c of(null==t?void 0:t.plugins)||[]){if(c.init){let r=await (null==(n=c.init)?void 0:n.call(c,e.toString(),t));l=r.options||l,e=r.url}u.onRequest.push(null==(r=c.hooks)?void 0:r.onRequest),u.onResponse.push(null==(o=c.hooks)?void 0:o.onResponse),u.onSuccess.push(null==(i=c.hooks)?void 0:i.onSuccess),u.onError.push(null==(s=c.hooks)?void 0:s.onError),u.onRetry.push(null==(a=c.hooks)?void 0:a.onRetry)}return{url:e,options:l,hooks:u}},z=class{constructor(e){this.options=e}shouldAttemptRetry(e,t){return this.options.shouldRetry?Promise.resolve(e<this.options.attempts&&this.options.shouldRetry(t)):Promise.resolve(e<this.options.attempts)}getDelay(){return this.options.delay}},Z=class{constructor(e){this.options=e}shouldAttemptRetry(e,t){return this.options.shouldRetry?Promise.resolve(e<this.options.attempts&&this.options.shouldRetry(t)):Promise.resolve(e<this.options.attempts)}getDelay(e){return Math.min(this.options.maxDelay,this.options.baseDelay*2**e)}},ee=async e=>{let t={},n=async e=>"function"==typeof e?await e():e;if(null==e?void 0:e.auth){if("Bearer"===e.auth.type){let r=await n(e.auth.token);if(!r)return t;t.authorization=`Bearer ${r}`}else if("Basic"===e.auth.type){let[r,o]=await Promise.all([n(e.auth.username),n(e.auth.password)]);if(!r||!o)return t;t.authorization=`Basic ${btoa(`${r}:${o}`)}`}else if("Custom"===e.auth.type){let[r,o]=await Promise.all([n(e.auth.prefix),n(e.auth.value)]);if(!o)return t;t.authorization=`${null!=r?r:""} ${o}`}}return t},et=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function en(e){if(void 0===e)return!1;let t=typeof e;return"string"===t||"number"===t||"boolean"===t||null===t||"object"===t&&(!!Array.isArray(e)||!e.buffer&&(e.constructor&&"Object"===e.constructor.name||"function"==typeof e.toJSON))}function er(e){try{return JSON.parse(e)}catch(t){return e}}function eo(e){return"function"==typeof e}function ei(...e){let t={};for(let n of e)if(n)if(n instanceof Headers)n.forEach((e,n)=>{t[n]=e});else for(let[e,r]of Array.isArray(n)?n:Object.entries(n))null!=r&&(t[e]=r);return t}async function es(e){let t=new Headers(ei(null==e?void 0:e.headers,await ee(e)));if(!t.has("content-type")){let n=en(null==e?void 0:e.body)?"application/json":null;n&&t.set("content-type",n)}return t}var ea=class e extends Error{constructor(t,n){super(n||JSON.stringify(t,null,2)),this.issues=t,Object.setPrototypeOf(this,e.prototype)}};async function el(e,t){let n=await e["~standard"].validate(t);if(n.issues)throw new ea(n.issues);return n.value}var eu=["get","post","put","patch","delete"],ec=async(e,t)=>{var n,r,o,i,s,a,l,u;let c,{hooks:f,url:d,options:p}=await J(e,t),h=function(e){if(null==e?void 0:e.customFetchImpl)return e.customFetchImpl;if("u">typeof globalThis&&eo(globalThis.fetch))return globalThis.fetch;if("u">typeof window&&eo(window.fetch))return window.fetch;throw Error("No fetch implementation found")}(p),E=new AbortController,T=null!=(n=p.signal)?n:E.signal,v=function(e,t){let{baseURL:n,params:r,query:o}=t||{query:{},params:{},baseURL:""},i=e.startsWith("http")?e.split("/").slice(0,3).join("/"):n||"";if(e.startsWith("@")){let t=e.toString().split("@")[1].split("/")[0];eu.includes(t)&&(e=e.replace(`@${t}/`,"/"))}i.endsWith("/")||(i+="/");let[s,a]=e.replace(i,"").split("?"),l=new URLSearchParams(a);for(let[e,t]of Object.entries(o||{})){let n;if(null!=t){if("string"==typeof t)n=t;else if(Array.isArray(t)){for(let n of t)l.append(e,n);continue}else n=JSON.stringify(t);l.set(e,n)}}let u=new Map;if(r)if(Array.isArray(r))for(let[e,t]of s.split("/").filter(e=>e.startsWith(":")).entries()){let n=r[e];u.set(t,String(n))}else for(let[e,t]of Object.entries(r))u.set(`:${e}`,String(t));s=(s=s.split("/").map(e=>(function(e,t){let n,r=e;for(let[e,n]of t)r=r.replace(e,n);if("."===(n=r)||".."===n)throw TypeError("Path parameters cannot be reserved path segments");return encodeURIComponent(r)})(e,u)).join("/")).replace(/^\/+/,"");let c=l.toString();return(c=c.length>0?`?${c}`.replace(/\+/g,"%20"):"",i.startsWith("http"))?new URL(`${s}${c}`,i):`${i}${s}${c}`}(d,p),g=await es(p),b=function(e,t){let n,{body:r}=e;return r?en(r)&&"string"!=typeof r?"application/x-www-form-urlencoded"===((n=t.get("content-type"))?n.split(";")[0].trim().toLowerCase():null)?new URLSearchParams(r).toString():JSON.stringify(r):r:null}(p,g),y=function(e,t){var n;if(null==t?void 0:t.method)return t.method.toUpperCase();if(e.startsWith("@")){let r=null==(n=e.split("@")[1])?void 0:n.split("/")[0];return eu.includes(r)?r.toUpperCase():(null==t?void 0:t.body)?"POST":"GET"}return(null==t?void 0:t.body)?"POST":"GET"}(d,p),O=Q(K({},p),{url:v,headers:g,body:b,method:y,signal:T});for(let e of f.onRequest)if(e){let t=await e(O);"object"==typeof t&&null!==t&&Object.assign(O,t)}("pipeTo"in O&&"function"==typeof O.pipeTo||"function"==typeof(null==(r=null==t?void 0:t.body)?void 0:r.pipe))&&!("duplex"in O)&&(O.duplex="half");let{clearTimeout:w}=(!(null==p?void 0:p.signal)&&(null==p?void 0:p.timeout)&&(c=setTimeout(()=>null==E?void 0:E.abort(),null==p?void 0:p.timeout)),{abortTimeout:c,clearTimeout:()=>{c&&clearTimeout(c)}}),R=await h(O.url,O);w();let _={response:R,request:O};for(let e of f.onResponse)if(e){let n=await e(Q(K({},_),{response:(null==(o=null==t?void 0:t.hookOptions)?void 0:o.cloneResponse)?R.clone():R}));n instanceof Response?R=n:"object"==typeof n&&null!==n&&(R=n.response)}if(R.ok){if("HEAD"===O.method)return{data:"",error:null};let e=function(e){let t=e.headers.get("content-type"),n=new Set(["image/svg","application/xml","application/xhtml","application/html"]);if(!t)return"json";let r=t.split(";").shift()||"";return et.test(r)?"json":n.has(r)||r.startsWith("text/")?"text":"blob"}(R),n={data:null,response:R,request:O};if("json"===e||"text"===e){let e=await R.text(),t=null!=(i=O.jsonParser)?i:er;n.data=await t(e)}else n.data=await R[e]();for(let e of((null==O?void 0:O.output)&&O.output&&!O.disableValidation&&(n.data=await el(O.output,n.data)),f.onSuccess))e&&await e(Q(K({},n),{response:(null==(s=null==t?void 0:t.hookOptions)?void 0:s.cloneResponse)?R.clone():R}));return(null==t?void 0:t.throw)?n.data:{data:n.data,error:null}}let m=null!=(a=null==t?void 0:t.jsonParser)?a:er,S=await R.text(),A=function(e){try{return JSON.parse(e),!0}catch(e){return!1}}(S),L=A?await m(S):null,P={response:R,responseText:S,request:O,error:Q(K({},L),{status:R.status,statusText:R.statusText})};for(let e of f.onError)e&&await e(Q(K({},P),{response:(null==(l=null==t?void 0:t.hookOptions)?void 0:l.cloneResponse)?R.clone():R}));if(null==t?void 0:t.retry){let n=function(e){if("number"==typeof e)return new z({type:"linear",attempts:e,delay:1e3});switch(e.type){case"linear":return new z(e);case"exponential":return new Z(e);default:throw Error("Invalid retry strategy")}}(t.retry),r=null!=(u=t.retryAttempt)?u:0;if(await n.shouldAttemptRetry(r,R)){for(let e of f.onRetry)e&&await e(_);let o=n.getDelay(r);return await new Promise(e=>setTimeout(e,o)),await ec(e,Q(K({},t),{retryAttempt:r+1}))}}if(null==t?void 0:t.throw)throw new X(R.status,R.statusText,A?L:S);return{data:null,error:Q(K({},L),{status:R.status,statusText:R.statusText})}},ef=n(5036);let ed=/[\p{Ll}\d]+|\p{Lu}+(?!\p{Ll})|\p{Lu}[\p{Ll}\d]+|\p{Lo}+/gu,ep=/['\u2019]/g;function eh(e){return(e.replace(ep,"").match(ed)??[]).map(e=>e.toLowerCase()).join("-")}var eE=n(2899);function eT(e){var t;let{pluginPathMethods:n,pluginsActions:r,pluginsAtoms:o,$fetch:i,$store:a,atomListeners:l}=(e=>{var t,n;let r,o,i,a,l,u,f,v="credentials"in Request.prototype,y=function(e,t,n,r){if(e)return d(e,t);if(!1!==r){let e=s.BETTER_AUTH_URL||s.NEXT_PUBLIC_BETTER_AUTH_URL||s.PUBLIC_BETTER_AUTH_URL||s.NUXT_PUBLIC_BETTER_AUTH_URL||s.NUXT_PUBLIC_AUTH_URL||("/"!==s.BASE_URL?s.BASE_URL:void 0);if(e)return d(e,t)}n?.headers.get("x-forwarded-host"),n?.headers.get("x-forwarded-proto");if(n){let e=function(e){try{let t=new URL(e);return"null"===t.origin?null:t.origin}catch{return null}}(n.url);if(!e)throw new c("Could not get origin from request. Please provide a valid base URL.");return d(e,t)}if("u">typeof window&&window.location)return d(window.location.origin,t)}(e?.baseURL,e?.basePath,void 0,void 0)??(e=>{if(void 0!==ef){if(ef.env.NEXT_PUBLIC_AUTH_URL)return ef.env.NEXT_PUBLIC_AUTH_URL;if("u"<typeof window){if(ef.env.NEXTAUTH_URL)try{return ef.env.NEXTAUTH_URL}catch{}if(ef.env.VERCEL_URL)try{let t=ef.env.VERCEL_URL.startsWith("http")?"":"https://";return`${new URL(`${t}${ef.env.VERCEL_URL}`).origin}${e??"/api/auth"}`}catch{}}}})(e?.basePath)??"/api/auth",w=e?.plugins?.flatMap(e=>e.fetchPlugins).filter(e=>void 0!==e)||[],R={id:"lifecycle-hooks",name:"lifecycle-hooks",hooks:{onSuccess:e?.fetchOptions?.onSuccess,onError:e?.fetchOptions?.onError,onRequest:e?.fetchOptions?.onRequest,onResponse:e?.fetchOptions?.onResponse}},{onSuccess:m,onError:S,onRequest:L,onResponse:P,...N}=e?.fetchOptions||{},D=(t={baseURL:y,...v?{credentials:"include"}:{},method:"GET",jsonParser:e=>e?function(e,t={strict:!0}){return function(e,t={}){let{strict:n=!1,warnings:r=!1,reviver:o,parseDates:i=!0}=t;if("string"!=typeof e)return e;let s=e.trim(),a=s.toLowerCase();if(a.length<=9&&a in E)return E[a];if(!h.test(s)){if(n)throw SyntaxError("[better-json] Invalid JSON");return e}if(Object.entries(p).some(([e,t])=>{let n=t.test(s);return n&&r&&console.warn(`[better-json] Detected potential prototype pollution attempt using ${e} pattern`),n})&&n)throw Error("[better-json] Potential prototype pollution attempt detected");try{return JSON.parse(s,(e,t)=>{if("__proto__"===e||"constructor"===e&&t&&"object"==typeof t&&"prototype"in t){r&&console.warn(`[better-json] Dropping "${e}" key to prevent prototype pollution`);return}if(i&&"string"==typeof t){let e=function(e){let t=T.exec(e);if(!t)return null;let[,n,r,o,i,s,a,l,u,c,f]=t,d=new Date(Date.UTC(parseInt(n,10),parseInt(r,10)-1,parseInt(o,10),parseInt(i,10),parseInt(s,10),parseInt(a,10),l?parseInt(l.padEnd(3,"0"),10):0));if(u){let e=(60*parseInt(c,10)+parseInt(f,10))*("+"===u?-1:1);d.setUTCMinutes(d.getUTCMinutes()+e)}return d instanceof Date&&!isNaN(d.getTime())?d:null}(t);if(e)return e}return o?o(e,t):t})}catch(t){if(n)throw t;return e}}(e,t)}(e,{strict:!1}):null,customFetchImpl:fetch,...N,plugins:[R,...N.plugins||[],...e?.disableDefaultFetchPlugins?[]:[g],...w]},async function(e,n){let r,o=Q(K(K({},t),n),{headers:ei(null==t?void 0:t.headers,null==n?void 0:n.headers),plugins:[...(null==t?void 0:t.plugins)||[],(r=t||{},{id:"apply-schema",name:"Apply Schema",version:"1.0.0",async init(e,t){var n,o,i,s;let a=(null==(o=null==(n=r.plugins)?void 0:n.find(t=>{var n;return null!=(n=t.schema)&&!!n.config&&(e.startsWith(t.schema.config.baseURL||"")||e.startsWith(t.schema.config.prefix||""))}))?void 0:o.schema)||r.schema;if(a){let n=e;(null==(i=a.config)?void 0:i.prefix)&&n.startsWith(a.config.prefix)&&(n=n.replace(a.config.prefix,""),a.config.baseURL&&(e=e.replace(a.config.prefix,a.config.baseURL))),(null==(s=a.config)?void 0:s.baseURL)&&n.startsWith(a.config.baseURL)&&(n=n.replace(a.config.baseURL,"")),n.startsWith("/")&&"@"===n.charAt(1)&&(n=n.substring(1));let r=a.schema[n];if(r){let n=null==t?void 0:t.headers;if(r.headers&&!(null==t?void 0:t.disableValidation)){let e={};if(null==t?void 0:t.headers){if(t.headers instanceof Headers)t.headers.forEach((t,n)=>{e[n.toLowerCase()]=t});else if("object"==typeof t.headers)for(let[n,r]of Object.entries(t.headers))null!=r&&(e[n.toLowerCase()]=r)}let o=await el(r.headers,e),i={};for(let[e,t]of Object.entries(o))i[e.toLowerCase()]=t;n=i}let o=Q(K({},t),{method:r.method,output:r.output,headers:n});return(null==t?void 0:t.disableValidation)||(o=Q(K({},o),{body:r.input?await el(r.input,null==t?void 0:t.body):null==t?void 0:t.body,params:r.params?await el(r.params,null==t?void 0:t.params):null==t?void 0:t.params,query:r.query?await el(r.query,null==t?void 0:t.query):null==t?void 0:t.query})),{url:e,options:o}}}return{url:e,options:t}}}),...(null==n?void 0:n.plugins)||[]]});if(null==t?void 0:t.catchAllError)try{return await ec(e,o)}catch(e){return{data:null,error:{status:500,statusText:"Fetch Error",message:"Fetch related error. Captured by catchAllError option. See error property for more details.",error:e}}}return await ec(e,o)}),{$sessionSignal:C,session:F,broadcastSessionUpdate:x}=(o=j(!1),a=j({data:null,error:null,isPending:!0,isRefetching:!1,refetch:i=e=>u(e)}),b(a,({newValue:e,abort:t})=>{B(a.value,e)&&t()},2,e=>{let t=a.set,n=a.setKey;return a.setKey&&(a.setKey=(t,r)=>{let o;if(e({abort:()=>{o=!0},changed:t,newValue:{...a.value,[t]:r}}),!o)return n(t,r)}),a.set=n=>{let r;if(e({abort:()=>{r=!0},newValue:n}),!r)return t(n)},()=>{a.set=t,a.setKey=n}}),l=e=>{if(r!==e)return;let t=a.get();r=void 0,(t.isPending||t.isRefetching)&&a.set({...t,isPending:!1,isRefetching:!1,refetch:i})},u=async e=>{r?.abort();let t=new AbortController;r=t;let n=a.get();a.set({...n,isPending:null===n.data,isRefetching:!0,error:null,refetch:i});try{var o;let n=await D("/get-session",{method:"GET",query:e?.query,signal:t.signal});if(t.signal.aborted)return void l(t);let{data:r,error:s}=k(n);if(r?.needsRefresh)try{let e=await D("/get-session",{method:"POST",signal:t.signal});if(t.signal.aborted)return void l(t);({data:r,error:s}=k(e))}catch{if(t.signal.aborted)return void l(t)}if(s){let e=a.get(),t=s?.status===401;a.set({data:t?null:e.data,error:s,isPending:!1,isRefetching:!1,refetch:i});return}let u=(o=r)&&(null!==o.session||null!==o.user)?o:null,c=a.get(),f=null!=c.data&&null!=u&&O(c.data,u)?c.data:u;a.set({data:f,error:null,isPending:!1,isRefetching:!1,refetch:i})}catch(n){if(t.signal.aborted)return void l(t);let e=a.get();a.set({data:e.data,error:n,isPending:!1,isRefetching:!1,refetch:i})}},f=()=>{},n=()=>{let t;"u"<typeof window||(t=setTimeout(()=>{u()},0));let n=function(e){let{fetchSession:t,shouldPollSession:n=()=>!0,sessionSignal:r,options:o={}}=e,i=o.sessionOptions?.refetchInterval??0,s=o.sessionOptions?.refetchOnWindowFocus??!0,a=o.sessionOptions?.refetchWhenOffline??!1,l={isInitialized:!1,lastSessionRequest:0},u=e=>{if(a||U().isOnline){if(e?.event==="storage")return void t();if(e?.event==="poll"){l.lastSessionRequest=I(),t();return}if(e?.event==="visibilitychange"){if(I()-l.lastSessionRequest<5)return;l.lastSessionRequest=I(),t();return}t()}};return{init:()=>{l.isInitialized||(l.isInitialized=!0,i&&i>0&&(l.pollInterval=setInterval(()=>{n()&&u({event:"poll"})},1e3*i)),l.unsubscribeBroadcast=_().subscribe(()=>{u({event:"storage"})}),s&&(l.unsubscribeFocus=A().subscribe(()=>{u({event:"visibilitychange"})})),l.unsubscribeOnline=U().subscribe(e=>{e&&u({event:"visibilitychange"})}),l.unsubscribeSignal=r.listen(()=>{t()}),l.cleanupBroadcastSetup=_().setup(),l.cleanupFocusSetup=A().setup(),l.cleanupOnlineSetup=U().setup())},cleanup:()=>{l.isInitialized&&(l.pollInterval&&(clearInterval(l.pollInterval),l.pollInterval=void 0),l.unsubscribeBroadcast&&(l.unsubscribeBroadcast(),l.unsubscribeBroadcast=void 0),l.unsubscribeFocus&&(l.unsubscribeFocus(),l.unsubscribeFocus=void 0),l.unsubscribeOnline&&(l.unsubscribeOnline(),l.unsubscribeOnline=void 0),l.unsubscribeSignal&&(l.unsubscribeSignal(),l.unsubscribeSignal=void 0),l.cleanupBroadcastSetup&&(l.cleanupBroadcastSetup(),l.cleanupBroadcastSetup=void 0),l.cleanupFocusSetup&&(l.cleanupFocusSetup(),l.cleanupFocusSetup=void 0),l.cleanupOnlineSetup&&(l.cleanupOnlineSetup(),l.cleanupOnlineSetup=void 0),l.isInitialized=!1,l.lastSessionRequest=0)},triggerRefetch:u,broadcastSessionUpdate:e=>{_().post({event:"session",data:{trigger:e},clientId:Math.random().toString(36).substring(7)})}}}({fetchSession:u,shouldPollSession:()=>null!=a.get().data,sessionSignal:o,options:e});return n.init(),f=n.broadcastSessionUpdate,()=>{t&&clearTimeout(t);let e=r;e?.abort(),e&&l(e),n.cleanup()}},b(a,e=>{let t=n(e);t&&a.events[6].push(t)},5,e=>{let t=a.listen;a.listen=(...n)=>(a.lc||a.active||(a.active=!0,e()),t(...n));let n=a.off;return a.events[6]=[],a.off=()=>{n(),setTimeout(()=>{if(a.active&&!a.lc){for(let e of(a.active=!1,a.events[6]))e();a.events[6]=[]}},1e3)},()=>{a.listen=t,a.off=n}}),{session:a,$sessionSignal:o,broadcastSessionUpdate:e=>f(e)}),$=e?.plugins||[],q={},H={$sessionSignal:C,session:F},V={"/sign-out":"POST","/revoke-sessions":"POST","/revoke-other-sessions":"POST","/delete-user":"POST"},W=[{signal:"$sessionSignal",matcher:e=>"/sign-out"===e||"/update-user"===e||"/update-session"===e||"/sign-up/email"===e||"/sign-in/email"===e||"/delete-user"===e||"/verify-email"===e||"/revoke-sessions"===e||"/revoke-session"===e||"/revoke-other-sessions"===e||"/change-email"===e||"/change-password"===e,callback(e){"/sign-out"===e?x("signout"):("/update-user"===e||"/update-session"===e)&&x("updateUser")}}];for(let e of $)e.getAtoms&&Object.assign(H,e.getAtoms?.(D)),e.pathMethods&&Object.assign(V,e.pathMethods),e.atomListeners&&W.push(...e.atomListeners);let G={notify:e=>{H[e].set(!H[e].get())},listen:(e,t)=>{H[e].subscribe(t)},atoms:H};for(let t of $)t.getActions&&(q=M(t.getActions?.(D,G,e)??{},q));return{get baseURL(){return y},pluginsActions:q,pluginsAtoms:H,pluginPathMethods:V,atomListeners:W,$fetch:D,$store:G}})(e),u={};for(let[e,t]of Object.entries(o))u[function(e){return`use${e.charAt(0).toUpperCase()+e.slice(1)}`}(e)]=()=>(function(e,t={}){let n=(0,eE.useRef)(e.get()),{keys:r,deps:o=[e,r]}=t,i=(0,eE.useCallback)(t=>{let o=e=>{n.current!==e&&(n.current=e,t())};if(o(e.value),r?.length){let t;return t=new Set(r).add(void 0),e.listen((e,n,r)=>{t.has(r)&&o(e,n,r)})}return e.listen(o)},o),s=()=>n.current;return(0,eE.useSyncExternalStore)(i,s,s)})(t);return t={...r,...u,$fetch:i,$store:a},function e(r=[]){return new Proxy(function(){},{get(n,o){var i;if("string"!=typeof o||"then"===o||"catch"===o||"finally"===o)return;let s=[...r,o],a=t;for(let e of s)if(a&&"object"==typeof a&&e in a)a=a[e];else{a=void 0;break}return"function"==typeof a?a:"object"==typeof(i=a)&&null!==i&&"get"in i&&"function"==typeof i.get&&"lc"in i&&"number"==typeof i.lc?a:e(s)},apply:async(e,t,s)=>{let a="/"+r.map(eh).join("/"),u=s[0]||{},c=s[1]||{},{query:f,fetchOptions:d,...p}=u,h={...c,...d},E=function(e,t,n){let r=t[e],{fetchOptions:o,query:i,...s}=n||{};return r||(o?.method?o.method:s&&Object.keys(s).length>0?"POST":"GET")}(a,n,u);return await i(a,{...h,body:"GET"===E?void 0:{...p,...h?.body||{}},query:f||h?.query,method:E,async onSuccess(e){if(await h?.onSuccess?.(e),!l||h.disableSignal)return;let t=l.filter(e=>e.matcher(a));if(!t.length)return;let n=new Set;for(let e of t){let t=o[e.signal];if(!t)return;if(n.has(e.signal))continue;n.add(e.signal);let r=t.get();setTimeout(()=>{t.set(!r)},10),e.callback?.(a)}}})}})}()}},4071:(e,t,n)=>{n.d(t,{N:()=>i});let r=Object.fromEntries(Object.entries({OTP_NOT_ENABLED:"OTP not enabled",OTP_HAS_EXPIRED:"OTP has expired",TOTP_NOT_ENABLED:"TOTP not enabled",TWO_FACTOR_NOT_ENABLED:"Two factor isn't enabled",BACKUP_CODES_NOT_ENABLED:"Backup codes aren't enabled",INVALID_BACKUP_CODE:"Invalid backup code",INVALID_CODE:"Invalid code",TOO_MANY_ATTEMPTS_REQUEST_NEW_CODE:"Too many attempts. Please request a new code.",ACCOUNT_TEMPORARILY_LOCKED:"Too many failed verification attempts. Your account is temporarily locked. Please try again later.",INVALID_TWO_FACTOR_COOKIE:"Invalid two factor cookie"}).map(([e,t])=>[e,{code:e,message:t,toString:()=>e}]));var o=n(2710);let i=e=>({id:"two-factor",version:"1.6.22",$InferServerPlugin:{},atomListeners:[{matcher:e=>e.startsWith("/two-factor/"),signal:"$sessionSignal"}],pathMethods:{"/two-factor/disable":"POST","/two-factor/enable":"POST","/two-factor/send-otp":"POST","/two-factor/generate-backup-codes":"POST","/two-factor/get-totp-uri":"POST","/two-factor/verify-totp":"POST","/two-factor/verify-otp":"POST","/two-factor/verify-backup-code":"POST"},fetchPlugins:[{id:"two-factor",name:"two-factor",hooks:{async onSuccess(t){if(t.data?.twoFactorRedirect){if(e?.onTwoFactorRedirect)return void await e.onTwoFactorRedirect({twoFactorMethods:t.data.twoFactorMethods});e?.twoFactorPage&&"u">typeof window&&(0,o.qV)(e.twoFactorPage)&&(window.location.href=e.twoFactorPage)}}}}],$ERROR_CODES:r})}}]);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7218],{20:(e,t,i)=>{i.d(t,{E:()=>o,e:()=>n});let o=["Cockpit","Hierarchy","Execution","Product","Knowledge","Operations","Inbox","System"],n=[{id:"home",title:"Home",href:"/",group:"Cockpit",tile:"Welcome — canonical knowledge & quick navigation",icon:"grid"},{id:"dashboard",title:"Dashboard",href:"/dashboard",group:"Cockpit",tile:"Cockpit hub — status at a glance",icon:"pulse"},{id:"organizations",title:"Organizations",href:"/organizations",group:"Hierarchy",tile:"Manage organizations & workspaces",icon:"grid"},{id:"org",title:"Org Chart",href:"/org",group:"Hierarchy",tile:"Hierarchy & delegation",icon:"agents"},{id:"agents",title:"Agent Studio",href:"/agents/ada",group:"Hierarchy",tile:"Configure each agent",icon:"bot"},{id:"code",title:"Code",href:"/code",group:"Execution",tile:"Code editor & repo files",icon:"terminal"},{id:"tasks",title:"Tasks",href:"/tasks",group:"Execution",tile:"Team kanban board",icon:"files"},{id:"cron",title:"Cron",href:"/cron",group:"Execution",tile:"Scheduled tasks & history",icon:"calendar"},{id:"routines",title:"Routines",href:"/routines",group:"Execution",tile:"Recurring automations",icon:"repeat"},{id:"goals",title:"Goals",href:"/goals",group:"Execution",tile:"Objective tree",icon:"target"},{id:"design",title:"Design",href:"/design",group:"Execution",tile:"Prototype the UI with the frontend agent before the plan",icon:"grid"},{id:"planner",title:"CEO Planner",href:"/planner",group:"Execution",tile:"Specs → issues → approval → 24/7",icon:"command"},{id:"test-dev",title:"Test Dev",href:"/test-dev",group:"Execution",tile:"Boot, navigate + validate the project",icon:"play"},{id:"pm",title:"Product Manager",href:"/pm",group:"Product",tile:"Sprints & backlog (PO)",icon:"goto"},{id:"reports",title:"Reports",href:"/reports",group:"Knowledge",tile:"Plans, reviews, audits",icon:"doc"},{id:"docs",title:"Docs",href:"/docs",group:"Knowledge",tile:"Architecture, API & PO docs",icon:"doc"},{id:"skills",title:"Skills",href:"/skills",group:"Knowledge",tile:"Agent procedure library",icon:"skill"},{id:"activity",title:"Activity",href:"/activity",group:"Knowledge",tile:"Agent action timeline",icon:"pulse"},{id:"knowledge",title:"Knowledge",href:"/knowledge",group:"Knowledge",tile:"KB index, coverage, gaps & agent recall",icon:"branch"},{id:"costs",title:"Costs",href:"/costs",group:"Operations",tile:"Spend by agent/provider",icon:"coins"},{id:"security",title:"Security",href:"/security",group:"Operations",tile:"Findings & security score",icon:"shield"},{id:"pulse",title:"Pulse",href:"/pulse",group:"Operations",tile:"Agent health & validation",icon:"pulse"},{id:"github",title:"Commit GitHub",href:"/github",group:"Operations",tile:"Push workspace to remote",icon:"git"},{id:"prepare-deploy",title:"Prepare Deploy",href:"/prepare-deploy",group:"Operations",tile:"Prod-prep + export clean source to a deploy repo",icon:"goto"},{id:"models",title:"Models",href:"/models",group:"Operations",tile:"Providers & local models",icon:"cpu"},{id:"update",title:"Update",href:"/update",group:"Operations",tile:"Detect & apply new versions",icon:"goto"},{id:"plugins",title:"Plugins",href:"/plugins",group:"Operations",tile:"Extensions & integrations",icon:"ext"},{id:"inbox",title:"Inbox",href:"/inbox",group:"Inbox",tile:"Approvals & escalations",icon:"inbox"},{id:"notifications",title:"Notifications",href:"/notifications",group:"Inbox",tile:"Passive alert feed",icon:"bell"},{id:"config",title:"Config",href:"/config",group:"System",tile:"Platform settings",icon:"settings"},{id:"profile",title:"Profile",href:"/profile",group:"System",tile:"Account & preferences",icon:"account"}]},1776:(e,t,i)=>{i.d(t,{e:()=>n});var o=i(7797);let n=(0,o.createServerReference)("00c24fecd5d4e2c99b78f6cfba9771178469d3d57b",o.callServer,void 0,o.findSourceMapURL,"pollUpdateResult")},2454:(e,t,i)=>{i.d(t,{SidebarToggle:()=>l});var o=i(4275),n=i(2899),r=i(888);let a=`
|
|
2
|
+
body.side-collapsed .side{width:58px!important;flex:0 0 58px!important;}
|
|
3
|
+
body.side-collapsed .side .nav-item{justify-content:center;padding-left:0;padding-right:0;position:relative;}
|
|
4
|
+
body.side-collapsed .side .nav-item>span:not(.nv-badge),
|
|
5
|
+
body.side-collapsed .side .nav-group-label,
|
|
6
|
+
body.side-collapsed .side .nav-search input,
|
|
7
|
+
body.side-collapsed .side .side-foot .pf{display:none!important;}
|
|
8
|
+
body.side-collapsed .side .nav-search{justify-content:center;}
|
|
9
|
+
body.side-collapsed .side .side-brand-wrap{overflow:hidden;}
|
|
10
|
+
body.side-collapsed .side .side-foot{justify-content:center;flex-wrap:wrap;gap:6px;}
|
|
11
|
+
body.side-collapsed .side .nv-badge{position:absolute;top:2px;right:6px;}
|
|
12
|
+
`;function l(){let[e,t]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{if(!document.getElementById("side-rail-style")){let e=document.createElement("style");e.id="side-rail-style",e.textContent=a,document.head.appendChild(e)}let e=!1;try{e="1"===localStorage.getItem("bx.sideCollapsed")}catch{}t(e),document.body.classList.toggle("side-collapsed",e)},[]),(0,o.jsx)("button",{className:"top-btn"+(e?" on":""),onClick:function(){t(e=>{let t=!e;document.body.classList.toggle("side-collapsed",t);try{localStorage.setItem("bx.sideCollapsed",t?"1":"0")}catch{}return t})},title:e?"Expand sidebar":"Collapse sidebar","aria-label":"Toggle sidebar",children:(0,o.jsx)(r.I,{name:"sidebarIcon",size:17})})}},2577:(e,t,i)=>{i.d(t,{H4:()=>l,Uy:()=>s,st:()=>a});let o=/Failed to find Server Action|older or newer deployment|ChunkLoadError|Loading chunk [\w-]+ failed|error loading dynamically imported module/i,n=/invariant expected layout router to be mounted/i;function r(e){return e?e instanceof Error?`${e.name} ${e.message}`:"string"==typeof e?e:String(e?.message??e):""}function a(e){return o.test(r(e))}function l(e){let t=r(e);return o.test(t)||n.test(t)}function s(){try{let e="cn-skew-reload-at",t=Number(window.sessionStorage.getItem(e)||0);if(Date.now()-t<2e4)return;window.sessionStorage.setItem(e,String(Date.now()))}catch{}try{let e=new URL(window.location.href);e.searchParams.set("_r",String(Date.now())),window.location.replace(e.toString())}catch{window.location.reload()}}},3891:(e,t,i)=>{i.d(t,{ViewChrome:()=>l});var o=i(4275),n=i(888),r=i(20),a=i(869);function l({title:e,sub:t,right:i,icon:s,flush:d,children:c}){let u=(0,a.k)(),p=r.e.find(t=>t.title===e),g=s??p?.icon,h=p?u(`mod.${p.id}`):e;return(0,o.jsxs)("div",{className:"app-view",children:[(0,o.jsxs)("div",{className:"view-head",children:[g&&(0,o.jsx)("div",{className:"vh-icon",children:(0,o.jsx)(n.I,{name:g,size:18})}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsx)("div",{className:"view-title",children:h}),t&&(0,o.jsx)("div",{className:"view-sub",children:t})]}),i]}),(0,o.jsx)("div",{className:"view-body",style:d?{padding:0,overflow:"hidden"}:void 0,children:c})]})}},4189:(e,t,i)=>{i.d(t,{l:()=>n});var o=i(7797);let n=(0,o.createServerReference)("40e88545faa11118461ff49b6570d9874017fd8a38",o.callServer,void 0,o.findSourceMapURL,"getUpdateState")},4822:(e,t,i)=>{i.d(t,{ChatToggle:()=>a});var o=i(4275),n=i(888),r=i(869);function a(){let e=(0,r.k)();return(0,o.jsx)("button",{className:"top-btn",title:`${e("chrome.chat.agentRoom")} (⌘J)`,type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("constella:toggle-chat")),children:(0,o.jsx)(n.I,{name:"chat",size:17})})}},8183:(e,t,i)=>{i.d(t,{BackButton:()=>l});var o=i(4275),n=i(6295),r=i(888),a=i(869);function l(){let e=(0,a.k)(),t=(0,n.useRouter)();return(0,o.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?t.back():t.push("/")},children:(0,o.jsx)(r.I,{name:"chevronLeft",size:18})})}},8406:(e,t,i)=>{i.d(t,{P:()=>n});var o=i(7797);let n=(0,o.createServerReference)("00491a4a12afe57900974b078cd17d6d523cb8b1d4",o.callServer,void 0,o.findSourceMapURL,"runUpdate")},9508:(e,t,i)=>{i.d(t,{UpdateHeaderBadge:()=>p});var o=i(4275),n=i(2899),r=i(6295),a=i(888),l=i(869),s=i(4189),d=i(8406),c=i(1776),u=i(2577);function p(){let e=(0,l.k)(),t=(0,r.useRouter)(),[i,p]=(0,n.useState)(null),[g,h]=(0,n.useState)(!1),[f,b]=(0,n.useState)("available"),[v,m]=(0,n.useState)(!1),[y,x]=(0,n.useState)(""),w=(0,n.useRef)(null);async function k(){if(!v){m(!0),x("");try{let t=await (0,s.l)(!0);p(t.info.updateAvailable&&t.info.latest?t.info.latest:null),h(t.busy),t.info.updateAvailable||x(e("chrome.update.upToDate"))}catch{}finally{m(!1)}}}async function S(){if("updating"!==f&&!g){if("done"===f)return void t.refresh();b("updating"),x("");try{let i=await (0,d.P)();if(i.blocked){b("available"),h(!0),x(e("chrome.update.busy"));return}i.started?w.current=setInterval(async()=>{let t=await (0,c.e)().catch(e=>((0,u.st)(e)&&(w.current&&clearInterval(w.current),(0,u.Uy)()),null));t&&("done"===t.status?(w.current&&clearInterval(w.current),window.location.reload()):"error"===t.status&&(w.current&&clearInterval(w.current),b("error"),x(e("chrome.update.failed"))))},3e3):(b("available"),x(i.message||""),t.push("/update"))}catch{b("error"),x(e("chrome.update.failed"))}}}(0,n.useEffect)(()=>{let e=!1,t=async t=>{try{let i=await (0,s.l)(t);if(e)return;p(i.info.updateAvailable&&i.info.latest?i.info.latest:null),h(i.busy)}catch{}};t(!1);let i=setInterval(()=>t(!1),12e3),o=setInterval(()=>t(!0),18e4);return()=>{e=!0,clearInterval(i),clearInterval(o),w.current&&clearInterval(w.current)}},[]);let C=(0,o.jsx)("button",{type:"button",className:"top-btn",onClick:k,disabled:v,title:y||e("chrome.update.check"),children:(0,o.jsx)("span",{className:v?"sync-spin":"",style:{display:"inline-flex"},children:(0,o.jsx)(a.I,{name:"sync",size:17})})});if(!i)return C;let I="updating"===f?e("chrome.update.updating"):"done"===f?e("chrome.update.restart"):"error"===f?e("chrome.update.failed"):g?`v${i}`:`${e("chrome.update.update")} v${i}`,j="updating"===f||g;return(0,o.jsxs)(o.Fragment,{children:[C,(0,o.jsxs)("button",{type:"button",onClick:S,disabled:j,title:g?e("chrome.update.busy"):y||`${e("chrome.update.available")} — v${i}`,style:{display:"inline-flex",alignItems:"center",gap:6,width:"auto",padding:"0 11px",height:30,background:"error"===f?"var(--sx-keyword)":g?"var(--bg-active)":"var(--accent)",color:g?"var(--text-dim)":"var(--accent-fg)",borderRadius:999,fontSize:12,fontWeight:600,border:"none",opacity:"updating"===f?.75:1,cursor:j?"default":"pointer"},children:["updating"===f?(0,o.jsx)("span",{className:"sync-spin",style:{display:"inline-flex"},children:(0,o.jsx)(a.I,{name:"sync",size:14})}):(0,o.jsx)(a.I,{name:"updating"===f?"sync":"done"===f?"refresh":"error"===f?"bell":"arrowUp",size:14}),(0,o.jsx)("span",{children:I})]})]})}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7363],{121:(e,t,a)=>{a.d(t,{b:()=>c});var s=a(7797);let c=(0,s.createServerReference)("001bcb77638d1a46912a15a081572ce5f0ffdf5db9",s.callServer,void 0,s.findSourceMapURL,"getDmPreviews")},1666:(e,t,a)=>{a.d(t,{M:()=>c});var s=a(7797);let c=(0,s.createServerReference)("704df4210e0ac1fe8d16aab94af799b5a1dd447d2d",s.callServer,void 0,s.findSourceMapURL,"connectTelegram")},2064:(e,t,a)=>{a.d(t,{n:()=>c});var s=a(7797);let c=(0,s.createServerReference)("60f0620d53918ab11292cea0a76fff7f37b9d107b3",s.callServer,void 0,s.findSourceMapURL,"agentRespond")},3479:(e,t,a)=>{a.d(t,{H:()=>c});var s=a(7797);let c=(0,s.createServerReference)("4064f7013178539e80988a48c2bcbf7f2601b7a2ef",s.callServer,void 0,s.findSourceMapURL,"clearConversation")},6719:(e,t,a)=>{a.d(t,{G:()=>c});var s=a(7797);let c=(0,s.createServerReference)("00ac20ad63e61fa51e22e465ec134d88bed9156f99",s.callServer,void 0,s.findSourceMapURL,"telegramStatus")},7363:(e,t,a)=>{a.d(t,{uG:()=>U,QE:()=>T,CZ:()=>A});var s=a(4275),c=a(2899),n=a(7797);let l=(0,n.createServerReference)("00eb291ba544141c60d7958f9e959b79f2f9d8a400",n.callServer,void 0,n.findSourceMapURL,"listChatRefs");var r=a(7492);let i=(0,n.createServerReference)("4076a371abe9c34149b659b394b2666988596376c6",n.callServer,void 0,n.findSourceMapURL,"listSessions"),d=(0,n.createServerReference)("60a65a814a082be9bda3295b3d75e80fdfd21299d3",n.callServer,void 0,n.findSourceMapURL,"createSession"),o=(0,n.createServerReference)("6073003353f53fe87153ecaf2dc6e40469864fe288",n.callServer,void 0,n.findSourceMapURL,"switchSession"),h=(0,n.createServerReference)("60dafaec9dc5c3f4d443518bf5cdb9bbea36f18f71",n.callServer,void 0,n.findSourceMapURL,"renameSession"),m=(0,n.createServerReference)("60b0ddcf7c11d05035cea005577a5d7b6ec4a099f7",n.callServer,void 0,n.findSourceMapURL,"deleteSession");var u=a(121),f=a(3479),x=a(9261),g=a(2064),v=a(869),p=a(1666),j=a(6719),b=a(9732),k=a(7558),N=a(7280),S=a(6466);let y=(0,n.createServerReference)("008ecd70d86cfcfb6ba359f7d9d64ff803ad6de30c",n.callServer,void 0,n.findSourceMapURL,"getChatNotifications"),w=(0,n.createServerReference)("00e5a7f8864d03b3328583f0e3dda9f57d64f869e9",n.callServer,void 0,n.findSourceMapURL,"getUnreadCounts"),C=(0,n.createServerReference)("406895dd20d52dd9c079a834a9d1fe20fbe760e87c",n.callServer,void 0,n.findSourceMapURL,"markChannelRead"),R=(0,n.createServerReference)("400536d238039aead05bf7f4d7fbdfc8c51c7843c2",n.callServer,void 0,n.findSourceMapURL,"markNotifRead");var I=a(5904),L=a(888),z=a(9491),E=a(379),M=a(3395);function T({agents:e,previews:t,onOpenDM:a}){let n=(0,v.k)(),[l,r]=(0,c.useState)(""),i=l.trim().toLowerCase(),d=e.filter(e=>!i||e.name.toLowerCase().includes(i)||e.handle.includes(i)||e.role.toLowerCase().includes(i));return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"dm-search",children:[(0,s.jsx)(L.I,{name:"search",size:13}),(0,s.jsx)("input",{placeholder:n("chat.searchAgents"),value:l,onChange:e=>r(e.target.value),autoFocus:!0})]}),(0,s.jsxs)("div",{className:"people-list scroll",children:[0===d.length&&(0,s.jsx)("div",{className:"mention-empty",children:n("chat.noAgentMatch",{q:l})}),d.map(e=>{let c=t[e.handle];return(0,s.jsxs)("div",{className:"people-row",onClick:()=>a(e.handle),children:[(0,s.jsx)(I.e,{name:e.name,color:e.color,image:e.image,size:36,health:e.health}),(0,s.jsxs)("div",{className:"people-meta",children:[(0,s.jsxs)("div",{className:"people-name",style:{display:"flex",alignItems:"center",gap:6},children:[e.name," ",(0,s.jsxs)("span",{className:"agent-handle",children:["@",e.handle]})," ","idle"!==e.status&&(0,s.jsx)(z.m,{status:e.status})]}),(0,s.jsx)("div",{className:"people-sub"+(c?" preview":""),children:c?(c.mine?n("chat.youPrefix"):"")+(c.text||"…"):`${e.role} \xb7 ${e.adapter}`})]}),(0,s.jsx)("span",{className:"people-go",children:(0,s.jsx)(L.I,{name:c?"chat":"chevronRight",size:14})})]},e.handle)})]})]})}function A({onConnected:e}){let t=(0,v.k)(),[a,n]=(0,c.useState)(""),[l,r]=(0,c.useState)(""),[i,d]=(0,c.useState)(""),[o,h]=(0,c.useState)(""),[m,u]=(0,c.useState)(""),[f,x]=(0,c.useTransition)();return(0,s.jsx)("div",{className:"tg-connect scroll",children:(0,s.jsxs)("div",{className:"tg-card",children:[(0,s.jsxs)("div",{className:"tg-card-head",children:[(0,s.jsx)("span",{className:"tg-card-ico",children:(0,s.jsx)(L.I,{name:"send",size:18})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"tg-card-title",children:t("chat.tg.connectTitle")}),(0,s.jsx)("div",{className:"tg-card-sub",children:t("chat.tg.connectSub")})]})]}),(0,s.jsxs)("ol",{className:"tg-steps",children:[(0,s.jsxs)("li",{children:[t("chat.tg.step1.a")," ",(0,s.jsx)("b",{children:"@BotFather"})," ",t("chat.tg.step1.b")," → ",(0,s.jsx)("code",{children:"/newbot"})," → ",t("chat.tg.step1.c")," ",(0,s.jsx)("b",{children:t("chat.tg.step1.token")}),"."]}),(0,s.jsxs)("li",{children:[t("chat.tg.step2.a")," ",(0,s.jsx)("b",{children:"@userinfobot"})," → ",t("chat.tg.step2.b")," ",(0,s.jsx)("b",{children:t("chat.tg.step2.chatId")})," ",t("chat.tg.step2.c")]}),(0,s.jsx)("li",{children:t("chat.tg.step3")})]}),(0,s.jsxs)("label",{className:"tg-field",children:[(0,s.jsx)("span",{children:t("chat.tg.botToken")}),(0,s.jsx)("input",{className:"form-input",placeholder:"123456789:AA…",value:a,onChange:e=>n(e.target.value)})]}),(0,s.jsxs)("div",{className:"tg-field-row",children:[(0,s.jsxs)("label",{className:"tg-field",children:[(0,s.jsx)("span",{children:t("chat.tg.yourChatId")}),(0,s.jsx)("input",{className:"form-input",placeholder:"123456789",value:l,onChange:e=>r(e.target.value)})]}),(0,s.jsxs)("label",{className:"tg-field",children:[(0,s.jsx)("span",{children:t("chat.tg.yourName")}),(0,s.jsx)("input",{className:"form-input",placeholder:t("chat.tg.namePlaceholder"),value:i,onChange:e=>d(e.target.value)})]})]}),o&&(0,s.jsx)("div",{className:"tg-msg err",children:o}),m&&(0,s.jsx)("div",{className:"tg-msg ok",children:m}),(0,s.jsxs)("button",{className:"btn-accent tg-save",disabled:f||!a.trim()||!l.trim(),onClick:function(){h(""),u(""),x(async()=>{let s=await (0,p.M)(a,l,i);s.ok?(u(t("chat.tg.botConnected",{bot:"@"+(s.username??"bot")})),n(""),r(""),d(""),e()):h(s.error??t("chat.tg.connectionFailed"))})},children:[f?(0,s.jsx)("span",{className:"spin",children:(0,s.jsx)(L.I,{name:"refresh",size:13})}):(0,s.jsx)(L.I,{name:"send",size:13})," ",t("chat.tg.connectBot")]}),(0,s.jsxs)("div",{className:"tg-note",children:[(0,s.jsx)(L.I,{name:"bot",size:12})," ",t("chat.tg.isolatedNote")]})]})})}function U({agents:e,operator:t}){let a,n,p,z,[D,q]=(0,c.useState)(!1),[F,H]=(0,c.useState)("right"),[O,P]=(0,c.useState)(380),[W,$]=(0,c.useState)("room"),[_,B]=(0,c.useState)("all"),[K,V]=(0,c.useState)(""),G=(0,v.k)(),[J,X]=(0,c.useState)([]),[Q,Y]=(0,c.useState)([]),[Z,ee]=(0,c.useState)([]),[et,ea]=(0,c.useState)(!1),[es,ec]=(0,c.useState)(null),[en,el]=(0,c.useState)(!1),[er,ei]=(0,c.useState)([]),[ed,eo]=(0,c.useState)({}),[eh,em]=(0,c.useState)(!1),[eu,ef]=(0,c.useState)(null),[ex,eg]=(0,c.useState)({}),[ev,ep]=(0,c.useState)(""),[ej,eb]=(0,c.useState)(0),[ek,eN]=(0,c.useState)([]),[eS,ey]=(0,c.useState)(null),[ew,eC]=(0,c.useState)(0),[eR,eI]=(0,c.useState)([]),[,eL]=(0,c.useTransition)(),ez=(0,c.useRef)(0),eE=(0,c.useRef)(0),eM=(0,c.useRef)(null),eT=(0,c.useRef)({}),eA=(0,c.useRef)([]),[eU,eD]=(0,c.useState)(null),eq=Object.fromEntries(e.map(e=>[e.handle,e])),eF=W.startsWith("dm:");(0,c.useEffect)(()=>{D&&!eR.length&&l().then(eI).catch(()=>{})},[D]);let eH="people"===W,eO="telegram"===W,eP=eF?W.slice(3):null,eW=eP?eq[eP]:null,e$=eF?W:eO?"telegram":"room";function e_(){delete eT.current[e$],eC(e=>e+1)}(0,c.useEffect)(()=>{function e(){q(e=>!e)}function t(e){q(!0);let t=e.detail?.channel;("room"===t||"telegram"===t||t&&t.startsWith("dm:"))&&$(t)}return window.addEventListener("constella:toggle-chat",e),window.addEventListener("constella:open-chat",t),()=>{window.removeEventListener("constella:toggle-chat",e),window.removeEventListener("constella:open-chat",t)}},[]),(0,c.useEffect)(()=>{try{"1"===localStorage.getItem("bx.chatOpen")&&q(!0);let e=localStorage.getItem("bx.chatSide");("left"===e||"right"===e)&&H(e);let t=Number(localStorage.getItem("bx.chatWidth"));t>=320&&t<=640&&P(t)}catch{}},[]),(0,c.useEffect)(()=>{try{localStorage.setItem("bx.chatOpen",D?"1":"0")}catch{}},[D]),(0,c.useEffect)(()=>{try{localStorage.setItem("bx.chatSide",F)}catch{}},[F]),(0,c.useEffect)(()=>{try{localStorage.setItem("bx.chatWidth",String(O))}catch{}},[O]),(0,c.useEffect)(()=>{function e(e){let t=e.detail;t?.handle&&(q(!0),$("dm:"+t.handle),t.text&&(ep(t.text),eb(e=>e+1)))}return window.addEventListener("constella:open-dm",e),()=>window.removeEventListener("constella:open-dm",e)},[]),(0,c.useEffect)(()=>{if(!D||eH)return;let e=!1,t=()=>({msgs:[],events:[],evSeq:0,msgCursor:0}),a=e=>e.length>250?e.slice(-250):e;for(eA.current=[...eA.current.filter(e=>e!==e$),e$];eA.current.length>6;){let e=eA.current.shift();e&&e!==e$&&delete eT.current[e]}let s=eT.current[e$];async function c(){let[t,a]=await Promise.all([(0,r.V)(e$),(0,k.k)(e$,0)]);e||(X(t),Y(a),ez.current=a.reduce((e,t)=>Math.max(e,t.seq),0),eE.current=t.reduce((e,t)=>Math.max(e,t.createdAt?new Date(t.createdAt).getTime():0),0),eT.current[e$]={msgs:t,events:a,evSeq:ez.current,msgCursor:eE.current})}function n(){if(e||document.hidden||eM.current)return;let s=new EventSource(`/api/stream?channel=${encodeURIComponent(e$)}&evCursor=${ez.current}&msgCursor=${eE.current}`);eM.current=s,s.addEventListener("ev",e=>{let s=JSON.parse(e.data);s.seq>ez.current&&(ez.current=s.seq),Y(e=>e.some(e=>e.id===s.id)?e:a([...e,s]));let c=eT.current[e$]??t();c.events.some(e=>e.id===s.id)||(eT.current[e$]={...c,events:a([...c.events,s]),evSeq:ez.current})}),s.addEventListener("msg",e=>{let s=JSON.parse(e.data),c=s.createdAt?new Date(s.createdAt).getTime():0;if(c>eE.current&&(eE.current=c),"cleared"===s.kind){X([s]),Y([]),ee([]),eT.current[e$]={...t(),msgs:[s],msgCursor:eE.current,evSeq:ez.current};return}X(e=>e.some(e=>e.id===s.id)?e:a([...e,s])),Y(e=>e.filter(e=>e.runId!==s.id||"text"!==e.kind));let n=eT.current[e$]??t();eT.current[e$]={...n,msgs:n.msgs.some(e=>e.id===s.id)?n.msgs:a([...n.msgs,s]),events:n.events.filter(e=>e.runId!==s.id||"text"!==e.kind),msgCursor:eE.current}})}function l(){eM.current&&(eM.current.close(),eM.current=null)}s?(X(s.msgs),Y(s.events),ez.current=s.evSeq,eE.current=s.msgCursor,ea(!1)):(X([]),Y([]),ez.current=0,eE.current=0,ea(!0)),s?document.hidden||n():c().catch(()=>{}).finally(()=>{!e&&(ea(!1),document.hidden||n())});let i=()=>{document.hidden?l():n()};return document.addEventListener("visibilitychange",i),()=>{e=!0,document.removeEventListener("visibilitychange",i),l()}},[D,W,ew]),(0,c.useEffect)(()=>{D&&eF?i(e$).then(eN).catch(()=>{}):eN([])},[D,W,ew]);let eB=()=>(0,u.b)().then(e=>eg(e));(0,c.useEffect)(()=>{D&&eB()},[D,W]);let eK=()=>(0,j.G)().then(e=>eD(e)).catch(()=>eD({connected:!1}));(0,c.useEffect)(()=>{D&&eO&&eK()},[D,W]);let eV=async()=>{if(!eH)try{let e=await (0,N.p)(e$);if(e.used>=e.max&&!en){el(!0);try{await (0,S.L)(e$),e=await (0,N.p)(e$)}finally{el(!1)}}ec(e)}catch{}};async function eG(){if(!en){el(!0);try{await (0,S.L)(e$),await eV()}finally{el(!1)}}}function eJ(){ey({title:G("chat.dock.clearTitle"),body:G("chat.dock.clearBody"),confirmLabel:G("common.clear"),onConfirm:()=>eL(async()=>{await (0,f.H)(e$).catch(()=>{}),X([]),Y([]),ee([]),delete eT.current[e$],ez.current=0,eE.current=0,await eV(),eF&&await eB()})})}(0,c.useEffect)(()=>{D&&!eH?eV():eH&&ec(null)},[D,W,J.length]);let eX=async()=>{try{let[e,t]=await Promise.all([y(),w()]);ei(e),eo(t)}catch{}};async function eQ(e){em(!1),e.channel&&$(e.channel.startsWith("dm:")?e.channel:"room"),e.messageId&&(ef(e.messageId),setTimeout(()=>ef(null),2600));try{await R(e.id)}catch{}eX()}function eY(e,t){eL(async()=>{let{responders:a}=await (0,x._)(e$,e,t);if(a.length){for(let e of(ee(a),a))await (0,g.n)(e$,e),ee(t=>t.filter(t=>t!==e));ee([])}eF&&await eB()})}if((0,c.useEffect)(()=>{D&&eX()},[D,W,J.length]),(0,c.useEffect)(()=>{D&&!eH&&C(e$).then(eX).catch(()=>{})},[D,W,J.length]),!D)return(0,s.jsx)("button",{className:"chat-fab",style:{display:"grid",placeItems:"center"},onClick:()=>q(!0),title:G("chrome.chat.agentRoom"),children:(0,s.jsx)(L.I,{name:"chat",size:20})});let eZ={};for(let e of Q)(eZ[e.runId]??=[]).push(e);let e0=new Set(J.map(e=>e.id)),e1=Object.entries(eZ).filter(([e])=>!e0.has(e)),e7=Object.keys(ex).length,e6=ed.room??0,e9=Object.entries(ed).reduce((e,[t,a])=>t.startsWith("dm:")?e+a:e,0),e5=ed.telegram??0;return(0,s.jsxs)("div",{className:"chat-dock "+F,style:{width:O},children:[(0,s.jsx)("div",{className:"dock-resizer "+F,onMouseDown:function(e){e.preventDefault();let t=e.clientX;function a(e){let a=e.clientX-t;P(Math.max(320,Math.min(640,"right"===F?O-a:O+a)))}document.body.style.cursor="col-resize",window.addEventListener("mousemove",a),window.addEventListener("mouseup",function e(){window.removeEventListener("mousemove",a),window.removeEventListener("mouseup",e),document.body.style.cursor=""})}}),(0,s.jsxs)("div",{className:"dock-toolbar",children:[(0,s.jsxs)("span",{className:"dock-toolbar-title",children:[(0,s.jsx)(L.I,{name:"agents",size:15,style:{color:"var(--accent)"}})," ",G("chat.dock.agents")]}),(0,s.jsxs)("div",{className:"dock-tools",children:[(0,s.jsxs)("div",{className:"dock-bell-wrap",children:[(0,s.jsxs)("button",{className:"dock-tool",title:G("top.notifications"),onClick:()=>em(e=>!e),children:[(0,s.jsx)(L.I,{name:"bell",size:15}),er.length>0&&(0,s.jsx)("span",{className:"dock-bell-badge",children:er.length})]}),eh&&(0,s.jsxs)("div",{className:"dock-notif-pop",children:[(0,s.jsxs)("div",{className:"dock-notif-head",children:[G("top.notifications")," ",er.length>0&&(0,s.jsxs)("span",{children:["(",er.length,")"]})]}),0===er.length&&(0,s.jsx)("div",{className:"dock-notif-empty",children:G("chat.dock.nothingNeedsYou")}),er.map(e=>(0,s.jsxs)("button",{className:"dock-notif-row"+("approval"===e.kind?" approval":""),onClick:()=>eQ(e),children:[(0,s.jsx)("span",{className:"dn-ico",children:(0,s.jsx)(L.I,{name:"approval"===e.kind?"check":"at",size:13})}),(0,s.jsxs)("span",{className:"dn-body",children:[(0,s.jsx)("span",{className:"dn-text",children:e.text}),e.detail&&(0,s.jsx)("span",{className:"dn-detail",children:e.detail})]}),(0,s.jsx)("span",{className:"dn-go",children:(0,s.jsx)(L.I,{name:"chevronRight",size:12})})]},e.id))]})]}),(0,s.jsx)("button",{className:"dock-tool",title:"right"===F?G("chat.dock.moveLeft"):G("chat.dock.moveRight"),onClick:()=>H(e=>"right"===e?"left":"right"),children:(0,s.jsx)(L.I,{name:"right"===F?"dockLeft":"dockRight",size:15})}),(0,s.jsx)("button",{className:"dock-tool",title:G("chat.dock.hide"),onClick:()=>q(!1),children:(0,s.jsx)(L.I,{name:"close",size:15})})]})]}),(0,s.jsxs)("div",{className:"dock-tabs",children:[(0,s.jsxs)("button",{className:"dock-tab"+(eF||eH||eO?"":" on"),onClick:()=>$("room"),children:[(0,s.jsx)(L.I,{name:"agents",size:14})," ",G("chat.dock.tabRoom"),e6>0&&(0,s.jsx)("span",{className:"dt-badge",children:e6})]}),(0,s.jsxs)("button",{className:"dock-tab"+(eH||eF?" on":""),onClick:()=>$("people"),children:[(0,s.jsx)(L.I,{name:"chat",size:14})," ",G("chat.dock.tabDirect"),(e9||e7)>0&&(0,s.jsx)("span",{className:"dt-badge",children:e9||e7})]}),(0,s.jsxs)("button",{className:"dock-tab"+(eO?" on":""),onClick:()=>$("telegram"),children:[(0,s.jsx)(L.I,{name:"send",size:14})," Telegram",e5>0&&(0,s.jsx)("span",{className:"dt-badge",children:e5})]})]}),!eH&&!(eO&&eU&&!eU.connected)&&(0,s.jsxs)("div",{className:"ctx-bar",children:[es?(0,s.jsx)(E.m,{stat:es,onCompact:eG,compacting:en}):(0,s.jsx)("span",{}),eO?(0,s.jsxs)("span",{className:"ctx-hint",title:G("chat.dock.tgIsolatedTip"),children:[(0,s.jsx)(L.I,{name:"bot",size:12})," ",G("chat.dock.isolatedThreadAda")]}):(0,s.jsxs)("span",{className:"ctx-hint",title:G("chat.dock.dmAdaTip"),children:[(0,s.jsx)(L.I,{name:"bot",size:12})," ",G("home.chat.dmAda")]})]}),eF&&eW?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"dm-back-row",children:[(0,s.jsxs)("button",{className:"dm-back-btn",onClick:()=>$("people"),children:[(0,s.jsx)(L.I,{name:"chevronLeft",size:14})," ",G("chat.dock.allAgents")]}),(0,s.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:5,flexWrap:"wrap",justifyContent:"flex-end"},children:[ek.map(e=>(0,s.jsxs)("span",{className:"sess-pill",children:[(0,s.jsx)("button",{className:"sess-tab"+(e.active?" active":""),title:e.active?G("chat.dock.sessActiveTip"):G("chat.dock.sessSwitchTip"),onClick:()=>{var t;return t=e.id,void(!ek.find(e=>e.id===t)?.active&&eL(async()=>{await o(e$,t).catch(()=>{}),e_()}))},onDoubleClick:()=>{var t,a;let s;return t=e.id,a=e.title,void(null!=(s=prompt(G("chat.dock.renameSession"),a))&&eL(async()=>{await h(t,s).catch(()=>{}),i(e$).then(eN).catch(()=>{})}))},children:e.title}),ek.length>1&&(0,s.jsx)("button",{className:"sess-del",title:G("chat.dock.sessDelete"),onClick:()=>{var t,a;return t=e.id,a=e.title,void ey({title:G("chat.dock.deleteSessionTitle"),body:G("chat.dock.deleteSessionBody",{title:a}),confirmLabel:G("common.delete"),onConfirm:()=>eL(async()=>{await m(e$,t).catch(()=>{}),e_(),i(e$).then(eN).catch(()=>{})})})},children:(0,s.jsx)(L.I,{name:"close",size:11})})]},e.id)),(0,s.jsxs)("button",{className:"sess-new",title:G("chat.dock.sessNewTip"),onClick:function(){eL(async()=>{await d(e$).catch(()=>{}),e_()})},children:[(0,s.jsx)(L.I,{name:"add",size:12})," ",G("chat.dock.sessNew")]})]})]}),(0,s.jsxs)("div",{className:"chat-header dm",children:[(0,s.jsx)(I.e,{name:eW.name,color:eW.color,image:eW.image,size:34,health:eW.health}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"chat-title",children:[eW.name," ",(0,s.jsxs)("span",{className:"agent-handle",children:["@",eW.handle]})]}),(0,s.jsxs)("div",{className:"chat-sub",children:[eW.role," \xb7 ",eW.adapter]})]}),(0,s.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:8},children:[(0,s.jsx)(M.qs,{status:eW.status}),(0,s.jsx)("button",{className:"dock-tool",title:G("chat.dock.clearConversation"),onClick:eJ,children:(0,s.jsx)(L.I,{name:"trash",size:15})})]})]}),(0,s.jsxs)("div",{className:"dm-context-note",children:[(0,s.jsx)("span",{className:"ico",children:(0,s.jsx)(L.I,{name:"bot",size:14})}),G("chat.dock.dmContextNote",{name:eW.name})]}),(0,s.jsx)(M.H8,{msgs:J,typing:Z,agents:e,byRun:eZ,liveRuns:e1,loading:et,highlightId:eu,operator:t,markdownAgent:!0}),(0,s.jsx)(M.V4,{onSend:eY,agents:e,defaultText:ev,placeholder:G("chat.dock.messageAgent",{name:eW.name})},"dm:"+eP+":"+ej)]}):eH?(0,s.jsx)(T,{agents:e,previews:ex,onOpenDM:e=>{$("dm:"+e)}}):eO?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"chat-header room",children:[(0,s.jsx)("div",{className:"brand-ico",style:{background:"linear-gradient(150deg,#2aabee,#229ed9)",color:"#fff"},children:(0,s.jsx)(L.I,{name:"send",size:16})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"chat-title",children:"Telegram"}),(0,s.jsx)("div",{className:"chat-sub",children:eU?.connected?G("chat.tg.connectedSub",{name:eU.allowedName||G("chat.tg.you"),chatId:eU.chatIdMasked??""}):G("chat.tg.connectPrompt")})]}),eU?.connected&&(0,s.jsxs)("div",{style:{marginLeft:"auto",display:"flex",gap:6},children:[(0,s.jsx)("button",{className:"dock-tool",title:G("chat.dock.clearConversation"),onClick:eJ,children:(0,s.jsx)(L.I,{name:"trash",size:15})}),(0,s.jsx)("button",{className:"dock-tool",title:G("chat.tg.disconnect"),onClick:()=>{confirm(G("chat.tg.disconnectConfirm"))&&eL(async()=>{await (0,b.K)(),eK()})},children:(0,s.jsx)(L.I,{name:"close",size:15})})]})]}),eU&&!eU.connected?(0,s.jsx)(A,{onConnected:eK}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"dm-context-note",children:[(0,s.jsx)("span",{className:"ico",children:(0,s.jsx)(L.I,{name:"send",size:14})}),G("chat.tg.isolatedThreadNote")]}),(0,s.jsx)(M.H8,{msgs:J,typing:Z,agents:e,byRun:eZ,liveRuns:e1,loading:et||!eU,highlightId:eu,operator:t,markdownAgent:!0}),(0,s.jsx)(M.V4,{onSend:eY,agents:e,placeholder:G("chat.tg.composerPlaceholder")},"telegram:"+ej)]})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"chat-header room",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"chat-title",children:G("chat.dock.teamChannel")}),(0,s.jsx)("div",{className:"chat-sub",children:G("chat.dock.teamChannelSub",{n:e.length})})]}),(0,s.jsxs)("div",{className:"chat-members",children:[e.slice(0,6).map(e=>(0,s.jsx)("button",{className:"member-btn",title:G("chat.dock.dmName",{name:e.name}),onClick:()=>{$("dm:"+e.handle)},children:(0,s.jsx)(I.e,{name:e.name,color:e.color,size:26})},e.handle)),e.length>6&&(0,s.jsxs)("button",{className:"more",title:G("chat.dock.allAgents"),onClick:()=>$("people"),children:["+",e.length-6]})]})]}),(a=Array.from(new Set(e.map(e=>e.role))).sort(),n="all"===_?J:"type:work"===_?J.filter(e=>(eZ[e.id]?.length??0)>0||!!e.kind):"type:chat"===_?J.filter(e=>!eZ[e.id]?.length&&!e.kind):_.startsWith("role:")?J.filter(e=>"operator"===e.fromKind||e.fromHandle&&eq[e.fromHandle]?.role===_.slice(5)):J.filter(e=>"operator"===e.fromKind||e.fromHandle===_),z=(p=K.trim().toLowerCase())?n.filter(e=>(e.text??"").toLowerCase().includes(p)):n,(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"room-filter",children:[(0,s.jsx)("span",{className:"rf-label",children:G("chat.filter")}),(0,s.jsx)("button",{type:"button",className:"rf-chip"+("all"===_?" on":""),onClick:()=>B("all"),children:G("common.all")}),(0,s.jsx)("button",{type:"button",className:"rf-chip rf-lane"+("type:work"===_?" on":""),title:G("chat.filter.work"),onClick:()=>B("type:work"===_?"all":"type:work"),children:G("chat.filter.work")}),(0,s.jsx)("button",{type:"button",className:"rf-chip rf-lane"+("type:chat"===_?" on":""),title:G("chat.filter.discussion"),onClick:()=>B("type:chat"===_?"all":"type:chat"),children:G("chat.filter.discussion")}),a.map(e=>(0,s.jsx)("button",{type:"button",className:"rf-chip rf-role"+(_==="role:"+e?" on":""),title:G("chat.filter.byRole"),onClick:()=>B(_==="role:"+e?"all":"role:"+e),children:e},"role:"+e)),e.map(e=>(0,s.jsxs)("button",{type:"button",className:"rf-chip"+(_===e.handle?" on":""),title:e.name,onClick:()=>B(_===e.handle?"all":e.handle),children:["@",e.handle]},e.handle)),(0,s.jsxs)("span",{className:"rf-search",children:[(0,s.jsx)(L.I,{name:"search",size:12}),(0,s.jsx)("input",{value:K,onChange:e=>V(e.target.value),placeholder:G("chat.filter.search"),"aria-label":G("chat.filter.search")}),K&&(0,s.jsx)("button",{type:"button",className:"rf-clear",onClick:()=>V(""),"aria-label":G("common.dismiss"),children:(0,s.jsx)(L.I,{name:"close",size:11})})]})]}),(0,s.jsx)(M.H8,{msgs:z,typing:Z,agents:e,byRun:eZ,liveRuns:e1,loading:et,highlightId:eu,operator:t,markdownAgent:!0,refs:eR})]})),(0,s.jsx)(M.V4,{onSend:eY,agents:e,defaultText:"room"===W?ev:"",requireMention:!0,placeholder:G("chat.dock.roomPlaceholder"),refs:eR},"room:"+ej)]}),eS&&(0,s.jsx)("div",{className:"modal-overlay",onMouseDown:()=>ey(null),children:(0,s.jsxs)("div",{className:"modal",style:{width:380},onMouseDown:e=>e.stopPropagation(),children:[(0,s.jsx)("div",{className:"modal-head",children:(0,s.jsxs)("div",{className:"modal-title",children:[(0,s.jsx)(L.I,{name:"trash",size:15,style:{color:"var(--sx-keyword)"}})," ",eS.title]})}),(0,s.jsx)("div",{className:"modal-body",children:(0,s.jsx)("div",{style:{fontSize:13,color:"var(--text-dim)",lineHeight:1.55},children:eS.body})}),(0,s.jsxs)("div",{className:"modal-foot",children:[(0,s.jsx)("button",{className:"btn-ghost",onClick:()=>ey(null),children:G("common.cancel")}),(0,s.jsx)("button",{className:"btn-accent",style:{background:"var(--sx-keyword)",borderColor:"var(--sx-keyword)",color:"#fff"},onClick:()=>{eS.onConfirm(),ey(null)},children:eS.confirmLabel})]})]})})]})}},9261:(e,t,a)=>{a.d(t,{_:()=>c});var s=a(7797);let c=(0,s.createServerReference)("7029fdc89f3e11a536c5f3bf9ab215d735dbe62f8b",s.callServer,void 0,s.findSourceMapURL,"sendMessage")},9491:(e,t,a)=>{a.d(t,{m:()=>n});var s=a(4275);let c={working:{c:"var(--sx-string)",pulse:!0,label:"working"},review:{c:"#e0a44e",label:"review"},blocked:{c:"#e8688f",label:"blocked"},idle:{c:"var(--text-faint)",label:"idle"}};function n({status:e,label:t=!1,size:a=8}){let l=c[e]??c.idle;return(0,s.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5},title:l.label,children:[l.pulse?(0,s.jsx)("span",{className:"dotpulse"}):(0,s.jsx)("span",{style:{width:a,height:a,borderRadius:"50%",background:l.c,display:"inline-block",flex:`0 0 ${a}px`}}),t&&(0,s.jsx)("span",{style:{fontSize:11,color:l.c,fontWeight:600},children:l.label})]})}},9732:(e,t,a)=>{a.d(t,{K:()=>c});var s=a(7797);let c=(0,s.createServerReference)("008126545795d71c4020cb6427d4d06868907eecde",s.callServer,void 0,s.findSourceMapURL,"disconnectTelegram")}}]);
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7621],{379:(e,s,t)=>{t.d(s,{m:()=>i});var a=t(4275),n=t(5904),l=t(888),c=t(869);let r=e=>(e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e))+" tks";function i({stat:e,onCompact:s,compacting:t}){let d=(0,c.k)(),o=2*Math.PI*15,m=Math.min(1,e.used/e.max)*o,h=Math.min(1,e.reserve/e.max)*o,u=e.usedPct>=85?"#e8688f":e.usedPct>=65?"#e0a44e":"#b3d97a",p=e.remainingPct<=35,x=e.used>0&&e.usedPct<1?"<1%":`${e.usedPct}%`;return(0,a.jsxs)("div",{className:"ctx-donut-wrap",children:[(0,a.jsxs)("div",{className:"ctx-donut",tabIndex:0,children:[(0,a.jsxs)("svg",{width:38,height:38,viewBox:"0 0 38 38",children:[(0,a.jsx)("circle",{cx:19,cy:19,r:15,fill:"none",stroke:"var(--border)",strokeWidth:4}),(0,a.jsx)("circle",{cx:19,cy:19,r:15,fill:"none",stroke:u,strokeWidth:4,strokeLinecap:"round",strokeDasharray:`${m} ${o}`,transform:"rotate(-90 19 19)"}),(0,a.jsx)("circle",{cx:19,cy:19,r:15,fill:"none",stroke:"var(--text-faint)",strokeWidth:4,strokeDasharray:`${h} ${o}`,strokeDashoffset:-m,transform:"rotate(-90 19 19)"}),(0,a.jsx)("text",{x:19,y:20,textAnchor:"middle",dominantBaseline:"middle",fontSize:10,fontWeight:700,fill:"var(--text)",children:x})]}),(0,a.jsxs)("div",{className:"ctx-pop",children:[(0,a.jsxs)("div",{className:"ctx-pop-title",children:[(0,a.jsx)(l.I,{name:"pulse",size:12})," ",d("chrome.ctx.title")]}),(0,a.jsxs)("div",{className:"ctx-rows",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("span",{children:d("chrome.ctx.max")}),(0,a.jsx)("b",{children:r(e.max)})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("span",{children:d("chrome.ctx.used")}),(0,a.jsxs)("b",{style:{color:u},children:[r(e.used)," \xb7 ",x]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("span",{children:d("chrome.ctx.reserve")}),(0,a.jsxs)("b",{children:[r(e.reserve)," \xb7 ",e.reservePct,"%"]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("span",{children:d("chrome.ctx.remaining")}),(0,a.jsxs)("b",{children:[r(e.remaining)," \xb7 ",e.remainingPct,"%"]})]})]}),e.perAgent.length>0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"ctx-pop-sub",children:d("chrome.ctx.byAgent")}),(0,a.jsx)("div",{className:"ctx-agents",children:e.perAgent.slice(0,8).map(e=>(0,a.jsxs)("div",{className:"ctx-agent",children:[(0,a.jsx)(n.e,{name:e.name,color:e.color,size:18}),(0,a.jsx)("span",{className:"ctx-agent-name",children:e.name}),(0,a.jsx)("span",{className:"ctx-agent-bar",children:(0,a.jsx)("span",{style:{width:`${e.pct}%`,background:e.color}})}),(0,a.jsxs)("span",{className:"ctx-agent-tok",children:[r(e.tokens)," \xb7 ",e.pct,"%",e.usd>0?` \xb7 $${e.usd.toFixed(2)}`:""]})]},e.handle))})]}),(0,a.jsx)("div",{className:"ctx-pop-note",children:d("chrome.ctx.explain")})]})]}),p&&(0,a.jsxs)("button",{className:"ctx-compact",onClick:s,disabled:t,title:d("chrome.ctx.compactHint"),children:[t?(0,a.jsx)("span",{className:"spin",children:(0,a.jsx)(l.I,{name:"refresh",size:12})}):(0,a.jsx)(l.I,{name:"collapse",size:12}),d(t?"chrome.ctx.compacting":"chrome.ctx.compact")]})]})}},3395:(e,s,t)=>{t.d(s,{V4:()=>w,H8:()=>M,qs:()=>b});var a=t(4275),n=t(2899),l=t(6295),c=t(8343),r=t(6054),i=t(5904),d=t(888),o=t(869),m=t(7797);let h=(0,m.createServerReference)("40080b9ecb374ab8d6da637636f1c5f0ec1a5ed545",m.callServer,void 0,m.findSourceMapURL,"pullKbForComposer"),u=(0,m.createServerReference)("408f6af3b89d125b561686db9d333c71405d1e8c92",m.callServer,void 0,m.findSourceMapURL,"sendMessageToKb"),p=(0,m.createServerReference)("4074b7e3f11b1ff2a4e1742e92f6d0873d579a2bf5",m.callServer,void 0,m.findSourceMapURL,"taskRef");var x=t(9408),g=t(7292);let j={read:"Read",create:"Create",edit:"Edit",run:"Run",search:"Search"},f=[{cmd:"/help",descKey:"help"},{cmd:"/kb",descKey:"kb",arg:"<question>"},{cmd:"/search",descKey:"search",arg:"<query>"},{cmd:"/graph",descKey:"graph",arg:"<key>"},{cmd:"/status",descKey:"status"},{cmd:"/agents",descKey:"agents"},{cmd:"/agent",descKey:"agent",arg:"<handle>"},{cmd:"/new-goal",descKey:"newGoal",arg:"<brief>"},{cmd:"/new-issue",descKey:"newIssue",arg:"<title>"},{cmd:"/new-spec",descKey:"newSpec",arg:"<title>"},{cmd:"/generate-plan",descKey:"generatePlan",arg:"<brief>"},{cmd:"/approve",descKey:"approve"},{cmd:"/reject",descKey:"reject",arg:"<reason>"},{cmd:"/run-247",descKey:"run247"},{cmd:"/pause",descKey:"pause"},{cmd:"/cancel",descKey:"cancel"},{cmd:"/archive",descKey:"archive"},{cmd:"/assign",descKey:"assign",arg:"<issue> <@agent>"},{cmd:"/review",descKey:"review"},{cmd:"/close-sprint",descKey:"closeSprint"},{cmd:"/test-dev",descKey:"testDev"},{cmd:"/github",descKey:"github"},{cmd:"/prepare-deploy",descKey:"prepareDeploy"},{cmd:"/export-source",descKey:"exportSource",arg:"<repo>"},{cmd:"/models",descKey:"models"},{cmd:"/skills",descKey:"skills"},{cmd:"/locks",descKey:"locks"},{cmd:"/telegram",descKey:"telegram"},{cmd:"/reindex",descKey:"reindex"},{cmd:"/curate",descKey:"curate"},{cmd:"/clear",descKey:"clear"}],v={idle:{c:"#6b7390",bg:"rgba(120,130,160,.16)"},working:{c:"#b3d97a",bg:"rgba(179,217,122,.15)"},review:{c:"#e0a44e",bg:"rgba(224,164,78,.16)"},blocked:{c:"#e8688f",bg:"rgba(232,104,143,.16)"}};function b({status:e}){let s=(0,o.k)(),t=v[e]??v.idle;return(0,a.jsx)("span",{className:"status-pill",style:{color:t.c,background:t.bg},children:e in v?s("chat.status."+e):e})}function k(e,s,t){let n=t?Object.fromEntries(t.map(e=>[e.key.toLowerCase(),e])):{},l=t&&t.length>0;return e.split(l?/(@[a-z0-9-]+|#[a-z0-9_-]+)/gi:/(@[a-z0-9-]+)/gi).map((e,t)=>{if(/^@[a-z0-9-]+$/i.test(e)&&s.has(e.slice(1).toLowerCase()))return(0,a.jsx)("span",{className:"mention",children:e},t);if(l&&/^#[a-z0-9_-]+$/i.test(e)){let s=n[e.slice(1).toLowerCase()];if(s){let n="goal"===s.kind?"/goals":"spec"===s.kind?"/planner":"/pm";return(0,a.jsx)("a",{className:"ref-chip",href:n,title:s.title,children:e},t)}}return(0,a.jsx)("span",{children:e},t)})}function N({step:e}){let s,t,n=(0,o.k)(),l=e.kind in j?n("chat.verb."+e.kind):e.kind,c="run"===e.kind,r="edit"===e.kind&&!!e.detail,i="create"===e.kind&&!!e.detail,d=r?e.detail.split("\n"):[],m=r?d.filter(e=>e.startsWith("+")).length:0,h=r?d.filter(e=>e.startsWith("-")).length:0,u=i?e.detail.slice(0,4e3).split("\n"):[];return(0,a.jsxs)("div",{className:"work-step",children:[(0,a.jsxs)("div",{className:"wstep-head",children:[(0,a.jsx)("span",{className:"wstep-verb "+e.kind,children:l}),(0,a.jsx)("span",{className:"wstep-file",children:e.target}),r&&(0,a.jsxs)("span",{className:"wstep-badge",children:[(0,a.jsxs)("span",{className:"plus",children:["+",m]})," ",(0,a.jsxs)("span",{className:"minus",children:["−",h]})]}),i&&(0,a.jsx)("span",{className:"wstep-badge",children:(0,a.jsxs)("span",{className:"plus",children:["+",u.length]})})]}),i&&(0,a.jsx)("div",{className:"wstep-code scroll",children:u.map((e,s)=>(0,a.jsxs)("div",{className:"wcode-line",children:[(0,a.jsx)("span",{className:"wcode-gutter",children:s+1}),(0,a.jsx)("span",{className:"wcode-text",children:e||""})]},s))}),r&&(0,a.jsx)("div",{className:"wstep-code scroll",children:d.map((e,s)=>{let t=e.startsWith("+")?"add":e.startsWith("-")?"del":"ctx";return(0,a.jsxs)("div",{className:"wdiff-line "+t,children:[(0,a.jsx)("span",{className:"wdiff-sign",children:"add"===t?"+":"del"===t?"−":" "}),(0,a.jsx)("span",{className:"wdiff-text",children:e.slice(1)||""})]},s)})}),c&&e.detail&&(t=(s=e.detail.split("\n")).slice(0,14),(0,a.jsxs)("div",{className:"wstep-term",children:[t.map((e,s)=>(0,a.jsx)("div",{className:/✓|passed|ok\b/i.test(e)?"ok":"",children:e||""},s)),s.length>t.length&&(0,a.jsxs)("div",{className:"wstep-more",children:["… +",s.length-t.length," lines"]})]}))]})}function y({steps:e,live:s}){let t=(0,o.k)(),l=e.filter(e=>["read","create","edit","run","search"].includes(e.kind)),c=l.filter(e=>"create"===e.kind||"edit"===e.kind).length,r=[...e].reverse().find(e=>"thinking"===e.kind),i=!s,[m,h]=(0,n.useState)(s);return 0!==l.length||r?(0,a.jsxs)("div",{className:"work-block"+(m?"":" collapsed"),children:[(0,a.jsxs)("button",{type:"button",className:"work-head",onClick:()=>h(e=>!e),children:[i?(0,a.jsx)("span",{className:"done-check",children:(0,a.jsx)(d.I,{name:"check",size:15})}):(0,a.jsx)("span",{className:"spin",children:(0,a.jsx)(d.I,{name:"refresh",size:14})}),(0,a.jsx)("span",{className:"wlabel",children:t(i?"chat.work.done":"chat.work.working")}),(0,a.jsx)("span",{className:"wmeta",children:i?t(1===l.length?"chat.work.actions.one":"chat.work.actions.other",{n:l.length}):t("chat.work.workingEllipsis")}),i&&c>0&&(0,a.jsxs)("span",{className:"wmeta wfiles",title:"files changed",children:["✎ ",c]}),(0,a.jsx)("span",{className:"work-toggle"+(m?" open":""),children:(0,a.jsx)(d.I,{name:"chevronRight",size:13})})]}),m&&(0,a.jsxs)(a.Fragment,{children:[r?.detail&&(0,a.jsxs)("div",{className:"work-thinking",children:[(0,a.jsx)("span",{className:"ti",children:(0,a.jsx)(d.I,{name:"bot",size:13})}),(0,a.jsx)("span",{children:r.detail})]}),(0,a.jsx)("div",{className:"work-steps",children:l.map(e=>(0,a.jsx)(N,{step:e},e.id))})]})]}):null}function w({onSend:e,placeholder:s,agents:t,defaultText:l="",requireMention:c=!1,enableAttachments:r=!0,refs:m}){let[u,p]=(0,n.useState)(l),x=(0,o.k)(),g=!c||u.trim().startsWith("/")||(u.match(/@([a-z0-9-]+)/gi)||[]).some(e=>t.some(s=>s.handle.toLowerCase()===e.slice(1).toLowerCase())),[j,v]=(0,n.useState)(!1),[b,k]=(0,n.useState)(null),[N,y]=(0,n.useState)(null),[S,z]=(0,n.useState)(null),[D,I]=(0,n.useState)([]),[K,R]=(0,n.useState)(""),[C,M]=(0,n.useState)(!1),[A,L]=(0,n.useState)(!1),[E,$]=(0,n.useState)(""),[P,T]=(0,n.useState)(null),[F,W]=(0,n.useState)(""),[U,q]=(0,n.useTransition)(),H=(0,n.useRef)(null),B=(0,n.useRef)(null),_=(0,n.useRef)(null),V=void 0!==m;async function O(e){if(!e||!e.length)return;R("");let s=10-D.length,t=Array.from(e).slice(0,Math.max(0,s));if(!t.length)return void R(x("chat.composer.maxAttachments"));let a=new FormData;for(let e of t)a.append("files",e);M(!0);try{let e=await fetch("/api/upload",{method:"POST",body:a}),s=await e.json();if(!e.ok||!s.ok)return void R(s.error??x("chat.composer.uploadFailed"));I(e=>[...e,...s.attachments].slice(0,10))}catch{R(x("chat.composer.uploadFailed"))}finally{M(!1),B.current&&(B.current.value="")}}function G(e){e.style.height="auto",e.style.height=Math.min(e.scrollHeight,260)+"px"}function J(e){if(!b||!H.current)return;let s=u.slice(0,b.start),t=u.slice(H.current.selectionStart),a="@"+e.handle+" ";p(s+a+t),_.current=(s+a).length,k(null),requestAnimationFrame(()=>H.current?.focus())}function Q(e){if(!N||!H.current)return;let s=u.slice(0,N.start),t=u.slice(H.current.selectionStart),a="#"+e.key+" ";p(s+a+t),_.current=(s+a).length,y(null),requestAnimationFrame(()=>H.current?.focus())}function X(e){let s=e.cmd+(e.arg?" ":"");p(s),_.current=s.length,z(null),requestAnimationFrame(()=>H.current?.focus())}function Y(){let e=E.trim();if(!e){T(null),W(x("chat.kbPull.empty"));return}W(""),T(null),q(async()=>{let s=await h(e);s.ok&&s.text?T({text:s.text,sources:s.sources??[]}):W(x("chat.kbPull.noResult"))})}function Z(){let s=u.trim();!s&&0===D.length||g&&(e(s,D.length?D:void 0),p(""),I([]),R(""),H.current&&(H.current.style.height="auto"),k(null),z(null),y(null),L(!1))}return(0,n.useEffect)(()=>{null!=_.current&&H.current&&(H.current.setSelectionRange(_.current,_.current),_.current=null)}),(0,a.jsxs)("div",{className:"chat-composer",children:[b&&(0,a.jsxs)("div",{className:"mention-pop",children:[(0,a.jsxs)("div",{className:"mention-head",children:[(0,a.jsx)(d.I,{name:"at",size:12})," ",x("chat.composer.mentionAgent")]}),(0,a.jsxs)("div",{className:"mention-list scroll",children:[0===b.items.length&&(0,a.jsx)("div",{className:"mention-empty",children:x("chat.noAgentMatch",{q:b.query})}),b.items.map((e,s)=>(0,a.jsxs)("div",{className:"mention-item"+(s===b.index?" active":""),onMouseEnter:()=>k(e=>e&&{...e,index:s}),onMouseDown:s=>{s.preventDefault(),J(e)},children:[(0,a.jsx)(i.e,{name:e.name,color:e.color,image:e.image,size:24}),(0,a.jsx)("div",{className:"mi-text",children:(0,a.jsxs)("div",{className:"mi-name",children:[e.name," ",(0,a.jsxs)("span",{className:"mi-handle",children:["@",e.handle]})]})}),(0,a.jsx)("span",{className:"mi-role",children:e.role})]},e.handle))]})]}),N&&(0,a.jsxs)("div",{className:"mention-pop",children:[(0,a.jsxs)("div",{className:"mention-head",children:[(0,a.jsx)(d.I,{name:"branch",size:12})," ",x("chat.composer.referenceItem")]}),(0,a.jsxs)("div",{className:"mention-list scroll",children:[0===N.items.length&&(0,a.jsx)("div",{className:"mention-empty",children:x("chat.noRefMatch",{q:N.query})}),N.items.map((e,s)=>(0,a.jsxs)("div",{className:"mention-item"+(s===N.index?" active":""),onMouseEnter:()=>y(e=>e&&{...e,index:s}),onMouseDown:s=>{s.preventDefault(),Q(e)},children:[(0,a.jsx)("span",{className:"mi-ref-kind",children:x("chat.composer.refKind."+e.kind)}),(0,a.jsx)("div",{className:"mi-text",children:(0,a.jsxs)("div",{className:"mi-name",children:[(0,a.jsxs)("span",{className:"mi-handle",children:["#",e.key]})," ",e.title]})})]},e.id))]})]}),S&&(0,a.jsxs)("div",{className:"mention-pop",children:[(0,a.jsxs)("div",{className:"mention-head",children:[(0,a.jsx)(d.I,{name:"command",size:12})," ",x("chat.commands")]}),(0,a.jsx)("div",{className:"mention-list scroll",children:S.items.map((e,s)=>(0,a.jsxs)("div",{className:"mention-item"+(s===S.index?" active":""),onMouseEnter:()=>z(e=>e&&{...e,index:s}),onMouseDown:s=>{s.preventDefault(),X(e)},children:[(0,a.jsx)("div",{className:"mi-text",children:(0,a.jsxs)("div",{className:"mi-name",children:[e.cmd,e.arg&&(0,a.jsxs)("span",{className:"mi-handle",children:[" ",e.arg]})]})}),(0,a.jsx)("span",{className:"mi-role",children:x("chat.slash."+e.descKey)})]},e.cmd))})]}),A&&(0,a.jsxs)("div",{className:"mention-pop kb-pull-pop",children:[(0,a.jsxs)("div",{className:"mention-head",children:[(0,a.jsx)(d.I,{name:"branch",size:12})," ",x("chat.kbPull.title")]}),(0,a.jsxs)("div",{className:"kb-pull-body",children:[(0,a.jsxs)("div",{className:"kb-pull-row",children:[(0,a.jsx)("input",{className:"kb-pull-input",value:E,placeholder:x("chat.kbPull.placeholder"),onChange:e=>{$(e.target.value),W("")},onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),Y()),"Escape"===e.key&&(e.preventDefault(),L(!1))}}),(0,a.jsxs)("button",{type:"button",className:"att-btn",disabled:U,onMouseDown:e=>e.preventDefault(),onClick:Y,children:[U?(0,a.jsx)("span",{className:"spin",children:(0,a.jsx)(d.I,{name:"refresh",size:13})}):(0,a.jsx)(d.I,{name:"search",size:13}),x("chat.kbPull.search")]})]}),(0,a.jsx)("div",{className:"kb-pull-preview",children:U?(0,a.jsx)("div",{className:"kb-pull-muted",children:x("chat.kbPull.searching")}):P?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"kb-pull-text",children:P.text}),P.sources.length>0&&(0,a.jsx)("div",{className:"kb-pull-sources",children:P.sources.map(e=>(0,a.jsx)("span",{children:e},e))})]}):(0,a.jsx)("div",{className:F?"kb-pull-error":"kb-pull-muted",children:F||x("chat.kbPull.empty")})}),P&&(0,a.jsx)("div",{className:"kb-pull-actions",children:(0,a.jsxs)("button",{type:"button",className:"send-btn",onMouseDown:e=>e.preventDefault(),onClick:function(){if(!P)return;let e=P.sources.length?`
|
|
2
|
+
Sources: ${P.sources.join(", ")}`:"",s=`KB: ${P.text}${e}`;p(e=>e.trim()?`${e.trimEnd()}
|
|
3
|
+
|
|
4
|
+
${s}`:s),L(!1),T(null),W(""),requestAnimationFrame(()=>{H.current&&(G(H.current),H.current.focus())})},children:[(0,a.jsx)(d.I,{name:"add",size:13})," ",x("chat.kbPull.insert")]})})]})]}),(0,a.jsxs)("div",{className:"composer-box"+(j?" focus":""),children:[D.length>0&&(0,a.jsx)("div",{className:"att-row",children:D.map((e,s)=>(0,a.jsxs)("span",{className:"att-chip",children:[(0,a.jsx)(d.I,{name:/^image\//.test(e.type)||"application/pdf"===e.type?"doc":"files",size:11}),(0,a.jsx)("span",{className:"att-name",children:e.name}),(0,a.jsx)("button",{className:"att-x",onClick:()=>I(e=>e.filter((e,t)=>t!==s)),children:(0,a.jsx)(d.I,{name:"close",size:10})})]},e.path))}),K&&(0,a.jsx)("div",{style:{fontSize:10.5,color:"#e8688f",padding:"2px 8px"},children:K}),(0,a.jsx)("textarea",{ref:H,className:"composer-input",value:u,rows:1,placeholder:s,onChange:e=>{p(e.target.value),function(e,s){let a=e.match(/^\/([a-z-]*)$/i);if(a){let e=a[1].toLowerCase(),s=f.filter(s=>s.cmd.slice(1).startsWith(e));k(null),y(null),z(s.length?{items:s,index:0}:null);return}z(null);let n=e.slice(0,s).match(/#([a-z0-9_-]*)$/i);if(n&&m&&m.length>0){let e=n[1].toLowerCase(),t=m.filter(s=>s.key.toLowerCase().includes(e)||s.title.toLowerCase().includes(e));k(null),y({query:e,start:s-n[0].length,items:t,index:0});return}y(null);let l=e.slice(0,s).match(/@([a-z0-9-]*)$/i);if(!l)return k(null);let c=l[1].toLowerCase(),r=t.filter(e=>e.handle.includes(c)||e.name.toLowerCase().includes(c)||e.role.toLowerCase().includes(c));k({query:c,start:s-l[0].length,items:r,index:0})}(e.target.value,e.target.selectionStart),G(e.target)},onKeyDown:function(e){if(S&&S.items.length){if("ArrowDown"===e.key){e.preventDefault(),z(e=>e&&{...e,index:(e.index+1)%e.items.length});return}if("ArrowUp"===e.key){e.preventDefault(),z(e=>e&&{...e,index:(e.index-1+e.items.length)%e.items.length});return}if("Enter"===e.key||"Tab"===e.key){e.preventDefault(),X(S.items[S.index]);return}if("Escape"===e.key){e.preventDefault(),z(null);return}}if(N&&N.items.length){if("ArrowDown"===e.key){e.preventDefault(),y(e=>e&&{...e,index:(e.index+1)%e.items.length});return}if("ArrowUp"===e.key){e.preventDefault(),y(e=>e&&{...e,index:(e.index-1+e.items.length)%e.items.length});return}if("Enter"===e.key||"Tab"===e.key){e.preventDefault(),Q(N.items[N.index]);return}if("Escape"===e.key){e.preventDefault(),y(null);return}}if(b&&b.items.length){if("ArrowDown"===e.key){e.preventDefault(),k(e=>e&&{...e,index:(e.index+1)%e.items.length});return}if("ArrowUp"===e.key){e.preventDefault(),k(e=>e&&{...e,index:(e.index-1+e.items.length)%e.items.length});return}if("Enter"===e.key||"Tab"===e.key){e.preventDefault(),J(b.items[b.index]);return}if("Escape"===e.key){e.preventDefault(),k(null);return}}if("Escape"===e.key&&A){e.preventDefault(),L(!1);return}"Enter"!==e.key||e.shiftKey||(e.preventDefault(),Z())},onFocus:()=>v(!0),onBlur:()=>v(!1)}),r&&(0,a.jsx)("input",{ref:B,type:"file",multiple:!0,hidden:!0,accept:".png,.jpg,.jpeg,.gif,.webp,.bmp,.pdf,.txt,.md,.csv,.json,.log,.zip,.doc,.docx,.xls,.xlsx,.ppt,.pptx",onChange:e=>O(e.target.files)}),(0,a.jsxs)("div",{className:"composer-foot",children:[(0,a.jsxs)("span",{className:"composer-actions",children:[r&&(0,a.jsxs)("button",{type:"button",className:"att-btn",title:x("chat.composer.attachTitle"),disabled:C||D.length>=10,onClick:()=>B.current?.click(),children:[C?(0,a.jsx)("span",{className:"spin",children:(0,a.jsx)(d.I,{name:"refresh",size:13})}):(0,a.jsx)(d.I,{name:"add",size:14})," ",D.length>0?`${D.length}/10`:x("chat.composer.attach")]}),V&&(0,a.jsxs)("button",{type:"button",className:"att-btn kb-pull-btn",title:x("chat.kbPull.open"),disabled:U,onMouseDown:e=>e.preventDefault(),onClick:function(){$(u.replace(/@[a-z0-9-]+/gi,"").trim().slice(0,180)),T(null),W(""),k(null),z(null),y(null),L(e=>!e)},children:[(0,a.jsx)(d.I,{name:"branch",size:13})," ",x("chat.kbPull.open")]})]}),c&&u.trim()&&!g?(0,a.jsxs)("span",{className:"composer-hint",style:{color:"#f0a35e"},children:[(0,a.jsx)(d.I,{name:"at",size:11})," ",x("chat.composer.mentionToSend")]}):(0,a.jsxs)("span",{className:"composer-hint",children:[(0,a.jsx)("kbd",{children:"↵"})," ",x("chat.composer.send")," \xb7 ",(0,a.jsx)("kbd",{children:"⇧↵"})," ",x("chat.composer.newline")]}),(0,a.jsxs)("button",{className:"send-btn",disabled:!u.trim()&&0===D.length||!g,onMouseDown:e=>e.preventDefault(),onClick:Z,children:[(0,a.jsx)(d.I,{name:"send",size:13})," ",x("home.cmd.run")]})]})]})]})}function S({atts:e}){return(0,a.jsx)("div",{className:"msg-atts",children:e.map(e=>{let s=`/api/upload?path=${encodeURIComponent(e.path)}`;return/^image\//.test(e.type)?(0,a.jsx)("a",{href:s,target:"_blank",rel:"noreferrer",className:"msg-att-img",title:e.name,children:(0,a.jsx)("img",{src:s,alt:e.name,loading:"lazy"})},e.path):(0,a.jsxs)("a",{href:s,target:"_blank",rel:"noreferrer",className:"msg-att-doc",title:e.name,children:[(0,a.jsx)(d.I,{name:"doc",size:13})," ",(0,a.jsx)("span",{className:"mad-name",children:e.name})]},e.path)})})}function z({id:e}){let s=(0,o.k)(),[t,l]=(0,n.useTransition)(),[c,r]=(0,n.useState)(!1);return(0,a.jsx)("button",{type:"button",className:"cmsg-kb",disabled:t||c,title:s(c?"chat.kbSave.saved":"chat.kbSave.send"),onClick:()=>l(async()=>{(await u(e)).ok&&r(!0)}),style:{background:"none",border:"none",cursor:c?"default":"pointer",padding:0,marginLeft:2,display:"inline-flex",alignItems:"center",color:c?"var(--accent)":"var(--text-faint)",opacity:t?.5:1},children:(0,a.jsx)(d.I,{name:c?"check":"branch",size:11,className:t?"sync-spin":""})})}function D({taskId:e}){let[s,t]=(0,n.useState)(null);return((0,n.useEffect)(()=>{let s=!0;return p(e).then(e=>{s&&t(e)}).catch(()=>{}),()=>{s=!1}},[e]),s)?(0,a.jsxs)("div",{style:{marginTop:5,fontSize:10.5,color:"var(--text-faint)",display:"flex",alignItems:"center",gap:5,flexWrap:"wrap"},children:[(0,a.jsx)(d.I,{name:"branch",size:10}),(0,a.jsx)("span",{style:{color:"var(--accent)",fontWeight:600},children:s.taskKey}),s.issueKey&&(0,a.jsxs)("span",{children:["\xb7 ",s.issueKey]}),s.goalTitle&&(0,a.jsxs)("span",{children:["\xb7 ",s.goalTitle.slice(0,40)]}),s.col&&(0,a.jsx)("span",{style:{padding:"0 5px",borderRadius:5,border:"1px solid var(--border)",textTransform:"capitalize"},children:s.col})]}):null}function I({blocks:e}){let s=(0,l.useRouter)(),t=(0,o.k)();return(0,a.jsxs)("div",{style:{marginTop:5,fontSize:10.5,color:"var(--text-faint)",display:"flex",alignItems:"center",gap:5,flexWrap:"wrap"},children:[(0,a.jsx)(d.I,{name:"doc",size:10}),(0,a.jsx)("span",{children:t("chat.touchedBlocks")}),e.map(e=>(0,a.jsx)("button",{type:"button",title:t("chat.touchedBlocks"),onClick:()=>s.push("/knowledge"),style:{color:"var(--accent)",fontWeight:600,background:"rgba(120,100,255,.10)",border:"1px solid rgba(120,100,255,.25)",borderRadius:4,padding:"0 5px",cursor:"pointer"},children:e},e))]})}function K({sources:e}){let[s,t]=(0,n.useState)(!1),l=(0,o.k)();return(0,a.jsxs)("div",{className:"msg-sources",children:[(0,a.jsxs)("button",{type:"button",className:"msg-sources-toggle",onClick:()=>t(e=>!e),children:[(0,a.jsx)(d.I,{name:"pulse",size:10})," ",l("chat.sources",{n:e.length})," ",(0,a.jsx)(d.I,{name:s?"chevronDown":"chevronRight",size:11})]}),s&&(0,a.jsx)("div",{className:"msg-sources-list",children:e.map((e,s)=>(0,a.jsx)("span",{children:e},s))})]})}function R({text:e,markdown:s,known:t,refs:l}){let i=(0,o.k)(),[d,m]=(0,n.useState)(!1),h=e.length>900;return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"cmsg-bubble"+(h&&!d?" clamped":"")+(h&&d?" expanded":""),children:s?(0,a.jsx)("div",{className:"md cmsg-md",children:(0,a.jsx)(c.oz,{remarkPlugins:[r.A],children:e})}):k(e,t,l)}),h&&(0,a.jsx)("button",{type:"button",className:"cmsg-more",onClick:()=>m(e=>!e),children:i(d?"chat.showLess":"chat.showMore")})]})}function C({m:e}){let s=(0,o.k)(),t=(0,l.useRouter)(),[i,m]=(0,n.useTransition)(),[h,u]=(0,n.useState)(!1),[p,j]=(0,n.useState)(null);return(0,a.jsxs)("div",{className:"kb-card",children:[(0,a.jsxs)("div",{className:"kb-card-head",children:[(0,a.jsx)(d.I,{name:"branch",size:14})," ",s("kbcard.title")]}),(0,a.jsx)("div",{className:"kb-card-body cmsg-md",children:(0,a.jsx)(c.oz,{remarkPlugins:[r.A],children:e.text})}),p&&(0,a.jsxs)("div",{className:"kb-card-note",children:[(0,a.jsx)(d.I,{name:"check",size:12})," ",p]}),(0,a.jsxs)("div",{className:"kb-card-actions",children:[(0,a.jsx)("button",{className:"kbc-btn primary",disabled:i,onClick:()=>m(async()=>{j(s("kbcard.created",{n:(await (0,x.V)()).seeded})),t.refresh()}),children:s("home.createBlocks")}),(0,a.jsx)("button",{className:"kbc-btn",onClick:()=>t.push("/knowledge"),children:s("home.openKnowledge")}),(0,a.jsx)("button",{className:"kbc-btn",disabled:i,onClick:()=>m(async()=>{j(s("kb.reindexResult",{n:(await (0,g.f)()).chunks})),t.refresh()}),children:s("kb.reindex")})]}),e.sources&&e.sources.length>0&&(0,a.jsxs)("div",{className:"kb-card-sources",children:[(0,a.jsxs)("button",{type:"button",className:"msg-sources-toggle",onClick:()=>u(e=>!e),children:[(0,a.jsx)(d.I,{name:"pulse",size:10})," ",s("chat.sources",{n:e.sources.length})," ",(0,a.jsx)(d.I,{name:h?"chevronDown":"chevronRight",size:11})]}),h&&(0,a.jsx)("div",{className:"msg-sources-list",children:e.sources.map((e,s)=>(0,a.jsx)("span",{children:e},s))})]})]})}function M({msgs:e,typing:s,agents:t,byRun:l,liveRuns:c,loading:r,highlightId:d,operator:m,markdownAgent:h=!1,emptyHint:u,avatarSize:p=30,refs:x}){let g=(0,o.k)(),j=(0,n.useRef)(null),f=(0,n.useRef)(!0),v=Object.fromEntries(t.map(e=>[e.handle,e])),b=new Set(t.map(e=>e.handle));return(0,n.useEffect)(()=>{let e=j.current;e&&f.current&&(e.scrollTop=e.scrollHeight)},[e,s,l,c]),(0,n.useEffect)(()=>{d&&document.getElementById("m-"+d)?.scrollIntoView({block:"center",behavior:"smooth"})},[d,e]),(0,a.jsxs)("div",{className:"chat-stream scroll",ref:j,onScroll:()=>{let e=j.current;e&&(f.current=e.scrollHeight-e.scrollTop-e.clientHeight<120)},children:[[...e].sort((e,s)=>{let t=e.createdAt?new Date(e.createdAt).getTime():0,a=s.createdAt?new Date(s.createdAt).getTime():0;return t!==a?t-a:("operator"!==e.fromKind)-("operator"!==s.fromKind)}).map(e=>{let s="operator"===e.fromKind,t=e.fromHandle?v[e.fromHandle]:null,n=l[e.id],c=!s&&"kb-card"===e.kind;return(0,a.jsxs)("div",{className:"cmsg"+(s?" operator":"")+(d===e.id?" highlight":""),id:"m-"+e.id,children:[s?m?.image?(0,a.jsx)(i.e,{name:m.name||g("chat.you"),color:"#9a5cff",image:m.image,size:p}):(0,a.jsx)("div",{className:"avatar",style:{background:"linear-gradient(150deg,#e0a44e,#9a5cff)",color:"#1a1206",width:p,height:p,borderRadius:Math.round(.3*p),display:"grid",placeItems:"center",fontWeight:700,fontSize:Math.round(.4*p)},children:"OP"}):t?(0,a.jsx)(i.e,{name:t.name,color:t.color,image:t.image,size:p}):(0,a.jsx)(i.e,{name:"?",color:"#6b7390",size:p}),(0,a.jsxs)("div",{className:"cmsg-body",children:[(0,a.jsxs)("div",{className:"cmsg-head",children:[(0,a.jsx)("span",{className:"cmsg-name",children:s?g("chat.you"):t?.name??e.fromHandle}),!s&&t&&(0,a.jsx)("span",{className:"cmsg-role",children:t.role}),(0,a.jsx)("span",{className:"cmsg-when",children:function(e){if(!e)return"";let s="string"==typeof e?new Date(e):e,t=s.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}),a=s.toLocaleDateString([],{day:"2-digit",month:"short"});return`${a}, ${t}`}(e.createdAt)}),!s&&e.text&&(0,a.jsx)(z,{id:e.id})]}),n&&n.length>0&&(0,a.jsx)(y,{steps:n,live:!1}),c?(0,a.jsx)(C,{m:e}):e.text&&(0,a.jsx)(R,{text:e.text,markdown:h&&!s,known:b,refs:x}),e.attachments&&e.attachments.length>0&&(0,a.jsx)(S,{atts:e.attachments}),!s&&!c&&e.sources&&e.sources.length>0&&(0,a.jsx)(K,{sources:e.sources}),!s&&e.taskId&&(0,a.jsx)(D,{taskId:e.taskId}),!s&&e.blocks&&e.blocks.length>0&&(0,a.jsx)(I,{blocks:e.blocks})]})]},e.id)}),c.map(([e,s])=>{let n=s.find(e=>e.agentId)?.agentId,l=t.find(e=>e.id===n);if(!l)return null;let c=s.reduce((e,s)=>Math.max(e,s.seq||0),0),r=s.some(e=>"done"===e.kind)||c>0&&Date.now()-c>12e4,d=s.filter(e=>"text"===e.kind).map(e=>e.detail).join("");return(0,a.jsxs)("div",{className:"cmsg",children:[(0,a.jsx)(i.e,{name:l.name,color:l.color,image:l.image,size:p}),(0,a.jsxs)("div",{className:"cmsg-body",children:[(0,a.jsxs)("div",{className:"cmsg-head",children:[(0,a.jsx)("span",{className:"cmsg-name",children:l.name}),(0,a.jsx)("span",{className:"cmsg-role",children:l.role})]}),(0,a.jsx)(y,{steps:s,live:!r}),d&&(0,a.jsxs)("div",{className:"cmsg-bubble",children:[k(d,b,x),!r&&(0,a.jsx)("span",{className:"live-caret"})]})]})]},"live-"+e)}),s.filter(e=>{let s=v[e];return s&&!c.some(([,e])=>e.some(e=>e.agentId===s.id))}).map(e=>{let s=v[e];return s?(0,a.jsxs)("div",{className:"cmsg",children:[(0,a.jsx)(i.e,{name:s.name,color:s.color,image:s.image,size:p}),(0,a.jsxs)("div",{className:"cmsg-body",children:[(0,a.jsxs)("div",{className:"cmsg-head",children:[(0,a.jsx)("span",{className:"cmsg-name",children:s.name}),(0,a.jsx)("span",{className:"cmsg-role",children:s.role})]}),(0,a.jsxs)("div",{className:"typing-bubble",children:[(0,a.jsx)("span",{}),(0,a.jsx)("span",{}),(0,a.jsx)("span",{})]})]})]},"typing-"+e):null}),r&&0===e.length&&0===c.length&&(0,a.jsx)("div",{className:"chat-skel","aria-label":g("home.chat.loading"),children:[0,1,2].map(e=>(0,a.jsxs)("div",{className:"skel-row",style:{animationDelay:`${.12*e}s`},children:[(0,a.jsx)("div",{className:"skel-avatar"}),(0,a.jsxs)("div",{className:"skel-lines",children:[(0,a.jsx)("div",{className:"skel-line",style:{width:"38%"}}),(0,a.jsx)("div",{className:"skel-line",style:{width:1===e?"82%":"64%"}}),2!==e&&(0,a.jsx)("div",{className:"skel-line",style:{width:"48%"}})]})]},e))}),!r&&0===e.length&&0===s.length&&0===c.length&&(0,a.jsx)("div",{className:"mention-empty",style:{textAlign:"center",padding:22},children:u??g("chat.stream.emptyHint")})]})}},5904:(e,s,t)=>{t.d(s,{e:()=>n});var a=t(4275);function n({name:e,color:s,size:t=24,health:l,image:c}){let r=Math.max(6,Math.round(.3*t)),i=Math.round(.28*t),d=c?/^(data:|https?:|\/)/.test(c)?c:`/api/upload?path=${encodeURIComponent(c)}`:null;return(0,a.jsxs)("span",{style:{position:"relative",width:t,height:t,flex:`0 0 ${t}px`,display:"inline-block"},children:[d?(0,a.jsx)("img",{src:d,alt:e,width:t,height:t,style:{width:t,height:t,borderRadius:i,objectFit:"cover",display:"block"}}):(0,a.jsx)("span",{style:{width:t,height:t,borderRadius:i,background:s,color:"#fff",display:"grid",placeItems:"center",fontSize:Math.round(.42*t),fontWeight:700},children:(e[0]||"?").toUpperCase()}),l&&(0,a.jsx)("span",{style:{position:"absolute",right:-1,bottom:-1,width:r,height:r,borderRadius:"50%",background:"alive"===l?"var(--sx-string)":"stale"===l?"var(--sx-number)":"var(--text-faint)",border:"1.5px solid var(--bg-elevated)"}})]})}},6466:(e,s,t)=>{t.d(s,{L:()=>n});var a=t(7797);let n=(0,a.createServerReference)("409ed8e3ac05d42abbb31aa9cc912fa47dccab739e",a.callServer,void 0,a.findSourceMapURL,"compactConversation")},7280:(e,s,t)=>{t.d(s,{p:()=>n});var a=t(7797);let n=(0,a.createServerReference)("405df6a9c5e07f494d2e2032d2fb70d41ed8071913",a.callServer,void 0,a.findSourceMapURL,"conversationContext")},7292:(e,s,t)=>{t.d(s,{f:()=>n});var a=t(7797);let n=(0,a.createServerReference)("0024362c5f4091f01256d62c3fcde45a2be385d457",a.callServer,void 0,a.findSourceMapURL,"reindexKbAction")},7492:(e,s,t)=>{t.d(s,{V:()=>n});var a=t(7797);let n=(0,a.createServerReference)("40c37cc1e125e055ed670d73b257ae5a5289e3994b",a.callServer,void 0,a.findSourceMapURL,"getMessages")},7558:(e,s,t)=>{t.d(s,{k:()=>n});var a=t(7797);let n=(0,a.createServerReference)("603c43bef66e43b540b8445b0c3fe4ee8e746a3329",a.callServer,void 0,a.findSourceMapURL,"getEvents")},9408:(e,s,t)=>{t.d(s,{V:()=>n});var a=t(7797);let n=(0,a.createServerReference)("00a88340d83bb29f97492219dfdec374cfd0ebedaa",a.callServer,void 0,a.findSourceMapURL,"seedDefaultBlocksAction")}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7790],{7790:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r}});let l=a(1532),s=a(6352),u=l._(a(5132)),n=a(9232);async function o({Component:e,ctx:t}){return{pageProps:await (0,n.loadGetInitialProps)(e,t)}}class r extends u.default.Component{static{this.origGetInitialProps=o}static{this.getInitialProps=o}render(){let{Component:e,pageProps:t}=this.props;return(0,s.jsx)(e,{...t})}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8251],{4261:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});var r={default:function(){return y},defaultHead:function(){return c}};for(var o in r)Object.defineProperty(t,o,{enumerable:!0,get:r[o]});let a=n(1532),i=n(8781),l=n(6352),d=i._(n(5132)),s=a._(n(5538)),u=n(5597);function c(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===d.default.Fragment?e.concat(d.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}n(2617);let p=["name","httpEquiv","charSet","itemProp"];function h(e){let t,n,r,o;return e.reduce(f,[]).reverse().concat(c().reverse()).filter((t=new Set,n=new Set,r=new Set,o={},e=>{let a=!0,i=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){i=!0;let n=e.key.slice(e.key.indexOf("$")+1);t.has(n)?a=!1:t.add(n)}switch(e.type){case"title":case"base":n.has(e.type)?a=!1:n.add(e.type);break;case"meta":for(let t=0,n=p.length;t<n;t++){let n=p[t];if(e.props.hasOwnProperty(n))if("charSet"===n)r.has(n)?a=!1:r.add(n);else{let t=e.props[n],r=o[n]||new Set;("name"!==n||!i)&&r.has(t)?a=!1:(r.add(t),o[n]=r)}}}return a})).reverse().map((e,t)=>{let n=e.key||t;return d.default.cloneElement(e,{key:n})})}let y=function({children:e}){let t=(0,d.useContext)(u.HeadManagerContext);return(0,l.jsx)(s.default,{reduceComponentsToState:h,headManager:t,children:e})};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},5538:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i}});let r=n(5132),o=r.useLayoutEffect,a=r.useEffect;function i(e){let{headManager:t,reduceComponentsToState:n}=e;function i(){if(t&&t.mountedInstances){let e=r.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(n(e))}}return o(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),o(()=>(t&&(t._pendingUpdate=i),()=>{t&&(t._pendingUpdate=i)})),a(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},8251:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return h}});let r=n(1532),o=n(6352),a=r._(n(5132)),i=r._(n(4261)),l={400:"Bad Request",404:"This page could not be found",405:"Method Not Allowed",500:"Internal Server Error"};function d({req:e,res:t,err:n}){return{statusCode:t&&t.statusCode?t.statusCode:n?n.statusCode:404,hostname:window.location.hostname}}let s={fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},u={lineHeight:"48px"},c={display:"inline-block",margin:"0 20px 0 0",paddingRight:23,fontSize:24,fontWeight:500,verticalAlign:"top"},f={fontSize:14,fontWeight:400,lineHeight:"28px"},p={display:"inline-block"};class h extends a.default.Component{static{this.displayName="ErrorPage"}static{this.getInitialProps=d}static{this.origGetInitialProps=d}render(){let{statusCode:e,withDarkMode:t=!0}=this.props,n=this.props.title||l[e]||"An unexpected error has occurred";return(0,o.jsxs)("div",{style:s,children:[(0,o.jsx)(i.default,{children:(0,o.jsx)("title",{children:e?`${e}: ${n}`:"Application error: a client-side exception has occurred"})}),(0,o.jsxs)("div",{style:u,children:[(0,o.jsx)("style",{dangerouslySetInnerHTML:{__html:`body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}${t?"@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}":""}`}}),e?(0,o.jsx)("h1",{className:"next-error-h1",style:c,children:e}):null,(0,o.jsx)("div",{style:p,children:(0,o.jsxs)("h2",{style:f,children:[this.props.title||e?n:(0,o.jsxs)(o.Fragment,{children:["Application error: a client-side exception has occurred"," ",!!this.props.hostname&&(0,o.jsxs)(o.Fragment,{children:["while loading ",this.props.hostname]})," ","(see the browser console for more information)"]}),"."]})})]})]})}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9279],{4952:(e,t,o)=>{o.d(t,{m:()=>r});var s=o(4275),p=o(2899),a=o(888),i=o(9156),l=o(869);function r({value:e,options:t,onChange:o,placeholder:n,mono:c,glyph:u,disabled:d,searchable:y}){let m=(0,l.k)(),[h,A]=(0,p.useState)(!1),[_,g]=(0,p.useState)(""),b=(0,p.useRef)(null),f=(0,p.useRef)(null),v=(0,p.useMemo)(()=>(t||[]).map(e=>"string"==typeof e?{value:e,label:e}:e),[t]),k=v.find(t=>t.value===e),T=(y??v.length>8)&&!d,x=_.trim().toLowerCase(),O=T&&x?v.filter(e=>(e.label+" "+e.value+" "+(e.sub||"")).toLowerCase().includes(x)):v;return(0,p.useEffect)(()=>{if(!h)return void g("");function e(e){b.current&&!b.current.contains(e.target)&&A(!1)}function t(e){"Escape"===e.key&&A(!1)}return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),T&&requestAnimationFrame(()=>f.current?.focus()),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[h,T]),(0,s.jsxs)("div",{className:"dd"+(h?" open":"")+(d?" disabled":""),ref:b,children:[(0,s.jsxs)("button",{type:"button",className:"dd-btn"+(c?" mono":""),onClick:()=>!d&&A(e=>!e),children:[u&&k&&(0,s.jsx)(i.W,{id:k.glyphId||k.value,size:20}),(0,s.jsx)("span",{className:"dd-val",children:k?k.label:(0,s.jsx)("span",{className:"dd-ph",children:n||m("common.selectEllipsis")})}),(0,s.jsx)(a.I,{name:"chevronDown",size:14})]}),h&&(0,s.jsxs)("div",{className:"dd-menu scroll",children:[T&&(0,s.jsxs)("div",{style:{position:"sticky",top:0,zIndex:1,display:"flex",alignItems:"center",gap:6,padding:"6px 8px",margin:"-4px -4px 4px",background:"var(--bg-elev, var(--bg-active))",borderBottom:"1px solid var(--border)"},children:[(0,s.jsx)(a.I,{name:"search",size:13}),(0,s.jsx)("input",{ref:f,value:_,placeholder:m("common.searchEllipsis"),onChange:e=>g(e.target.value),onKeyDown:e=>{"Enter"===e.key&&O[0]?(o(O[0].value),A(!1)):"Escape"===e.key&&_&&(e.stopPropagation(),g(""))},className:c?"mono":void 0,style:{flex:1,minWidth:0,background:"transparent",border:"none",outline:"none",color:"var(--text)",fontSize:12.5,fontFamily:c?"var(--mono-font)":"inherit"}}),_&&(0,s.jsx)("button",{type:"button",title:m("common.clear"),onClick:()=>{g(""),f.current?.focus()},style:{background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",display:"flex",padding:0},children:(0,s.jsx)(a.I,{name:"close",size:12})})]}),0===v.length&&(0,s.jsx)("div",{className:"dd-empty",children:m("common.noOptions")}),v.length>0&&0===O.length&&(0,s.jsx)("div",{className:"dd-empty",children:m("dropdown.noMatch",{q:_})}),O.map(t=>(0,s.jsxs)("button",{type:"button",className:"dd-opt"+(t.value===e?" on":""),onClick:()=>{o(t.value),A(!1)},children:[u&&(0,s.jsx)(i.W,{id:t.glyphId||t.value,size:22}),(0,s.jsxs)("span",{className:"dd-opt-main",children:[(0,s.jsx)("span",{className:"dd-opt-label"+(c?" mono":""),children:t.label}),t.sub&&(0,s.jsx)("span",{className:"dd-opt-sub",children:t.sub})]}),t.tag&&(0,s.jsx)("span",{className:"dd-opt-tag",children:t.tag}),t.value===e&&(0,s.jsx)(a.I,{name:"check",size:13})]},t.value))]})]})}},6512:(e,t,o)=>{o.d(t,{WQ:()=>s,kH:()=>a});let s=[{id:"anthropic",displayName:"Anthropic",category:"cloud_api",connectionTypes:["api_key","oauth"],defaultAdapter:"http_anthropic",baseUrl:"https://api.anthropic.com",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!0,supportsVision:!0,supportsTools:!0,status:"available",notes:"Claude family. Model list mapped from provider capabilities."},{id:"openai",displayName:"OpenAI",category:"cloud_api",connectionTypes:["api_key","oauth"],defaultAdapter:"http_openai",baseUrl:"https://api.openai.com/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!0,supportsVision:!0,supportsTools:!0,status:"available",notes:"GPT-4o/o-series + DALL\xb7E + Whisper."},{id:"google_gemini",displayName:"Google AI / Gemini",category:"cloud_api",connectionTypes:["api_key","oauth"],defaultAdapter:"http_google",baseUrl:"https://generativelanguage.googleapis.com",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!0,supportsVision:!0,supportsTools:!0,status:"available",notes:"Gemini 1.5/2.x via AI Studio API key."},{id:"xai_grok",displayName:"xAI / Grok",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_xai",baseUrl:"https://api.x.ai/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsVision:!0,supportsTools:!0,status:"available",notes:"OpenAI-compatible REST. Grok-2/3."},{id:"deepseek",displayName:"DeepSeek",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_deepseek",baseUrl:"https://api.deepseek.com",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"deepseek-chat / deepseek-reasoner."},{id:"cohere",displayName:"Cohere",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_cohere",baseUrl:"https://api.cohere.com/v2",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"Command R/R+ and strong rerank/embeddings."},{id:"ai21",displayName:"AI21",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_ai21",baseUrl:"https://api.ai21.com/studio/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"experimental"},{id:"perplexity",displayName:"Perplexity",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_perplexity",baseUrl:"https://api.perplexity.ai",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"available"},{id:"groq",displayName:"Groq",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_groq",baseUrl:"https://api.groq.com/openai/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"Ultra-low-latency LPU inference, OpenAI-compatible."},{id:"nvidia_nim",displayName:"NVIDIA / NIM",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_nvidia",baseUrl:"https://integrate.api.nvidia.com/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsVision:!0,supportsTools:!0,status:"available",notes:"NIM microservices, OpenAI-compatible."},{id:"together",displayName:"Together AI",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_together",baseUrl:"https://api.together.xyz/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available"},{id:"fireworks",displayName:"Fireworks AI",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_fireworks",baseUrl:"https://api.fireworks.ai/inference/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available"},{id:"cerebras",displayName:"Cerebras",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_cerebras",baseUrl:"https://api.cerebras.ai/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,status:"available",notes:"Wafer-scale fast inference."},{id:"huggingface",displayName:"Hugging Face",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_hf",baseUrl:"https://api-inference.huggingface.co",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"experimental"},{id:"replicate",displayName:"Replicate",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_replicate",baseUrl:"https://api.replicate.com/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"experimental"},{id:"anyscale",displayName:"Anyscale",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_anyscale",baseUrl:"https://api.endpoints.anyscale.com/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"planned",notes:"Endpoints product changing — adapter pending."},{id:"databricks",displayName:"Databricks",category:"cloud_api",connectionTypes:["api_key","oauth"],defaultAdapter:"http_databricks",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!0,status:"requires_setup"},{id:"stability",displayName:"Stability AI",category:"image",connectionTypes:["api_key"],defaultAdapter:"http_stability",baseUrl:"https://api.stability.ai",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"experimental"},{id:"elevenlabs",displayName:"ElevenLabs",category:"audio",connectionTypes:["api_key"],defaultAdapter:"http_elevenlabs",baseUrl:"https://api.elevenlabs.io/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,status:"available",notes:"TTS / voice."},{id:"voyage",displayName:"Voyage AI",category:"embedding",connectionTypes:["api_key"],defaultAdapter:"http_voyage",baseUrl:"https://api.voyageai.com/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"available"},{id:"jina",displayName:"Jina AI",category:"embedding",connectionTypes:["api_key"],defaultAdapter:"http_jina",baseUrl:"https://api.jina.ai/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"available"},{id:"runpod",displayName:"RunPod",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_runpod",baseUrl:"https://api.runpod.ai/v2",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"requires_setup"},{id:"lambda",displayName:"Lambda Labs",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_lambda",baseUrl:"https://api.lambdalabs.com/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,status:"experimental"},{id:"modal",displayName:"Modal",category:"cloud_api",connectionTypes:["api_key","custom_endpoint"],defaultAdapter:"http_modal",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"requires_setup"},{id:"baseten",displayName:"Baseten",category:"cloud_api",connectionTypes:["api_key"],defaultAdapter:"http_baseten",baseUrl:"https://inference.baseten.co/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"requires_setup"},{id:"openrouter",displayName:"OpenRouter",category:"router",connectionTypes:["api_key","oauth"],defaultAdapter:"http_openrouter",baseUrl:"https://openrouter.ai/api/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!0,supportsVision:!0,supportsTools:!0,status:"available",notes:"Aggregates 300+ models across providers — full live list."},{id:"omnirouter",displayName:"OmniRouter",category:"router",connectionTypes:["api_key"],defaultAdapter:"http_omnirouter",baseUrl:"https://api.omnirouter.ai/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,status:"experimental",notes:"OpenAI-compatible multi-provider router."},{id:"litellm",displayName:"LiteLLM",category:"openai_compatible",connectionTypes:["api_key","openai_compatible","custom_endpoint"],defaultAdapter:"http_litellm",baseUrl:"http://localhost:4000",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"Self-hosted proxy; unifies 100+ providers."},{id:"portkey",displayName:"Portkey",category:"router",connectionTypes:["api_key"],defaultAdapter:"http_portkey",baseUrl:"https://api.portkey.ai/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Gateway with virtual keys."},{id:"helicone",displayName:"Helicone",category:"router",connectionTypes:["api_key"],defaultAdapter:"http_helicone",baseUrl:"https://oai.helicone.ai/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"experimental",notes:"Observability proxy in front of OpenAI-compatible providers."},{id:"openai_compatible",displayName:"OpenAI-compatible endpoint",category:"openai_compatible",connectionTypes:["openai_compatible","api_key","custom_endpoint"],defaultAdapter:"http_openai_compat",baseUrl:"https://",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"Any server exposing /v1/chat/completions + /v1/models."},{id:"lmstudio_server",displayName:"LM Studio (OpenAI server)",category:"openai_compatible",connectionTypes:["openai_compatible","local"],defaultAdapter:"http_openai_compat",baseUrl:"http://localhost:1234/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"available",notes:"Local OpenAI-compatible server from LM Studio."},{id:"ollama_openai",displayName:"Ollama (OpenAI endpoint)",category:"openai_compatible",connectionTypes:["openai_compatible","local"],defaultAdapter:"http_openai_compat",baseUrl:"http://localhost:11434/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"Ollama's OpenAI-compatible surface."},{id:"vllm_server",displayName:"vLLM (OpenAI server)",category:"openai_compatible",connectionTypes:["openai_compatible","local"],defaultAdapter:"http_openai_compat",baseUrl:"http://localhost:8000/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"High-throughput self-hosted serving."},{id:"tgi",displayName:"Text Generation Inference",category:"openai_compatible",connectionTypes:["openai_compatible","local","custom_endpoint"],defaultAdapter:"http_openai_compat",baseUrl:"http://localhost:8080/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"experimental",notes:"HF TGI with OpenAI route."},{id:"localai",displayName:"LocalAI",category:"openai_compatible",connectionTypes:["openai_compatible","local"],defaultAdapter:"http_openai_compat",baseUrl:"http://localhost:8080/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"available",notes:"Drop-in OpenAI replacement, fully local."},{id:"azure_openai",displayName:"Azure OpenAI",category:"cloud_platform",connectionTypes:["api_key","oauth"],defaultAdapter:"http_azure_openai",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!0,supportsVision:!0,supportsTools:!0,status:"requires_setup"},{id:"aws_bedrock",displayName:"AWS Bedrock",category:"cloud_platform",connectionTypes:["api_key","custom_endpoint"],defaultAdapter:"sdk_bedrock",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsVision:!0,supportsTools:!0,status:"requires_setup",notes:"SigV4 auth; multi-vendor models."},{id:"vertex_ai",displayName:"Google Vertex AI",category:"cloud_platform",connectionTypes:["oauth","api_key"],defaultAdapter:"sdk_vertex",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!0,supportsVision:!0,supportsTools:!0,status:"requires_setup",notes:"GCP service-account / ADC."},{id:"cloudflare",displayName:"Cloudflare Workers AI",category:"cloud_platform",connectionTypes:["api_key"],defaultAdapter:"http_cloudflare",baseUrl:"https://api.cloudflare.com/client/v4",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,status:"experimental"},{id:"oci_genai",displayName:"Oracle OCI Generative AI",category:"cloud_platform",connectionTypes:["api_key","custom_endpoint"],defaultAdapter:"sdk_oci",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"planned",notes:"OCI SDK signing — adapter pending."},{id:"watsonx",displayName:"IBM watsonx",category:"cloud_platform",connectionTypes:["api_key","oauth"],defaultAdapter:"http_watsonx",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!0,status:"requires_setup"},{id:"dashscope",displayName:"Alibaba DashScope / Qwen",category:"cloud_platform",connectionTypes:["api_key"],defaultAdapter:"http_dashscope",baseUrl:"https://dashscope-intl.aliyuncs.com/compatible-mode/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsVision:!0,supportsTools:!0,status:"experimental",notes:"Qwen models, OpenAI-compatible mode."},{id:"qianfan",displayName:"Baidu Qianfan",category:"cloud_platform",connectionTypes:["api_key","oauth"],defaultAdapter:"http_qianfan",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!0,status:"planned",notes:"ERNIE; access-token auth — adapter pending."},{id:"hunyuan",displayName:"Tencent Hunyuan",category:"cloud_platform",connectionTypes:["api_key"],defaultAdapter:"http_hunyuan",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"planned",notes:"TC3-HMAC signing — adapter pending."},{id:"zhipu",displayName:"Zhipu AI (GLM)",category:"cloud_platform",connectionTypes:["api_key"],defaultAdapter:"http_zhipu",baseUrl:"https://open.bigmodel.cn/api/paas/v4",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,supportsVision:!0,supportsTools:!0,status:"experimental"},{id:"moonshot",displayName:"Moonshot AI / Kimi",category:"cloud_platform",connectionTypes:["api_key"],defaultAdapter:"http_moonshot",baseUrl:"https://api.moonshot.cn/v1",supportsModelSync:!0,supportsApiKey:!0,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"OpenAI-compatible; long context."},{id:"minimax",displayName:"MiniMax",category:"cloud_platform",connectionTypes:["api_key"],defaultAdapter:"http_minimax",baseUrl:"https://api.minimax.chat/v1",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"planned",notes:"Group-id + key auth — adapter pending."},{id:"ollama",displayName:"Ollama",category:"local_runtime",connectionTypes:["local","cli"],defaultAdapter:"local_ollama",baseUrl:"http://localhost:11434",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsVision:!0,supportsTools:!0,status:"available",notes:"Pulls + serves local models; live /api/tags list."},{id:"llamacpp",displayName:"llama.cpp",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_llamacpp",baseUrl:"http://127.0.0.1:8082",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"available",notes:"GGUF models, SHA-256 verified, bound to 127.0.0.1."},{id:"lmstudio",displayName:"LM Studio",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_lmstudio",baseUrl:"http://localhost:1234",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsVision:!0,status:"available",notes:"Desktop runtime + local server."},{id:"vllm",displayName:"vLLM",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_vllm",baseUrl:"http://localhost:8000",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"available",notes:"GPU serving engine."},{id:"localai_rt",displayName:"LocalAI",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_localai",baseUrl:"http://localhost:8080",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"available"},{id:"gpt4all",displayName:"GPT4All",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_gpt4all",baseUrl:"http://localhost:4891/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"experimental"},{id:"koboldcpp",displayName:"KoboldCpp",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_kobold",baseUrl:"http://localhost:5001",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,status:"experimental"},{id:"jan",displayName:"Jan",category:"local_runtime",connectionTypes:["local"],defaultAdapter:"local_jan",baseUrl:"http://localhost:1337/v1",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"experimental"},{id:"anythingllm",displayName:"AnythingLLM (local)",category:"local_runtime",connectionTypes:["local","api_key"],defaultAdapter:"local_anythingllm",baseUrl:"http://localhost:3001/api",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"planned",notes:"Workspace API — adapter pending."},{id:"openwebui",displayName:"Open WebUI (backend)",category:"local_runtime",connectionTypes:["local","openai_compatible"],defaultAdapter:"http_openai_compat",baseUrl:"http://localhost:3000/api",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"experimental"},{id:"claude_code",displayName:"Claude Code",category:"cli",connectionTypes:["cli","oauth"],defaultAdapter:"cli_claude_code",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!0,supportsTools:!0,status:"available",notes:"Drives the local Claude Code CLI / agent."},{id:"codex_cli",displayName:"Codex CLI",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_codex",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"OpenAI Codex CLI agent."},{id:"openclaw",displayName:"OpenClaw",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_openclaw",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"OpenClaw CLI — headless `openclaw infer model run --json` (provider-routed). No token/cost reported."},{id:"hermes_cli",displayName:"Hermes (Nous Research)",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_hermes",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Hermes agent CLI — headless `hermes -z`. Configure providers via `hermes model`."},{id:"gemini_cli",displayName:"Gemini CLI",category:"cli",connectionTypes:["cli","oauth"],defaultAdapter:"cli_gemini",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!0,supportsTools:!0,status:"experimental"},{id:"aider",displayName:"Aider",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_aider",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Headless `aider --message --yes-always`; provider-routed via its own env keys. Model list from `aider --list-models`. No token/cost reported."},{id:"opencode",displayName:"OpenCode",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_opencode",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Headless `opencode run`; providers via `opencode auth login`. Model list from `opencode models`. No token/cost reported."},{id:"copilot_cli",displayName:"GitHub Copilot CLI",category:"cli",connectionTypes:["cli","oauth"],defaultAdapter:"cli_copilot",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!0,supportsTools:!0,status:"experimental",notes:"Headless `copilot -p --allow-all-tools`; sign in with the Copilot CLI. No token/cost reported."},{id:"cursor_cli",displayName:"Cursor CLI",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_cursor",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Headless `cursor-agent -p --output-format json`; sign in via `cursor-agent login`. `-p` can hang → bounded timeout. No token/cost reported."},{id:"cline_cli",displayName:"Cline CLI",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_cline",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Headless `cline --json -y`; provider-routed via its own config. No token/cost reported."},{id:"kilo_code",displayName:"Kilo Code CLI",category:"cli",connectionTypes:["cli"],defaultAdapter:"cli_kilo",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,supportsTools:!0,status:"experimental",notes:"Headless `kilocode --yes`; provider-routed via its own config. No token/cost reported."},{id:"openai_cli",displayName:"OpenAI CLI",category:"cli",connectionTypes:["cli","api_key"],defaultAdapter:"cli_openai",supportsModelSync:!1,supportsApiKey:!0,supportsOAuth:!1,status:"planned",notes:"Thin CLI over the API — adapter pending."},{id:"ollama_cli",displayName:"Ollama CLI",category:"cli",connectionTypes:["cli","local"],defaultAdapter:"cli_ollama",supportsModelSync:!0,supportsApiKey:!1,supportsOAuth:!1,status:"available",notes:"`ollama run/list` driven."},{id:"custom_cli",displayName:"Custom CLI provider",category:"cli",connectionTypes:["cli","custom_endpoint"],defaultAdapter:"cli_custom",supportsModelSync:!1,supportsApiKey:!1,supportsOAuth:!1,status:"requires_setup",notes:"Define your own command + arg template."}],p=Object.fromEntries(s.map(e=>[e.id,e])),a=e=>p[e]},9156:(e,t,o)=>{o.d(t,{W:()=>l});var s=o(4275),p=o(2899);let a={anthropic:"anthropic",claude_code:"claude",openai:"openai",codex_cli:"openai",google:"google",google_gemini:"gemini",gemini_cli:"gemini",vertex_ai:"vertexai",mistral:"mistral",deepseek:"deepseek",cohere:"cohere",perplexity:"perplexity",xai_grok:"grok",groq:"groq",ai21:"ai21",nvidia_nim:"nvidia",huggingface:"huggingface",replicate:"replicate",azure_openai:"azure",aws_bedrock:"bedrock",cloudflare:"cloudflare",dashscope:"qwen",zhipu:"zhipu",moonshot:"moonshot",minimax:"minimax",together:"together",openrouter:"openrouter",fireworks:"fireworks",cerebras:"cerebras",ollama:"ollama",ollama_cli:"ollama",lmstudio:"lmstudio",vllm:"vllm",localai:"localai",elevenlabs:"elevenlabs",stability:"stability",jina:"jina",voyage:"voyage"},i={anthropic:["#d97757","An"],openai:["#10a37f","AI"],google_gemini:["#4285f4","G"],google:["#4285f4","G"],mistral:["#fa520f","Mi"],xai_grok:["#1a1a1a","X"],deepseek:["#4d6bfe","DS"],cohere:["#39594d","Co"],ai21:["#e8488a","A2"],perplexity:["#20808d","Px"],groq:["#f55036","Gq"],nvidia_nim:["#76b900","NV"],together:["#0f6fff","To"],fireworks:["#5019c5","Fw"],cerebras:["#f25733","Cb"],huggingface:["#ff9d00","HF"],replicate:["#1a1a1a","Rp"],openrouter:["#6566f1","OR"],litellm:["#00b8a3","LL"],portkey:["#3b5bdb","Pk"],azure_openai:["#0078d4","Az"],aws_bedrock:["#ff9900","Br"],vertex_ai:["#4285f4","Vx"],cloudflare:["#f38020","Cf"],dashscope:["#ff6a00","Qw"],zhipu:["#3859ff","GL"],moonshot:["#16162a","Ki"],minimax:["#e1342c","MM"],ollama:["#0c0c0c","Ol"],llamacpp:["#7a4ddb","Lc"],lmstudio:["#4a5cff","LM"],vllm:["#1668dc","vL"],localai:["#2e7d32","La"],gpt4all:["#5b6cff","G4"],jan:["#1a1a1a","Jn"],claude_code:["#d97757","CC"],codex_cli:["#10a37f","Cx"],gemini_cli:["#4285f4","Gc"],aider:["#14b8a6","Ad"],ollama_cli:["#0c0c0c","Oc"],openclaw:["#e8590c","OC"],hermes_cli:["#6d28d9","Hm"],opencode:["#1a1a1a","Oc"],copilot_cli:["#1f2328","Co"],cursor_cli:["#1a1a1a","Cu"],cline_cli:["#2563eb","Cl"],kilo_code:["#7c3aed","Ki"],voyage:["#5b21b6","Vo"],jina:["#ec4899","Ji"],stability:["#a855f7","St"],elevenlabs:["#1a1a1a","El"]};function l({id:e,size:t=34,radius:o}){let r,n=i[e],c=n?n[0]:"#5b6378",u=n?n[1]:(e||"?").slice(0,2).replace(/[^a-z0-9]/gi,"").toUpperCase(),d=(r=a[e])?`https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg/icons/${r}.svg`:null,[y,m]=(0,p.useState)(!1),h=null!=o?o:Math.round(.28*t),A=d&&!y,_=Math.round(.66*t);return(0,s.jsx)("span",{className:"prov-glyph",style:{width:t,height:t,flex:"0 0 "+t+"px",borderRadius:h,background:A?"#fff":"linear-gradient(150deg, "+c+", color-mix(in srgb, "+c+" 70%, #000))",color:"#fff",display:"grid",placeItems:"center",overflow:"hidden",fontSize:Math.round(.4*t),fontWeight:800,letterSpacing:"-.5px",boxShadow:A?"inset 0 0 0 1px rgba(0,0,0,.08)":"inset 0 1px 0 rgba(255,255,255,.18)"},children:A?(0,s.jsx)("img",{src:d,alt:"",width:_,height:_,loading:"lazy",onError:()=>m(!0),style:{width:_,height:_,objectFit:"contain",display:"block"}}):u})}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[928],{1069:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n={formatUrl:function(){return i},formatWithValidation:function(){return c},urlObjectKeys:function(){return l}};for(var o in n)Object.defineProperty(t,o,{enumerable:!0,get:n[o]});let u=r(2310)._(r(3971)),a=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,n=e.protocol||"",o=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(u.urlQueryToSearchParams(l)));let f=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||a.test(n))&&!1!==c?(c="//"+(c||""),o&&"/"!==o[0]&&(o="/"+o)):c||(c=""),i&&"#"!==i[0]&&(i="#"+i),f&&"?"!==f[0]&&(f="?"+f),o=o.replace(/[?#]/g,encodeURIComponent),f=f.replace("#","%23"),`${n}${c}${o}${f}${i}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return i(e)}},2758:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=r(2899);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=u(e,n)),t&&(o.current=u(t,n))},[e,t])}function u(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 t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},3971:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});var r={assign:function(){return i},searchParamsToUrlQuery:function(){return o},urlQueryToSearchParams:function(){return a}};for(var n in r)Object.defineProperty(t,n,{enumerable:!0,get:r[n]});function o(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 u(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function a(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,u(e));else t.set(r,u(n));return t}function i(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}},4880:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isLocalURL",{enumerable:!0,get:function(){return u}});let n=r(8015),o=r(7478);function u(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},5860:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"errorOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},6295:(e,t,r)=>{var n=r(2095);r.o(n,"usePathname")&&r.d(t,{usePathname:function(){return n.usePathname}}),r.o(n,"useRouter")&&r.d(t,{useRouter:function(){return n.useRouter}})},7797:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n={callServer:function(){return u.callServer},createServerReference:function(){return i.createServerReference},findSourceMapURL:function(){return a.findSourceMapURL}};for(var o in n)Object.defineProperty(t,o,{enumerable:!0,get:n[o]});let u=r(4150),a=r(1410),i=r(7837)},8015:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});var r={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return P},MissingStaticPage:function(){return v},NormalizeError:function(){return m},PageNotFoundError:function(){return b},SP:function(){return h},ST:function(){return y},WEB_VITALS:function(){return o},execOnce:function(){return u},getDisplayName:function(){return f},getLocationOrigin:function(){return l},getURL:function(){return c},isAbsoluteUrl:function(){return i},isResSent:function(){return s},loadGetInitialProps:function(){return d},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return _}};for(var n in r)Object.defineProperty(t,n,{enumerable:!0,get:r[n]});let o=["CLS","FCP","FID","INP","LCP","TTFB"];function u(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let a=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>a.test(e);function l(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=l();return e.substring(t.length)}function f(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function s(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 d(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await d(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&s(r))return n;if(!n)throw Object.defineProperty(Error(`"${f(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let h="u">typeof performance,y=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class m extends Error{}class b extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class P extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function _(e){return JSON.stringify({message:e.message,stack:e.stack})}},9746:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n={default:function(){return m},useLinkStatus:function(){return v}};for(var o in n)Object.defineProperty(t,o,{enumerable:!0,get:n[o]});let u=r(2310),a=r(4275),i=u._(r(2899)),l=r(1069),c=r(5667),f=r(2758),s=r(8015),p=r(4657);r(5830);let d=r(3618),h=r(9210),y=r(4880),g=r(7771);function m(e){var t,n;let o,u,m,[v,P]=(0,i.useOptimistic)(h.IDLE_LINK_STATUS),_=(0,i.useRef)(null),{href:E,as:S,children:O,prefetch:j=null,passHref:R,replace:C,shallow:T,scroll:N,onClick:L,onMouseEnter:M,onTouchStart:k,legacyBehavior:x=!1,onNavigate:w,transitionTypes:U,ref:$,unstable_dynamicOnHover:A,...I}=e;o=O,x&&("string"==typeof o||"number"==typeof o)&&(o=(0,a.jsx)("a",{children:o}));let F=i.default.useContext(c.AppRouterContext),D=!1!==j,B=!1!==j?null===(n=j)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,K="string"==typeof(t=S||E)?t:(0,l.formatUrl)(t);if(x){if(o?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});u=i.default.Children.only(o)}let z=x?u&&"object"==typeof u&&u.ref:$,Q=i.default.useCallback(e=>(null!==F&&(_.current=(0,h.mountLinkInstance)(e,K,F,B,D,P)),()=>{_.current&&((0,h.unmountLinkForCurrentNavigation)(_.current),_.current=null),(0,h.unmountPrefetchableInstance)(e)}),[D,K,F,B,P]),W={ref:(0,f.useMergedRef)(Q,z),onClick(e){x||"function"!=typeof L||L(e),x&&u.props&&"function"==typeof u.props.onClick&&u.props.onClick(e),!F||e.defaultPrevented||function(e,t,n,o,u,a,l){{let c,{nodeName:f}=e.currentTarget;if("A"===f.toUpperCase()&&((c=e.currentTarget.getAttribute("target"))&&"_self"!==c||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which)||e.currentTarget.hasAttribute("download"))return;if(!(0,y.isLocalURL)(t)){o&&(e.preventDefault(),location.replace(t));return}if(e.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:s}=r(3554);i.default.startTransition(()=>{s(t,o?"replace":"push",!1===u?d.ScrollBehavior.NoScroll:d.ScrollBehavior.Default,n.current,l)})}}(e,K,_,C,N,w,U)},onMouseEnter(e){x||"function"!=typeof M||M(e),x&&u.props&&"function"==typeof u.props.onMouseEnter&&u.props.onMouseEnter(e),F&&D&&(0,h.onNavigationIntent)(e.currentTarget,!0===A)},onTouchStart:function(e){x||"function"!=typeof k||k(e),x&&u.props&&"function"==typeof u.props.onTouchStart&&u.props.onTouchStart(e),F&&D&&(0,h.onNavigationIntent)(e.currentTarget,!0===A)}};return(0,s.isAbsoluteUrl)(K)?W.href=K:x&&!R&&("a"!==u.type||"href"in u.props)||(W.href=(0,p.addBasePath)(K)),m=x?i.default.cloneElement(u,W):(0,a.jsx)("a",{...I,...W,children:o}),(0,a.jsx)(b.Provider,{value:v,children:m})}r(5860);let b=(0,i.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,i.useContext)(b);("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9874],{1338:(e,a,t)=>{t.d(a,{f:()=>n,z:()=>o});let o=[{key:"language",label:"Language",opts:["TypeScript","JavaScript","Python","Go","Rust","Java","Kotlin","C#","Ruby","PHP","Elixir","Swift","C++","C","Scala","Dart","Clojure","Haskell","Lua","R","Objective-C","Erlang","None"]},{key:"runtime",label:"Runtime",opts:["Node.js","Bun","Deno","Python 3","PyPy","JVM",".NET","BEAM (Erlang VM)","None"]},{key:"frontend",label:"Frontend",opts:["React","Vue","Svelte","Angular","SolidJS","Preact","Qwik","Lit","HTMX","Alpine.js","Ember","Backbone","HTML/CSS","Vanilla JS","None"]},{key:"meta",label:"Meta-framework / SSG",opts:["Next.js","Nuxt","Remix","SvelteKit","Astro","Gatsby","Vite (SPA)","Hugo","Jekyll","Eleventy","Docusaurus","Static (no framework)","None"]},{key:"backend",label:"Backend framework",opts:["NestJS","Fastify","Express","Hono","Koa","Django","Flask","FastAPI","Spring Boot","Spring","Laravel","Symfony","CodeIgniter","Ruby on Rails","Gin","Fiber","Actix","Phoenix","ASP.NET Core","AdonisJS","GraphQL","Nginx","None"]},{key:"mobile",label:"Mobile",opts:["React Native","Flutter","Android","Ionic","Xamarin","NativeScript","None"]},{key:"database",label:"Database",opts:["PostgreSQL","MySQL","MariaDB","SQLite","MongoDB","Redis","CockroachDB","Cassandra","DynamoDB","Supabase","PlanetScale","Neon","None"]},{key:"orm",label:"ORM / Data layer",opts:["Prisma","Drizzle","TypeORM","Sequelize","SQLAlchemy","Django ORM","Mongoose","Knex","Diesel","GORM","None"]},{key:"styling",label:"Styling / UI",opts:["Tailwind CSS","Plain CSS","CSS Modules","styled-components","Sass","Vanilla Extract","UnoCSS","shadcn/ui","MUI","Bootstrap","Bulma","Vuetify","Chakra UI","None"]},{key:"testing",label:"Testing",opts:["Jest","Vitest","Cypress","Playwright","Selenium","Mocha","Jasmine","Puppeteer","None"]},{key:"aiml",label:"AI / ML",opts:["TensorFlow","PyTorch","scikit-learn","Keras","Pandas","NumPy","Jupyter","None"]},{key:"dataviz",label:"Data viz",opts:["D3","Chart.js","Grafana","Plotly","None"]},{key:"container",label:"Container",opts:["Docker","Podman","containerd","None"]},{key:"infra",label:"Infra / DevOps",opts:["Tailscale","Cloudflare","Vercel","Netlify","Fly.io","Railway","AWS","GCP","Azure","Kubernetes","Jenkins","CircleCI","Terraform","Ansible","Vagrant","None"]},{key:"baas",label:"Backend-as-a-service",opts:["Firebase","Appwrite","Amplify","Heroku","Supabase","None"]},{key:"queue",label:"Queue / Cache",opts:["Redis","BullMQ","RabbitMQ","Kafka","NATS","Celery","None"]},{key:"auth",label:"Auth",opts:["Auth.js","Clerk","Lucia","Supabase Auth","Keycloak","Auth0","Passport","None"]}],r={"HTML/CSS":"Plain HTML5 markup + CSS — a simple static page, no framework.","Vanilla JS":"Plain JavaScript in the browser — no framework or build step.","Static (no framework)":"A static site built from plain HTML/CSS/JS — no meta-framework.","Plain CSS":"Hand-written CSS stylesheets — no preprocessor or utility framework.",TypeScript:"Typed superset of JavaScript — the default for full-stack web.",JavaScript:"Dynamic language of the web; runs everywhere a runtime exists.",Python:"Batteries-included language for backends, data, AI and automation.",Go:"Compiled, concurrent language for fast, simple network services.",Rust:"Memory-safe systems language for high-performance services.","Node.js":"The standard JS/TS server runtime with the largest ecosystem.",Bun:"Fast all-in-one JS/TS runtime, bundler and package manager.",Deno:"Secure JS/TS runtime with built-in tooling and web APIs.","Python 3":"CPython runtime for Python backends, workers and AI services.",React:"Component UI library; the most widely-used frontend.",Vue:"Approachable reactive UI framework with great DX.",Svelte:"Compiler-first UI framework with minimal runtime.","Next.js":"React meta-framework: routing, SSR/RSC, API routes.",Nuxt:"Vue meta-framework with SSR and file-based routing.",Remix:"React meta-framework focused on web fundamentals and forms.",SvelteKit:"Svelte meta-framework with SSR and routing.",NestJS:"Opinionated TypeScript backend framework (DI, modules).",Fastify:"Fast, low-overhead Node.js HTTP framework.",Express:"Minimal, ubiquitous Node.js web framework.",Hono:"Tiny, fast web framework for edge/Node/Bun/Deno.",Django:"Full-featured Python web framework — ORM, admin, auth, APIs and structured server-side systems in one. It already covers most backend concerns.",Flask:"Minimal Python web microframework — bring your own pieces.",FastAPI:"Modern async Python API framework with typed validation.","Spring Boot":"Convention-over-configuration JVM backend framework.",Laravel:"Full-featured PHP web framework (ORM, auth, queues).","Ruby on Rails":"Convention-driven full-stack Ruby framework.",PostgreSQL:"Robust relational database; the safe default for most apps.",MySQL:"Popular relational database, widely supported.",SQLite:"Embedded, file-based SQL database — zero-ops, great for local.",MongoDB:"Document database for flexible, schema-less data.",Redis:"In-memory store for cache, queues and sessions.",Supabase:"Hosted Postgres + auth + storage + realtime.",Prisma:"Type-safe TS/JS ORM with migrations and a schema DSL.",Drizzle:"Lightweight TS-first SQL ORM, close to the SQL.",TypeORM:"Decorator-based TS/JS ORM for SQL databases.",Sequelize:"Mature JS/TS ORM for SQL databases.",SQLAlchemy:"The de-facto Python ORM / SQL toolkit.","Django ORM":"Django's built-in ORM — only with Django.",Mongoose:"ODM for MongoDB (JS/TS).",GORM:"The standard ORM for Go.",Diesel:"Type-safe ORM/query builder for Rust.","Tailwind CSS":"Utility-first CSS framework for fast, consistent UI.","shadcn/ui":"Copy-in React components built on Tailwind + Radix.",MUI:"Material-UI React component library.",Docker:"Containerize the app for reproducible builds and deploys.",Podman:"Daemonless, rootless container engine (Docker-compatible).",Tailscale:"Zero-config private network (WireGuard) for services.",Vercel:"Managed hosting optimized for Next.js and frontends.",Kubernetes:"Container orchestration for scaling services.",BullMQ:"Redis-backed job queue for Node.js.",RabbitMQ:"Message broker for reliable async work.",Kafka:"Distributed event streaming platform at scale.",Celery:"Distributed task queue for Python.","Auth.js":"Framework-agnostic auth for JS/TS apps (NextAuth).",Clerk:"Hosted auth + user management with prebuilt UI.",Lucia:"Lightweight, framework-agnostic TS auth library.",Auth0:"Hosted identity platform (OAuth/OIDC).",C:"Low-level systems language; portable and fast.",Clojure:"Modern Lisp on the JVM — functional, immutable by default.",Haskell:"Pure functional language with a strong static type system.",Lua:"Tiny embeddable scripting language.",R:"Statistics + data-analysis language.","Objective-C":"Apple's pre-Swift language for iOS/macOS.",Erlang:"Concurrent, fault-tolerant language on the BEAM VM.",Ember:"Convention-driven framework for ambitious web apps.",Backbone:"Minimal MV* structure for JS apps.",Hugo:"Blazing-fast static site generator in Go.",Jekyll:"Ruby static site generator (GitHub Pages default).",Eleventy:"Simple, flexible JavaScript static site generator.",Docusaurus:"React-based docs site generator.",Spring:"JVM application framework (DI, web, data).",Symfony:"Mature PHP framework with reusable components.",CodeIgniter:"Lightweight PHP MVC framework.",GraphQL:"Query language + runtime for typed APIs.",Nginx:"High-performance web server / reverse proxy.","React Native":"Build native iOS/Android apps with React.",Flutter:"Google's cross-platform UI toolkit (Dart).",Android:"Native Android development (Kotlin/Java).",Ionic:"Hybrid mobile apps with web tech.",Xamarin:"Cross-platform .NET mobile apps.",NativeScript:"Native mobile apps with JS/TS frameworks.",Bootstrap:"The classic responsive CSS component framework.",Bulma:"Modern CSS framework based on flexbox.",Vuetify:"Material Design component library for Vue.",Jest:"Batteries-included JS testing framework.",Vitest:"Fast Vite-native unit test runner.",Cypress:"End-to-end testing in a real browser.",Playwright:"Reliable cross-browser E2E automation.",Selenium:"Browser automation across languages.",Mocha:"Flexible JS test framework.",Jasmine:"Behavior-driven JS testing.",Puppeteer:"Headless Chrome automation.",TensorFlow:"End-to-end ML platform (Google).",PyTorch:"Research-friendly deep-learning framework.","scikit-learn":"Classic ML algorithms for Python.",Keras:"High-level neural-network API.",Pandas:"Data analysis + manipulation for Python.",NumPy:"Numerical computing foundation for Python.",Jupyter:"Interactive notebooks for data/AI work.",D3:"Low-level data-driven document visualization.","Chart.js":"Simple, popular JS charting library.",Grafana:"Dashboards + observability for metrics.",Plotly:"Interactive scientific charts.",Azure:"Microsoft's cloud platform.",Jenkins:"Self-hosted CI/CD automation server.",CircleCI:"Hosted CI/CD pipelines.",Terraform:"Infrastructure as code across clouds.",Ansible:"Agentless configuration management.",Vagrant:"Reproducible dev environments.",Firebase:"Google's app backend (auth, DB, hosting).",Appwrite:"Open-source backend server for web/mobile.",Amplify:"AWS toolkit for full-stack app backends.",Heroku:"Managed app platform (push to deploy).",None:"Skip this category."};function n(e,a){if(r[a])return r[a];let t=o.find(a=>a.key===e)?.label??"technology";return`${a} — ${t.toLowerCase()} option.`}},3221:(e,a,t)=>{function o(e){return e?e.split(",").map(e=>e.trim()).filter(Boolean):[]}function r(e){return e.join(", ")}function n(e){return o(e)[0]??""}function i(e,a){return o(e).includes(a)}function s(e,a){let t=o(e);return"None"===a?t.includes("None")?"":"None":r(t.includes(a)?t.filter(e=>e!==a):[...t.filter(e=>"None"!==e),a])}t.d(a,{BT:()=>n,He:()=>r,Hn:()=>i,P_:()=>s,jX:()=>o})},9874:(e,a,t)=>{t.d(a,{T1:()=>d,YL:()=>c,hP:()=>p});var o=t(3221),r=t(1338);let n={TypeScript:"js",JavaScript:"js",Python:"py",Go:"go",Rust:"rust",Java:"jvm",Kotlin:"jvm",Scala:"jvm","C#":"dotnet",Ruby:"ruby",PHP:"php",Elixir:"elixir",Swift:"other","C++":"other",Dart:"other"},i={"Node.js":"js",Bun:"js",Deno:"js","Python 3":"py",PyPy:"py",JVM:"jvm",".NET":"dotnet","BEAM (Erlang VM)":"elixir"},s={NestJS:"js",Fastify:"js",Express:"js",Hono:"js",Koa:"js",AdonisJS:"js",Django:"py",Flask:"py",FastAPI:"py","Spring Boot":"jvm",Spring:"jvm",Laravel:"php",Symfony:"php",CodeIgniter:"php","Ruby on Rails":"ruby",Gin:"go",Fiber:"go",Actix:"rust",Phoenix:"elixir","ASP.NET Core":"dotnet"},l={Prisma:"js",Drizzle:"js",TypeORM:"js",Sequelize:"js",Knex:"js",Mongoose:"js",SQLAlchemy:"py","Django ORM":"py",GORM:"go",Diesel:"rust"},u={js:"JavaScript/TypeScript",py:"Python",jvm:"JVM",dotnet:".NET",go:"Go",rust:"Rust",php:"PHP",ruby:"Ruby",elixir:"Elixir",other:"this"};function c(e,a,t){let r=n[(0,o.BT)(e.language)],c=(0,o.jX)(e.database),d=(0,o.jX)(e.backend);if("runtime"===a){let e=i[t];if(r&&e&&e!==r)return`Needs a ${u[e]} language`}if("backend"===a){let e=s[t];if(r&&e&&e!==r)return`Requires a ${u[e]} language`}if("orm"===a){let e=l[t];if(r&&e&&e!==r)return`${u[e]} only`;if("Mongoose"===t&&c.length>0&&!c.includes("MongoDB"))return"Mongoose needs MongoDB";if("Django ORM"===t&&!d.includes("Django"))return"Only with Django";if(d.includes("Django")&&"Django ORM"!==t&&"None"!==t)return"Django already ships its own ORM"}return null}function d(e){let a={...e},t=[],n=!0,i=0;for(;n&&i++<20;)for(let e of(n=!1,r.z)){let r=(0,o.jX)(a[e.key]);if(!r.length)continue;let i=[];for(let o of r){let r="None"===o?null:c(a,e.key,o);r?(t.push({cat:e.key,opt:o,reason:r}),n=!0):i.push(o)}i.length!==r.length&&(a={...a,[e.key]:(0,o.He)(i)})}return{stack:a,removed:t}}function p(e){let a=(0,o.jX)(e.orm).filter(e=>!["Django ORM","None"].includes(e));return(0,o.jX)(e.backend).includes("Django")&&a.length>0?`Django includes its own ORM — a second ORM (${a.join(", ")}) is usually redundant.`:null}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9845],{5857:(e,t,s)=>{"use strict";s.d(t,{ActivityTimeline:()=>r});var i=s(4275),a=s(2899),l=s(5904),n=s(869);function r({items:e,agents:t}){let s=(0,n.k)(),[o,d]=(0,a.useState)("all"),c="all"===o?e:e.filter(e=>e.agentId===o);return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("div",{className:"seg",style:{width:"fit-content",maxWidth:"100%",marginBottom:16,flexWrap:"wrap",overflowX:"auto"},children:[(0,i.jsx)("button",{className:"seg-opt"+("all"===o?" on":""),style:{flex:"0 0 auto",padding:"6px 12px"},onClick:()=>d("all"),children:s("common.all")}),t.map(e=>(0,i.jsxs)("button",{className:"seg-opt"+(o===e.id?" on":""),style:{flex:"0 0 auto",padding:"6px 12px",display:"inline-flex",alignItems:"center",gap:6},onClick:()=>d(e.id),children:[(0,i.jsx)(l.e,{name:e.name,color:e.color,size:16})," ",e.name]},e.id))]}),(0,i.jsxs)("div",{className:"timeline",children:[c.map(e=>(0,i.jsxs)("div",{className:"tl-item",children:[(0,i.jsx)("span",{className:"tl-time",children:e.time}),e.agentName?(0,i.jsx)(l.e,{name:e.agentName,color:e.agentColor??"#888",size:28}):(0,i.jsx)("span",{style:{width:28,height:28,borderRadius:8,background:"var(--bg-active)",flex:"0 0 28px"}}),(0,i.jsxs)("span",{className:"tl-text",children:[(0,i.jsx)("b",{children:e.agentName??s("activity.system")})," ",e.action,e.target&&(0,i.jsxs)("span",{className:"muted",children:[" \xb7 ",e.target]})]})]},e.id)),0===c.length&&(0,i.jsx)("div",{className:"muted",style:{padding:30,textAlign:"center"},children:"all"!==o?s("activity.empty.agent"):s("activity.empty.all")})]})]})}},5904:(e,t,s)=>{"use strict";s.d(t,{e:()=>a});var i=s(4275);function a({name:e,color:t,size:s=24,health:l,image:n}){let r=Math.max(6,Math.round(.3*s)),o=Math.round(.28*s),d=n?/^(data:|https?:|\/)/.test(n)?n:`/api/upload?path=${encodeURIComponent(n)}`:null;return(0,i.jsxs)("span",{style:{position:"relative",width:s,height:s,flex:`0 0 ${s}px`,display:"inline-block"},children:[d?(0,i.jsx)("img",{src:d,alt:e,width:s,height:s,style:{width:s,height:s,borderRadius:o,objectFit:"cover",display:"block"}}):(0,i.jsx)("span",{style:{width:s,height:s,borderRadius:o,background:t,color:"#fff",display:"grid",placeItems:"center",fontSize:Math.round(.42*s),fontWeight:700},children:(e[0]||"?").toUpperCase()}),l&&(0,i.jsx)("span",{style:{position:"absolute",right:-1,bottom:-1,width:r,height:r,borderRadius:"50%",background:"alive"===l?"var(--sx-string)":"stale"===l?"var(--sx-number)":"var(--text-faint)",border:"1.5px solid var(--bg-elevated)"}})]})}},7832:(e,t,s)=>{Promise.resolve().then(s.t.bind(s,9746,23)),Promise.resolve().then(s.bind(s,5857)),Promise.resolve().then(s.bind(s,6032)),Promise.resolve().then(s.bind(s,8183)),Promise.resolve().then(s.bind(s,4822)),Promise.resolve().then(s.bind(s,24)),Promise.resolve().then(s.bind(s,2454)),Promise.resolve().then(s.bind(s,9508)),Promise.resolve().then(s.bind(s,3891))}},e=>{e.O(0,[928,171,5523,7218,2235,7066,7358],()=>e(e.s=7832)),_N_E=e.O()}]);
|