n9router 0.4.11 â 0.4.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +9 -7
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +12 -0
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +6 -6
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/quota/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/translator/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error/page.js +3 -3
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +4 -4
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/antigravity-ide/route.js +1 -1
- package/.next/standalone/.next/server/app/api/antigravity-tools/import/route.js +1 -1
- package/.next/standalone/.next/server/app/api/antigravity-tools/import-refresh-tokens/route.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/login/route.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/logout/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/.next/standalone/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
- package/.next/standalone/.next/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/.next/standalone/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/.next/standalone/.next/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cloud/auth/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cloud/credentials/update/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cloud/model/resolve/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cloud/models/alias/route.js +1 -1
- package/.next/standalone/.next/server/app/api/combos/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/combos/route.js +1 -1
- package/.next/standalone/.next/server/app/api/health/route.js +1 -1
- package/.next/standalone/.next/server/app/api/init/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/account-health/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/request-detail/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/usage/route.js +1 -1
- package/.next/standalone/.next/server/app/api/keys/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/keys/route.js +1 -1
- package/.next/standalone/.next/server/app/api/locale/route.js +1 -1
- package/.next/standalone/.next/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/.next/standalone/.next/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/.next/standalone/.next/server/app/api/models/alias/route.js +1 -1
- package/.next/standalone/.next/server/app/api/models/availability/route.js +1 -1
- package/.next/standalone/.next/server/app/api/models/custom/route.js +1 -0
- package/.next/standalone/.next/server/app/api/models/custom/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/models/custom/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/models/test/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/cursor/auto-import/route.js +2 -2
- package/.next/standalone/.next/server/app/api/oauth/cursor/import/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/kiro/import/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/.next/standalone/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/.next/standalone/.next/server/app/api/pricing/route.js +1 -1
- package/.next/standalone/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/provider-nodes/route.js +1 -1
- package/.next/standalone/.next/server/app/api/provider-nodes/validate/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/test/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/client/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/suggested-models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/test-batch/route.js +1 -1
- package/.next/standalone/.next/server/app/api/providers/validate/route.js +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/route.js +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/.next/standalone/.next/server/app/api/settings/database/route.js +1 -1
- package/.next/standalone/.next/server/app/api/settings/proxy-test/route.js +1 -1
- package/.next/standalone/.next/server/app/api/settings/require-login/route.js +1 -1
- package/.next/standalone/.next/server/app/api/settings/route.js +1 -1
- package/.next/standalone/.next/server/app/api/shutdown/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tags/route.js +1 -1
- package/.next/standalone/.next/server/app/api/translator/console-logs/route.js +1 -1
- package/.next/standalone/.next/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/.next/standalone/.next/server/app/api/translator/load/route.js +1 -1
- package/.next/standalone/.next/server/app/api/translator/save/route.js +1 -1
- package/.next/standalone/.next/server/app/api/translator/send/route.js +1 -1
- package/.next/standalone/.next/server/app/api/translator/translate/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/disable/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/enable/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/status/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-check/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-login/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-start-daemon/route.js +2 -2
- package/.next/standalone/.next/server/app/api/usage/[connectionId]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/chart/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/history/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/logs/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/providers/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/request-details/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/request-logs/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/stats/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/stream/route.js +2 -2
- package/.next/standalone/.next/server/app/api/v1/api/chat/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/audio/speech/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/chat/completions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/embeddings/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/images/generations/route.js +1 -0
- package/.next/standalone/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/messages/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/responses/compact/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/responses/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1beta/models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/version/route.js +1 -1
- package/.next/standalone/.next/server/app/callback/page.js +2 -2
- package/.next/standalone/.next/server/app/callback/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/callback.html +1 -1
- package/.next/standalone/.next/server/app/callback.rsc +4 -4
- package/.next/standalone/.next/server/app/callback.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/callback.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/callback.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/callback.segments/callback.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/endpoint.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/profile.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings/pricing/page.js +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/usage.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.html +1 -1
- package/.next/standalone/.next/server/app/dashboard.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +4 -4
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing/page.js +2 -2
- package/.next/standalone/.next/server/app/landing/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/landing.html +1 -1
- package/.next/standalone/.next/server/app/landing.rsc +5 -5
- package/.next/standalone/.next/server/app/landing.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/landing.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/landing.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing.segments/landing.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login/page.js +2 -2
- package/.next/standalone/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +5 -5
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/manifest.webmanifest/route.js +2 -2
- package/.next/standalone/.next/server/app/page.js +2 -2
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +9 -7
- package/.next/standalone/.next/server/chunks/2409.js +1 -1
- package/.next/standalone/.next/server/chunks/289.js +1 -1
- package/.next/standalone/.next/server/chunks/318.js +46 -7
- package/.next/standalone/.next/server/chunks/3913.js +1 -1
- package/.next/standalone/.next/server/chunks/412.js +2 -2
- package/.next/standalone/.next/server/chunks/4404.js +1 -1
- package/.next/standalone/.next/server/chunks/4989.js +1 -1
- package/.next/standalone/.next/server/chunks/541.js +1 -1
- package/.next/standalone/.next/server/chunks/6143.js +1 -1
- package/.next/standalone/.next/server/chunks/6327.js +1 -0
- package/.next/standalone/.next/server/chunks/698.js +2 -2
- package/.next/standalone/.next/server/chunks/7595.js +1 -1
- package/.next/standalone/.next/server/chunks/7994.js +2 -2
- package/.next/standalone/.next/server/chunks/8590.js +1 -1
- package/.next/standalone/.next/server/chunks/8895.js +2 -2
- package/.next/standalone/.next/server/chunks/9012.js +1 -0
- package/.next/standalone/.next/server/chunks/9609.js +1 -1
- package/.next/standalone/.next/server/chunks/9718.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/.next/server/middleware.js +1 -1
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/0Zun-SGmQeErtYLNzZBgs/_buildManifest.js +1 -0
- package/.next/standalone/.next/static/chunks/1321-41c436f6bb05ac59.js +1 -0
- package/.next/standalone/.next/static/chunks/2589-1e100bbc64a63566.js +3 -0
- package/.next/standalone/.next/static/chunks/{5497-128b6aa090f976ca.js â 5497-27e4f352ffc837a8.js} +2 -2
- package/.next/standalone/.next/static/chunks/5518-99762b82309eb360.js +18 -0
- package/.next/{static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-ef33b45245f904be.js â standalone/.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-9ce27f199fdefee2.js} +6 -6
- package/.next/standalone/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-a2f476c1388be127.js +4 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/dashboard/providers/page-92d99df7ce85fd58.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/dashboard/translator/page-b33450f2520509c0.js +1 -0
- package/.next/standalone/.next/static/chunks/app/_global-error/page-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/antigravity-ide/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/antigravity-tools/import/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/antigravity-tools/import-refresh-tokens/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/login/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/claude-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/codex-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/copilot-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/droid-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/opencode-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cloud/auth/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cloud/credentials/update/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cloud/model/resolve/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/cloud/models/alias/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/combos/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/combos/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/health/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/init/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/internal/account-health/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/internal/request-detail/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/internal/usage/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/keys/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/keys/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/locale/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/media-providers/tts/voices/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/models/alias/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/models/availability/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/models/custom/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/models/test/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/[provider]/[action]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/cursor/auto-import/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/cursor/import/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/gitlab/pat/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/iflow/cookie/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/auto-import/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/import/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/pricing/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/provider-nodes/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/provider-nodes/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/provider-nodes/validate/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/test/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/test-models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/client/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/kilo/free-models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/suggested-models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/test-batch/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/providers/validate/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/[id]/test/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/settings/database/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/settings/proxy-test/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/settings/require-login/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/settings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/shutdown/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tags/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/translator/console-logs/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/translator/console-logs/stream/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/translator/load/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/translator/save/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/translator/send/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/translator/translate/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/disable/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/enable/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/status/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-check/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-disable/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-enable/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-install/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-login/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/[connectionId]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/chart/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/history/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/logs/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/providers/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/request-details/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/request-logs/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/stats/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/usage/stream/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/api/chat/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/audio/speech/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/chat/completions/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/embeddings/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/images/generations/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/messages/count_tokens/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/messages/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/responses/compact/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/responses/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1beta/models/[...path]/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/v1beta/models/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/version/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/landing/page-cc37244748faf1e0.js +1 -0
- package/.next/standalone/.next/static/chunks/app/manifest.webmanifest/route-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/app/page-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-0c258be50e29ac92.js +1 -0
- package/.next/standalone/.next/static/css/bf0e0274991c5437.css +1 -0
- package/.next/standalone/mitm/modelMapping.js +1 -1
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/public/providers/opencode-go.png +0 -0
- package/.next/standalone/src/mitm/modelMapping.js +1 -1
- package/.next/static/0Zun-SGmQeErtYLNzZBgs/_buildManifest.js +1 -0
- package/.next/static/chunks/1321-41c436f6bb05ac59.js +1 -0
- package/.next/static/chunks/2589-1e100bbc64a63566.js +3 -0
- package/.next/static/chunks/{5497-128b6aa090f976ca.js â 5497-27e4f352ffc837a8.js} +2 -2
- package/.next/static/chunks/5518-99762b82309eb360.js +18 -0
- package/.next/{standalone/.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-ef33b45245f904be.js â static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-9ce27f199fdefee2.js} +6 -6
- package/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-a2f476c1388be127.js +4 -0
- package/.next/static/chunks/app/(dashboard)/dashboard/providers/page-92d99df7ce85fd58.js +1 -0
- package/.next/static/chunks/app/(dashboard)/dashboard/translator/page-b33450f2520509c0.js +1 -0
- package/.next/static/chunks/app/_global-error/page-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/antigravity-ide/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/antigravity-tools/import/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/antigravity-tools/import-refresh-tokens/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/claude-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/codex-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/copilot-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/droid-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cli-tools/opencode-settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cloud/auth/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cloud/credentials/update/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cloud/model/resolve/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/cloud/models/alias/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/combos/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/combos/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/health/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/init/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/internal/account-health/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/internal/request-detail/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/internal/usage/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/keys/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/keys/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/locale/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/media-providers/tts/voices/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/models/alias/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/models/availability/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/models/custom/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/models/test/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/[provider]/[action]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/cursor/auto-import/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/cursor/import/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/gitlab/pat/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/iflow/cookie/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/kiro/auto-import/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/kiro/import/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/pricing/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/provider-nodes/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/provider-nodes/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/provider-nodes/validate/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/[id]/models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/[id]/test/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/[id]/test-models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/client/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/kilo/free-models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/suggested-models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/test-batch/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/providers/validate/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/proxy-pools/[id]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/proxy-pools/[id]/test/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/proxy-pools/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/settings/database/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/settings/proxy-test/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/settings/require-login/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/settings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/shutdown/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tags/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/translator/console-logs/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/translator/console-logs/stream/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/translator/load/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/translator/save/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/translator/send/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/translator/translate/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/disable/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/enable/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/status/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/tailscale-check/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/tailscale-disable/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/tailscale-enable/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/tailscale-install/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/tailscale-login/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/[connectionId]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/chart/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/history/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/logs/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/providers/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/request-details/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/request-logs/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/stats/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/usage/stream/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/api/chat/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/audio/speech/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/chat/completions/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/embeddings/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/images/generations/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/messages/count_tokens/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/messages/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/responses/compact/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/responses/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1beta/models/[...path]/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/v1beta/models/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/api/version/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/landing/page-cc37244748faf1e0.js +1 -0
- package/.next/static/chunks/app/manifest.webmanifest/route-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/app/page-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-0c258be50e29ac92.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-0c258be50e29ac92.js +1 -0
- package/.next/static/css/bf0e0274991c5437.css +1 -0
- package/package.json +1 -1
- package/public/providers/opencode-go.png +0 -0
- package/.next/standalone/.next/server/chunks/3646.js +0 -1
- package/.next/standalone/.next/server/chunks/7828.js +0 -1
- package/.next/standalone/.next/static/2wRwBit-UEdb6gyuYVUbo/_buildManifest.js +0 -1
- package/.next/standalone/.next/static/chunks/1321-cf2640262c8fa397.js +0 -1
- package/.next/standalone/.next/static/chunks/2589-c9b859d6add2fcaf.js +0 -3
- package/.next/standalone/.next/static/chunks/5518-0b2b4e48d860928f.js +0 -18
- package/.next/standalone/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-873730ee94a04440.js +0 -4
- package/.next/standalone/.next/static/chunks/app/(dashboard)/dashboard/providers/page-ec51df4b9677983e.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/dashboard/translator/page-488019e0b709e092.js +0 -1
- package/.next/standalone/.next/static/chunks/app/_global-error/page-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/antigravity-ide/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/antigravity-tools/import/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/antigravity-tools/import-refresh-tokens/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/login/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/claude-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/codex-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/copilot-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/droid-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cli-tools/opencode-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cloud/auth/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cloud/credentials/update/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cloud/model/resolve/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/cloud/models/alias/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/combos/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/combos/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/health/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/init/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/internal/account-health/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/internal/request-detail/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/internal/usage/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/keys/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/keys/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/locale/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/media-providers/tts/voices/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/models/alias/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/models/availability/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/models/test/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/[provider]/[action]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/cursor/auto-import/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/cursor/import/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/gitlab/pat/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/iflow/cookie/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/auto-import/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/import/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/pricing/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/provider-nodes/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/provider-nodes/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/provider-nodes/validate/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/test/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/[id]/test-models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/client/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/kilo/free-models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/suggested-models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/test-batch/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/providers/validate/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/[id]/test/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/settings/database/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/settings/proxy-test/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/settings/require-login/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/shutdown/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tags/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/translator/console-logs/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/translator/console-logs/stream/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/translator/load/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/translator/save/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/translator/send/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/translator/translate/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/disable/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/enable/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/status/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-check/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-disable/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-enable/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-install/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-login/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/[connectionId]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/chart/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/history/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/logs/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/providers/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/request-details/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/request-logs/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/stats/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/usage/stream/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/api/chat/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/audio/speech/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/chat/completions/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/embeddings/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/messages/count_tokens/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/messages/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/responses/compact/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/responses/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1beta/models/[...path]/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/v1beta/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/version/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/landing/page-3d60e04ae599f73c.js +0 -1
- package/.next/standalone/.next/static/chunks/app/manifest.webmanifest/route-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/app/page-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-808609f7dbe86bc4.js +0 -1
- package/.next/standalone/.next/static/css/2cedb50676072d1a.css +0 -1
- package/.next/static/2wRwBit-UEdb6gyuYVUbo/_buildManifest.js +0 -1
- package/.next/static/chunks/1321-cf2640262c8fa397.js +0 -1
- package/.next/static/chunks/2589-c9b859d6add2fcaf.js +0 -3
- package/.next/static/chunks/5518-0b2b4e48d860928f.js +0 -18
- package/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-873730ee94a04440.js +0 -4
- package/.next/static/chunks/app/(dashboard)/dashboard/providers/page-ec51df4b9677983e.js +0 -1
- package/.next/static/chunks/app/(dashboard)/dashboard/translator/page-488019e0b709e092.js +0 -1
- package/.next/static/chunks/app/_global-error/page-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/antigravity-ide/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/antigravity-tools/import/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/antigravity-tools/import-refresh-tokens/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/claude-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/codex-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/copilot-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/droid-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cli-tools/opencode-settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cloud/auth/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cloud/credentials/update/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cloud/model/resolve/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/cloud/models/alias/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/combos/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/combos/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/health/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/init/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/internal/account-health/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/internal/request-detail/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/internal/usage/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/keys/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/keys/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/locale/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/media-providers/tts/voices/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/models/alias/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/models/availability/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/models/test/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/[provider]/[action]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/cursor/auto-import/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/cursor/import/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/gitlab/pat/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/iflow/cookie/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/kiro/auto-import/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/kiro/import/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/pricing/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/provider-nodes/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/provider-nodes/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/provider-nodes/validate/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/[id]/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/[id]/test/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/[id]/test-models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/client/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/kilo/free-models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/suggested-models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/test-batch/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/providers/validate/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/proxy-pools/[id]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/proxy-pools/[id]/test/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/proxy-pools/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/settings/database/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/settings/proxy-test/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/settings/require-login/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/settings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/shutdown/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tags/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/translator/console-logs/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/translator/console-logs/stream/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/translator/load/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/translator/save/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/translator/send/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/translator/translate/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/disable/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/enable/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/status/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/tailscale-check/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/tailscale-disable/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/tailscale-enable/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/tailscale-install/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/tailscale-login/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/[connectionId]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/chart/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/history/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/logs/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/providers/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/request-details/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/request-logs/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/stats/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/usage/stream/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/api/chat/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/audio/speech/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/chat/completions/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/embeddings/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/messages/count_tokens/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/messages/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/responses/compact/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/responses/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1beta/models/[...path]/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/v1beta/models/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/api/version/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/landing/page-3d60e04ae599f73c.js +0 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/app/page-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-808609f7dbe86bc4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-808609f7dbe86bc4.js +0 -1
- package/.next/static/css/2cedb50676072d1a.css +0 -1
- /package/.next/standalone/.next/static/{2wRwBit-UEdb6gyuYVUbo â 0Zun-SGmQeErtYLNzZBgs}/_ssgManifest.js +0 -0
- /package/.next/static/{2wRwBit-UEdb6gyuYVUbo â 0Zun-SGmQeErtYLNzZBgs}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=4404,exports.ids=[4404],exports.modules={35024:(a,b,c)=>{c.d(b,{x:()=>g});var d=c(21820);let e={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},f="https://api.kimi.com/coding/v1/messages",g={claude:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,d.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,d.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,d.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,d.platform)()}`}}(),"X-Stainless-Timeout":"600"},clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://api.anthropic.com/v1/oauth/token"},gemini:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},"gemini-cli":{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},codex:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",headers:{originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},clientId:"app_EMoamEEZ73f0CkXaXp7hrann",clientSecret:"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",tokenUrl:"https://auth.openai.com/oauth/token"},qwen:{baseUrl:"https://portal.qwen.ai/v1/chat/completions",format:"openai",clientId:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",format:"openai",headers:{"User-Agent":"iFlow-Cli"},clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},qoder:{baseUrl:"https://api.qoder.com/v1/chat/completions",format:"openai",headers:{"User-Agent":"Qoder-Cli"},clientId:process.env.QODER_OAUTH_CLIENT_ID||"10009311001",clientSecret:process.env.QODER_OAUTH_CLIENT_SECRET||"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://api.qoder.com/oauth/token",authUrl:"https://qoder.com/oauth/authorize"},antigravity:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":`antigravity/1.107.0 ${(0,d.platform)()}/${(0,d.arch)()}`},clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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"},openrouter:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},openai:{baseUrl:"https://api.openai.com/v1/chat/completions",format:"openai"},glm:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",headers:{...e}},"glm-cn":{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",format:"openai",headers:{}},kimi:{baseUrl:f,format:"claude",headers:{...e}},minimax:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",headers:{...e}},"minimax-cn":{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",headers:{...e}},alicode:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"alicode-intl":{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},github:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",format:"openai",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},clientId:"Iv1.b507a08c87ecfe98"},kiro:{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","User-Agent":"AWS-SDK-JS/3.0.0 kiro-ide/1.0.0","X-Amz-User-Agent":"aws-sdk-js/3.0.0 kiro-ide/1.0.0"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},cursor:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.1.0"},"kimi-coding":{baseUrl:f,format:"claude",headers:{...e},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token"},kilocode:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",format:"openai",headers:{}},opencode:{baseUrl:"http://localhost:4096/v1/chat/completions",format:"openai",headers:{}},cline:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},nvidia:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",format:"openai"},anthropic:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...e}},deepseek:{baseUrl:"https://api.deepseek.com/chat/completions",format:"openai"},groq:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",format:"openai"},xai:{baseUrl:"https://api.x.ai/v1/chat/completions",format:"openai"},mistral:{baseUrl:"https://api.mistral.ai/v1/chat/completions",format:"openai"},perplexity:{baseUrl:"https://api.perplexity.ai/chat/completions",format:"openai"},together:{baseUrl:"https://api.together.xyz/v1/chat/completions",format:"openai"},fireworks:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",format:"openai"},cerebras:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",format:"openai"},cohere:{baseUrl:"https://api.cohere.ai/v1/chat/completions",format:"openai"},nebius:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",format:"openai"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1/chat/completions",format:"openai"},hyperbolic:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",format:"openai"},deepgram:{baseUrl:"https://api.deepgram.com/v1/listen",format:"openai"},assemblyai:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",format:"openai"},nanobanana:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",format:"openai"},chutes:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",format:"openai"},ollama:{baseUrl:"https://ollama.com/api/chat",format:"ollama"},"ollama-local":{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},vertex:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},"vertex-partner":{baseUrl:"https://aiplatform.googleapis.com",format:"openai"},gitlab:{baseUrl:"https://gitlab.com/api/v4/chat/completions",format:"openai"},codebuddy:{baseUrl:"https://copilot.tencent.com/v1/chat/completions",format:"openai"},opencode:{baseUrl:"https://opencode.ai",format:"openai",headers:{"x-opencode-client":"desktop"},noAuth:!0}}},44404:(a,b,c)=>{c.d(b,{Xg:()=>o,vq:()=>j,fZ:()=>l,cY:()=>p,ux:()=>m,SM:()=>k});var d=c(35024);let e={alloy:{id:"alloy",name:"Alloy"},ash:{id:"ash",name:"Ash"},ballad:{id:"ballad",name:"Ballad"},cedar:{id:"cedar",name:"Cedar"},coral:{id:"coral",name:"Coral"},echo:{id:"echo",name:"Echo"},fable:{id:"fable",name:"Fable"},marin:{id:"marin",name:"Marin"},nova:{id:"nova",name:"Nova"},onyx:{id:"onyx",name:"Onyx"},sage:{id:"sage",name:"Sage"},shimmer:{id:"shimmer",name:"Shimmer"},verse:{id:"verse",name:"Verse"}},f=(...a)=>a.map(a=>({...e[a],type:"tts"})),g=f("alloy","ash","coral","echo","fable","nova","onyx","sage","shimmer"),h=f("alloy","ash","ballad","cedar","coral","echo","fable","marin","nova","onyx","sage","shimmer","verse"),i={openai:{models:[{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"tts-1",name:"TTS-1",type:"tts"}],voices:{"gpt-4o-mini-tts":h,"tts-1":g,"tts-1-hd":g},allVoices:h},openrouter:{models:[{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],voices:{"openai/gpt-4o-mini-tts":h,"openai/tts-1":g,"openai/tts-1-hd":g},allVoices:h},elevenlabs:{models:[{id:"eleven_flash_v2_5",name:"Flash v2.5 (Fastest)",type:"tts"},{id:"eleven_turbo_v2_5",name:"Turbo v2.5 (Fast)",type:"tts"},{id:"eleven_multilingual_v2",name:"Multilingual v2 (Quality)",type:"tts"},{id:"eleven_monolingual_v1",name:"Monolingual v1 (English)",type:"tts"}]},"edge-tts":{defaults:[{id:"en-US-AriaNeural",name:"Aria (en-US)",type:"tts"},{id:"en-US-GuyNeural",name:"Guy (en-US)",type:"tts"},{id:"en-GB-SoniaNeural",name:"Sonia (en-GB)",type:"tts"},{id:"vi-VN-HoaiMyNeural",name:"Hoai My (vi-VN)",type:"tts"},{id:"vi-VN-NamMinhNeural",name:"Nam Minh (vi-VN)",type:"tts"},{id:"zh-CN-XiaoxiaoNeural",name:"Xiaoxiao (zh-CN)",type:"tts"},{id:"zh-CN-YunxiNeural",name:"Yunxi (zh-CN)",type:"tts"},{id:"fr-FR-DeniseNeural",name:"Denise (fr-FR)",type:"tts"},{id:"de-DE-KatjaNeural",name:"Katja (de-DE)",type:"tts"},{id:"ja-JP-NanamiNeural",name:"Nanami (ja-JP)",type:"tts"},{id:"ko-KR-SunHiNeural",name:"SunHi (ko-KR)",type:"tts"}]},"local-device":{defaults:[{id:"default",name:"System Default Voice",type:"tts"}]},"google-tts":{defaults:[{id:"af",name:"Afrikaans",type:"tts"},{id:"ar",name:"Arabic",type:"tts"},{id:"bg",name:"Bulgarian",type:"tts"},{id:"bn",name:"Bengali",type:"tts"},{id:"bs",name:"Bosnian",type:"tts"},{id:"ca",name:"Catalan",type:"tts"},{id:"cs",name:"Czech",type:"tts"},{id:"cy",name:"Welsh",type:"tts"},{id:"da",name:"Danish",type:"tts"},{id:"de",name:"German",type:"tts"},{id:"el",name:"Greek",type:"tts"},{id:"en",name:"English",type:"tts"},{id:"eo",name:"Esperanto",type:"tts"},{id:"es",name:"Spanish",type:"tts"},{id:"et",name:"Estonian",type:"tts"},{id:"fi",name:"Finnish",type:"tts"},{id:"fr",name:"French",type:"tts"},{id:"gu",name:"Gujarati",type:"tts"},{id:"hi",name:"Hindi",type:"tts"},{id:"hr",name:"Croatian",type:"tts"},{id:"hu",name:"Hungarian",type:"tts"},{id:"hy",name:"Armenian",type:"tts"},{id:"id",name:"Indonesian",type:"tts"},{id:"is",name:"Icelandic",type:"tts"},{id:"it",name:"Italian",type:"tts"},{id:"ja",name:"Japanese",type:"tts"},{id:"jw",name:"Javanese",type:"tts"},{id:"km",name:"Khmer",type:"tts"},{id:"kn",name:"Kannada",type:"tts"},{id:"ko",name:"Korean",type:"tts"},{id:"la",name:"Latin",type:"tts"},{id:"lv",name:"Latvian",type:"tts"},{id:"mk",name:"Macedonian",type:"tts"},{id:"ml",name:"Malayalam",type:"tts"},{id:"mr",name:"Marathi",type:"tts"},{id:"my",name:"Myanmar (Burmese)",type:"tts"},{id:"ne",name:"Nepali",type:"tts"},{id:"nl",name:"Dutch",type:"tts"},{id:"no",name:"Norwegian",type:"tts"},{id:"pl",name:"Polish",type:"tts"},{id:"pt",name:"Portuguese",type:"tts"},{id:"ro",name:"Romanian",type:"tts"},{id:"ru",name:"Russian",type:"tts"},{id:"si",name:"Sinhala",type:"tts"},{id:"sk",name:"Slovak",type:"tts"},{id:"sq",name:"Albanian",type:"tts"},{id:"sr",name:"Serbian",type:"tts"},{id:"su",name:"Sundanese",type:"tts"},{id:"sv",name:"Swedish",type:"tts"},{id:"sw",name:"Swahili",type:"tts"},{id:"ta",name:"Tamil",type:"tts"},{id:"te",name:"Telugu",type:"tts"},{id:"th",name:"Thai",type:"tts"},{id:"tl",name:"Filipino",type:"tts"},{id:"tr",name:"Turkish",type:"tts"},{id:"uk",name:"Ukrainian",type:"tts"},{id:"ur",name:"Urdu",type:"tts"},{id:"vi",name:"Vietnamese",type:"tts"},{id:"zh-CN",name:"Chinese (Simplified)",type:"tts"},{id:"zh-TW",name:"Chinese (Traditional)",type:"tts"}]}},j={cc:[{id:"claude-opus-4-7",name:"Claude Opus 4.7"},{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}],cx:[{id:"gpt-5.4",name:"GPT 5.4"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.3-codex-spark",name:"GPT 5.3 Codex Spark"},{id:"gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini"},{id:"gpt-5.1-codex-mini-high",name:"GPT 5.1 Codex Mini (High)"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.1-codex-max",name:"GPT 5.1 Codex Max"},{id:"gpt-5.1-codex",name:"GPT 5.1 Codex"},{id:"gpt-5.1",name:"GPT 5.1"},{id:"gpt-5-codex",name:"GPT 5 Codex"},{id:"gpt-5-codex-mini",name:"GPT 5 Codex Mini"}],gc:[{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"}],qw:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"},{id:"coder-model",name:"Qwen3.6 Coder Model"}],if:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"},{id:"qwen3-max-preview",name:"Qwen3 Max Preview"},{id:"qwen3-235b",name:"Qwen3 235B A22B"},{id:"qwen3-235b-a22b-instruct",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking"},{id:"qwen3-32b",name:"Qwen3 32B"},{id:"kimi-k2",name:"Kimi K2"},{id:"deepseek-v3.2",name:"DeepSeek V3.2 Exp"},{id:"deepseek-v3.1",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-v3",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"glm-4.7",name:"GLM 4.7"},{id:"iflow-rome-30ba3b",name:"iFlow ROME"}],ag:[{id:"gemini-3.1-pro-high",name:"Gemini 3 Pro High"},{id:"gemini-3.1-pro-low",name:"Gemini 3 Pro Low"},{id:"gemini-3-flash",name:"Gemini 3 Flash",thinking:!1},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking"},{id:"gpt-oss-120b-medium",name:"GPT OSS 120B Medium"}],gh:[{id:"gpt-3.5-turbo",name:"GPT-3.5 Turbo"},{id:"gpt-4",name:"GPT-4"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-codex",name:"GPT-5 Codex"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5.1-codex",name:"GPT-5.1 Codex"},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini"},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"gpt-5.4",name:"GPT-5.4"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.1",name:"Claude Opus 4.1"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"}],kr:[{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"deepseek-3.2",name:"DeepSeek 3.2",strip:["image","audio"]},{id:"deepseek-3.1",name:"DeepSeek 3.1",strip:["image","audio"]},{id:"qwen3-coder-next",name:"Qwen3 Coder Next",strip:["image","audio"]},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"}],cu:[{id:"default",name:"Auto (Server Picks)"},{id:"claude-4.5-opus-high-thinking",name:"Claude 4.5 Opus High Thinking"},{id:"claude-4.5-opus-high",name:"Claude 4.5 Opus High"},{id:"claude-4.5-sonnet-thinking",name:"Claude 4.5 Sonnet Thinking"},{id:"claude-4.5-sonnet",name:"Claude 4.5 Sonnet"},{id:"claude-4.5-haiku",name:"Claude 4.5 Haiku"},{id:"claude-4.5-opus",name:"Claude 4.5 Opus"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"claude-4.6-opus-max",name:"Claude 4.6 Opus Max"},{id:"claude-4.6-sonnet-medium-thinking",name:"Claude 4.6 Sonnet Medium Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"}],kmc:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],kc:[{id:"anthropic/claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"anthropic/claude-opus-4-20250514",name:"Claude Opus 4"},{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"openai/gpt-4.1",name:"GPT-4.1"},{id:"openai/o3",name:"o3"},{id:"deepseek/deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek/deepseek-reasoner",name:"DeepSeek Reasoner"}],oc:[],cl:[{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7"},{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6"},{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"kwaipilot/kat-coder-pro",name:"KAT Coder Pro"}],openai:[{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-nano",name:"GPT-5 Nano"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"o3",name:"O3"},{id:"o3-mini",name:"O3 Mini"},{id:"o3-pro",name:"O3 Pro"},{id:"o4-mini",name:"O4 Mini"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",type:"embedding"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small",type:"embedding"},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",type:"embedding"},{id:"tts-1",name:"TTS-1",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"}],anthropic:[{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"claude-opus-4-20250514",name:"Claude Opus 4"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"}],gemini:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash"},{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite"},{id:"gemma-4-31b-it",name:"Gemma 4 31B IT"},{id:"gemini-embedding-2-preview",name:"Gemini Embedding 2 Preview",type:"embedding"},{id:"gemini-embedding-001",name:"Gemini Embedding 001",type:"embedding"},{id:"text-embedding-005",name:"Text Embedding 005",type:"embedding"},{id:"text-embedding-004",name:"Text Embedding 004 (Legacy)",type:"embedding"}],openrouter:[{id:"openai/text-embedding-3-large",name:"OpenAI Text Embedding 3 Large",type:"embedding"},{id:"openai/text-embedding-3-small",name:"OpenAI Text Embedding 3 Small",type:"embedding"},{id:"openai/text-embedding-ada-002",name:"OpenAI Text Embedding Ada 002",type:"embedding"},{id:"qwen/qwen3-embedding-8b",name:"Qwen3 Embedding 8B",type:"embedding"},{id:"perplexity/pplx-embed-v1-4b",name:"Perplexity Embed V1 4B",type:"embedding"},{id:"perplexity/pplx-embed-v1-0.6b",name:"Perplexity Embed V1 0.6B",type:"embedding"},{id:"nvidia/llama-nemotron-embed-vl-1b-v2:free",name:"NVIDIA Nemotron Embed VL 1B V2 (Free)",type:"embedding"},{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],glm:[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM 4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"}],"glm-cn":[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM-4.7"},{id:"glm-4.6",name:"GLM-4.6"},{id:"glm-4.5-air",name:"GLM-4.5-Air"}],kimi:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],minimax:[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"}],blackbox:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Legacy)"},{id:"claude-opus-4-6",name:"Claude Opus 4.6 (Legacy)"},{id:"deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek-v3-671b",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"o1",name:"OpenAI o1"},{id:"o3-mini",name:"OpenAI o3-mini"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"}],"minimax-cn":[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"}],alicode:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-max-2026-01-23",name:"Qwen3 Max"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],"alicode-intl":[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],deepseek:[{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}],groq:[{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"openai/gpt-oss-120b",name:"GPT-OSS 120B"}],xai:[{id:"grok-4",name:"Grok 4"},{id:"grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning"},{id:"grok-code-fast-1",name:"Grok Code Fast"},{id:"grok-3",name:"Grok 3"}],mistral:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"}],perplexity:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}],together:[{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B Turbo"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"}],fireworks:[{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1"},{id:"accounts/fireworks/models/llama-v3p3-70b-instruct",name:"Llama 3.3 70B"},{id:"accounts/fireworks/models/qwen3-235b-a22b",name:"Qwen3 235B"}],cerebras:[{id:"gpt-oss-120b",name:"GPT OSS 120B"},{id:"zai-glm-4.7",name:"ZAI GLM 4.7"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout"},{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B"},{id:"qwen-3-32b",name:"Qwen3 32B"}],cohere:[{id:"command-r-plus-08-2024",name:"Command R+ (Aug 2024)"},{id:"command-r-08-2024",name:"Command R (Aug 2024)"},{id:"command-a-03-2025",name:"Command A (Mar 2025)"}],nvidia:[{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"z-ai/glm4.7",name:"GLM 4.7"}],nebius:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"}],siliconflow:[{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B"},{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3 Coder 480B"},{id:"Qwen/Qwen3-32B",name:"Qwen3 32B"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-4.7",name:"GLM 4.7"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"baidu/ERNIE-4.5-300B-A47B",name:"ERNIE 4.5 300B"}],hyperbolic:[{id:"Qwen/QwQ-32B",name:"QwQ 32B"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"meta-llama/Llama-3.2-3B-Instruct",name:"Llama 3.2 3B"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"},{id:"NousResearch/Hermes-3-Llama-3.1-70B",name:"Hermes 3 70B"}],ollama:[{id:"gpt-oss:120b",name:"GPT OSS 120B"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"minimax-m2.5",name:"MiniMax M2.5"},{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"qwen3.5",name:"Qwen3.5"}],vertex:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"}],"vertex-partner":[{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2 (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-thinking-maas",name:"Qwen3 Next 80B Thinking (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-instruct-maas",name:"Qwen3 Next 80B Instruct (Vertex)"},{id:"zai-org/glm-5-maas",name:"GLM-5 (Vertex)"}],...function(){let a={};for(let[b,c]of Object.entries(i))c.models&&(a[`${b}-tts-models`]=c.models),c.allVoices&&(a[`${b}-tts-voices`]=c.allVoices),c.defaults&&(a[b]=c.defaults);return a["openai-tts-voices"]=i.openai.allVoices,a["openrouter-tts-voices"]=i.openrouter.allVoices,a}()};function k(a){return j[a]||[]}function l(a){let b=j[a];return b?.[0]?.id||null}function m(a,b){let c=j[a];if(!c)return null;let d=c.find(a=>a.id===b);return d?.targetFormat||null}let n={claude:"cc",codex:"cx","gemini-cli":"gc",qwen:"qw",iflow:"if",antigravity:"ag",github:"gh",kiro:"kr",cursor:"cu","kimi-coding":"kmc",kilocode:"kc",cline:"cl",opencode:"oc",vertex:"vertex","vertex-partner":"vertex-partner"},o=Object.fromEntries(Object.keys(d.x).map(a=>[a,n[a]||a]));function p(a,b){let c=j[a]?.find(a=>a.id===b);return c?.strip||[]}}};
|
|
1
|
+
"use strict";exports.id=4404,exports.ids=[4404],exports.modules={35024:(a,b,c)=>{c.d(b,{Ak:()=>h,xq:()=>g});var d=c(21820);let e={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},f="https://api.kimi.com/coding/v1/messages",g={claude:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,d.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,d.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,d.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,d.platform)()}`}}(),"X-Stainless-Timeout":"600"},clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://api.anthropic.com/v1/oauth/token"},gemini:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},"gemini-cli":{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},codex:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",headers:{originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},clientId:"app_EMoamEEZ73f0CkXaXp7hrann",tokenUrl:"https://auth.openai.com/oauth/token"},qwen:{baseUrl:"https://portal.qwen.ai/v1/chat/completions",format:"openai",clientId:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",format:"openai",headers:{"User-Agent":"iFlow-Cli"},clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},qoder:{baseUrl:"https://api.qoder.com/v1/chat/completions",format:"openai",headers:{"User-Agent":"Qoder-Cli"},clientId:process.env.QODER_OAUTH_CLIENT_ID||"10009311001",clientSecret:process.env.QODER_OAUTH_CLIENT_SECRET||"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://api.qoder.com/oauth/token",authUrl:"https://qoder.com/oauth/authorize"},antigravity:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":`antigravity/1.107.0 ${(0,d.platform)()}/${(0,d.arch)()}`},clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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"},openrouter:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},openai:{baseUrl:"https://api.openai.com/v1/chat/completions",format:"openai"},glm:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",headers:{...e}},"glm-cn":{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",format:"openai",headers:{}},kimi:{baseUrl:f,format:"claude",headers:{...e}},minimax:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",headers:{...e}},"minimax-cn":{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",headers:{...e}},alicode:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"alicode-intl":{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},github:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",format:"openai",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},clientId:"Iv1.b507a08c87ecfe98"},kiro:{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","User-Agent":"AWS-SDK-JS/3.0.0 kiro-ide/1.0.0","X-Amz-User-Agent":"aws-sdk-js/3.0.0 kiro-ide/1.0.0"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},cursor:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.1.0"},"kimi-coding":{baseUrl:f,format:"claude",headers:{...e},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token"},kilocode:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",format:"openai",headers:{}},opencode:{baseUrl:"http://localhost:4096/v1/chat/completions",format:"openai",headers:{}},cline:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},nvidia:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",format:"openai"},anthropic:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...e}},deepseek:{baseUrl:"https://api.deepseek.com/chat/completions",format:"openai"},groq:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",format:"openai"},xai:{baseUrl:"https://api.x.ai/v1/chat/completions",format:"openai"},mistral:{baseUrl:"https://api.mistral.ai/v1/chat/completions",format:"openai"},perplexity:{baseUrl:"https://api.perplexity.ai/chat/completions",format:"openai"},together:{baseUrl:"https://api.together.xyz/v1/chat/completions",format:"openai"},fireworks:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",format:"openai"},cerebras:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",format:"openai"},cohere:{baseUrl:"https://api.cohere.ai/v1/chat/completions",format:"openai"},nebius:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",format:"openai"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1/chat/completions",format:"openai"},hyperbolic:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",format:"openai"},deepgram:{baseUrl:"https://api.deepgram.com/v1/listen",format:"openai"},assemblyai:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",format:"openai"},nanobanana:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",format:"openai"},chutes:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",format:"openai"},ollama:{baseUrl:"https://ollama.com/api/chat",format:"ollama"},"ollama-local":{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},vertex:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},"vertex-partner":{baseUrl:"https://aiplatform.googleapis.com",format:"openai"},gitlab:{baseUrl:"https://gitlab.com/api/v4/chat/completions",format:"openai"},codebuddy:{baseUrl:"https://copilot.tencent.com/v1/chat/completions",format:"openai"},opencode:{baseUrl:"https://opencode.ai",format:"openai",headers:{"x-opencode-client":"desktop"},noAuth:!0},"opencode-go":{baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",format:"openai",headers:{}},"grok-web":{baseUrl:"https://grok.com/rest/app-chat/conversations/new",format:"grok-web",authType:"cookie"},"perplexity-web":{baseUrl:"https://www.perplexity.ai/rest/sse/perplexity_ask",format:"perplexity-web",authType:"cookie"}};function h(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}},44404:(a,b,c)=>{c.d(b,{Xg:()=>o,vq:()=>j,fZ:()=>l,cY:()=>p,ux:()=>m,SM:()=>k});var d=c(35024);let e={alloy:{id:"alloy",name:"Alloy"},ash:{id:"ash",name:"Ash"},ballad:{id:"ballad",name:"Ballad"},cedar:{id:"cedar",name:"Cedar"},coral:{id:"coral",name:"Coral"},echo:{id:"echo",name:"Echo"},fable:{id:"fable",name:"Fable"},marin:{id:"marin",name:"Marin"},nova:{id:"nova",name:"Nova"},onyx:{id:"onyx",name:"Onyx"},sage:{id:"sage",name:"Sage"},shimmer:{id:"shimmer",name:"Shimmer"},verse:{id:"verse",name:"Verse"}},f=(...a)=>a.map(a=>({...e[a],type:"tts"})),g=f("alloy","ash","coral","echo","fable","nova","onyx","sage","shimmer"),h=f("alloy","ash","ballad","cedar","coral","echo","fable","marin","nova","onyx","sage","shimmer","verse"),i={openai:{models:[{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"tts-1",name:"TTS-1",type:"tts"}],voices:{"gpt-4o-mini-tts":h,"tts-1":g,"tts-1-hd":g},allVoices:h},openrouter:{models:[{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],voices:{"openai/gpt-4o-mini-tts":h,"openai/tts-1":g,"openai/tts-1-hd":g},allVoices:h},elevenlabs:{models:[{id:"eleven_flash_v2_5",name:"Flash v2.5 (Fastest)",type:"tts"},{id:"eleven_turbo_v2_5",name:"Turbo v2.5 (Fast)",type:"tts"},{id:"eleven_multilingual_v2",name:"Multilingual v2 (Quality)",type:"tts"},{id:"eleven_monolingual_v1",name:"Monolingual v1 (English)",type:"tts"}]},"edge-tts":{defaults:[{id:"en-US-AriaNeural",name:"Aria (en-US)",type:"tts"},{id:"en-US-GuyNeural",name:"Guy (en-US)",type:"tts"},{id:"en-GB-SoniaNeural",name:"Sonia (en-GB)",type:"tts"},{id:"vi-VN-HoaiMyNeural",name:"Hoai My (vi-VN)",type:"tts"},{id:"vi-VN-NamMinhNeural",name:"Nam Minh (vi-VN)",type:"tts"},{id:"zh-CN-XiaoxiaoNeural",name:"Xiaoxiao (zh-CN)",type:"tts"},{id:"zh-CN-YunxiNeural",name:"Yunxi (zh-CN)",type:"tts"},{id:"fr-FR-DeniseNeural",name:"Denise (fr-FR)",type:"tts"},{id:"de-DE-KatjaNeural",name:"Katja (de-DE)",type:"tts"},{id:"ja-JP-NanamiNeural",name:"Nanami (ja-JP)",type:"tts"},{id:"ko-KR-SunHiNeural",name:"SunHi (ko-KR)",type:"tts"}]},"local-device":{defaults:[{id:"default",name:"System Default Voice",type:"tts"}]},"google-tts":{defaults:[{id:"af",name:"Afrikaans",type:"tts"},{id:"ar",name:"Arabic",type:"tts"},{id:"bg",name:"Bulgarian",type:"tts"},{id:"bn",name:"Bengali",type:"tts"},{id:"bs",name:"Bosnian",type:"tts"},{id:"ca",name:"Catalan",type:"tts"},{id:"cs",name:"Czech",type:"tts"},{id:"cy",name:"Welsh",type:"tts"},{id:"da",name:"Danish",type:"tts"},{id:"de",name:"German",type:"tts"},{id:"el",name:"Greek",type:"tts"},{id:"en",name:"English",type:"tts"},{id:"eo",name:"Esperanto",type:"tts"},{id:"es",name:"Spanish",type:"tts"},{id:"et",name:"Estonian",type:"tts"},{id:"fi",name:"Finnish",type:"tts"},{id:"fr",name:"French",type:"tts"},{id:"gu",name:"Gujarati",type:"tts"},{id:"hi",name:"Hindi",type:"tts"},{id:"hr",name:"Croatian",type:"tts"},{id:"hu",name:"Hungarian",type:"tts"},{id:"hy",name:"Armenian",type:"tts"},{id:"id",name:"Indonesian",type:"tts"},{id:"is",name:"Icelandic",type:"tts"},{id:"it",name:"Italian",type:"tts"},{id:"ja",name:"Japanese",type:"tts"},{id:"jw",name:"Javanese",type:"tts"},{id:"km",name:"Khmer",type:"tts"},{id:"kn",name:"Kannada",type:"tts"},{id:"ko",name:"Korean",type:"tts"},{id:"la",name:"Latin",type:"tts"},{id:"lv",name:"Latvian",type:"tts"},{id:"mk",name:"Macedonian",type:"tts"},{id:"ml",name:"Malayalam",type:"tts"},{id:"mr",name:"Marathi",type:"tts"},{id:"my",name:"Myanmar (Burmese)",type:"tts"},{id:"ne",name:"Nepali",type:"tts"},{id:"nl",name:"Dutch",type:"tts"},{id:"no",name:"Norwegian",type:"tts"},{id:"pl",name:"Polish",type:"tts"},{id:"pt",name:"Portuguese",type:"tts"},{id:"ro",name:"Romanian",type:"tts"},{id:"ru",name:"Russian",type:"tts"},{id:"si",name:"Sinhala",type:"tts"},{id:"sk",name:"Slovak",type:"tts"},{id:"sq",name:"Albanian",type:"tts"},{id:"sr",name:"Serbian",type:"tts"},{id:"su",name:"Sundanese",type:"tts"},{id:"sv",name:"Swedish",type:"tts"},{id:"sw",name:"Swahili",type:"tts"},{id:"ta",name:"Tamil",type:"tts"},{id:"te",name:"Telugu",type:"tts"},{id:"th",name:"Thai",type:"tts"},{id:"tl",name:"Filipino",type:"tts"},{id:"tr",name:"Turkish",type:"tts"},{id:"uk",name:"Ukrainian",type:"tts"},{id:"ur",name:"Urdu",type:"tts"},{id:"vi",name:"Vietnamese",type:"tts"},{id:"zh-CN",name:"Chinese (Simplified)",type:"tts"},{id:"zh-TW",name:"Chinese (Traditional)",type:"tts"}]}},j={cc:[{id:"claude-opus-4-7",name:"Claude Opus 4.7"},{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}],cx:[{id:"gpt-5.4",name:"GPT 5.4"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.3-codex-spark",name:"GPT 5.3 Codex Spark"},{id:"gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini"},{id:"gpt-5.1-codex-mini-high",name:"GPT 5.1 Codex Mini (High)"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.1-codex-max",name:"GPT 5.1 Codex Max"},{id:"gpt-5.1-codex",name:"GPT 5.1 Codex"},{id:"gpt-5.1",name:"GPT 5.1"},{id:"gpt-5-codex",name:"GPT 5 Codex"},{id:"gpt-5-codex-mini",name:"GPT 5 Codex Mini"}],gc:[{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"}],qw:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"},{id:"coder-model",name:"Qwen3.6 Coder Model"}],if:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"},{id:"qwen3-max-preview",name:"Qwen3 Max Preview"},{id:"qwen3-235b",name:"Qwen3 235B A22B"},{id:"qwen3-235b-a22b-instruct",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking"},{id:"qwen3-32b",name:"Qwen3 32B"},{id:"kimi-k2",name:"Kimi K2"},{id:"deepseek-v3.2",name:"DeepSeek V3.2 Exp"},{id:"deepseek-v3.1",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-v3",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"glm-4.7",name:"GLM 4.7"},{id:"iflow-rome-30ba3b",name:"iFlow ROME"}],ag:[{id:"gemini-3.1-pro-high",name:"Gemini 3 Pro High"},{id:"gemini-3.1-pro-low",name:"Gemini 3 Pro Low"},{id:"gemini-3-flash",name:"Gemini 3 Flash",thinking:!1},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking"},{id:"gpt-oss-120b-medium",name:"GPT OSS 120B Medium"}],gh:[{id:"gpt-3.5-turbo",name:"GPT-3.5 Turbo"},{id:"gpt-4",name:"GPT-4"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-opus-4.7",name:"Claude Opus 4.7"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash"},{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"},{id:"goldeneye-free-auto",name:"GoldenEye"}],kr:[{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"deepseek-3.2",name:"DeepSeek 3.2",strip:["image","audio"]},{id:"qwen3-coder-next",name:"Qwen3 Coder Next",strip:["image","audio"]},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"}],cu:[{id:"default",name:"Auto (Server Picks)"},{id:"claude-4.5-opus-high-thinking",name:"Claude 4.5 Opus High Thinking"},{id:"claude-4.5-opus-high",name:"Claude 4.5 Opus High"},{id:"claude-4.5-sonnet-thinking",name:"Claude 4.5 Sonnet Thinking"},{id:"claude-4.5-sonnet",name:"Claude 4.5 Sonnet"},{id:"claude-4.5-haiku",name:"Claude 4.5 Haiku"},{id:"claude-4.5-opus",name:"Claude 4.5 Opus"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"claude-4.6-opus-max",name:"Claude 4.6 Opus Max"},{id:"claude-4.6-sonnet-medium-thinking",name:"Claude 4.6 Sonnet Medium Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"}],kmc:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],kc:[{id:"anthropic/claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"anthropic/claude-opus-4-20250514",name:"Claude Opus 4"},{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"openai/gpt-4.1",name:"GPT-4.1"},{id:"openai/o3",name:"o3"},{id:"deepseek/deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek/deepseek-reasoner",name:"DeepSeek Reasoner"}],"opencode-go":[{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"qwen3.5-plus",name:"Qwen 3.5 Plus"},{id:"qwen3.6-plus",name:"Qwen 3.6 Plus"},{id:"mimo-v2-pro",name:"MiMo V2 Pro"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"minimax-m2.7",name:"MiniMax M2.7",targetFormat:"claude"},{id:"minimax-m2.5",name:"MiniMax M2.5",targetFormat:"claude"}],oc:[],cl:[{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7"},{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6"},{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"kwaipilot/kat-coder-pro",name:"KAT Coder Pro"}],openai:[{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-nano",name:"GPT-5 Nano"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"o3",name:"O3"},{id:"o3-mini",name:"O3 Mini"},{id:"o3-pro",name:"O3 Pro"},{id:"o4-mini",name:"O4 Mini"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",type:"embedding"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small",type:"embedding"},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",type:"embedding"},{id:"tts-1",name:"TTS-1",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"gpt-image-1",name:"GPT Image 1",type:"image"},{id:"dall-e-3",name:"DALL-E 3",type:"image"},{id:"dall-e-2",name:"DALL-E 2",type:"image"}],anthropic:[{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"claude-opus-4-20250514",name:"Claude Opus 4"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"}],gemini:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash"},{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite"},{id:"gemma-4-31b-it",name:"Gemma 4 31B IT"},{id:"gemini-embedding-2-preview",name:"Gemini Embedding 2 Preview",type:"embedding"},{id:"gemini-embedding-001",name:"Gemini Embedding 001",type:"embedding"},{id:"text-embedding-005",name:"Text Embedding 005",type:"embedding"},{id:"text-embedding-004",name:"Text Embedding 004 (Legacy)",type:"embedding"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image (Nano Banana 2)",type:"image"},{id:"gemini-3-pro-image-preview",name:"Gemini 3 Pro Image (Nano Banana Pro)",type:"image"},{id:"gemini-2.5-flash-image",name:"Gemini 2.5 Flash Image (Nano Banana)",type:"image"}],openrouter:[{id:"openai/text-embedding-3-large",name:"OpenAI Text Embedding 3 Large",type:"embedding"},{id:"openai/text-embedding-3-small",name:"OpenAI Text Embedding 3 Small",type:"embedding"},{id:"openai/text-embedding-ada-002",name:"OpenAI Text Embedding Ada 002",type:"embedding"},{id:"qwen/qwen3-embedding-8b",name:"Qwen3 Embedding 8B",type:"embedding"},{id:"perplexity/pplx-embed-v1-4b",name:"Perplexity Embed V1 4B",type:"embedding"},{id:"perplexity/pplx-embed-v1-0.6b",name:"Perplexity Embed V1 0.6B",type:"embedding"},{id:"nvidia/llama-nemotron-embed-vl-1b-v2:free",name:"NVIDIA Nemotron Embed VL 1B V2 (Free)",type:"embedding"},{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"},{id:"openai/dall-e-3",name:"DALL-E 3 (via OpenRouter)",type:"image"},{id:"openai/gpt-image-1",name:"GPT Image 1 (via OpenRouter)",type:"image"},{id:"google/imagen-3.0-generate-002",name:"Imagen 3 (via OpenRouter)",type:"image"},{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell (via OpenRouter)",type:"image"}],glm:[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM 4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"}],"glm-cn":[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM-4.7"},{id:"glm-4.6",name:"GLM-4.6"},{id:"glm-4.5-air",name:"GLM-4.5-Air"}],kimi:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],minimax:[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"},{id:"minimax-image-01",name:"MiniMax Image 01",type:"image"}],blackbox:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Legacy)"},{id:"claude-opus-4-6",name:"Claude Opus 4.6 (Legacy)"},{id:"deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek-v3-671b",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"o1",name:"OpenAI o1"},{id:"o3-mini",name:"OpenAI o3-mini"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"}],"minimax-cn":[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"}],alicode:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-max-2026-01-23",name:"Qwen3 Max"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],"alicode-intl":[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],deepseek:[{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}],groq:[{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"openai/gpt-oss-120b",name:"GPT-OSS 120B"}],xai:[{id:"grok-4",name:"Grok 4"},{id:"grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning"},{id:"grok-code-fast-1",name:"Grok Code Fast"},{id:"grok-3",name:"Grok 3"}],mistral:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"}],perplexity:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}],together:[{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B Turbo"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"}],fireworks:[{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1"},{id:"accounts/fireworks/models/llama-v3p3-70b-instruct",name:"Llama 3.3 70B"},{id:"accounts/fireworks/models/qwen3-235b-a22b",name:"Qwen3 235B"}],cerebras:[{id:"gpt-oss-120b",name:"GPT OSS 120B"},{id:"zai-glm-4.7",name:"ZAI GLM 4.7"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout"},{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B"},{id:"qwen-3-32b",name:"Qwen3 32B"}],cohere:[{id:"command-r-plus-08-2024",name:"Command R+ (Aug 2024)"},{id:"command-r-08-2024",name:"Command R (Aug 2024)"},{id:"command-a-03-2025",name:"Command A (Mar 2025)"}],nvidia:[{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"z-ai/glm4.7",name:"GLM 4.7"}],nebius:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"}],siliconflow:[{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B"},{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3 Coder 480B"},{id:"Qwen/Qwen3-32B",name:"Qwen3 32B"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-4.7",name:"GLM 4.7"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"baidu/ERNIE-4.5-300B-A47B",name:"ERNIE 4.5 300B"}],hyperbolic:[{id:"Qwen/QwQ-32B",name:"QwQ 32B"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"meta-llama/Llama-3.2-3B-Instruct",name:"Llama 3.2 3B"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"},{id:"NousResearch/Hermes-3-Llama-3.1-70B",name:"Hermes 3 70B"}],ollama:[{id:"gpt-oss:120b",name:"GPT OSS 120B"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"minimax-m2.5",name:"MiniMax M2.5"},{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"qwen3.5",name:"Qwen3.5"}],vertex:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"}],"vertex-partner":[{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2 (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-thinking-maas",name:"Qwen3 Next 80B Thinking (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-instruct-maas",name:"Qwen3 Next 80B Instruct (Vertex)"},{id:"zai-org/glm-5-maas",name:"GLM-5 (Vertex)"}],"grok-web":[{id:"grok-3",name:"Grok 3"},{id:"grok-3-mini",name:"Grok 3 Mini (Thinking)"},{id:"grok-3-thinking",name:"Grok 3 Thinking"},{id:"grok-4",name:"Grok 4"},{id:"grok-4-mini",name:"Grok 4 Mini (Thinking)"},{id:"grok-4-thinking",name:"Grok 4 Thinking"},{id:"grok-4-heavy",name:"Grok 4 Heavy (SuperGrok)"},{id:"grok-4.1-mini",name:"Grok 4.1 Mini (Thinking)"},{id:"grok-4.1-fast",name:"Grok 4.1 Fast"},{id:"grok-4.1-expert",name:"Grok 4.1 Expert"},{id:"grok-4.1-thinking",name:"Grok 4.1 Thinking"},{id:"grok-4.2",name:"Grok 4.2 (4.20 Beta)"}],"perplexity-web":[{id:"pplx-auto",name:"Perplexity Auto (Free)"},{id:"pplx-sonar",name:"Perplexity Sonar"},{id:"pplx-gpt",name:"GPT-5.4 (via Perplexity)"},{id:"pplx-gemini",name:"Gemini 3.1 Pro (via Perplexity)"},{id:"pplx-sonnet",name:"Claude Sonnet 4.6 (via Perplexity)"},{id:"pplx-opus",name:"Claude Opus 4.6 (via Perplexity)"},{id:"pplx-nemotron",name:"Nemotron 3 Super (via Perplexity)"}],...function(){let a={};for(let[b,c]of Object.entries(i))c.models&&(a[`${b}-tts-models`]=c.models),c.allVoices&&(a[`${b}-tts-voices`]=c.allVoices),c.defaults&&(a[b]=c.defaults);return a["openai-tts-voices"]=i.openai.allVoices,a["openrouter-tts-voices"]=i.openrouter.allVoices,a}(),nanobanana:[{id:"nanobanana-flash",name:"NanoBanana Flash",type:"image"},{id:"nanobanana-pro",name:"NanoBanana Pro",type:"image"}],sdwebui:[{id:"stable-diffusion-v1-5",name:"Stable Diffusion v1.5",type:"image"},{id:"sdxl-base-1.0",name:"SDXL Base 1.0",type:"image"}],comfyui:[{id:"flux-dev",name:"FLUX Dev",type:"image"},{id:"sdxl",name:"SDXL",type:"image"}],huggingface:[{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell",type:"image"},{id:"stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",type:"image"}]};function k(a){return j[a]||[]}function l(a){let b=j[a];return b?.[0]?.id||null}function m(a,b){let c=j[a];if(!c)return null;let d=c.find(a=>a.id===b);return d?.targetFormat||null}let n={claude:"cc",codex:"cx","gemini-cli":"gc",qwen:"qw",iflow:"if",antigravity:"ag",github:"gh",kiro:"kr",cursor:"cu","kimi-coding":"kmc",kilocode:"kc",cline:"cl",opencode:"oc",vertex:"vertex","vertex-partner":"vertex-partner"},o=Object.fromEntries(Object.keys(d.xq).map(a=>[a,n[a]||a]));function p(a,b){let c=j[a]?.find(a=>a.id===b);return c?.strip||[]}}};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";exports.id=4989,exports.ids=[4989],exports.modules={47370:(a,b,c)=>{c.d(b,{BY:()=>E,E5:()=>B,Rw:()=>l.Rw,SL:()=>l.SL,Zx:()=>C,_V:()=>v,j$:()=>F,ox:()=>l.ox,rg:()=>y,sZ:()=>A,uw:()=>x});var d=c(82996),e=c(11259),f=c(94735),g=c(33873),h=c.n(g),i=c(29021),j=c.n(i),k=c(49120),l=c(90336);let m="u">typeof caches||"object"==typeof caches,n=m?null:h().join(k.n,"usage.json"),o=m?null:h().join(k.n,"log.txt");if(!m&&j()&&"function"==typeof j().existsSync)try{j().existsSync(k.n)||(j().mkdirSync(k.n,{recursive:!0}),console.log(`[usageDb] Created data directory: ${k.n}`))}catch(a){console.error("[usageDb] Failed to create data directory:",a.message)}let p={history:[],totalRequestsLifetime:0,dailySummary:{}};function q(a,b,c){a[b]||(a[b]={requests:0,promptTokens:0,completionTokens:0,cost:0}),a[b].requests+=c.requests||1,a[b].promptTokens+=c.promptTokens||0,a[b].completionTokens+=c.completionTokens||0,a[b].cost+=c.cost||0,c.meta&&Object.assign(a[b],c.meta)}function r(a,b){var c;let d,e=(d=(c=b.timestamp)?new Date(c):new Date,`${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,"0")}-${String(d.getDate()).padStart(2,"0")}`);a[e]||(a[e]={requests:0,promptTokens:0,completionTokens:0,cost:0,byProvider:{},byModel:{},byAccount:{},byApiKey:{},byEndpoint:{}});let f=a[e],g=b.tokens?.prompt_tokens||b.tokens?.input_tokens||0,h=b.tokens?.completion_tokens||b.tokens?.output_tokens||0,i=b.cost||0,j={promptTokens:g,completionTokens:h,cost:i};f.requests+=1,f.promptTokens+=g,f.completionTokens+=h,f.cost+=i,b.provider&&q(f.byProvider,b.provider,j);let k=b.provider?`${b.model}|${b.provider}`:b.model;q(f.byModel,k,{...j,meta:{rawModel:b.model,provider:b.provider}}),b.connectionId&&q(f.byAccount,b.connectionId,{...j,meta:{rawModel:b.model,provider:b.provider}});let l=b.apiKey&&"string"==typeof b.apiKey?b.apiKey:"local-no-key",m=`${l}|${b.model}|${b.provider||"unknown"}`;q(f.byApiKey,m,{...j,meta:{rawModel:b.model,provider:b.provider,apiKey:b.apiKey||null}});let n=b.endpoint||"Unknown",o=`${n}|${b.model}|${b.provider||"unknown"}`;q(f.byEndpoint,o,{...j,meta:{endpoint:n,rawModel:b.model,provider:b.provider}})}let s=null;global._pendingRequests||(global._pendingRequests={byModel:{},byAccount:{}});let t=global._pendingRequests;global._lastErrorProvider||(global._lastErrorProvider={provider:"",ts:0});let u=global._lastErrorProvider;global._statsEmitter||(global._statsEmitter=new f.EventEmitter,global._statsEmitter.setMaxListeners(50));let v=global._statsEmitter;global._pendingTimers||(global._pendingTimers={});let w=global._pendingTimers;function x(a,b,c,d,e=!1){let f=b?`${a} (${b})`:a,g=`${c}|${f}`;t.byModel[f]||(t.byModel[f]=0),t.byModel[f]=Math.max(0,t.byModel[f]+(d?1:-1)),c&&(t.byAccount[c]||(t.byAccount[c]={}),t.byAccount[c][f]||(t.byAccount[c][f]=0),t.byAccount[c][f]=Math.max(0,t.byAccount[c][f]+(d?1:-1))),d?(clearTimeout(w[g]),w[g]=setTimeout(()=>{delete w[g],t.byModel[f]>0&&(t.byModel[f]=0),c&&t.byAccount[c]?.[f]>0&&(t.byAccount[c][f]=0),v.emit("pending")},6e4)):(clearTimeout(w[g]),delete w[g]),!d&&e&&b&&(u.provider=b.toLowerCase(),u.ts=Date.now());let h=new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"});console.log(`[${h}] [PENDING] ${d?"START":"END"}${e?" (ERROR)":""} | provider=${b} | model=${a}`),v.emit("pending")}async function y(){let a=[],b={};try{let{getProviderConnections:a}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718));for(let c of(await a()))b[c.id]=c.name||c.email||c.id}catch{}for(let[c,d]of Object.entries(t.byAccount))for(let[e,f]of Object.entries(d))if(f>0){let d=b[c]||`Account ${c.slice(0,8)}...`,g=e.match(/^(.*) \((.*)\)$/),h=g?g[1]:e,i=g?g[2]:"unknown";a.push({model:h,provider:i,account:d,count:f})}let d=await z();await d.read();let e=d.data.history||[],f=new Set;return{activeRequests:a,recentRequests:[...e].sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp)).map(a=>{let b=a.tokens||{},c=b.prompt_tokens||b.input_tokens||0,d=b.completion_tokens||b.output_tokens||0;return{timestamp:a.timestamp,model:a.model,provider:a.provider||"",promptTokens:c,completionTokens:d,status:a.status||"ok"}}).filter(a=>{if(0===a.promptTokens&&0===a.completionTokens)return!1;let b=a.timestamp?a.timestamp.slice(0,16):"",c=`${a.model}|${a.provider}|${a.promptTokens}|${a.completionTokens}|${b}`;return!f.has(c)&&(f.add(c),!0)}).slice(0,20),errorProvider:Date.now()-u.ts<1e4?u.provider:""}}async function z(){if(m)return s||((s=new d.t({read:async()=>{},write:async()=>{}},p)).data=p),s;if(!s){let a=new e.Pv(n);s=new d.t(a,p);try{await s.read()}catch(a){if(a instanceof SyntaxError)console.warn("[DB] Corrupt Usage JSON detected, resetting to defaults..."),s.data=p,await s.write();else throw a}s.data||(s.data={...p},await s.write()),s.data.dailySummary||(function(a){let b=a.data.history||[];if(!b.length)return!1;for(let c of(a.data.dailySummary={},b))r(a.data.dailySummary,c);return console.log(`[usageDb] Migrated ${b.length} history entries to dailySummary (${Object.keys(a.data.dailySummary).length} days)`),!0}(s)?await s.write():s.data.dailySummary={})}return s}async function A(a){if(!m)try{let b=await z();a.timestamp||(a.timestamp=new Date().toISOString()),Array.isArray(b.data.history)||(b.data.history=[]),"number"!=typeof b.data.totalRequestsLifetime&&(b.data.totalRequestsLifetime=b.data.history.length);let c=await D(a.provider,a.model,a.tokens);a.cost=c,b.data.history.push(a),b.data.totalRequestsLifetime+=1,b.data.dailySummary||(b.data.dailySummary={}),r(b.data.dailySummary,a),b.data.history.length>1e4&&b.data.history.splice(0,b.data.history.length-1e4),await b.write(),v.emit("update")}catch(a){console.error("Failed to save usage stats:",a)}}async function B({model:a,provider:b,connectionId:d,tokens:e,status:f}){if(!m)try{let g=function(a=new Date){let b=a=>String(a).padStart(2,"0"),c=b(a.getDate()),d=b(a.getMonth()+1),e=a.getFullYear(),f=b(a.getHours()),g=b(a.getMinutes()),h=b(a.getSeconds());return`${c}-${d}-${e} ${f}:${g}:${h}`}(),h=b?.toUpperCase()||"-",i=d?d.slice(0,8):"-";try{let{getProviderConnections:a}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),b=(await a()).find(a=>a.id===d);b&&(i=b.name||b.email||i)}catch{}let k=e?.prompt_tokens!==void 0?e.prompt_tokens:"-",l=e?.completion_tokens!==void 0?e.completion_tokens:"-",m=`${g} | ${a||"-"} | ${h} | ${i} | ${k} | ${l} | ${f}
|
|
2
|
-
`;j().appendFileSync(o,m);let n=j().readFileSync(o,"utf-8").trim().split("\n");n.length>200&&j().writeFileSync(o,n.slice(-200).join("\n")+"\n")}catch(a){console.error("Failed to append to log.txt:",a.message)}}async function C(a=200){if(m)return[];if(!j()||"function"!=typeof j().existsSync)return console.error("[usageDb] fs module not available in this environment"),[];if(!o)return console.error("[usageDb] LOG_FILE path not defined"),[];if(!j().existsSync(o))return console.log(`[usageDb] Log file does not exist: ${o}`),[];try{return j().readFileSync(o,"utf-8").trim().split("\n").slice(-a).reverse()}catch(a){return console.error("[usageDb] Failed to read log.txt:",a.message),console.error("[usageDb] LOG_FILE path:",o),[]}}async function D(a,b,d){if(!d||!a||!b)return 0;try{let{getPricingForModel:e}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),f=await e(a,b);if(!f)return 0;let g=0,h=d.prompt_tokens||d.input_tokens||0,i=d.cached_tokens||d.cache_read_input_tokens||0,j=Math.max(0,h-i);if(g+=j*(f.input/1e6),i>0){let a=f.cached||f.input;g+=a/1e6*i}let k=d.completion_tokens||d.output_tokens||0;g+=k*(f.output/1e6);let l=d.reasoning_tokens||0;if(l>0){let a=f.reasoning||f.output;g+=a/1e6*l}let m=d.cache_creation_input_tokens||0;if(m>0){let a=f.cache_creation||f.input;g+=a/1e6*m}return g}catch(a){return console.error("Error calculating cost:",a),0}}async function E(a="all"){let b=await z(),d=b.data.history||[],e=b.data.dailySummary||{},{getProviderConnections:f,getApiKeys:g,getProviderNodes:h}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),i=[];try{i=await f()}catch{}let j={};for(let a of i)j[a.id]=a.name||a.email||a.id;let k={};try{for(let a of(await h()))a.id&&a.name&&(k[a.id]=a.name)}catch{}let l=[];try{l=await g()}catch{}let m={};for(let a of l)m[a.key]={name:a.name,id:a.id,createdAt:a.createdAt};let n=new Set,o=[...d].sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp)).map(a=>{let b=a.tokens||{};return{timestamp:a.timestamp,model:a.model,provider:a.provider||"",promptTokens:b.prompt_tokens||b.input_tokens||0,completionTokens:b.completion_tokens||b.output_tokens||0,status:a.status||"ok"}}).filter(a=>{if(0===a.promptTokens&&0===a.completionTokens)return!1;let b=a.timestamp?a.timestamp.slice(0,16):"",c=`${a.model}|${a.provider}|${a.promptTokens}|${a.completionTokens}|${b}`;return!n.has(c)&&(n.add(c),!0)}).slice(0,20),p={totalRequests:"number"==typeof b.data.totalRequestsLifetime?b.data.totalRequestsLifetime:d.length,totalPromptTokens:0,totalCompletionTokens:0,totalCost:0,byProvider:{},byModel:{},byAccount:{},byApiKey:{},byEndpoint:{},last10Minutes:[],pending:t,activeRequests:[],recentRequests:o,errorProvider:Date.now()-u.ts<1e4?u.provider:""};for(let[a,b]of Object.entries(t.byAccount))for(let[c,d]of Object.entries(b))if(d>0){let b=j[a]||`Account ${a.slice(0,8)}...`,e=c.match(/^(.*) \((.*)\)$/);p.activeRequests.push({model:e?e[1]:c,provider:e?e[2]:"unknown",account:b,count:d})}let q=new Date,r=new Date(6e4*Math.floor(q.getTime()/6e4)),s=new Date(r.getTime()-54e4),v={};for(let a=0;a<10;a++){let b=r.getTime()-(9-a)*6e4;v[b]={requests:0,promptTokens:0,completionTokens:0,cost:0},p.last10Minutes.push(v[b])}for(let a of d){let b=new Date(a.timestamp);if(b>=s&&b<=q){let c=6e4*Math.floor(b.getTime()/6e4);if(v[c]){let b=a.tokens?.prompt_tokens||0,d=a.tokens?.completion_tokens||0;v[c].requests++,v[c].promptTokens+=b,v[c].completionTokens+=d,v[c].cost+=a.cost||0}}}if("24h"!==a){let b={"7d":7,"30d":30,"60d":60}[a]||null,c=new Date;for(let a of Object.keys(e).filter(a=>{if(!b)return!0;let d=a.split("-"),e=new Date(Number(d[0]),Number(d[1])-1,Number(d[2]));return Math.floor((c.getTime()-e.getTime())/864e5)<b})){let b=e[a];for(let[a,c]of(p.totalPromptTokens+=b.promptTokens||0,p.totalCompletionTokens+=b.completionTokens||0,p.totalCost+=b.cost||0,Object.entries(b.byProvider||{})))p.byProvider[a]||(p.byProvider[a]={requests:0,promptTokens:0,completionTokens:0,cost:0}),p.byProvider[a].requests+=c.requests||0,p.byProvider[a].promptTokens+=c.promptTokens||0,p.byProvider[a].completionTokens+=c.completionTokens||0,p.byProvider[a].cost+=c.cost||0;for(let[c,d]of Object.entries(b.byModel||{})){let b=d.rawModel||c.split("|")[0],e=d.provider||c.split("|")[1]||"",f=e?`${b} (${e})`:b,g=k[e]||e;p.byModel[f]||(p.byModel[f]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b,provider:g,lastUsed:a}),p.byModel[f].requests+=d.requests||0,p.byModel[f].promptTokens+=d.promptTokens||0,p.byModel[f].completionTokens+=d.completionTokens||0,p.byModel[f].cost+=d.cost||0,a>(p.byModel[f].lastUsed||"")&&(p.byModel[f].lastUsed=a)}for(let[c,d]of Object.entries(b.byAccount||{})){let b=j[c]||`Account ${c.slice(0,8)}...`,e=d.rawModel||"",f=d.provider||"",g=k[f]||f,h=`${e} (${f} - ${b})`;p.byAccount[h]||(p.byAccount[h]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:e,provider:g,connectionId:c,accountName:b,lastUsed:a}),p.byAccount[h].requests+=d.requests||0,p.byAccount[h].promptTokens+=d.promptTokens||0,p.byAccount[h].completionTokens+=d.completionTokens||0,p.byAccount[h].cost+=d.cost||0,a>(p.byAccount[h].lastUsed||"")&&(p.byAccount[h].lastUsed=a)}for(let[c,d]of Object.entries(b.byApiKey||{})){let b=d.rawModel||"",e=d.provider||"",f=k[e]||e,g=d.apiKey,h=g?m[g]:null,i=h?.name||(g?g.slice(0,8)+"...":"Local (No API Key)"),j=g||"local-no-key";p.byApiKey[c]||(p.byApiKey[c]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b,provider:f,apiKey:g,keyName:i,apiKeyKey:j,lastUsed:a}),p.byApiKey[c].requests+=d.requests||0,p.byApiKey[c].promptTokens+=d.promptTokens||0,p.byApiKey[c].completionTokens+=d.completionTokens||0,p.byApiKey[c].cost+=d.cost||0,a>(p.byApiKey[c].lastUsed||"")&&(p.byApiKey[c].lastUsed=a)}for(let[c,d]of Object.entries(b.byEndpoint||{})){let b=d.endpoint||c.split("|")[0]||"Unknown",e=d.rawModel||"",f=d.provider||"",g=k[f]||f;p.byEndpoint[c]||(p.byEndpoint[c]={requests:0,promptTokens:0,completionTokens:0,cost:0,endpoint:b,rawModel:e,provider:g,lastUsed:a}),p.byEndpoint[c].requests+=d.requests||0,p.byEndpoint[c].promptTokens+=d.promptTokens||0,p.byEndpoint[c].completionTokens+=d.completionTokens||0,p.byEndpoint[c].cost+=d.cost||0,a>(p.byEndpoint[c].lastUsed||"")&&(p.byEndpoint[c].lastUsed=a)}}}else{let a=Date.now()-864e5;for(let b of d.filter(b=>new Date(b.timestamp).getTime()>=a)){let a=b.tokens?.prompt_tokens||0,c=b.tokens?.completion_tokens||0,d=b.cost||0,e=k[b.provider]||b.provider;p.totalPromptTokens+=a,p.totalCompletionTokens+=c,p.totalCost+=d,p.byProvider[b.provider]||(p.byProvider[b.provider]={requests:0,promptTokens:0,completionTokens:0,cost:0}),p.byProvider[b.provider].requests++,p.byProvider[b.provider].promptTokens+=a,p.byProvider[b.provider].completionTokens+=c,p.byProvider[b.provider].cost+=d;let f=b.provider?`${b.model} (${b.provider})`:b.model;if(p.byModel[f]||(p.byModel[f]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,lastUsed:b.timestamp}),p.byModel[f].requests++,p.byModel[f].promptTokens+=a,p.byModel[f].completionTokens+=c,p.byModel[f].cost+=d,new Date(b.timestamp)>new Date(p.byModel[f].lastUsed)&&(p.byModel[f].lastUsed=b.timestamp),b.connectionId){let f=j[b.connectionId]||`Account ${b.connectionId.slice(0,8)}...`,g=`${b.model} (${b.provider} - ${f})`;p.byAccount[g]||(p.byAccount[g]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,connectionId:b.connectionId,accountName:f,lastUsed:b.timestamp}),p.byAccount[g].requests++,p.byAccount[g].promptTokens+=a,p.byAccount[g].completionTokens+=c,p.byAccount[g].cost+=d,new Date(b.timestamp)>new Date(p.byAccount[g].lastUsed)&&(p.byAccount[g].lastUsed=b.timestamp)}if(b.apiKey&&"string"==typeof b.apiKey){let f=m[b.apiKey],g=f?.name||b.apiKey.slice(0,8)+"...",h=`${b.apiKey}|${b.model}|${b.provider||"unknown"}`;p.byApiKey[h]||(p.byApiKey[h]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,apiKey:b.apiKey,keyName:g,apiKeyKey:b.apiKey,lastUsed:b.timestamp});let i=p.byApiKey[h];i.requests++,i.promptTokens+=a,i.completionTokens+=c,i.cost+=d,new Date(b.timestamp)>new Date(i.lastUsed)&&(i.lastUsed=b.timestamp)}else{p.byApiKey["local-no-key"]||(p.byApiKey["local-no-key"]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,apiKey:null,keyName:"Local (No API Key)",apiKeyKey:"local-no-key",lastUsed:b.timestamp});let f=p.byApiKey["local-no-key"];f.requests++,f.promptTokens+=a,f.completionTokens+=c,f.cost+=d,new Date(b.timestamp)>new Date(f.lastUsed)&&(f.lastUsed=b.timestamp)}let g=b.endpoint||"Unknown",h=`${g}|${b.model}|${b.provider||"unknown"}`;p.byEndpoint[h]||(p.byEndpoint[h]={requests:0,promptTokens:0,completionTokens:0,cost:0,endpoint:g,rawModel:b.model,provider:e,lastUsed:b.timestamp});let i=p.byEndpoint[h];i.requests++,i.promptTokens+=a,i.completionTokens+=c,i.cost+=d,new Date(b.timestamp)>new Date(i.lastUsed)&&(i.lastUsed=b.timestamp)}}return p}async function F(a="7d"){let b=await z(),c=b.data.history||[],d=b.data.dailySummary||{},e=Date.now();if("24h"===a){let a=e-864e5,b=Array.from({length:24},(b,c)=>({label:new Date(a+36e5*c).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1}),tokens:0,cost:0}));for(let d of c){let c=new Date(d.timestamp).getTime();if(c<a||c>e)continue;let f=Math.min(Math.floor((c-a)/36e5),23);b[f].tokens+=(d.tokens?.prompt_tokens||0)+(d.tokens?.completion_tokens||0),b[f].cost+=d.cost||0}return b}let f="7d"===a?7:"30d"===a?30:60,g=new Date;return Array.from({length:f},(a,b)=>{let c=new Date(g);c.setDate(c.getDate()-(f-1-b));let e=d[`${c.getFullYear()}-${String(c.getMonth()+1).padStart(2,"0")}-${String(c.getDate()).padStart(2,"0")}`];return{label:c.toLocaleDateString("en-US",{month:"short",day:"numeric"}),tokens:e?(e.promptTokens||0)+(e.completionTokens||0):0,cost:e&&e.cost||0}})}},49120:(a,b,c)=>{c.d(b,{n:()=>i});var d=c(33873),e=c.n(d),f=c(21820),g=c.n(f);let h="n9router",i=process.env.DATA_DIR?process.env.DATA_DIR:"win32"===process.platform?e().join(process.env.APPDATA||e().join(g().homedir(),"AppData","Roaming"),h):e().join(g().homedir(),`.${h}`)},90336:(a,b,c)=>{c.d(b,{Rw:()=>x,SL:()=>w,ox:()=>v});var d=c(82996),e=c(11259),f=c(76760),g=c.n(f),h=c(73024),i=c.n(h),j=c(49120);let k="u">typeof caches&&"object"==typeof caches,l=k?null:g().join(j.n,"request-details.json");k||i().existsSync(j.n)||i().mkdirSync(j.n,{recursive:!0});let m=null;async function n(){if(k)return null;if(!m){let a=new e.Pv(l),b=new d.t(a,{records:[]});await b.read(),b.data?.records||(b.data={records:[]}),m=b}return m}let o=null,p=0;async function q(){if(o&&Date.now()-p<5e3)return o;try{let{getSettings:a}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;o={enabled:"boolean"==typeof b.enableObservability?b.enableObservability:d,maxRecords:b.observabilityMaxRecords||parseInt(process.env.OBSERVABILITY_MAX_RECORDS||String(200),10),batchSize:b.observabilityBatchSize||parseInt(process.env.OBSERVABILITY_BATCH_SIZE||String(20),10),flushIntervalMs:b.observabilityFlushIntervalMs||parseInt(process.env.OBSERVABILITY_FLUSH_INTERVAL_MS||String(5e3),10),maxJsonSize:1024*(b.observabilityMaxJsonSize||parseInt(process.env.OBSERVABILITY_MAX_JSON_SIZE||"5",10))}}catch{o={enabled:!1,maxRecords:200,batchSize:20,flushIntervalMs:5e3,maxJsonSize:5120}}return p=Date.now(),o}let r=[],s=null,t=!1;async function u(){if(!k&&!t&&0!==r.length){t=!0;try{let a=[...r];r=[];let b=await n(),c=await q();for(let d of a){d.id||(d.id=function(a){let b=new Date().toISOString(),c=Math.random().toString(36).substring(2,8),d=a?a.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown";return`${b}-${c}-${d}`}(d.model)),d.timestamp||(d.timestamp=new Date().toISOString()),d.request?.headers&&(d.request.headers=function(a){if(!a||"object"!=typeof a)return{};let b=["authorization","x-api-key","cookie","token","api-key"],c={...a};for(let a of Object.keys(c))b.some(b=>a.toLowerCase().includes(b))&&delete c[a];return c}(d.request.headers));let a={id:d.id,provider:d.provider||null,model:d.model||null,connectionId:d.connectionId||null,timestamp:d.timestamp,status:d.status||null,latency:d.latency||{},tokens:d.tokens||{},request:d.request||{},providerRequest:d.providerRequest||{},providerResponse:d.providerResponse||{},response:d.response||{}},e=c.maxJsonSize;for(let b of["request","providerRequest","providerResponse","response"]){let c=JSON.stringify(a[b]);c.length>e&&(a[b]={_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)})}let f=b.data.records.findIndex(b=>b.id===a.id);-1!==f?b.data.records[f]=a:b.data.records.push(a)}for(b.data.records.sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp)),b.data.records.length>c.maxRecords&&(b.data.records=b.data.records.slice(0,c.maxRecords));b.data.records.length>1&&!(0x3200000>=Buffer.byteLength(JSON.stringify(b.data),"utf8"));)b.data.records=b.data.records.slice(0,Math.floor(b.data.records.length/2));await b.write()}catch(a){console.error("[requestDetailsDb] Batch write failed:",a)}finally{t=!1}}}async function v(a){if(k)return;let b=await q();b.enabled&&(r.push(a),r.length>=b.batchSize?(await u(),s&&(clearTimeout(s),s=null)):s||(s=setTimeout(()=>{u().catch(()=>{}),s=null},b.flushIntervalMs)))}async function w(a={}){if(k)return{details:[],pagination:{page:1,pageSize:50,totalItems:0,totalPages:0,hasNext:!1,hasPrev:!1}};let b=[...(await n()).data.records];a.provider&&(b=b.filter(b=>b.provider===a.provider)),a.model&&(b=b.filter(b=>b.model===a.model)),a.connectionId&&(b=b.filter(b=>b.connectionId===a.connectionId)),a.status&&(b=b.filter(b=>b.status===a.status)),a.startDate&&(b=b.filter(b=>new Date(b.timestamp)>=new Date(a.startDate))),a.endDate&&(b=b.filter(b=>new Date(b.timestamp)<=new Date(a.endDate))),b.sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp));let c=b.length,d=a.page||1,e=a.pageSize||50,f=Math.ceil(c/e);return{details:b.slice((d-1)*e,d*e),pagination:{page:d,pageSize:e,totalItems:c,totalPages:f,hasNext:d<f,hasPrev:d>1}}}async function x(a){return k?null:(await n()).data.records.find(b=>b.id===a)||null}let y=async()=>{s&&(clearTimeout(s),s=null),r.length>0&&await u()};k||(process.off("beforeExit",y),process.off("SIGINT",y),process.off("SIGTERM",y),process.off("exit",y),process.on("beforeExit",y),process.on("SIGINT",y),process.on("SIGTERM",y),process.on("exit",y))}};
|
|
2
|
+
`;j().appendFileSync(o,m);let n=j().readFileSync(o,"utf-8").trim().split("\n");n.length>200&&j().writeFileSync(o,n.slice(-200).join("\n")+"\n")}catch(a){console.error("Failed to append to log.txt:",a.message)}}async function C(a=200){if(m)return[];if(!j()||"function"!=typeof j().existsSync)return console.error("[usageDb] fs module not available in this environment"),[];if(!o)return console.error("[usageDb] LOG_FILE path not defined"),[];if(!j().existsSync(o))return console.log(`[usageDb] Log file does not exist: ${o}`),[];try{return j().readFileSync(o,"utf-8").trim().split("\n").slice(-a).reverse()}catch(a){return console.error("[usageDb] Failed to read log.txt:",a.message),console.error("[usageDb] LOG_FILE path:",o),[]}}async function D(a,b,d){if(!d||!a||!b)return 0;try{let{getPricingForModel:e}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),f=await e(a,b);if(!f)return 0;let g=0,h=d.prompt_tokens||d.input_tokens||0,i=d.cached_tokens||d.cache_read_input_tokens||0,j=Math.max(0,h-i);if(g+=j*(f.input/1e6),i>0){let a=f.cached||f.input;g+=a/1e6*i}let k=d.completion_tokens||d.output_tokens||0;g+=k*(f.output/1e6);let l=d.reasoning_tokens||0;if(l>0){let a=f.reasoning||f.output;g+=a/1e6*l}let m=d.cache_creation_input_tokens||0;if(m>0){let a=f.cache_creation||f.input;g+=a/1e6*m}return g}catch(a){return console.error("Error calculating cost:",a),0}}async function E(a="all"){let b=await z(),d=b.data.history||[],e=b.data.dailySummary||{},{getProviderConnections:f,getApiKeys:g,getProviderNodes:h}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),i=[];try{i=await f()}catch{}let j={};for(let a of i)j[a.id]=a.name||a.email||a.id;let k={};try{for(let a of(await h()))a.id&&a.name&&(k[a.id]=a.name)}catch{}let l=[];try{l=await g()}catch{}let m={};for(let a of l)m[a.key]={name:a.name,id:a.id,createdAt:a.createdAt};let n=new Set,o=[...d].sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp)).map(a=>{let b=a.tokens||{};return{timestamp:a.timestamp,model:a.model,provider:a.provider||"",promptTokens:b.prompt_tokens||b.input_tokens||0,completionTokens:b.completion_tokens||b.output_tokens||0,status:a.status||"ok"}}).filter(a=>{if(0===a.promptTokens&&0===a.completionTokens)return!1;let b=a.timestamp?a.timestamp.slice(0,16):"",c=`${a.model}|${a.provider}|${a.promptTokens}|${a.completionTokens}|${b}`;return!n.has(c)&&(n.add(c),!0)}).slice(0,20),p={totalRequests:"number"==typeof b.data.totalRequestsLifetime?b.data.totalRequestsLifetime:d.length,totalPromptTokens:0,totalCompletionTokens:0,totalCost:0,byProvider:{},byModel:{},byAccount:{},byApiKey:{},byEndpoint:{},last10Minutes:[],pending:t,activeRequests:[],recentRequests:o,errorProvider:Date.now()-u.ts<1e4?u.provider:""};for(let[a,b]of Object.entries(t.byAccount))for(let[c,d]of Object.entries(b))if(d>0){let b=j[a]||`Account ${a.slice(0,8)}...`,e=c.match(/^(.*) \((.*)\)$/);p.activeRequests.push({model:e?e[1]:c,provider:e?e[2]:"unknown",account:b,count:d})}let q=new Date,r=new Date(6e4*Math.floor(q.getTime()/6e4)),s=new Date(r.getTime()-54e4),v={};for(let a=0;a<10;a++){let b=r.getTime()-(9-a)*6e4;v[b]={requests:0,promptTokens:0,completionTokens:0,cost:0},p.last10Minutes.push(v[b])}for(let a of d){let b=new Date(a.timestamp);if(b>=s&&b<=q){let c=6e4*Math.floor(b.getTime()/6e4);if(v[c]){let b=a.tokens?.prompt_tokens||0,d=a.tokens?.completion_tokens||0;v[c].requests++,v[c].promptTokens+=b,v[c].completionTokens+=d,v[c].cost+=a.cost||0}}}if("24h"!==a){let b={"7d":7,"30d":30,"60d":60}[a]||null,c=new Date;for(let a of Object.keys(e).filter(a=>{if(!b)return!0;let d=a.split("-"),e=new Date(Number(d[0]),Number(d[1])-1,Number(d[2]));return Math.floor((c.getTime()-e.getTime())/864e5)<b})){let b=e[a];for(let[a,c]of(p.totalPromptTokens+=b.promptTokens||0,p.totalCompletionTokens+=b.completionTokens||0,p.totalCost+=b.cost||0,Object.entries(b.byProvider||{})))p.byProvider[a]||(p.byProvider[a]={requests:0,promptTokens:0,completionTokens:0,cost:0}),p.byProvider[a].requests+=c.requests||0,p.byProvider[a].promptTokens+=c.promptTokens||0,p.byProvider[a].completionTokens+=c.completionTokens||0,p.byProvider[a].cost+=c.cost||0;for(let[c,d]of Object.entries(b.byModel||{})){let b=d.rawModel||c.split("|")[0],e=d.provider||c.split("|")[1]||"",f=e?`${b} (${e})`:b,g=k[e]||e;p.byModel[f]||(p.byModel[f]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b,provider:g,lastUsed:a}),p.byModel[f].requests+=d.requests||0,p.byModel[f].promptTokens+=d.promptTokens||0,p.byModel[f].completionTokens+=d.completionTokens||0,p.byModel[f].cost+=d.cost||0,a>(p.byModel[f].lastUsed||"")&&(p.byModel[f].lastUsed=a)}for(let[c,d]of Object.entries(b.byAccount||{})){let b=j[c]||`Account ${c.slice(0,8)}...`,e=d.rawModel||"",f=d.provider||"",g=k[f]||f,h=`${e} (${f} - ${b})`;p.byAccount[h]||(p.byAccount[h]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:e,provider:g,connectionId:c,accountName:b,lastUsed:a}),p.byAccount[h].requests+=d.requests||0,p.byAccount[h].promptTokens+=d.promptTokens||0,p.byAccount[h].completionTokens+=d.completionTokens||0,p.byAccount[h].cost+=d.cost||0,a>(p.byAccount[h].lastUsed||"")&&(p.byAccount[h].lastUsed=a)}for(let[c,d]of Object.entries(b.byApiKey||{})){let b=d.rawModel||"",e=d.provider||"",f=k[e]||e,g=d.apiKey,h=g?m[g]:null,i=h?.name||(g?g.slice(0,8)+"...":"Local (No API Key)"),j=g||"local-no-key";p.byApiKey[c]||(p.byApiKey[c]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b,provider:f,apiKey:g,keyName:i,apiKeyKey:j,lastUsed:a}),p.byApiKey[c].requests+=d.requests||0,p.byApiKey[c].promptTokens+=d.promptTokens||0,p.byApiKey[c].completionTokens+=d.completionTokens||0,p.byApiKey[c].cost+=d.cost||0,a>(p.byApiKey[c].lastUsed||"")&&(p.byApiKey[c].lastUsed=a)}for(let[c,d]of Object.entries(b.byEndpoint||{})){let b=d.endpoint||c.split("|")[0]||"Unknown",e=d.rawModel||"",f=d.provider||"",g=k[f]||f;p.byEndpoint[c]||(p.byEndpoint[c]={requests:0,promptTokens:0,completionTokens:0,cost:0,endpoint:b,rawModel:e,provider:g,lastUsed:a}),p.byEndpoint[c].requests+=d.requests||0,p.byEndpoint[c].promptTokens+=d.promptTokens||0,p.byEndpoint[c].completionTokens+=d.completionTokens||0,p.byEndpoint[c].cost+=d.cost||0,a>(p.byEndpoint[c].lastUsed||"")&&(p.byEndpoint[c].lastUsed=a)}}}else{let a=Date.now()-864e5;for(let b of d.filter(b=>new Date(b.timestamp).getTime()>=a)){let a=b.tokens?.prompt_tokens||0,c=b.tokens?.completion_tokens||0,d=b.cost||0,e=k[b.provider]||b.provider;p.totalPromptTokens+=a,p.totalCompletionTokens+=c,p.totalCost+=d,p.byProvider[b.provider]||(p.byProvider[b.provider]={requests:0,promptTokens:0,completionTokens:0,cost:0}),p.byProvider[b.provider].requests++,p.byProvider[b.provider].promptTokens+=a,p.byProvider[b.provider].completionTokens+=c,p.byProvider[b.provider].cost+=d;let f=b.provider?`${b.model} (${b.provider})`:b.model;if(p.byModel[f]||(p.byModel[f]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,lastUsed:b.timestamp}),p.byModel[f].requests++,p.byModel[f].promptTokens+=a,p.byModel[f].completionTokens+=c,p.byModel[f].cost+=d,new Date(b.timestamp)>new Date(p.byModel[f].lastUsed)&&(p.byModel[f].lastUsed=b.timestamp),b.connectionId){let f=j[b.connectionId]||`Account ${b.connectionId.slice(0,8)}...`,g=`${b.model} (${b.provider} - ${f})`;p.byAccount[g]||(p.byAccount[g]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,connectionId:b.connectionId,accountName:f,lastUsed:b.timestamp}),p.byAccount[g].requests++,p.byAccount[g].promptTokens+=a,p.byAccount[g].completionTokens+=c,p.byAccount[g].cost+=d,new Date(b.timestamp)>new Date(p.byAccount[g].lastUsed)&&(p.byAccount[g].lastUsed=b.timestamp)}if(b.apiKey&&"string"==typeof b.apiKey){let f=m[b.apiKey],g=f?.name||b.apiKey.slice(0,8)+"...",h=`${b.apiKey}|${b.model}|${b.provider||"unknown"}`;p.byApiKey[h]||(p.byApiKey[h]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,apiKey:b.apiKey,keyName:g,apiKeyKey:b.apiKey,lastUsed:b.timestamp});let i=p.byApiKey[h];i.requests++,i.promptTokens+=a,i.completionTokens+=c,i.cost+=d,new Date(b.timestamp)>new Date(i.lastUsed)&&(i.lastUsed=b.timestamp)}else{p.byApiKey["local-no-key"]||(p.byApiKey["local-no-key"]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:e,apiKey:null,keyName:"Local (No API Key)",apiKeyKey:"local-no-key",lastUsed:b.timestamp});let f=p.byApiKey["local-no-key"];f.requests++,f.promptTokens+=a,f.completionTokens+=c,f.cost+=d,new Date(b.timestamp)>new Date(f.lastUsed)&&(f.lastUsed=b.timestamp)}let g=b.endpoint||"Unknown",h=`${g}|${b.model}|${b.provider||"unknown"}`;p.byEndpoint[h]||(p.byEndpoint[h]={requests:0,promptTokens:0,completionTokens:0,cost:0,endpoint:g,rawModel:b.model,provider:e,lastUsed:b.timestamp});let i=p.byEndpoint[h];i.requests++,i.promptTokens+=a,i.completionTokens+=c,i.cost+=d,new Date(b.timestamp)>new Date(i.lastUsed)&&(i.lastUsed=b.timestamp)}}return p}async function F(a="7d"){let b=await z(),c=b.data.history||[],d=b.data.dailySummary||{},e=Date.now();if("24h"===a){let a=e-864e5,b=Array.from({length:24},(b,c)=>({label:new Date(a+36e5*c).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1}),tokens:0,cost:0}));for(let d of c){let c=new Date(d.timestamp).getTime();if(c<a||c>e)continue;let f=Math.min(Math.floor((c-a)/36e5),23);b[f].tokens+=(d.tokens?.prompt_tokens||0)+(d.tokens?.completion_tokens||0),b[f].cost+=d.cost||0}return b}let f="7d"===a?7:"30d"===a?30:60,g=new Date;return Array.from({length:f},(a,b)=>{let c=new Date(g);c.setDate(c.getDate()-(f-1-b));let e=d[`${c.getFullYear()}-${String(c.getMonth()+1).padStart(2,"0")}-${String(c.getDate()).padStart(2,"0")}`];return{label:c.toLocaleDateString("en-US",{month:"short",day:"numeric"}),tokens:e?(e.promptTokens||0)+(e.completionTokens||0):0,cost:e&&e.cost||0}})}},49120:(a,b,c)=>{c.d(b,{n:()=>i});var d=c(33873),e=c.n(d),f=c(21820),g=c.n(f);let h="n9router",i=process.env.DATA_DIR?process.env.DATA_DIR:"win32"===process.platform?e().join(process.env.APPDATA||e().join(g().homedir(),"AppData","Roaming"),h):e().join(g().homedir(),`.${h}`)},90336:(a,b,c)=>{c.d(b,{Rw:()=>x,SL:()=>w,ox:()=>v});var d=c(82996),e=c(11259),f=c(76760),g=c.n(f),h=c(73024),i=c.n(h);c(48161);var j=c(49120);let k="u">typeof caches&&"object"==typeof caches,l=k?null:g().join(j.n,"request-details.json");k||i().existsSync(j.n)||i().mkdirSync(j.n,{recursive:!0});let m=null;async function n(){if(k)return null;if(!m){let a=new e.Pv(l),b=new d.t(a,{records:[]});await b.read(),b.data?.records||(b.data={records:[]}),m=b}return m}let o=null,p=0;async function q(){if(o&&Date.now()-p<5e3)return o;try{let{getSettings:a}=await Promise.all([c.e(7502),c.e(9718)]).then(c.bind(c,89718)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;o={enabled:"boolean"==typeof b.enableObservability?b.enableObservability:d,maxRecords:b.observabilityMaxRecords||parseInt(process.env.OBSERVABILITY_MAX_RECORDS||String(200),10),batchSize:b.observabilityBatchSize||parseInt(process.env.OBSERVABILITY_BATCH_SIZE||String(20),10),flushIntervalMs:b.observabilityFlushIntervalMs||parseInt(process.env.OBSERVABILITY_FLUSH_INTERVAL_MS||String(5e3),10),maxJsonSize:1024*(b.observabilityMaxJsonSize||parseInt(process.env.OBSERVABILITY_MAX_JSON_SIZE||"5",10))}}catch{o={enabled:!1,maxRecords:200,batchSize:20,flushIntervalMs:5e3,maxJsonSize:5120}}return p=Date.now(),o}let r=[],s=null,t=!1;async function u(){if(!k&&!t&&0!==r.length){t=!0;try{let a=[...r];r=[];let b=await n(),c=await q();for(let d of a){d.id||(d.id=function(a){let b=new Date().toISOString(),c=Math.random().toString(36).substring(2,8),d=a?a.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown";return`${b}-${c}-${d}`}(d.model)),d.timestamp||(d.timestamp=new Date().toISOString()),d.request?.headers&&(d.request.headers=function(a){if(!a||"object"!=typeof a)return{};let b=["authorization","x-api-key","cookie","token","api-key"],c={...a};for(let a of Object.keys(c))b.some(b=>a.toLowerCase().includes(b))&&delete c[a];return c}(d.request.headers));let a={id:d.id,provider:d.provider||null,model:d.model||null,connectionId:d.connectionId||null,timestamp:d.timestamp,status:d.status||null,latency:d.latency||{},tokens:d.tokens||{},request:d.request||{},providerRequest:d.providerRequest||{},providerResponse:d.providerResponse||{},response:d.response||{}},e=c.maxJsonSize;for(let b of["request","providerRequest","providerResponse","response"]){let c=JSON.stringify(a[b]);c.length>e&&(a[b]={_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)})}let f=b.data.records.findIndex(b=>b.id===a.id);-1!==f?b.data.records[f]=a:b.data.records.push(a)}for(b.data.records.sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp)),b.data.records.length>c.maxRecords&&(b.data.records=b.data.records.slice(0,c.maxRecords));b.data.records.length>1&&!(0x3200000>=Buffer.byteLength(JSON.stringify(b.data),"utf8"));)b.data.records=b.data.records.slice(0,Math.floor(b.data.records.length/2));await b.write()}catch(a){console.error("[requestDetailsDb] Batch write failed:",a)}finally{t=!1}}}async function v(a){if(k)return;let b=await q();b.enabled&&(r.push(a),r.length>=b.batchSize?(await u(),s&&(clearTimeout(s),s=null)):s||(s=setTimeout(()=>{u().catch(()=>{}),s=null},b.flushIntervalMs)))}async function w(a={}){if(k)return{details:[],pagination:{page:1,pageSize:50,totalItems:0,totalPages:0,hasNext:!1,hasPrev:!1}};let b=[...(await n()).data.records];a.provider&&(b=b.filter(b=>b.provider===a.provider)),a.model&&(b=b.filter(b=>b.model===a.model)),a.connectionId&&(b=b.filter(b=>b.connectionId===a.connectionId)),a.status&&(b=b.filter(b=>b.status===a.status)),a.startDate&&(b=b.filter(b=>new Date(b.timestamp)>=new Date(a.startDate))),a.endDate&&(b=b.filter(b=>new Date(b.timestamp)<=new Date(a.endDate))),b.sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp));let c=b.length,d=a.page||1,e=a.pageSize||50,f=Math.ceil(c/e);return{details:b.slice((d-1)*e,d*e),pagination:{page:d,pageSize:e,totalItems:c,totalPages:f,hasNext:d<f,hasPrev:d>1}}}async function x(a){return k?null:(await n()).data.records.find(b=>b.id===a)||null}let y=async()=>{s&&(clearTimeout(s),s=null),r.length>0&&await u()};k||(process.off("beforeExit",y),process.off("SIGINT",y),process.off("SIGTERM",y),process.off("exit",y),process.on("beforeExit",y),process.on("SIGINT",y),process.on("SIGTERM",y),process.on("exit",y))}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=541,exports.ids=[541],exports.modules={75681:(a,b,c)=>{"use strict";c.d(b,{DI:()=>j,IS:()=>d,JH:()=>i,Q2:()=>m,fg:()=>h,gb:()=>l,mq:()=>k,nJ:()=>e,rs:()=>o,wG:()=>p,zN:()=>g,zt:()=>n});let d={kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981",deprecated:!0,deprecationNotice:"Qwen OAuth free tier was discontinued by Alibaba on 2026-04-15. New connections will not work."},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationNotice:"Gemini CLI is designed exclusively for Gemini CLI. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},opencode:{id:"opencode",alias:"oc",name:"OpenCode",icon:"terminal",color:"#E87040",textIcon:"OC",noAuth:!0,passthroughModels:!0,modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"}}},e={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After $10 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0,serviceKinds:["llm","embedding","tts","imageToText"]},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"}},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo \xb7 Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",serviceKinds:["llm","embedding","image","imageToText","webSearch"]}},f={options:["auto","none","low","medium","high"],defaultMode:"auto"},g={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B",deprecated:!0,deprecationNotice:"AG is designed exclusively for Antigravity IDE. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6",thinkingConfig:f},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},h={glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",serviceKinds:["llm","webSearch"]},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",serviceKinds:["llm","image","imageToText","webSearch"]},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",serviceKinds:["llm","embedding","tts","image","imageToText","webSearch"],thinkingConfig:f},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",serviceKinds:["llm","imageToText"]},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",serviceKinds:["llm","imageToText"]},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",serviceKinds:["llm","imageToText","webSearch"]},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",serviceKinds:["llm","imageToText"]},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",serviceKinds:["llm","webSearch"]},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",serviceKinds:["stt","imageToText"]},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",serviceKinds:["stt"]},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai",serviceKinds:["image"]},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",serviceKinds:["tts"]},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",serviceKinds:["tts"],hidden:!0},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",serviceKinds:["tts"],hidden:!0},"local-device":{id:"local-device",alias:"local-device",name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD",serviceKinds:["tts"],noAuth:!0},"google-tts":{id:"google-tts",alias:"google-tts",name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT",serviceKinds:["tts"],noAuth:!0},"edge-tts":{id:"edge-tts",alias:"edge-tts",name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET",serviceKinds:["tts"],noAuth:!0},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui",serviceKinds:["image"]},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI",serviceKinds:["image"]},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",serviceKinds:["image","imageToText","tts"],hiddenKinds:["tts"]},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",serviceKinds:["llm"]},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"},tavily:{id:"tavily",alias:"tavily",name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",serviceKinds:["webSearch"]},"brave-search":{id:"brave-search",alias:"brave",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",serviceKinds:["webSearch"]},serper:{id:"serper",alias:"serper",name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",serviceKinds:["webSearch"]},exa:{id:"exa",alias:"exa",name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",serviceKinds:["webSearch"]},searxng:{id:"searxng",alias:"searxng",name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org",serviceKinds:["webSearch"],noAuth:!0},firecrawl:{id:"firecrawl",alias:"firecrawl",name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",serviceKinds:["webFetch"]}},i="openai-compatible-",j="anthropic-compatible-";function k(a){return"string"==typeof a&&a.startsWith(i)}function l(a){return"string"==typeof a&&a.startsWith(j)}let m={...d,...e,...g,...h};function n(a){for(let b of Object.values(m))if(b.alias===a||b.id===a)return b;return null}function o(a){let b=n(a);return b?.id||a}function p(a){let b=m[a];return b?.alias||a}Object.values(m).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(m).reduce((a,b)=>(a[b.id]=b.alias,a),{})},78335:()=>{},96487:()=>{}};
|
|
1
|
+
exports.id=541,exports.ids=[541],exports.modules={75681:(a,b,c)=>{"use strict";c.d(b,{DI:()=>k,IS:()=>d,JH:()=>j,Q2:()=>n,br:()=>i,fg:()=>h,gb:()=>m,mq:()=>l,nJ:()=>e,rs:()=>p,wG:()=>q,zN:()=>g,zt:()=>o});let d={kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981",deprecated:!0,deprecationNotice:"Qwen OAuth free tier was discontinued by Alibaba on 2026-04-15. New connections will not work."},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationNotice:"Gemini CLI is designed exclusively for Gemini CLI. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},opencode:{id:"opencode",alias:"oc",name:"OpenCode Free",icon:"terminal",color:"#E87040",textIcon:"OC",noAuth:!0,passthroughModels:!0,modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"}}},e={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After $10 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0,serviceKinds:["llm","embedding","tts","imageToText"]},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"}},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo \xb7 Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",serviceKinds:["llm","embedding","image","imageToText","webSearch"]}},f={options:["auto","none","low","medium","high"],defaultMode:"auto"},g={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B",deprecated:!0,deprecationNotice:"AG is designed exclusively for Antigravity IDE. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6",thinkingConfig:f},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},h={glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",serviceKinds:["llm","webSearch"]},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",serviceKinds:["llm","image","imageToText","webSearch"]},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",serviceKinds:["llm","embedding","tts","image","imageToText","webSearch"],thinkingConfig:f},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",serviceKinds:["llm","imageToText"]},"opencode-go":{id:"opencode-go",alias:"ocg",name:"OpenCode Go",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode Go subscription: $5/mo (then $10/mo). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",serviceKinds:["llm","imageToText"]},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",serviceKinds:["llm","imageToText","webSearch"]},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",serviceKinds:["llm","imageToText"]},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",serviceKinds:["llm","webSearch"]},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",serviceKinds:["stt","imageToText"]},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",serviceKinds:["stt"]},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai",serviceKinds:["image"]},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",serviceKinds:["tts"]},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",serviceKinds:["tts"],hidden:!0},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",serviceKinds:["tts"],hidden:!0},"local-device":{id:"local-device",alias:"local-device",name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD",serviceKinds:["tts"],noAuth:!0},"google-tts":{id:"google-tts",alias:"google-tts",name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT",serviceKinds:["tts"],noAuth:!0},"edge-tts":{id:"edge-tts",alias:"edge-tts",name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET",serviceKinds:["tts"],noAuth:!0},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui",serviceKinds:["image"]},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI",serviceKinds:["image"]},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",serviceKinds:["image","imageToText","tts"],hiddenKinds:["tts"]},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",serviceKinds:["llm"]},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"},tavily:{id:"tavily",alias:"tavily",name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",serviceKinds:["webSearch"]},"brave-search":{id:"brave-search",alias:"brave",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",serviceKinds:["webSearch"]},serper:{id:"serper",alias:"serper",name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",serviceKinds:["webSearch"]},exa:{id:"exa",alias:"exa",name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",serviceKinds:["webSearch"]},searxng:{id:"searxng",alias:"searxng",name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org",serviceKinds:["webSearch"],noAuth:!0},firecrawl:{id:"firecrawl",alias:"firecrawl",name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",serviceKinds:["webFetch"]}},i={"grok-web":{id:"grok-web",alias:"gw",name:"Grok Web (Subscription)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GW",website:"https://grok.com",authType:"cookie",authHint:"Paste your sso= cookie value from grok.com",passthroughModels:!0,serviceKinds:["llm"]},"perplexity-web":{id:"perplexity-web",alias:"pw",name:"Perplexity Web (Pro/Max)",icon:"search",color:"#20808D",textIcon:"PW",website:"https://www.perplexity.ai",authType:"cookie",authHint:"Paste your __Secure-next-auth.session-token cookie value from perplexity.ai",serviceKinds:["llm"]}},j="openai-compatible-",k="anthropic-compatible-";function l(a){return"string"==typeof a&&a.startsWith(j)}function m(a){return"string"==typeof a&&a.startsWith(k)}let n={...d,...e,...g,...h,...i};function o(a){for(let b of Object.values(n))if(b.alias===a||b.id===a)return b;return null}function p(a){let b=o(a);return b?.id||a}function q(a){let b=n[a];return b?.alias||a}Object.values(n).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(n).reduce((a,b)=>(a[b.id]=b.alias,a),{})},78335:()=>{},96487:()=>{}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=6143,exports.ids=[6143],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,t2:()=>h,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:1e3,max:24e4,maxLevel:15},g=3e4,h=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},41004:(a,b,c)=>{c.d(b,{C8:()=>k,Uc:()=>f,cI:()=>i,eo:()=>g,gx:()=>d,nQ:()=>j,sB:()=>h,v1:()=>e}),c(3662);let d={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},e={sessionTtlMs:72e5,sessionCleanupIntervalMs:18e5,dnsCacheTtlMs:3e5,proxyDispatchersMaxSize:20},f=64e3,g=32e3,h={maxAttempts:2,delayMs:2e3},i={429:0,503:1,502:1},j=3,k=["Please write a 5-10 word title for the following conversation:"]},43659:(a,b,c)=>{c.d(b,{A1:()=>g,lR:()=>i,wO:()=>h,yj:()=>e,zL:()=>f});var d=c(3662);function e(a,b){let c;return new Response(JSON.stringify((c=d.LY[a]||(a>=500?{type:"server_error",code:"internal_server_error"}:{type:"invalid_request_error",code:""}),{error:{message:b||d.O[a]||"An error occurred",type:c.type,code:c.code}})),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function f(a){let b="";try{let c=await a.text();try{let a=JSON.parse(c);b=a.error?.message||a.message||a.error||c}catch{b=c}}catch{b=`Upstream error: ${a.status}`}let c=("string"==typeof b?b:JSON.stringify(b))||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:a.status,message:c}}function g(a,b){return{success:!1,status:a,error:b,response:e(a,b)}}function h(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function i(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},86143:(a,b,c)=>{c.d(b,{Nq:()=>E,Op:()=>G,PE:()=>K});var d=c(43659),e=c(41004),f=c(79646),g=c(28354),h=c(79748),i=c(21820),j=c(33873);let k=(0,g.promisify)(f.execFile);function l(a,b,c){let d=Buffer.from(a,"base64");return"json"===c?{success:!0,response:new Response(JSON.stringify({audio:a,format:b}),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}:{success:!0,response:new Response(d,{headers:{"Content-Type":`audio/${b}`,"Content-Length":String(d.length),"Access-Control-Allow-Origin":"*"}})}}let m={token:null,tokenTime:0},n={token:null,tokenTime:0},o="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36";async function p(){let a=Date.now();if(m.token&&a-m.tokenTime<66e4)return m.token;let b=await fetch("https://translate.google.com/",{headers:{"User-Agent":o}});if(!b.ok)throw Error(`Google translate fetch failed: ${b.status}`);let c=await b.text(),d=c.match(/"FdrFJe":"(.*?)"/)?.[1],e=c.match(/"cfb2h":"(.*?)"/)?.[1];if(!d||!e)throw Error("Failed to parse Google token");return m.token={"f.sid":d,bl:e},m.tokenTime=a,m.token}let q=0;async function r(a,b){let c=await p(),d=a.replace(/[@^*()\\/\-_+=><"'\u201c\u201d\u3010\u3011]/g," ").replaceAll(", ",". "),e="jQ1olc",f=1e5*++q+Math.floor(1e3+9e3*Math.random()),g=new URLSearchParams({rpcids:e,"f.sid":c["f.sid"],bl:c.bl,hl:b,"soc-app":1,"soc-platform":1,"soc-device":1,_reqid:f,rt:"c"}),h=[d,b,null,"undefined",[0]],i=new URLSearchParams;i.append("f.req",JSON.stringify([[[e,JSON.stringify(h),null,"generic"]]]));let j=await fetch(`https://translate.google.com/_/TranslateWebserverUi/data/batchexecute?${g}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Referer:"https://translate.google.com/"},body:i.toString()});if(!j.ok)throw Error(`Google TTS failed: ${j.status}`);let k=JSON.parse(JSON.parse((await j.text()).split("\n")[3])[0][2])[0];if(!k||k.length<100)throw Error("Google TTS returned empty audio");return k}async function s(){let a=Date.now();if(n.token&&a-n.tokenTime<3e5)return n.token;let b=await fetch("https://www.bing.com/translator",{headers:{"User-Agent":o,"Accept-Language":"vi,en-US;q=0.9,en;q=0.8"}});if(!b.ok)throw Error(`Bing translator fetch failed: ${b.status}`);let c=(b.headers.getSetCookie?.()||[]).map(a=>a.split(";")[0]).join("; "),d=(await b.text()).match(/params_AbusePreventionHelper\s*=\s*\[([^,]+),([^,]+),/);if(!d)throw Error("Failed to parse Bing token");return n.token={key:d[1],token:d[2].replace(/"/g,""),cookie:c},n.tokenTime=a,n.token}async function t(a,b,c){let d=b.split("-").slice(0,2).join("-"),e=b.toLowerCase().includes("male")?"Male":"Female",f=`<speak version='1.0' xml:lang='${d}'><voice xml:lang='${d}' xml:gender='${e}' name='${b}'><prosody rate='0.00%'>${a}</prosody></voice></speak>`,g=new URLSearchParams;return g.append("ssml",f),g.append("token",c.token),g.append("key",c.key),fetch("https://www.bing.com/tfettts?isVertical=1&&IG=1&IID=translator.5023&SFX=1",{method:"POST",body:g.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"*/*",Origin:"https://www.bing.com",Referer:"https://www.bing.com/translator","User-Agent":o,...c.cookie?{Cookie:c.cookie}:{}}})}async function u(a,b){let c=await s(),d=await t(a,b,c);if((429===d.status||403===d.status)&&(n.token=null,n.tokenTime=0,c=await s(),d=await t(a,b,c)),!d.ok){let a=await d.text().catch(()=>"");throw Error(`Bing TTS failed: ${d.status}${a?" - "+a:""}`)}let e=await d.arrayBuffer();if(e.byteLength<1024)throw Error("Bing TTS returned empty audio");return Buffer.from(e).toString("base64")}let v=null;async function w(){let{stdout:a}=await k("say",["-v","?"]),b=[];for(let c of a.split("\n")){let a=c.match(/^([^\s].*?)\s{2,}([a-z]{2}_[A-Z]{2})/);if(!a)continue;let d=a[1].trim(),e=a[2].trim(),f=e.split("_")[0],g=e.split("_")[1];b.push({id:d,name:d,locale:e,lang:f,country:g,gender:""})}return b}async function x(){let{stdout:a}=await k("powershell.exe",["-NoProfile","-NonInteractive","-WindowStyle","Hidden","-Command","Add-Type -AssemblyName System.Speech; $s = New-Object System.Speech.Synthesis.SpeechSynthesizer; $s.GetInstalledVoices() | ForEach-Object { $v = $_.VoiceInfo; [PSCustomObject]@{ Name=$v.Name; Culture=$v.Culture.Name; Gender=$v.Gender } } | ConvertTo-Json -Compress"],{windowsHide:!0}),b=JSON.parse(a.trim()||"[]");return(Array.isArray(b)?b:[b]).map(a=>{let b=a.Culture||"en-US",[c,d=""]=b.split("-");return{id:a.Name,name:a.Name,locale:b.replace("-","_"),lang:c,country:d,gender:({1:"Male",2:"Female",Male:"Male",Female:"Female"})[a.Gender]||""}})}async function y(){if(v)return v;try{let a="win32"===process.platform?await x():await w();return v=a,a}catch{return[]}}async function z(a,b){let c=await (0,h.mkdtemp)((0,j.join)((0,i.tmpdir)(),"tts-")),d=(0,j.join)(c,"out.aiff"),e=(0,j.join)(c,"out.mp3");try{let c=b?["-v",b,"-o",d,a]:["-o",d,a];return await k("say",c),await k("ffmpeg",["-y","-i",d,"-codec:a","libmp3lame","-qscale:a","4",e]),(await (0,h.readFile)(e)).toString("base64")}finally{await (0,h.rm)(c,{recursive:!0,force:!0})}}let A=null,B=0;async function C(){let a=Date.now();if(A&&a-B<864e5)return A;let b=await fetch("https://speech.platform.bing.com/consumer/speech/synthesize/readaloud/voices/list?trustedclienttoken=6A5AA1D4EAFF4E9FB37E23D68491D6F4",{headers:{"User-Agent":o}});if(!b.ok)throw Error(`Edge TTS voices fetch failed: ${b.status}`);let c=await b.json();return A=c,B=a,c}let D=new Map;async function E(a){if(!a)throw Error("ElevenLabs API key required");let b=Date.now(),c=D.get(a);if(c&&b-c.time<864e5)return c.voices;let d=await fetch("https://api.elevenlabs.io/v1/voices",{headers:{"xi-api-key":a,"Content-Type":"application/json"}});if(!d.ok)throw Error(`ElevenLabs voices fetch failed: ${d.status}`);let e=((await d.json()).voices||[]).map(a=>({...a,lang:a.labels?.language||"en"}));return D.set(a,{voices:e,time:b}),e}async function F(a,b,c,d="eleven_flash_v2_5"){let e=await fetch(`https://api.elevenlabs.io/v1/text-to-speech/${b}`,{method:"POST",headers:{"xi-api-key":c,"Content-Type":"application/json"},body:JSON.stringify({text:a,model_id:d,voice_settings:{stability:.5,similarity_boost:.75}})});if(!e.ok){let a=await e.json().catch(()=>({}));throw Error(a?.detail?.message||`ElevenLabs TTS failed: ${e.status}`)}let f=await e.arrayBuffer();if(f.byteLength<1024)throw Error("ElevenLabs TTS returned empty audio");return Buffer.from(f).toString("base64")}let G={"edge-tts":C,"local-device":y,elevenlabs:E};async function H({model:a,input:b,credentials:c,responseFormat:f="mp3"}){if(!c?.apiKey)return(0,d.A1)(e.gx.UNAUTHORIZED,"No OpenRouter API key configured");let g="openai/gpt-4o-mini-tts",h="alloy";if(a&&a.includes("/")){let b=a.lastIndexOf("/"),c=a.slice(b+1),d=a.slice(0,b);d.includes("/")?(g=d,h=c):h=a}else a&&(h=a);let i=await fetch("https://openrouter.ai/api/v1/chat/completions",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${c.apiKey}`,"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"},body:JSON.stringify({model:g,modalities:["text","audio"],audio:{voice:h,format:"wav"},stream:!0,messages:[{role:"user",content:b}]})});if(!i.ok){let a=await i.json().catch(()=>({}));return(0,d.A1)(i.status,a?.error?.message||`OpenRouter TTS failed: ${i.status}`)}let j=[],k=i.body.getReader(),m=new TextDecoder,n="";for(;;){let{done:a,value:b}=await k.read();if(a)break;let c=(n+=m.decode(b,{stream:!0})).split("\n");for(let a of(n=c.pop(),c))if(a.startsWith("data: ")&&"data: [DONE]"!==a)try{let b=JSON.parse(a.slice(6)),c=b.choices?.[0]?.delta?.audio?.data;c&&j.push(c)}catch{}}return 0===j.length?(0,d.A1)(e.gx.BAD_GATEWAY,"OpenRouter TTS returned no audio data"):l(j.join(""),"wav",f)}async function I({model:a,input:b,credentials:c,responseFormat:f="mp3"}){if(!c?.apiKey)return(0,d.A1)(e.gx.UNAUTHORIZED,"No OpenAI API key configured");let g="gpt-4o-mini-tts",h="alloy";if(a&&a.includes("/")){let b=a.split("/");2===b.length&&([g,h]=b)}else a&&(h=a);let i=(c.baseUrl||"https://api.openai.com").replace(/\/+$/,""),j=await fetch(`${i}/v1/audio/speech`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${c.apiKey}`},body:JSON.stringify({model:g,voice:h,input:b})});if(!j.ok){let a=await j.json().catch(()=>({}));return(0,d.A1)(j.status,a?.error?.message||`OpenAI TTS failed: ${j.status}`)}let k=await j.arrayBuffer();return l(Buffer.from(k).toString("base64"),"mp3",f)}let J={"google-tts":{synthesize:async(a,b)=>({base64:await r(a,b||"en"),format:"mp3"}),requiresCredentials:!1},"edge-tts":{synthesize:async(a,b)=>({base64:await u(a,b||"vi-VN-HoaiMyNeural"),format:"mp3"}),requiresCredentials:!1},"local-device":{synthesize:async(a,b)=>({base64:await z(a,b),format:"mp3"}),requiresCredentials:!1},elevenlabs:{synthesize:async(a,b,c)=>{if(!c?.apiKey)throw Error("ElevenLabs API key required");let d="eleven_flash_v2_5",e=b;return b&&b.includes("/")&&([d,e]=b.split("/")),{base64:await F(a,e,c.apiKey,d),format:"mp3"}},requiresCredentials:!0},openai:{synthesize:async(a,b,c,d)=>await I({model:b,input:a,credentials:c,responseFormat:d}),requiresCredentials:!0},openrouter:{synthesize:async(a,b,c,d)=>await H({model:b,input:a,credentials:c,responseFormat:d}),requiresCredentials:!0}};async function K({provider:a,model:b,input:c,credentials:f,responseFormat:g="mp3"}){if(!c?.trim())return(0,d.A1)(e.gx.BAD_REQUEST,"Missing required field: input");let h=J[a];if(!h)return(0,d.A1)(e.gx.BAD_REQUEST,`Provider '${a}' does not support TTS via this route.`);try{let a=await h.synthesize(c.trim(),b,f,g);if(void 0!==a.success)return a;return l(a.base64,a.format,g)}catch(a){return(0,d.A1)(e.gx.BAD_GATEWAY,a.message||"TTS synthesis failed")}}}};
|
|
1
|
+
"use strict";exports.id=6143,exports.ids=[6143],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,t2:()=>h,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},41004:(a,b,c)=>{c.d(b,{C8:()=>k,Uc:()=>f,cI:()=>i,eo:()=>g,gx:()=>d,nQ:()=>j,sB:()=>h,v1:()=>e}),c(3662);let d={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},e={sessionTtlMs:72e5,sessionCleanupIntervalMs:18e5,dnsCacheTtlMs:3e5,proxyDispatchersMaxSize:20},f=64e3,g=32e3,h={maxAttempts:2,delayMs:2e3},i={429:0,503:1,502:1},j=3,k=["Please write a 5-10 word title for the following conversation:"]},43659:(a,b,c)=>{c.d(b,{A1:()=>g,lR:()=>i,wO:()=>h,yj:()=>e,zL:()=>f});var d=c(3662);function e(a,b){let c;return new Response(JSON.stringify((c=d.LY[a]||(a>=500?{type:"server_error",code:"internal_server_error"}:{type:"invalid_request_error",code:""}),{error:{message:b||d.O[a]||"An error occurred",type:c.type,code:c.code}})),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function f(a){let b="";try{let c=await a.text();try{let a=JSON.parse(c);b=a.error?.message||a.message||a.error||c}catch{b=c}}catch{b=`Upstream error: ${a.status}`}let c=("string"==typeof b?b:JSON.stringify(b))||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:a.status,message:c}}function g(a,b){return{success:!1,status:a,error:b,response:e(a,b)}}function h(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function i(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},86143:(a,b,c)=>{c.d(b,{Nq:()=>E,Op:()=>G,PE:()=>K});var d=c(43659),e=c(41004),f=c(79646),g=c(28354),h=c(79748),i=c(21820),j=c(33873);let k=(0,g.promisify)(f.execFile);function l(a,b,c){let d=Buffer.from(a,"base64");return"json"===c?{success:!0,response:new Response(JSON.stringify({audio:a,format:b}),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}:{success:!0,response:new Response(d,{headers:{"Content-Type":`audio/${b}`,"Content-Length":String(d.length),"Access-Control-Allow-Origin":"*"}})}}let m={token:null,tokenTime:0},n={token:null,tokenTime:0},o="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36";async function p(){let a=Date.now();if(m.token&&a-m.tokenTime<66e4)return m.token;let b=await fetch("https://translate.google.com/",{headers:{"User-Agent":o}});if(!b.ok)throw Error(`Google translate fetch failed: ${b.status}`);let c=await b.text(),d=c.match(/"FdrFJe":"(.*?)"/)?.[1],e=c.match(/"cfb2h":"(.*?)"/)?.[1];if(!d||!e)throw Error("Failed to parse Google token");return m.token={"f.sid":d,bl:e},m.tokenTime=a,m.token}let q=0;async function r(a,b){let c=await p(),d=a.replace(/[@^*()\\/\-_+=><"'\u201c\u201d\u3010\u3011]/g," ").replaceAll(", ",". "),e="jQ1olc",f=1e5*++q+Math.floor(1e3+9e3*Math.random()),g=new URLSearchParams({rpcids:e,"f.sid":c["f.sid"],bl:c.bl,hl:b,"soc-app":1,"soc-platform":1,"soc-device":1,_reqid:f,rt:"c"}),h=[d,b,null,"undefined",[0]],i=new URLSearchParams;i.append("f.req",JSON.stringify([[[e,JSON.stringify(h),null,"generic"]]]));let j=await fetch(`https://translate.google.com/_/TranslateWebserverUi/data/batchexecute?${g}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Referer:"https://translate.google.com/"},body:i.toString()});if(!j.ok)throw Error(`Google TTS failed: ${j.status}`);let k=JSON.parse(JSON.parse((await j.text()).split("\n")[3])[0][2])[0];if(!k||k.length<100)throw Error("Google TTS returned empty audio");return k}async function s(){let a=Date.now();if(n.token&&a-n.tokenTime<3e5)return n.token;let b=await fetch("https://www.bing.com/translator",{headers:{"User-Agent":o,"Accept-Language":"vi,en-US;q=0.9,en;q=0.8"}});if(!b.ok)throw Error(`Bing translator fetch failed: ${b.status}`);let c=(b.headers.getSetCookie?.()||[]).map(a=>a.split(";")[0]).join("; "),d=(await b.text()).match(/params_AbusePreventionHelper\s*=\s*\[([^,]+),([^,]+),/);if(!d)throw Error("Failed to parse Bing token");return n.token={key:d[1],token:d[2].replace(/"/g,""),cookie:c},n.tokenTime=a,n.token}async function t(a,b,c){let d=b.split("-").slice(0,2).join("-"),e=b.toLowerCase().includes("male")?"Male":"Female",f=`<speak version='1.0' xml:lang='${d}'><voice xml:lang='${d}' xml:gender='${e}' name='${b}'><prosody rate='0.00%'>${a}</prosody></voice></speak>`,g=new URLSearchParams;return g.append("ssml",f),g.append("token",c.token),g.append("key",c.key),fetch("https://www.bing.com/tfettts?isVertical=1&&IG=1&IID=translator.5023&SFX=1",{method:"POST",body:g.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"*/*",Origin:"https://www.bing.com",Referer:"https://www.bing.com/translator","User-Agent":o,...c.cookie?{Cookie:c.cookie}:{}}})}async function u(a,b){let c=await s(),d=await t(a,b,c);if((429===d.status||403===d.status)&&(n.token=null,n.tokenTime=0,c=await s(),d=await t(a,b,c)),!d.ok){let a=await d.text().catch(()=>"");throw Error(`Bing TTS failed: ${d.status}${a?" - "+a:""}`)}let e=await d.arrayBuffer();if(e.byteLength<1024)throw Error("Bing TTS returned empty audio");return Buffer.from(e).toString("base64")}let v=null;async function w(){let{stdout:a}=await k("say",["-v","?"]),b=[];for(let c of a.split("\n")){let a=c.match(/^([^\s].*?)\s{2,}([a-z]{2}_[A-Z]{2})/);if(!a)continue;let d=a[1].trim(),e=a[2].trim(),f=e.split("_")[0],g=e.split("_")[1];b.push({id:d,name:d,locale:e,lang:f,country:g,gender:""})}return b}async function x(){let{stdout:a}=await k("powershell.exe",["-NoProfile","-NonInteractive","-WindowStyle","Hidden","-Command","Add-Type -AssemblyName System.Speech; $s = New-Object System.Speech.Synthesis.SpeechSynthesizer; $s.GetInstalledVoices() | ForEach-Object { $v = $_.VoiceInfo; [PSCustomObject]@{ Name=$v.Name; Culture=$v.Culture.Name; Gender=$v.Gender } } | ConvertTo-Json -Compress"],{windowsHide:!0}),b=JSON.parse(a.trim()||"[]");return(Array.isArray(b)?b:[b]).map(a=>{let b=a.Culture||"en-US",[c,d=""]=b.split("-");return{id:a.Name,name:a.Name,locale:b.replace("-","_"),lang:c,country:d,gender:({1:"Male",2:"Female",Male:"Male",Female:"Female"})[a.Gender]||""}})}async function y(){if(v)return v;try{let a="win32"===process.platform?await x():await w();return v=a,a}catch{return[]}}async function z(a,b){let c=await (0,h.mkdtemp)((0,j.join)((0,i.tmpdir)(),"tts-")),d=(0,j.join)(c,"out.aiff"),e=(0,j.join)(c,"out.mp3");try{let c=b?["-v",b,"-o",d,a]:["-o",d,a];return await k("say",c),await k("ffmpeg",["-y","-i",d,"-codec:a","libmp3lame","-qscale:a","4",e]),(await (0,h.readFile)(e)).toString("base64")}finally{await (0,h.rm)(c,{recursive:!0,force:!0})}}let A=null,B=0;async function C(){let a=Date.now();if(A&&a-B<864e5)return A;let b=await fetch("https://speech.platform.bing.com/consumer/speech/synthesize/readaloud/voices/list?trustedclienttoken=6A5AA1D4EAFF4E9FB37E23D68491D6F4",{headers:{"User-Agent":o}});if(!b.ok)throw Error(`Edge TTS voices fetch failed: ${b.status}`);let c=await b.json();return A=c,B=a,c}let D=new Map;async function E(a){if(!a)throw Error("ElevenLabs API key required");let b=Date.now(),c=D.get(a);if(c&&b-c.time<864e5)return c.voices;let d=await fetch("https://api.elevenlabs.io/v1/voices",{headers:{"xi-api-key":a,"Content-Type":"application/json"}});if(!d.ok)throw Error(`ElevenLabs voices fetch failed: ${d.status}`);let e=((await d.json()).voices||[]).map(a=>({...a,lang:a.labels?.language||"en"}));return D.set(a,{voices:e,time:b}),e}async function F(a,b,c,d="eleven_flash_v2_5"){let e=await fetch(`https://api.elevenlabs.io/v1/text-to-speech/${b}`,{method:"POST",headers:{"xi-api-key":c,"Content-Type":"application/json"},body:JSON.stringify({text:a,model_id:d,voice_settings:{stability:.5,similarity_boost:.75}})});if(!e.ok){let a=await e.json().catch(()=>({}));throw Error(a?.detail?.message||`ElevenLabs TTS failed: ${e.status}`)}let f=await e.arrayBuffer();if(f.byteLength<1024)throw Error("ElevenLabs TTS returned empty audio");return Buffer.from(f).toString("base64")}let G={"edge-tts":C,"local-device":y,elevenlabs:E};async function H({model:a,input:b,credentials:c,responseFormat:f="mp3"}){if(!c?.apiKey)return(0,d.A1)(e.gx.UNAUTHORIZED,"No OpenRouter API key configured");let g="openai/gpt-4o-mini-tts",h="alloy";if(a&&a.includes("/")){let b=a.lastIndexOf("/"),c=a.slice(b+1),d=a.slice(0,b);d.includes("/")?(g=d,h=c):h=a}else a&&(h=a);let i=await fetch("https://openrouter.ai/api/v1/chat/completions",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${c.apiKey}`,"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"},body:JSON.stringify({model:g,modalities:["text","audio"],audio:{voice:h,format:"wav"},stream:!0,messages:[{role:"user",content:b}]})});if(!i.ok){let a=await i.json().catch(()=>({}));return(0,d.A1)(i.status,a?.error?.message||`OpenRouter TTS failed: ${i.status}`)}let j=[],k=i.body.getReader(),m=new TextDecoder,n="";for(;;){let{done:a,value:b}=await k.read();if(a)break;let c=(n+=m.decode(b,{stream:!0})).split("\n");for(let a of(n=c.pop(),c))if(a.startsWith("data: ")&&"data: [DONE]"!==a)try{let b=JSON.parse(a.slice(6)),c=b.choices?.[0]?.delta?.audio?.data;c&&j.push(c)}catch{}}return 0===j.length?(0,d.A1)(e.gx.BAD_GATEWAY,"OpenRouter TTS returned no audio data"):l(j.join(""),"wav",f)}async function I({model:a,input:b,credentials:c,responseFormat:f="mp3"}){if(!c?.apiKey)return(0,d.A1)(e.gx.UNAUTHORIZED,"No OpenAI API key configured");let g="gpt-4o-mini-tts",h="alloy";if(a&&a.includes("/")){let b=a.split("/");2===b.length&&([g,h]=b)}else a&&(h=a);let i=(c.baseUrl||"https://api.openai.com").replace(/\/+$/,""),j=await fetch(`${i}/v1/audio/speech`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${c.apiKey}`},body:JSON.stringify({model:g,voice:h,input:b})});if(!j.ok){let a=await j.json().catch(()=>({}));return(0,d.A1)(j.status,a?.error?.message||`OpenAI TTS failed: ${j.status}`)}let k=await j.arrayBuffer();return l(Buffer.from(k).toString("base64"),"mp3",f)}let J={"google-tts":{synthesize:async(a,b)=>({base64:await r(a,b||"en"),format:"mp3"}),requiresCredentials:!1},"edge-tts":{synthesize:async(a,b)=>({base64:await u(a,b||"vi-VN-HoaiMyNeural"),format:"mp3"}),requiresCredentials:!1},"local-device":{synthesize:async(a,b)=>({base64:await z(a,b),format:"mp3"}),requiresCredentials:!1},elevenlabs:{synthesize:async(a,b,c)=>{if(!c?.apiKey)throw Error("ElevenLabs API key required");let d="eleven_flash_v2_5",e=b;return b&&b.includes("/")&&([d,e]=b.split("/")),{base64:await F(a,e,c.apiKey,d),format:"mp3"}},requiresCredentials:!0},openai:{synthesize:async(a,b,c,d)=>await I({model:b,input:a,credentials:c,responseFormat:d}),requiresCredentials:!0},openrouter:{synthesize:async(a,b,c,d)=>await H({model:b,input:a,credentials:c,responseFormat:d}),requiresCredentials:!0}};async function K({provider:a,model:b,input:c,credentials:f,responseFormat:g="mp3"}){if(!c?.trim())return(0,d.A1)(e.gx.BAD_REQUEST,"Missing required field: input");let h=J[a];if(!h)return(0,d.A1)(e.gx.BAD_REQUEST,`Provider '${a}' does not support TTS via this route.`);try{let a=await h.synthesize(c.trim(),b,f,g);if(void 0!==a.success)return a;return l(a.base64,a.format,g)}catch(a){return(0,d.A1)(e.gx.BAD_GATEWAY,a.message||"TTS synthesis failed")}}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=6327,exports.ids=[6327],exports.modules={7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>f,error:()=>i,info:()=>g,maskKey:()=>m,request:()=>j,response:()=>k,stream:()=>l,warn:()=>h});function d(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}function e(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function f(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] đ [${a}] ${b}${f}`)}}function g(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] âšī¸ [${a}] ${b}${f}`)}}function h(a,b,c){c&&e(c)}function i(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] â [${a}] ${b}${f}`)}}function j(a,b,c){let f=c?` ${e(c)}`:"";console.log(`\x1b[36m[${d()}] đĨ ${a} ${b}${f}\x1b[0m`)}function k(a,b,c){let f=c?` ${e(c)}`:"";console.log(`[${d()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${f}`)}function l(a,b){let c=b?` ${e(b)}`:"";console.log(`[${d()}] đ [STREAM] ${a}${c}`)}function m(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},38160:(a,b,c)=>{c.d(b,{Ou:()=>i,eG:()=>h});var d=c(75924);let e=new Map,f=new Map,g=null;async function h(a,b){if(!a||!b)return null;let c=e.get(a);if(c&&Date.now()-c.fetchedAt<36e5)return c.projectId;if(f.has(a))return f.get(a).promise;let d=new AbortController,g=(async()=>{try{let c=await j(b,d.signal);if(c)return e.set(a,{projectId:c,fetchedAt:Date.now()}),c;return console.warn("[ProjectId] could not fetch projectId for connection",a.slice(0,8)),null}catch(a){return console.warn(`[ProjectId] Error fetching project ID: ${a.message}`),null}finally{f.delete(a)}})();return f.set(a,{promise:g,controller:d,startedAt:Date.now()}),g}function i(a){e.delete(a)}async function j(a,b){let c=await fetch(d.nZ.loadCodeAssist,{method:"POST",headers:{...d.Ic,Authorization:`Bearer ${a}`},body:JSON.stringify({metadata:d.zv}),signal:b});if(!c.ok){let a=await c.text().catch(()=>"");throw Error(`loadCodeAssist failed: HTTP ${c.status} ${a.slice(0,200)}`)}let e=await c.json(),f=function(a){if(!a)return null;if("string"==typeof a.cloudaicompanionProject){let b=a.cloudaicompanionProject.trim();if(b)return b}if(a.cloudaicompanionProject&&"object"==typeof a.cloudaicompanionProject){let b=a.cloudaicompanionProject.id;if("string"==typeof b&&b.trim())return b.trim()}return null}(e);if(f)return f;let g="legacy-tier";if(Array.isArray(e.allowedTiers)){for(let a of e.allowedTiers)if(a&&"object"==typeof a&&!0===a.isDefault&&a.id&&"string"==typeof a.id&&a.id.trim()){g=a.id.trim();break}}return k(a,g,b)}async function k(a,b,c){console.log(`[ProjectId] Onboarding user with tier: ${b}`);let e={tierId:b,metadata:d.zv};for(let b=1;b<=5&&!c?.aborted;b++){let f=new AbortController,g=setTimeout(()=>f.abort(),3e4),h=()=>f.abort();c?.addEventListener("abort",h);try{let c=await fetch(d.nZ.onboardUser,{method:"POST",headers:{...d.Ic,Authorization:`Bearer ${a}`},body:JSON.stringify(e),signal:f.signal});if(clearTimeout(g),!c.ok){let a=await c.text().catch(()=>"");throw Error(`onboardUser HTTP ${c.status}: ${a.slice(0,200)}`)}let h=await c.json();if(!0===h.done){let a=function(a){if(!a?.response)return null;let b=a.response.cloudaicompanionProject;if("string"==typeof b){let a=b.trim();if(a)return a}if(b&&"object"==typeof b){let a=b.id;if("string"==typeof a&&a.trim())return a.trim()}return null}(h);if(a)return console.log(`[ProjectId] Successfully onboarded, project ID: ${a}`),a;throw Error("onboardUser done but no project_id in response")}console.log(`[ProjectId] Onboard attempt ${b}/5: not done yet, waiting...`),await new Promise(a=>setTimeout(a,2e3))}catch(a){if(clearTimeout(g),"AbortError"===a.name){if(console.warn(`[ProjectId] onboardUser attempt ${b} aborted (timeout or connection removed)`),c?.aborted)return null;continue}if(5===b)return console.warn(`[ProjectId] onboardUser failed after 5 attempts: ${a.message}`),null;console.warn(`[ProjectId] onboardUser attempt ${b} failed: ${a.message}, retrying...`),await new Promise(a=>setTimeout(a,2e3))}finally{clearTimeout(g),c?.removeEventListener("abort",h)}}return null}g=setInterval(()=>{try{let a=Date.now();for(let[b,c]of e)(!c||a-c.fetchedAt>=36e5)&&e.delete(b);for(let[b,c]of f){if(!c||"number"!=typeof c.startedAt){f.delete(b);continue}if(a-c.startedAt>12e4){try{c.controller.abort()}catch(a){}f.delete(b)}}}catch(a){console.warn("[ProjectId] cleanup sweep error:",a?.message??a)}},6e5),g?.unref?.()},67828:(a,b,c)=>{c.d(b,{I9:()=>i,Ql:()=>j,eU:()=>m,vN:()=>l});var d=c(7803),e=c(89718),f=c(38160),g=c(8590);let h=g.oD,i=(a,b,c)=>(0,g.I9)(a,b,c,d),j=(a,b)=>(0,g.Ql)(a,b,d);function k(a){return new Date(Date.now()+1e3*a).toISOString()}async function l(a,b){try{let c={};b.accessToken&&(c.accessToken=b.accessToken),b.refreshToken&&(c.refreshToken=b.refreshToken),b.expiresIn&&(c.expiresAt=k(b.expiresIn),c.expiresIn=b.expiresIn),b.providerSpecificData&&(c.providerSpecificData={...b.existingProviderSpecificData||{},...b.providerSpecificData}),b.projectId&&(c.projectId=b.projectId);let f=await (0,e.rj)(a,c);return d.info("TOKEN_REFRESH","Credentials updated in localDb",{connectionId:a,success:!!f}),!!f}catch(b){return d.error("TOKEN_REFRESH","Error updating credentials in localDb",{connectionId:a,error:b.message}),!1}}async function m(a,b){let c={...b};if(c.expiresAt){let b=new Date(c.expiresAt).getTime()-Date.now(),e=(0,g.Og)(a);if(b<e){let h;d.info("TOKEN_REFRESH","Token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round(b/1e3),refreshLeadMs:e});let i=await (h=c,(0,g.iD)(a,h,d));if(i?.accessToken){let b={...i,existingProviderSpecificData:c.providerSpecificData};await l(c.connectionId,b),function(a,b,c){("antigravity"===a||"gemini-cli"===a)&&b&&c&&((0,f.Ou)(b),(0,f.eG)(b,c).then(a=>{a&&l(b,{projectId:a}).catch(a=>{d.debug("TOKEN_REFRESH","Failed to persist refreshed projectId",{connectionId:b,error:a?.message??a})})}).catch(a=>{d.debug("TOKEN_REFRESH","Failed to fetch projectId after token refresh",{connectionId:b,error:a?.message??a})}))}(a,(c={...c,accessToken:i.accessToken,refreshToken:i.refreshToken??c.refreshToken,providerSpecificData:i.providerSpecificData?{...c.providerSpecificData,...i.providerSpecificData}:c.providerSpecificData,expiresAt:i.expiresIn?k(i.expiresIn):c.expiresAt}).connectionId,c.accessToken)}}}if("github"===a&&c.providerSpecificData?.copilotTokenExpiresAt){let b=1e3*c.providerSpecificData.copilotTokenExpiresAt-Date.now();if(b<h){let e;d.info("TOKEN_REFRESH","Copilot token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round(b/1e3)});let f=await (e=c.accessToken,(0,g.jR)(e,d));if(f){let a={...c.providerSpecificData,copilotToken:f.token,copilotTokenExpiresAt:f.expiresAt};await l(c.connectionId,{providerSpecificData:a}),c.providerSpecificData=a,c.copilotToken=f.token}}}return c}},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.getProviderNodes,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,mt:()=>d.getSettings,o5:()=>d.o5,op:()=>d.op,rj:()=>d.rj,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)}};
|