constella 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -0
- package/.next/app-path-routes-manifest.json +53 -0
- package/.next/build-manifest.json +20 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +36 -0
- package/.next/react-loadable-manifest.json +14 -0
- package/.next/required-server-files.js +343 -0
- package/.next/required-server-files.json +343 -0
- package/.next/routes-manifest.json +362 -0
- package/.next/server/app/(app)/activity/page.js +2 -0
- package/.next/server/app/(app)/activity/page.js.nft.json +1 -0
- package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/agents/[handle]/page.js +18 -0
- package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/code/page.js +2 -0
- package/.next/server/app/(app)/code/page.js.nft.json +1 -0
- package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/config/page.js +2 -0
- package/.next/server/app/(app)/config/page.js.nft.json +1 -0
- package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/costs/page.js +2 -0
- package/.next/server/app/(app)/costs/page.js.nft.json +1 -0
- package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/cron/page.js +2 -0
- package/.next/server/app/(app)/cron/page.js.nft.json +1 -0
- package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/dashboard/page.js +2 -0
- package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -0
- package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/docs/[id]/page.js +2 -0
- package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/docs/page.js +2 -0
- package/.next/server/app/(app)/docs/page.js.nft.json +1 -0
- package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/github/page.js +2 -0
- package/.next/server/app/(app)/github/page.js.nft.json +1 -0
- package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/goals/page.js +2 -0
- package/.next/server/app/(app)/goals/page.js.nft.json +1 -0
- package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/inbox/page.js +2 -0
- package/.next/server/app/(app)/inbox/page.js.nft.json +1 -0
- package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/knowledge/page.js +3 -0
- package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -0
- package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/models/page.js +2 -0
- package/.next/server/app/(app)/models/page.js.nft.json +1 -0
- package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/notifications/page.js +2 -0
- package/.next/server/app/(app)/notifications/page.js.nft.json +1 -0
- package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/org/page.js +2 -0
- package/.next/server/app/(app)/org/page.js.nft.json +1 -0
- package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/organizations/page.js +2 -0
- package/.next/server/app/(app)/organizations/page.js.nft.json +1 -0
- package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/page.js +3 -0
- package/.next/server/app/(app)/page.js.nft.json +1 -0
- package/.next/server/app/(app)/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/planner/page.js +2 -0
- package/.next/server/app/(app)/planner/page.js.nft.json +1 -0
- package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/plugins/page.js +2 -0
- package/.next/server/app/(app)/plugins/page.js.nft.json +1 -0
- package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/pm/page.js +2 -0
- package/.next/server/app/(app)/pm/page.js.nft.json +1 -0
- package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/prepare-deploy/page.js +19 -0
- package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -0
- package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/profile/page.js +2 -0
- package/.next/server/app/(app)/profile/page.js.nft.json +1 -0
- package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/pulse/page.js +2 -0
- package/.next/server/app/(app)/pulse/page.js.nft.json +1 -0
- package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reports/[id]/page.js +3 -0
- package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reports/page.js +5 -0
- package/.next/server/app/(app)/reports/page.js.nft.json +1 -0
- package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/routines/page.js +2 -0
- package/.next/server/app/(app)/routines/page.js.nft.json +1 -0
- package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/search/page.js +2 -0
- package/.next/server/app/(app)/search/page.js.nft.json +1 -0
- package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/security/page.js +2 -0
- package/.next/server/app/(app)/security/page.js.nft.json +1 -0
- package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/skills/page.js +18 -0
- package/.next/server/app/(app)/skills/page.js.nft.json +1 -0
- package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/tasks/page.js +2 -0
- package/.next/server/app/(app)/tasks/page.js.nft.json +1 -0
- package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/test-dev/page.js +2 -0
- package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -0
- package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/update/page.js +2 -0
- package/.next/server/app/(app)/update/page.js.nft.json +1 -0
- package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(auth)/login/page.js +2 -0
- package/.next/server/app/(auth)/login/page.js.nft.json +1 -0
- package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(auth)/onboarding/page.js +18 -0
- package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -0
- package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error/page.js +32 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +16 -0
- package/.next/server/app/_global-error.rsc +15 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_index.segment.rsc +6 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next/server/app/_not-found/page.js +2 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/[...all]/route.js +1 -0
- package/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/[...all]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cron/tick/route.js +52 -0
- package/.next/server/app/api/cron/tick/route.js.nft.json +1 -0
- package/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/dev-login/route.js +1 -0
- package/.next/server/app/api/dev-login/route.js.nft.json +1 -0
- package/.next/server/app/api/dev-login/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/locks/acquire/route.js +1 -0
- package/.next/server/app/api/locks/acquire/route.js.nft.json +1 -0
- package/.next/server/app/api/locks/acquire/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models/progress/route.js +1 -0
- package/.next/server/app/api/models/progress/route.js.nft.json +1 -0
- package/.next/server/app/api/models/progress/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route.js +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route.js +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/register/options/route.js +1 -0
- package/.next/server/app/api/passkey/register/options/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/register/options/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/register/verify/route.js +1 -0
- package/.next/server/app/api/passkey/register/verify/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/register/verify/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/stream/route.js +4 -0
- package/.next/server/app/api/stream/route.js.nft.json +1 -0
- package/.next/server/app/api/stream/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sync/file/route.js +2 -0
- package/.next/server/app/api/sync/file/route.js.nft.json +1 -0
- package/.next/server/app/api/sync/file/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/telegram/poll/route.js +15 -0
- package/.next/server/app/api/telegram/poll/route.js.nft.json +1 -0
- package/.next/server/app/api/telegram/poll/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/upload/route.js +1 -0
- package/.next/server/app/api/upload/route.js.nft.json +1 -0
- package/.next/server/app/api/upload/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/v1/[[...path]]/route.js +1 -0
- package/.next/server/app/api/v1/[[...path]]/route.js.nft.json +1 -0
- package/.next/server/app/api/v1/[[...path]]/route_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +53 -0
- package/.next/server/chunks/1003.js +1 -0
- package/.next/server/chunks/127.js +26 -0
- package/.next/server/chunks/1388.js +1 -0
- package/.next/server/chunks/1408.js +21 -0
- package/.next/server/chunks/1572.js +1 -0
- package/.next/server/chunks/1591.js +24 -0
- package/.next/server/chunks/1619.js +188 -0
- package/.next/server/chunks/162.js +1 -0
- package/.next/server/chunks/1881.js +1 -0
- package/.next/server/chunks/1968.js +1 -0
- package/.next/server/chunks/2297.js +348 -0
- package/.next/server/chunks/2341.js +1 -0
- package/.next/server/chunks/2517.js +1 -0
- package/.next/server/chunks/2549.js +1 -0
- package/.next/server/chunks/259.js +14 -0
- package/.next/server/chunks/2599.js +1 -0
- package/.next/server/chunks/260.js +1 -0
- package/.next/server/chunks/2867.js +147 -0
- package/.next/server/chunks/3018.js +1 -0
- package/.next/server/chunks/3050.js +18 -0
- package/.next/server/chunks/3085.js +12 -0
- package/.next/server/chunks/3131.js +1 -0
- package/.next/server/chunks/3242.js +1 -0
- package/.next/server/chunks/3266.js +15 -0
- package/.next/server/chunks/3524.js +1 -0
- package/.next/server/chunks/3527.js +479 -0
- package/.next/server/chunks/3533.js +869 -0
- package/.next/server/chunks/3550.js +1 -0
- package/.next/server/chunks/3609.js +2 -0
- package/.next/server/chunks/3667.js +462 -0
- package/.next/server/chunks/3760.js +4 -0
- package/.next/server/chunks/4679.js +1 -0
- package/.next/server/chunks/4804.js +1 -0
- package/.next/server/chunks/4832.js +2 -0
- package/.next/server/chunks/4853.js +1 -0
- package/.next/server/chunks/4979.js +67 -0
- package/.next/server/chunks/5060.js +1 -0
- package/.next/server/chunks/5278.js +1 -0
- package/.next/server/chunks/5614.js +1 -0
- package/.next/server/chunks/5818.js +1 -0
- package/.next/server/chunks/6479.js +1 -0
- package/.next/server/chunks/6658.js +1 -0
- package/.next/server/chunks/6706.js +1 -0
- package/.next/server/chunks/6719.js +1 -0
- package/.next/server/chunks/678.js +1 -0
- package/.next/server/chunks/683.js +1 -0
- package/.next/server/chunks/6862.js +1 -0
- package/.next/server/chunks/6882.js +1 -0
- package/.next/server/chunks/7037.js +1 -0
- package/.next/server/chunks/7107.js +741 -0
- package/.next/server/chunks/73.js +17 -0
- package/.next/server/chunks/7327.js +1 -0
- package/.next/server/chunks/7514.js +1 -0
- package/.next/server/chunks/7622.js +1 -0
- package/.next/server/chunks/7778.js +1 -0
- package/.next/server/chunks/7912.js +1 -0
- package/.next/server/chunks/7949.js +1 -0
- package/.next/server/chunks/7971.js +1 -0
- package/.next/server/chunks/7989.js +1 -0
- package/.next/server/chunks/842.js +22 -0
- package/.next/server/chunks/8762.js +15 -0
- package/.next/server/chunks/8823.js +77 -0
- package/.next/server/chunks/9146.js +4 -0
- package/.next/server/chunks/9676.js +1 -0
- package/.next/server/chunks/9783.js +22 -0
- package/.next/server/chunks/9969.js +3 -0
- package/.next/server/functions-config-manifest.json +18 -0
- package/.next/server/instrumentation.js +1 -0
- package/.next/server/instrumentation.js.nft.json +1 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/middleware.js +18 -0
- package/.next/server/middleware.js.nft.json +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +3 -0
- package/.next/server/prefetch-hints.json +1 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/chunks/1858-339516f78a4b00da.js +1 -0
- package/.next/static/chunks/2320-fc8b39380e69d465.js +2 -0
- package/.next/static/chunks/23550918-ff694f70f4b0648c.js +1 -0
- package/.next/static/chunks/3219-ebb3c23be38c838d.js +1 -0
- package/.next/static/chunks/4263-adecb5b466380b6e.js +1 -0
- package/.next/static/chunks/5479-0cceab68cd0ca9c7.js +1 -0
- package/.next/static/chunks/5701-665b927b06158b76.js +1 -0
- package/.next/static/chunks/5920.6451a68b63918988.js +1 -0
- package/.next/static/chunks/6575-5c9139720bb0f5bf.js +4 -0
- package/.next/static/chunks/6834-4759af1ce7d95fb6.js +32 -0
- package/.next/static/chunks/7509.721cd47a931c5518.js +1 -0
- package/.next/static/chunks/8264-1ca011989ee2b231.js +1 -0
- package/.next/static/chunks/9219-4a39a98b5502d9d1.js +1 -0
- package/.next/static/chunks/9690-53d5222618cbeddb.js +1 -0
- package/.next/static/chunks/app/(app)/activity/page-3973534281ecea81.js +1 -0
- package/.next/static/chunks/app/(app)/agents/[handle]/page-83662a175c098282.js +1 -0
- package/.next/static/chunks/app/(app)/code/page-33979545192cd137.js +1 -0
- package/.next/static/chunks/app/(app)/config/page-9933aed1ca8a85c1.js +1 -0
- package/.next/static/chunks/app/(app)/costs/page-131c4dc580efcc19.js +1 -0
- package/.next/static/chunks/app/(app)/cron/page-53ea1aff998a87ca.js +1 -0
- package/.next/static/chunks/app/(app)/dashboard/page-deed83aaa9d0d447.js +1 -0
- package/.next/static/chunks/app/(app)/docs/[id]/page-38c993d73c0eab4f.js +1 -0
- package/.next/static/chunks/app/(app)/docs/page-bf463b55d0554e86.js +1 -0
- package/.next/static/chunks/app/(app)/error-988cd28480809861.js +1 -0
- package/.next/static/chunks/app/(app)/github/page-62678b4e82dfecb6.js +1 -0
- package/.next/static/chunks/app/(app)/goals/page-4adb426fe1c96106.js +1 -0
- package/.next/static/chunks/app/(app)/inbox/page-e347dc55ab467310.js +1 -0
- package/.next/static/chunks/app/(app)/knowledge/page-65393a045b4349be.js +1 -0
- package/.next/static/chunks/app/(app)/layout-7f65675705b011d8.js +1 -0
- package/.next/static/chunks/app/(app)/models/page-e01f1dd7e49a2951.js +1 -0
- package/.next/static/chunks/app/(app)/notifications/page-56548ac87aef00da.js +1 -0
- package/.next/static/chunks/app/(app)/org/page-699e6a6dc0db7d81.js +1 -0
- package/.next/static/chunks/app/(app)/organizations/page-36051a380a7e8eb7.js +1 -0
- package/.next/static/chunks/app/(app)/page-7d1011a566f81520.js +1 -0
- package/.next/static/chunks/app/(app)/planner/page-dab7ced94083373a.js +1 -0
- package/.next/static/chunks/app/(app)/plugins/page-5b5a1f53389be42e.js +1 -0
- package/.next/static/chunks/app/(app)/pm/page-0de5c08c0b227bb0.js +1 -0
- package/.next/static/chunks/app/(app)/prepare-deploy/page-e426038552df8d41.js +1 -0
- package/.next/static/chunks/app/(app)/profile/page-608dfcaf8aae0a69.js +1 -0
- package/.next/static/chunks/app/(app)/pulse/page-309ccaca91de1faa.js +1 -0
- package/.next/static/chunks/app/(app)/reports/[id]/page-53ea1aff998a87ca.js +1 -0
- package/.next/static/chunks/app/(app)/reports/page-68cdc6dcfa472d86.js +1 -0
- package/.next/static/chunks/app/(app)/routines/page-bcc55550b197a9fa.js +1 -0
- package/.next/static/chunks/app/(app)/search/page-5c5f67558d0dbf0d.js +1 -0
- package/.next/static/chunks/app/(app)/security/page-a7d41e36aa366b45.js +1 -0
- package/.next/static/chunks/app/(app)/skills/page-c5b21e89593b8336.js +1 -0
- package/.next/static/chunks/app/(app)/tasks/page-08ae079e3e54d2ce.js +1 -0
- package/.next/static/chunks/app/(app)/test-dev/page-633f82dfd9c3ce23.js +1 -0
- package/.next/static/chunks/app/(app)/update/page-4be019054351bfac.js +1 -0
- package/.next/static/chunks/app/(auth)/login/page-6e85d3377062acae.js +1 -0
- package/.next/static/chunks/app/(auth)/onboarding/page-ebb10c175abf3b85.js +1 -0
- package/.next/static/chunks/app/_global-error/page-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/_not-found/page-dc38b02aebeab535.js +1 -0
- package/.next/static/chunks/app/api/auth/[...all]/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/cron/tick/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/dev-login/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/locks/acquire/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/models/progress/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/options/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/verify/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/options/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/verify/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/stream/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/sync/file/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/telegram/poll/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/upload/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/v1/[[...path]]/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/error-09899a13c38b6e89.js +1 -0
- package/.next/static/chunks/app/global-error-b8050d4d886f448c.js +1 -0
- package/.next/static/chunks/app/layout-ab9deed1e7e2e9df.js +1 -0
- package/.next/static/chunks/framework-4b2c6b6043dd203f.js +1 -0
- package/.next/static/chunks/main-722e16032e7764d1.js +5 -0
- package/.next/static/chunks/main-app-761880af2b6f1962.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-222e3894b78c67db.js +1 -0
- package/.next/static/css/0a9b5805594444e3.css +1 -0
- package/.next/static/yztMvBwyrWWkSqP6jfXoa/_buildManifest.js +1 -0
- package/.next/static/yztMvBwyrWWkSqP6jfXoa/_ssgManifest.js +1 -0
- package/.next/trace-build +1 -0
- package/.next/types/app/(app)/activity/page.ts +87 -0
- package/.next/types/app/(app)/agents/[handle]/page.ts +87 -0
- package/.next/types/app/(app)/code/page.ts +87 -0
- package/.next/types/app/(app)/config/page.ts +87 -0
- package/.next/types/app/(app)/costs/page.ts +87 -0
- package/.next/types/app/(app)/cron/page.ts +87 -0
- package/.next/types/app/(app)/dashboard/page.ts +87 -0
- package/.next/types/app/(app)/docs/[id]/page.ts +87 -0
- package/.next/types/app/(app)/docs/page.ts +87 -0
- package/.next/types/app/(app)/github/page.ts +87 -0
- package/.next/types/app/(app)/goals/page.ts +87 -0
- package/.next/types/app/(app)/inbox/page.ts +87 -0
- package/.next/types/app/(app)/knowledge/page.ts +87 -0
- package/.next/types/app/(app)/models/page.ts +87 -0
- package/.next/types/app/(app)/notifications/page.ts +87 -0
- package/.next/types/app/(app)/org/page.ts +87 -0
- package/.next/types/app/(app)/organizations/page.ts +87 -0
- package/.next/types/app/(app)/page.ts +87 -0
- package/.next/types/app/(app)/planner/page.ts +87 -0
- package/.next/types/app/(app)/plugins/page.ts +87 -0
- package/.next/types/app/(app)/pm/page.ts +87 -0
- package/.next/types/app/(app)/prepare-deploy/page.ts +87 -0
- package/.next/types/app/(app)/profile/page.ts +87 -0
- package/.next/types/app/(app)/pulse/page.ts +87 -0
- package/.next/types/app/(app)/reports/[id]/page.ts +87 -0
- package/.next/types/app/(app)/reports/page.ts +87 -0
- package/.next/types/app/(app)/routines/page.ts +87 -0
- package/.next/types/app/(app)/search/page.ts +87 -0
- package/.next/types/app/(app)/security/page.ts +87 -0
- package/.next/types/app/(app)/skills/page.ts +87 -0
- package/.next/types/app/(app)/tasks/page.ts +87 -0
- package/.next/types/app/(app)/test-dev/page.ts +87 -0
- package/.next/types/app/(app)/update/page.ts +87 -0
- package/.next/types/app/(auth)/login/page.ts +87 -0
- package/.next/types/app/(auth)/onboarding/page.ts +87 -0
- package/.next/types/app/api/auth/[...all]/route.ts +351 -0
- package/.next/types/app/api/cron/tick/route.ts +351 -0
- package/.next/types/app/api/dev-login/route.ts +351 -0
- package/.next/types/app/api/locks/acquire/route.ts +351 -0
- package/.next/types/app/api/models/progress/route.ts +351 -0
- package/.next/types/app/api/passkey/authenticate/options/route.ts +351 -0
- package/.next/types/app/api/passkey/authenticate/verify/route.ts +351 -0
- package/.next/types/app/api/passkey/register/options/route.ts +351 -0
- package/.next/types/app/api/passkey/register/verify/route.ts +351 -0
- package/.next/types/app/api/stream/route.ts +351 -0
- package/.next/types/app/api/sync/file/route.ts +351 -0
- package/.next/types/app/api/telegram/poll/route.ts +351 -0
- package/.next/types/app/api/upload/route.ts +351 -0
- package/.next/types/app/api/v1/[[...path]]/route.ts +351 -0
- package/.next/types/cache-life.d.ts +145 -0
- package/.next/types/link.d.ts +210 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +120 -0
- package/.next/types/validator.ts +511 -0
- package/CHANGELOG.md +312 -0
- package/LICENSE +21 -0
- package/README.md +382 -0
- package/README.pt-BR.md +391 -0
- package/bin/constella.mjs +329 -0
- package/bin/guard-hook.mjs +44 -0
- package/bin/lock-hook.mjs +49 -0
- package/bin/worker.mjs +142 -0
- package/docs/assets/arch-orbit.svg +56 -0
- package/docs/assets/blackhole.svg +37 -0
- package/docs/assets/divider-orbit.svg +23 -0
- package/docs/assets/hero-constella.svg +72 -0
- package/docs/en/AGENTS.md +279 -0
- package/docs/en/AI_ARCHITECTURE.md +373 -0
- package/docs/en/ARCHITECTURE.md +334 -0
- package/docs/en/AUTH_MODE.md +247 -0
- package/docs/en/CHAT_COMMANDS.md +305 -0
- package/docs/en/CONFIGURATION.md +340 -0
- package/docs/en/DEPLOY.md +331 -0
- package/docs/en/DM.md +297 -0
- package/docs/en/FAQ.md +258 -0
- package/docs/en/GITHUB.md +341 -0
- package/docs/en/GOALS_SPECS_ISSUES.md +303 -0
- package/docs/en/INBOX.md +340 -0
- package/docs/en/INSTALLATION.md +329 -0
- package/docs/en/KB_AGENT.md +305 -0
- package/docs/en/KB_RAG.md +356 -0
- package/docs/en/MCP.md +313 -0
- package/docs/en/MEMORY_RAG.md +289 -0
- package/docs/en/MODELS.md +341 -0
- package/docs/en/ONBOARDING.md +327 -0
- package/docs/en/PLUGINS.md +290 -0
- package/docs/en/PORTABLE_MODE.md +387 -0
- package/docs/en/PO_AGENT.md +379 -0
- package/docs/en/PREPARE_DEPLOY.md +308 -0
- package/docs/en/PROJECT_STACKS.md +258 -0
- package/docs/en/PUBLIC_API.md +315 -0
- package/docs/en/PUBLISHING.md +343 -0
- package/docs/en/README.md +95 -0
- package/docs/en/SECURITY.md +280 -0
- package/docs/en/SKILLS.md +349 -0
- package/docs/en/START_MODE.md +340 -0
- package/docs/en/SYNCED_BLOCKS.md +320 -0
- package/docs/en/TEAM_ROOM.md +285 -0
- package/docs/en/TELEGRAM.md +294 -0
- package/docs/en/TEST_DEV.md +321 -0
- package/docs/en/TROUBLESHOOTING.md +294 -0
- package/docs/en/UPDATE.md +301 -0
- package/docs/en/VPS_MODE.md +334 -0
- package/docs/en/WORKFLOW.md +321 -0
- package/docs/pt/AGENTS.md +279 -0
- package/docs/pt/AI_ARCHITECTURE.md +373 -0
- package/docs/pt/ARCHITECTURE.md +334 -0
- package/docs/pt/AUTH_MODE.md +247 -0
- package/docs/pt/CHAT_COMMANDS.md +307 -0
- package/docs/pt/CONFIGURATION.md +340 -0
- package/docs/pt/DEPLOY.md +331 -0
- package/docs/pt/DM.md +297 -0
- package/docs/pt/FAQ.md +258 -0
- package/docs/pt/GITHUB.md +341 -0
- package/docs/pt/GOALS_SPECS_ISSUES.md +303 -0
- package/docs/pt/INBOX.md +340 -0
- package/docs/pt/INSTALLATION.md +329 -0
- package/docs/pt/KB_AGENT.md +305 -0
- package/docs/pt/KB_RAG.md +356 -0
- package/docs/pt/MCP.md +313 -0
- package/docs/pt/MEMORY_RAG.md +289 -0
- package/docs/pt/MODELS.md +341 -0
- package/docs/pt/ONBOARDING.md +327 -0
- package/docs/pt/PLUGINS.md +290 -0
- package/docs/pt/PORTABLE_MODE.md +387 -0
- package/docs/pt/PO_AGENT.md +379 -0
- package/docs/pt/PREPARE_DEPLOY.md +308 -0
- package/docs/pt/PROJECT_STACKS.md +258 -0
- package/docs/pt/PUBLIC_API.md +315 -0
- package/docs/pt/PUBLISHING.md +343 -0
- package/docs/pt/README.md +95 -0
- package/docs/pt/SECURITY.md +280 -0
- package/docs/pt/SKILLS.md +349 -0
- package/docs/pt/START_MODE.md +340 -0
- package/docs/pt/SYNCED_BLOCKS.md +320 -0
- package/docs/pt/TEAM_ROOM.md +285 -0
- package/docs/pt/TELEGRAM.md +294 -0
- package/docs/pt/TEST_DEV.md +321 -0
- package/docs/pt/TROUBLESHOOTING.md +294 -0
- package/docs/pt/UPDATE.md +301 -0
- package/docs/pt/VPS_MODE.md +334 -0
- package/docs/pt/WORKFLOW.md +321 -0
- package/drizzle/0000_regular_nightshade.sql +644 -0
- package/drizzle/0001_mixed_zombie.sql +106 -0
- package/drizzle/meta/0000_snapshot.json +4650 -0
- package/drizzle/meta/0001_snapshot.json +5418 -0
- package/drizzle/meta/_journal.json +20 -0
- package/drizzle.config.mjs +16 -0
- package/next.config.mjs +18 -0
- package/package.json +130 -0
- package/scripts/clean-repo.mjs +20 -0
- package/scripts/dev-all.mjs +46 -0
- package/scripts/i18n-parity.mjs +57 -0
- package/scripts/mcp-server.mjs +100 -0
- package/scripts/postbuild.mjs +11 -0
- package/scripts/publish-public.mjs +116 -0
- package/scripts/start-all.mjs +45 -0
- package/scripts/trim-next.mjs +23 -0
- package/scripts/vps-install.sh +39 -0
- package/skills/CONTRIBUTING.md +122 -0
- package/skills/COVERAGE.md +129 -0
- package/skills/INDEX.json +3443 -0
- package/skills/README.md +57 -0
- package/skills/design/animation-motion/SKILL.md +60 -0
- package/skills/design/color-and-typography/SKILL.md +60 -0
- package/skills/design/css-techniques/SKILL.md +58 -0
- package/skills/design/design-systems/SKILL.md +60 -0
- package/skills/design/gradients/SKILL.md +59 -0
- package/skills/design/graphic-design-basics/SKILL.md +55 -0
- package/skills/design/microinteractions/SKILL.md +58 -0
- package/skills/design/responsive-layout/SKILL.md +59 -0
- package/skills/design/ui-ux-principles/SKILL.md +58 -0
- package/skills/engineering/architecture/api-design-rest-graphql/SKILL.md +67 -0
- package/skills/engineering/architecture/caching-strategies/SKILL.md +59 -0
- package/skills/engineering/architecture/data-modeling/SKILL.md +64 -0
- package/skills/engineering/architecture/message-queues-async/SKILL.md +58 -0
- package/skills/engineering/architecture/scalability-reliability/SKILL.md +62 -0
- package/skills/engineering/architecture/software-architecture-patterns/SKILL.md +56 -0
- package/skills/engineering/architecture/system-design-fundamentals/SKILL.md +56 -0
- package/skills/engineering/backend/auth-and-authorization/SKILL.md +62 -0
- package/skills/engineering/backend/backend-fundamentals/SKILL.md +65 -0
- package/skills/engineering/backend/observability-logging/SKILL.md +60 -0
- package/skills/engineering/frontend/accessibility-wcag/SKILL.md +57 -0
- package/skills/engineering/frontend/frontend-architecture/SKILL.md +65 -0
- package/skills/engineering/frontend/rendering-strategies-ssr-csr/SKILL.md +60 -0
- package/skills/engineering/frontend/state-management/SKILL.md +69 -0
- package/skills/engineering/performance/backend-performance/SKILL.md +69 -0
- package/skills/engineering/performance/database-query-optimization/SKILL.md +64 -0
- package/skills/engineering/performance/profiling-and-benchmarking/SKILL.md +60 -0
- package/skills/engineering/performance/web-performance-core-vitals/SKILL.md +72 -0
- package/skills/engineering/practices/clean-code/SKILL.md +61 -0
- package/skills/engineering/practices/code-optimization/SKILL.md +60 -0
- package/skills/engineering/practices/code-review-practices/SKILL.md +58 -0
- package/skills/engineering/practices/git-workflow/SKILL.md +62 -0
- package/skills/engineering/practices/refactoring/SKILL.md +58 -0
- package/skills/engineering/security/appsec-fundamentals/SKILL.md +70 -0
- package/skills/engineering/security/dependency-supply-chain/SKILL.md +77 -0
- package/skills/engineering/security/owasp-asvs/SKILL.md +54 -0
- package/skills/engineering/security/owasp-top-10/SKILL.md +63 -0
- package/skills/engineering/security/secrets-management/SKILL.md +58 -0
- package/skills/engineering/security/secure-auth-sessions/SKILL.md +56 -0
- package/skills/engineering/testing/tdd-and-coverage/SKILL.md +62 -0
- package/skills/engineering/testing/testing-strategy-pyramid/SKILL.md +56 -0
- package/skills/engineering/testing/unit-integration-e2e/SKILL.md +75 -0
- package/skills/languages/c/SKILL.md +74 -0
- package/skills/languages/clojure/SKILL.md +73 -0
- package/skills/languages/cpp/SKILL.md +75 -0
- package/skills/languages/csharp/SKILL.md +75 -0
- package/skills/languages/dart/SKILL.md +82 -0
- package/skills/languages/elixir/SKILL.md +74 -0
- package/skills/languages/erlang/SKILL.md +76 -0
- package/skills/languages/go/SKILL.md +83 -0
- package/skills/languages/haskell/SKILL.md +70 -0
- package/skills/languages/java/SKILL.md +71 -0
- package/skills/languages/javascript/SKILL.md +62 -0
- package/skills/languages/kotlin/SKILL.md +68 -0
- package/skills/languages/lua/SKILL.md +79 -0
- package/skills/languages/objectivec/SKILL.md +83 -0
- package/skills/languages/php/SKILL.md +74 -0
- package/skills/languages/python/SKILL.md +68 -0
- package/skills/languages/r/SKILL.md +70 -0
- package/skills/languages/ruby/SKILL.md +67 -0
- package/skills/languages/rust/SKILL.md +72 -0
- package/skills/languages/scala/SKILL.md +73 -0
- package/skills/languages/swift/SKILL.md +73 -0
- package/skills/languages/typescript/SKILL.md +69 -0
- package/skills/meta/authoring-agent-skills/SKILL.md +73 -0
- package/skills/meta/progressive-disclosure/SKILL.md +65 -0
- package/skills/meta/skill-frontmatter-spec/SKILL.md +65 -0
- package/skills/process/adr-technical-decisions/SKILL.md +59 -0
- package/skills/process/app-planning/SKILL.md +63 -0
- package/skills/process/architecture-before-code/SKILL.md +52 -0
- package/skills/process/breaking-work-into-sprints/SKILL.md +53 -0
- package/skills/process/idea-to-product/SKILL.md +50 -0
- package/skills/process/mocks-and-screen-flows/SKILL.md +52 -0
- package/skills/process/prioritization-moscow-rice/SKILL.md +64 -0
- package/skills/process/problem-framing/SKILL.md +51 -0
- package/skills/process/product-discovery/SKILL.md +53 -0
- package/skills/process/readme-generation/SKILL.md +90 -0
- package/skills/process/requirements-to-specs/SKILL.md +53 -0
- package/skills/process/research-official-docs/SKILL.md +58 -0
- package/skills/process/review-code-perf-security/SKILL.md +65 -0
- package/skills/process/security-by-design/SKILL.md +68 -0
- package/skills/process/specs-to-issues/SKILL.md +53 -0
- package/skills/process/testing-before-done/SKILL.md +61 -0
- package/skills/process/validating-ux-navigation/SKILL.md +63 -0
- package/skills/references/ai-attachments-ui/SKILL.md +66 -0
- package/skills/references/ai-in-browser-webllm/SKILL.md +74 -0
- package/skills/references/ai-tool-ui-patterns/SKILL.md +63 -0
- package/skills/references/component-patterns-gallery/SKILL.md +62 -0
- package/skills/references/gradient-resources/SKILL.md +66 -0
- package/skills/references/react-component-libraries/SKILL.md +61 -0
- package/skills/references/saas-landing-patterns/SKILL.md +67 -0
- package/skills/references/shadcn-tailwind-theming/SKILL.md +74 -0
- package/skills/references/vercel-ai-sdk-elements/SKILL.md +66 -0
- package/skills/references/web-animation-codrops/SKILL.md +68 -0
- package/skills/stacks/aiml/jupyter/SKILL.md +68 -0
- package/skills/stacks/aiml/keras/SKILL.md +77 -0
- package/skills/stacks/aiml/numpy/SKILL.md +69 -0
- package/skills/stacks/aiml/pandas/SKILL.md +72 -0
- package/skills/stacks/aiml/pytorch/SKILL.md +77 -0
- package/skills/stacks/aiml/scikit-learn/SKILL.md +74 -0
- package/skills/stacks/aiml/tensorflow/SKILL.md +79 -0
- package/skills/stacks/auth/auth0/SKILL.md +63 -0
- package/skills/stacks/auth/authjs/SKILL.md +69 -0
- package/skills/stacks/auth/clerk/SKILL.md +72 -0
- package/skills/stacks/auth/keycloak/SKILL.md +63 -0
- package/skills/stacks/auth/lucia/SKILL.md +56 -0
- package/skills/stacks/auth/passport/SKILL.md +70 -0
- package/skills/stacks/auth/supabase-auth/SKILL.md +66 -0
- package/skills/stacks/baas/amplify/SKILL.md +71 -0
- package/skills/stacks/baas/appwrite/SKILL.md +79 -0
- package/skills/stacks/baas/firebase/SKILL.md +73 -0
- package/skills/stacks/baas/heroku/SKILL.md +71 -0
- package/skills/stacks/backend/actix/SKILL.md +77 -0
- package/skills/stacks/backend/adonisjs/SKILL.md +65 -0
- package/skills/stacks/backend/aspnet-core/SKILL.md +75 -0
- package/skills/stacks/backend/codeigniter/SKILL.md +76 -0
- package/skills/stacks/backend/django/SKILL.md +62 -0
- package/skills/stacks/backend/express/SKILL.md +65 -0
- package/skills/stacks/backend/fastapi/SKILL.md +64 -0
- package/skills/stacks/backend/fastify/SKILL.md +64 -0
- package/skills/stacks/backend/fiber/SKILL.md +68 -0
- package/skills/stacks/backend/flask/SKILL.md +71 -0
- package/skills/stacks/backend/gin/SKILL.md +68 -0
- package/skills/stacks/backend/graphql/SKILL.md +70 -0
- package/skills/stacks/backend/hono/SKILL.md +64 -0
- package/skills/stacks/backend/koa/SKILL.md +63 -0
- package/skills/stacks/backend/laravel/SKILL.md +73 -0
- package/skills/stacks/backend/nestjs/SKILL.md +70 -0
- package/skills/stacks/backend/nginx/SKILL.md +77 -0
- package/skills/stacks/backend/phoenix/SKILL.md +68 -0
- package/skills/stacks/backend/rails/SKILL.md +67 -0
- package/skills/stacks/backend/spring/SKILL.md +70 -0
- package/skills/stacks/backend/spring-boot/SKILL.md +70 -0
- package/skills/stacks/backend/symfony/SKILL.md +77 -0
- package/skills/stacks/container/containerd/SKILL.md +75 -0
- package/skills/stacks/container/docker/SKILL.md +90 -0
- package/skills/stacks/container/podman/SKILL.md +93 -0
- package/skills/stacks/database/cassandra/SKILL.md +74 -0
- package/skills/stacks/database/cockroachdb/SKILL.md +69 -0
- package/skills/stacks/database/dynamodb/SKILL.md +62 -0
- package/skills/stacks/database/mariadb/SKILL.md +71 -0
- package/skills/stacks/database/mongodb/SKILL.md +71 -0
- package/skills/stacks/database/mysql/SKILL.md +72 -0
- package/skills/stacks/database/neon/SKILL.md +68 -0
- package/skills/stacks/database/planetscale/SKILL.md +70 -0
- package/skills/stacks/database/postgresql/SKILL.md +81 -0
- package/skills/stacks/database/redis/SKILL.md +78 -0
- package/skills/stacks/database/sqlite/SKILL.md +70 -0
- package/skills/stacks/database/supabase/SKILL.md +79 -0
- package/skills/stacks/dataviz/chart-js/SKILL.md +72 -0
- package/skills/stacks/dataviz/d3/SKILL.md +77 -0
- package/skills/stacks/dataviz/grafana/SKILL.md +69 -0
- package/skills/stacks/dataviz/plotly/SKILL.md +71 -0
- package/skills/stacks/frontend/alpine/SKILL.md +75 -0
- package/skills/stacks/frontend/angular/SKILL.md +75 -0
- package/skills/stacks/frontend/backbone/SKILL.md +82 -0
- package/skills/stacks/frontend/ember/SKILL.md +85 -0
- package/skills/stacks/frontend/htmx/SKILL.md +73 -0
- package/skills/stacks/frontend/lit/SKILL.md +76 -0
- package/skills/stacks/frontend/preact/SKILL.md +74 -0
- package/skills/stacks/frontend/qwik/SKILL.md +65 -0
- package/skills/stacks/frontend/react/SKILL.md +77 -0
- package/skills/stacks/frontend/solidjs/SKILL.md +75 -0
- package/skills/stacks/frontend/svelte/SKILL.md +70 -0
- package/skills/stacks/frontend/vue/SKILL.md +69 -0
- package/skills/stacks/infra/ansible/SKILL.md +76 -0
- package/skills/stacks/infra/aws/SKILL.md +66 -0
- package/skills/stacks/infra/azure/SKILL.md +72 -0
- package/skills/stacks/infra/circleci/SKILL.md +78 -0
- package/skills/stacks/infra/cloudflare/SKILL.md +65 -0
- package/skills/stacks/infra/fly-io/SKILL.md +63 -0
- package/skills/stacks/infra/gcp/SKILL.md +66 -0
- package/skills/stacks/infra/jenkins/SKILL.md +73 -0
- package/skills/stacks/infra/kubernetes/SKILL.md +64 -0
- package/skills/stacks/infra/netlify/SKILL.md +60 -0
- package/skills/stacks/infra/railway/SKILL.md +63 -0
- package/skills/stacks/infra/tailscale/SKILL.md +65 -0
- package/skills/stacks/infra/terraform/SKILL.md +75 -0
- package/skills/stacks/infra/vagrant/SKILL.md +70 -0
- package/skills/stacks/infra/vercel/SKILL.md +60 -0
- package/skills/stacks/meta/astro/SKILL.md +64 -0
- package/skills/stacks/meta/docusaurus/SKILL.md +71 -0
- package/skills/stacks/meta/eleventy/SKILL.md +69 -0
- package/skills/stacks/meta/gatsby/SKILL.md +63 -0
- package/skills/stacks/meta/hugo/SKILL.md +73 -0
- package/skills/stacks/meta/jekyll/SKILL.md +70 -0
- package/skills/stacks/meta/nextjs/SKILL.md +62 -0
- package/skills/stacks/meta/nuxt/SKILL.md +66 -0
- package/skills/stacks/meta/remix/SKILL.md +67 -0
- package/skills/stacks/meta/sveltekit/SKILL.md +70 -0
- package/skills/stacks/meta/vite/SKILL.md +63 -0
- package/skills/stacks/mobile/android/SKILL.md +77 -0
- package/skills/stacks/mobile/flutter/SKILL.md +77 -0
- package/skills/stacks/mobile/ionic/SKILL.md +72 -0
- package/skills/stacks/mobile/nativescript/SKILL.md +71 -0
- package/skills/stacks/mobile/react-native/SKILL.md +75 -0
- package/skills/stacks/mobile/xamarin/SKILL.md +73 -0
- package/skills/stacks/orm/diesel/SKILL.md +72 -0
- package/skills/stacks/orm/django-orm/SKILL.md +58 -0
- package/skills/stacks/orm/drizzle/SKILL.md +67 -0
- package/skills/stacks/orm/gorm/SKILL.md +73 -0
- package/skills/stacks/orm/knex/SKILL.md +64 -0
- package/skills/stacks/orm/mongoose/SKILL.md +64 -0
- package/skills/stacks/orm/prisma/SKILL.md +64 -0
- package/skills/stacks/orm/sequelize/SKILL.md +65 -0
- package/skills/stacks/orm/sqlalchemy/SKILL.md +71 -0
- package/skills/stacks/orm/typeorm/SKILL.md +70 -0
- package/skills/stacks/queue/bullmq/SKILL.md +69 -0
- package/skills/stacks/queue/celery/SKILL.md +68 -0
- package/skills/stacks/queue/kafka/SKILL.md +66 -0
- package/skills/stacks/queue/nats/SKILL.md +66 -0
- package/skills/stacks/queue/rabbitmq/SKILL.md +64 -0
- package/skills/stacks/queue/redis/SKILL.md +66 -0
- package/skills/stacks/runtime/beam/SKILL.md +72 -0
- package/skills/stacks/runtime/bun/SKILL.md +80 -0
- package/skills/stacks/runtime/deno/SKILL.md +74 -0
- package/skills/stacks/runtime/dotnet/SKILL.md +64 -0
- package/skills/stacks/runtime/jvm/SKILL.md +66 -0
- package/skills/stacks/runtime/node/SKILL.md +70 -0
- package/skills/stacks/runtime/pypy/SKILL.md +69 -0
- package/skills/stacks/runtime/python3/SKILL.md +70 -0
- package/skills/stacks/styling/bootstrap/SKILL.md +74 -0
- package/skills/stacks/styling/bulma/SKILL.md +80 -0
- package/skills/stacks/styling/chakra-ui/SKILL.md +61 -0
- package/skills/stacks/styling/css-modules/SKILL.md +54 -0
- package/skills/stacks/styling/mui/SKILL.md +60 -0
- package/skills/stacks/styling/sass/SKILL.md +63 -0
- package/skills/stacks/styling/shadcn-ui/SKILL.md +58 -0
- package/skills/stacks/styling/styled-components/SKILL.md +62 -0
- package/skills/stacks/styling/tailwind/SKILL.md +59 -0
- package/skills/stacks/styling/unocss/SKILL.md +64 -0
- package/skills/stacks/styling/vanilla-extract/SKILL.md +64 -0
- package/skills/stacks/styling/vuetify/SKILL.md +89 -0
- package/skills/stacks/testing/cypress/SKILL.md +68 -0
- package/skills/stacks/testing/jasmine/SKILL.md +67 -0
- package/skills/stacks/testing/jest/SKILL.md +67 -0
- package/skills/stacks/testing/mocha/SKILL.md +71 -0
- package/skills/stacks/testing/playwright/SKILL.md +68 -0
- package/skills/stacks/testing/puppeteer/SKILL.md +70 -0
- package/skills/stacks/testing/selenium/SKILL.md +70 -0
- package/skills/stacks/testing/vitest/SKILL.md +68 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4944],{868:(e,t,s)=>{"use strict";s.d(t,{Sidebar:()=>v});var r=s(5076),a=s(3283),n=s.n(a),c=s(9860),i=s(972),l=s(8576),d=s(8488),h=s(6816),o=s(5629),x=s(8967);function j({orgs:e,currentId:t,workspaceSlug:s}){let a=(0,o.k)(),n=(0,c.useRouter)(),[i,u]=(0,d.useState)(!1),[p,v]=(0,d.useTransition)(),m=(0,d.useRef)(null),M=e.find(e=>e.id===t)||e[0];return(0,d.useEffect)(()=>{if(i)return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)};function e(e){m.current&&!m.current.contains(e.target)&&u(!1)}function t(e){"Escape"===e.key&&u(!1)}},[i]),(0,r.jsxs)("div",{className:"org-switch",ref:m,children:[(0,r.jsxs)("button",{className:"org-switch-btn"+(i?" open":""),disabled:p,onClick:()=>u(e=>!e),title:M?.name,children:[(0,r.jsx)(h.J,{size:34,rx:10}),(0,r.jsxs)("div",{className:"os-meta",children:[(0,r.jsx)("div",{className:"os-name",children:M?.name??"Constella"}),(0,r.jsx)("div",{className:"os-sub mono",children:s})]}),(0,r.jsx)(l.I,{name:"chevronDown",size:14})]}),i&&(0,r.jsxs)("div",{className:"org-pop",children:[(0,r.jsx)("div",{className:"org-pop-h",children:a("mod.organizations")}),e.map((e,s)=>(0,r.jsxs)("button",{className:"org-pop-item"+(e.id===t?" on":""),onClick:()=>{var s;return s=e.id,void(u(!1),s!==t&&v(async()=>{await (0,x.T)(s),window.location.href="/"}))},children:[(0,r.jsx)("span",{className:"op-badge",children:s+1}),(0,r.jsx)("span",{className:"op-name",children:e.name}),e.id===t&&(0,r.jsx)(l.I,{name:"check",size:14})]},e.id)),(0,r.jsx)("div",{className:"org-pop-sep"}),(0,r.jsxs)("button",{className:"org-pop-create",onClick:()=>{u(!1),n.push("/onboarding")},children:[(0,r.jsx)("span",{className:"opc-ic",children:(0,r.jsx)(l.I,{name:"add",size:13})})," ",a("orgs.createOrganization")]})]})]})}var u=s(7814);let p=(0,u.createServerReference)("0006c83f98a39c792e0e4f9308d6a0a4dcb79d85be",u.callServer,void 0,u.findSourceMapURL,"signOutAction");function v({orgs:e,currentOrgId:t,workspaceSlug:s,userName:a,userEmail:d,userImage:h,inboxCount:x,notifCount:u}){let m=(0,c.usePathname)(),M=(0,o.k)();return(0,r.jsxs)("aside",{className:"side",children:[(0,r.jsx)("div",{className:"side-brand-wrap",children:(0,r.jsx)(j,{orgs:e,currentId:t,workspaceSlug:s})}),(0,r.jsxs)(n(),{href:"/search",className:"nav-search",children:[(0,r.jsx)(l.I,{name:"search",size:13}),(0,r.jsx)("input",{placeholder:M("nav.search"),readOnly:!0,style:{pointerEvents:"none"}})]}),(0,r.jsx)("div",{className:"side-nav scroll",children:i.E.map(e=>{let t=i.e.filter(t=>t.group===e);return t.length?(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"nav-group-label",children:M(`group.${e}`)}),t.map(e=>{let t=e=>"/"+(e.split("/")[1]??""),s="home"===e.id?"/"===m:t(m)===t(e.href),a="inbox"===e.id?x:"notifications"===e.id?u:0;return(0,r.jsxs)(n(),{href:e.href,className:"nav-item"+(s?" active":""),children:[(0,r.jsx)(l.I,{name:e.icon,size:17}),(0,r.jsx)("span",{children:M(`mod.${e.id}`)}),a?(0,r.jsx)("span",{className:"nv-badge",children:a}):null]},e.id)})]},e):null})}),(0,r.jsxs)("div",{className:"side-foot",children:[(0,r.jsx)("div",{className:"top-avatar",style:{margin:0,overflow:"hidden",padding:h?0:void 0},children:h?(0,r.jsx)("img",{src:`/api/upload?path=${encodeURIComponent(h)}`,alt:a,style:{width:"100%",height:"100%",objectFit:"cover",display:"block"}}):(a?.[0]||"O").toUpperCase()}),(0,r.jsxs)(n(),{href:"/profile",className:"pf",children:[(0,r.jsx)("div",{className:"pn",children:a||M("nav.operator")}),(0,r.jsx)("div",{className:"pe",children:d||""})]}),(0,r.jsx)("form",{action:p,children:(0,r.jsx)("button",{className:"foot-signout",title:M("nav.signout"),type:"submit",children:(0,r.jsx)(l.I,{name:"close",size:15})})})]})]})}},2005:(e,t,s)=>{Promise.resolve().then(s.bind(s,6257)),Promise.resolve().then(s.bind(s,8449)),Promise.resolve().then(s.bind(s,5750)),Promise.resolve().then(s.bind(s,868)),Promise.resolve().then(s.bind(s,6042)),Promise.resolve().then(s.bind(s,2088))},2088:(e,t,s)=>{"use strict";s.d(t,{UpdateBanner:()=>o});var r=s(5076),a=s(8488),n=s(3283),c=s.n(n),i=s(8576),l=s(5629),d=s(7814);let h=(0,d.createServerReference)("400149cd096ac1354f913c071f900a64d2862dbfb3",d.callServer,void 0,d.findSourceMapURL,"getUpdateStatus");function o(){let e=(0,l.k)(),[t,s]=(0,a.useState)(null);return((0,a.useEffect)(()=>{h().then(e=>{if(!e.updateAvailable||!e.latest)return;let t=!1;try{t=localStorage.getItem("cn.updateDismissed")===e.latest}catch{}t||s(e.latest)}).catch(()=>{})},[]),t)?(0,r.jsxs)("div",{className:"update-banner",role:"status",children:[(0,r.jsx)(i.I,{name:"goto",size:14}),(0,r.jsxs)("span",{children:[e("chrome.update.available")," — ",(0,r.jsxs)("b",{children:["v",t]})]}),(0,r.jsx)(c(),{href:"/update",className:"upd-banner-btn",children:e("chrome.update.view")}),(0,r.jsx)("button",{className:"update-x",title:e("common.dismiss"),onClick:function(){try{localStorage.setItem("cn.updateDismissed",t??"")}catch{}s(null)},children:(0,r.jsx)(i.I,{name:"close",size:12})})]}):null}},5629:(e,t,s)=>{"use strict";s.d(t,{LangProvider:()=>i,k:()=>l});var r=s(5076),a=s(8488),n=s(3219);let c=(0,a.createContext)("en");function i({lang:e,children:t}){return(0,r.jsx)(c.Provider,{value:e,children:t})}function l(){let e=(0,a.useContext)(c);return(t,s)=>(0,n.t)(e,t,s)}},5750:(e,t,s)=>{"use strict";s.d(t,{SearchHotkey:()=>n});var r=s(8488),a=s(9860);function n(){let e=(0,a.useRouter)();return(0,r.useEffect)(()=>{function t(t){(t.ctrlKey||t.metaKey)&&("p"===t.key||"k"===t.key||"P"===t.key||"K"===t.key)&&(t.preventDefault(),e.push("/search"))}return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e]),null}},6042:(e,t,s)=>{"use strict";s.d(t,{Toaster:()=>h});var r=s(5076),a=s(8488),n=s(9860),c=s(8576),i=s(5629),l=s(7814);let d=(0,l.createServerReference)("4087ab1c78ed5ed4e18af75948e6ecb17084aee022",l.callServer,void 0,l.findSourceMapURL,"recentNotifications");function h(){let e=(0,i.k)(),[t,s]=(0,a.useState)([]),l=(0,a.useRef)(0),h=(0,a.useRef)(new Set),o=(0,n.useRouter)();function x(e){s(t=>t.filter(t=>t.id!==e))}return((0,a.useEffect)(()=>{l.current=Date.now();let e=!0,t=setInterval(async()=>{try{let t=await d(l.current);if(!e||!t.length)return;l.current=Math.max(l.current,...t.map(e=>e.at));let r=t.filter(e=>!h.current.has(e.id));if(!r.length)return;r.forEach(e=>h.current.add(e.id)),s(e=>[...r,...e].slice(0,4))}catch{}},8e3);return()=>{e=!1,clearInterval(t)}},[]),(0,a.useEffect)(()=>{if(!t.length)return;let e=setTimeout(()=>s(e=>e.slice(0,-1)),7e3);return()=>clearTimeout(e)},[t]),t.length)?(0,r.jsx)("div",{className:"toaster",children:t.map(t=>{var s;return(0,r.jsxs)("div",{className:"toast toast-"+t.kind,role:"status",onClick:()=>{var e,s;(x((e=t).id),e.channel&&("room"===(s=e.channel)||"telegram"===s||s.startsWith("dm:")))?window.dispatchEvent(new CustomEvent("constella:open-chat",{detail:{channel:e.channel}})):o.push("/notifications")},children:[(0,r.jsx)("span",{className:"toast-ic",children:(0,r.jsx)(c.I,{name:"approval"===(s=t.kind)||"needs-approval"===s?"inbox":"security"===s||"block"===s||"blocked"===s?"shield":"deploy"===s?"goto":"error"===s||"warn"===s||"warning"===s?"warn":s.startsWith("dm")||"mention"===s||"message"===s?"chat":"bell",size:15})}),(0,r.jsxs)("div",{className:"toast-body",children:[(0,r.jsx)("div",{className:"toast-title",children:t.text}),t.detail&&(0,r.jsx)("div",{className:"toast-detail",children:t.detail})]}),(0,r.jsx)("button",{className:"toast-x",title:e("common.dismiss"),onClick:e=>{e.stopPropagation(),x(t.id)},children:(0,r.jsx)(c.I,{name:"close",size:12})})]},t.id)})}):null}},6257:(e,t,s)=>{"use strict";s.d(t,{ChatDockGate:()=>c});var r=s(5076),a=s(9860),n=s(802);function c(e){return"/"===(0,a.usePathname)()?null:(0,r.jsx)(n.uG,{...e})}},6816:(e,t,s)=>{"use strict";s.d(t,{J:()=>a});var r=s(5076);function a({size:e=34,rx:t=9}){return(0,r.jsxs)("svg",{width:e,height:e,viewBox:"0 0 100 100",style:{display:"block",flex:`0 0 ${e}px`},"aria-label":"Constella",children:[(0,r.jsx)("rect",{x:"1",y:"1",width:"98",height:"98",rx:t,fill:"var(--cs-bg)",stroke:"var(--cs-border)",strokeWidth:"1.5"}),(0,r.jsx)("path",{d:"M66.06 27.06 L42.75 22.95 L24.62 38.17 L24.62 61.83 L42.75 77.05 L66.06 72.94",fill:"none",stroke:"var(--cs-line)",strokeWidth:"2.1",strokeLinecap:"round",strokeLinejoin:"round"}),(0,r.jsx)("path",{d:"M48 50 L42.75 22.95 M48 50 L24.62 50 M48 50 L42.75 77.05",fill:"none",stroke:"var(--cs-line)",strokeWidth:"1.2",strokeLinecap:"round",opacity:"0.55"}),[[66.06,27.06],[42.75,22.95],[24.62,38.17],[24.62,61.83],[42.75,77.05],[66.06,72.94]].map((e,t)=>(0,r.jsx)("circle",{cx:e[0],cy:e[1],r:"3.1",fill:"var(--cs-node)"},t)),(0,r.jsx)("circle",{cx:"48",cy:"50",r:"8.5",fill:"var(--cs-glow)",opacity:"0.4"}),(0,r.jsx)("circle",{cx:"48",cy:"50",r:"4.3",fill:"var(--cs-core)"})]})}},8449:(e,t,s)=>{"use strict";s.d(t,{RunnerHeartbeat:()=>l});var r=s(8488),a=s(9860),n=s(7814);let c=(0,n.createServerReference)("002f36cd9d6939280c33ed8197061b8910801d11ba",n.callServer,void 0,n.findSourceMapURL,"tick"),i=(0,n.createServerReference)("005321f1c303b6315876d9e79d53d2bb874adc37f6",n.callServer,void 0,n.findSourceMapURL,"autoTick");function l({intervalMs:e=8e3,approved:t=!1,auto247:s=!1}){let n=(0,a.useRouter)(),d=(0,r.useRef)(!1),h=(0,r.useRef)(!1);return(0,r.useEffect)(()=>{let t=!1;async function s(){if(!t&&!d.current&&!document.hidden){d.current=!0;try{let e=await c();!e.paused&&(e.advanced||(e.changed??0)>0)&&n.refresh()}catch{}finally{d.current=!1}}}s();let r=setInterval(s,e),a=()=>{document.hidden||s()};return document.addEventListener("visibilitychange",a),()=>{t=!0,clearInterval(r),document.removeEventListener("visibilitychange",a)}},[e,n]),(0,r.useEffect)(()=>{let e=!1;async function r(){if(!e&&!h.current&&!document.hidden&&t&&s){h.current=!0;try{let t=await i();t.ran&&n.refresh(),e||t.paused||!t.ran||!(t.remaining>0)||document.hidden||setTimeout(r,1200)}catch{}finally{h.current=!1}}}r();let a=()=>{document.hidden||r()};return document.addEventListener("visibilitychange",a),()=>{e=!0,document.removeEventListener("visibilitychange",a)}},[t,s,n]),null}},8576:(e,t,s)=>{"use strict";s.d(t,{I:()=>n});var r=s(5076);let a={files:(0,r.jsx)("path",{d:"M3 3.5h5l1.5 2H13a1 1 0 0 1 1 1V12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4.5a1 1 0 0 1 1-1z"}),search:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"7",cy:"7",r:"4.2"}),(0,r.jsx)("path",{d:"M10.2 10.2 14 14"})]}),git:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"4",cy:"4",r:"1.8"}),(0,r.jsx)("circle",{cx:"4",cy:"12",r:"1.8"}),(0,r.jsx)("circle",{cx:"12",cy:"9.5",r:"1.8"}),(0,r.jsx)("path",{d:"M4 5.8v4.4M5.8 4H9a2 2 0 0 1 2 2v1.6"})]}),debug:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"8.5",r:"3.5"}),(0,r.jsx)("path",{d:"M8 5V3M4.5 8.5H2m12 0h-2.5M4.8 11.8 3.4 13M11.2 11.8l1.4 1.2M5.2 5 3.8 3.6M10.8 5l1.4-1.4"})]}),ext:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2.5",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,r.jsx)("rect",{x:"9",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,r.jsx)("rect",{x:"2.5",y:"9",width:"4.5",height:"4.5",rx:"1"}),(0,r.jsx)("path",{d:"M9 11.2h4.5M11.2 9v4.5"})]}),settings:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"8",r:"2.2"}),(0,r.jsx)("path",{d:"M8 1.5v2M8 12.5v2M14.5 8h-2M3.5 8h-2M12.6 3.4l-1.4 1.4M4.8 11.2l-1.4 1.4M12.6 12.6l-1.4-1.4M4.8 4.8 3.4 3.4"})]}),account:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"5.5",r:"2.8"}),(0,r.jsx)("path",{d:"M2.8 14c0-2.8 2.3-4.5 5.2-4.5s5.2 1.7 5.2 4.5"})]}),chevronRight:(0,r.jsx)("path",{d:"M6 4l4 4-4 4"}),chevronDown:(0,r.jsx)("path",{d:"M4 6l4 4 4-4"}),close:(0,r.jsx)("path",{d:"M4 4l8 8M12 4l-8 8"}),add:(0,r.jsx)("path",{d:"M8 3v10M3 8h10"}),newFile:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M9 2H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6L9 2z"}),(0,r.jsx)("path",{d:"M9 2v4h4M8 8v4M6 10h4"})]}),newFolder:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M2 5.5a1 1 0 0 1 1-1h3l1.2 1.5H13a1 1 0 0 1 1 1V12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5.5z"}),(0,r.jsx)("path",{d:"M8 8v3M6.5 9.5h3"})]}),refresh:(0,r.jsx)("path",{d:"M13 8a5 5 0 1 1-1.5-3.5M13 2.5V5h-2.5"}),collapse:(0,r.jsx)("path",{d:"M3 5h6M3 8h6M3 11h6M12 6l-1.5 1.5L12 9"}),more:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"3.5",cy:"8",r:"1"}),(0,r.jsx)("circle",{cx:"8",cy:"8",r:"1"}),(0,r.jsx)("circle",{cx:"12.5",cy:"8",r:"1"})]}),split:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1"}),(0,r.jsx)("path",{d:"M8 3v10"})]}),terminal:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,r.jsx)("path",{d:"M4.5 6.5 6.5 8l-2 1.5M8 10h3.5"})]}),panelBottom:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,r.jsx)("path",{d:"M2 10h12"})]}),sidebarIcon:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,r.jsx)("path",{d:"M6 3v10"})]}),bell:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M8 2a3.5 3.5 0 0 0-3.5 3.5c0 3-1.3 4-1.3 4h9.6s-1.3-1-1.3-4A3.5 3.5 0 0 0 8 2z"}),(0,r.jsx)("path",{d:"M6.7 12a1.4 1.4 0 0 0 2.6 0"})]}),check:(0,r.jsx)("path",{d:"M3 8.5 6.5 12 13 4"}),error:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"8",r:"6"}),(0,r.jsx)("path",{d:"M8 5v4M8 11h.01"})]}),warn:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M8 2.5 14.5 13.5h-13z"}),(0,r.jsx)("path",{d:"M8 7v3M8 12h.01"})]}),branch:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"4",cy:"4",r:"1.6"}),(0,r.jsx)("circle",{cx:"4",cy:"12",r:"1.6"}),(0,r.jsx)("circle",{cx:"12",cy:"9",r:"1.6"}),(0,r.jsx)("path",{d:"M4 5.6v4.8M5.6 4H9a1.8 1.8 0 0 1 1.8 1.8v1.6"})]}),sync:(0,r.jsx)("path",{d:"M3 6a5 5 0 0 1 8.5-2M13 10a5 5 0 0 1-8.5 2M11.5 2.5V4h-1.5M4.5 13.5V12h1.5"}),command:(0,r.jsx)("path",{d:"M5.5 3.5A1.5 1.5 0 1 1 4 5h8a1.5 1.5 0 1 1-1.5 1.5v3A1.5 1.5 0 1 1 12 11H4a1.5 1.5 0 1 1 1.5-1.5v-3z"}),goto:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M3 8h8M7.5 4.5 11 8l-3.5 3.5"}),(0,r.jsx)("path",{d:"M13 3v10"})]}),sun:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,r.jsx)("path",{d:"M8 1.5v1.5M8 13v1.5M14.5 8H13M3 8H1.5M12.6 3.4l-1 1M4.4 11.6l-1 1M12.6 12.6l-1-1M4.4 4.4l-1-1"})]}),moon:(0,r.jsx)("path",{d:"M13 9.2A5.5 5.5 0 0 1 6.8 3 5.5 5.5 0 1 0 13 9.2z"}),play:(0,r.jsx)("path",{d:"M5 3.5v9l7-4.5z"}),trash:(0,r.jsx)("path",{d:"M3.5 4.5h9M6 4.5V3h4v1.5M5 4.5l.5 8.5h5l.5-8.5"}),dot:(0,r.jsx)("circle",{cx:"8",cy:"8",r:"3"}),fileTs:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M9 2H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6L9 2z"}),(0,r.jsx)("path",{d:"M9 2v4h4"})]}),arrowUp:(0,r.jsx)("path",{d:"M8 13V3M4 7l4-4 4 4"}),arrowDown:(0,r.jsx)("path",{d:"M8 3v10M4 9l4 4 4-4"}),agents:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"5.5",cy:"6",r:"2.2"}),(0,r.jsx)("circle",{cx:"11",cy:"6.5",r:"1.8"}),(0,r.jsx)("path",{d:"M2 13c0-2 1.6-3.2 3.5-3.2S9 11 9 13M9.5 12.5c.2-1.6 1.3-2.5 2.8-2.5 1.3 0 2.4.8 2.4 2.3"})]}),bot:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"3",y:"5.5",width:"10",height:"7",rx:"2"}),(0,r.jsx)("path",{d:"M8 3v2.5M5.8 9h.01M10.2 9h.01M6 12h4"}),(0,r.jsx)("circle",{cx:"8",cy:"3",r:"1"})]}),send:(0,r.jsx)("path",{d:"M14 2 7 9M14 2l-4.5 12-2.5-5L2 6.5z"}),at:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,r.jsx)("path",{d:"M11 8v1.2a1.8 1.8 0 0 0 3.5.6A6.5 6.5 0 1 0 11 13.2"})]}),chevronLeft:(0,r.jsx)("path",{d:"M10 4 6 8l4 4"}),dockRight:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,r.jsx)("path",{d:"M10 3v10"}),(0,r.jsx)("rect",{x:"10.5",y:"3.5",width:"3",height:"9",rx:"1",fill:"currentColor",stroke:"none",opacity:"0.25"})]}),dockLeft:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,r.jsx)("path",{d:"M6 3v10"}),(0,r.jsx)("rect",{x:"2.5",y:"3.5",width:"3",height:"9",rx:"1",fill:"currentColor",stroke:"none",opacity:"0.25"})]}),chat:(0,r.jsx)("path",{d:"M3 4.5h10a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H7l-3 2.5V11.5H3a1 1 0 0 1-1-1v-5a1 1 0 0 1 1-1z"}),grid:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2.5",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,r.jsx)("rect",{x:"9",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,r.jsx)("rect",{x:"2.5",y:"9",width:"4.5",height:"4.5",rx:"1"}),(0,r.jsx)("rect",{x:"9",y:"9",width:"4.5",height:"4.5",rx:"1"})]}),inbox:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M2 9h3l1 2h4l1-2h3"}),(0,r.jsx)("path",{d:"M2.5 9 4 3.5h8L13.5 9v3.5a1 1 0 0 1-1 1h-9a1 1 0 0 1-1-1z"})]}),calendar:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"2.5",y:"3.5",width:"11",height:"10",rx:"1.5"}),(0,r.jsx)("path",{d:"M2.5 6.5h11M5.5 2v3M10.5 2v3"})]}),repeat:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M3 6a4 4 0 0 1 7-2.5L12 5M13 10a4 4 0 0 1-7 2.5L4 11"}),(0,r.jsx)("path",{d:"M12 2v3H9M4 14v-3h3"})]}),doc:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M9 2H4.5a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V5.5L9 2z"}),(0,r.jsx)("path",{d:"M9 2v3.5h3.5M6 8.5h4M6 11h4"})]}),skill:(0,r.jsx)("path",{d:"M8 2.5l1.4 3.1 3.4.4-2.5 2.3.7 3.3L8 9.9 5 11.6l.7-3.3L3.2 6l3.4-.4z"}),pulse:(0,r.jsx)("path",{d:"M2 8h3l1.5-4 2.5 8 1.5-4H14"}),coins:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("ellipse",{cx:"6",cy:"4.5",rx:"3.5",ry:"1.8"}),(0,r.jsx)("path",{d:"M2.5 4.5v3c0 1 1.6 1.8 3.5 1.8s3.5-.8 3.5-1.8v-3"}),(0,r.jsx)("ellipse",{cx:"10",cy:"9.5",rx:"3.5",ry:"1.8"}),(0,r.jsx)("path",{d:"M6.5 9.5c.4.9 1.8 1.5 3.5 1.5s3.5-.8 3.5-1.8v-1.2"})]}),cpu:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("rect",{x:"4",y:"4",width:"8",height:"8",rx:"1.5"}),(0,r.jsx)("rect",{x:"6.3",y:"6.3",width:"3.4",height:"3.4",rx:".5"}),(0,r.jsx)("path",{d:"M6 2v2M10 2v2M6 12v2M10 12v2M2 6h2M2 10h2M12 6h2M12 10h2"})]}),shield:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{d:"M8 2 3 4v4c0 3 2.2 5 5 6 2.8-1 5-3 5-6V4z"}),(0,r.jsx)("path",{d:"M5.8 8 7.3 9.5 10.4 6.3"})]}),target:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("circle",{cx:"8",cy:"8",r:"5.5"}),(0,r.jsx)("circle",{cx:"8",cy:"8",r:"2.4"})]})};function n({name:e,size:t=16,className:s="",strokeWidth:c=1.4,style:i}){let l=a[e];return l?(0,r.jsx)("svg",{width:t,height:t,viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:c,strokeLinecap:"round",strokeLinejoin:"round",className:s,style:i,children:"play"===e||"dot"===e?(0,r.jsx)("g",{fill:"currentColor",stroke:"none",children:l}):l}):null}},8967:(e,t,s)=>{"use strict";s.d(t,{T:()=>a});var r=s(7814);let a=(0,r.createServerReference)("407cf85f2718edbd7381c5d3eb70093cba0985add5",r.callServer,void 0,r.findSourceMapURL,"setActiveOrg")}},e=>{e.O(0,[9219,9690,3219,6575,6646,6834,7358],()=>e(e.s=2005)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9274],{6603:(e,s,a)=>{"use strict";a.d(s,{ModelsScreen:()=>es,OpenCatalogButton:()=>ea});var n=a(5076),l=a(8488),t=a(8576),i=a(4552),r=a(9265);let d=[[/qwen/i,"qwen"],[/(^|[-_ ])(meta-?)?llama/i,"meta"],[/codestral|mixtral|mistral|ministral/i,"mistral"],[/gemma/i,"gemma"],[/phi-?\d/i,"microsoft"],[/deepseek/i,"deepseek"],[/(^|[-_ ])yi-?\d/i,"yi"],[/granite/i,"ibm"],[/smollm/i,"huggingface"],[/aya|command-?r|^c4ai/i,"cohere"],[/falcon/i,"tii"],[/exaone/i,"lg"]];var o=a(3728),c=a(4403),m=a(7814);let p=(0,m.createServerReference)("4039a15603d07697017218712584fc555a221e81e0",m.callServer,void 0,m.findSourceMapURL,"testProvider"),h=(0,m.createServerReference)("40285308ac1222140508a12c926b094a13a3fe4023",m.callServer,void 0,m.findSourceMapURL,"syncProvider"),x=(0,m.createServerReference)("404fc69338d752357a7ecd696abe48f74584fbfa1e",m.callServer,void 0,m.findSourceMapURL,"revokeProviderToken"),u=(0,m.createServerReference)("4038cc68b3a0991c0653c28a722bbd191c10103e5f",m.callServer,void 0,m.findSourceMapURL,"removeProvider");var v=a(4016);let g=(0,m.createServerReference)("4054ef53cfe8c42d237d6c4072286918b65ab3e258",m.callServer,void 0,m.findSourceMapURL,"refreshProviderModels");var j=a(4290);let k=(0,m.createServerReference)("60f2d99bd9913d5d38a04def28f7e3fcb2a6d6ea8d",m.callServer,void 0,m.findSourceMapURL,"connectProvider");var f=a(8088);let b=(0,m.createServerReference)("00d4d2587dceadf689c62e230f0fade2ff16d91a98",m.callServer,void 0,m.findSourceMapURL,"downloadLlamaServer"),B=(0,m.createServerReference)("4087db27a0971eec3d866e787e2fdc1e5469606ebc",m.callServer,void 0,m.findSourceMapURL,"startLlamaServer"),y=(0,m.createServerReference)("0017cc8a4ad40128920f52b25416e9396cee2630a7",m.callServer,void 0,m.findSourceMapURL,"stopLlamaServer"),N=(0,m.createServerReference)("40542ac1b1eca7bab158a31b48910ebdfae0c41136",m.callServer,void 0,m.findSourceMapURL,"removeGguf"),w=(0,m.createServerReference)("40396805f615607165c344c07c5a16fc0b680f8f5e",m.callServer,void 0,m.findSourceMapURL,"removeModel"),S=(0,m.createServerReference)("409c7634f3d98b4f9b9b11d9f1b06f129f8ee477da",m.callServer,void 0,m.findSourceMapURL,"downloadGguf");var I=a(9426);let C=(0,m.createServerReference)("00246beed3841520b6281529abd4b518e33fe5e86f",m.callServer,void 0,m.findSourceMapURL,"embedStatus"),M=(0,m.createServerReference)("0012006a55cfe2592f83591f9000342265af6934bc",m.callServer,void 0,m.findSourceMapURL,"startEmbeddings"),z=(0,m.createServerReference)("00533b64ea6f4a2acbd0745ed94cae49abc4cad513",m.callServer,void 0,m.findSourceMapURL,"reindexRag");var Q=a(1921);let _=[{name:"nomic-embed-text",label:"Nomic Embed Text",size:"274 MB",kind:"embed",note:"Powers semantic workspace RAG — pull this to enable embeddings."},{name:"mxbai-embed-large",label:"mxbai Embed Large",size:"670 MB",kind:"embed",note:"Higher-quality embeddings (set CONSTELLA_EMBED_MODEL)."},{name:"llama3.2:3b",label:"Llama 3.2 3B",size:"2.0 GB",kind:"chat"},{name:"qwen2.5:7b",label:"Qwen 2.5 7B",size:"4.7 GB",kind:"chat"},{name:"qwen2.5-coder:7b",label:"Qwen 2.5 Coder 7B",size:"4.7 GB",kind:"code"},{name:"gemma2:2b",label:"Gemma 2 2B",size:"1.6 GB",kind:"chat"},{name:"phi3.5",label:"Phi 3.5",size:"2.2 GB",kind:"chat"}],L=[{repo:"Qwen2.5-0.5B-Instruct",paramsB:.5,kind:"chat"},{repo:"Qwen2.5-1.5B-Instruct",paramsB:1.5,kind:"chat"},{repo:"Qwen2.5-3B-Instruct",paramsB:3,kind:"chat"},{repo:"Qwen2.5-7B-Instruct",paramsB:7,kind:"chat"},{repo:"Qwen2.5-14B-Instruct",paramsB:14,kind:"chat"},{repo:"Qwen2.5-32B-Instruct",paramsB:32,kind:"chat"},{repo:"Qwen2.5-72B-Instruct",paramsB:72,kind:"chat"},{repo:"Qwen2.5-Coder-1.5B-Instruct",paramsB:1.5,kind:"code"},{repo:"Qwen2.5-Coder-3B-Instruct",paramsB:3,kind:"code"},{repo:"Qwen2.5-Coder-7B-Instruct",paramsB:7,kind:"code"},{repo:"Qwen2.5-Coder-14B-Instruct",paramsB:14,kind:"code"},{repo:"Qwen2.5-Coder-32B-Instruct",paramsB:32,kind:"code"},{repo:"Qwen3-0.6B",paramsB:.6,kind:"chat"},{repo:"Qwen3-1.7B",paramsB:1.7,kind:"chat"},{repo:"Qwen3-4B",paramsB:4,kind:"chat"},{repo:"Qwen3-8B",paramsB:8,kind:"chat"},{repo:"Qwen3-14B",paramsB:14,kind:"chat"},{repo:"Qwen3-32B",paramsB:32,kind:"chat"},{repo:"Llama-3.2-1B-Instruct",paramsB:1,kind:"chat"},{repo:"Llama-3.2-3B-Instruct",paramsB:3,kind:"chat"},{repo:"Meta-Llama-3.1-8B-Instruct",paramsB:8,kind:"chat"},{repo:"Meta-Llama-3.1-70B-Instruct",paramsB:70,kind:"chat"},{repo:"Llama-3.3-70B-Instruct",paramsB:70,kind:"chat"},{repo:"gemma-2-2b-it",paramsB:2,kind:"chat"},{repo:"gemma-2-9b-it",paramsB:9,kind:"chat"},{repo:"gemma-2-27b-it",paramsB:27,kind:"chat"},{repo:"gemma-3-1b-it",paramsB:1,kind:"chat"},{repo:"gemma-3-4b-it",paramsB:4,kind:"chat"},{repo:"gemma-3-12b-it",paramsB:12,kind:"chat"},{repo:"gemma-3-27b-it",paramsB:27,kind:"chat"},{repo:"Mistral-7B-Instruct-v0.3",paramsB:7,kind:"chat"},{repo:"Mistral-Nemo-Instruct-2407",paramsB:12,kind:"chat"},{repo:"Mistral-Small-Instruct-2409",paramsB:22,kind:"chat"},{repo:"Mistral-Small-24B-Instruct-2501",paramsB:24,kind:"chat"},{repo:"Codestral-22B-v0.1",paramsB:22,kind:"code"},{repo:"Phi-3.1-mini-4k-instruct",paramsB:3.8,kind:"chat"},{repo:"DeepSeek-R1-Distill-Qwen-1.5B",paramsB:1.5,kind:"reasoning"},{repo:"DeepSeek-R1-Distill-Qwen-7B",paramsB:7,kind:"reasoning"},{repo:"DeepSeek-R1-Distill-Qwen-14B",paramsB:14,kind:"reasoning"},{repo:"DeepSeek-R1-Distill-Qwen-32B",paramsB:32,kind:"reasoning"},{repo:"DeepSeek-R1-Distill-Llama-8B",paramsB:8,kind:"reasoning"},{repo:"DeepSeek-Coder-V2-Lite-Instruct",paramsB:16,kind:"code"},{repo:"Yi-1.5-9B-Chat",paramsB:9,kind:"chat"},{repo:"Yi-1.5-34B-Chat",paramsB:34,kind:"chat"},{repo:"granite-3.0-8b-instruct",paramsB:8,kind:"chat"},{repo:"granite-3.1-8b-instruct",paramsB:8,kind:"chat"},{repo:"SmolLM2-360M-Instruct",paramsB:.36,kind:"chat"},{repo:"SmolLM2-1.7B-Instruct",paramsB:1.7,kind:"chat"},{repo:"aya-expanse-8b",paramsB:8,kind:"chat"},{repo:"aya-expanse-32b",paramsB:32,kind:"chat"},{repo:"Falcon3-7B-Instruct",paramsB:7,kind:"chat"},{repo:"Falcon3-10B-Instruct",paramsB:10,kind:"chat"},{repo:"EXAONE-3.5-2.4B-Instruct",paramsB:2.4,kind:"chat"},{repo:"EXAONE-3.5-7.8B-Instruct",paramsB:7.8,kind:"chat"},{repo:"Qwen3.5-0.8B",paramsB:.8,kind:"chat"},{repo:"Qwen3.5-2B",paramsB:2,kind:"chat"},{repo:"Qwen3.5-9B",paramsB:9,kind:"chat"},{repo:"Qwen3.5-27B",paramsB:27,kind:"chat"},{repo:"Qwen3.5-35B-A3B",paramsB:35,kind:"chat"},{repo:"Qwen3.6-27B",paramsB:27,kind:"chat"},{repo:"Qwen3.6-35B-A3B",paramsB:35,kind:"chat"},{repo:"Qwen3-30B-A3B",paramsB:30,kind:"chat"},{repo:"Qwen3-30B-A3B-Instruct-2507",paramsB:30,kind:"chat"},{repo:"Qwen3-Next-80B-A3B-Instruct",paramsB:80,kind:"chat"},{repo:"Qwen3-4B-Thinking-2507",paramsB:4,kind:"reasoning"},{repo:"QwQ-32B",paramsB:32,kind:"reasoning"},{repo:"Qwen2.5-7B-Instruct-1M",paramsB:7,kind:"chat"},{repo:"Qwen2.5-Coder-0.5B-Instruct",paramsB:.5,kind:"code"},{repo:"Qwen2.5-Coder-3B",paramsB:3,kind:"code"},{repo:"Qwen2.5-Coder-32B",paramsB:32,kind:"code"},{repo:"Qwen2.5-Math-7B-Instruct",paramsB:7,kind:"chat"},{repo:"Qwen2-500M-Instruct",paramsB:.5,kind:"chat"},{repo:"Qwen1.5-32B-Chat",paramsB:32,kind:"chat"},{repo:"gemma-4-E2B-it",paramsB:2,kind:"chat"},{repo:"gemma-4-E4B-it",paramsB:4,kind:"chat"},{repo:"gemma-4-12B-it",paramsB:12,kind:"chat"},{repo:"gemma-4-26B-A4B-it",paramsB:26,kind:"chat"},{repo:"gemma-4-31B-it",paramsB:31,kind:"chat"},{repo:"gemma-3-270m-it",paramsB:.27,kind:"chat"},{repo:"gemma-1.1-2b-it",paramsB:2,kind:"chat"},{repo:"codegemma-2b",paramsB:2,kind:"code"},{repo:"codegemma-7b",paramsB:7,kind:"code"},{repo:"codegemma-7b-it",paramsB:7,kind:"code"},{repo:"codegemma-1.1-7b-it",paramsB:7,kind:"code"},{repo:"Ministral-3-3B-Instruct-2512",paramsB:3,kind:"chat"},{repo:"Ministral-3-8B-Instruct-2512",paramsB:8,kind:"chat"},{repo:"Ministral-3-14B-Instruct-2512",paramsB:14,kind:"chat"},{repo:"Ministral-3-3B-Reasoning-2512",paramsB:3,kind:"reasoning"},{repo:"Ministral-3-8B-Reasoning-2512",paramsB:8,kind:"reasoning"},{repo:"Ministral-3-14B-Reasoning-2512",paramsB:14,kind:"reasoning"},{repo:"Mistral-Small-3.1-24B-Instruct-2503",paramsB:24,kind:"chat"},{repo:"Mistral-Small-3.2-24B-Instruct-2506",paramsB:24,kind:"chat"},{repo:"Devstral-Small-2-24B-Instruct-2512",paramsB:24,kind:"code"},{repo:"mathstral-7B-v0.1",paramsB:7,kind:"chat"},{repo:"dolphin-2.8-mistral-7b-v02",paramsB:7,kind:"chat"},{repo:"WizardLM-2-7B",paramsB:7,kind:"chat"},{repo:"DeepSeek-R1-0528-Qwen3-8B",paramsB:8,kind:"reasoning"},{repo:"DeepSeek-R1-Distill-Llama-70B",paramsB:70,kind:"reasoning"},{repo:"deepseek-coder-1.3B-kexer",paramsB:1.3,kind:"code"},{repo:"deepseek-coder-6.7B-kexer",paramsB:6.7,kind:"code"},{repo:"granite-3.2-8b-instruct",paramsB:8,kind:"chat"},{repo:"granite-4.1-3b",paramsB:3,kind:"chat"},{repo:"granite-4.1-8b",paramsB:8,kind:"chat"},{repo:"granite-4.1-30b",paramsB:30,kind:"chat"},{repo:"Olmo-3-32B-Think",paramsB:32,kind:"reasoning"},{repo:"Seed-OSS-36B-Instruct",paramsB:36,kind:"chat"},{repo:"ERNIE-4.5-21B-A3B-PT",paramsB:21,kind:"chat"},{repo:"LFM2-24B-A2B",paramsB:24,kind:"chat"},{repo:"LFM2.5-1.2B-Instruct",paramsB:1.2,kind:"chat"},{repo:"LFM2.5-1.2B-Thinking",paramsB:1.2,kind:"reasoning"},{repo:"NVIDIA-Nemotron-3-Nano-4B",paramsB:4,kind:"chat"},{repo:"Hermes-4-70B",paramsB:70,kind:"chat"},{repo:"Llama-3.1-Tulu-3-8B",paramsB:8,kind:"chat"},{repo:"Meta-Llama-3-70B-Instruct",paramsB:70,kind:"chat"},{repo:"Llama3-ChatQA-1.5-70B",paramsB:70,kind:"chat"},{repo:"Llama-3-Groq-8B-Tool-Use",paramsB:8,kind:"chat"},{repo:"aya-23-8B",paramsB:8,kind:"chat"},{repo:"aya-23-35B",paramsB:35,kind:"chat"},{repo:"SmolLM2-135M-Instruct",paramsB:.135,kind:"chat"},{repo:"Yi-Coder-1.5B",paramsB:1.5,kind:"code"},{repo:"Yi-Coder-9B-Chat",paramsB:9,kind:"code"},{repo:"OpenCoder-1.5B-Instruct",paramsB:1.5,kind:"code"},{repo:"stable-code-instruct-3b",paramsB:3,kind:"code"},{repo:"internlm2-math-plus-7b",paramsB:7,kind:"chat"},{repo:"internlm2-math-plus-20b",paramsB:20,kind:"chat"}],R={Q3_K_L:.55,Q4_K_M:.67,Q6_K:.9,Q8_0:1.13},T=[{id:"nomic-embed-q8",name:"nomic-embed-text-v1.5 (Q8_0)",url:"https://huggingface.co/nomic-ai/nomic-embed-text-v1.5-GGUF/resolve/main/nomic-embed-text-v1.5.Q8_0.gguf",params:"137M",quant:"Q8_0",sizeBytes:146e6,kind:"embed",paramsB:.137},...function(){let e=[];for(let n of L){var s,a;let l=n.vendor??"lmstudio-community";for(let t of(s=n.paramsB)<=9?["Q3_K_L","Q4_K_M","Q6_K","Q8_0"]:s<=34?["Q3_K_L","Q4_K_M","Q6_K"]:["Q3_K_L","Q4_K_M"]){let s=`${n.repo}-${t}.gguf`;e.push({id:`${n.repo}-${t}`.toLowerCase().replace(/[^a-z0-9]+/g,"-"),name:`${n.repo} (${t})`,url:`https://huggingface.co/${l}/${n.repo}-GGUF/resolve/main/${s}`,params:(a=n.paramsB)<1?`${Math.round(1e3*a)}M`:`${a}B`,quant:t,sizeBytes:Math.round(1e9*n.paramsB*R[t]),kind:n.kind,paramsB:n.paramsB})}}return e}()];var $=a(6517),A=a(5629);let E={available:"var(--sx-string)",experimental:"#f0a35e",requires_setup:"#6cc7e0",planned:"var(--text-dim)",unsupported:"var(--sx-keyword)"},F={ready:"var(--sx-string)",needs_login:"#f0a35e",needs_key:"#f0a35e",unknown:"var(--text-dim)"},P={cli_claude_code:"sign in to Claude Code",cli_codex:"codex login",cli_openclaw:"openclaw infer model auth login",cli_hermes:"hermes model",cli_aider:"set OPENAI_API_KEY / ANTHROPIC_API_KEY env",cli_opencode:"opencode auth login",cli_copilot:"copilot → /login",cli_cursor:"cursor-agent login",cli_cline:"configure cline providers",cli_kilo:"configure kilocode providers"},U=e=>e>=1e9?(e/1e9).toFixed(1)+" GB":(e/1e6).toFixed(0)+" MB";function D({rows:e,kind:s,onViewModels:a}){let i=(0,A.k)(),[d,o]=(0,l.useState)({}),[c,m]=(0,l.useState)({}),[v,g]=(0,l.useState)({}),[,j]=(0,l.useTransition)(),k=(e,s,a,n)=>j(async()=>{var l;o(a=>({...a,[e]:s}));let t=await a().catch(()=>null);o(s=>{let a={...s};return delete a[e],a}),n&&(l=n(t),m(s=>({...s,[e]:l})),setTimeout(()=>m(s=>{let a={...s};return delete a[e],a}),2200))});return(0,n.jsx)("div",{className:"tbl-wrap",children:(0,n.jsxs)("table",{className:"tbl",style:{marginBottom:20},children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:i("models.col.provider")}),(0,n.jsx)("th",{children:i("models.col.adapter")}),(0,n.jsx)("th",{children:i("models.col.models")}),(0,n.jsx)("th",{children:"cli"===s?i("models.col.auth"):i("models.col.keyAuth")}),(0,n.jsx)("th",{children:i("models.col.lastSync")}),(0,n.jsx)("th",{children:i("common.status")}),(0,n.jsx)("th",{style:{textAlign:"right"},children:i("common.actions")})]})}),(0,n.jsxs)("tbody",{children:[e.map(e=>{let s="connected"===e.status,o=d[e.id],m="none"!==e.auth&&"local"!==e.auth&&"cli"!==e.auth,j=!!v[e.id],f=e.authState??("cli"===e.kind?"unknown":"none"===e.auth?"needs_key":"ready");return(0,n.jsxs)(l.Fragment,{children:[(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{children:(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,n.jsx)("button",{className:"iact",title:j?i("models.title.hideStatus"):i("models.title.showStatus"),style:{padding:"0 4px",fontSize:11,color:"var(--text-dim)",lineHeight:1},onClick:()=>g(s=>({...s,[e.id]:!s[e.id]})),children:j?"▾":"▸"}),(0,n.jsx)(r.W,{id:e.catalogId,size:26})," ",e.displayName,"cli"===e.kind&&e.cliVersion&&(0,n.jsxs)("span",{className:"chip-sm",style:{fontSize:9.5,color:"var(--text-dim)"},children:["v",e.cliVersion.replace(/^v/,"")]})]})}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"chip-sm",children:e.adapter})}),(0,n.jsx)("td",{children:e.modelCount>0?(0,n.jsx)("button",{className:"link-btn",onClick:s=>a(e,s),children:i("models.modelCount",{n:e.modelCount})}):(0,n.jsx)("span",{style:{color:"var(--text-faint)"},children:i("common.unsynced")})}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"pill",style:{background:(F[f]??"var(--text-dim)")+"22",color:F[f]??"var(--text-dim)"},children:i(`models.auth.${f}`)})}),(0,n.jsx)("td",{style:{color:"var(--text-dim)",fontSize:12},children:e.lastSync??i("common.never")}),(0,n.jsx)("td",{children:(0,n.jsxs)("span",{className:"gstat-cell",children:[(0,n.jsx)("span",{className:"status-dot",style:{background:s?"var(--sx-string)":"error"===e.status?"var(--sx-keyword)":"var(--text-dim)"}}),s?i("models.status.connected"):"error"===e.status?i("models.status.error"):i("models.status.needsSync")]})}),(0,n.jsx)("td",{children:(0,n.jsxs)("div",{className:"row-actions",children:[c[e.id]&&(0,n.jsx)("span",{style:{fontSize:10.5,color:"var(--sx-string)",alignSelf:"center"},children:c[e.id]}),(0,n.jsx)("button",{className:"iact",title:i("models.title.testConnection"),disabled:!!o,onClick:()=>k(e.id,"testing",()=>p(e.id),e=>e?.ok?i("models.flash.connectionOk"):i("models.flash.unreachable")),children:"testing"===o?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:15})}):(0,n.jsx)(t.I,{name:"play",size:15})}),(0,n.jsx)("button",{className:"iact",title:i("models.title.syncRefresh"),disabled:!!o,onClick:()=>k(e.id,"syncing",()=>h(e.id),e=>i("models.flash.synced",{n:e?.count??0})),children:"syncing"===o?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:15})}):(0,n.jsx)(t.I,{name:"refresh",size:15})}),e.modelCount>0&&(0,n.jsx)("button",{className:"iact",title:i("models.title.viewModels"),onClick:s=>a(e,s),children:(0,n.jsx)(t.I,{name:"files",size:15})}),m&&(0,n.jsx)("button",{className:"iact",title:i("models.title.revokeToken"),disabled:!!o,onClick:()=>k(e.id,"revoke",()=>x(e.id),()=>i("models.flash.tokenRevoked")),children:(0,n.jsx)(t.I,{name:"shield",size:15})}),(0,n.jsx)("button",{className:"iact danger",title:i("models.title.removeProvider"),disabled:!!o,onClick:()=>k(e.id,"remove",()=>u(e.id)),children:(0,n.jsx)(t.I,{name:"trash",size:15})})]})})]}),j&&(0,n.jsx)("tr",{children:(0,n.jsx)("td",{colSpan:7,style:{padding:0,background:"var(--bg-active)"},children:(0,n.jsx)(G,{row:e})})})]},e.id)}),0===e.length&&(0,n.jsx)("tr",{children:(0,n.jsx)("td",{colSpan:7,style:{textAlign:"center",color:"var(--text-faint)",padding:20},children:"cli"===s?i("models.empty.cli"):i("models.empty.cloud")})})]})]})})}function W({k:e,children:s}){return(0,n.jsxs)("div",{style:{minWidth:0},children:[(0,n.jsx)("div",{style:{fontSize:10,textTransform:"uppercase",letterSpacing:".4px",color:"var(--text-faint)",marginBottom:3},children:e}),(0,n.jsx)("div",{style:{fontSize:12.5,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis"},children:s})]})}function G({row:e}){let s=(0,A.k)(),a=(0,f.kH)(e.catalogId),i=function(e){let s=(0,f.kH)(e);if(!s)return{key:"none",tone:"var(--text-dim)"};if("cli"===s.category)return{key:"cli",tone:"#a78bfa"};if("local_runtime"===s.category)return{key:"local",tone:"#6cc7e0"};let a=s.connectionTypes.includes("local"),n=s.connectionTypes.includes("api_key")||s.connectionTypes.includes("openai_compatible");return a&&n?{key:"hybrid",tone:"#f0a35e"}:{key:"api",tone:"var(--sx-string)"}}(e.catalogId),r=a?.category==="cli",[d,o]=(0,l.useState)(null),[c,m]=(0,l.useState)(!1),[,p]=(0,l.useTransition)();(0,l.useEffect)(()=>{let s=!0;return(0,v.A)(e.id).then(e=>s&&o(e.models)).catch(()=>s&&o([])),()=>{s=!1}},[e.id]);let h=d?.find(e=>e.isDefault)??(e.defaultModel?d?.find(s=>s.id===e.defaultModel):void 0)??d?.[0],x=d?.reduce((e,s)=>Math.max(e,s.context),0)??0,u={vision:!!d?.some(e=>e.caps?.vision),reasoning:!!d?.some(e=>e.caps?.reasoning),tools:!!d?.some(e=>e.caps?.tools)},j=[u.vision&&s("models.cap.vision"),u.reasoning&&s("models.cap.reasoning"),u.tools&&s("models.cap.tools")].filter(Boolean).join(" \xb7 ")||"—",k=e.authState??(r?"unknown":"none"===e.auth?"needs_key":"ready"),b="ready"===k&&"connected"===e.status;return(0,n.jsxs)("div",{style:{padding:"14px 18px 16px 40px",borderTop:"1px solid var(--border)"},children:[(0,n.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(150px, 1fr))",gap:"12px 18px"},children:[(0,n.jsx)(W,{k:s("models.pd.connection"),children:(0,n.jsx)("span",{className:"pill",style:{background:i.tone+"22",color:i.tone},children:"none"===i.key?"—":s(`models.connType.${i.key}`)})}),(0,n.jsx)(W,{k:s("models.pd.install"),children:r?e.cliVersion?(0,n.jsxs)("span",{style:{color:"var(--sx-string)"},children:[s("models.install.installed")," \xb7 v",e.cliVersion.replace(/^v/,"")]}):(0,n.jsx)("span",{style:{color:"#f0a35e"},children:s("models.install.notDetected")}):s("local"===i.key?"models.install.localRuntime":"models.install.cloudApi")}),(0,n.jsxs)(W,{k:s("models.pd.auth"),children:[(0,n.jsx)("span",{className:"pill",style:{background:(F[k]??"var(--text-dim)")+"22",color:F[k]??"var(--text-dim)"},children:s(`models.auth.${k}`)}),"ready"!==k&&(r?P[e.adapter]:!e.auth||"none"===e.auth)?(0,n.jsx)("span",{style:{fontSize:10.5,color:"var(--text-faint)",marginLeft:6},children:r?P[e.adapter]:s("models.hint.addApiKey")}):null]}),(0,n.jsx)(W,{k:s("models.pd.models"),children:null==d?"…":d.length||e.modelCount}),(0,n.jsx)(W,{k:s("models.pd.defaultModel"),children:h?h.name:e.defaultModel??"—"}),(0,n.jsx)(W,{k:s("models.pd.maxContext"),children:x?s("models.pd.tokens",{ctx:O(x)}):"—"}),(0,n.jsx)(W,{k:s("models.pd.capabilities"),children:j}),(0,n.jsx)(W,{k:s("models.pd.costDefault"),children:h&&(h.inputCost||h.outputCost)?`$${h.inputCost} / $${h.outputCost} ${s("models.pd.per1M")}`:"—"}),(0,n.jsx)(W,{k:s("models.pd.state"),children:(0,n.jsx)("span",{className:"pill",style:{background:(b?"var(--sx-string)":"#f0a35e")+"22",color:b?"var(--sx-string)":"#f0a35e"},children:s(b?"models.state.ready":"models.state.needsConfig")})})]}),(0,n.jsxs)("div",{style:{marginTop:12,display:"flex",alignItems:"center",gap:10},children:[(0,n.jsxs)("button",{className:"btn-ghost",disabled:c,onClick:function(){m(!0),p(async()=>{await g(e.id).catch(()=>{}),o((await (0,v.A)(e.id).catch(()=>({models:[]}))).models),m(!1)})},children:[c?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:13})}):(0,n.jsx)(t.I,{name:"refresh",size:13})," ",s(c?"models.btn.refreshing":"models.btn.refreshModels")]}),a?.notes&&(0,n.jsx)("span",{style:{fontSize:11,color:"var(--text-faint)"},children:a.notes})]})]})}let O=e=>e?e>=1e6?`${(e/1e6).toFixed(e%1e6?1:0)}M`:`${Math.round(e/1e3)}K`:"";function K({row:e,pos:s,onClose:a}){let i=(0,A.k)(),r=(0,$.L2)(e.adapter),[d,o]=(0,l.useState)(r?r.map(e=>({id:e.id,label:e.label,version:e.version,note:e.note})):null),[c,m]=(0,l.useState)(""),p=e=>{let s=(0,$.Ov)(e.id);return{id:e.id,label:e.name||s.label,version:s.version,context:e.context,inputCost:e.inputCost,outputCost:e.outputCost,caps:e.caps,isDefault:e.isDefault}};return(0,l.useEffect)(()=>{if(r)return;let s=!0;return(0,v.A)(e.id).then(async({models:a})=>{if(!s)return;if(a.length)return void o(a.map(p));let n=await (0,j.E)(e.id);s&&(o(n.models.map(e=>{let s=(0,$.Ov)(e);return{id:e,label:s.label,version:s.version}})),n.error&&m(n.error))}).catch(()=>{s&&(o([]),m(i("models.pop.loadFailed")))}),()=>{s=!1}},[e.id]),(0,n.jsxs)("div",{className:"models-pop",style:{left:Math.min(s.x,window.innerWidth-380),top:s.y},onMouseLeave:a,children:[(0,n.jsxs)("div",{className:"mp-head",children:[(0,n.jsx)(t.I,{name:"cpu",size:13,style:{color:"var(--accent)"}})," ",e.displayName," \xb7 ",e.kind," \xb7 ",i("models.modelCount",{n:d?.length??e.modelCount})]}),null===d&&(0,n.jsxs)("div",{className:"mp-row",children:[(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:11})})," ",i("common.loading")]}),d&&0===d.length&&(0,n.jsx)("div",{className:"mp-row",style:{color:"var(--text-faint)"},children:c||i("models.pop.noModels")}),d?.map(e=>(0,n.jsxs)("div",{className:"mp-row",children:[(0,n.jsx)(t.I,{name:"dot",size:7}),(0,n.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,n.jsxs)("span",{style:{display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[e.label,e.isDefault?(0,n.jsxs)("span",{style:{color:"var(--accent)"},children:[" \xb7 ",i("models.pop.recommended")]}):null,e.note?(0,n.jsxs)("span",{style:{color:"var(--text-faint)"},children:[" \xb7 ",e.note]}):null]}),e.context||e.inputCost||e.outputCost?(0,n.jsxs)("span",{style:{fontSize:9.5,color:"var(--text-faint)",fontFamily:"var(--mono-font)"},children:[e.context?`${O(e.context)} ${i("models.pop.ctx")}`:"",e.inputCost||e.outputCost?` $${e.inputCost}/${e.outputCost}`:"",e.caps?.vision?` ${i("models.cap.vision")}`:"",e.caps?.reasoning?` ${i("models.cap.reasoning")}`:"",e.caps?.tools?` ${i("models.cap.tools")}`:""]}):null]}),e.version&&(0,n.jsxs)("span",{className:"chip-sm",style:{fontSize:10},children:["v",e.version]})]},e.id))]})}function q({hw:e,ollamaUp:s,ollamaInstalled:a,installed:i,locals:d,llamaUp:c,llamaInstalled:m,llamaModel:p}){let h,x,u=(0,A.k)(),[v,g]=(0,l.useState)(c?"running":m?"stopped":"not-installed"),[j,k]=(0,l.useState)(p),[f,C]=(0,l.useState)([{c:c?"lg-ok":m?"lg-dim":"lg-warn",t:c?u("models.log.serving",{model:p??u("models.log.aModel")}):m?u("models.log.stopped"):u("models.log.notInstalled")}]),[M,z]=(0,l.useState)(d[0]?.id??""),[Q,L]=(0,l.useState)(m),[R,$]=(0,l.useState)(""),[E,F]=(0,l.useState)(""),[P,D]=(0,l.useState)(!1),[W,G]=(0,l.useState)("all"),[,O]=(0,l.useTransition)(),K=Y(e.vram),X=Y(e.ram),Z="Metal"===e.backend?"Metal":"GPU",ee=T.map(e=>({g:e,fit:function(e,s,a,n="GPU"){return s>0?1.2*e<=s?{key:"fitsUnit",unit:n,tone:"ok"}:e<=s?{key:"tightUnit",unit:n,tone:"tight"}:e<=2*s?{key:"partialOffload",tone:"tight"}:{key:"cpuOnly",tone:"no"}:a>0?1.1*e<=a?{key:"runsOnCpu",tone:"tight"}:{key:"tooBig",tone:"no"}:{key:"",tone:"tight"}}(e.sizeBytes,K,X,Z)})).filter(({g:e})=>"all"===W||e.kind===W).filter(({g:e})=>!E.trim()||e.name.toLowerCase().includes(E.toLowerCase())).filter(({fit:e})=>!P||"no"!==e.tone),[es,ea]=(0,l.useState)(null);function en(e){O(async()=>{g("booting"),C(e=>[...e,{c:"lg-dim",t:"$ llama-server"}]);let s=await B(e||M||void 0);g(s.up?"running":s.installed?"stopped":"not-installed"),C(e=>[...e,...s.log.map(e=>({c:s.up?"lg-ok":"lg-warn",t:e}))])})}let el="running"===v?u("models.srv.running"):"booting"===v?u("models.srv.working"):"not-installed"===v?u("models.srv.notInstalled"):u("models.srv.stopped");return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"lr-grid",children:[(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(t.I,{name:"cpu",size:19})}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"hw-t",children:u("models.hw.detected")}),(0,n.jsx)("div",{className:"hw-s",children:u("models.hw.autoProbed")})]}),(0,n.jsx)("span",{className:"hw-badge",children:e.backend})]}),(0,n.jsxs)("div",{className:"hw-rows",children:[(0,n.jsxs)("div",{className:"hw-item",children:[(0,n.jsx)("div",{className:"hi-k",children:"CPU"}),(0,n.jsx)("div",{className:"hi-v",children:e.cpu})]}),(0,n.jsxs)("div",{className:"hw-item",children:[(0,n.jsx)("div",{className:"hi-k",children:u("models.hw.cores")}),(0,n.jsx)("div",{className:"hi-v",children:e.cores})]}),(0,n.jsxs)("div",{className:"hw-item",children:[(0,n.jsx)("div",{className:"hi-k",children:u("models.hw.memory")}),(0,n.jsx)("div",{className:"hi-v",children:e.ram})]}),(0,n.jsxs)("div",{className:"hw-item",children:[(0,n.jsx)("div",{className:"hi-k",children:"GPU"}),(0,n.jsx)("div",{className:"hi-v",children:e.gpu})]}),(0,n.jsxs)("div",{className:"hw-item",children:[(0,n.jsx)("div",{className:"hi-k",children:"VRAM"}),(0,n.jsx)("div",{className:"hi-v",children:e.vram})]}),(0,n.jsxs)("div",{className:"hw-item",children:[(0,n.jsx)("div",{className:"hi-k",children:u("models.hw.diskFree")}),(0,n.jsx)("div",{className:"hi-v",children:e.diskFree})]})]}),(0,n.jsxs)("div",{className:"hw-badges",children:[e.accel.map(e=>(0,n.jsx)("span",{className:"hw-badge",style:{background:"var(--bg-active)",color:"var(--text-dim)"},children:e},e)),(0,n.jsx)("span",{className:"hw-badge",children:u("models.hw.recommended",{quant:e.recommendedQuant})}),(0,n.jsx)("span",{className:"hw-badge",children:u("models.hw.max",{params:e.maxParams})})]})]}),(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(t.I,{name:"terminal",size:19})}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"hw-t",children:u("models.llama.title")}),(0,n.jsx)("div",{className:"hw-s",children:u("models.llama.sub")})]}),(0,n.jsx)(r.W,{id:"llamacpp",size:22})]}),(0,n.jsxs)("div",{className:"srv-status",children:[(0,n.jsx)("span",{className:"srv-dot "+("running"===v?"run":"booting"===v?"boot":"stop")}),(0,n.jsxs)("div",{className:"srv-meta",children:[(0,n.jsx)("div",{className:"sm-t",children:el}),(0,n.jsxs)("div",{className:"sm-s",children:["127.0.0.1:8082 \xb7 ",j||u("models.srv.noModel")]})]}),(0,n.jsxs)("button",{className:"running"===v?"btn-ghost":"btn-accent",onClick:()=>"running"===v?void O(async()=>{g("booting");let e=await y();g("stopped"),k(null),C(s=>[...s,...e.log.map(e=>({c:"lg-warn",t:e}))])}):en(),disabled:"booting"===v||"running"!==v&&0===d.length,children:["booting"===v?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:13})}):(0,n.jsx)(t.I,{name:"running"===v?"close":"goto",size:13}),"running"===v?u("models.srv.stopBtn"):"booting"===v?u("models.srv.working"):u("models.srv.startBtn")]})]}),"running"!==v&&d.length>0&&(0,n.jsx)("div",{style:{marginBottom:8},children:(0,n.jsx)(o.m,{value:M,options:d.map(e=>({value:e.id,label:e.name})),onChange:z,mono:!0})}),(0,n.jsxs)("div",{className:"srv-stats",children:[(0,n.jsxs)("div",{className:"srv-stat",children:[(0,n.jsx)("div",{className:"ss-v",children:d.length}),(0,n.jsx)("div",{className:"ss-k",children:u("models.srv.ggufModels")})]}),(0,n.jsxs)("div",{className:"srv-stat",children:[(0,n.jsx)("div",{className:"ss-v",children:"running"===v?u("common.on"):u("common.off")}),(0,n.jsx)("div",{className:"ss-k",children:u("models.srv.serverLabel")})]}),(0,n.jsxs)("div",{className:"srv-stat",children:[(0,n.jsx)("div",{className:"ss-v",children:e.backend}),(0,n.jsx)("div",{className:"ss-k",children:u("models.srv.backendLabel")})]})]}),!Q&&(0,n.jsxs)("div",{style:{marginTop:8,display:"flex",alignItems:"center",gap:10,flexWrap:"wrap"},children:[(0,n.jsxs)("button",{className:"btn-accent",disabled:"install"===R,onClick:function(){O(async()=>{$("install"),ea(null),C(e=>[...e,{c:"lg-dim",t:u("models.log.installing")}]);let e=setInterval(()=>{fetch("/api/models/progress?id=llama-server").then(e=>e.json()).then(e=>{e&&ea({received:e.received,total:e.total})}).catch(()=>{})},600);try{let e=await b();$(""),L(e.installed),e.installed&&"not-installed"===v&&g("stopped"),C(s=>[...s,...e.log.map(s=>({c:e.ok?"lg-ok":"lg-warn",t:s})),...e.error?[{c:"lg-warn",t:e.error}]:[]])}finally{clearInterval(e),ea(null)}})},children:["install"===R?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:13})}):(0,n.jsx)(t.I,{name:"goto",size:13})," ","install"===R?null!==(h=es&&es.total>0?Math.round(es.received/es.total*100):null)?u("models.install.installingPct",{pct:h}):u("models.install.installingEllipsis"):u("models.install.installLlama")]}),(0,n.jsx)("a",{className:"link-btn",style:{fontSize:11},href:"https://github.com/ggml-org/llama.cpp/releases",target:"_blank",rel:"noreferrer",children:u("models.install.manualInstall")}),"install"===R&&(x=es&&es.total>0?Math.min(100,Math.round(es.received/es.total*100)):null,(0,n.jsxs)("div",{style:{flex:"1 1 180px",minWidth:150},children:[(0,n.jsx)("div",{style:{height:4,background:"var(--bg-active)",borderRadius:3,overflow:"hidden"},children:(0,n.jsx)("div",{className:null===x?"sync-spin":"",style:{height:"100%",width:(x??12)+"%",background:"var(--accent)",transition:"width .3s"}})}),(0,n.jsx)("div",{style:{fontSize:10,color:"var(--text-faint)",marginTop:3,fontFamily:"var(--mono-font)"},children:null!==x&&es?`${x}% \xb7 ${U(es.received)} / ${U(es.total)}`:es&&es.received>0?u("models.dl.downloaded",{size:U(es.received)}):u("models.dl.startingDownload")})]}))]}),(0,n.jsx)("div",{className:"srv-log scroll",children:f.map((e,s)=>(0,n.jsx)("div",{className:e.c,children:e.t},s))})]}),(0,n.jsx)(H,{})]}),(0,n.jsxs)("div",{className:"view-section-title",children:[u("models.installed.title")," ",(0,n.jsxs)("span",{style:{fontWeight:400,color:"var(--text-faint)"},children:["\xb7 llama.cpp GGUF",a?" + Ollama":""," \xb7 ",u("models.installed.boundTo")," 127.0.0.1"]})]}),(0,n.jsx)("div",{className:"tbl-wrap",children:(0,n.jsxs)("table",{className:"tbl",style:{marginBottom:24},children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:u("common.name")}),(0,n.jsx)("th",{children:u("models.col.source")}),(0,n.jsx)("th",{children:u("models.col.params")}),(0,n.jsx)("th",{children:u("models.col.size")}),(0,n.jsx)("th",{children:u("models.col.bind")}),(0,n.jsx)("th",{children:u("common.status")}),(0,n.jsx)("th",{style:{textAlign:"right"},children:u("common.actions")})]})}),(0,n.jsxs)("tbody",{children:[d.map(e=>{let s="running"===v&&j&&e.name.includes(j);return(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{children:(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,n.jsx)(V,{name:e.name,size:24})," ",e.name]})}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"chip-sm",children:e.quant||"gguf"})}),(0,n.jsx)("td",{style:{color:"var(--text-dim)",fontSize:12},children:e.params||"—"}),(0,n.jsx)("td",{style:{fontFamily:"var(--mono-font)",fontSize:12,color:"var(--text-dim)"},children:e.sizeBytes?U(e.sizeBytes):"—"}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"lr-mono",children:e.bind})}),(0,n.jsx)("td",{children:s?(0,n.jsx)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:u("models.pill.serving")}):(0,n.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:["✓ ",u("models.pill.verified")]})}),(0,n.jsx)("td",{children:(0,n.jsxs)("div",{className:"row-actions",children:[(0,n.jsx)("button",{className:"iact accent",title:u("models.title.serveModel"),disabled:R===e.id,onClick:()=>{$(e.id),z(e.id),k(e.name),en(e.id),setTimeout(()=>$(""),500)},children:R===e.id?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:14})}):(0,n.jsx)(t.I,{name:"goto",size:14})}),(0,n.jsx)("button",{className:"iact danger",title:u("common.uninstall"),onClick:()=>O(()=>N(e.id)),children:(0,n.jsx)(t.I,{name:"trash",size:14})})]})})]},"g-"+e.id)}),i.map(e=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{children:(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,n.jsx)(r.W,{id:"ollama",size:24})," ",e.name]})}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"chip-sm",children:"ollama"})}),(0,n.jsx)("td",{style:{color:"var(--text-faint)",fontSize:12},children:"—"}),(0,n.jsx)("td",{style:{fontFamily:"var(--mono-font)",fontSize:12,color:"var(--text-dim)"},children:e.size?U(e.size):"—"}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"lr-mono",children:"127.0.0.1:11434"})}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"pill",style:{background:"var(--text-dim)22",color:"var(--text-dim)"},children:u("models.pill.legacy")})}),(0,n.jsx)("td",{children:(0,n.jsx)("div",{className:"row-actions",children:(0,n.jsx)("button",{className:"iact danger",title:u("common.remove"),onClick:()=>O(()=>w(e.name)),children:(0,n.jsx)(t.I,{name:"trash",size:14})})})})]},"o-"+e.name)),0===i.length&&0===d.length&&(0,n.jsx)("tr",{children:(0,n.jsx)("td",{colSpan:7,style:{textAlign:"center",color:"var(--text-faint)",padding:18},children:u("models.empty.local")})})]})]})}),(0,n.jsxs)("div",{className:"view-section-title",style:{display:"flex",alignItems:"center",gap:10,flexWrap:"wrap"},children:[(0,n.jsxs)("span",{children:[u("models.available.title")," ",(0,n.jsxs)("span",{style:{fontWeight:400,color:"var(--text-faint)"},children:["\xb7 ",ee.length,"/",T.length," GGUF (HuggingFace) \xb7 ",u("models.available.fitChecked",{target:"—"!==e.gpu&&K?`${e.vram} VRAM`:"CPU"})]})]}),(0,n.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,n.jsxs)("div",{className:"cs-bar",style:{margin:0,padding:"5px 9px",width:200},children:[(0,n.jsx)(t.I,{name:"search",size:12}),(0,n.jsx)("input",{placeholder:u("models.filterModels"),value:E,onChange:e=>F(e.target.value),style:{fontWeight:400}})]}),(0,n.jsx)("div",{className:"seg",style:{width:280},children:["all","chat","code","reasoning","embed"].map(e=>(0,n.jsx)("button",{className:"seg-opt"+(W===e?" on":""),onClick:()=>G(e),style:{fontSize:11},children:u(`models.kind.${e}`)},e))}),(0,n.jsx)("button",{className:"cs-tog"+(P?" on":""),onClick:()=>D(e=>!e),title:u("models.title.hideTooBig"),style:{fontFamily:"inherit",fontWeight:600},children:u("models.fitsOnly")})]})]}),(0,n.jsxs)("div",{className:"cards-grid",style:{gridTemplateColumns:"repeat(auto-fill, minmax(330px, 1fr))",gap:12},children:[ee.map(({g:e,fit:s})=>{let a=d.find(s=>s.name===e.name);return(0,n.jsx)(J,{glyph:"llamacpp",brandFromName:!0,name:e.name,repo:e.url.replace("https://huggingface.co/",""),tags:[e.params,e.quant,U(e.sizeBytes)],fit:s,action:()=>S(e.id),progressId:e.id,installed:!!a,onUninstall:a?()=>N(a.id):void 0},e.id)}),0===ee.length&&(0,n.jsx)("div",{className:"muted",style:{fontSize:12,padding:14},children:u("models.empty.noMatch")}),a&&_.filter(e=>!i.some(s=>s.name===e.name)).map(e=>(0,n.jsx)(J,{glyph:"ollama",name:e.label,repo:e.name,tags:[e.kind,e.size,u("models.pill.legacy")],note:e.note,action:()=>(0,I.j)(e.name)},e.name))]}),s&&(0,n.jsxs)("div",{className:"muted",style:{fontSize:11.5,marginTop:10},children:[(0,n.jsx)(t.I,{name:"terminal",size:12})," ",u("models.ollamaRunning")]})]})}function V({name:e,size:s=36}){let a=function(e){for(let[s,a]of d)if(s.test(e))return`https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg/icons/${a}.svg`;return null}(e),[t,i]=(0,l.useState)(!1);if(!a||t)return(0,n.jsx)(r.W,{id:"llamacpp",size:s});let o=Math.round(.28*s),c=Math.round(.66*s);return(0,n.jsx)("span",{style:{width:s,height:s,flex:`0 0 ${s}px`,borderRadius:o,background:"#fff",display:"grid",placeItems:"center",overflow:"hidden",boxShadow:"inset 0 0 0 1px rgba(0,0,0,.08)"},children:(0,n.jsx)("img",{src:a,alt:"",width:c,height:c,loading:"lazy",onError:()=>i(!0),style:{width:c,height:c,objectFit:"contain",display:"block"}})})}function H(){let e=(0,A.k)(),[s,a]=(0,l.useState)(null),[i,d]=(0,l.useState)(""),[o,c]=(0,l.useState)(""),[,m]=(0,l.useTransition)();(0,l.useEffect)(()=>{C().then(a).catch(()=>{})},[]);let p=s?.up?"run":(s?.installed,"stop"),h=s?s.up?e("models.embed.live"):s.installed?e("models.embed.installedStopped"):e("models.embed.noModel"):e("models.embed.checking");return(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(t.I,{name:"pulse",size:19})}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"hw-t",children:e("models.embed.title")}),(0,n.jsx)("div",{className:"hw-s",children:e("models.embed.sub")})]}),(0,n.jsx)(r.W,{id:"llamacpp",size:22})]}),(0,n.jsxs)("div",{className:"srv-status",children:[(0,n.jsx)("span",{className:"srv-dot "+p}),(0,n.jsxs)("div",{className:"srv-meta",children:[(0,n.jsx)("div",{className:"sm-t",children:h}),(0,n.jsxs)("div",{className:"sm-s",children:["127.0.0.1:8083 \xb7 ",s?.model??"nomic-embed-text"]})]}),s&&!s.up&&s.installed&&(0,n.jsxs)("button",{className:"btn-accent",disabled:"start"===i,onClick:function(){d("start"),c(e("models.embed.starting")),m(async()=>{let s=await M();d(""),c(s.up?"":s.reason??e("models.embed.startFailed")),a(e=>e?{...e,up:s.up,model:s.model??e.model}:e)})},children:["start"===i?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:13})}):(0,n.jsx)(t.I,{name:"goto",size:13})," ",e("common.start")]}),s?.up&&(0,n.jsxs)("button",{className:"btn-ghost",disabled:"reindex"===i,onClick:function(){d("reindex"),c(e("models.embed.indexing")),m(async()=>{let s=await z();d(""),c(s.ok?e(s.embedded?"models.embed.indexedSemantic":"models.embed.indexedKeyword",{n:s.chunks}):e("models.embed.indexFailed")),C().then(a).catch(()=>{})})},children:["reindex"===i?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:13})}):(0,n.jsx)(t.I,{name:"refresh",size:13})," ",e("models.embed.reindex")]})]}),s&&!s.installed&&(0,n.jsxs)("div",{className:"form-hint",style:{marginTop:8},children:[(0,n.jsx)(t.I,{name:"add",size:12})," ",e("models.embed.downloadHintBefore")," ",(0,n.jsx)("b",{style:{color:"var(--text)"},children:"nomic-embed-text-v1.5"})," ",e("models.embed.downloadHintAfter")]}),o&&(0,n.jsx)("div",{style:{fontSize:11,color:"var(--text-dim)",marginTop:8},children:o})]})}function Y(e){let s=/([\d.]+)\s*(TB|GB|MB|KB|B)?/i.exec(e||"");if(!s)return 0;let a=parseFloat(s[1]),n=(s[2]||"B").toUpperCase();return a*("TB"===n?1e12:"GB"===n?1e9:"MB"===n?1e6:"KB"===n?1e3:1)}let X={ok:"var(--sx-string)",tight:"var(--sx-number)",no:"#e8688f"};function J({glyph:e,name:s,repo:a,tags:i,note:d,action:o,installed:c,onUninstall:m,fit:p,brandFromName:h,progressId:x}){let u=(0,A.k)(),[v,g]=(0,l.useState)("idle"),[j,k]=(0,l.useState)(!1),[f,b]=(0,l.useState)(""),[B,y]=(0,l.useState)(null),[,N]=(0,l.useTransition)(),w=B&&B.total>0?Math.min(100,Math.round(B.received/B.total*100)):null;async function S(){let e;g("working"),b(""),y(null),x&&(e=setInterval(()=>{fetch(`/api/models/progress?id=${encodeURIComponent(x)}`).then(e=>e.json()).then(e=>{e&&y({received:e.received,total:e.total})}).catch(()=>{})},600));try{let e=await o();g(e.ok?"done":"error"),b(e.ok?"":e.error??u("models.dl.failed"))}finally{e&&clearInterval(e),y(null)}}return(0,n.jsxs)("div",{className:"dl-card",children:[h?(0,n.jsx)(V,{name:s,size:36}):(0,n.jsx)(r.W,{id:e,size:36}),(0,n.jsxs)("div",{className:"dl-main",children:[(0,n.jsx)("div",{className:"dl-name",children:s}),(0,n.jsx)("div",{className:"dl-repo",title:a,children:a.length>46?a.slice(0,46)+"…":a}),(0,n.jsxs)("div",{className:"dl-tags",children:[i.map(e=>(0,n.jsx)("span",{className:"dl-tag",children:e},e)),p&&p.key&&(0,n.jsx)("span",{className:"dl-tag",style:{color:X[p.tone],borderColor:X[p.tone]},children:u(`models.fit.${p.key}`,{unit:p.unit??""})})]}),d&&(0,n.jsx)("div",{style:{fontSize:11,color:"var(--text-faint)",marginTop:4},children:d}),f&&(0,n.jsx)("div",{style:{fontSize:11,color:"error"===v?"var(--sx-keyword)":"var(--sx-string)",marginTop:4},children:f}),"working"===v&&x&&(0,n.jsxs)("div",{style:{marginTop:6},children:[(0,n.jsx)("div",{style:{height:4,background:"var(--bg-active)",borderRadius:3,overflow:"hidden"},children:(0,n.jsx)("div",{className:null===w?"sync-spin":"",style:{height:"100%",width:(w??12)+"%",background:"var(--accent)",transition:"width .3s"}})}),(0,n.jsx)("div",{style:{fontSize:10,color:"var(--text-faint)",marginTop:3,fontFamily:"var(--mono-font)"},children:null!==w&&B?`${w}% \xb7 ${U(B.received)} / ${U(B.total)}`:B&&B.received>0?u("models.dl.downloaded",{size:U(B.received)}):u("models.dl.starting")})]})]}),(0,n.jsx)("div",{className:"dl-right",children:c&&!j||"done"===v?m?(0,n.jsxs)("button",{className:"act-btn",disabled:"working"===v,onClick:()=>N(async()=>{g("working"),b(u("models.dl.removing"));let e=await m();e.ok?(k(!0),g("idle"),b("")):(g("error"),b(e.error??u("models.dl.failed")))}),children:["working"===v?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:11})}):(0,n.jsx)(t.I,{name:"trash",size:11})," ","working"===v?u("models.dl.removingBtn"):u("common.uninstall")]}):(0,n.jsxs)("span",{className:"act-btn",style:{color:"var(--sx-string)"},children:[(0,n.jsx)(t.I,{name:"check",size:11})," ",u("models.dl.installed")]}):(0,n.jsxs)("button",{className:"act-btn accent",disabled:"working"===v,onClick:S,children:["working"===v?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(t.I,{name:"refresh",size:11})}):(0,n.jsx)(t.I,{name:"add",size:11})," ","working"===v?null!==w?w+"%":u("models.dl.pulling"):u("common.download")]})})]})}function Z({agents:e,providers:s}){let a=(0,A.k)(),[r,d]=(0,l.useState)(e),[m,p]=(0,l.useState)(!1),[,h]=(0,l.useTransition)(),x=(0,l.useMemo)(()=>{let e=new Set,a=[];for(let n of s)e.has(n.adapter)||(e.add(n.adapter),a.push({value:n.adapter,label:n.displayName,glyphId:n.catalogId}));return a},[s]);function u(e,s){d(a=>a.map(a=>a.id===e?{...a,...s}:a)),p(!1)}return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",marginBottom:16},children:[(0,n.jsx)("div",{className:"view-sub",style:{fontSize:13},children:a("models.perAgent.intro")}),(0,n.jsx)("div",{style:{marginLeft:"auto"},children:m?(0,n.jsxs)("span",{className:"oauth-ok",style:{padding:"6px 11px"},children:[(0,n.jsx)(t.I,{name:"check",size:13})," ",a("common.saved")]}):(0,n.jsxs)("button",{className:"btn-accent",onClick:function(){h(async()=>{for(let e of r)await (0,Q.k)(e.id,{adapter:e.adapter,model:e.model});p(!0),setTimeout(()=>p(!1),1600)})},children:[(0,n.jsx)(t.I,{name:"check",size:13})," ",a("models.perAgent.saveAssignments")]})})]}),(0,n.jsx)("div",{className:"pa-grid",children:r.map(e=>{let l;return(0,n.jsxs)("div",{className:"pa-card",children:[(0,n.jsxs)("div",{className:"pa-head",children:[(0,n.jsx)(i.e,{name:e.name,color:e.color,size:36}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"pa-n",children:e.name}),(0,n.jsxs)("div",{className:"pa-r",children:[e.role," \xb7 @",e.handle]})]})]}),(0,n.jsxs)("div",{className:"pa-field",children:[(0,n.jsx)("div",{className:"pa-flabel",children:a("models.field.provider")}),(0,n.jsx)(o.m,{glyph:!0,searchable:!0,value:e.adapter,options:(l=e.adapter,x.some(e=>e.value===l)?x:[{value:l,label:l.replace(/^http_|^local_|^cli_|^sdk_/,"")+" \xb7 "+a("models.notConnected"),glyphId:l},...x]),onChange:s=>u(e.id,{adapter:s})})]}),(0,n.jsxs)("div",{className:"pa-field",children:[(0,n.jsx)("div",{className:"pa-flabel",children:a("models.field.model")}),(0,n.jsx)(c.Y,{adapter:e.adapter,value:e.model,onChange:s=>u(e.id,{model:s}),providers:s})]})]},e.id)})})]})}function ee({connectedIds:e,onClose:s}){let a=(0,A.k)(),[i,d]=(0,l.useState)(""),[o,c]=(0,l.useState)("all"),[m,p]=(0,l.useState)("all"),[h,x]=(0,l.useState)("all"),[u,v]=(0,l.useState)(null),[g,j]=(0,l.useState)(""),[,b]=(0,l.useTransition)(),B=(0,l.useMemo)(()=>Array.from(new Set(f.WQ.map(e=>e.category))),[]),y=(0,l.useMemo)(()=>Array.from(new Set(f.WQ.flatMap(e=>e.connectionTypes))),[]),N=(0,l.useMemo)(()=>Array.from(new Set(f.WQ.map(e=>e.status))),[]),w=i.trim().toLowerCase(),S=f.WQ.filter(e=>("all"===o||e.category===o)&&("all"===m||!!e.connectionTypes.includes(m))&&("all"===h||e.status===h)&&(!w||!!(e.displayName.toLowerCase().includes(w)||e.id.includes(w)||(e.notes??"").toLowerCase().includes(w)||e.defaultAdapter.includes(w))));function I(e,a){b(async()=>{await k(e,a),v(null),j(""),s()})}return(0,n.jsx)("div",{className:"cat-overlay",onMouseDown:s,children:(0,n.jsxs)("div",{className:"cat-modal",onMouseDown:e=>e.stopPropagation(),children:[(0,n.jsxs)("div",{className:"cat-head",children:[(0,n.jsxs)("div",{className:"cat-head-row",children:[(0,n.jsx)("div",{className:"cat-ico",style:{width:40,height:40,flexBasis:40},children:(0,n.jsx)(t.I,{name:"cpu",size:20})}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"cat-title",children:a("models.catalog.title")}),(0,n.jsx)("div",{className:"cat-sub",children:a("models.catalog.sub",{n:f.WQ.length})})]}),(0,n.jsx)("button",{className:"dock-tool",onClick:s,children:(0,n.jsx)(t.I,{name:"close",size:16})})]}),(0,n.jsxs)("div",{className:"cat-search",children:[(0,n.jsx)(t.I,{name:"search",size:15}),(0,n.jsx)("input",{placeholder:a("models.catalog.searchPlaceholder"),value:i,autoFocus:!0,onChange:e=>d(e.target.value)})]})]}),(0,n.jsx)("div",{className:"cat-filters",children:(0,n.jsxs)("div",{className:"cat-fgroup",children:[(0,n.jsx)("span",{className:"fg-label",children:a("models.filter.category")}),(0,n.jsx)("button",{className:"cat-chip"+("all"===o?" on":""),onClick:()=>c("all"),children:a("common.all")}),B.map(e=>(0,n.jsx)("button",{className:"cat-chip"+(o===e?" on":""),onClick:()=>c(e),children:a(`models.cat.${e}`)},e))]})}),(0,n.jsxs)("div",{className:"cat-filters",style:{paddingTop:8,paddingBottom:8},children:[(0,n.jsxs)("div",{className:"cat-fgroup",children:[(0,n.jsx)("span",{className:"fg-label",children:a("models.filter.connection")}),(0,n.jsx)("button",{className:"cat-chip"+("all"===m?" on":""),onClick:()=>p("all"),children:a("common.all")}),y.map(e=>(0,n.jsx)("button",{className:"cat-chip"+(m===e?" on":""),onClick:()=>p(e),children:a(`models.conn.${e}`)},e))]}),(0,n.jsxs)("div",{className:"cat-fgroup",children:[(0,n.jsx)("span",{className:"fg-label",children:a("common.status")}),(0,n.jsx)("button",{className:"cat-chip"+("all"===h?" on":""),onClick:()=>x("all"),children:a("common.all")}),N.map(e=>(0,n.jsx)("button",{className:"cat-chip"+(h===e?" on":""),onClick:()=>x(e),children:a(`models.catStatus.${e}`)},e))]}),(0,n.jsx)("span",{className:"cat-count",children:a("models.catalog.shown",{n:S.length})})]}),(0,n.jsxs)("div",{className:"cat-grid",children:[0===S.length&&(0,n.jsx)("div",{className:"cat-empty",children:a("models.catalog.noMatch")}),S.map(s=>{let l=e.includes(s.id),i="available"===s.status||"experimental"===s.status||"requires_setup"===s.status;return(0,n.jsxs)("div",{className:"cat-card",children:[(0,n.jsxs)("div",{className:"cat-card-top",children:[(0,n.jsx)(r.W,{id:s.id,size:34}),(0,n.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,n.jsx)("div",{className:"cat-name",children:s.displayName}),(0,n.jsxs)("div",{className:"cat-meta",children:[a(`models.cat.${s.category}`)," \xb7 ",(0,n.jsx)("span",{style:{fontFamily:"var(--mono-font)"},children:s.defaultAdapter})]})]}),(0,n.jsx)("span",{className:"cat-stat",style:{background:E[s.status]+"22",color:E[s.status]},children:a(`models.catStatus.${s.status}`)})]}),s.notes&&(0,n.jsx)("div",{className:"cat-notes",children:s.notes}),(0,n.jsxs)("div",{className:"cat-caps",children:[s.supportsModelSync&&(0,n.jsx)("span",{className:"cap-tag sync",children:a("models.cap.sync")}),s.supportsVision&&(0,n.jsx)("span",{className:"cap-tag",children:a("models.cap.vision")}),s.supportsTools&&(0,n.jsx)("span",{className:"cap-tag",children:a("models.cap.tools")})]}),u===s.id?(0,n.jsxs)("div",{className:"cat-card-foot",style:{gap:6},children:[(0,n.jsx)("input",{className:"form-input mono",style:{flex:1,height:30},placeholder:a("models.apiKeyPlaceholder"),value:g,autoFocus:!0,onChange:e=>j(e.target.value),onKeyDown:e=>{"Enter"===e.key&&I(s.id,g)}}),(0,n.jsx)("button",{className:"act-btn accent",onClick:()=>I(s.id,g),children:a("common.save")})]}):(0,n.jsxs)("div",{className:"cat-card-foot",children:[(0,n.jsx)("div",{className:"cat-conn",children:s.connectionTypes.map(e=>(0,n.jsx)("span",{className:"conn-tag",children:a(`models.conn.${e}`)},e))}),l?(0,n.jsxs)("span",{className:"act-btn",style:{color:"var(--sx-string)",borderColor:"color-mix(in srgb, var(--sx-string) 40%, var(--border))"},children:[(0,n.jsx)(t.I,{name:"check",size:11})," ",a("common.connected")]}):i?(0,n.jsxs)("button",{className:"act-btn accent",onClick:()=>!s.supportsApiKey||s.connectionTypes.includes("local")||s.connectionTypes.includes("cli")?I(s.id):v(s.id),children:[(0,n.jsx)(t.I,{name:"add",size:11})," ",a("common.connect")]}):(0,n.jsx)("button",{className:"act-btn",disabled:!0,children:"planned"===s.status?a("models.catStatus.planned"):a("models.catStatus.unsupported")})]})]},s.id)})]})]})})}function es({providers:e,locals:s,agents:a,hardware:i,ollamaUp:r,ollamaInstalled:d,installed:o,llamaUp:c,llamaInstalled:m,llamaModel:p}){let h=(0,A.k)(),[x,u]=(0,l.useState)("connected"),[v,g]=(0,l.useState)(!1),[j,k]=(0,l.useState)(null),b=e.filter(e=>"cloud"===e.kind),B=e.filter(e=>"cli"===e.kind),y=e.map(e=>e.catalogId),N=(0,l.useMemo)(()=>f.WQ.reduce((e,s)=>(e[s.status]=(e[s.status]??0)+1,e),{}),[]);(0,l.useEffect)(()=>{let e=()=>g(!0);return window.addEventListener("constella:models-catalog",e),()=>window.removeEventListener("constella:models-catalog",e)},[]);let w=[{id:"connected",label:h("models.tab.connected"),icon:"grid",badge:b.length+B.length},{id:"local",label:h("models.tab.local"),icon:"cpu"},{id:"agents",label:h("models.tab.perAgent"),icon:"agents"}];return(0,n.jsxs)("div",{style:{position:"relative"},children:[(0,n.jsxs)("div",{className:"dash-grid",style:{marginBottom:20},children:[(0,n.jsxs)("div",{className:"dash-card",style:{gridColumn:"span 3"},children:[(0,n.jsx)("h3",{children:h("models.kpi.catalog")}),(0,n.jsx)("div",{className:"kpi",children:f.WQ.length}),(0,n.jsx)("div",{className:"kpi-sub",children:h("models.kpi.providers")})]}),(0,n.jsxs)("div",{className:"dash-card",style:{gridColumn:"span 3"},children:[(0,n.jsx)("h3",{children:h("models.kpi.available")}),(0,n.jsx)("div",{className:"kpi",style:{color:"var(--sx-string)"},children:N.available??0}),(0,n.jsx)("div",{className:"kpi-sub",children:h("models.kpi.adaptersReady")})]}),(0,n.jsxs)("div",{className:"dash-card",style:{gridColumn:"span 3"},children:[(0,n.jsx)("h3",{children:h("models.kpi.planned")}),(0,n.jsx)("div",{className:"kpi",style:{color:"#f0a35e"},children:(N.planned??0)+(N.experimental??0)}),(0,n.jsx)("div",{className:"kpi-sub",children:h("models.kpi.plannedExperimental")})]}),(0,n.jsxs)("div",{className:"dash-card",style:{gridColumn:"span 3"},children:[(0,n.jsx)("h3",{children:h("models.kpi.connected")}),(0,n.jsx)("div",{className:"kpi",style:{color:"var(--accent)"},children:e.length}),(0,n.jsx)("div",{className:"kpi-sub",children:h("models.kpi.inWorkspace")})]})]}),(0,n.jsx)("div",{className:"seg-nav",children:w.map(e=>(0,n.jsxs)("button",{className:"seg-nav-btn"+(x===e.id?" on":""),onClick:()=>u(e.id),children:[(0,n.jsx)(t.I,{name:e.icon,size:14})," ",e.label,null!=e.badge&&(0,n.jsx)("span",{className:"sn-badge",children:e.badge})]},e.id))}),"connected"===x&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"view-section-title",children:["☁ ",h("models.section.cloud")]}),(0,n.jsx)(D,{rows:b,kind:"cloud",onViewModels:(e,s)=>{let a=s.currentTarget.getBoundingClientRect();k({row:e,pos:{x:a.left,y:a.bottom+6}})}}),(0,n.jsxs)("div",{className:"view-section-title",children:["⌘ ",h("models.section.cli")]}),(0,n.jsx)(D,{rows:B,kind:"cli",onViewModels:(e,s)=>{let a=s.currentTarget.getBoundingClientRect();k({row:e,pos:{x:a.left,y:a.bottom+6}})}})]}),"local"===x&&(0,n.jsx)(q,{hw:i,ollamaUp:r,ollamaInstalled:d,installed:o,locals:s,llamaUp:c,llamaInstalled:m,llamaModel:p}),"agents"===x&&(0,n.jsx)(Z,{agents:a,providers:e.map(e=>({id:e.id,adapter:e.adapter,catalogId:e.catalogId,displayName:e.displayName,kind:e.kind}))}),v&&(0,n.jsx)(ee,{connectedIds:y,onClose:()=>g(!1)}),j&&(0,n.jsx)(K,{row:j.row,pos:j.pos,onClose:()=>k(null)})]})}function ea(){let e=(0,A.k)();return(0,n.jsxs)("button",{className:"btn-accent",onClick:()=>window.dispatchEvent(new CustomEvent("constella:models-catalog")),children:[(0,n.jsx)(t.I,{name:"grid",size:14})," ",e("models.catalog.title")]})}},9642:(e,s,a)=>{Promise.resolve().then(a.t.bind(a,3283,23)),Promise.resolve().then(a.bind(a,6603)),Promise.resolve().then(a.bind(a,351)),Promise.resolve().then(a.bind(a,6588)),Promise.resolve().then(a.bind(a,4414)),Promise.resolve().then(a.bind(a,9286)),Promise.resolve().then(a.bind(a,5787))}},e=>{e.O(0,[9219,3219,8264,4263,1858,6646,6834,7358],()=>e(e.s=9642)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1308],{2077:(e,t,i)=>{"use strict";i.d(t,{NotifFeed:()=>m});var s=i(5076),n=i(8488),a=i(8576),l=i(4552),r=i(2799),o=i(7814);let d=(0,o.createServerReference)("40b6ac1f101c8b800545938c8817fec118faf7c8f8",o.callServer,void 0,o.findSourceMapURL,"markRead"),c=(0,o.createServerReference)("00e21b2d1e0b24242373ffb97fdf685a1e3a90690f",o.callServer,void 0,o.findSourceMapURL,"markAllRead"),h=(0,o.createServerReference)("002d9ca1e675259b929745389c88aecbdaf23e6ac3",o.callServer,void 0,o.findSourceMapURL,"clearAll");var f=i(5629);let v={done:"check",deploy:"play",routine:"repeat",test:"debug",security:"shield",budget:"coins"};function m({items:e}){let t=(0,f.k)(),[i,o]=(0,n.useState)(null),[,u]=(0,n.useTransition)(),x=e.filter(e=>!e.read).length;return(0,s.jsxs)("div",{className:"view",style:{position:"relative"},children:[(0,s.jsxs)("div",{className:"view-head",children:[(0,s.jsx)("div",{className:"vh-icon",children:(0,s.jsx)(a.I,{name:"bell",size:20})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"view-title",children:t("notif.title")}),(0,s.jsx)("div",{className:"view-sub",children:t("notif.sub",{n:x})})]}),(0,s.jsxs)("div",{className:"vh-right",children:[(0,s.jsxs)("button",{className:"btn-ghost",onClick:function(){o(null),u(()=>{c()})},disabled:!x,children:[(0,s.jsx)(a.I,{name:"check",size:13})," ",t("notif.readAll")]}),(0,s.jsxs)("button",{className:"btn-ghost",onClick:function(){o(null),u(()=>{h()})},disabled:!e.length,children:[(0,s.jsx)(a.I,{name:"trash",size:13})," ",t("notif.clearAll")]})]})]}),(0,s.jsxs)("div",{className:"view-body scroll",children:[0===e.length&&(0,s.jsxs)("div",{style:{color:"var(--text-faint)",textAlign:"center",padding:40},children:[t("notif.empty")," \uD83D\uDD15"]}),e.map(e=>(0,s.jsxs)("div",{className:"lrow notif-row"+(e.read?" read":""),style:{cursor:"pointer"},onClick:()=>{e.read||u(()=>{d(e.id)}),o(e)},children:[!e.read&&(0,s.jsx)("span",{className:"notif-unread"}),(0,s.jsx)("div",{className:"vh-icon",style:{width:32,height:32,flex:"0 0 32px"},children:(0,s.jsx)(a.I,{name:v[e.kind]||"dot",size:14})}),(0,s.jsxs)("div",{className:"lr-main",children:[(0,s.jsx)("div",{className:"lr-title",style:{fontWeight:e.read?400:600},children:e.text}),(0,s.jsxs)("div",{className:"lr-sub",children:[t(`notif.kind.${e.kind}`),e.agentName?" \xb7 "+e.agentName:""]})]}),(0,s.jsx)("span",{style:{fontSize:11,color:"var(--text-faint)",fontFamily:"var(--mono-font)"},children:(0,r.f)(e.createdAt)}),(0,s.jsx)(a.I,{name:"chevronRight",size:14,style:{color:"var(--text-faint)"}})]},e.id))]}),i&&(0,s.jsx)("div",{className:"detail-overlay",onMouseDown:()=>o(null),children:(0,s.jsxs)("div",{className:"detail-panel",onMouseDown:e=>e.stopPropagation(),children:[(0,s.jsxs)("div",{className:"detail-head",children:[(0,s.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,s.jsx)("span",{className:"pill",style:{background:"var(--accent)22",color:"var(--accent)"},children:t(`notif.kind.${i.kind}`)}),(0,s.jsx)("button",{className:"dock-tool",onClick:()=>o(null),children:(0,s.jsx)(a.I,{name:"close",size:15})})]}),(0,s.jsx)("div",{className:"view-title",style:{fontSize:16,marginTop:8},children:i.text}),(0,s.jsx)("div",{style:{fontSize:11.5,color:"var(--text-faint)",marginTop:4},children:(0,r.f)(i.createdAt)})]}),(0,s.jsxs)("div",{className:"detail-body",children:[i.agentName&&(0,s.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[(0,s.jsx)(l.e,{name:i.agentName,color:i.agentColor||"#e0a44e",size:24,health:i.agentHealth}),(0,s.jsx)("span",{style:{fontSize:12.5},children:i.agentName})]}),(0,s.jsx)("div",{style:{fontSize:13,color:"var(--text-dim)",lineHeight:1.6},children:i.detail||t("notif.noDetail")})]})]})})]})}},2799:(e,t,i)=>{"use strict";function s(e){if(!e)return"";let t=Math.max(0,Math.floor((Date.now()-("number"==typeof e?e*(e<1e12?1e3:1):e.getTime()))/1e3));if(t<60)return"now";let i=Math.floor(t/60);if(i<60)return i+"m";let s=Math.floor(i/60);if(s<24)return s+"h";let n=Math.floor(s/24);return n<7?n+"d":Math.floor(n/7)+"w"}i.d(t,{f:()=>s})},4414:(e,t,i)=>{"use strict";i.d(t,{ChatToggle:()=>l});var s=i(5076),n=i(8576),a=i(5629);function l(){let e=(0,a.k)();return(0,s.jsx)("button",{className:"top-btn",title:`${e("chrome.chat.agentRoom")} (⌘J)`,type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("constella:toggle-chat")),children:(0,s.jsx)(n.I,{name:"chat",size:17})})}},4552:(e,t,i)=>{"use strict";i.d(t,{e:()=>n});var s=i(5076);function n({name:e,color:t,size:i=24,health:a,image:l}){let r=Math.max(6,Math.round(.3*i)),o=Math.round(.28*i),d=l?/^(data:|https?:|\/)/.test(l)?l:`/api/upload?path=${encodeURIComponent(l)}`:null;return(0,s.jsxs)("span",{style:{position:"relative",width:i,height:i,flex:`0 0 ${i}px`,display:"inline-block"},children:[d?(0,s.jsx)("img",{src:d,alt:e,width:i,height:i,style:{width:i,height:i,borderRadius:o,objectFit:"cover",display:"block"}}):(0,s.jsx)("span",{style:{width:i,height:i,borderRadius:o,background:t,color:"#fff",display:"grid",placeItems:"center",fontSize:Math.round(.42*i),fontWeight:700},children:(e[0]||"?").toUpperCase()}),a&&(0,s.jsx)("span",{style:{position:"absolute",right:-1,bottom:-1,width:r,height:r,borderRadius:"50%",background:"alive"===a?"var(--sx-string)":"stale"===a?"var(--sx-number)":"var(--text-faint)",border:"1.5px solid var(--bg-elevated)"}})]})}},6588:(e,t,i)=>{"use strict";i.d(t,{BackButton:()=>r});var s=i(5076),n=i(9860),a=i(8576),l=i(5629);function r(){let e=(0,l.k)(),t=(0,n.useRouter)();return(0,s.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?t.back():t.push("/")},children:(0,s.jsx)(a.I,{name:"chevronLeft",size:18})})}},9782:(e,t,i)=>{Promise.resolve().then(i.t.bind(i,3283,23)),Promise.resolve().then(i.bind(i,2077)),Promise.resolve().then(i.bind(i,351)),Promise.resolve().then(i.bind(i,6588)),Promise.resolve().then(i.bind(i,4414)),Promise.resolve().then(i.bind(i,9286))}},e=>{e.O(0,[9219,3219,8264,6646,6834,7358],()=>e(e.s=9782)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8902],{891:(e,n,t)=>{"use strict";t.d(n,{m:()=>s});var l=t(5076);let a={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 s({status:e,label:n=!1,size:t=8}){let r=a[e]??a.idle;return(0,l.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5},title:r.label,children:[r.pulse?(0,l.jsx)("span",{className:"dotpulse"}):(0,l.jsx)("span",{style:{width:t,height:t,borderRadius:"50%",background:r.c,display:"inline-block",flex:`0 0 ${t}px`}}),n&&(0,l.jsx)("span",{style:{fontSize:11,color:r.c,fontWeight:600},children:r.label})]})}},4414:(e,n,t)=>{"use strict";t.d(n,{ChatToggle:()=>r});var l=t(5076),a=t(8576),s=t(5629);function r(){let e=(0,s.k)();return(0,l.jsx)("button",{className:"top-btn",title:`${e("chrome.chat.agentRoom")} (⌘J)`,type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("constella:toggle-chat")),children:(0,l.jsx)(a.I,{name:"chat",size:17})})}},4552:(e,n,t)=>{"use strict";t.d(n,{e:()=>a});var l=t(5076);function a({name:e,color:n,size:t=24,health:s,image:r}){let i=Math.max(6,Math.round(.3*t)),o=Math.round(.28*t),c=r?/^(data:|https?:|\/)/.test(r)?r:`/api/upload?path=${encodeURIComponent(r)}`:null;return(0,l.jsxs)("span",{style:{position:"relative",width:t,height:t,flex:`0 0 ${t}px`,display:"inline-block"},children:[c?(0,l.jsx)("img",{src:c,alt:e,width:t,height:t,style:{width:t,height:t,borderRadius:o,objectFit:"cover",display:"block"}}):(0,l.jsx)("span",{style:{width:t,height:t,borderRadius:o,background:n,color:"#fff",display:"grid",placeItems:"center",fontSize:Math.round(.42*t),fontWeight:700},children:(e[0]||"?").toUpperCase()}),s&&(0,l.jsx)("span",{style:{position:"absolute",right:-1,bottom:-1,width:i,height:i,borderRadius:"50%",background:"alive"===s?"var(--sx-string)":"stale"===s?"var(--sx-number)":"var(--text-faint)",border:"1.5px solid var(--bg-elevated)"}})]})}},6588:(e,n,t)=>{"use strict";t.d(n,{BackButton:()=>i});var l=t(5076),a=t(9860),s=t(8576),r=t(5629);function i(){let e=(0,r.k)(),n=(0,a.useRouter)();return(0,l.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?n.back():n.push("/")},children:(0,l.jsx)(s.I,{name:"chevronLeft",size:18})})}},8687:(e,n,t)=>{"use strict";t.d(n,{OrgCanvas:()=>u});var l=t(5076),a=t(8488),s=t(7814);let r=(0,s.createServerReference)("6070bb2dc075306dd65d2e2b9cc5efe53d8831fe97",s.callServer,void 0,s.findSourceMapURL,"setReportsToByHandle"),i=(0,s.createServerReference)("7057f699dfae1aaf4e5c1fe71eebfa6bdb0dcb23e0",s.callServer,void 0,s.findSourceMapURL,"saveOrgLayout");var o=t(4552),c=t(8576),d=t(891),h=t(5629);function u({agents:e}){let n=(0,h.k)(),t=(0,a.useMemo)(()=>Object.fromEntries(e.map(e=>[e.handle,e.reportsTo])),[e]),s=(0,a.useMemo)(()=>{let n=e.find(e=>null===t[e.handle])??e[0],l=[];n&&function n(a,s){(l[s]??=[]).push(a),e.filter(e=>t[e.handle]===a).forEach(e=>n(e.handle,s+1))}(n.handle,0);let a={};l.forEach((e,n)=>{let t=184*e.length+(e.length-1)*36;e.forEach((e,l)=>{a[e]={x:40+220*l+Math.max(0,(760-t)/2),y:30+96*n}})});let s=l.length;return e.forEach(e=>{a[e.handle]||(a[e.handle]={x:40,y:30+96*s},s+=1)}),e.forEach(e=>{"number"==typeof e.orgX&&"number"==typeof e.orgY&&(a[e.handle]={x:e.orgX,y:e.orgY})}),a},[e,t]),[x,m]=(0,a.useState)(t),[g,y]=(0,a.useState)(s),[f,p]=(0,a.useState)(null),[v,b]=(0,a.useState)(null),[j,k]=(0,a.useState)(null),w=(0,a.useRef)(null);function N(e){let n=w.current.getBoundingClientRect();return{x:e.clientX-n.left+w.current.scrollLeft,y:e.clientY-n.top+w.current.scrollTop}}async function M(){if(v&&j){let e=v.from;m(n=>({...n,[j]:e})),await r(j,e)}if(f){let e=g[f.handle];e&&i(f.handle,e.x,e.y)}p(null),b(null),k(null)}async function $(e){m(n=>({...n,[e]:null})),await r(e,null)}return(0,l.jsxs)("div",{className:"view",style:{padding:0},children:[(0,l.jsxs)("div",{className:"view-head",style:{padding:"18px 24px 14px"},children:[(0,l.jsx)("div",{className:"vh-icon",children:(0,l.jsx)(c.I,{name:"agents",size:20})}),(0,l.jsxs)("div",{children:[(0,l.jsx)("div",{className:"view-title",children:n("org.title")}),(0,l.jsx)("div",{className:"view-sub",children:n("org.canvas.sub")})]}),(0,l.jsx)("div",{className:"vh-right",children:(0,l.jsxs)("button",{className:"btn-ghost",onClick:function(){m(t),y(s)},children:[(0,l.jsx)(c.I,{name:"refresh",size:13})," ",n("org.resetLayout")]})})]}),(0,l.jsxs)("div",{className:"orgcanvas-wrap",children:[(0,l.jsx)("div",{className:"orgcanvas-bar",children:(0,l.jsxs)("span",{className:"orgcanvas-hint",children:[(0,l.jsx)(c.I,{name:"bot",size:13,style:{color:"var(--accent)"}})," ",n("org.hint.pre")," ",(0,l.jsx)("b",{style:{color:"var(--accent)",margin:"0 3px"},children:"●"})," ",n("org.hint.post")]})}),(0,l.jsxs)("div",{className:"orgcanvas",ref:w,onMouseMove:function(e){if(f){let n=N(e);y(e=>({...e,[f.handle]:{x:n.x-f.dx,y:n.y-f.dy}}))}else if(v){let n=N(e);b(e=>e&&{...e,x:n.x,y:n.y});let t=document.elementFromPoint(e.clientX,e.clientY),l=t&&t.closest("[data-h]");k(l&&l.dataset.h!==v.from?l.dataset.h:null)}},onMouseUp:M,onMouseLeave:M,children:[(0,l.jsxs)("svg",{className:"org-svg",children:[e.map(e=>{let n=x[e.handle],t=n?function(e,n){let t=g[e],l=g[n];if(!t||!l)return null;let{a,b:s}=function(e,n){let t=e.x+92,l=e.y+29,a=n.x+92,s=n.y+29,r=a-t,i=s-l;function o(e,n,t,l){return l?n>0?{x:e.x+184,y:e.y+29,nx:1,ny:0}:{x:e.x,y:e.y+29,nx:-1,ny:0}:t>0?{x:e.x+92,y:e.y+58,nx:0,ny:1}:{x:e.x+92,y:e.y,nx:0,ny:-1}}let c=Math.abs(r)>Math.abs(i)+30;return{a:o(e,r,i,c),b:o(n,-r,-i,c)}}(t,l),r=.5*Math.hypot(s.x-a.x,s.y-a.y),i=a.x+a.nx*r,o=a.y+a.ny*r,c=s.x+s.nx*r,d=s.y+s.ny*r;return`M ${a.x} ${a.y} C ${i} ${o}, ${c} ${d}, ${s.x} ${s.y}`}(n,e.handle):null;return t?(0,l.jsx)("path",{d:t},e.handle):null}),v&&(0,l.jsx)("path",{className:"temp",d:`M ${g[v.from].x+92} ${g[v.from].y+58} L ${v.x} ${v.y}`})]}),e.map(e=>{let t=g[e.handle]??{x:0,y:0},a=null===x[e.handle],s=x[e.handle];return(0,l.jsxs)("div",{"data-h":e.handle,className:"org-card"+(a?" ceo":"")+(f&&f.handle===e.handle?" dragging":"")+(j===e.handle?" linktarget":"")+(v&&v.from===e.handle?" linking":""),style:{left:t.x,top:t.y},onMouseDown:n=>(function(e,n){if(e.target.closest(".oc-link"))return;let t=N(e);p({handle:n,dx:t.x-g[n].x,dy:t.y-g[n].y})})(n,e.handle),children:[(0,l.jsx)(o.e,{name:e.name,color:e.color,size:32,health:e.health}),(0,l.jsxs)("div",{style:{minWidth:0},children:[(0,l.jsxs)("div",{className:"oc-name",style:{display:"flex",alignItems:"center",gap:6},children:[e.name," ","idle"!==e.status&&(0,l.jsx)(d.m,{status:e.status})]}),(0,l.jsx)("div",{className:"oc-role",children:e.role})]}),(0,l.jsx)("div",{className:"oc-link",title:n("org.dragOntoSubordinate"),onMouseDown:n=>{var t;let l;return t=e.handle,n.stopPropagation(),void b({from:t,x:(l=N(n)).x,y:l.y})},children:(0,l.jsx)(c.I,{name:"add",size:11})}),s&&(0,l.jsx)("div",{className:"oc-unlink",title:n("org.unlinkFrom",{handle:"@"+s}),onMouseDown:n=>{n.stopPropagation(),$(e.handle)},children:(0,l.jsx)(c.I,{name:"close",size:11})})]},e.handle)})]})]})]})}},9941:(e,n,t)=>{Promise.resolve().then(t.t.bind(t,3283,23)),Promise.resolve().then(t.bind(t,8687)),Promise.resolve().then(t.bind(t,351)),Promise.resolve().then(t.bind(t,6588)),Promise.resolve().then(t.bind(t,4414)),Promise.resolve().then(t.bind(t,9286))}},e=>{e.O(0,[9219,3219,8264,6646,6834,7358],()=>e(e.s=9941)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2792],{972:(e,t,i)=>{"use strict";i.d(t,{E:()=>o,e:()=>r});let o=["Cockpit","Hierarchy","Execution","Product","Knowledge","Operations","Inbox","System"],r=[{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:"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"}]},4414:(e,t,i)=>{"use strict";i.d(t,{ChatToggle:()=>n});var o=i(5076),r=i(8576),s=i(5629);function n(){let e=(0,s.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)(r.I,{name:"chat",size:17})})}},5787:(e,t,i)=>{"use strict";i.d(t,{ViewChrome:()=>a});var o=i(5076),r=i(8576),s=i(972),n=i(5629);function a({title:e,sub:t,right:i,icon:l,children:c}){let d=(0,n.k)(),u=s.e.find(t=>t.title===e),g=l??u?.icon,p=u?d(`mod.${u.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)(r.I,{name:g,size:18})}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsx)("div",{className:"view-title",children:p}),t&&(0,o.jsx)("div",{className:"view-sub",children:t})]}),i]}),(0,o.jsx)("div",{className:"view-body",children:c})]})}},6588:(e,t,i)=>{"use strict";i.d(t,{BackButton:()=>a});var o=i(5076),r=i(9860),s=i(8576),n=i(5629);function a(){let e=(0,n.k)(),t=(0,r.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)(s.I,{name:"chevronLeft",size:18})})}},8295:(e,t,i)=>{Promise.resolve().then(i.t.bind(i,3283,23)),Promise.resolve().then(i.bind(i,9912)),Promise.resolve().then(i.bind(i,351)),Promise.resolve().then(i.bind(i,6588)),Promise.resolve().then(i.bind(i,4414)),Promise.resolve().then(i.bind(i,9286)),Promise.resolve().then(i.bind(i,5787))},8967:(e,t,i)=>{"use strict";i.d(t,{T:()=>r});var o=i(7814);let r=(0,o.createServerReference)("407cf85f2718edbd7381c5d3eb70093cba0985add5",o.callServer,void 0,o.findSourceMapURL,"setActiveOrg")},9912:(e,t,i)=>{"use strict";i.d(t,{OrgActions:()=>h,WorkspaceMetaForm:()=>m});var o=i(5076),r=i(8488),s=i(9860),n=i(8576),a=i(7814);let l=(0,a.createServerReference)("6018c90c251094de0b66ee895c26b942932e1a0036",a.callServer,void 0,a.findSourceMapURL,"renameOrg");var c=i(8967);let d=(0,a.createServerReference)("60e4a86df294ab1232ea538b5e24c0563e6a401c05",a.callServer,void 0,a.findSourceMapURL,"archiveOrg"),u=(0,a.createServerReference)("40b359f3695e1d71268aee0f2c32965838950724bf",a.callServer,void 0,a.findSourceMapURL,"deleteOrg"),g=(0,a.createServerReference)("6047200d81b4e580d86d5dcdea14f8d91741f519d1",a.callServer,void 0,a.findSourceMapURL,"editWorkspaceMeta");var p=i(5629);function h({orgId:e,name:t,archived:i,active:a}){let g=(0,p.k)(),[m,v]=(0,r.useTransition)(),[f,b]=(0,r.useState)(!1),[x,k]=(0,r.useState)(t),[j,y]=(0,r.useState)(!1),w=(0,s.useRouter)();return(0,o.jsx)("div",{style:{display:"flex",gap:6,flexWrap:"wrap",alignItems:"center"},children:f?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("input",{className:"form-input mono",value:x,onChange:e=>k(e.target.value),style:{width:180,height:28},autoFocus:!0}),(0,o.jsxs)("button",{className:"sc2-btn",disabled:m,onClick:()=>v(async()=>{await l(e,x),b(!1)}),children:[(0,o.jsx)(n.I,{name:"check",size:11})," ",g("common.save")]}),(0,o.jsx)("button",{className:"sc2-btn",onClick:()=>{k(t),b(!1)},children:g("common.cancel")})]}):(0,o.jsxs)(o.Fragment,{children:[!a&&(0,o.jsxs)("button",{className:"btn-accent",disabled:m,onClick:()=>v(async()=>{await (0,c.T)(e),w.push("/")}),children:[(0,o.jsx)(n.I,{name:"goto",size:12})," ",g("org.open")]}),a&&(0,o.jsx)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:g("org.active")}),(0,o.jsxs)("button",{className:"sc2-btn",onClick:()=>b(!0),children:[(0,o.jsx)(n.I,{name:"command",size:11})," ",g("org.rename")]}),(0,o.jsxs)("button",{className:"sc2-btn",disabled:m,onClick:()=>v(()=>d(e,!i)),children:[(0,o.jsx)(n.I,{name:i?"refresh":"inbox",size:11})," ",g(i?"org.restore":"org.archive")]}),j?(0,o.jsxs)("button",{className:"sc2-btn danger",disabled:m,onClick:()=>v(async()=>{await u(e),w.refresh()}),children:[(0,o.jsx)(n.I,{name:"trash",size:11})," ",g("org.confirmDelete")]}):(0,o.jsxs)("button",{className:"sc2-btn danger",onClick:()=>y(!0),children:[(0,o.jsx)(n.I,{name:"trash",size:11})," ",g("common.delete")]})]})})}function m({mission:e,objective:t}){let i=(0,p.k)(),[s,a]=(0,r.useState)(e),[l,c]=(0,r.useState)(t),[d,u]=(0,r.useState)(!1),[h,v]=(0,r.useTransition)();return(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"form-label",children:i("org.mission")}),(0,o.jsx)("textarea",{className:"persona-ta",value:s,onChange:e=>{a(e.target.value),u(!1)}}),(0,o.jsx)("label",{className:"form-label",style:{marginTop:10},children:i("org.objective")}),(0,o.jsx)("textarea",{className:"persona-ta",value:l,onChange:e=>{c(e.target.value),u(!1)}}),(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginTop:10},children:[(0,o.jsxs)("button",{className:"btn-accent",disabled:h,onClick:()=>v(async()=>{await g(s,l),u(!0)}),children:[(0,o.jsx)(n.I,{name:"check",size:13})," ",i(h?"common.saving":"common.save")]}),d&&(0,o.jsx)("span",{className:"muted",style:{fontSize:12},children:i("org.savedNote")})]})]})}}},e=>{e.O(0,[9219,3219,8264,6646,6834,7358],()=>e(e.s=8295)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9415],{254:(e,t,s)=>{"use strict";s.d(t,{d:()=>n});var a=s(7814);let n=(0,a.createServerReference)("409a00fb6112f1d61b785f1dcab141214f82cad748",a.callServer,void 0,a.findSourceMapURL,"rejectIssue")},564:(e,t,s)=>{"use strict";s.d(t,{B:()=>n});var a=s(7814);let n=(0,a.createServerReference)("4092700ba435c925678f2d627e88e5e971326a5e5e",a.callServer,void 0,a.findSourceMapURL,"approveSpec")},640:(e,t,s)=>{"use strict";s.d(t,{HomeSeedBlocks:()=>h});var a=s(5076),n=s(8488),r=s(9860),c=s(3283),i=s.n(c),l=s(5629),o=s(8576),d=s(4426);function h(){let e=(0,l.k)(),t=(0,r.useRouter)(),[s,c]=(0,n.useTransition)();return(0,a.jsxs)("div",{className:"home-empty",children:[(0,a.jsx)("div",{children:e("home.canonical.empty")}),(0,a.jsxs)("div",{className:"hse-actions",children:[(0,a.jsxs)("button",{className:"hse-create",disabled:s,onClick:()=>c(async()=>{await (0,d.V)(),t.refresh()}),children:[(0,a.jsx)(o.I,{name:"add",size:13})," ",e(s?"home.creating":"home.createBlocks")]}),(0,a.jsxs)(i(),{href:"/knowledge",className:"hse-link",children:[e("home.openKnowledge")," →"]})]})]})}},2799:(e,t,s)=>{"use strict";function a(e){if(!e)return"";let t=Math.max(0,Math.floor((Date.now()-("number"==typeof e?e*(e<1e12?1e3:1):e.getTime()))/1e3));if(t<60)return"now";let s=Math.floor(t/60);if(s<60)return s+"m";let a=Math.floor(s/60);if(a<24)return a+"h";let n=Math.floor(a/24);return n<7?n+"d":Math.floor(n/7)+"w"}s.d(t,{f:()=>a})},4329:(e,t,s)=>{"use strict";s.d(t,{HomeActivity:()=>i});var a=s(5076),n=s(5629),r=s(4552),c=s(2799);function i({rows:e}){let t=(0,n.k)();if(0===e.length)return(0,a.jsx)("div",{className:"home-empty",children:t("home.recentEmpty")});let s=[],l="";for(let a of e){let e=a.at?new Date(a.at):null,n=e?e.toDateString():"—";n!==l&&(s.push({label:e?function(e){let s=new Date;s.setHours(0,0,0,0);let a=new Date(e);a.setHours(0,0,0,0);let n=Math.round((s.getTime()-a.getTime())/864e5);return n<=0?t("home.activity.today"):1===n?t("home.activity.yesterday"):a.toLocaleDateString()}(e):"—",rows:[]}),l=n),s[s.length-1].rows.push(a)}return(0,a.jsx)("div",{className:"timeline",children:s.map((e,s)=>(0,a.jsxs)("div",{className:"tl-day",children:[(0,a.jsx)("div",{className:"tl-day-label",children:e.label}),e.rows.map(e=>(0,a.jsxs)("div",{className:"tl-row",title:e.target,children:[e.agentName?(0,a.jsx)(r.e,{name:e.agentName,color:e.agentColor??"var(--accent)",size:20,health:e.agentHealth}):(0,a.jsx)("span",{className:"tl-sys"}),(0,a.jsxs)("span",{className:"tl-text",children:[(0,a.jsx)("b",{children:e.agentName??t("home.activity.system")})," ",e.action," ",(0,a.jsx)("span",{className:"tl-target",children:e.target})]}),(0,a.jsx)("span",{className:"tl-time",children:e.at?(0,c.f)(new Date(e.at)):""})]},e.id))]},s))})}},4414:(e,t,s)=>{"use strict";s.d(t,{ChatToggle:()=>c});var a=s(5076),n=s(8576),r=s(5629);function c(){let e=(0,r.k)();return(0,a.jsx)("button",{className:"top-btn",title:`${e("chrome.chat.agentRoom")} (⌘J)`,type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("constella:toggle-chat")),children:(0,a.jsx)(n.I,{name:"chat",size:17})})}},4463:(e,t,s)=>{Promise.resolve().then(s.t.bind(s,3283,23)),Promise.resolve().then(s.bind(s,4329)),Promise.resolve().then(s.bind(s,8036)),Promise.resolve().then(s.bind(s,8126)),Promise.resolve().then(s.bind(s,640)),Promise.resolve().then(s.bind(s,8679)),Promise.resolve().then(s.bind(s,5183)),Promise.resolve().then(s.bind(s,351)),Promise.resolve().then(s.bind(s,6588)),Promise.resolve().then(s.bind(s,4414)),Promise.resolve().then(s.bind(s,9286)),Promise.resolve().then(s.bind(s,5787))},5183:(e,t,s)=>{"use strict";s.d(t,{WelcomeChat:()=>w});var a=s(5076),n=s(8488),r=s(9860),c=s(8254),i=s(8443),l=s(7013),o=s(148),d=s(3957),h=s(4596),m=s(3540),u=s(9798),f=s(6225),v=s(5629),x=s(8576),p=s(4552),j=s(8163),b=s(802),g=s(534);function w({agents:e,operator:t}){let s=(0,v.k)(),N=(0,r.useRouter)(),[y,k]=(0,n.useState)("room"),[S,C]=(0,n.useState)([]),[I,R]=(0,n.useState)([]),[z,E]=(0,n.useState)([]),[T,M]=(0,n.useState)(!0),[H,L]=(0,n.useState)(!1),[P,D]=(0,n.useState)(!1),[A,q]=(0,n.useState)(null),[O,U]=(0,n.useState)(!1),[W,$]=(0,n.useState)({}),[_,B]=(0,n.useState)(null),[V,J]=(0,n.useTransition)(),K=(0,n.useRef)(0),F=(0,n.useRef)(0),G=(0,n.useRef)(null),Q=Object.fromEntries(e.map(e=>[e.handle,e])),Z=y.startsWith("dm:"),X="people"===y,Y="telegram"===y,ee=Z?y.slice(3):null,et=ee?Q[ee]:null,es=Z?y:Y?"telegram":"room";async function ea(){try{let e=await (0,u.p)(es);if(e.used>=e.max&&!O){U(!0);try{await (0,f.L)(es),e=await (0,u.p)(es)}finally{U(!1)}}q(e)}catch{}}async function en(){if(!O){U(!0);try{await (0,f.L)(es),await ea()}finally{U(!1)}}}(0,n.useEffect)(()=>{if(X)return;let e=!1;function t(){if(e||document.hidden||G.current)return;let t=new EventSource(`/api/stream?channel=${encodeURIComponent(es)}&evCursor=${F.current}&msgCursor=${K.current}`);G.current=t,t.addEventListener("msg",e=>{let t=JSON.parse(e.data),s=t.createdAt?new Date(t.createdAt).getTime():0;if(s>K.current&&(K.current=s),"cleared"===t.kind){C([t]),R([]),E([]);return}C(e=>e.some(e=>e.id===t.id)?e:[...e,t].slice(-200)),R(e=>e.filter(e=>e.runId!==t.id||"text"!==e.kind)),t.fromHandle&&E(e=>e.filter(e=>e!==t.fromHandle))}),t.addEventListener("ev",e=>{let t=JSON.parse(e.data);t.seq>F.current&&(F.current=t.seq),R(e=>e.some(e=>e.id===t.id)?e:[...e,t].slice(-250))})}function s(){G.current&&(G.current.close(),G.current=null)}C([]),R([]),K.current=0,F.current=0,M(!0),(async()=>{try{let[t,s]=await Promise.all([(0,c.V)(es),(0,h.k)(es,0)]);if(e)return;C(t.slice(-200)),R(s),K.current=t.reduce((e,t)=>Math.max(e,t.createdAt?new Date(t.createdAt).getTime():0),0),F.current=s.reduce((e,t)=>Math.max(e,t.seq),0)}catch{}!e&&(M(!1),document.hidden||t())})();let a=()=>{document.hidden?s():t()};return document.addEventListener("visibilitychange",a),()=>{e=!0,document.removeEventListener("visibilitychange",a),s()}},[y]),(0,n.useEffect)(()=>{(0,i.b)().then(e=>$(e)).catch(()=>{})},[y]),(0,n.useEffect)(()=>{Y&&(0,m.G)().then(B).catch(()=>B({connected:!1}))},[y]),(0,n.useEffect)(()=>{X?q(null):ea()},[y,S.length]),(0,n.useEffect)(()=>{function e(){k("room"),setTimeout(()=>document.querySelector(".welcome-chat .composer-input")?.focus(),60)}return window.addEventListener("constella:focus-cmdbar",e),()=>window.removeEventListener("constella:focus-cmdbar",e)},[]);let er={};for(let e of I)(er[e.runId]??=[]).push(e);let ec=new Set(S.map(e=>e.id)),ei=Object.entries(er).filter(([e])=>!ec.has(e));function el(e,t){let s=e.trim();if(!s&&!t?.length)return;let a="room"!==es||!s||s.startsWith("/")||s.startsWith("@")?s:"/kb "+s;J(async()=>{try{let{responders:e}=await (0,l._)(es,a,t);if(e.length){for(let t of(E(e),e))await (0,o.n)(es,t),E(e=>e.filter(e=>e!==t));E([])}Z&&(0,i.b)().then(e=>$(e)).catch(()=>{})}catch{}})}let eo=Z&&et?`${s("home.chat.message")} ${et.name}…`:Y?"Telegram \xb7 @ada (CEO)…":s("home.cmd.placeholder");return(0,a.jsxs)("section",{className:"welcome-chat"+(H?" full":""),children:[(0,a.jsxs)("div",{className:"wc-head",children:[(0,a.jsxs)("div",{className:"wc-head-titles",children:[(0,a.jsxs)("span",{className:"wc-head-title",children:[(0,a.jsx)(x.I,{name:"chat",size:15})," ",s("home.chat.title")]}),(0,a.jsx)("span",{className:"wc-head-sub",children:s("home.chat.sub")})]}),(0,a.jsxs)("div",{className:"wc-head-actions",children:[(0,a.jsx)("button",{className:"wc-head-btn",title:s("home.openKnowledge"),onClick:()=>N.push("/knowledge"),children:(0,a.jsx)(x.I,{name:"branch",size:14})}),(0,a.jsx)("button",{className:"wc-head-btn",title:s("home.chat.fullscreen"),onClick:()=>L(e=>!e),children:(0,a.jsx)(x.I,{name:H?"close":"goto",size:14})}),(0,a.jsx)("button",{className:"wc-head-btn",title:s("home.chat.clear"),onClick:()=>D(!0),children:(0,a.jsx)(x.I,{name:"trash",size:14})})]})]}),(0,a.jsxs)("div",{className:"dock-tabs",children:[(0,a.jsxs)("button",{className:"dock-tab"+(Z||X||Y?"":" on"),onClick:()=>k("room"),children:[(0,a.jsx)(x.I,{name:"agents",size:14})," ",s("home.chat.tab.room")]}),(0,a.jsxs)("button",{className:"dock-tab"+(X||Z?" on":""),onClick:()=>k("people"),children:[(0,a.jsx)(x.I,{name:"chat",size:14})," ",s("home.chat.tab.direct")]}),(0,a.jsxs)("button",{className:"dock-tab"+(Y?" on":""),onClick:()=>k("telegram"),children:[(0,a.jsx)(x.I,{name:"send",size:14})," Telegram"]})]}),!X&&!(Y&&_&&!_.connected)&&(0,a.jsxs)("div",{className:"ctx-bar",children:[A?(0,a.jsx)(j.m,{stat:A,onCompact:en,compacting:O}):(0,a.jsx)("span",{}),Y?(0,a.jsxs)("span",{className:"ctx-hint",children:[(0,a.jsx)(x.I,{name:"bot",size:12})," ",s("home.chat.tgHint")," \xb7 @ada (CEO)"]}):(0,a.jsxs)("span",{className:"ctx-hint",children:[(0,a.jsx)(x.I,{name:"bot",size:12})," ",s("home.chat.dmAda")]})]}),Z&&et?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"chat-header dm",children:[(0,a.jsx)("button",{className:"dm-back-btn",onClick:()=>k("people"),children:(0,a.jsx)(x.I,{name:"chevronLeft",size:14})}),(0,a.jsx)(p.e,{name:et.name,color:et.color,image:et.image,size:30,health:et.health}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"chat-title",children:[et.name," ",(0,a.jsxs)("span",{className:"agent-handle",children:["@",et.handle]})]}),(0,a.jsxs)("div",{className:"chat-sub",children:[et.role," \xb7 ",et.adapter]})]}),(0,a.jsx)("span",{style:{marginLeft:"auto"},children:(0,a.jsx)(g.qs,{status:et.status})})]}),(0,a.jsx)(g.H8,{msgs:S,typing:z,agents:e,byRun:er,liveRuns:ei,loading:T,operator:t,markdownAgent:!0,avatarSize:40}),(0,a.jsx)(g.V4,{onSend:el,agents:e,requireMention:!1,placeholder:eo})]}):X?(0,a.jsx)(b.QE,{agents:e,previews:W,onOpenDM:e=>k("dm:"+e)}):Y?_&&!_.connected?(0,a.jsx)(b.CZ,{onConnected:()=>(0,m.G)().then(B).catch(()=>{})}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g.H8,{msgs:S,typing:z,agents:e,byRun:er,liveRuns:ei,loading:T||!_,operator:t,markdownAgent:!0,avatarSize:40}),(0,a.jsx)(g.V4,{onSend:el,agents:e,requireMention:!1,placeholder:eo})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g.H8,{msgs:S,typing:z,agents:e,byRun:er,liveRuns:ei,loading:T,operator:t,markdownAgent:!0,avatarSize:40,emptyHint:s("home.chat.intro")}),(0,a.jsx)(g.V4,{onSend:el,agents:e,requireMention:!1,placeholder:eo})]}),P&&(0,a.jsx)("div",{className:"modal-overlay",onMouseDown:()=>D(!1),children:(0,a.jsxs)("div",{className:"modal",style:{width:440,maxWidth:"92vw"},onMouseDown:e=>e.stopPropagation(),children:[(0,a.jsx)("div",{className:"modal-head",children:(0,a.jsxs)("div",{className:"modal-title",children:[(0,a.jsx)(x.I,{name:"trash",size:15,style:{color:"var(--sx-keyword)"}})," ",s("home.chat.clear")]})}),(0,a.jsx)("div",{className:"modal-body",children:(0,a.jsx)("div",{style:{fontSize:13,color:"var(--text-dim)",lineHeight:1.6},children:s("home.chat.clearConsequences")})}),(0,a.jsxs)("div",{className:"modal-foot",children:[(0,a.jsx)("button",{className:"btn-ghost",onClick:()=>D(!1),children:s("block.cancel")}),(0,a.jsx)("button",{className:"btn-accent",style:{background:"var(--sx-keyword)",borderColor:"var(--sx-keyword)",color:"#fff"},disabled:V,onClick:function(){D(!1),J(async()=>{await (0,d.H)(es).catch(()=>{}),C([]),R([]),E([]),await ea()})},children:s("home.chat.clear")})]})]})})]})}},5544:(e,t,s)=>{"use strict";s.d(t,{D:()=>n});var a=s(7814);let n=(0,a.createServerReference)("409613e4eff516a337a3e3aa28b9dc5d9c58309846",a.callServer,void 0,a.findSourceMapURL,"setRunMode")},5787:(e,t,s)=>{"use strict";s.d(t,{ViewChrome:()=>i});var a=s(5076),n=s(8576),r=s(972),c=s(5629);function i({title:e,sub:t,right:s,icon:l,children:o}){let d=(0,c.k)(),h=r.e.find(t=>t.title===e),m=l??h?.icon,u=h?d(`mod.${h.id}`):e;return(0,a.jsxs)("div",{className:"app-view",children:[(0,a.jsxs)("div",{className:"view-head",children:[m&&(0,a.jsx)("div",{className:"vh-icon",children:(0,a.jsx)(n.I,{name:m,size:18})}),(0,a.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,a.jsx)("div",{className:"view-title",children:u}),t&&(0,a.jsx)("div",{className:"view-sub",children:t})]}),s]}),(0,a.jsx)("div",{className:"view-body",children:o})]})}},6133:(e,t,s)=>{"use strict";s.d(t,{J:()=>n});var a=s(7814);let n=(0,a.createServerReference)("4084456b8f373168599967a95f1f6074ca5ed265cc",a.callServer,void 0,a.findSourceMapURL,"rejectSpec")},6588:(e,t,s)=>{"use strict";s.d(t,{BackButton:()=>i});var a=s(5076),n=s(9860),r=s(8576),c=s(5629);function i(){let e=(0,c.k)(),t=(0,n.useRouter)();return(0,a.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?t.back():t.push("/")},children:(0,a.jsx)(r.I,{name:"chevronLeft",size:18})})}},8036:(e,t,s)=>{"use strict";s.d(t,{HomeHeroActions:()=>i});var a=s(5076),n=s(9860),r=s(5629),c=s(8576);function i({adaHandle:e,continueHref:t}){let s=(0,r.k)(),l=(0,n.useRouter)();return(0,a.jsxs)("div",{className:"home-actions",children:[(0,a.jsxs)("button",{className:"ha-primary",onClick:()=>window.dispatchEvent(new CustomEvent("constella:focus-cmdbar")),children:[(0,a.jsx)(c.I,{name:"branch",size:15})," ",s("home.act.askKb")]}),e&&(0,a.jsxs)("button",{className:"ha-ghost",onClick:()=>window.dispatchEvent(new CustomEvent("constella:open-dm",{detail:{handle:e}})),children:[(0,a.jsx)(c.I,{name:"command",size:15})," ",s("home.act.newWork")]}),t&&(0,a.jsxs)("button",{className:"ha-ghost",onClick:()=>l.push(t),children:[(0,a.jsx)(c.I,{name:"goto",size:15})," ",s("home.act.continue")]}),(0,a.jsxs)("button",{className:"ha-ghost",onClick:()=>l.push("/inbox"),children:[(0,a.jsx)(c.I,{name:"inbox",size:15})," ",s("home.act.pending")]})]})}},8126:(e,t,s)=>{"use strict";s.d(t,{HomeInbox:()=>x});var a=s(5076),n=s(8488),r=s(9860),c=s(5629),i=s(8576),l=s(8587),o=s(8524),d=s(564),h=s(9987),m=s(6133),u=s(254),f=s(2799);let v={approval:"check",budget:"coins",question:"chat",review:"doc",block:"close",validation:"pulse"};function x({items:e}){let t=(0,c.k)(),s=(0,r.useRouter)(),[p,j]=(0,n.useTransition)(),[b,g]=(0,n.useState)(null);function w(e,t){g(e),j(async()=>{try{await t()}catch{}finally{await (0,l.b)(e,!0),g(null),s.refresh()}})}return 0===e.length?(0,a.jsx)("div",{className:"home-empty",children:t("home.decisions.empty")}):(0,a.jsx)("div",{className:"decide-list",children:e.map(e=>{let n=p&&b===e.id;return(0,a.jsxs)("div",{className:"decide-row",children:[(0,a.jsx)("div",{className:"dr-ico",children:(0,a.jsx)(i.I,{name:v[e.kind]??"bell",size:15})}),(0,a.jsxs)("div",{className:"dr-main",children:[(0,a.jsx)("div",{className:"dr-title",children:e.title}),e.detail?(0,a.jsx)("div",{className:"dr-reason",children:e.detail}):null,(0,a.jsxs)("div",{className:"dr-sub",children:[e.refType?(0,a.jsx)("span",{className:"dr-ref",children:e.refType}):null,(0,a.jsxs)("span",{children:[t("home.decisions.kind."+e.kind),e.fromName?" \xb7 "+e.fromName:"",e.createdAt?" \xb7 "+(0,f.f)(new Date(e.createdAt)):""]})]})]}),(0,a.jsxs)("div",{className:"dr-actions",children:[("plan"===e.refType||("spec"===e.refType||"issue"===e.refType)&&!!e.refId)&&(0,a.jsx)("button",{className:"dr-approve",disabled:n,onClick:()=>"plan"===e.refType?w(e.id,()=>(0,o.P)()):"spec"===e.refType&&e.refId?w(e.id,()=>(0,d.B)(e.refId)):"issue"===e.refType&&e.refId?w(e.id,()=>(0,h.t)(e.refId)):void s.push("/inbox"),children:t("home.decisions.approve")}),("spec"===e.refType||"issue"===e.refType)&&!!e.refId&&(0,a.jsx)("button",{className:"dr-reject",disabled:n,onClick:()=>"spec"===e.refType&&e.refId?w(e.id,()=>(0,m.J)(e.refId)):"issue"===e.refType&&e.refId?w(e.id,()=>(0,u.d)(e.refId)):w(e.id,async()=>{}),children:t("home.decisions.reject")}),(0,a.jsx)("button",{className:"dr-ghost",onClick:()=>s.push("/inbox"),title:t("home.decisions.details"),children:(0,a.jsx)(i.I,{name:"goto",size:13})}),(0,a.jsx)("button",{className:"dr-ghost",onClick:()=>window.dispatchEvent(new CustomEvent("constella:focus-cmdbar")),title:t("home.decisions.askKb"),children:(0,a.jsx)(i.I,{name:"branch",size:13})})]})]},e.id)})})}},8524:(e,t,s)=>{"use strict";s.d(t,{P:()=>n});var a=s(7814);let n=(0,a.createServerReference)("00e45bb09a28ac696d2f5a9503f7648f4e490d9007",a.callServer,void 0,a.findSourceMapURL,"approvePlan")},8587:(e,t,s)=>{"use strict";s.d(t,{b:()=>n});var a=s(7814);let n=(0,a.createServerReference)("6020466ab981832e60cc4646b03104ad016016ce57",a.callServer,void 0,a.findSourceMapURL,"resolveInbox")},8679:(e,t,s)=>{"use strict";s.d(t,{HomeStatusChip:()=>o});var a=s(5076),n=s(8488),r=s(9860),c=s(5629),i=s(5544),l=s(8576);function o({running:e,activeAgents:t}){let s=(0,c.k)(),d=(0,r.useRouter)(),[h,m]=(0,n.useTransition)();return e?(0,a.jsxs)("span",{className:"home-status-chip running",children:[(0,a.jsx)("span",{className:"hsc-dot"})," ",s("home.statusRunning",{n:t})]}):(0,a.jsxs)("button",{className:"home-status-chip idle",onClick:function(){m(async()=>{await (0,i.D)("start"),d.refresh()})},disabled:h,title:s("home.startHint"),children:[(0,a.jsx)("span",{className:"hsc-dot off"})," ",(0,a.jsx)(l.I,{name:"play",size:12})," ",s(h?"home.starting":"home.startAgents")]})}},9987:(e,t,s)=>{"use strict";s.d(t,{t:()=>n});var a=s(7814);let n=(0,a.createServerReference)("4054b0647abaaa37034f58a7515bb92956b1c1075c",a.callServer,void 0,a.findSourceMapURL,"approveIssue")}},e=>{e.O(0,[9219,9690,3219,8264,6575,6646,6834,7358],()=>e(e.s=4463)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1172],{241:(e,a,s)=>{"use strict";s.d(a,{IssueApprove:()=>N,PlanGate:()=>b,PlanGateLive:()=>f,Run247Button:()=>k,p:()=>y});var n=s(5076),t=s(8488),r=s(9860),l=s(8576),i=s(5629),c=s(2978),d=s(7814);let o=(0,d.createServerReference)("40d4495591c4f0c211bbbbc777aa080521893681ba",d.callServer,void 0,d.findSourceMapURL,"generatePlan"),p=(0,d.createServerReference)("00c91dc39ccc68d15fb0f0f1b170a819b17be7523b",d.callServer,void 0,d.findSourceMapURL,"requestPlanChanges");var h=s(8524),u=s(564),m=s(6133),v=s(9987),x=s(254);let g=(0,d.createServerReference)("40c0818db6a6d0dc733e343a692e8b27655fcea0ba",d.callServer,void 0,d.findSourceMapURL,"setAuto247");function j(e,a){window.dispatchEvent(new CustomEvent("constella:open-dm",{detail:{handle:e,text:a}}))}function f({planning:e,planSince:a}){let s=(0,i.k)(),[d,p]=(0,t.useTransition)(),h=(0,r.useRouter)(),[u,m]=(0,t.useState)(!1),[v,x]=(0,t.useState)(""),g=e||u;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(c.AgentRunLive,{channel:"planner",resume:e,sinceSeq:e?a-1:0,onFinish:()=>m(!1)}),g?(0,n.jsxs)("div",{className:"plan-gate",children:[(0,n.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0}),(0,n.jsx)("div",{className:"pg-ic",children:(0,n.jsx)(l.I,{name:"bot",size:20})}),(0,n.jsxs)("div",{className:"pg-main",children:[(0,n.jsx)("div",{className:"pg-t",children:s("planner.gate.drafting.t")}),(0,n.jsx)("div",{className:"pg-d",children:s("planner.gate.drafting.d")})]})]}):(0,n.jsxs)("div",{className:"plan-gate",children:[(0,n.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0}),(0,n.jsx)("div",{className:"pg-ic",children:(0,n.jsx)(l.I,{name:"bot",size:20})}),(0,n.jsxs)("div",{className:"pg-main",children:[(0,n.jsx)("div",{className:"pg-t",children:s("planner.gate.noPlan.t")}),(0,n.jsx)("div",{className:"pg-d",children:s("planner.gate.noPlan.d")}),v&&(0,n.jsx)("div",{className:"pg-d",style:{color:"var(--sx-keyword)",marginTop:6},children:v})]}),(0,n.jsxs)("div",{className:"pg-actions",children:[(0,n.jsxs)("div",{className:"plan-hint",children:[(0,n.jsx)("div",{className:"plan-hint-t",children:s("planner.gate.hint.t")}),(0,n.jsx)("div",{className:"plan-hint-d",children:s("planner.gate.hint.d")})]}),(0,n.jsxs)("button",{className:"btn-accent",disabled:d,onClick:function(){x(""),m(!0),window.dispatchEvent(new CustomEvent("constella:agent-run",{detail:{channel:"planner"}})),p(async()=>{try{let e=await o();(!e?.ok||!1===e.started)&&(m(!1),e?.error&&x(e.error)),h.refresh()}catch{m(!1),x(s("planner.gate.staleTab"))}})},children:[(0,n.jsx)(l.I,{name:d?"refresh":"bot",size:14,className:d?"sync-spin":""})," ",d?s("planner.gate.analyzing"):s("planner.gate.generate")]})]})]})]})}function b({specs:e,total:a}){let s=(0,i.k)(),[r,c]=(0,t.useTransition)();return(0,n.jsxs)("div",{className:"plan-gate",children:[(0,n.jsx)("div",{className:"pg-ic",children:(0,n.jsx)(l.I,{name:"bot",size:20})}),(0,n.jsxs)("div",{className:"pg-main",children:[(0,n.jsx)("div",{className:"pg-t",children:s("planner.gate.ready.t")}),(0,n.jsx)("div",{className:"pg-d",children:s("planner.gate.ready.d",{specs:e,total:a})})]}),(0,n.jsxs)("div",{className:"pg-actions",children:[(0,n.jsxs)("button",{className:"btn-ghost",disabled:r,onClick:()=>c(async()=>{await p(),j("ada",s("planner.gate.rejectPlanDm"))}),children:[(0,n.jsx)(l.I,{name:"refresh",size:13})," ",s("planner.gate.requestChanges")]}),(0,n.jsxs)("button",{className:"btn-accent",disabled:r,onClick:()=>c(()=>(0,h.P)()),children:[(0,n.jsx)(l.I,{name:"check",size:14})," ",s("planner.gate.approvePlan")]})]})]})}function y({specId:e,specKey:a,approved:s}){let r=(0,i.k)(),[c,d]=(0,t.useTransition)();return s?(0,n.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:[(0,n.jsx)(l.I,{name:"check",size:11})," ",r("planner.approved")]}):(0,n.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,n.jsxs)("button",{className:"sc2-btn",disabled:c,onClick:()=>d(()=>(0,u.B)(e)),children:[(0,n.jsx)(l.I,{name:"check",size:11})," ",r("planner.approve")]}),(0,n.jsxs)("button",{className:"sc2-btn danger",disabled:c,onClick:()=>d(async()=>{j((await (0,m.J)(e)).handle,r("planner.rejectItemDm",{key:a}))}),children:[(0,n.jsx)(l.I,{name:"refresh",size:11})," ",r("planner.reject")]})]})}function N({issueId:e,issueKey:a,approved:s}){let r=(0,i.k)(),[c,d]=(0,t.useTransition)();return s?(0,n.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:[(0,n.jsx)(l.I,{name:"check",size:11})," ",r("planner.approved")]}):(0,n.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,n.jsxs)("button",{className:"sc2-btn",disabled:c,onClick:()=>d(()=>(0,v.t)(e)),children:[(0,n.jsx)(l.I,{name:"check",size:11})," ",r("planner.approve")]}),(0,n.jsxs)("button",{className:"sc2-btn danger",disabled:c,onClick:()=>d(async()=>{j((await (0,x.d)(e)).handle,r("planner.rejectItemDm",{key:a}))}),children:[(0,n.jsx)(l.I,{name:"refresh",size:11})," ",r("planner.reject")]})]})}function k({auto:e,approved:a,state:s}){let r=(0,i.k)(),[c,d]=(0,t.useTransition)(),o=r(c?e?"planner.run247.pausing":"planner.run247.starting":"waiting-approval"===s?"planner.run247.approveToRun":"all-done"===s?"planner.run247.allDone":e?"planner.run247.pause":"planner.run247.run"),p="blocked"===s?r("planner.run247.blockedTip"):void 0,h="off"===s&&!c;return(0,n.jsxs)("button",{className:"btn-"+(e?"ghost":"accent")+(h?" run-attn":""),disabled:!a||"all-done"===s||c,title:p,onClick:()=>d(()=>g(!e)),children:[(0,n.jsx)(l.I,{name:c?"refresh":"waiting-approval"===s?"bot":"all-done"===s?"check":e?"close":"play",size:14,className:c?"sync-spin":""})," ",o,("running"===s||h)&&(0,n.jsx)("span",{className:"dotpulse",style:{marginLeft:6}})]})}},254:(e,a,s)=>{"use strict";s.d(a,{d:()=>t});var n=s(7814);let t=(0,n.createServerReference)("409a00fb6112f1d61b785f1dcab141214f82cad748",n.callServer,void 0,n.findSourceMapURL,"rejectIssue")},564:(e,a,s)=>{"use strict";s.d(a,{B:()=>t});var n=s(7814);let t=(0,n.createServerReference)("4092700ba435c925678f2d627e88e5e971326a5e5e",n.callServer,void 0,n.findSourceMapURL,"approveSpec")},1059:(e,a,s)=>{"use strict";s.d(a,{NewWorkButton:()=>o});var n=s(5076),t=s(8488),r=s(9860),l=s(8576),i=s(5629),c=s(7814);let d=(0,c.createServerReference)("40fd48d764a7ee7b502997ebd8a49b56c480a5a216",c.callServer,void 0,c.findSourceMapURL,"startNewWork");function o(){let e=(0,i.k)(),[a,s]=(0,t.useState)(!1),[c,o]=(0,t.useState)(""),[p,h]=(0,t.useState)(""),[u,m]=(0,t.useState)(""),[v,x]=(0,t.useTransition)(),g=(0,r.useRouter)();return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("button",{className:"btn-ghost",onClick:()=>s(!0),children:[(0,n.jsx)(l.I,{name:"add",size:14})," ",e("planner.newWork.button")]}),a&&(0,n.jsx)("div",{className:"modal-overlay",onMouseDown:()=>!v&&s(!1),children:(0,n.jsxs)("div",{className:"modal",style:{padding:"20px 22px",width:480,maxWidth:"94vw"},onMouseDown:e=>e.stopPropagation(),children:[(0,n.jsx)("div",{style:{fontSize:15,fontWeight:800,marginBottom:4},children:e("planner.newWork.title")}),(0,n.jsx)("div",{style:{fontSize:12,color:"var(--text-dim)",marginBottom:12},children:e("planner.newWork.desc")}),(0,n.jsx)("label",{className:"form-label",children:e("planner.newWork.titleLabel")}),(0,n.jsx)("input",{className:"form-input",autoFocus:!0,value:c,onChange:e=>o(e.target.value),placeholder:e("planner.newWork.titlePh")}),(0,n.jsx)("label",{className:"form-label",children:e("planner.newWork.briefLabel")}),(0,n.jsx)("textarea",{className:"form-input",rows:5,value:p,onChange:e=>h(e.target.value),placeholder:e("planner.newWork.briefPh")}),u&&(0,n.jsx)("div",{style:{color:"#e8688f",fontSize:12,marginTop:8},children:u}),(0,n.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:16},children:[(0,n.jsx)("button",{className:"btn-ghost",disabled:v,onClick:()=>s(!1),children:e("common.cancel")}),(0,n.jsx)("button",{className:"btn-accent",disabled:v||!p.trim(),onClick:function(){m(""),x(async()=>{let a=await d({title:c.trim()||void 0,brief:p});a.ok?(s(!1),o(""),h(""),g.refresh()):m(a.error??e("planner.newWork.failed"))})},children:v?e("planner.newWork.planning"):e("planner.newWork.create")})]})]})})]})}},1690:(e,a,s)=>{"use strict";s.d(a,{SpecsSection:()=>o});var n=s(5076),t=s(8488),r=s(4552),l=s(241),i=s(5629),c=s(5695);let d=["active","approved","draft","cancelled","archived","all"];function o({specs:e,issues:a,agents:s}){let p=(0,i.k)(),[h,u]=(0,t.useState)("active"),m=Object.fromEntries(s.map(e=>[e.id,e])),v=e.filter(e=>(function(e,a){switch(a){case"all":return!0;case"approved":return"active"===e.status&&e.approved;case"draft":return"active"===e.status&&!e.approved;case"cancelled":return"cancelled"===e.status;case"archived":return"archived"===e.status;default:return"active"===e.status}})(e,h));return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"view-section-title",style:{marginTop:22,display:"flex",alignItems:"center",gap:12,flexWrap:"wrap"},children:[(0,n.jsxs)("span",{children:[p("planner.specs.title")," ",(0,n.jsxs)("span",{style:{fontWeight:400,color:"var(--text-faint)"},children:["\xb7 ",p("planner.specs.from")]})]}),(0,n.jsx)("div",{className:"seg",style:{marginLeft:"auto"},children:d.map(e=>(0,n.jsx)("button",{className:"seg-opt"+(h===e?" on":""),onClick:()=>u(e),children:p(`planner.specFilter.${e}`)},e))})]}),0===v.length?(0,n.jsx)("div",{className:"card",children:(0,n.jsx)("div",{className:"muted",children:"all"===h?p("planner.specs.emptyAll"):p("planner.specs.emptyFiltered",{filter:p(`planner.specFilter.${h}`)})})}):(0,n.jsx)("div",{className:"cards-grid",style:{gridTemplateColumns:"1fr 1fr"},children:v.map(e=>{let s=e.authorId?m[e.authorId]:null,t=a.filter(a=>a.specId===e.id).length,i=s?.role??"—",d="active"!==e.status;return(0,n.jsxs)("div",{className:"card",style:d?{opacity:.6}:void 0,children:[(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[(0,n.jsx)("span",{className:"chip-sm",children:e.key}),(0,n.jsx)("span",{style:{fontWeight:700,fontSize:13.5,color:"var(--text)",flex:1},children:e.title}),d&&(0,n.jsx)("span",{className:"pill",style:{fontSize:10},children:p(`planner.specFilter.${e.status}`)}),s&&(0,n.jsx)(r.e,{name:s.name,color:s.color,size:20})]}),(0,n.jsx)("div",{style:{fontSize:12,color:"var(--text-dim)",marginBottom:8},children:e.summary}),(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,n.jsxs)("div",{style:{fontSize:11,color:"var(--text-faint)",flex:1},children:[i," \xb7 ",p("planner.specs.issueCount",{n:t})," \xb7 ",(0,n.jsxs)("span",{style:{color:"var(--accent)"},children:["specs/",e.key,".md"]}),e.createdAt&&(0,n.jsxs)(n.Fragment,{children:[" \xb7 ",(0,c.F)(e.createdAt)]})]}),!d&&(0,n.jsx)(l.p,{specId:e.id,specKey:e.key,approved:e.approved})]})]},e.id)})})]})}},2648:(e,a,s)=>{Promise.resolve().then(s.t.bind(s,3283,23)),Promise.resolve().then(s.bind(s,9774)),Promise.resolve().then(s.bind(s,1059)),Promise.resolve().then(s.bind(s,241)),Promise.resolve().then(s.bind(s,1690)),Promise.resolve().then(s.bind(s,351)),Promise.resolve().then(s.bind(s,6588)),Promise.resolve().then(s.bind(s,4414)),Promise.resolve().then(s.bind(s,9286)),Promise.resolve().then(s.bind(s,5787))},4552:(e,a,s)=>{"use strict";s.d(a,{e:()=>t});var n=s(5076);function t({name:e,color:a,size:s=24,health:r,image:l}){let i=Math.max(6,Math.round(.3*s)),c=Math.round(.28*s),d=l?/^(data:|https?:|\/)/.test(l)?l:`/api/upload?path=${encodeURIComponent(l)}`:null;return(0,n.jsxs)("span",{style:{position:"relative",width:s,height:s,flex:`0 0 ${s}px`,display:"inline-block"},children:[d?(0,n.jsx)("img",{src:d,alt:e,width:s,height:s,style:{width:s,height:s,borderRadius:c,objectFit:"cover",display:"block"}}):(0,n.jsx)("span",{style:{width:s,height:s,borderRadius:c,background:a,color:"#fff",display:"grid",placeItems:"center",fontSize:Math.round(.42*s),fontWeight:700},children:(e[0]||"?").toUpperCase()}),r&&(0,n.jsx)("span",{style:{position:"absolute",right:-1,bottom:-1,width:i,height:i,borderRadius:"50%",background:"alive"===r?"var(--sx-string)":"stale"===r?"var(--sx-number)":"var(--text-faint)",border:"1.5px solid var(--bg-elevated)"}})]})}},5695:(e,a,s)=>{"use strict";function n(e){if(null==e)return"";let a=e instanceof Date?e:new Date(e);if(isNaN(a.getTime()))return"";let s=a.toLocaleDateString([],{day:"2-digit",month:"short"}),n=a.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"});return`${s}, ${n}`}s.d(a,{F:()=>n})},6133:(e,a,s)=>{"use strict";s.d(a,{J:()=>t});var n=s(7814);let t=(0,n.createServerReference)("4084456b8f373168599967a95f1f6074ca5ed265cc",n.callServer,void 0,n.findSourceMapURL,"rejectSpec")},8524:(e,a,s)=>{"use strict";s.d(a,{P:()=>t});var n=s(7814);let t=(0,n.createServerReference)("00e45bb09a28ac696d2f5a9503f7648f4e490d9007",n.callServer,void 0,n.findSourceMapURL,"approvePlan")},9774:(e,a,s)=>{"use strict";s.d(a,{IssuesSection:()=>p});var n=s(5076),t=s(8488),r=s(4552),l=s(5629),i=s(5695);let c={high:"var(--sx-keyword)",med:"#d98a2b",low:"var(--cyan,#6cc7e0)"},d=["active","awaiting","doing","review","blocked","done","cancelled","archived","all"];function o(e){return"cancelled"===e.status?"cancelled":"archived"===e.status?"archived":e.col}function p({issues:e,specs:a,agents:s}){let h=(0,l.k)(),[u,m]=(0,t.useState)("active"),v=Object.fromEntries(s.map(e=>[e.id,e])),x=e.filter(e=>(function(e,a){let s=o(e);switch(a){case"all":return!0;case"active":return"active"===e.status;case"awaiting":return"active"===e.status&&"todo"===e.col;case"cancelled":return"cancelled"===s;case"archived":return"archived"===s;default:return"active"===e.status&&e.col===a}})(e,u));return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"view-section-title",style:{marginTop:22,display:"flex",alignItems:"center",gap:12,flexWrap:"wrap"},children:[(0,n.jsxs)("span",{children:[h("planner.issues.title")," ",(0,n.jsxs)("span",{style:{fontWeight:400,color:"var(--text-faint)"},children:["\xb7 ",h("planner.issues.brokenFromSpecs",{n:e.length})]})]}),(0,n.jsx)("div",{className:"seg",style:{marginLeft:"auto"},children:d.map(e=>(0,n.jsx)("button",{className:"seg-opt"+(u===e?" on":""),onClick:()=>m(e),children:h(`planner.issueFilter.${e}`)},e))})]}),0===x.length?(0,n.jsx)("div",{className:"card",children:(0,n.jsx)("div",{className:"muted",children:"all"===u?h("planner.issues.emptyAll"):h("planner.issues.emptyFiltered",{filter:h(`planner.issueFilter.${u}`).toLowerCase()})})}):(0,n.jsx)("div",{className:"tbl-wrap",children:(0,n.jsxs)("table",{className:"tbl",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:h("planner.issues.col.id")}),(0,n.jsx)("th",{children:h("planner.issues.col.issue")}),(0,n.jsx)("th",{children:h("planner.issues.col.spec")}),(0,n.jsx)("th",{children:h("planner.issues.col.priority")}),(0,n.jsx)("th",{children:h("planner.issues.col.owner")}),(0,n.jsx)("th",{children:h("common.status")}),(0,n.jsx)("th",{children:h("planner.issues.col.updated")})]})}),(0,n.jsx)("tbody",{children:x.map(e=>{let s=e.assigneeId?v[e.assigneeId]:null,t=e.specId?a.find(a=>a.id===e.specId)?.key:null,l=c[e.prio]??"var(--text-dim)",d=o(e);return(0,n.jsxs)("tr",{style:"active"!==e.status?{opacity:.55}:void 0,children:[(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"chip-sm",children:e.key})}),(0,n.jsx)("td",{children:e.title}),(0,n.jsx)("td",{style:{color:"var(--text-dim)",fontFamily:"var(--mono-font)",fontSize:11.5},children:t??"—"}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"pill",style:{background:l+"22",color:l},children:h(`planner.prio.${e.prio}`)})}),(0,n.jsx)("td",{children:(0,n.jsx)("div",{className:"who",children:s?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(r.e,{name:s.name,color:s.color,size:18})," ",s.name]}):"—"})}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"pill issue-"+d,children:h(`planner.issueState.${d}`)})}),(0,n.jsx)("td",{style:{color:"var(--text-faint)",fontSize:11},children:(0,i.F)(e.updatedAt)})]},e.id)})})]})})]})}},9987:(e,a,s)=>{"use strict";s.d(a,{t:()=>t});var n=s(7814);let t=(0,n.createServerReference)("4054b0647abaaa37034f58a7515bb92956b1c1075c",n.callServer,void 0,n.findSourceMapURL,"approveIssue")}},e=>{e.O(0,[9219,3219,8264,5701,6646,6834,7358],()=>e(e.s=2648)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3472],{567:(e,i,t)=>{Promise.resolve().then(t.t.bind(t,3283,23)),Promise.resolve().then(t.bind(t,5937)),Promise.resolve().then(t.bind(t,351)),Promise.resolve().then(t.bind(t,6588)),Promise.resolve().then(t.bind(t,4414)),Promise.resolve().then(t.bind(t,9286)),Promise.resolve().then(t.bind(t,5787))},972:(e,i,t)=>{"use strict";t.d(i,{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:"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"}]},4414:(e,i,t)=>{"use strict";t.d(i,{ChatToggle:()=>s});var o=t(5076),n=t(8576),r=t(5629);function s(){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})})}},5787:(e,i,t)=>{"use strict";t.d(i,{ViewChrome:()=>l});var o=t(5076),n=t(8576),r=t(972),s=t(5629);function l({title:e,sub:i,right:t,icon:a,children:c}){let d=(0,s.k)(),u=r.e.find(i=>i.title===e),p=a??u?.icon,g=u?d(`mod.${u.id}`):e;return(0,o.jsxs)("div",{className:"app-view",children:[(0,o.jsxs)("div",{className:"view-head",children:[p&&(0,o.jsx)("div",{className:"vh-icon",children:(0,o.jsx)(n.I,{name:p,size:18})}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsx)("div",{className:"view-title",children:g}),i&&(0,o.jsx)("div",{className:"view-sub",children:i})]}),t]}),(0,o.jsx)("div",{className:"view-body",children:c})]})}},5937:(e,i,t)=>{"use strict";t.d(i,{InstallPlugin:()=>u,PluginGrid:()=>p});var o=t(5076),n=t(8488),r=t(7814);let s=(0,r.createServerReference)("60f7af55d4c397ea8ff13cd23339cebc45ed07bad2",r.callServer,void 0,r.findSourceMapURL,"installPlugin"),l=(0,r.createServerReference)("408b436e718a2d6e7af51dbdef7e24e3dafd76314f",r.callServer,void 0,r.findSourceMapURL,"removePlugin"),a=(0,r.createServerReference)("606275b1c8e520e89ea94c21e7cd4b168074ab99c9",r.callServer,void 0,r.findSourceMapURL,"togglePlugin");var c=t(8576),d=t(5629);function u(){let e=(0,d.k)(),[i,t]=(0,n.useTransition)();return(0,o.jsxs)("button",{className:"btn-accent",disabled:i,onClick:function(){let i=window.prompt(e("plugins.installPrompt"));i&&i.trim()&&t(async()=>{await s(i.trim())})},children:[(0,o.jsx)(c.I,{name:"add",size:14})," ",e("plugins.installFromUrl")]})}function p({plugins:e}){return(0,o.jsx)(o.Fragment,{children:e.map(e=>(0,o.jsx)(g,{plugin:e},e.id))})}function g({plugin:e}){let i=(0,d.k)(),[t,r]=(0,n.useTransition)();return(0,o.jsxs)("div",{className:"lrow",children:[(0,o.jsx)("div",{className:"vh-icon",style:{width:34,height:34,flex:"0 0 34px"},children:(0,o.jsx)(c.I,{name:"ext",size:16})}),(0,o.jsxs)("div",{className:"lr-main",children:[(0,o.jsxs)("div",{className:"lr-title",children:[e.name," ",e.native&&(0,o.jsx)("span",{className:"pill",style:{background:"var(--accent)22",color:"var(--accent)"},children:i("plugins.native")})]}),(0,o.jsx)("div",{className:"lr-sub",children:e.description})]}),!e.native&&(0,o.jsxs)("button",{className:"btn-ghost",disabled:t,onClick:()=>r(()=>{l(e.id)}),children:[(0,o.jsx)(c.I,{name:"trash",size:13})," ",i("common.remove")]}),(0,o.jsx)("div",{className:"toggle"+(e.enabled?" on":""),role:"switch","aria-checked":e.enabled,"aria-disabled":t,onClick:()=>!t&&r(()=>{a(e.id,!e.enabled)})})]})}},6588:(e,i,t)=>{"use strict";t.d(i,{BackButton:()=>l});var o=t(5076),n=t(9860),r=t(8576),s=t(5629);function l(){let e=(0,s.k)(),i=(0,n.useRouter)();return(0,o.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?i.back():i.push("/")},children:(0,o.jsx)(r.I,{name:"chevronLeft",size:18})})}}},e=>{e.O(0,[9219,3219,8264,6646,6834,7358],()=>e(e.s=567)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[423],{241:(e,a,n)=>{"use strict";n.d(a,{IssueApprove:()=>S,PlanGate:()=>j,PlanGateLive:()=>x,Run247Button:()=>N,p:()=>k});var s=n(5076),l=n(8488),r=n(9860),c=n(8576),i=n(5629),t=n(2978),d=n(7814);let o=(0,d.createServerReference)("40d4495591c4f0c211bbbbc777aa080521893681ba",d.callServer,void 0,d.findSourceMapURL,"generatePlan"),p=(0,d.createServerReference)("00c91dc39ccc68d15fb0f0f1b170a819b17be7523b",d.callServer,void 0,d.findSourceMapURL,"requestPlanChanges");var m=n(8524),u=n(564),v=n(6133),b=n(9987),h=n(254);let f=(0,d.createServerReference)("40c0818db6a6d0dc733e343a692e8b27655fcea0ba",d.callServer,void 0,d.findSourceMapURL,"setAuto247");function g(e,a){window.dispatchEvent(new CustomEvent("constella:open-dm",{detail:{handle:e,text:a}}))}function x({planning:e,planSince:a}){let n=(0,i.k)(),[d,p]=(0,l.useTransition)(),m=(0,r.useRouter)(),[u,v]=(0,l.useState)(!1),[b,h]=(0,l.useState)(""),f=e||u;return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.AgentRunLive,{channel:"planner",resume:e,sinceSeq:e?a-1:0,onFinish:()=>v(!1)}),f?(0,s.jsxs)("div",{className:"plan-gate",children:[(0,s.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0}),(0,s.jsx)("div",{className:"pg-ic",children:(0,s.jsx)(c.I,{name:"bot",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:n("planner.gate.drafting.t")}),(0,s.jsx)("div",{className:"pg-d",children:n("planner.gate.drafting.d")})]})]}):(0,s.jsxs)("div",{className:"plan-gate",children:[(0,s.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0}),(0,s.jsx)("div",{className:"pg-ic",children:(0,s.jsx)(c.I,{name:"bot",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:n("planner.gate.noPlan.t")}),(0,s.jsx)("div",{className:"pg-d",children:n("planner.gate.noPlan.d")}),b&&(0,s.jsx)("div",{className:"pg-d",style:{color:"var(--sx-keyword)",marginTop:6},children:b})]}),(0,s.jsxs)("div",{className:"pg-actions",children:[(0,s.jsxs)("div",{className:"plan-hint",children:[(0,s.jsx)("div",{className:"plan-hint-t",children:n("planner.gate.hint.t")}),(0,s.jsx)("div",{className:"plan-hint-d",children:n("planner.gate.hint.d")})]}),(0,s.jsxs)("button",{className:"btn-accent",disabled:d,onClick:function(){h(""),v(!0),window.dispatchEvent(new CustomEvent("constella:agent-run",{detail:{channel:"planner"}})),p(async()=>{try{let e=await o();(!e?.ok||!1===e.started)&&(v(!1),e?.error&&h(e.error)),m.refresh()}catch{v(!1),h(n("planner.gate.staleTab"))}})},children:[(0,s.jsx)(c.I,{name:d?"refresh":"bot",size:14,className:d?"sync-spin":""})," ",d?n("planner.gate.analyzing"):n("planner.gate.generate")]})]})]})]})}function j({specs:e,total:a}){let n=(0,i.k)(),[r,t]=(0,l.useTransition)();return(0,s.jsxs)("div",{className:"plan-gate",children:[(0,s.jsx)("div",{className:"pg-ic",children:(0,s.jsx)(c.I,{name:"bot",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:n("planner.gate.ready.t")}),(0,s.jsx)("div",{className:"pg-d",children:n("planner.gate.ready.d",{specs:e,total:a})})]}),(0,s.jsxs)("div",{className:"pg-actions",children:[(0,s.jsxs)("button",{className:"btn-ghost",disabled:r,onClick:()=>t(async()=>{await p(),g("ada",n("planner.gate.rejectPlanDm"))}),children:[(0,s.jsx)(c.I,{name:"refresh",size:13})," ",n("planner.gate.requestChanges")]}),(0,s.jsxs)("button",{className:"btn-accent",disabled:r,onClick:()=>t(()=>(0,m.P)()),children:[(0,s.jsx)(c.I,{name:"check",size:14})," ",n("planner.gate.approvePlan")]})]})]})}function k({specId:e,specKey:a,approved:n}){let r=(0,i.k)(),[t,d]=(0,l.useTransition)();return n?(0,s.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:[(0,s.jsx)(c.I,{name:"check",size:11})," ",r("planner.approved")]}):(0,s.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,s.jsxs)("button",{className:"sc2-btn",disabled:t,onClick:()=>d(()=>(0,u.B)(e)),children:[(0,s.jsx)(c.I,{name:"check",size:11})," ",r("planner.approve")]}),(0,s.jsxs)("button",{className:"sc2-btn danger",disabled:t,onClick:()=>d(async()=>{g((await (0,v.J)(e)).handle,r("planner.rejectItemDm",{key:a}))}),children:[(0,s.jsx)(c.I,{name:"refresh",size:11})," ",r("planner.reject")]})]})}function S({issueId:e,issueKey:a,approved:n}){let r=(0,i.k)(),[t,d]=(0,l.useTransition)();return n?(0,s.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:[(0,s.jsx)(c.I,{name:"check",size:11})," ",r("planner.approved")]}):(0,s.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,s.jsxs)("button",{className:"sc2-btn",disabled:t,onClick:()=>d(()=>(0,b.t)(e)),children:[(0,s.jsx)(c.I,{name:"check",size:11})," ",r("planner.approve")]}),(0,s.jsxs)("button",{className:"sc2-btn danger",disabled:t,onClick:()=>d(async()=>{g((await (0,h.d)(e)).handle,r("planner.rejectItemDm",{key:a}))}),children:[(0,s.jsx)(c.I,{name:"refresh",size:11})," ",r("planner.reject")]})]})}function N({auto:e,approved:a,state:n}){let r=(0,i.k)(),[t,d]=(0,l.useTransition)(),o=r(t?e?"planner.run247.pausing":"planner.run247.starting":"waiting-approval"===n?"planner.run247.approveToRun":"all-done"===n?"planner.run247.allDone":e?"planner.run247.pause":"planner.run247.run"),p="blocked"===n?r("planner.run247.blockedTip"):void 0,m="off"===n&&!t;return(0,s.jsxs)("button",{className:"btn-"+(e?"ghost":"accent")+(m?" run-attn":""),disabled:!a||"all-done"===n||t,title:p,onClick:()=>d(()=>f(!e)),children:[(0,s.jsx)(c.I,{name:t?"refresh":"waiting-approval"===n?"bot":"all-done"===n?"check":e?"close":"play",size:14,className:t?"sync-spin":""})," ",o,("running"===n||m)&&(0,s.jsx)("span",{className:"dotpulse",style:{marginLeft:6}})]})}},254:(e,a,n)=>{"use strict";n.d(a,{d:()=>l});var s=n(7814);let l=(0,s.createServerReference)("409a00fb6112f1d61b785f1dcab141214f82cad748",s.callServer,void 0,s.findSourceMapURL,"rejectIssue")},564:(e,a,n)=>{"use strict";n.d(a,{B:()=>l});var s=n(7814);let l=(0,s.createServerReference)("4092700ba435c925678f2d627e88e5e971326a5e5e",s.callServer,void 0,s.findSourceMapURL,"approveSpec")},4977:(e,a,n)=>{Promise.resolve().then(n.t.bind(n,3283,23)),Promise.resolve().then(n.bind(n,241)),Promise.resolve().then(n.bind(n,9367)),Promise.resolve().then(n.bind(n,351)),Promise.resolve().then(n.bind(n,6588)),Promise.resolve().then(n.bind(n,4414)),Promise.resolve().then(n.bind(n,9286)),Promise.resolve().then(n.bind(n,5787))},6133:(e,a,n)=>{"use strict";n.d(a,{J:()=>l});var s=n(7814);let l=(0,s.createServerReference)("4084456b8f373168599967a95f1f6074ca5ed265cc",s.callServer,void 0,s.findSourceMapURL,"rejectSpec")},8524:(e,a,n)=>{"use strict";n.d(a,{P:()=>l});var s=n(7814);let l=(0,s.createServerReference)("00e45bb09a28ac696d2f5a9503f7648f4e490d9007",s.callServer,void 0,s.findSourceMapURL,"approvePlan")},9367:(e,a,n)=>{"use strict";n.d(a,{BacklogRowActions:()=>N,GroomBacklogButton:()=>h,IssueCardActions:()=>S,IssueMoscow:()=>x,NewBacklogButton:()=>k});var s=n(5076),l=n(8488),r=n(8576),c=n(5629),i=n(7814);let t=(0,i.createServerReference)("60fe92c6a6ed3fdeb545982cd4d1a23270b4d7d25e",i.callServer,void 0,i.findSourceMapURL,"setIssueMoscow"),d=(0,i.createServerReference)("4031dbdd21312d634958e7e5aa0528a4ecbb9e2852",i.callServer,void 0,i.findSourceMapURL,"createBacklogItem"),o=(0,i.createServerReference)("400fe2c5a45abe18cf81bf9c5df42c8f5a09ff714c",i.callServer,void 0,i.findSourceMapURL,"unblockIssue"),p=(0,i.createServerReference)("60da851b705ea78f566b3a002ebf2b44f2bcf76924",i.callServer,void 0,i.findSourceMapURL,"moveIssue"),m=(0,i.createServerReference)("40aee8537d63cf0e93d65ba8330c8ae7fbb984cd87",i.callServer,void 0,i.findSourceMapURL,"blockIssue"),u=(0,i.createServerReference)("408ad9acc9fb302010d6e07222acd7c94fd9d16f41",i.callServer,void 0,i.findSourceMapURL,"promoteBacklogItem"),v=(0,i.createServerReference)("408a1e7f89baff22cb2d1c8685746d39713af90a14",i.callServer,void 0,i.findSourceMapURL,"deleteBacklogItem"),b=(0,i.createServerReference)("002791a737a2b5f520663a95d4e899ae4d0ba07f4c",i.callServer,void 0,i.findSourceMapURL,"groomBacklog");function h(){let e=(0,c.k)(),[a,n]=(0,l.useTransition)(),[i,t]=(0,l.useState)(null);return(0,s.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[i&&(0,s.jsx)("span",{style:{fontSize:11.5,color:"var(--text-dim)"},children:i}),(0,s.jsxs)("button",{className:"btn-ghost",disabled:a,onClick:function(){t(null),n(async()=>{let a=await b();t(a.ok?e("pm.groomed",{n:a.groomed??0}):a.error??e("pm.groomFailed"))})},title:e("pm.groomDesc"),children:[a?(0,s.jsx)("span",{className:"sync-spin",children:(0,s.jsx)(r.I,{name:"refresh",size:13})}):(0,s.jsx)(r.I,{name:"branch",size:13})," ",a?e("pm.grooming"):e("pm.groom")]})]})}let f=["Must","Should","Could","Won't"],g={Must:"#e8688f",Should:"#e0a44e",Could:"#6cc7e0","Won't":"#6b7390"};function x({id:e,moscow:a}){let n=(0,c.k)(),[r,i]=(0,l.useState)(a??"Should"),[,d]=(0,l.useTransition)(),o=g[r];return(0,s.jsx)("button",{className:"pill",style:{background:o+"22",color:o,cursor:"pointer",border:"none"},title:n("pm.moscow.cycle"),onClick:function(){let a=f[(f.indexOf(r)+1)%f.length];i(a),d(()=>t(e,a))},children:r})}let j={todo:"doing",doing:"review",review:"done"};function k(){let e=(0,c.k)(),[a,n]=(0,l.useState)(!1),[i,t]=(0,l.useState)(""),[o,p]=(0,l.useState)("Should"),[m,u]=(0,l.useState)(3),[v,b]=(0,l.useTransition)();function h(){i.trim()&&b(async()=>{await d({title:i,moscow:o,points:m}),n(!1),t(""),p("Should"),u(3)})}return a?(0,s.jsx)("div",{className:"modal-overlay",onClick:()=>n(!1),children:(0,s.jsxs)("div",{className:"modal",onClick:e=>e.stopPropagation(),children:[(0,s.jsx)("div",{className:"modal-head",children:(0,s.jsxs)("div",{className:"modal-title",children:[(0,s.jsx)(r.I,{name:"goto",size:15})," ",e("pm.backlog.newItem")]})}),(0,s.jsxs)("div",{className:"modal-body",children:[(0,s.jsx)("label",{className:"form-label",children:e("pm.field.title")}),(0,s.jsx)("input",{className:"form-input",autoFocus:!0,placeholder:e("pm.backlog.titlePlaceholder"),value:i,onChange:e=>t(e.target.value),onKeyDown:e=>{"Enter"===e.key&&h()}}),(0,s.jsxs)("div",{style:{display:"flex",gap:12,marginTop:12},children:[(0,s.jsxs)("div",{style:{flex:1},children:[(0,s.jsx)("label",{className:"form-label",children:e("pm.field.priorityMoscow")}),(0,s.jsx)("select",{className:"form-input",value:o,onChange:e=>p(e.target.value),children:f.map(e=>(0,s.jsx)("option",{value:e,children:e},e))})]}),(0,s.jsxs)("div",{style:{width:110},children:[(0,s.jsx)("label",{className:"form-label",children:e("pm.field.points")}),(0,s.jsx)("input",{className:"form-input",type:"number",min:0,value:m,onChange:e=>u(Number(e.target.value)||0)})]})]})]}),(0,s.jsxs)("div",{className:"modal-foot",children:[(0,s.jsx)("button",{className:"btn-ghost",onClick:()=>n(!1),children:e("common.cancel")}),(0,s.jsx)("button",{className:"btn-accent",disabled:v||!i.trim(),onClick:h,children:e(v?"pm.backlog.adding":"common.add")})]})]})}):(0,s.jsxs)("button",{className:"btn-accent",onClick:()=>n(!0),children:[(0,s.jsx)(r.I,{name:"add",size:14})," ",e("pm.backlog.addItem")]})}function S({id:e,col:a}){let n=(0,c.k)(),[i,t]=(0,l.useTransition)(),d=j[a],u=(e,a,n,l)=>(0,s.jsx)("button",{className:"chip-sm",disabled:i,title:e,style:{cursor:"pointer",display:"inline-flex",alignItems:"center",color:l},onClick:()=>t(a),children:(0,s.jsx)(r.I,{name:n,size:12})});return"blocked"===a?(0,s.jsx)("span",{style:{display:"inline-flex",gap:6},children:u(n("pm.action.unblock"),()=>o(e),"play","var(--sx-string)")}):(0,s.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[d&&u(n("pm.action.advanceTo",{col:n(`pm.col.${d}`)}),()=>p(e,d),"chevronRight"),"done"!==a&&u(n("pm.action.block"),()=>m(e),"shield","#e8688f")]})}function N({id:e}){let a=(0,c.k)(),[n,i]=(0,l.useTransition)();return(0,s.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,s.jsx)("button",{className:"chip-sm",disabled:n,title:a("pm.action.promote"),style:{cursor:"pointer",display:"inline-flex",alignItems:"center"},onClick:()=>i(()=>u(e)),children:(0,s.jsx)(r.I,{name:"goto",size:12})}),(0,s.jsx)("button",{className:"chip-sm",disabled:n,title:a("pm.action.deleteBacklog"),style:{cursor:"pointer",display:"inline-flex",alignItems:"center"},onClick:()=>i(()=>v(e)),children:(0,s.jsx)(r.I,{name:"trash",size:12})})]})}},9987:(e,a,n)=>{"use strict";n.d(a,{t:()=>l});var s=n(7814);let l=(0,s.createServerReference)("4054b0647abaaa37034f58a7515bb92956b1c1075c",s.callServer,void 0,s.findSourceMapURL,"approveIssue")}},e=>{e.O(0,[9219,3219,8264,5701,6646,6834,7358],()=>e(e.s=4977)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1653],{768:(e,s,a)=>{"use strict";a.d(s,{PrepareDeploy:()=>z});var n=a(5076),l=a(8488),i=a(3283),d=a.n(i),c=a(8576),r=a(3728),t=a(2978),o=a(5629),p=a(7814);let h=(0,p.createServerReference)("007dec10ee03d9993a8699c11fad53871c4ab372eb",p.callServer,void 0,p.findSourceMapURL,"getDeployRun"),m=(0,p.createServerReference)("008833f61c552eb8dad854b7b3f3bc8aeb29adc406",p.callServer,void 0,p.findSourceMapURL,"runDeployPipeline"),x=(0,p.createServerReference)("001a4f8dece96f2292c6df52d8dc19a28f9e6bc1b6",p.callServer,void 0,p.findSourceMapURL,"previewCleanExport"),u=(0,p.createServerReference)("00d92e12c0f9722c47634ed35318003a224c62384f",p.callServer,void 0,p.findSourceMapURL,"getDeployEnv"),v=(0,p.createServerReference)("40d76c48fbe4f27f01bc814af6c4a06bddb9ab04a7",p.callServer,void 0,p.findSourceMapURL,"exportCleanSource"),j=(0,p.createServerReference)("00367eb06c10175f2e1ef100106d6058357a21c0fd",p.callServer,void 0,p.findSourceMapURL,"runBuildOnly"),g=(0,p.createServerReference)("00049dd926ff74ddfdb91de094958319207e44cfd3",p.callServer,void 0,p.findSourceMapURL,"runTestsOnly"),f=(0,p.createServerReference)("00324c5b49fef52299916a951f58a23b29407771cb",p.callServer,void 0,p.findSourceMapURL,"generateReadme"),b=(0,p.createServerReference)("00230340133712b5ff2155541766363fcd5c4e4df3",p.callServer,void 0,p.findSourceMapURL,"generateDeployDocs"),y=["analyze","deps","env","tests","secrets","build","validateBuild","agent","package"],N={idle:{bg:"var(--bg-active)",c:"var(--text-dim)"},running:{bg:"color-mix(in srgb, var(--accent) 18%, transparent)",c:"var(--accent)"},done:{bg:"rgba(179,217,122,.16)",c:"var(--sx-string)"},failed:{bg:"rgba(232,104,143,.16)",c:"#e8688f"},blocked:{bg:"rgba(232,104,143,.16)",c:"#e8688f"}},k={ok:{icon:"check",c:"var(--sx-string)"},warn:{icon:"warn",c:"var(--sx-number)"},fail:{icon:"close",c:"#e8688f"},todo:{icon:"dot",c:"var(--text-faint)"}};function w(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function z({hasToken:e,repos:s,project:a,env:i,run:p,checklist:I}){let S=(0,o.k)(),[,C]=(0,l.useTransition)(),[_,L]=(0,l.useState)(""),[R,E]=(0,l.useState)(p),[M,F]=(0,l.useState)(i),[q,B]=(0,l.useState)(I),[P,$]=(0,l.useState)(null),[D,U]=(0,l.useState)(!1),[A,O]=(0,l.useState)(!e),[T,G]=(0,l.useState)(""),[K,V]=(0,l.useState)(s[0]?.full??""),[W,H]=(0,l.useState)(""),[J,Q]=(0,l.useState)(s[0]?.branch??"main"),[X,Y]=(0,l.useState)(null),Z=(0,l.useRef)("running"===p.status),ee=(0,l.useRef)(p.startedAt??0),es=(0,l.useCallback)(()=>{h().then(e=>{E(e),B(e.checklist)})},[]);function ea(){window.dispatchEvent(new CustomEvent("constella:agent-run",{detail:{channel:"deploy"}}))}function en(e,s){L(e),ea(),C(async()=>{await s(),es(),L("")})}function el(){L("scan"),C(async()=>{$(await x()),L("")})}function ei(){L("env"),C(async()=>{F(await u()),L("")})}(0,l.useEffect)(()=>{if("running"!==R.status)return;let e=!0,s=setInterval(async()=>{let a=await h();e&&(E(a),"running"!==a.status&&(B(a.checklist),clearInterval(s)))},900);return()=>{e=!1,clearInterval(s)}},[R.status]);let ed=N[R.status]??N.idle,ec=R.steps.length?R.steps:y.map(e=>({key:e,label:e,status:"waiting"})),er=(s.length&&!A?K:W)||s[0]?.full||S("deploy.notConfigured"),et=!!P?.blocked,eo=!M.detected,ep=!A&&s.length>0?!K:!W.trim()||!T.trim();return(0,n.jsxs)("div",{className:"pd-page",children:[(0,n.jsxs)("div",{className:"hw-card pd-hero",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"cpu",size:20})}),(0,n.jsxs)("div",{className:"pd-hero-body",children:[(0,n.jsxs)("div",{className:"pd-hero-top",children:[(0,n.jsx)("div",{className:"hw-t",children:a?a.name:S("deploy.env.noProject")}),(0,n.jsx)("span",{className:"pd-pill",style:{background:ed.bg,color:ed.c},children:S("deploy.status."+R.status)})]}),(0,n.jsxs)("div",{className:"pd-hero-meta",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)(c.I,{name:"cpu",size:12})," ",M.framework??M.runtime,M.runLabel?` \xb7 ${M.runLabel}`:""]}),(0,n.jsxs)("span",{children:[(0,n.jsx)(c.I,{name:"goto",size:12})," ",er,J?` \xb7 ${J}`:""]}),(0,n.jsxs)("span",{children:[(0,n.jsx)(c.I,{name:"calendar",size:12})," ",S("deploy.lastPrep"),": ",R.startedAt?`${function(e){if(!e)return"";let s=Math.floor((Date.now()-e)/1e3);return s<60?`${s}s`:s<3600?`${Math.floor(s/60)}m`:s<86400?`${Math.floor(s/3600)}h`:`${Math.floor(s/86400)}d`}(R.startedAt)}`:S("deploy.never")]}),R.lastExport?.ok&&(0,n.jsxs)("span",{children:[(0,n.jsx)(c.I,{name:"check",size:12})," ",R.lastExport.sha]})]})]}),(0,n.jsxs)("div",{className:"pd-hero-actions",children:[(0,n.jsx)("button",{className:"btn-accent",disabled:"prep"===_||"running"===R.status||eo,onClick:function(){L("prep"),U(!0),ea(),E({...R,status:"running",steps:y.map(e=>({key:e,label:e,status:"waiting"}))}),C(async()=>{let e=await m();E(e),B(e.checklist),L("")})},children:"prep"===_||"running"===R.status?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(c.I,{name:"refresh",size:13})})," ",S("deploy.preparing")]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(c.I,{name:"play",size:13})," ","idle"===R.status?S("deploy.run"):S("deploy.runAgain")]})}),(0,n.jsxs)("button",{className:"btn-ghost",onClick:()=>document.getElementById("pd-export")?.scrollIntoView({behavior:"smooth"}),children:[(0,n.jsx)(c.I,{name:"arrowUp",size:13})," ",S("deploy.export")]}),(0,n.jsxs)("button",{className:"btn-ghost",onClick:()=>{U(e=>!e),document.getElementById("pd-logs")?.scrollIntoView({behavior:"smooth"})},children:[(0,n.jsx)(c.I,{name:"terminal",size:13})," ",S("deploy.logs")]})]})]}),(0,n.jsxs)("div",{className:"pd-cols",style:{alignItems:"stretch"},children:[(0,n.jsxs)("div",{className:"pd-col",children:[(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"split",size:18})}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"hw-t",children:S("deploy.pipeline")}),(0,n.jsxs)("div",{className:"hw-s",children:[M.framework??M.runtime,M.runLabel?` \xb7 ${M.runLabel}`:""]})]})]}),(0,n.jsx)("div",{className:"ceo-pipe",children:ec.map((e,s)=>{var a;return(0,n.jsxs)("div",{className:"ceo-stage "+function(e){switch(e){case"done":return"done";case"running":return"active";case"error":case"blocked":return"fail";case"needs-action":return"wait";default:return"todo"}}(e.status),children:[(0,n.jsx)("span",{className:"cs-dot",children:(a=e.status,"done"===a?(0,n.jsx)(c.I,{name:"check",size:13}):"error"===a||"blocked"===a?"!":"running"===a?(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(c.I,{name:"refresh",size:12})}):"needs-action"===a?"~":s+1)}),(0,n.jsxs)("div",{className:"cs-main",children:[(0,n.jsx)("div",{className:"cs-t",children:S("deploy.step."+e.key)}),e.detail&&(0,n.jsx)("div",{className:"cs-d",children:e.detail}),(0,n.jsx)("div",{className:"cs-meta",children:S("deploy.st."+e.status)})]})]},e.key)})})]}),(0,n.jsxs)("div",{id:"pd-logs",children:[(0,n.jsx)(t.AgentRunLive,{channel:"deploy",resume:Z.current,sinceSeq:ee.current,onFinish:es}),D&&R.buildLog&&(0,n.jsx)("pre",{className:"pd-log",children:R.buildLog})]}),(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"grid",size:18})}),(0,n.jsx)("div",{style:{flex:1},children:(0,n.jsx)("div",{className:"hw-t",children:S("deploy.qa.title")})})]}),(0,n.jsxs)("div",{className:"pd-quick",children:[(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_||eo,onClick:()=>en("build",j),children:[(0,n.jsx)(c.I,{name:"cpu",size:13})," ",S("deploy.qa.build")]}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_||eo,onClick:()=>en("tests",g),children:[(0,n.jsx)(c.I,{name:"check",size:13})," ",S("deploy.qa.tests")]}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_,onClick:el,children:[(0,n.jsx)(c.I,{name:"shield",size:13})," ",S("deploy.qa.scan")]}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_||eo,onClick:()=>en("readme",f),children:[(0,n.jsx)(c.I,{name:"doc",size:13})," ",S("deploy.qa.readme")]}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_||eo,onClick:()=>en("deploydocs",b),children:[(0,n.jsx)(c.I,{name:"doc",size:13})," ",S("deploy.qa.deploydocs")]}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_,onClick:ei,children:[(0,n.jsx)(c.I,{name:"settings",size:13})," ",S("deploy.qa.env")]}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_,onClick:el,children:[(0,n.jsx)(c.I,{name:"files",size:13})," ",S("deploy.qa.review")]}),(0,n.jsxs)(d(),{href:"/inbox",className:"btn-ghost",children:[(0,n.jsx)(c.I,{name:"bell",size:13})," ",S("deploy.qa.inbox")]})]})]}),(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"shield",size:18})}),(0,n.jsx)("div",{style:{flex:1},children:(0,n.jsx)("div",{className:"hw-t",children:S("deploy.sec.title")})}),(0,n.jsx)("button",{className:"btn-ghost",disabled:!!_,onClick:el,children:"scan"===_?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(c.I,{name:"refresh",size:12})})," ",S("deploy.sec.scanning")]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(c.I,{name:"refresh",size:12})," ",S("deploy.sec.rescan")]})})]}),null===P?(0,n.jsx)("div",{className:"home-empty",children:S("deploy.sec.notRun")}):P.secrets.length>0?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"pd-gate",children:[(0,n.jsx)(c.I,{name:"shield",size:14})," ",S("deploy.sec.blocked")]}),(0,n.jsx)("div",{className:"srv-log scroll",style:{maxHeight:150},children:P.secrets.map((e,s)=>(0,n.jsxs)("div",{className:"lg-warn",children:[e.file,":",e.line," \xb7 ",e.kind]},s))}),(0,n.jsxs)(d(),{href:"/inbox",className:"btn-ghost",style:{marginTop:8},children:[(0,n.jsx)(c.I,{name:"bell",size:13})," ",S("deploy.sec.openInbox")]})]}):(0,n.jsxs)("div",{className:"pd-ok",children:[(0,n.jsx)(c.I,{name:"check",size:14,style:{color:"var(--sx-string)"}})," ",S("deploy.sec.clean")]})]})]}),(0,n.jsxs)("div",{className:"pd-col",children:[(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"check",size:18})}),(0,n.jsx)("div",{style:{flex:1},children:(0,n.jsx)("div",{className:"hw-t",children:S("deploy.checklist")})})]}),(0,n.jsx)("div",{className:"pd-checklist",children:q.map(e=>{let s=k[e.status]??k.todo;return(0,n.jsxs)("div",{className:"pd-chk-row",children:[(0,n.jsx)(c.I,{name:s.icon,size:14,style:{color:s.c,flex:"0 0 auto"}}),(0,n.jsx)("span",{className:"pd-chk-label",children:S("deploy.chk."+e.key)}),e.detail&&(0,n.jsx)("span",{className:"pd-chk-detail",children:e.detail})]},e.key)})})]}),(0,n.jsxs)("div",{className:"hw-card",style:{flex:1,display:"flex",flexDirection:"column"},children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"settings",size:18})}),(0,n.jsx)("div",{style:{flex:1},children:(0,n.jsx)("div",{className:"hw-t",children:S("deploy.env.title")})}),(0,n.jsxs)("button",{className:"btn-ghost",disabled:!!_,onClick:ei,children:[(0,n.jsx)(c.I,{name:"refresh",size:12})," ",S("deploy.env.validate")]})]}),eo?(0,n.jsx)("div",{className:"home-empty",children:S("deploy.env.noProject")}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"pd-env-grid",children:[(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.runtime")}),(0,n.jsx)("span",{className:"pd-env-v",children:M.runtime}),M.framework&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.framework")}),(0,n.jsx)("span",{className:"pd-env-v",children:M.framework})]}),M.packageManager&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.pm")}),(0,n.jsx)("span",{className:"pd-env-v",children:M.packageManager})]}),(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.database")}),(0,n.jsx)("span",{className:"pd-env-v",children:"none"===M.database?S("deploy.env.none"):S("deploy.db."+M.database)}),M.ports.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.ports")}),(0,n.jsx)("span",{className:"pd-env-v",children:M.ports.join(", ")})]}),(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.docker")}),(0,n.jsx)("span",{className:"pd-env-v",children:M.hasDockerfile||M.hasCompose?S("deploy.env.yes"):S("deploy.env.no")}),(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.build")}),(0,n.jsx)("span",{className:"pd-env-v mono",children:M.buildScript||"—"}),(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.start")}),(0,n.jsx)("span",{className:"pd-env-v mono",children:M.startScript||"—"}),(0,n.jsx)("span",{className:"pd-env-k",children:S("deploy.env.mode")}),(0,n.jsx)("span",{className:"pd-env-v",children:M.mode})]}),(0,n.jsxs)("div",{className:"pd-env-vars",style:{marginTop:"auto"},children:[(0,n.jsx)("div",{className:"pa-flabel",children:S("deploy.env.requiredVars")}),0===M.requiredEnv.length&&0===M.unsetEnvKeys.length&&(0,n.jsx)("div",{className:"hw-s",children:"—"}),M.requiredEnv.map(e=>(0,n.jsx)("span",{className:"pd-var",children:e.key},e.key)),M.unsetEnvKeys.map(e=>(0,n.jsx)("span",{className:"pd-var warn",title:S("deploy.env.unset"),children:e},e))]})]})]})]})]}),(0,n.jsxs)("div",{className:"hw-card",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"files",size:18})}),(0,n.jsx)("div",{style:{flex:1},children:(0,n.jsx)("div",{className:"hw-t",children:S("deploy.pkg.title")})}),(0,n.jsx)("button",{className:"btn-ghost",disabled:!!_,onClick:el,children:"scan"===_?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(c.I,{name:"refresh",size:12})})," ",S("deploy.pkg.loading")]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(c.I,{name:"files",size:13})," ",S("deploy.pkg.review")]})})]}),null===P?(0,n.jsxs)("div",{className:"home-empty",children:[S("deploy.pkg.review"),"."]}):0===P.includedCount?(0,n.jsx)("div",{className:"home-empty",children:S("deploy.pkg.empty")}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"pd-pkg-meta",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("b",{children:P.includedCount})," ",S("deploy.pkg.included")]}),(0,n.jsxs)("span",{children:[(0,n.jsx)("b",{children:P.ignoredCount})," ",S("deploy.pkg.ignored")]}),(0,n.jsxs)("span",{children:[(0,n.jsx)("b",{children:w(P.totalBytes)})," ",S("deploy.pkg.size")]}),(0,n.jsxs)("span",{children:[S("deploy.pkg.buildOutput"),": ",(0,n.jsx)("b",{style:{color:P.hasBuild?"var(--sx-string)":"var(--text-dim)"},children:P.hasBuild?S("deploy.pkg.present"):S("deploy.pkg.absent")})]})]}),(0,n.jsx)("div",{className:"folder-grid",style:{marginTop:10},children:P.tree.map(e=>(0,n.jsxs)("div",{className:"folder-item",children:[(0,n.jsx)(c.I,{name:"dir"===e.kind?"files":"doc",size:15}),(0,n.jsx)("span",{className:"fi-name",children:e.name}),(0,n.jsx)("span",{className:"hw-s",style:{marginLeft:"auto"},children:"dir"===e.kind?`${e.childCount} ${S("deploy.pkg.files")}`:w(e.size??0)})]},e.name))}),P.docs.length>0&&(0,n.jsxs)("div",{className:"pd-pkg-docs",children:[S("deploy.pkg.docs"),": ",P.docs.map(e=>(0,n.jsx)("span",{className:"pd-var",children:e},e))]})]})]}),(0,n.jsxs)("div",{className:"hw-card",id:"pd-export",children:[(0,n.jsxs)("div",{className:"hw-head",children:[(0,n.jsx)("span",{className:"hw-ic",children:(0,n.jsx)(c.I,{name:"goto",size:18})}),(0,n.jsxs)("div",{style:{flex:1},children:[(0,n.jsx)("div",{className:"hw-t",children:S("deploy.exp.title")}),(0,n.jsx)("div",{className:"hw-s",children:S("deploy.exp.sub")})]})]}),(0,n.jsxs)("div",{className:"form-hint",style:{marginBottom:10},children:[(0,n.jsx)(c.I,{name:"shield",size:12})," ",S("deploy.exp.diff")]}),et&&(0,n.jsxs)("div",{className:"pd-gate",style:{marginBottom:10},children:[(0,n.jsx)(c.I,{name:"shield",size:14})," ",S("deploy.exp.gate")]}),s.length>0&&(0,n.jsxs)("div",{className:"seg",style:{marginBottom:10},children:[(0,n.jsx)("button",{className:"seg-opt"+(A?"":" on"),onClick:()=>O(!1),children:S("deploy.exp.connected")}),(0,n.jsx)("button",{className:"seg-opt"+(A?" on":""),onClick:()=>O(!0),children:S("deploy.exp.token")})]}),!A&&s.length>0?(0,n.jsxs)("div",{style:{marginBottom:8},children:[(0,n.jsx)("div",{className:"pa-flabel",style:{marginBottom:4},children:S("deploy.exp.target")}),(0,n.jsx)(r.m,{value:K,options:s.map(e=>({value:e.full,label:e.full,tag:e.private?S("deploy.exp.private"):S("deploy.exp.public")})),onChange:e=>{V(e),Q(s.find(s=>s.full===e)?.branch??"main")}})]}):(0,n.jsxs)("div",{style:{display:"grid",gap:8,marginBottom:8},children:[(0,n.jsx)("input",{className:"form-input mono",type:"password",placeholder:S("deploy.exp.tokenPh"),value:T,onChange:e=>G(e.target.value)}),(0,n.jsx)("input",{className:"form-input mono",placeholder:S("deploy.exp.repoPh"),value:W,onChange:e=>H(e.target.value)})]}),(0,n.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[(0,n.jsx)("input",{className:"form-input mono",style:{maxWidth:160},placeholder:S("deploy.exp.branch"),value:J,onChange:e=>Q(e.target.value)}),(0,n.jsx)("button",{className:"btn-accent",disabled:"export"===_||et||ep,onClick:function(){L("export"),Y(null);let e=(s.length&&!A?K:W).trim();C(async()=>{let s=await v({repo:e,token:A&&T.trim()||void 0,branch:J.trim()||"main"});Y(s),s.blocked&&s.secrets&&$(e=>e?{...e,secrets:s.secrets,blocked:!0}:e),L("")})},children:"export"===_?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"sync-spin",children:(0,n.jsx)(c.I,{name:"refresh",size:13})})," ",S("deploy.exp.exporting")]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(c.I,{name:"arrowUp",size:13})," ",S("deploy.exp.title")]})})]}),X&&(0,n.jsx)("div",{className:"pd-result",style:{marginTop:12},children:X.ok?(0,n.jsxs)("div",{style:{fontSize:12.5,color:"var(--sx-string)"},children:[(0,n.jsx)(c.I,{name:"check",size:13})," ",S("deploy.exp.pushedPrefix")," ",X.copied," ",S("deploy.exp.pushedSuffix")," \xb7 ",X.sha]}):X.blocked?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{style:{fontSize:12.5,color:"#e8688f",marginBottom:6},children:[(0,n.jsx)(c.I,{name:"shield",size:13})," ",X.error]}),(0,n.jsx)("div",{className:"srv-log scroll",style:{maxHeight:140},children:(X.secrets??[]).map((e,s)=>(0,n.jsxs)("div",{className:"lg-warn",children:[e.file,":",e.line," \xb7 ",e.kind]},s))}),(0,n.jsx)("div",{className:"form-hint",style:{marginTop:6},children:S("deploy.exp.blockedNote")})]}):(0,n.jsx)("div",{style:{fontSize:12.5,color:"#e8688f"},children:X.error})})]})]})}},2517:(e,s,a)=>{Promise.resolve().then(a.t.bind(a,3283,23)),Promise.resolve().then(a.bind(a,768)),Promise.resolve().then(a.bind(a,351)),Promise.resolve().then(a.bind(a,6588)),Promise.resolve().then(a.bind(a,4414)),Promise.resolve().then(a.bind(a,9286)),Promise.resolve().then(a.bind(a,5787))},3728:(e,s,a)=>{"use strict";a.d(s,{m:()=>r});var n=a(5076),l=a(8488),i=a(8576),d=a(9265),c=a(5629);function r({value:e,options:s,onChange:a,placeholder:t,mono:o,glyph:p,disabled:h,searchable:m}){let x=(0,c.k)(),[u,v]=(0,l.useState)(!1),[j,g]=(0,l.useState)(""),f=(0,l.useRef)(null),b=(0,l.useRef)(null),y=(0,l.useMemo)(()=>(s||[]).map(e=>"string"==typeof e?{value:e,label:e}:e),[s]),N=y.find(s=>s.value===e),k=(m??y.length>8)&&!h,w=j.trim().toLowerCase(),z=k&&w?y.filter(e=>(e.label+" "+e.value+" "+(e.sub||"")).toLowerCase().includes(w)):y;return(0,l.useEffect)(()=>{if(!u)return void g("");function e(e){f.current&&!f.current.contains(e.target)&&v(!1)}function s(e){"Escape"===e.key&&v(!1)}return document.addEventListener("mousedown",e),document.addEventListener("keydown",s),k&&requestAnimationFrame(()=>b.current?.focus()),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",s)}},[u,k]),(0,n.jsxs)("div",{className:"dd"+(u?" open":"")+(h?" disabled":""),ref:f,children:[(0,n.jsxs)("button",{type:"button",className:"dd-btn"+(o?" mono":""),onClick:()=>!h&&v(e=>!e),children:[p&&N&&(0,n.jsx)(d.W,{id:N.glyphId||N.value,size:20}),(0,n.jsx)("span",{className:"dd-val",children:N?N.label:(0,n.jsx)("span",{className:"dd-ph",children:t||x("common.selectEllipsis")})}),(0,n.jsx)(i.I,{name:"chevronDown",size:14})]}),u&&(0,n.jsxs)("div",{className:"dd-menu scroll",children:[k&&(0,n.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,n.jsx)(i.I,{name:"search",size:13}),(0,n.jsx)("input",{ref:b,value:j,placeholder:x("common.searchEllipsis"),onChange:e=>g(e.target.value),onKeyDown:e=>{"Enter"===e.key&&z[0]?(a(z[0].value),v(!1)):"Escape"===e.key&&j&&(e.stopPropagation(),g(""))},className:o?"mono":void 0,style:{flex:1,minWidth:0,background:"transparent",border:"none",outline:"none",color:"var(--text)",fontSize:12.5,fontFamily:o?"var(--mono-font)":"inherit"}}),j&&(0,n.jsx)("button",{type:"button",title:x("common.clear"),onClick:()=>{g(""),b.current?.focus()},style:{background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",display:"flex",padding:0},children:(0,n.jsx)(i.I,{name:"close",size:12})})]}),0===y.length&&(0,n.jsx)("div",{className:"dd-empty",children:x("common.noOptions")}),y.length>0&&0===z.length&&(0,n.jsx)("div",{className:"dd-empty",children:x("dropdown.noMatch",{q:j})}),z.map(s=>(0,n.jsxs)("button",{type:"button",className:"dd-opt"+(s.value===e?" on":""),onClick:()=>{a(s.value),v(!1)},children:[p&&(0,n.jsx)(d.W,{id:s.glyphId||s.value,size:22}),(0,n.jsxs)("span",{className:"dd-opt-main",children:[(0,n.jsx)("span",{className:"dd-opt-label"+(o?" mono":""),children:s.label}),s.sub&&(0,n.jsx)("span",{className:"dd-opt-sub",children:s.sub})]}),s.tag&&(0,n.jsx)("span",{className:"dd-opt-tag",children:s.tag}),s.value===e&&(0,n.jsx)(i.I,{name:"check",size:13})]},s.value))]})]})}},9265:(e,s,a)=>{"use strict";a.d(s,{W:()=>c});var n=a(5076),l=a(8488);let i={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"},d={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 c({id:e,size:s=34,radius:a}){let r,t=d[e],o=t?t[0]:"#5b6378",p=t?t[1]:(e||"?").slice(0,2).replace(/[^a-z0-9]/gi,"").toUpperCase(),h=(r=i[e])?`https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg/icons/${r}.svg`:null,[m,x]=(0,l.useState)(!1),u=null!=a?a:Math.round(.28*s),v=h&&!m,j=Math.round(.66*s);return(0,n.jsx)("span",{className:"prov-glyph",style:{width:s,height:s,flex:"0 0 "+s+"px",borderRadius:u,background:v?"#fff":"linear-gradient(150deg, "+o+", color-mix(in srgb, "+o+" 70%, #000))",color:"#fff",display:"grid",placeItems:"center",overflow:"hidden",fontSize:Math.round(.4*s),fontWeight:800,letterSpacing:"-.5px",boxShadow:v?"inset 0 0 0 1px rgba(0,0,0,.08)":"inset 0 1px 0 rgba(255,255,255,.18)"},children:v?(0,n.jsx)("img",{src:h,alt:"",width:j,height:j,loading:"lazy",onError:()=>x(!0),style:{width:j,height:j,objectFit:"contain",display:"block"}}):p})}}},e=>{e.O(0,[9219,3219,8264,5701,6646,6834,7358],()=>e(e.s=2517)),_N_E=e.O()}]);
|