@jheavenknows/bluerouter 4.0.80 → 4.0.81
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/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +7 -3
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/routes-manifest.json +26 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page.js +4 -4
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page.js +2 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js +2 -2
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
- package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js +2 -2
- package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/qwen-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/qwen-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/combos/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js +2 -2
- package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js +2 -2
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/restart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page.js +2 -2
- package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +4 -4
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/app/.next-cli-build/server/app/dashboard.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
- package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +4 -4
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing/page.js +2 -2
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +4 -4
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login/page.js +2 -2
- package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +5 -5
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js +2 -2
- package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +7 -3
- package/app/.next-cli-build/server/chunks/232.js +1 -1
- package/app/.next-cli-build/server/chunks/2338.js +9 -8
- package/app/.next-cli-build/server/chunks/3104.js +2 -2
- package/app/.next-cli-build/server/chunks/3110.js +1 -1
- package/app/.next-cli-build/server/chunks/318.js +2 -2
- package/app/.next-cli-build/server/chunks/3593.js +1 -1
- package/app/.next-cli-build/server/chunks/3913.js +1 -1
- package/app/.next-cli-build/server/chunks/402.js +7 -6
- package/app/.next-cli-build/server/chunks/4684.js +1 -1
- package/app/.next-cli-build/server/chunks/4739.js +1 -1
- package/app/.next-cli-build/server/chunks/4746.js +1 -1
- package/app/.next-cli-build/server/chunks/4778.js +1 -0
- package/app/.next-cli-build/server/chunks/4780.js +1 -1
- package/app/.next-cli-build/server/chunks/4790.js +2 -2
- package/app/.next-cli-build/server/chunks/4803.js +1 -1
- package/app/.next-cli-build/server/chunks/507.js +1 -1
- package/app/.next-cli-build/server/chunks/5258.js +1 -1
- package/app/.next-cli-build/server/chunks/6252.js +1 -1
- package/app/.next-cli-build/server/chunks/6604.js +1 -1
- package/app/.next-cli-build/server/chunks/698.js +1 -1
- package/app/.next-cli-build/server/chunks/7130.js +1 -1
- package/app/.next-cli-build/server/chunks/7153.js +1 -1
- package/app/.next-cli-build/server/chunks/7324.js +1 -1
- package/app/.next-cli-build/server/chunks/7965.js +1 -1
- package/app/.next-cli-build/server/chunks/8062.js +1 -1
- package/app/.next-cli-build/server/chunks/8352.js +2 -2
- package/app/.next-cli-build/server/chunks/8469.js +1 -1
- package/app/.next-cli-build/server/chunks/8520.js +1 -1
- package/app/.next-cli-build/server/chunks/918.js +1 -1
- package/app/.next-cli-build/server/chunks/9489.js +1 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +2 -2
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/Awp_vjC7WM4vYwbL-39fu/_buildManifest.js +1 -0
- package/app/.next-cli-build/static/chunks/{5497-870b5871cedc0773.js → 5497-3b67afaa18bbb7a7.js} +2 -2
- package/app/.next-cli-build/static/chunks/{620-ded1efc5087f4699.js → 620-aa6095406af48c78.js} +1 -1
- package/app/.next-cli-build/static/chunks/7055-e70807a3a34c0ede.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/api-keys/{page-13622df7cf8357a6.js → page-dea0015957af5e95.js} +3 -3
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-ee3b462931f0f837.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/personalcloudprovider/page-412b9bdb7bf8aeb6.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-3c2cc260fa5c3c0c.js → page-34f98482077d7076.js} +2 -2
- package/app/.next-cli-build/static/chunks/app/_global-error/page-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/test/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/users/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/autostart/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/prompt-log-db/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/root-ca/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/qwen-settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/combos/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/endpoint/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/options/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/init/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/permissions/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-health/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/restart/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-4dec00916d7557b4.js +1 -0
- package/app/.next-cli-build/static/css/1a44773b396cb403.css +1 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal +0 -0
- package/app/package.json +1 -1
- package/package.json +1 -1
- package/app/.next-cli-build/static/8h574JCg-YhQIJIqq7K4G/_buildManifest.js +0 -1
- package/app/.next-cli-build/static/chunks/7055-827f7946161347b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-96a823ea01f06ce0.js +0 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/test/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/users/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/autostart/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/prompt-log-db/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/root-ca/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/qwen-settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/combos/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/endpoint/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/[id]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/options/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-health/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/restart/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-dc77b8043a19ecbb.js +0 -1
- package/app/.next-cli-build/static/css/209ecec1763274b4.css +0 -1
- /package/app/.next-cli-build/static/{8h574JCg-YhQIJIqq7K4G → Awp_vjC7WM4vYwbL-39fu}/_ssgManifest.js +0 -0
- /package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-4.0.25-to-4.0.76-4.0.76-20260623-124217 → upgrade-4.0.79-to-4.0.80-4.0.80-20260623-171118}/data.sqlite +0 -0
|
@@ -6,4 +6,4 @@ PRAGMA mmap_size = 30000000;
|
|
|
6
6
|
PRAGMA cache_size = -64000;
|
|
7
7
|
PRAGMA foreign_keys = ON;
|
|
8
8
|
PRAGMA busy_timeout = 5000;
|
|
9
|
-
`,e={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",adminDisabled:"INTEGER DEFAULT 0",allowedModels:"TEXT DEFAULT '[]'",ownerUser:"TEXT DEFAULT ''",createdByUser:"TEXT DEFAULT ''",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)","CREATE INDEX IF NOT EXISTS idx_ak_owner ON apiKeys(ownerUser)","CREATE INDEX IF NOT EXISTS idx_ak_created_by ON apiKeys(createdByUser)","CREATE INDEX IF NOT EXISTS idx_ak_admin_disabled ON apiKeys(adminDisabled)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]}};function f(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},88469:(a,b,c)=>{c.d(b,{createBetterSqliteAdapter:()=>g});var d=c(87550),e=c.n(d),f=c(34050);function g(a){let b=new(e())(a);b.exec(f.oG);let c=new Map;function d(a){let d=c.get(a);return d||(d=b.prepare(a),c.set(a,d)),d}let g=setInterval(()=>{try{b.pragma("wal_checkpoint(TRUNCATE)")}catch{}},6e4);function h(){try{b.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{c.clear()}catch{}try{b.close()}catch{}}"function"==typeof g.unref&&g.unref();let i=()=>h();return process.once("beforeExit",i),process.once("SIGINT",()=>{i(),process.exit(0)}),process.once("SIGTERM",()=>{i(),process.exit(0)}),{driver:"better-sqlite3",run:(a,b=[])=>d(a).run(b),get:(a,b=[])=>d(a).get(b),all:(a,b=[])=>d(a).all(b),exec:a=>b.exec(a),transaction:a=>b.transaction(a)(),checkpoint(){try{b.pragma("wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(g),h()},raw:b}}}};
|
|
9
|
+
`,e={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",scope:"TEXT DEFAULT 'system'",ownerUser:"TEXT DEFAULT ''",createdByUser:"TEXT DEFAULT ''",visibility:"TEXT DEFAULT 'system'",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)","CREATE INDEX IF NOT EXISTS idx_pc_scope_owner ON providerConnections(scope, ownerUser)","CREATE INDEX IF NOT EXISTS idx_pc_provider_scope ON providerConnections(provider, scope)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",adminDisabled:"INTEGER DEFAULT 0",allowedModels:"TEXT DEFAULT '[]'",ownerUser:"TEXT DEFAULT ''",createdByUser:"TEXT DEFAULT ''",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)","CREATE INDEX IF NOT EXISTS idx_ak_owner ON apiKeys(ownerUser)","CREATE INDEX IF NOT EXISTS idx_ak_created_by ON apiKeys(createdByUser)","CREATE INDEX IF NOT EXISTS idx_ak_admin_disabled ON apiKeys(adminDisabled)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]}};function f(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},88469:(a,b,c)=>{c.d(b,{createBetterSqliteAdapter:()=>g});var d=c(87550),e=c.n(d),f=c(34050);function g(a){let b=new(e())(a);b.exec(f.oG);let c=new Map;function d(a){let d=c.get(a);return d||(d=b.prepare(a),c.set(a,d)),d}let g=setInterval(()=>{try{b.pragma("wal_checkpoint(TRUNCATE)")}catch{}},6e4);function h(){try{b.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{c.clear()}catch{}try{b.close()}catch{}}"function"==typeof g.unref&&g.unref();let i=()=>h();return process.once("beforeExit",i),process.once("SIGINT",()=>{i(),process.exit(0)}),process.once("SIGTERM",()=>{i(),process.exit(0)}),{driver:"better-sqlite3",run:(a,b=[])=>d(a).run(b),get:(a,b=[])=>d(a).get(b),all:(a,b=[])=>d(a).all(b),exec:a=>b.exec(a),transaction:a=>b.transaction(a)(),checkpoint(){try{b.pragma("wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(g),h()},raw:b}}}};
|
|
@@ -6,4 +6,4 @@ PRAGMA mmap_size = 30000000;
|
|
|
6
6
|
PRAGMA cache_size = -64000;
|
|
7
7
|
PRAGMA foreign_keys = ON;
|
|
8
8
|
PRAGMA busy_timeout = 5000;
|
|
9
|
-
`,e={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",adminDisabled:"INTEGER DEFAULT 0",allowedModels:"TEXT DEFAULT '[]'",ownerUser:"TEXT DEFAULT ''",createdByUser:"TEXT DEFAULT ''",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)","CREATE INDEX IF NOT EXISTS idx_ak_owner ON apiKeys(ownerUser)","CREATE INDEX IF NOT EXISTS idx_ak_created_by ON apiKeys(createdByUser)","CREATE INDEX IF NOT EXISTS idx_ak_admin_disabled ON apiKeys(adminDisabled)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]}};function f(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},88520:(a,b,c)=>{c.d(b,{createNodeSqliteAdapter:()=>e});var d=c(63775);async function e(a){let b=process.emit;process.emit=function(a,c,...d){return!("warning"===a&&c?.name==="ExperimentalWarning"&&/SQLite/i.test(c.message||""))&&b.call(process,a,c,...d)};let e=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(a);e.exec(d.oG);let f=new Map;function g(a){let b=f.get(a);return b||(b=e.prepare(a),f.set(a,b)),b}let h=setInterval(()=>{try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function i(){try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{f.clear()}catch{}try{e.close()}catch{}}"function"==typeof h.unref&&h.unref();let j=()=>i();return process.once("beforeExit",j),process.once("SIGINT",()=>{j(),process.exit(0)}),process.once("SIGTERM",()=>{j(),process.exit(0)}),{driver:"node:sqlite",run(a,b=[]){let c=g(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>g(a).get(...b),all:(a,b=[])=>g(a).all(...b),exec:a=>e.exec(a),transaction(a){let b=`sp_${Math.random().toString(36).slice(2)}`;e.exec(`SAVEPOINT ${b}`);try{let c=a();return e.exec(`RELEASE ${b}`),c}catch(a){try{e.exec(`ROLLBACK TO ${b}`),e.exec(`RELEASE ${b}`)}catch{}throw a}},checkpoint(){try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(h),i()},raw:e}}}};
|
|
9
|
+
`,e={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",scope:"TEXT DEFAULT 'system'",ownerUser:"TEXT DEFAULT ''",createdByUser:"TEXT DEFAULT ''",visibility:"TEXT DEFAULT 'system'",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)","CREATE INDEX IF NOT EXISTS idx_pc_scope_owner ON providerConnections(scope, ownerUser)","CREATE INDEX IF NOT EXISTS idx_pc_provider_scope ON providerConnections(provider, scope)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",adminDisabled:"INTEGER DEFAULT 0",allowedModels:"TEXT DEFAULT '[]'",ownerUser:"TEXT DEFAULT ''",createdByUser:"TEXT DEFAULT ''",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)","CREATE INDEX IF NOT EXISTS idx_ak_owner ON apiKeys(ownerUser)","CREATE INDEX IF NOT EXISTS idx_ak_created_by ON apiKeys(createdByUser)","CREATE INDEX IF NOT EXISTS idx_ak_admin_disabled ON apiKeys(adminDisabled)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]}};function f(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},88520:(a,b,c)=>{c.d(b,{createNodeSqliteAdapter:()=>e});var d=c(63775);async function e(a){let b=process.emit;process.emit=function(a,c,...d){return!("warning"===a&&c?.name==="ExperimentalWarning"&&/SQLite/i.test(c.message||""))&&b.call(process,a,c,...d)};let e=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(a);e.exec(d.oG);let f=new Map;function g(a){let b=f.get(a);return b||(b=e.prepare(a),f.set(a,b)),b}let h=setInterval(()=>{try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function i(){try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{f.clear()}catch{}try{e.close()}catch{}}"function"==typeof h.unref&&h.unref();let j=()=>i();return process.once("beforeExit",j),process.once("SIGINT",()=>{j(),process.exit(0)}),process.once("SIGTERM",()=>{j(),process.exit(0)}),{driver:"node:sqlite",run(a,b=[]){let c=g(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>g(a).get(...b),all:(a,b=[])=>g(a).all(...b),exec:a=>e.exec(a),transaction(a){let b=`sp_${Math.random().toString(36).slice(2)}`;e.exec(`SAVEPOINT ${b}`);try{let c=a();return e.exec(`RELEASE ${b}`),c}catch(a){try{e.exec(`ROLLBACK TO ${b}`),e.exec(`RELEASE ${b}`)}catch{}throw a}},checkpoint(){try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(h),i()},raw:e}}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=918,exports.ids=[918,1998],exports.modules={7793:(a,b,c)=>{c.d(b,{Pt:()=>x,Tr:()=>y,c1:()=>v,kI:()=>z,vk:()=>w});var d=c(89718),e=c(57023),f=c(39326),g=c(12557),h=c(3662),i=c(75681);function j(a={},b){let c=String(b||"").toLowerCase();for(let[b,d]of Object.entries(a||{}))if(String(b).toLowerCase()===c)return String((Array.isArray(d)?d[0]||"":d||"")||"");return""}var k=c(11893),l=c(7803);let m=Promise.resolve(),n=new Map,o=0;function p(a){return"client_ip"===a||"client_session"===a?a:"global"}async function q(a,b={}){a?.id&&"noauth"!==a.id&&await (0,d.updateProviderConnection)(a.id,{lastUsedAt:new Date().toISOString(),...b})}function r(a,b,c){return{id:a.id,connectionId:a.id,provider:b,providerLabel:a.displayName||a.name||a.email||b,label:a.displayName||a.name||a.email||a.id,model:c||"__all",endpoint:function(a={}){let b=a.providerSpecificData||{};return a.endpoint||a.baseUrl||a.baseURL||a.base_url||b.endpoint||b.baseUrl||b.baseURL||b.base_url||b.providerUrl||b.provider_url||b.url||""}(a),tags:function(a={}){let b=a.tags||a.labels||a.providerSpecificData?.tags||a.providerSpecificData?.labels||a.providerSpecificData?.routingTags||[];return Array.isArray(b)?b.filter(Boolean).map(String):"string"==typeof b?b.split(/[;,\s]+/).filter(Boolean):b&&"object"==typeof b?Object.entries(b).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?a:`${a}:${b}`):[]}(a),providerSpecificData:a.providerSpecificData||{},maxInFlight:a.providerSpecificData?.maxInFlight||a.maxInFlight,_connection:a}}async function s(a,b){let c,d=Number.isFinite(c=Number.parseInt(b,10))&&c>0?c:1,e=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],f=e?.consecutiveUseCount||0;if(e&&e.lastUsedAt&&f<d)return await q(e,{consecutiveUseCount:(e.consecutiveUseCount||0)+1}),e;let g=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0];return await q(g,{consecutiveUseCount:1}),g}async function t({providerId:a,availableConnections:b,stickyLimit:c,stickyScope:d,stickyTtlMinutes:e,stickyContext:f,stickyRebindOnFailure:g,stickyRebindFailureThreshold:h}){let i,j,k=p(d),m="global"!==(i=p(k))&&f?.key?`${a}::${i}::${f.key}`:null;if(!m)return s(b,c);let r=Date.now();if(!(r-o<6e4))for(let[a,b]of(o=r,n.entries()))(!b?.expiresAt||b.expiresAt<=r)&&n.delete(a);let u=Date.now(),v=6e4*(!Number.isFinite(j=Number.parseInt(e,10))||j<=0?120:Math.min(j,10080)),w=n.get(m);if(w&&w.expiresAt>u){let d,e=b.find(a=>a.id===w.connectionId);if(e)return n.set(m,{...w,failureCount:0,lastUsedAt:u,expiresAt:u+v}),await q(e),e;let f=await s(b,c),i=(w.failureCount||0)+1,j=Number.isFinite(d=Number.parseInt(h,10))&&d>0?Math.min(d,50):3;return!1!==g&&i>=j&&f?.id?(n.set(m,{...w,connectionId:f.id,reboundAt:u,reboundReason:"assigned-account-unavailable",failureCount:0,lastUsedAt:u,expiresAt:u+v}),l.warn("AUTH",`${a} | sticky account unavailable ${i} time(s), rebound sticky session to ${f.id?.slice?.(0,8)||f.id}`)):(n.set(m,{...w,failureCount:i,lastFallbackConnectionId:f?.id||null,lastFallbackAt:u,lastUsedAt:u,expiresAt:u+v}),l.warn("AUTH",`${a} | sticky account unavailable, temporary fallback ${i}/${j}`)),f}w&&n.delete(m);let x=await s(b,c);return n.set(m,{connectionId:x.id,stickyScope:k,stickyKey:f.key,sessionId:f.sessionId||null,clientIp:f.clientIp||null,sourceTool:f.sourceTool||null,failureCount:0,createdAt:u,lastUsedAt:u,expiresAt:u+v}),x}async function u({providerId:a,availableConnections:b,model:c,strategy:d,providerOverride:e}){let f=b.map(b=>r(b,a,c));(0,k.OI)(f);let g=e.modelTagRules||e.modelTags||e.tagRules||{},h=e.requiredTags||e.tags||[];if(f=(0,k.OF)(f,c,g),h?.length){let a=h.map(a=>String(a).toLowerCase());f=f.filter(b=>b.tags.map(a=>String(a).toLowerCase()).every(a=>!0)&&a.every(a=>b.tags.map(a=>String(a).toLowerCase()).includes(a)))}f.length||(f=b.map(b=>r(b,a,c)));let i=("p2c"===d||"power-of-two"===d||"power_of_two"===d?(0,k.ZL)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}):(0,k.Gc)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}))[0],j=b.find(a=>a.id===i?.connectionId)||b[0];return await q(j,{consecutiveUseCount:1}),j}async function v(a,b=null,c=null,h={}){let k,n=b instanceof Set?b:b?new Set([b]):new Set,o=h?.preferredConnectionId||null,p=m;m=new Promise(a=>{k=a});try{let b;await p;let k=(0,i.rs)(a);if(i.IS[k]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[k]||{},b=await (0,f.B)({proxyPoolId:a.proxyPoolId||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:b.connectionProxyEnabled,connectionProxyUrl:b.connectionProxyUrl,connectionNoProxy:b.connectionNoProxy,connectionProxyPoolId:b.proxyPoolId||null,vercelRelayUrl:b.vercelRelayUrl||""}}}let m=await (0,d.getProviderConnections)({provider:k,isActive:!0});if(l.debug("AUTH",`${a} | total connections: ${m.length}, excludeIds: ${n.size>0?[...n].join(","):"none"}, model: ${c||"any"}`),0===m.length)return l.warn("AUTH",`No credentials for ${a}`),null;let q=await (0,d.mt)(),r=m.filter(a=>!(n.has(a.id)||(0,g.Bl)(a,c))),s=(0,e.VA)(r,{settings:q,providerId:k,model:c}),v=s.available,w=s.blocked;if(l.debug("AUTH",`${a} | available: ${v.length}/${m.length}`),m.forEach(a=>{let b=n.has(a.id),d=(0,g.Bl)(a,c);if(b||d){let e=(0,g.kJ)(a);l.debug("AUTH",` -> ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===v.length){if(void 0!==r&&void 0!==w&&r.length>0&&w.length>0){let a=(0,e.JZ)(k,r,w);return l.warn("AUTH",a.lastError),a}let b=m.filter(a=>(0,g.Bl)(a,c)),d=b.map(a=>(0,g.kJ)(a)).filter(Boolean).sort()[0]||null;if(d){let e=b[0];return l.warn("AUTH",`${a} | all ${m.length} accounts locked for ${c||"all"} (${(0,g.Qo)(d)}) | lastError=${e?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:d,retryAfterHuman:(0,g.Qo)(d),lastError:e?.lastError||null,lastErrorCode:e?.errorCode||null}}return l.warn("AUTH",`${a} | all ${m.length} accounts unavailable`),null}let x=(q.providerStrategies||{})[k]||{},y=x.fallbackStrategy||x.strategy||q.fallbackStrategy||"fill-first";if(o&&(b=v.find(a=>a.id===o))&&l.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if(["least-latency","least_latency","p2c","power-of-two","power_of_two"].includes(y))b=await u({providerId:k,availableConnections:v,model:c,strategy:y,providerOverride:x}),l.info("AUTH",`${a} | ${y} selected ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`);else if("round-robin"===y){let a=x.stickyRoundRobinLimit||q.stickyRoundRobinLimit||3,c=x.stickyScope||q.providerRoundRobinStickyScope||"global",d=x.stickyTtlMinutes||q.providerRoundRobinStickyTtlMinutes||120,e=void 0!==x.stickyFallbackToClientIp?x.stickyFallbackToClientIp:!1!==q.providerStickyFallbackToClientIp,f=void 0!==x.stickyRebindOnFailure?x.stickyRebindOnFailure:!1!==q.providerStickyRebindOnFailure,g=x.stickyRebindFailureThreshold||q.providerStickyRebindFailureThreshold||3,i=function({body:a,headers:b={},scope:c="global",fallbackToClientIp:d=!0}){if("client_ip"!==c&&"client_session"!==c)return null;let e=function(a={}){return String(j(a,"x-9r-client-ip")||j(a,"x-forwarded-for")||j(a,"x-real-ip")||j(a,"cf-connecting-ip")||"").split(",")[0].trim().replace(/^::ffff:/,"").replace(/^::1$/,"127.0.0.1")}(b),f=function(a={}){return j(a,"x-9r-source-tool")||j(a,"originator")||j(a,"copilot-integration-id")||""}(b),g="client_session"===c?String(function(a,b={}){return j(b,"x-client-session-id")||j(b,"session_id")||j(b,"session-id")||j(b,"x-session-id")||j(b,"x-interaction-id")||j(b,"conversation_id")||j(b,"conversation-id")||j(b,"x-conversation-id")||a?.conversationId||a?.conversation_id||a?.sessionId||a?.session_id||a?.metadata?.conversationId||a?.metadata?.conversation_id||a?.metadata?.sessionId||a?.metadata?.session_id||a?.conversationState?.conversationId||a?.conversationState?.sessionId||a?.conversationState?.currentConversationId||""}(a,b)||""):"";return"client_session"===c&&g?{key:[f||"tool",e||"unknown-ip",g].join("::"),label:g,scope:c,sourceTool:f,clientIp:e,sessionId:g}:"client_session"===c&&!1===d?null:e?{key:[f||"tool",e].join("::"),label:e,scope:"client_ip",sourceTool:f,clientIp:e,sessionId:""}:null}({body:h?.body||null,headers:h?.headers||{},scope:c,fallbackToClientIp:e});b=await t({providerId:k,availableConnections:v,stickyLimit:a,stickyScope:c,stickyTtlMinutes:d,stickyContext:i,stickyRebindOnFailure:f,stickyRebindFailureThreshold:g})}else b=v[0];let z=await (0,f.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:z.connectionProxyEnabled,connectionProxyUrl:z.connectionProxyUrl,connectionNoProxy:z.connectionNoProxy,connectionProxyPoolId:z.proxyPoolId||null,vercelRelayUrl:z.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{k&&k()}}async function w(a,b,c,e=null,f=null,i=null){let j,k,m;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let n=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),o=n?.backoffLevel||0;if(i&&i>Date.now()?(j=!0,k=Math.min(i-Date.now(),h.fh),m=0):{shouldFallback:j,cooldownMs:k,newBackoffLevel:m}=(0,g.hk)(b,c,o),!j)return{shouldFallback:!1,cooldownMs:0};let p="string"==typeof c?c.slice(0,100):"Provider error",q=(0,g.S5)(f,k);await (0,d.updateProviderConnection)(a,{...q,testStatus:"unavailable",lastError:p,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:m??o});let r=Object.keys(q)[0],s=n?.displayName||n?.name||n?.email||a.slice(0,8);return l.warn("AUTH",`${s} locked ${r} for ${Math.round(k/1e3)}s [${b}]`),e&&b&&p&&console.error(`X ${e} [${b}]: ${p}`),{shouldFallback:!0,cooldownMs:k}}async function x(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function y(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function z(a){return!!a&&await (0,d.ek)(a)}},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)}`}},19225:(a,b,c)=>{a.exports=c(44870)},39326:(a,b,c)=>{c.d(b,{B:()=>g});var d=c(71998);let e=new Set(["vercel","cloudflare","deno"]);function f(a){return null==a?"":String(a).trim()}async function g(a={}){try{let b=f(a?.proxyPoolId),c="__none__"===b?"":b,g=function(a={}){let b=a?.connectionProxyEnabled===!0,c=f(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:f(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=f(a?.proxyUrl),g=f(a?.noProxy);if(a&&!0===a.isActive&&b){if(e.has(a.type))return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:g,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:g,strictProxy:!0===a.strictProxy}}}if(g.connectionProxyEnabled&&g.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...g};return{source:"none",proxyPoolId:c||null,proxyPool:null,...g}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},57023:(a,b,c)=>{c.d(b,{JZ:()=>m,VA:()=>l,ce:()=>k,G9:()=>j});let d=[0,1,2,3,4,5,6],e=/^([01]\d|2[0-3]):([0-5]\d)$/;function f(a,b){let c=String(a||"").trim();return e.test(c)?c:b}function g(a){let[b,c]=f(a,"00:00").split(":").map(a=>Number.parseInt(a,10));return 60*b+c}function h(a={}){var b;let c=a&&"object"==typeof a?a:{};return{enabled:!1!==c.enabled,weekdays:Array.isArray(b=c.weekdays)?[...new Set(b.map(a=>Number.parseInt(a,10)).filter(a=>Number.isInteger(a)&&a>=0&&a<=6))].sort((a,b)=>a-b):[...d],fromTime:f(c.fromTime||c.from||c.startTime||c.start,"00:00"),toTime:f(c.toTime||c.to||c.endTime||c.end,"23:59"),timezone:c.timezone||"local"}}function i(a,b,c=1,d=3600){let e=Number.parseInt(a,10);return!Number.isFinite(e)||e<c?b:Math.min(e,d)}function j(a={}){var b;let c=a&&"object"==typeof a?a:{};return{enabled:!0===c.enabled,intervalSec:i(c.intervalSec,60,10,86400),failureThreshold:i(c.failureThreshold,3,1,20),timeoutMs:i(c.timeoutMs,15e3,1e3,12e4),prompt:"string"==typeof c.prompt&&c.prompt.trim()?c.prompt.trim():"Say hi",disableThinking:!1!==c.disableThinking,model:"string"==typeof(b=c.model||c.healthModel||c.testModel)?b.trim():""}}function k(a={},b={},c=""){let d=function(a={},b=""){return function(a={}){let b=a&&"object"==typeof a?a:{};return{overrideConnections:!0===b.overrideConnections,healthCheck:j(b.healthCheck||b)}}((a.providerHealthChecks||{})[b]||{})}(b,c||a.provider||"");return d.overrideConnections?{healthCheck:d.healthCheck,source:"provider",providerOverride:!0}:{healthCheck:j(a.healthCheck||{}),source:"connection",providerOverride:!1}}function l(a=[],b={}){let c=[],d=[];for(let e of a||[]){let a=function(a={},{settings:b={},providerId:c=a.provider||"",now:d=new Date}={}){let e=[],{healthCheck:f,source:i,providerOverride:j}=k(a,b,c),{schedule:l,source:m,providerOverride:n}=function(a={},b={},c=""){let d=function(a={},b=""){return function(a={}){let b=a&&"object"==typeof a?a:{};return{overrideConnections:!0===b.overrideConnections,schedule:h(b.schedule||b)}}((a.providerSchedules||{})[b]||{})}(b,c||a.provider||"");return d.overrideConnections?{schedule:d.schedule,source:"provider",providerOverride:!0}:{schedule:h(a.schedule||{}),source:"connection",providerOverride:!1}}(a,b,c),o=function(a={},b=new Date){let c=h(a);if(!1===c.enabled)return!0;let d=b.getDay();if(!c.weekdays.includes(d))return!1;let e=60*b.getHours()+b.getMinutes(),f=g(c.fromTime),i=g(c.toTime);return f===i||(f<i?e>=f&&e<=i:e>=f||e<=i)}(l,d);return!1===a.isActive&&e.push({code:"disabled",message:"connection disabled"}),o||e.push({code:"outside_schedule",message:`outside ${m} scheduler (${function(a={}){let b=h(a);if(!1===b.enabled)return"24/7";if(0===b.weekdays.length)return"No weekdays (never active)";let c=7===b.weekdays.length,d="00:00"===b.fromTime&&"23:59"===b.toTime;if(c&&d)return"24/7";let e=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],f=c?"All weekdays":b.weekdays.map(a=>e[a]).join(", ");return`${f} ${b.fromTime}-${b.toTime}`}(l)})`,source:m,providerOverride:n}),f.enabled&&"dead"===a.healthStatus&&e.push({code:"health_dead",message:a.healthLastError?`health check dead: ${a.healthLastError}`:"health check dead",source:i,providerOverride:j}),{available:0===e.length,reasons:e,schedule:l,scheduleSource:m,providerScheduleOverride:n,healthCheck:f,healthSource:i,providerHealthOverride:j,healthStatus:a.healthStatus||"unknown"}}(e,b);a.available?c.push(e):d.push({connection:e,availability:a})}return{available:c,blocked:d}}function m(a,b=[],c=[]){let d={};for(let a of c||[])for(let b of a.availability?.reasons||[])d[b.code]=(d[b.code]||0)+1;let e=Object.entries(d).map(([a,b])=>`${b} ${a}`).join(", ")||"no routable endpoint",f=(c||[]).slice(0,5).map(({connection:a,availability:b})=>{let c=a.displayName||a.name||a.email||a.id,d=(b.reasons||[]).map(a=>a.message||a.code).join("; ");return`${c}: ${d}`}).join(" | "),g=`No available endpoint for provider ${a}: all ${b.length} active account(s) are blocked by scheduler or health check (${e}).${f?` ${f}`:""}`;return{allUnavailableByPolicy:!0,retryAfter:null,retryAfterHuman:null,lastError:g,errorMessage:g}}},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};
|
|
1
|
+
"use strict";exports.id=918,exports.ids=[918,1998],exports.modules={7793:(a,b,c)=>{c.d(b,{Pt:()=>x,Tr:()=>y,c1:()=>v,kI:()=>z,vk:()=>w});var d=c(89718),e=c(57023),f=c(39326),g=c(12557),h=c(3662),i=c(75681);function j(a={},b){let c=String(b||"").toLowerCase();for(let[b,d]of Object.entries(a||{}))if(String(b).toLowerCase()===c)return String((Array.isArray(d)?d[0]||"":d||"")||"");return""}var k=c(11893),l=c(7803);let m=Promise.resolve(),n=new Map,o=0;function p(a){return"client_ip"===a||"client_session"===a?a:"global"}async function q(a,b={}){a?.id&&"noauth"!==a.id&&await (0,d.updateProviderConnection)(a.id,{lastUsedAt:new Date().toISOString(),...b})}function r(a,b,c){return{id:a.id,connectionId:a.id,provider:b,providerLabel:a.displayName||a.name||a.email||b,label:a.displayName||a.name||a.email||a.id,model:c||"__all",endpoint:function(a={}){let b=a.providerSpecificData||{};return a.endpoint||a.baseUrl||a.baseURL||a.base_url||b.endpoint||b.baseUrl||b.baseURL||b.base_url||b.providerUrl||b.provider_url||b.url||""}(a),tags:function(a={}){let b=a.tags||a.labels||a.providerSpecificData?.tags||a.providerSpecificData?.labels||a.providerSpecificData?.routingTags||[];return Array.isArray(b)?b.filter(Boolean).map(String):"string"==typeof b?b.split(/[;,\s]+/).filter(Boolean):b&&"object"==typeof b?Object.entries(b).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?a:`${a}:${b}`):[]}(a),providerSpecificData:a.providerSpecificData||{},maxInFlight:a.providerSpecificData?.maxInFlight||a.maxInFlight,_connection:a}}async function s(a,b){let c,d=Number.isFinite(c=Number.parseInt(b,10))&&c>0?c:1,e=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],f=e?.consecutiveUseCount||0;if(e&&e.lastUsedAt&&f<d)return await q(e,{consecutiveUseCount:(e.consecutiveUseCount||0)+1}),e;let g=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0];return await q(g,{consecutiveUseCount:1}),g}async function t({providerId:a,availableConnections:b,stickyLimit:c,stickyScope:d,stickyTtlMinutes:e,stickyContext:f,stickyRebindOnFailure:g,stickyRebindFailureThreshold:h}){let i,j,k=p(d),m="global"!==(i=p(k))&&f?.key?`${a}::${i}::${f.key}`:null;if(!m)return s(b,c);let r=Date.now();if(!(r-o<6e4))for(let[a,b]of(o=r,n.entries()))(!b?.expiresAt||b.expiresAt<=r)&&n.delete(a);let u=Date.now(),v=6e4*(!Number.isFinite(j=Number.parseInt(e,10))||j<=0?120:Math.min(j,10080)),w=n.get(m);if(w&&w.expiresAt>u){let d,e=b.find(a=>a.id===w.connectionId);if(e)return n.set(m,{...w,failureCount:0,lastUsedAt:u,expiresAt:u+v}),await q(e),e;let f=await s(b,c),i=(w.failureCount||0)+1,j=Number.isFinite(d=Number.parseInt(h,10))&&d>0?Math.min(d,50):3;return!1!==g&&i>=j&&f?.id?(n.set(m,{...w,connectionId:f.id,reboundAt:u,reboundReason:"assigned-account-unavailable",failureCount:0,lastUsedAt:u,expiresAt:u+v}),l.warn("AUTH",`${a} | sticky account unavailable ${i} time(s), rebound sticky session to ${f.id?.slice?.(0,8)||f.id}`)):(n.set(m,{...w,failureCount:i,lastFallbackConnectionId:f?.id||null,lastFallbackAt:u,lastUsedAt:u,expiresAt:u+v}),l.warn("AUTH",`${a} | sticky account unavailable, temporary fallback ${i}/${j}`)),f}w&&n.delete(m);let x=await s(b,c);return n.set(m,{connectionId:x.id,stickyScope:k,stickyKey:f.key,sessionId:f.sessionId||null,clientIp:f.clientIp||null,sourceTool:f.sourceTool||null,failureCount:0,createdAt:u,lastUsedAt:u,expiresAt:u+v}),x}async function u({providerId:a,availableConnections:b,model:c,strategy:d,providerOverride:e}){let f=b.map(b=>r(b,a,c));(0,k.OI)(f);let g=e.modelTagRules||e.modelTags||e.tagRules||{},h=e.requiredTags||e.tags||[];if(f=(0,k.OF)(f,c,g),h?.length){let a=h.map(a=>String(a).toLowerCase());f=f.filter(b=>b.tags.map(a=>String(a).toLowerCase()).every(a=>!0)&&a.every(a=>b.tags.map(a=>String(a).toLowerCase()).includes(a)))}f.length||(f=b.map(b=>r(b,a,c)));let i=("p2c"===d||"power-of-two"===d||"power_of_two"===d?(0,k.ZL)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}):(0,k.Gc)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}))[0],j=b.find(a=>a.id===i?.connectionId)||b[0];return await q(j,{consecutiveUseCount:1}),j}async function v(a,b=null,c=null,h={}){let k,n=b instanceof Set?b:b?new Set([b]):new Set,o=h?.preferredConnectionId||null,p=m;m=new Promise(a=>{k=a});try{let b;await p;let k=(0,i.rs)(a);if(i.IS[k]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[k]||{},b=await (0,f.B)({proxyPoolId:a.proxyPoolId||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:b.connectionProxyEnabled,connectionProxyUrl:b.connectionProxyUrl,connectionNoProxy:b.connectionNoProxy,connectionProxyPoolId:b.proxyPoolId||null,vercelRelayUrl:b.vercelRelayUrl||""}}}let m=String(h?.ownerUser||"").trim().toLowerCase(),q=m?await (0,d.getProviderConnections)({provider:k,scope:"personal",ownerUser:m}):[],r=q.filter(a=>!1!==a.isActive),s=q.length>0?[]:await (0,d.getProviderConnections)({provider:k,isActive:!0,scope:"system"}),v=new Set,w=[...r,...s].filter(a=>!(!a?.id||v.has(a.id))&&(v.add(a.id),!0));if(l.debug("AUTH",`${a} | total connections: ${w.length} (${r.length}/${q.length} personal, ${s.length} system), excludeIds: ${n.size>0?[...n].join(","):"none"}, model: ${c||"any"}`),0===w.length)return l.warn("AUTH",`No credentials for ${a}`),null;let x=await (0,d.mt)(),y=w.filter(a=>!(n.has(a.id)||(0,g.Bl)(a,c))),z=(0,e.VA)(y,{settings:x,providerId:k,model:c}),A=z.available,B=z.blocked;if(l.debug("AUTH",`${a} | available: ${A.length}/${w.length}`),w.forEach(a=>{let b=n.has(a.id),d=(0,g.Bl)(a,c);if(b||d){let e=(0,g.kJ)(a);l.debug("AUTH",` -> ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===A.length){if(void 0!==y&&void 0!==B&&y.length>0&&B.length>0){let a=(0,e.JZ)(k,y,B);return l.warn("AUTH",a.lastError),a}let b=w.filter(a=>(0,g.Bl)(a,c)),d=b.map(a=>(0,g.kJ)(a)).filter(Boolean).sort()[0]||null;if(d){let e=b[0];return l.warn("AUTH",`${a} | all ${w.length} accounts locked for ${c||"all"} (${(0,g.Qo)(d)}) | lastError=${e?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:d,retryAfterHuman:(0,g.Qo)(d),lastError:e?.lastError||null,lastErrorCode:e?.errorCode||null}}return l.warn("AUTH",`${a} | all ${w.length} accounts unavailable`),null}let C=(x.providerStrategies||{})[k]||{},D=C.fallbackStrategy||C.strategy||x.fallbackStrategy||"fill-first";if(o&&(b=A.find(a=>a.id===o))&&l.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if(["least-latency","least_latency","p2c","power-of-two","power_of_two"].includes(D))b=await u({providerId:k,availableConnections:A,model:c,strategy:D,providerOverride:C}),l.info("AUTH",`${a} | ${D} selected ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`);else if("round-robin"===D){let a=C.stickyRoundRobinLimit||x.stickyRoundRobinLimit||3,c=C.stickyScope||x.providerRoundRobinStickyScope||"global",d=C.stickyTtlMinutes||x.providerRoundRobinStickyTtlMinutes||120,e=void 0!==C.stickyFallbackToClientIp?C.stickyFallbackToClientIp:!1!==x.providerStickyFallbackToClientIp,f=void 0!==C.stickyRebindOnFailure?C.stickyRebindOnFailure:!1!==x.providerStickyRebindOnFailure,g=C.stickyRebindFailureThreshold||x.providerStickyRebindFailureThreshold||3,i=function({body:a,headers:b={},scope:c="global",fallbackToClientIp:d=!0}){if("client_ip"!==c&&"client_session"!==c)return null;let e=function(a={}){return String(j(a,"x-9r-client-ip")||j(a,"x-forwarded-for")||j(a,"x-real-ip")||j(a,"cf-connecting-ip")||"").split(",")[0].trim().replace(/^::ffff:/,"").replace(/^::1$/,"127.0.0.1")}(b),f=function(a={}){return j(a,"x-9r-source-tool")||j(a,"originator")||j(a,"copilot-integration-id")||""}(b),g="client_session"===c?String(function(a,b={}){return j(b,"x-client-session-id")||j(b,"session_id")||j(b,"session-id")||j(b,"x-session-id")||j(b,"x-interaction-id")||j(b,"conversation_id")||j(b,"conversation-id")||j(b,"x-conversation-id")||a?.conversationId||a?.conversation_id||a?.sessionId||a?.session_id||a?.metadata?.conversationId||a?.metadata?.conversation_id||a?.metadata?.sessionId||a?.metadata?.session_id||a?.conversationState?.conversationId||a?.conversationState?.sessionId||a?.conversationState?.currentConversationId||""}(a,b)||""):"";return"client_session"===c&&g?{key:[f||"tool",e||"unknown-ip",g].join("::"),label:g,scope:c,sourceTool:f,clientIp:e,sessionId:g}:"client_session"===c&&!1===d?null:e?{key:[f||"tool",e].join("::"),label:e,scope:"client_ip",sourceTool:f,clientIp:e,sessionId:""}:null}({body:h?.body||null,headers:h?.headers||{},scope:c,fallbackToClientIp:e});b=await t({providerId:k,availableConnections:A,stickyLimit:a,stickyScope:c,stickyTtlMinutes:d,stickyContext:i,stickyRebindOnFailure:f,stickyRebindFailureThreshold:g})}else b=A[0];let E=await (0,f.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:E.connectionProxyEnabled,connectionProxyUrl:E.connectionProxyUrl,connectionNoProxy:E.connectionNoProxy,connectionProxyPoolId:E.proxyPoolId||null,vercelRelayUrl:E.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{k&&k()}}async function w(a,b,c,e=null,f=null,i=null){let j,k,m;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let n=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),o=n?.backoffLevel||0;if(i&&i>Date.now()?(j=!0,k=Math.min(i-Date.now(),h.fh),m=0):{shouldFallback:j,cooldownMs:k,newBackoffLevel:m}=(0,g.hk)(b,c,o),!j)return{shouldFallback:!1,cooldownMs:0};let p="string"==typeof c?c.slice(0,100):"Provider error",q=(0,g.S5)(f,k);await (0,d.updateProviderConnection)(a,{...q,testStatus:"unavailable",lastError:p,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:m??o});let r=Object.keys(q)[0],s=n?.displayName||n?.name||n?.email||a.slice(0,8);return l.warn("AUTH",`${s} locked ${r} for ${Math.round(k/1e3)}s [${b}]`),e&&b&&p&&console.error(`X ${e} [${b}]: ${p}`),{shouldFallback:!0,cooldownMs:k}}async function x(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function y(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function z(a){return!!a&&await (0,d.ek)(a)}},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)}`}},19225:(a,b,c)=>{a.exports=c(44870)},39326:(a,b,c)=>{c.d(b,{B:()=>g});var d=c(71998);let e=new Set(["vercel","cloudflare","deno"]);function f(a){return null==a?"":String(a).trim()}async function g(a={}){try{let b=f(a?.proxyPoolId),c="__none__"===b?"":b,g=function(a={}){let b=a?.connectionProxyEnabled===!0,c=f(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:f(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=f(a?.proxyUrl),g=f(a?.noProxy);if(a&&!0===a.isActive&&b){if(e.has(a.type))return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:g,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:g,strictProxy:!0===a.strictProxy}}}if(g.connectionProxyEnabled&&g.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...g};return{source:"none",proxyPoolId:c||null,proxyPool:null,...g}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},57023:(a,b,c)=>{c.d(b,{JZ:()=>m,VA:()=>l,ce:()=>k,G9:()=>j});let d=[0,1,2,3,4,5,6],e=/^([01]\d|2[0-3]):([0-5]\d)$/;function f(a,b){let c=String(a||"").trim();return e.test(c)?c:b}function g(a){let[b,c]=f(a,"00:00").split(":").map(a=>Number.parseInt(a,10));return 60*b+c}function h(a={}){var b;let c=a&&"object"==typeof a?a:{};return{enabled:!1!==c.enabled,weekdays:Array.isArray(b=c.weekdays)?[...new Set(b.map(a=>Number.parseInt(a,10)).filter(a=>Number.isInteger(a)&&a>=0&&a<=6))].sort((a,b)=>a-b):[...d],fromTime:f(c.fromTime||c.from||c.startTime||c.start,"00:00"),toTime:f(c.toTime||c.to||c.endTime||c.end,"23:59"),timezone:c.timezone||"local"}}function i(a,b,c=1,d=3600){let e=Number.parseInt(a,10);return!Number.isFinite(e)||e<c?b:Math.min(e,d)}function j(a={}){var b;let c=a&&"object"==typeof a?a:{};return{enabled:!0===c.enabled,intervalSec:i(c.intervalSec,60,10,86400),failureThreshold:i(c.failureThreshold,3,1,20),timeoutMs:i(c.timeoutMs,15e3,1e3,12e4),prompt:"string"==typeof c.prompt&&c.prompt.trim()?c.prompt.trim():"Say hi",disableThinking:!1!==c.disableThinking,model:"string"==typeof(b=c.model||c.healthModel||c.testModel)?b.trim():""}}function k(a={},b={},c=""){let d=function(a={},b=""){return function(a={}){let b=a&&"object"==typeof a?a:{};return{overrideConnections:!0===b.overrideConnections,healthCheck:j(b.healthCheck||b)}}((a.providerHealthChecks||{})[b]||{})}(b,c||a.provider||"");return d.overrideConnections?{healthCheck:d.healthCheck,source:"provider",providerOverride:!0}:{healthCheck:j(a.healthCheck||{}),source:"connection",providerOverride:!1}}function l(a=[],b={}){let c=[],d=[];for(let e of a||[]){let a=function(a={},{settings:b={},providerId:c=a.provider||"",now:d=new Date}={}){let e=[],{healthCheck:f,source:i,providerOverride:j}=k(a,b,c),{schedule:l,source:m,providerOverride:n}=function(a={},b={},c=""){let d=function(a={},b=""){return function(a={}){let b=a&&"object"==typeof a?a:{};return{overrideConnections:!0===b.overrideConnections,schedule:h(b.schedule||b)}}((a.providerSchedules||{})[b]||{})}(b,c||a.provider||"");return d.overrideConnections?{schedule:d.schedule,source:"provider",providerOverride:!0}:{schedule:h(a.schedule||{}),source:"connection",providerOverride:!1}}(a,b,c),o=function(a={},b=new Date){let c=h(a);if(!1===c.enabled)return!0;let d=b.getDay();if(!c.weekdays.includes(d))return!1;let e=60*b.getHours()+b.getMinutes(),f=g(c.fromTime),i=g(c.toTime);return f===i||(f<i?e>=f&&e<=i:e>=f||e<=i)}(l,d);return!1===a.isActive&&e.push({code:"disabled",message:"connection disabled"}),o||e.push({code:"outside_schedule",message:`outside ${m} scheduler (${function(a={}){let b=h(a);if(!1===b.enabled)return"24/7";if(0===b.weekdays.length)return"No weekdays (never active)";let c=7===b.weekdays.length,d="00:00"===b.fromTime&&"23:59"===b.toTime;if(c&&d)return"24/7";let e=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],f=c?"All weekdays":b.weekdays.map(a=>e[a]).join(", ");return`${f} ${b.fromTime}-${b.toTime}`}(l)})`,source:m,providerOverride:n}),f.enabled&&"dead"===a.healthStatus&&e.push({code:"health_dead",message:a.healthLastError?`health check dead: ${a.healthLastError}`:"health check dead",source:i,providerOverride:j}),{available:0===e.length,reasons:e,schedule:l,scheduleSource:m,providerScheduleOverride:n,healthCheck:f,healthSource:i,providerHealthOverride:j,healthStatus:a.healthStatus||"unknown"}}(e,b);a.available?c.push(e):d.push({connection:e,availability:a})}return{available:c,blocked:d}}function m(a,b=[],c=[]){let d={};for(let a of c||[])for(let b of a.availability?.reasons||[])d[b.code]=(d[b.code]||0)+1;let e=Object.entries(d).map(([a,b])=>`${b} ${a}`).join(", ")||"no routable endpoint",f=(c||[]).slice(0,5).map(({connection:a,availability:b})=>{let c=a.displayName||a.name||a.email||a.id,d=(b.reasons||[]).map(a=>a.message||a.code).join("; ");return`${c}: ${d}`}).join(" | "),g=`No available endpoint for provider ${a}: all ${b.length} active account(s) are blocked by scheduler or health check (${e}).${f?` ${f}`:""}`;return{allUnavailableByPolicy:!0,retryAfter:null,retryAfterHuman:null,lastError:g,errorMessage:g}}},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=9489,exports.ids=[9489],exports.modules={18910:(a,b,c)=>{c.d(b,{Pr:()=>s,UP:()=>q,Vu:()=>r});var d=c(12557),e=c(43659),f=c(11893);let g=new Map,h=new Map,i=0;function j(a){return"client_ip"===a||"client_session"===a?a:"global"}function k(a){let b=Number.parseInt(a,10);return!Number.isFinite(b)||b<=0?120:Math.min(b,10080)}function l(a,b){let c=[...a];for(let a=0;a<b;a++){let a=c.shift();c.push(a)}return c}function m(a){let b=g.get(a);return"number"==typeof b?{index:b,consecutiveUseCount:0}:b||{index:0,consecutiveUseCount:0}}function n(a,b,c,d){let e=m(a).consecutiveUseCount+1;e>=d?g.set(a,{index:(b+1)%c,consecutiveUseCount:0}):g.set(a,{index:b,consecutiveUseCount:e})}function o(a,b,c){let d=b||"__default__",e=m(d).index%a.length,f=l(a,e);return n(d,e,a.length,c),f}function p(a,b){return{model:a,label:a,provider:b||"combo"}}function q(a){if(!a){g.clear(),h.clear();return}g.delete(a);let b=`${a}::`;for(let a of h.keys())a.startsWith(b)&&h.delete(a)}function r(a,b){if(a.includes("/"))return null;let c=(Array.isArray(b)?b:b?.combos||[]).find(b=>b.name===a);return c&&c.models&&c.models.length>0?c.models:null}async function s({body:a,models:b,handleSingleModel:c,log:g,comboName:q,comboStrategy:r,comboStickyLimit:t=1,comboStickyScope:u="global",comboStickyTtlMinutes:v=120,comboStickyContext:w=null}){let x=r||"fallback",y=function(a,b,c,d=1,e={}){let g;if(!a||a.length<=1)return a;let q=c||"fallback",r=a.map(a=>p(a,b));if((0,f.OI)(r),"least-latency"===q||"least_latency"===q)return(0,f.Gc)(r,{includeSkippedAtEnd:!0}).map(a=>a.model);if("p2c"===q||"power-of-two"===q||"power_of_two"===q)return(0,f.ZL)(r,{includeSkippedAtEnd:!0}).map(a=>a.model);if("round-robin"!==q)return a;let s=Number.isFinite(g=Number.parseInt(d,10))&&g>0?g:1,t=j(e.stickyScope),u=k(e.stickyTtlMinutes);return"global"===t?o(a,b,s):function(a,b,c,d,e,f){let g,p=Date.now();if(!(p-i<6e4))for(let[a,b]of(i=p,h.entries()))(!b?.expiresAt||b.expiresAt<=p)&&h.delete(a);let q=j(d),r="global"!==(g=j(q))&&f?.key?`${b||"__default__"}::${g}::${f.key}`:null;if(!r)return o(a,b,c);let s=Date.now(),t=6e4*k(e),u=h.get(r);if(u&&u.expiresAt>s){let b=Number.isFinite(u.index)?u.index:0;if(u.model){let c=a.indexOf(u.model);c>=0&&(b=c)}return b%=a.length,h.set(r,{...u,index:b,model:a[b],lastUsedAt:s,expiresAt:s+t}),l(a,b)}let v=b||"__default__",w=m(v).index%a.length;return h.set(r,{index:w,model:a[w],stickyScope:q,stickyKey:f.key,sessionId:f.sessionId||null,clientIp:f.clientIp||null,createdAt:s,lastUsedAt:s,expiresAt:s+t}),n(v,w,a.length,c),l(a,w)}(a,b,s,t,u,e.stickyContext||null)}(b,q,x,t,{stickyScope:u,stickyTtlMinutes:v,stickyContext:w});["round-robin","least-latency","least_latency","p2c","power-of-two","power_of_two"].includes(x)&&g?.debug?.("COMBO",`${x} combo "${q||"__default__"}" | sticky=${u||"global"}${w?.label?` | key=${w.label}`:""}`);let z=null,A=null,B=null;for(let b=0;b<y.length;b++){let e=y[b],h=p(e,q),i=(0,f.kb)(h);if(i.skipped&&b<y.length-1){g?.warn?.("COMBO",`Skipping ${e}: ${i.reason}`);continue}let j=Date.now();g.info("COMBO",`Trying model ${b+1}/${y.length}: ${e}`);try{let b=await c(a,e),k=Date.now()-j;if(i.end?.(),b.ok)return(0,f.Fg)(h,k),g.info("COMBO",`Model ${e} succeeded`),b;let l=b.statusText||"",m=null;try{let a=await b.clone().json();l=a?.error?.message||a?.error||a?.message||l,m=a?.retryAfter||null}catch{}if("string"!=typeof l)try{l=JSON.stringify(l)}catch{l=String(l)}(0,f.h6)(h,{status:b.status,message:l}),m&&(!A||new Date(m)<new Date(A))&&(A=m);let{shouldFallback:n,cooldownMs:o}=(0,d.hk)(b.status,l);if(!n)return g.warn("COMBO",`Model ${e} failed (no fallback)`,{status:b.status}),b;o&&o>0&&o<=5e3&&[502,503,504].includes(b.status)&&(g.info("COMBO",`Model ${e} transient ${b.status}, waiting ${o}ms before next`),await new Promise(a=>setTimeout(a,o))),z=l||String(b.status),B||(B=b.status),g.warn("COMBO",`Model ${e} failed, trying next`,{status:b.status})}catch(a){i.end?.(),z=a.message||String(a),B||(B=500),(0,f.h6)(h,a),g.warn("COMBO",`Model ${e} threw error, trying next`,{error:z})}}let C=z&&z.toLowerCase().includes("no credentials")?503:B||503,D=z||"All combo models unavailable";if(A){let a=(0,d.Qo)(A);return g.warn("COMBO",`All models failed | ${D} (${a})`),(0,e.wO)(C,D,A,a)}return g.warn("COMBO",`All models failed | ${D}`),new Response(JSON.stringify({error:{message:D}}),{status:C,headers:{"Content-Type":"application/json"}})}},29069:(a,b,c)=>{c.d(b,{HX:()=>h,mH:()=>i});var d=c(11893);function e(a){return String(a||"").trim()}function f(a){return Array.isArray(a)?[...new Set(a.map(a=>e(a)).filter(Boolean))]:"string"==typeof a?[...new Set(a.split(/[\n,;]+/).map(a=>e(a)).filter(Boolean))]:a&&"object"==typeof a?Object.entries(a).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?e(a):`${e(a)}:${e(b)}`).filter(Boolean):[]}function g(a){if(!a||"object"!=typeof a)return null;let b=e(a.name||a.id||a.exposedModel||a.model),c=e(a.exposedModel||a.model||a.name||a.id),d=e(a.type||"virtual");if("ollama-local"===d.toLowerCase())return null;let g=(a.targets||a.endpoints||a.models||[]).map(b=>(function(a,b={}){if("string"==typeof a)return{model:e(a),label:e(a),tags:[]};if(!a||"object"!=typeof a)return null;let c=e(a.model||a.value||a.id||a.fullModel);return c?{...a,id:e(a.id)||e(a.connectionId)||c,model:c,label:e(a.label||a.name||a.displayName)||c,connectionId:e(a.connectionId||a.connection_id||a.accountId),provider:e(a.provider||b.provider),endpoint:e(a.endpoint||a.baseUrl||a.baseURL||a.url),tags:f(a.tags||a.labels||a.routingTags),maxInFlight:Number(a.maxInFlight||a.maxInFlightPerTarget||b.maxInFlight||0)||void 0}:null})(b,a)).filter(Boolean);return b&&c&&0!==g.length?{...a,name:b,id:e(a.id)||b,exposedModel:c,enabled:!1!==a.enabled,type:d,strategy:e(a.strategy||a.fallbackStrategy||"least-latency"),requiredTags:f(a.requiredTags||a.tags),modelTagRules:function(a){if(!a||"object"!=typeof a)return{};let b={};for(let[c,d]of Object.entries(a)){let a=e(c),g=f(d);a&&g.length&&(b[a]=g)}return b}(a.modelTagRules||a.requiredTagsByModel||a.tagRules),targets:g}:null}function h(a={},b=""){let c=e(b);return c&&(function(a={}){let b=a.virtualCombos||[];return(Array.isArray(b)?b:Object.values(b||{})).map(g).filter(Boolean)})(a).find(a=>!1!==a.enabled&&(a.exposedModel===c||a.name===c))||null}async function i({body:a,combo:b,handleSingleTarget:c,log:f}){let h,j,k,l,m=e(a?.model||b?.exposedModel||b?.name),n=g(b);if(!n)return new Response(JSON.stringify({error:{message:"Invalid virtual combo"}}),{status:400,headers:{"Content-Type":"application/json"}});let o=(h=[...n.targets],j=n.modelTagRules||{},0===(h=(h=(0,d.OF)(h,m,j)).filter(a=>(function(a,b=[]){if(!b.length)return!0;let c=new Set((a.tags||[]).map(a=>String(a).toLowerCase()));return b.every(a=>c.has(String(a).toLowerCase()))})(a,n.requiredTags||[]))).length&&(h=[...n.targets]),k=h.map(a=>({...a,id:a.id||`${n.name}:${a.model}:${a.connectionId||"any"}`,connectionId:a.connectionId||"",provider:a.provider||"virtual-combo",providerLabel:n.name,label:a.label||a.model,model:m||n.exposedModel,upstreamModel:a.model,endpoint:a.endpoint||"",tags:a.tags||[],maxInFlight:a.maxInFlight})),(0,d.OI)(k),("p2c"===(l=String(n.strategy||"least-latency").toLowerCase())||"power-of-two"===l||"power_of_two"===l?(0,d.ZL)(k,{model:m,modelTagRules:j,includeSkippedAtEnd:!0}):"fallback"===l||"priority"===l?(0,d.Gc)(k,{model:m,modelTagRules:j,preserveOrder:!0,includeSkippedAtEnd:!0}):(0,d.Gc)(k,{model:m,modelTagRules:j,includeSkippedAtEnd:!0})).map(a=>({healthTarget:a,target:h.find(b=>a.upstreamModel===b.model&&(a.connectionId||"")===(b.connectionId||""))})).filter(a=>a.target)),p="All virtual combo targets unavailable",q=503;f?.info?.("VIRTUAL_COMBO",`Virtual combo "${n.name}" -> ${o.length} target(s), strategy=${n.strategy}`);for(let b=0;b<o.length;b+=1){let{target:e,healthTarget:g}=o[b],h=(0,d.kb)(g);if(h.skipped){f?.warn?.("VIRTUAL_COMBO",`Skip ${e.label||e.model}: ${h.reason}`);continue}let i=Date.now();try{let j={...a,model:e.model};f?.info?.("VIRTUAL_COMBO",`Trying ${b+1}/${o.length}: ${e.label||e.model}`);let k=await c(j,e),l=Date.now()-i;if(k?.ok)return(0,d.Fg)(g,l),h.end(),k;let m=k?.statusText||"request_failed";try{let a=await k.clone().json();m=a?.error?.message||a?.error||a?.message||m}catch{}q=k?.status||503,p="string"==typeof m?m:JSON.stringify(m),(0,d.h6)(g,{status:q,message:p}),f?.warn?.("VIRTUAL_COMBO",`${e.label||e.model} failed`,{status:q})}catch(a){q=500,p=a?.message||String(a),(0,d.h6)(g,a),f?.warn?.("VIRTUAL_COMBO",`${e.label||e.model} threw`,{error:p})}finally{h.end()}}return new Response(JSON.stringify({error:{message:p}}),{status:q||503,headers:{"Content-Type":"application/json"}})}},33669:(a,b,c)=>{c.d(b,{MI:()=>e,RC:()=>h,zx:()=>f});var d=c(89718);function e(a){return Array.isArray(a)?[...new Set(a.map(a=>String(a||"").trim()).filter(Boolean))]:[]}function f(a,b){if(!a||!1===a.isActive)return!1;let c=String(b||"").trim();if(!c)return!1;let d=e(a.allowedModels);return 0===d.length||d.includes(c)}async function g(a){let b,c=await (0,d.mt)(),e=(b=a?.headers?.get?.("Authorization")||"").startsWith("Bearer ")?b.slice(7).trim():a?.headers?.get?.("x-api-key")?.trim()||null;if(!e)return{settings:c,apiKey:null,keyRecord:null,missing:!0,invalid:!1};let f=await (0,d.mY)(e);return{settings:c,apiKey:e,keyRecord:f,missing:!1,invalid:!f||!1===f.isActive}}async function h(a,b){let c=await g(a);return c.missing?{error:{message:"Missing API key",type:"authentication_error"},status:401}:c.invalid?{error:{message:"Invalid API key",type:"authentication_error"},status:401}:{data:function(a,b){if(!b||0===e(b?.allowedModels).length)return a;let c=new Set(e(b.allowedModels));return(a||[]).filter(a=>c.has(a?.id))}(b,c.keyRecord)}}},38775:(a,b,c)=>{c.d(b,{d_:()=>h,mA:()=>g});var d=c(89718),e=c(40669);let f={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function g(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&f[b.providerAlias]?{...b,provider:f[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);return e?{provider:e.id,model:c.model}:{provider:c.provider,model:c.model}}return await (0,d.Dj)(c.model)?{provider:null,model:c.model}:(0,e.js)(a,d.OM)}async function h(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}},42318:(a,b,c)=>{function d(a={},b){let c=String(b||"").toLowerCase();for(let[b,d]of Object.entries(a||{}))if(String(b).toLowerCase()===c)return String((Array.isArray(d)?d[0]||"":d||"")||"");return""}function e({body:a,headers:b={},scope:c="global",fallbackToClientIp:f=!0}){if("client_ip"!==c&&"client_session"!==c)return null;let g=function(a={}){return String(d(a,"x-9r-client-ip")||d(a,"x-forwarded-for")||d(a,"x-real-ip")||d(a,"cf-connecting-ip")||"").split(",")[0].trim().replace(/^::ffff:/,"").replace(/^::1$/,"127.0.0.1")}(b),h=function(a={}){return d(a,"x-9r-source-tool")||d(a,"originator")||d(a,"copilot-integration-id")||""}(b),i="client_session"===c?String(function(a,b={}){return d(b,"x-client-session-id")||d(b,"session_id")||d(b,"session-id")||d(b,"x-session-id")||d(b,"x-interaction-id")||d(b,"conversation_id")||d(b,"conversation-id")||d(b,"x-conversation-id")||a?.conversationId||a?.conversation_id||a?.sessionId||a?.session_id||a?.metadata?.conversationId||a?.metadata?.conversation_id||a?.metadata?.sessionId||a?.metadata?.session_id||a?.conversationState?.conversationId||a?.conversationState?.sessionId||a?.conversationState?.currentConversationId||""}(a,b)||""):"";return"client_session"===c&&i?{key:[h||"tool",g||"unknown-ip",i].join("::"),label:i,scope:c,sourceTool:h,clientIp:g,sessionId:i}:"client_session"===c&&!1===f?null:g?{key:[h||"tool",g].join("::"),label:g,scope:"client_ip",sourceTool:h,clientIp:g,sessionId:""}:null}c.d(b,{lV:()=>e})},79489:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{P:()=>R});var e=c(48895),f=c(7793),g=c(71750),h=c(89718),i=c(33669),j=c(490),k=c(38775),l=c(92500),m=c(43659),n=c(18910),o=c(42318),p=c(29069),q=c(27349),r=c(41004),s=c(14170),t=c(7803),u=c(67828),v=c(38160),w=c(35901),x=c(97242),y=c(86171),z=c(75681),A=a([e,l]);function B({request:a,clientRawRequest:b,body:c,apiKey:d,model:e,provider:f="gateway",connectionId:g="",statusCode:h=500,errorCode:i="gateway_error",errorType:j="gateway",errorSource:k="gateway_validation",message:l="Gateway error"}){try{let m=b?.headers||{},n=b?.endpoint||"";if(a)try{m=m&&Object.keys(m).length?m:Object.fromEntries(a.headers.entries()),n=n||new URL(a.url).pathname}catch{}let o=(0,y.wS)({headers:m,requestId:b?.requestId,sessionId:b?.sessionId}),p={...o,requestContext:o,provider:f,model:e||c?.model||"unknown",connectionId:g,apiKey:d,endpoint:n,gatewayStatusCode:h,errorSource:k,errorType:j,errorCode:i,errorMessageShort:l,latencyMs:0};(0,w.jk)(p).catch(()=>{}),(0,y.sx)({provider:f,model:e||c?.model||"unknown",connectionId:g,apiKey:d,endpoint:n,statusCode:h,errorCode:i,errorType:j,errorMessage:l,requestContext:o,meta:{errorSource:k}})}catch{}}function C(a){return a&&"object"==typeof a&&!Array.isArray(a)}function D(a,b){return Object.prototype.hasOwnProperty.call(a||{},b)}function E(a){return null==a?"":String(a).trim()}function F(a={}){let b={...a};if(D(b,"enable_thinking")&&delete b.enable_thinking,D(b,"reasoning_budget")&&delete b.reasoning_budget,D(b,"thinking_token_budget")&&delete b.thinking_token_budget,C(b.chat_template_kwargs)&&D(b.chat_template_kwargs,"enable_thinking")){let a={...b.chat_template_kwargs};delete a.enable_thinking,Object.keys(a).length?b.chat_template_kwargs=a:delete b.chat_template_kwargs}return b}function G(a,{min:b,max:c,precision:d=3}={}){if(null==a||""===a)return;let e=Number(a);if(!Number.isFinite(e))return;let f=Math.min(c,Math.max(b,e));return Number(f.toFixed(d))}function H(a,{min:b,max:c}={}){let d=G(a,{min:b,max:c,precision:0});return void 0===d?void 0:Math.trunc(d)}function I(a={}){let b=C(a)?a:{},c={};if(D(b,"temperature")){let a=G(b.temperature,{min:0,max:2});void 0!==a&&(c.temperature=a)}if(D(b,"top_p")||D(b,"topP")){let a=G(b.top_p??b.topP,{min:.01,max:1});void 0!==a&&(c.top_p=a)}let d=b.presence_penalty??b.presencePenalty??b["presence-penalty"];if(D(b,"presence_penalty")||D(b,"presencePenalty")||D(b,"presence-penalty")){let a=G(d,{min:-2,max:2});void 0!==a&&(c.presence_penalty=a)}let e=b.max_tokens??b.maxTokens??b.max_token;if(D(b,"max_tokens")||D(b,"maxTokens")||D(b,"max_token")){let a=H(e,{min:1,max:262144});void 0!==a&&(c.max_tokens=a)}return c}function J(a={},b={}){let c=I(b),d={...a};return void 0!==c.temperature&&(d.temperature=c.temperature),void 0!==c.top_p&&(d.top_p=c.top_p),void 0!==c.presence_penalty&&(d.presence_penalty=c.presence_penalty),void 0!==c.max_tokens&&(d.max_tokens=c.max_tokens,D(d,"max_completion_tokens")&&delete d.max_completion_tokens),d}function K(a={}){let b=C(a)?a:{},c={};if(D(b,"temperature")){let a=G(b.temperature,{min:0,max:2});void 0!==a&&(c.temperature=a)}if(D(b,"top_p")||D(b,"topP")){let a=G(b.top_p??b.topP,{min:.01,max:1});void 0!==a&&(c.top_p=a)}let d=b.presence_penalty??b.presencePenalty??b["presence-penalty"];if(D(b,"presence_penalty")||D(b,"presencePenalty")||D(b,"presence-penalty")){let a=G(d,{min:-2,max:2});void 0!==a&&(c.presence_penalty=a)}let e=b.max_tokens??b.maxTokens??b.max_token;if(D(b,"max_tokens")||D(b,"maxTokens")||D(b,"max_token")){let a=H(e,{min:1,max:262144});void 0!==a&&(c.max_tokens=a)}let f=b.reasoning_budget??b.reasoningBudget??b["reasoning-budget"];if(D(b,"reasoning_budget")||D(b,"reasoningBudget")||D(b,"reasoning-budget")){let a=H(f,{min:0,max:262144});void 0!==a&&(c.reasoning_budget=a)}let g=b.forceThinkingOffAboveChars??b.forceThinkingOffChars??b.force_thinking_off_above_chars;if(D(b,"forceThinkingOffAboveChars")||D(b,"forceThinkingOffChars")||D(b,"force_thinking_off_above_chars")){let a=H(g,{min:0,max:1e6});void 0!==a&&(c.forceThinkingOffAboveChars=a)}let h=b.forceThinkingOffRequestOverrides??b.forceThinkingOffOverrides??b.autoOffRequestOverrides;if(D(b,"forceThinkingOffRequestOverrides")||D(b,"forceThinkingOffOverrides")||D(b,"autoOffRequestOverrides")){let a=I(h);Object.keys(a).length>0&&(c.forceThinkingOffRequestOverrides=a)}let i=function(a){if(!0===a)return"on";if(!1===a)return"off";let b=E(a).toLowerCase();return["on","true","1","enable","enabled"].includes(b)?"on":["off","false","0","disable","disabled"].includes(b)?"off":["inherit","default","request","client"].includes(b)?"inherit":void 0}(b.thinkingMode??b.thinking);return i&&"inherit"!==i&&(c.thinkingMode=i),c}function L(a={}){let b={...a};return D(b,"reasoning_budget")&&delete b.reasoning_budget,D(b,"thinking_token_budget")&&delete b.thinking_token_budget,b}function M(a={},b,c){let d=function(a={}){let b={...a};if(D(b,"enable_thinking")&&delete b.enable_thinking,C(b.chat_template_kwargs)&&D(b.chat_template_kwargs,"enable_thinking")){let a={...b.chat_template_kwargs};delete a.enable_thinking,Object.keys(a).length?b.chat_template_kwargs=a:delete b.chat_template_kwargs}return b}(a);return!0===b.supportsChatTemplateKwargs&&(d.chat_template_kwargs={...C(d.chat_template_kwargs)?d.chat_template_kwargs:{},enable_thinking:c}),d}function N(a){let b=Number(a);return Number.isFinite(b)?Math.max(0,Math.trunc(b)):0}function O(a,b){var c;let d,e=(a.comboStrategies||{})[b]||{};return{comboStrategy:e.fallbackStrategy||a.comboStrategy||"fallback",comboStickyLimit:e.stickyRoundRobinLimit||e.stickyLimit||a.comboStickyRoundRobinLimit||1,comboStickyScope:e.stickyScope||a.comboRoundRobinStickyScope||"global",comboStickyTtlMinutes:e.stickyTtlMinutes||a.comboRoundRobinStickyTtlMinutes||120,comboStickyFallbackToClientIp:void 0!==e.stickyFallbackToClientIp?e.stickyFallbackToClientIp:!1!==a.comboStickyFallbackToClientIp,requestOverrides:K(e.requestOverrides||{}),contentLoggingMode:(c=e.contentLoggingMode,d=E(c).toLowerCase(),"enabled"===d||"disabled"===d?d:"inherit")}}async function P({body:a,modelStr:b,comboModels:c,settings:d,clientRawRequest:e,request:f,apiKey:g,apiKeyForceThinkingOff:h=!1}){let i=O(d,b),j=(0,o.lV)({body:a,headers:e?.headers||{},scope:i.comboStickyScope,fallbackToClientIp:i.comboStickyFallbackToClientIp});return t.info("CHAT",`Combo "${b}" with ${c.length} models (strategy: ${i.comboStrategy}, stickyLimit: ${i.comboStickyLimit}, stickyScope: ${i.comboStickyScope})`),(0,n.Pr)({body:a,models:c,handleSingleModel:(a,c)=>{let d=function(a){if("string"==typeof a)return{modelStr:E(a),preferredConnectionId:null,label:E(a)};if(!C(a)){let b=E(a);return{modelStr:b,preferredConnectionId:null,label:b}}let b=E(a.model||a.modelStr||a.model_name||a.rawModel||a.raw_model),c=E(a.connectionId||a.connection_id||a.providerConnectionId||a.provider_connection_id)||null,d=E(a.label||a.displayName||a.name)||b;return{modelStr:b,preferredConnectionId:c,label:d}}(c);return d.modelStr?S(a,d.modelStr,e,f,g,{preferredConnectionId:d.preferredConnectionId,apiKeyForceThinkingOff:h,comboRequestOverrides:i.requestOverrides,contentLoggingMode:i.contentLoggingMode,routingMetadata:{routeType:"combo",comboName:b,comboTarget:d.label||d.modelStr,comboStrategy:i.comboStrategy}}):(t.warn("CHAT",`Combo "${b}" contains an invalid target`,{target:c}),(0,m.yj)(r.gx.BAD_REQUEST,`Invalid combo target in ${b}`))},log:t,comboName:b,comboStrategy:i.comboStrategy,comboStickyLimit:i.comboStickyLimit,comboStickyScope:i.comboStickyScope,comboStickyTtlMinutes:i.comboStickyTtlMinutes,comboStickyContext:j})}async function Q({body:a,modelStr:b,virtualCombo:c,settings:d=null,clientRawRequest:e,request:f,apiKey:g,apiKeyForceThinkingOff:h=!1}){let i=O(d||{},b);return t.info("CHAT",`Virtual combo "${b}" matched ${c.targets?.length||0} target(s)`),(0,p.mH)({body:a,combo:c,log:t,handleSingleTarget:(a,c)=>S(a,c.model,e,f,g,{preferredConnectionId:c.connectionId||null,apiKeyForceThinkingOff:h,comboRequestOverrides:i.requestOverrides,contentLoggingMode:i.contentLoggingMode,routingMetadata:{routeType:"combo",comboName:b,comboTarget:c?.label||c?.model||"",comboStrategy:i.comboStrategy}})})}async function R(a,b=null){let c;try{c=await a.json()}catch{return t.warn("CHAT","Invalid JSON body"),B({request:a,clientRawRequest:b,statusCode:r.gx.BAD_REQUEST,errorCode:"invalid_json_body",errorType:"invalid_request",message:"Invalid JSON body"}),(0,m.yj)(r.gx.BAD_REQUEST,"Invalid JSON body")}b||(b={endpoint:new URL(a.url).pathname,body:c,headers:Object.fromEntries(a.headers.entries())}),(0,g.n)(b.headers);let d=new URL(a.url),e=c.model,j=c.messages?.length||c.input?.length||0,l=c.tools?.length||0,n=c.reasoning_effort||c.reasoning?.effort||null;t.request("POST",`${d.pathname} | ${e} | ${j} msgs${l?` | ${l} tools`:""}${n?` | effort=${n}`:""}`);let o=a.headers.get("Authorization"),s=(0,f.Tr)(a);o&&s?t.debug("AUTH",`API Key: ${t.maskKey(s)}`):t.debug("AUTH","No API key provided");let u=await (0,h.mt)(),v=null;if(s&&(v=await (0,h.mY)(s)),!s)return t.warn("AUTH","Missing API key"),B({request:a,clientRawRequest:b,body:c,model:e,statusCode:r.gx.UNAUTHORIZED,errorCode:"missing_api_key",errorType:"auth_error",message:"Missing API key"}),(0,m.yj)(r.gx.UNAUTHORIZED,"Missing API key");if(!(v?!1!==v.isActive:await (0,f.kI)(s)))return t.warn("AUTH","Invalid API key"),B({request:a,clientRawRequest:b,body:c,apiKey:s,model:e,statusCode:r.gx.UNAUTHORIZED,errorCode:"invalid_api_key",errorType:"auth_error",message:"Invalid API key"}),(0,m.yj)(r.gx.UNAUTHORIZED,"Invalid API key");if(!e)return t.warn("CHAT","Missing model"),B({request:a,clientRawRequest:b,body:c,apiKey:s,statusCode:r.gx.BAD_REQUEST,errorCode:"missing_model",errorType:"invalid_request",message:"Missing model"}),(0,m.yj)(r.gx.BAD_REQUEST,"Missing model");if(v&&!(0,i.zx)(v,e))return t.warn("AUTH",`API key not allowed to use model: ${e}`),B({request:a,clientRawRequest:b,body:c,apiKey:s,model:e,statusCode:r.gx.FORBIDDEN||403,errorCode:"model_not_allowed",errorType:"forbidden",message:`API key is not allowed to use model: ${e}`}),(0,m.yj)(r.gx.FORBIDDEN||403,`API key is not allowed to use model: ${e}`);let w=a?.headers?.get("user-agent")||"",x=(0,q.c)(c,e,w,!!u.ccFilterNaming);if(x)return x.response||x;let y=(0,p.HX)(u,e);if(y)return Q({body:c,modelStr:e,virtualCombo:y,settings:u,clientRawRequest:b,request:a,apiKey:s,apiKeyForceThinkingOff:b?.apiKeyForceThinkingOff===!0});let z=await (0,k.d_)(e);return z?P({body:c,modelStr:e,comboModels:z,settings:u,clientRawRequest:b,request:a,apiKey:s,apiKeyForceThinkingOff:b?.apiKeyForceThinkingOff===!0}):S(c,e,b,a,s)}async function S(a,b,c=null,d=null,e=null,g={}){let i=await (0,k.mA)(b);if(!i.provider){let f=await (0,h.mt)(),i=(0,p.HX)(f,b);if(i)return Q({body:a,modelStr:b,virtualCombo:i,settings:f,clientRawRequest:c,request:d,apiKey:e,apiKeyForceThinkingOff:!0===g.apiKeyForceThinkingOff||c?.apiKeyForceThinkingOff===!0});let j=await (0,k.d_)(b);return j?P({body:a,modelStr:b,comboModels:j,settings:f,clientRawRequest:c,request:d,apiKey:e,apiKeyForceThinkingOff:!0===g.apiKeyForceThinkingOff||c?.apiKeyForceThinkingOff===!0}):(t.warn("CHAT","Invalid model format",{model:b}),B({request:d,clientRawRequest:c,body:a,apiKey:e,model:b,statusCode:r.gx.BAD_REQUEST,errorCode:"invalid_model_format",errorType:"model_not_found",message:"Invalid model format"}),(0,m.yj)(r.gx.BAD_REQUEST,"Invalid model format"))}let{provider:n,model:o}=i;b!==`${n}/${o}`?t.info("ROUTING",`${b} -> ${n}/${o}`):t.info("ROUTING",`Provider: ${n}, Model: ${o}`);let q=d?.headers?.get("user-agent")||"",w=new Set,y=null,A=null;for(;;){let b=await (0,f.c1)(n,w,o,{body:a,headers:c?.headers||{},preferredConnectionId:g.preferredConnectionId||null});if(!b||b.allRateLimited||b.allUnavailableByPolicy){if(b?.allRateLimited||b?.allUnavailableByPolicy){let f=y||b.lastError||"Unavailable",g=A||Number(b.lastErrorCode)||r.gx.SERVICE_UNAVAILABLE;return t.warn("CHAT",`[${n}/${o}] ${f} (${b.retryAfterHuman})`),B({request:d,clientRawRequest:c,body:a,apiKey:e,provider:n,model:o,statusCode:g,errorCode:b.allRateLimited?"all_accounts_rate_limited":"all_accounts_unavailable",errorType:b.allRateLimited?"rate_limit":"provider_unavailable",errorSource:"routing",message:`[${n}/${o}] ${f}`}),(0,m.wO)(g,`[${n}/${o}] ${f}`,b.retryAfter,b.retryAfterHuman)}if(0===w.size)return t.warn("AUTH",`No active credentials for provider: ${n}`),B({request:d,clientRawRequest:c,body:a,apiKey:e,provider:n,model:o,statusCode:r.gx.NOT_FOUND,errorCode:"no_active_credentials",errorType:"provider_unavailable",errorSource:"routing",message:`No active credentials for provider: ${n}`}),(0,m.yj)(r.gx.NOT_FOUND,`No active credentials for provider: ${n}`);return t.warn("CHAT","No more accounts available",{provider:n}),B({request:d,clientRawRequest:c,body:a,apiKey:e,provider:n,model:o,statusCode:A||r.gx.SERVICE_UNAVAILABLE,errorCode:"all_accounts_unavailable",errorType:"provider_unavailable",errorSource:"routing",message:y||"All accounts unavailable"}),(0,m.yj)(A||r.gx.SERVICE_UNAVAILABLE,y||"All accounts unavailable")}t.info("AUTH",`\x1b[32mUsing ${n} account: ${b.connectionName}\x1b[0m`);let i=await (0,u.eU)(n,b);if(("antigravity"===n||"gemini-cli"===n)&&!i.projectId){let a=await (0,v.eG)(b.connectionId,i.accessToken);a&&(i.projectId=a,(0,u.vN)(b.connectionId,{projectId:a}).catch(()=>{}))}let k=await (0,h.mt)(),p=(k.providerThinking||{})[n]||null,G=!0===g.apiKeyForceThinkingOff||c?.apiKeyForceThinkingOff===!0,O=g.comboRequestOverrides||{},P={...a,model:`${n}/${o}`},Q=(0,z.mq)(n),R=function(a={},b="",c={}){if(!(0,z.mq)(b))return a;let d=function(a={}){let b=a?.providerSpecificData&&"object"==typeof a.providerSpecificData?a.providerSpecificData:{},c=a.openAICompatibleRuntime||a.runtimeKind||b.openAICompatibleRuntime||b.runtimeKind||b.runtimeType||b.serverType||z.hb;return(0,z.tl)(c,z.hb)}(c),e=K(c.comboRequestOverrides||{}),f=c?.apiKeyForceThinkingOff===!0,g={...a};return(g=J(g,e),f)?(g=F(g),!0===d.supportsChatTemplateKwargs?M(g,d,!1):g):e.forceThinkingOffAboveChars>0&&(0,j.iz)(g)>=e.forceThinkingOffAboveChars?(g=F(g),g=!0===d.supportsChatTemplateKwargs?M(g,d,!1):g,J(g,e.forceThinkingOffRequestOverrides)):(void 0!==e.reasoning_budget&&(g=function(a={},b,c){let d=L(a);return b.reasoningBudgetField&&(d[b.reasoningBudgetField]=c),d}(g,d,e.reasoning_budget)),"off"===e.thinkingMode?(g=L(g),g=M(g,d,!1)):"on"===e.thinkingMode&&(g=M(g,d,!0)),g)}(P,n,{apiKeyForceThinkingOff:G,comboRequestOverrides:O,providerSpecificData:i.providerSpecificData||{}}),S=function({originalBody:a={},finalBody:b={},overrides:c={},apiKeyForceThinkingOff:d=!1,providerPolicyApplies:e=!0}={}){let f=(0,j.iz)(b||a||{}),g=N(c.forceThinkingOffAboveChars),h=g>0&&f>=g,i=!0===e,k=i&&h;return{thinkingEnabled:function(a={}){if(C(a.chat_template_kwargs)&&D(a.chat_template_kwargs,"enable_thinking"))return!0===a.chat_template_kwargs.enable_thinking;if(D(a,"enable_thinking"))return!0===a.enable_thinking;if(D(a,"reasoning_budget"))return H(a.reasoning_budget,{min:0,max:262144})>0;if(D(a,"thinking_token_budget"))return H(a.thinking_token_budget,{min:0,max:262144})>0;if(C(a.thinking)){let b=E(a.thinking.type).toLowerCase();if(["enabled","on","true"].includes(b))return!0;if(["disabled","off","false"].includes(b))return!1}return null}(b),thinkingAutoOff:k,thinkingAutoOffReason:k?"prompt_chars_threshold":i&&!0===d?"api_key_force_off":"",promptChars:f,forceThinkingOffAboveChars:g,providerPolicyApplies:i,thinkingAutoOffThresholdMatched:h}}({originalBody:P,finalBody:R,overrides:O,apiKeyForceThinkingOff:G,providerPolicyApplies:Q}),T=function({route:a={},provider:b="",model:c="",connectionId:d="",requestPolicyMeta:e={},originalBody:f={},finalBody:g={},overrides:h={}}={}){let i=e?.thinkingAutoOff===!0;return{combo_name:a.comboName||null,combo_target:a.comboTarget||null,combo_strategy:a.comboStrategy||null,route_type:a.routeType||(a.comboName?"combo":"direct"),selected_provider_id:d||b||null,selected_model:c||g?.model||f?.model||null,request_overrides_applied:function({originalBody:a={},finalBody:b={},overrides:c={},autoOffApplied:d=!1}={}){let e=d?I(c.forceThinkingOffRequestOverrides||{}):I(c||{}),f={};for(let c of["temperature","top_p","presence_penalty","max_tokens"])void 0!==e[c]&&b?.[c]!==void 0&&b[c]!==a?.[c]&&(f[c]=b[c]);return d||void 0===c.reasoning_budget||b?.reasoning_budget===a?.reasoning_budget||(f.reasoning_budget=b?.reasoning_budget),!d&&c.thinkingMode&&"inherit"!==c.thinkingMode&&(f.thinkingMode=c.thinkingMode),d&&(f.thinkingMode="off",f.forceThinkingOffAboveChars=N(c.forceThinkingOffAboveChars)),f}({originalBody:f,finalBody:g,overrides:h,autoOffApplied:i}),auto_off_applied:i}}({route:g.routingMetadata||{routeType:"direct"},provider:n,model:o,connectionId:b.connectionId,requestPolicyMeta:S,originalBody:P,finalBody:R,overrides:O}),U={...c||{},requestPolicyMeta:S,routingMetadata:T},V=await (0,l.w)({body:R,modelInfo:{provider:n,model:o},credentials:i,log:t,clientRawRequest:U,requestPolicyMeta:S,connectionId:b.connectionId,userAgent:q,apiKey:e,ccFilterNaming:!!k.ccFilterNaming,rtkEnabled:!!k.rtkEnabled,cavemanEnabled:!!k.cavemanEnabled,cavemanLevel:k.cavemanLevel||"full",providerThinking:!1===S.thinkingEnabled?null:p,contentLoggingMode:g.contentLoggingMode||"inherit",sourceFormatOverride:d?.url?(0,s.t)(new URL(d.url).pathname,a):null,onCredentialsRefreshed:async a=>{await (0,u.vN)(b.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,f.Pt)(b.connectionId,b,o)}});if(!function(a,b){let c=a?.sessionId||a?.session_id||a?.requestContext?.sessionId;c&&(0,x.gl)({sessionId:c,metadata:b}).catch(()=>{})}(U,T),V.success)return V.response;let{shouldFallback:W}=await (0,f.vk)(b.connectionId,V.status,V.error,n,o,V.resetsAtMs);if(W){t.warn("AUTH",`Account ${b.connectionName} unavailable (${V.status}), trying fallback`),w.add(b.connectionId),y=V.error,A=V.status;continue}return V.response}}[e,l]=A.then?(await A)():A,d()}catch(a){d(a)}})}};
|
|
1
|
+
"use strict";exports.id=9489,exports.ids=[9489],exports.modules={18910:(a,b,c)=>{c.d(b,{Pr:()=>s,UP:()=>q,Vu:()=>r});var d=c(12557),e=c(43659),f=c(11893);let g=new Map,h=new Map,i=0;function j(a){return"client_ip"===a||"client_session"===a?a:"global"}function k(a){let b=Number.parseInt(a,10);return!Number.isFinite(b)||b<=0?120:Math.min(b,10080)}function l(a,b){let c=[...a];for(let a=0;a<b;a++){let a=c.shift();c.push(a)}return c}function m(a){let b=g.get(a);return"number"==typeof b?{index:b,consecutiveUseCount:0}:b||{index:0,consecutiveUseCount:0}}function n(a,b,c,d){let e=m(a).consecutiveUseCount+1;e>=d?g.set(a,{index:(b+1)%c,consecutiveUseCount:0}):g.set(a,{index:b,consecutiveUseCount:e})}function o(a,b,c){let d=b||"__default__",e=m(d).index%a.length,f=l(a,e);return n(d,e,a.length,c),f}function p(a,b){return{model:a,label:a,provider:b||"combo"}}function q(a){if(!a){g.clear(),h.clear();return}g.delete(a);let b=`${a}::`;for(let a of h.keys())a.startsWith(b)&&h.delete(a)}function r(a,b){if(a.includes("/"))return null;let c=(Array.isArray(b)?b:b?.combos||[]).find(b=>b.name===a);return c&&c.models&&c.models.length>0?c.models:null}async function s({body:a,models:b,handleSingleModel:c,log:g,comboName:q,comboStrategy:r,comboStickyLimit:t=1,comboStickyScope:u="global",comboStickyTtlMinutes:v=120,comboStickyContext:w=null}){let x=r||"fallback",y=function(a,b,c,d=1,e={}){let g;if(!a||a.length<=1)return a;let q=c||"fallback",r=a.map(a=>p(a,b));if((0,f.OI)(r),"least-latency"===q||"least_latency"===q)return(0,f.Gc)(r,{includeSkippedAtEnd:!0}).map(a=>a.model);if("p2c"===q||"power-of-two"===q||"power_of_two"===q)return(0,f.ZL)(r,{includeSkippedAtEnd:!0}).map(a=>a.model);if("round-robin"!==q)return a;let s=Number.isFinite(g=Number.parseInt(d,10))&&g>0?g:1,t=j(e.stickyScope),u=k(e.stickyTtlMinutes);return"global"===t?o(a,b,s):function(a,b,c,d,e,f){let g,p=Date.now();if(!(p-i<6e4))for(let[a,b]of(i=p,h.entries()))(!b?.expiresAt||b.expiresAt<=p)&&h.delete(a);let q=j(d),r="global"!==(g=j(q))&&f?.key?`${b||"__default__"}::${g}::${f.key}`:null;if(!r)return o(a,b,c);let s=Date.now(),t=6e4*k(e),u=h.get(r);if(u&&u.expiresAt>s){let b=Number.isFinite(u.index)?u.index:0;if(u.model){let c=a.indexOf(u.model);c>=0&&(b=c)}return b%=a.length,h.set(r,{...u,index:b,model:a[b],lastUsedAt:s,expiresAt:s+t}),l(a,b)}let v=b||"__default__",w=m(v).index%a.length;return h.set(r,{index:w,model:a[w],stickyScope:q,stickyKey:f.key,sessionId:f.sessionId||null,clientIp:f.clientIp||null,createdAt:s,lastUsedAt:s,expiresAt:s+t}),n(v,w,a.length,c),l(a,w)}(a,b,s,t,u,e.stickyContext||null)}(b,q,x,t,{stickyScope:u,stickyTtlMinutes:v,stickyContext:w});["round-robin","least-latency","least_latency","p2c","power-of-two","power_of_two"].includes(x)&&g?.debug?.("COMBO",`${x} combo "${q||"__default__"}" | sticky=${u||"global"}${w?.label?` | key=${w.label}`:""}`);let z=null,A=null,B=null;for(let b=0;b<y.length;b++){let e=y[b],h=p(e,q),i=(0,f.kb)(h);if(i.skipped&&b<y.length-1){g?.warn?.("COMBO",`Skipping ${e}: ${i.reason}`);continue}let j=Date.now();g.info("COMBO",`Trying model ${b+1}/${y.length}: ${e}`);try{let b=await c(a,e),k=Date.now()-j;if(i.end?.(),b.ok)return(0,f.Fg)(h,k),g.info("COMBO",`Model ${e} succeeded`),b;let l=b.statusText||"",m=null;try{let a=await b.clone().json();l=a?.error?.message||a?.error||a?.message||l,m=a?.retryAfter||null}catch{}if("string"!=typeof l)try{l=JSON.stringify(l)}catch{l=String(l)}(0,f.h6)(h,{status:b.status,message:l}),m&&(!A||new Date(m)<new Date(A))&&(A=m);let{shouldFallback:n,cooldownMs:o}=(0,d.hk)(b.status,l);if(!n)return g.warn("COMBO",`Model ${e} failed (no fallback)`,{status:b.status}),b;o&&o>0&&o<=5e3&&[502,503,504].includes(b.status)&&(g.info("COMBO",`Model ${e} transient ${b.status}, waiting ${o}ms before next`),await new Promise(a=>setTimeout(a,o))),z=l||String(b.status),B||(B=b.status),g.warn("COMBO",`Model ${e} failed, trying next`,{status:b.status})}catch(a){i.end?.(),z=a.message||String(a),B||(B=500),(0,f.h6)(h,a),g.warn("COMBO",`Model ${e} threw error, trying next`,{error:z})}}let C=z&&z.toLowerCase().includes("no credentials")?503:B||503,D=z||"All combo models unavailable";if(A){let a=(0,d.Qo)(A);return g.warn("COMBO",`All models failed | ${D} (${a})`),(0,e.wO)(C,D,A,a)}return g.warn("COMBO",`All models failed | ${D}`),new Response(JSON.stringify({error:{message:D}}),{status:C,headers:{"Content-Type":"application/json"}})}},29069:(a,b,c)=>{c.d(b,{HX:()=>h,mH:()=>i});var d=c(11893);function e(a){return String(a||"").trim()}function f(a){return Array.isArray(a)?[...new Set(a.map(a=>e(a)).filter(Boolean))]:"string"==typeof a?[...new Set(a.split(/[\n,;]+/).map(a=>e(a)).filter(Boolean))]:a&&"object"==typeof a?Object.entries(a).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?e(a):`${e(a)}:${e(b)}`).filter(Boolean):[]}function g(a){if(!a||"object"!=typeof a)return null;let b=e(a.name||a.id||a.exposedModel||a.model),c=e(a.exposedModel||a.model||a.name||a.id),d=e(a.type||"virtual");if("ollama-local"===d.toLowerCase())return null;let g=(a.targets||a.endpoints||a.models||[]).map(b=>(function(a,b={}){if("string"==typeof a)return{model:e(a),label:e(a),tags:[]};if(!a||"object"!=typeof a)return null;let c=e(a.model||a.value||a.id||a.fullModel);return c?{...a,id:e(a.id)||e(a.connectionId)||c,model:c,label:e(a.label||a.name||a.displayName)||c,connectionId:e(a.connectionId||a.connection_id||a.accountId),provider:e(a.provider||b.provider),endpoint:e(a.endpoint||a.baseUrl||a.baseURL||a.url),tags:f(a.tags||a.labels||a.routingTags),maxInFlight:Number(a.maxInFlight||a.maxInFlightPerTarget||b.maxInFlight||0)||void 0}:null})(b,a)).filter(Boolean);return b&&c&&0!==g.length?{...a,name:b,id:e(a.id)||b,exposedModel:c,enabled:!1!==a.enabled,type:d,strategy:e(a.strategy||a.fallbackStrategy||"least-latency"),requiredTags:f(a.requiredTags||a.tags),modelTagRules:function(a){if(!a||"object"!=typeof a)return{};let b={};for(let[c,d]of Object.entries(a)){let a=e(c),g=f(d);a&&g.length&&(b[a]=g)}return b}(a.modelTagRules||a.requiredTagsByModel||a.tagRules),targets:g}:null}function h(a={},b=""){let c=e(b);return c&&(function(a={}){let b=a.virtualCombos||[];return(Array.isArray(b)?b:Object.values(b||{})).map(g).filter(Boolean)})(a).find(a=>!1!==a.enabled&&(a.exposedModel===c||a.name===c))||null}async function i({body:a,combo:b,handleSingleTarget:c,log:f}){let h,j,k,l,m=e(a?.model||b?.exposedModel||b?.name),n=g(b);if(!n)return new Response(JSON.stringify({error:{message:"Invalid virtual combo"}}),{status:400,headers:{"Content-Type":"application/json"}});let o=(h=[...n.targets],j=n.modelTagRules||{},0===(h=(h=(0,d.OF)(h,m,j)).filter(a=>(function(a,b=[]){if(!b.length)return!0;let c=new Set((a.tags||[]).map(a=>String(a).toLowerCase()));return b.every(a=>c.has(String(a).toLowerCase()))})(a,n.requiredTags||[]))).length&&(h=[...n.targets]),k=h.map(a=>({...a,id:a.id||`${n.name}:${a.model}:${a.connectionId||"any"}`,connectionId:a.connectionId||"",provider:a.provider||"virtual-combo",providerLabel:n.name,label:a.label||a.model,model:m||n.exposedModel,upstreamModel:a.model,endpoint:a.endpoint||"",tags:a.tags||[],maxInFlight:a.maxInFlight})),(0,d.OI)(k),("p2c"===(l=String(n.strategy||"least-latency").toLowerCase())||"power-of-two"===l||"power_of_two"===l?(0,d.ZL)(k,{model:m,modelTagRules:j,includeSkippedAtEnd:!0}):"fallback"===l||"priority"===l?(0,d.Gc)(k,{model:m,modelTagRules:j,preserveOrder:!0,includeSkippedAtEnd:!0}):(0,d.Gc)(k,{model:m,modelTagRules:j,includeSkippedAtEnd:!0})).map(a=>({healthTarget:a,target:h.find(b=>a.upstreamModel===b.model&&(a.connectionId||"")===(b.connectionId||""))})).filter(a=>a.target)),p="All virtual combo targets unavailable",q=503;f?.info?.("VIRTUAL_COMBO",`Virtual combo "${n.name}" -> ${o.length} target(s), strategy=${n.strategy}`);for(let b=0;b<o.length;b+=1){let{target:e,healthTarget:g}=o[b],h=(0,d.kb)(g);if(h.skipped){f?.warn?.("VIRTUAL_COMBO",`Skip ${e.label||e.model}: ${h.reason}`);continue}let i=Date.now();try{let j={...a,model:e.model};f?.info?.("VIRTUAL_COMBO",`Trying ${b+1}/${o.length}: ${e.label||e.model}`);let k=await c(j,e),l=Date.now()-i;if(k?.ok)return(0,d.Fg)(g,l),h.end(),k;let m=k?.statusText||"request_failed";try{let a=await k.clone().json();m=a?.error?.message||a?.error||a?.message||m}catch{}q=k?.status||503,p="string"==typeof m?m:JSON.stringify(m),(0,d.h6)(g,{status:q,message:p}),f?.warn?.("VIRTUAL_COMBO",`${e.label||e.model} failed`,{status:q})}catch(a){q=500,p=a?.message||String(a),(0,d.h6)(g,a),f?.warn?.("VIRTUAL_COMBO",`${e.label||e.model} threw`,{error:p})}finally{h.end()}}return new Response(JSON.stringify({error:{message:p}}),{status:q||503,headers:{"Content-Type":"application/json"}})}},33669:(a,b,c)=>{c.d(b,{MI:()=>e,RC:()=>h,zx:()=>f});var d=c(89718);function e(a){return Array.isArray(a)?[...new Set(a.map(a=>String(a||"").trim()).filter(Boolean))]:[]}function f(a,b){if(!a||!1===a.isActive)return!1;let c=String(b||"").trim();if(!c)return!1;let d=e(a.allowedModels);return 0===d.length||d.includes(c)}async function g(a){let b,c=await (0,d.mt)(),e=(b=a?.headers?.get?.("Authorization")||"").startsWith("Bearer ")?b.slice(7).trim():a?.headers?.get?.("x-api-key")?.trim()||null;if(!e)return{settings:c,apiKey:null,keyRecord:null,missing:!0,invalid:!1};let f=await (0,d.mY)(e);return{settings:c,apiKey:e,keyRecord:f,missing:!1,invalid:!f||!1===f.isActive}}async function h(a,b){let c=await g(a);return c.missing?{error:{message:"Missing API key",type:"authentication_error"},status:401}:c.invalid?{error:{message:"Invalid API key",type:"authentication_error"},status:401}:{data:function(a,b){if(!b||0===e(b?.allowedModels).length)return a;let c=new Set(e(b.allowedModels));return(a||[]).filter(a=>c.has(a?.id))}(b,c.keyRecord)}}},38775:(a,b,c)=>{c.d(b,{d_:()=>h,mA:()=>g});var d=c(89718),e=c(40669);let f={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function g(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&f[b.providerAlias]?{...b,provider:f[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);return e?{provider:e.id,model:c.model}:{provider:c.provider,model:c.model}}return await (0,d.Dj)(c.model)?{provider:null,model:c.model}:(0,e.js)(a,d.OM)}async function h(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}},42318:(a,b,c)=>{function d(a={},b){let c=String(b||"").toLowerCase();for(let[b,d]of Object.entries(a||{}))if(String(b).toLowerCase()===c)return String((Array.isArray(d)?d[0]||"":d||"")||"");return""}function e({body:a,headers:b={},scope:c="global",fallbackToClientIp:f=!0}){if("client_ip"!==c&&"client_session"!==c)return null;let g=function(a={}){return String(d(a,"x-9r-client-ip")||d(a,"x-forwarded-for")||d(a,"x-real-ip")||d(a,"cf-connecting-ip")||"").split(",")[0].trim().replace(/^::ffff:/,"").replace(/^::1$/,"127.0.0.1")}(b),h=function(a={}){return d(a,"x-9r-source-tool")||d(a,"originator")||d(a,"copilot-integration-id")||""}(b),i="client_session"===c?String(function(a,b={}){return d(b,"x-client-session-id")||d(b,"session_id")||d(b,"session-id")||d(b,"x-session-id")||d(b,"x-interaction-id")||d(b,"conversation_id")||d(b,"conversation-id")||d(b,"x-conversation-id")||a?.conversationId||a?.conversation_id||a?.sessionId||a?.session_id||a?.metadata?.conversationId||a?.metadata?.conversation_id||a?.metadata?.sessionId||a?.metadata?.session_id||a?.conversationState?.conversationId||a?.conversationState?.sessionId||a?.conversationState?.currentConversationId||""}(a,b)||""):"";return"client_session"===c&&i?{key:[h||"tool",g||"unknown-ip",i].join("::"),label:i,scope:c,sourceTool:h,clientIp:g,sessionId:i}:"client_session"===c&&!1===f?null:g?{key:[h||"tool",g].join("::"),label:g,scope:"client_ip",sourceTool:h,clientIp:g,sessionId:""}:null}c.d(b,{lV:()=>e})},79489:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{P:()=>R});var e=c(48895),f=c(7793),g=c(71750),h=c(89718),i=c(33669),j=c(490),k=c(38775),l=c(92500),m=c(43659),n=c(18910),o=c(42318),p=c(29069),q=c(27349),r=c(41004),s=c(14170),t=c(7803),u=c(67828),v=c(38160),w=c(35901),x=c(97242),y=c(86171),z=c(75681),A=a([e,l]);function B({request:a,clientRawRequest:b,body:c,apiKey:d,model:e,provider:f="gateway",connectionId:g="",statusCode:h=500,errorCode:i="gateway_error",errorType:j="gateway",errorSource:k="gateway_validation",message:l="Gateway error"}){try{let m=b?.headers||{},n=b?.endpoint||"";if(a)try{m=m&&Object.keys(m).length?m:Object.fromEntries(a.headers.entries()),n=n||new URL(a.url).pathname}catch{}let o=(0,y.wS)({headers:m,requestId:b?.requestId,sessionId:b?.sessionId}),p={...o,requestContext:o,provider:f,model:e||c?.model||"unknown",connectionId:g,apiKey:d,endpoint:n,gatewayStatusCode:h,errorSource:k,errorType:j,errorCode:i,errorMessageShort:l,latencyMs:0};(0,w.jk)(p).catch(()=>{}),(0,y.sx)({provider:f,model:e||c?.model||"unknown",connectionId:g,apiKey:d,endpoint:n,statusCode:h,errorCode:i,errorType:j,errorMessage:l,requestContext:o,meta:{errorSource:k}})}catch{}}function C(a){return a&&"object"==typeof a&&!Array.isArray(a)}function D(a,b){return Object.prototype.hasOwnProperty.call(a||{},b)}function E(a){return null==a?"":String(a).trim()}function F(a={}){let b={...a};if(D(b,"enable_thinking")&&delete b.enable_thinking,D(b,"reasoning_budget")&&delete b.reasoning_budget,D(b,"thinking_token_budget")&&delete b.thinking_token_budget,C(b.chat_template_kwargs)&&D(b.chat_template_kwargs,"enable_thinking")){let a={...b.chat_template_kwargs};delete a.enable_thinking,Object.keys(a).length?b.chat_template_kwargs=a:delete b.chat_template_kwargs}return b}function G(a,{min:b,max:c,precision:d=3}={}){if(null==a||""===a)return;let e=Number(a);if(!Number.isFinite(e))return;let f=Math.min(c,Math.max(b,e));return Number(f.toFixed(d))}function H(a,{min:b,max:c}={}){let d=G(a,{min:b,max:c,precision:0});return void 0===d?void 0:Math.trunc(d)}function I(a={}){let b=C(a)?a:{},c={};if(D(b,"temperature")){let a=G(b.temperature,{min:0,max:2});void 0!==a&&(c.temperature=a)}if(D(b,"top_p")||D(b,"topP")){let a=G(b.top_p??b.topP,{min:.01,max:1});void 0!==a&&(c.top_p=a)}let d=b.presence_penalty??b.presencePenalty??b["presence-penalty"];if(D(b,"presence_penalty")||D(b,"presencePenalty")||D(b,"presence-penalty")){let a=G(d,{min:-2,max:2});void 0!==a&&(c.presence_penalty=a)}let e=b.max_tokens??b.maxTokens??b.max_token;if(D(b,"max_tokens")||D(b,"maxTokens")||D(b,"max_token")){let a=H(e,{min:1,max:262144});void 0!==a&&(c.max_tokens=a)}return c}function J(a={},b={}){let c=I(b),d={...a};return void 0!==c.temperature&&(d.temperature=c.temperature),void 0!==c.top_p&&(d.top_p=c.top_p),void 0!==c.presence_penalty&&(d.presence_penalty=c.presence_penalty),void 0!==c.max_tokens&&(d.max_tokens=c.max_tokens,D(d,"max_completion_tokens")&&delete d.max_completion_tokens),d}function K(a={}){let b=C(a)?a:{},c={};if(D(b,"temperature")){let a=G(b.temperature,{min:0,max:2});void 0!==a&&(c.temperature=a)}if(D(b,"top_p")||D(b,"topP")){let a=G(b.top_p??b.topP,{min:.01,max:1});void 0!==a&&(c.top_p=a)}let d=b.presence_penalty??b.presencePenalty??b["presence-penalty"];if(D(b,"presence_penalty")||D(b,"presencePenalty")||D(b,"presence-penalty")){let a=G(d,{min:-2,max:2});void 0!==a&&(c.presence_penalty=a)}let e=b.max_tokens??b.maxTokens??b.max_token;if(D(b,"max_tokens")||D(b,"maxTokens")||D(b,"max_token")){let a=H(e,{min:1,max:262144});void 0!==a&&(c.max_tokens=a)}let f=b.reasoning_budget??b.reasoningBudget??b["reasoning-budget"];if(D(b,"reasoning_budget")||D(b,"reasoningBudget")||D(b,"reasoning-budget")){let a=H(f,{min:0,max:262144});void 0!==a&&(c.reasoning_budget=a)}let g=b.forceThinkingOffAboveChars??b.forceThinkingOffChars??b.force_thinking_off_above_chars;if(D(b,"forceThinkingOffAboveChars")||D(b,"forceThinkingOffChars")||D(b,"force_thinking_off_above_chars")){let a=H(g,{min:0,max:1e6});void 0!==a&&(c.forceThinkingOffAboveChars=a)}let h=b.forceThinkingOffRequestOverrides??b.forceThinkingOffOverrides??b.autoOffRequestOverrides;if(D(b,"forceThinkingOffRequestOverrides")||D(b,"forceThinkingOffOverrides")||D(b,"autoOffRequestOverrides")){let a=I(h);Object.keys(a).length>0&&(c.forceThinkingOffRequestOverrides=a)}let i=function(a){if(!0===a)return"on";if(!1===a)return"off";let b=E(a).toLowerCase();return["on","true","1","enable","enabled"].includes(b)?"on":["off","false","0","disable","disabled"].includes(b)?"off":["inherit","default","request","client"].includes(b)?"inherit":void 0}(b.thinkingMode??b.thinking);return i&&"inherit"!==i&&(c.thinkingMode=i),c}function L(a={}){let b={...a};return D(b,"reasoning_budget")&&delete b.reasoning_budget,D(b,"thinking_token_budget")&&delete b.thinking_token_budget,b}function M(a={},b,c){let d=function(a={}){let b={...a};if(D(b,"enable_thinking")&&delete b.enable_thinking,C(b.chat_template_kwargs)&&D(b.chat_template_kwargs,"enable_thinking")){let a={...b.chat_template_kwargs};delete a.enable_thinking,Object.keys(a).length?b.chat_template_kwargs=a:delete b.chat_template_kwargs}return b}(a);return!0===b.supportsChatTemplateKwargs&&(d.chat_template_kwargs={...C(d.chat_template_kwargs)?d.chat_template_kwargs:{},enable_thinking:c}),d}function N(a){let b=Number(a);return Number.isFinite(b)?Math.max(0,Math.trunc(b)):0}function O(a,b){var c;let d,e=(a.comboStrategies||{})[b]||{};return{comboStrategy:e.fallbackStrategy||a.comboStrategy||"fallback",comboStickyLimit:e.stickyRoundRobinLimit||e.stickyLimit||a.comboStickyRoundRobinLimit||1,comboStickyScope:e.stickyScope||a.comboRoundRobinStickyScope||"global",comboStickyTtlMinutes:e.stickyTtlMinutes||a.comboRoundRobinStickyTtlMinutes||120,comboStickyFallbackToClientIp:void 0!==e.stickyFallbackToClientIp?e.stickyFallbackToClientIp:!1!==a.comboStickyFallbackToClientIp,requestOverrides:K(e.requestOverrides||{}),contentLoggingMode:(c=e.contentLoggingMode,d=E(c).toLowerCase(),"enabled"===d||"disabled"===d?d:"inherit")}}async function P({body:a,modelStr:b,comboModels:c,settings:d,clientRawRequest:e,request:f,apiKey:g,apiKeyForceThinkingOff:h=!1}){let i=O(d,b),j=(0,o.lV)({body:a,headers:e?.headers||{},scope:i.comboStickyScope,fallbackToClientIp:i.comboStickyFallbackToClientIp});return t.info("CHAT",`Combo "${b}" with ${c.length} models (strategy: ${i.comboStrategy}, stickyLimit: ${i.comboStickyLimit}, stickyScope: ${i.comboStickyScope})`),(0,n.Pr)({body:a,models:c,handleSingleModel:(a,c)=>{let d=function(a){if("string"==typeof a)return{modelStr:E(a),preferredConnectionId:null,label:E(a)};if(!C(a)){let b=E(a);return{modelStr:b,preferredConnectionId:null,label:b}}let b=E(a.model||a.modelStr||a.model_name||a.rawModel||a.raw_model),c=E(a.connectionId||a.connection_id||a.providerConnectionId||a.provider_connection_id)||null,d=E(a.label||a.displayName||a.name)||b;return{modelStr:b,preferredConnectionId:c,label:d}}(c);return d.modelStr?S(a,d.modelStr,e,f,g,{preferredConnectionId:d.preferredConnectionId,apiKeyForceThinkingOff:h,comboRequestOverrides:i.requestOverrides,contentLoggingMode:i.contentLoggingMode,routingMetadata:{routeType:"combo",comboName:b,comboTarget:d.label||d.modelStr,comboStrategy:i.comboStrategy}}):(t.warn("CHAT",`Combo "${b}" contains an invalid target`,{target:c}),(0,m.yj)(r.gx.BAD_REQUEST,`Invalid combo target in ${b}`))},log:t,comboName:b,comboStrategy:i.comboStrategy,comboStickyLimit:i.comboStickyLimit,comboStickyScope:i.comboStickyScope,comboStickyTtlMinutes:i.comboStickyTtlMinutes,comboStickyContext:j})}async function Q({body:a,modelStr:b,virtualCombo:c,settings:d=null,clientRawRequest:e,request:f,apiKey:g,apiKeyForceThinkingOff:h=!1}){let i=O(d||{},b);return t.info("CHAT",`Virtual combo "${b}" matched ${c.targets?.length||0} target(s)`),(0,p.mH)({body:a,combo:c,log:t,handleSingleTarget:(a,c)=>S(a,c.model,e,f,g,{preferredConnectionId:c.connectionId||null,apiKeyForceThinkingOff:h,comboRequestOverrides:i.requestOverrides,contentLoggingMode:i.contentLoggingMode,routingMetadata:{routeType:"combo",comboName:b,comboTarget:c?.label||c?.model||"",comboStrategy:i.comboStrategy}})})}async function R(a,b=null){let c;try{c=await a.json()}catch{return t.warn("CHAT","Invalid JSON body"),B({request:a,clientRawRequest:b,statusCode:r.gx.BAD_REQUEST,errorCode:"invalid_json_body",errorType:"invalid_request",message:"Invalid JSON body"}),(0,m.yj)(r.gx.BAD_REQUEST,"Invalid JSON body")}b||(b={endpoint:new URL(a.url).pathname,body:c,headers:Object.fromEntries(a.headers.entries())}),(0,g.n)(b.headers);let d=new URL(a.url),e=c.model,j=c.messages?.length||c.input?.length||0,l=c.tools?.length||0,n=c.reasoning_effort||c.reasoning?.effort||null;t.request("POST",`${d.pathname} | ${e} | ${j} msgs${l?` | ${l} tools`:""}${n?` | effort=${n}`:""}`);let o=a.headers.get("Authorization"),s=(0,f.Tr)(a);o&&s?t.debug("AUTH",`API Key: ${t.maskKey(s)}`):t.debug("AUTH","No API key provided");let u=await (0,h.mt)(),v=null;if(s&&(v=await (0,h.mY)(s)),!s)return t.warn("AUTH","Missing API key"),B({request:a,clientRawRequest:b,body:c,model:e,statusCode:r.gx.UNAUTHORIZED,errorCode:"missing_api_key",errorType:"auth_error",message:"Missing API key"}),(0,m.yj)(r.gx.UNAUTHORIZED,"Missing API key");let w=v?!1!==v.isActive:await (0,f.kI)(s);if(v&&b&&(b.apiKeyOwnerUser=String(v.ownerUser||v.createdByUser||"").trim().toLowerCase()),!w)return t.warn("AUTH","Invalid API key"),B({request:a,clientRawRequest:b,body:c,apiKey:s,model:e,statusCode:r.gx.UNAUTHORIZED,errorCode:"invalid_api_key",errorType:"auth_error",message:"Invalid API key"}),(0,m.yj)(r.gx.UNAUTHORIZED,"Invalid API key");if(!e)return t.warn("CHAT","Missing model"),B({request:a,clientRawRequest:b,body:c,apiKey:s,statusCode:r.gx.BAD_REQUEST,errorCode:"missing_model",errorType:"invalid_request",message:"Missing model"}),(0,m.yj)(r.gx.BAD_REQUEST,"Missing model");if(v&&!(0,i.zx)(v,e))return t.warn("AUTH",`API key not allowed to use model: ${e}`),B({request:a,clientRawRequest:b,body:c,apiKey:s,model:e,statusCode:r.gx.FORBIDDEN||403,errorCode:"model_not_allowed",errorType:"forbidden",message:`API key is not allowed to use model: ${e}`}),(0,m.yj)(r.gx.FORBIDDEN||403,`API key is not allowed to use model: ${e}`);let x=a?.headers?.get("user-agent")||"",y=(0,q.c)(c,e,x,!!u.ccFilterNaming);if(y)return y.response||y;let z=(0,p.HX)(u,e);if(z)return Q({body:c,modelStr:e,virtualCombo:z,settings:u,clientRawRequest:b,request:a,apiKey:s,apiKeyForceThinkingOff:b?.apiKeyForceThinkingOff===!0});let A=await (0,k.d_)(e);return A?P({body:c,modelStr:e,comboModels:A,settings:u,clientRawRequest:b,request:a,apiKey:s,apiKeyForceThinkingOff:b?.apiKeyForceThinkingOff===!0}):S(c,e,b,a,s)}async function S(a,b,c=null,d=null,e=null,g={}){let i=await (0,k.mA)(b);if(!i.provider){let f=await (0,h.mt)(),i=(0,p.HX)(f,b);if(i)return Q({body:a,modelStr:b,virtualCombo:i,settings:f,clientRawRequest:c,request:d,apiKey:e,apiKeyForceThinkingOff:!0===g.apiKeyForceThinkingOff||c?.apiKeyForceThinkingOff===!0});let j=await (0,k.d_)(b);return j?P({body:a,modelStr:b,comboModels:j,settings:f,clientRawRequest:c,request:d,apiKey:e,apiKeyForceThinkingOff:!0===g.apiKeyForceThinkingOff||c?.apiKeyForceThinkingOff===!0}):(t.warn("CHAT","Invalid model format",{model:b}),B({request:d,clientRawRequest:c,body:a,apiKey:e,model:b,statusCode:r.gx.BAD_REQUEST,errorCode:"invalid_model_format",errorType:"model_not_found",message:"Invalid model format"}),(0,m.yj)(r.gx.BAD_REQUEST,"Invalid model format"))}let{provider:n,model:o}=i;b!==`${n}/${o}`?t.info("ROUTING",`${b} -> ${n}/${o}`):t.info("ROUTING",`Provider: ${n}, Model: ${o}`);let q=d?.headers?.get("user-agent")||"",w=new Set,y=null,A=null;for(;;){let b=await (0,f.c1)(n,w,o,{body:a,headers:c?.headers||{},preferredConnectionId:g.preferredConnectionId||null,ownerUser:c?.apiKeyOwnerUser||""});if(!b||b.allRateLimited||b.allUnavailableByPolicy){if(b?.allRateLimited||b?.allUnavailableByPolicy){let f=y||b.lastError||"Unavailable",g=A||Number(b.lastErrorCode)||r.gx.SERVICE_UNAVAILABLE;return t.warn("CHAT",`[${n}/${o}] ${f} (${b.retryAfterHuman})`),B({request:d,clientRawRequest:c,body:a,apiKey:e,provider:n,model:o,statusCode:g,errorCode:b.allRateLimited?"all_accounts_rate_limited":"all_accounts_unavailable",errorType:b.allRateLimited?"rate_limit":"provider_unavailable",errorSource:"routing",message:`[${n}/${o}] ${f}`}),(0,m.wO)(g,`[${n}/${o}] ${f}`,b.retryAfter,b.retryAfterHuman)}if(0===w.size)return t.warn("AUTH",`No active credentials for provider: ${n}`),B({request:d,clientRawRequest:c,body:a,apiKey:e,provider:n,model:o,statusCode:r.gx.NOT_FOUND,errorCode:"no_active_credentials",errorType:"provider_unavailable",errorSource:"routing",message:`No active credentials for provider: ${n}`}),(0,m.yj)(r.gx.NOT_FOUND,`No active credentials for provider: ${n}`);return t.warn("CHAT","No more accounts available",{provider:n}),B({request:d,clientRawRequest:c,body:a,apiKey:e,provider:n,model:o,statusCode:A||r.gx.SERVICE_UNAVAILABLE,errorCode:"all_accounts_unavailable",errorType:"provider_unavailable",errorSource:"routing",message:y||"All accounts unavailable"}),(0,m.yj)(A||r.gx.SERVICE_UNAVAILABLE,y||"All accounts unavailable")}t.info("AUTH",`\x1b[32mUsing ${n} account: ${b.connectionName}\x1b[0m`);let i=await (0,u.eU)(n,b);if(("antigravity"===n||"gemini-cli"===n)&&!i.projectId){let a=await (0,v.eG)(b.connectionId,i.accessToken);a&&(i.projectId=a,(0,u.vN)(b.connectionId,{projectId:a}).catch(()=>{}))}let k=await (0,h.mt)(),p=(k.providerThinking||{})[n]||null,G=!0===g.apiKeyForceThinkingOff||c?.apiKeyForceThinkingOff===!0,O=g.comboRequestOverrides||{},P={...a,model:`${n}/${o}`},Q=(0,z.mq)(n),R=function(a={},b="",c={}){if(!(0,z.mq)(b))return a;let d=function(a={}){let b=a?.providerSpecificData&&"object"==typeof a.providerSpecificData?a.providerSpecificData:{},c=a.openAICompatibleRuntime||a.runtimeKind||b.openAICompatibleRuntime||b.runtimeKind||b.runtimeType||b.serverType||z.hb;return(0,z.tl)(c,z.hb)}(c),e=K(c.comboRequestOverrides||{}),f=c?.apiKeyForceThinkingOff===!0,g={...a};return(g=J(g,e),f)?(g=F(g),!0===d.supportsChatTemplateKwargs?M(g,d,!1):g):e.forceThinkingOffAboveChars>0&&(0,j.iz)(g)>=e.forceThinkingOffAboveChars?(g=F(g),g=!0===d.supportsChatTemplateKwargs?M(g,d,!1):g,J(g,e.forceThinkingOffRequestOverrides)):(void 0!==e.reasoning_budget&&(g=function(a={},b,c){let d=L(a);return b.reasoningBudgetField&&(d[b.reasoningBudgetField]=c),d}(g,d,e.reasoning_budget)),"off"===e.thinkingMode?(g=L(g),g=M(g,d,!1)):"on"===e.thinkingMode&&(g=M(g,d,!0)),g)}(P,n,{apiKeyForceThinkingOff:G,comboRequestOverrides:O,providerSpecificData:i.providerSpecificData||{}}),S=function({originalBody:a={},finalBody:b={},overrides:c={},apiKeyForceThinkingOff:d=!1,providerPolicyApplies:e=!0}={}){let f=(0,j.iz)(b||a||{}),g=N(c.forceThinkingOffAboveChars),h=g>0&&f>=g,i=!0===e,k=i&&h;return{thinkingEnabled:function(a={}){if(C(a.chat_template_kwargs)&&D(a.chat_template_kwargs,"enable_thinking"))return!0===a.chat_template_kwargs.enable_thinking;if(D(a,"enable_thinking"))return!0===a.enable_thinking;if(D(a,"reasoning_budget"))return H(a.reasoning_budget,{min:0,max:262144})>0;if(D(a,"thinking_token_budget"))return H(a.thinking_token_budget,{min:0,max:262144})>0;if(C(a.thinking)){let b=E(a.thinking.type).toLowerCase();if(["enabled","on","true"].includes(b))return!0;if(["disabled","off","false"].includes(b))return!1}return null}(b),thinkingAutoOff:k,thinkingAutoOffReason:k?"prompt_chars_threshold":i&&!0===d?"api_key_force_off":"",promptChars:f,forceThinkingOffAboveChars:g,providerPolicyApplies:i,thinkingAutoOffThresholdMatched:h}}({originalBody:P,finalBody:R,overrides:O,apiKeyForceThinkingOff:G,providerPolicyApplies:Q}),T=function({route:a={},provider:b="",model:c="",connectionId:d="",requestPolicyMeta:e={},originalBody:f={},finalBody:g={},overrides:h={}}={}){let i=e?.thinkingAutoOff===!0;return{combo_name:a.comboName||null,combo_target:a.comboTarget||null,combo_strategy:a.comboStrategy||null,route_type:a.routeType||(a.comboName?"combo":"direct"),selected_provider_id:d||b||null,selected_model:c||g?.model||f?.model||null,request_overrides_applied:function({originalBody:a={},finalBody:b={},overrides:c={},autoOffApplied:d=!1}={}){let e=d?I(c.forceThinkingOffRequestOverrides||{}):I(c||{}),f={};for(let c of["temperature","top_p","presence_penalty","max_tokens"])void 0!==e[c]&&b?.[c]!==void 0&&b[c]!==a?.[c]&&(f[c]=b[c]);return d||void 0===c.reasoning_budget||b?.reasoning_budget===a?.reasoning_budget||(f.reasoning_budget=b?.reasoning_budget),!d&&c.thinkingMode&&"inherit"!==c.thinkingMode&&(f.thinkingMode=c.thinkingMode),d&&(f.thinkingMode="off",f.forceThinkingOffAboveChars=N(c.forceThinkingOffAboveChars)),f}({originalBody:f,finalBody:g,overrides:h,autoOffApplied:i}),auto_off_applied:i}}({route:g.routingMetadata||{routeType:"direct"},provider:n,model:o,connectionId:b.connectionId,requestPolicyMeta:S,originalBody:P,finalBody:R,overrides:O}),U={...c||{},requestPolicyMeta:S,routingMetadata:T},V=await (0,l.w)({body:R,modelInfo:{provider:n,model:o},credentials:i,log:t,clientRawRequest:U,requestPolicyMeta:S,connectionId:b.connectionId,userAgent:q,apiKey:e,ccFilterNaming:!!k.ccFilterNaming,rtkEnabled:!!k.rtkEnabled,cavemanEnabled:!!k.cavemanEnabled,cavemanLevel:k.cavemanLevel||"full",providerThinking:!1===S.thinkingEnabled?null:p,contentLoggingMode:g.contentLoggingMode||"inherit",sourceFormatOverride:d?.url?(0,s.t)(new URL(d.url).pathname,a):null,onCredentialsRefreshed:async a=>{await (0,u.vN)(b.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,f.Pt)(b.connectionId,b,o)}});if(!function(a,b){let c=a?.sessionId||a?.session_id||a?.requestContext?.sessionId;c&&(0,x.gl)({sessionId:c,metadata:b}).catch(()=>{})}(U,T),V.success)return V.response;let{shouldFallback:W}=await (0,f.vk)(b.connectionId,V.status,V.error,n,o,V.resetsAtMs);if(W){t.warn("AUTH",`Account ${b.connectionName} unavailable (${V.status}), trying fallback`),w.add(b.connectionId),y=V.error,A=V.status;continue}return V.response}}[e,l]=A.then?(await A)():A,d()}catch(a){d(a)}})}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/
|
|
1
|
+
globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/Awp_vjC7WM4vYwbL-39fu/_buildManifest.js","static/Awp_vjC7WM4vYwbL-39fu/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-a990cabb6976f421.js","static/chunks/4bd1b696-e356ca5ba0218e27.js","static/chunks/3794-e569667691edc8f7.js","static/chunks/main-app-0a27584eea53a4b0.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
|