@jheavenknows/bluerouter 5.2.83 → 5.2.84
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 +18 -17
- package/app/.next-cli-build/build-manifest.json +3 -3
- package/app/.next-cli-build/prerender-manifest.json +1 -1
- package/app/.next-cli-build/routes-manifest.json +6 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js +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 +2 -2
- 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 +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 +1 -1
- 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/model-profiles/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/model-profiles/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- 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/cluster/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cluster/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +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 +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 +1 -1
- 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/local-ai-report/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/local-ai-report/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +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 +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_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +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 +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 +1 -1
- 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 +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +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 +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 +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 +2 -2
- 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 +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 +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 +2 -2
- 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 +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/resource-monitor/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/resource-monitor/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +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/token-saver/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +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 +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_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/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +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 +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +6 -6
- 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/auth/view-mode/route.js +1 -0
- package/app/.next-cli-build/server/app/api/auth/view-mode/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/auth/view-mode/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/branding/[asset]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/branding/[asset]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/route.js +1 -1
- package/app/.next-cli-build/server/app/api/branding/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/upload/route.js +1 -1
- package/app/.next-cli-build/server/app/api/branding/upload/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/cloud-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/cloud-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +1 -1
- 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 +1 -1
- 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 +2 -2
- 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 +1 -1
- 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/cline-settings/route.js +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/copilot-settings/route.js +1 -1
- 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-tools/route.js +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/droid-settings/route.js +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/jcode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +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/qwen-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/config/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/config/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/heartbeat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/heartbeat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/command/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/command/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/snapshot/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cluster/snapshot/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/sync/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/sync/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +2 -2
- 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/ai-power-index/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/ai-power-index/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/ai-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/ai-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/analyze/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/analytics/analyze/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js +1 -1
- 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/local-ai-report/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/local-ai-report/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/dashboard/token-saver/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/token-saver/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/init/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/caveman-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/caveman-test/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/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 +2 -2
- 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/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 +1 -1
- 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/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-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]/api-key-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/api-key-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/visibility/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/visibility/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/catalog/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pricing/catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js.nft.json +1 -1
- 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/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/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/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/resource-monitor/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/ai-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/ai-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/analyze/route.js +2 -2
- package/app/.next-cli-build/server/app/api/resource-monitor/analyze/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/history/route.js +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/route.js +2 -2
- package/app/.next-cli-build/server/app/api/resource-monitor/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/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 +2 -2
- 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/tags/route.js +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/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/translator/load/route.js +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/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 +1 -1
- 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/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 +2 -2
- 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/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/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/route.js +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 +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 +6 -6
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +6 -6
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk/dashboard/ai-power-index/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/analytics.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/analytics.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/analytics.segments/_full.segment.rsc +8 -8
- 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 +11 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +11 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +11 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +3 -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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +8 -8
- 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/model-profiles.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/model-profiles/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cluster.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk/dashboard/cluster/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/!KGRhc2hib2FyZCk/dashboard/local-ai-report/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +8 -8
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +7 -7
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +7 -7
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +8 -8
- 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 +9 -9
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk/dashboard/resource-monitor/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +8 -8
- 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/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing/page.js +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 +6 -6
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +6 -6
- 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 +6 -6
- package/app/.next-cli-build/server/app/login/page.js +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 +7 -7
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +7 -7
- 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 +7 -7
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/page.js +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 +18 -17
- package/app/.next-cli-build/server/chunks/1340.js +2 -2
- package/app/.next-cli-build/server/chunks/2731.js +1 -1
- package/app/.next-cli-build/server/chunks/3110.js +7 -7
- package/app/.next-cli-build/server/chunks/318.js +1 -1
- package/app/.next-cli-build/server/chunks/427.js +1 -1
- package/app/.next-cli-build/server/chunks/4746.js +1 -1
- package/app/.next-cli-build/server/chunks/607.js +1 -1
- package/app/.next-cli-build/server/chunks/6328.js +1 -1
- package/app/.next-cli-build/server/chunks/6759.js +1 -1
- package/app/.next-cli-build/server/chunks/6811.js +1 -1
- package/app/.next-cli-build/server/chunks/6977.js +1 -1
- package/app/.next-cli-build/server/chunks/7774.js +3 -3
- package/app/.next-cli-build/server/chunks/7812.js +1 -1
- package/app/.next-cli-build/server/chunks/8640.js +1 -1
- package/app/.next-cli-build/server/chunks/8895.js +5 -5
- package/app/.next-cli-build/server/chunks/9483.js +1 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +3 -3
- 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/static/chunks/{5263-99312339a728ceef.js → 5263-8e355fd34993b813.js} +1 -1
- package/app/.next-cli-build/static/chunks/{5497-a04f73a89da8cf71.js → 5497-bf87d32f5fd0d196.js} +5 -5
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/analytics/{page-f66f29a1b615400c.js → page-85b4d203c77b909e.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/api-keys/{page-c77babb3e7d51da3.js → page-728ad1baf935fc66.js} +4 -4
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/local-ai-report/{page-167ae2f35cbf97e2.js → page-0f3e7963fc09b58f.js} +15 -15
- package/app/.next-cli-build/static/chunks/app/_global-error/{page-3fc740cd5cf6802d.js → page-6f4dc2676908ee3d.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/test/{route-3fc740cd5cf6802d.js → route-6f4dc2676908ee3d.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/users/{route-3fc740cd5cf6802d.js → route-6f4dc2676908ee3d.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/{route-3fc740cd5cf6802d.js → route-6f4dc2676908ee3d.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/view-mode/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/branding/[asset]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/branding/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/branding/upload/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/cloud-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/autostart/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/prompt-log-db/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/root-ca/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/qwen-settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/config/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/heartbeat/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/command/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/snapshot/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/sync/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/ai-power-index/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/ai-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/analyze/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/combos/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/endpoint/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/local-ai-report/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/options/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/token-saver/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/init/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/caveman-test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/api-key-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/import-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/usage/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/client/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/monitor/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/permissions/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/routing/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/visibility/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/catalog/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/recalculate/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-health/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/[id]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/ai-models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/analyze/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/history/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/restart/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-6f4dc2676908ee3d.js +1 -0
- package/app/.next-cli-build/static/chunks/{webpack-7f2a8541ddb15fce.js → webpack-6791048ac5efdb66.js} +1 -1
- package/app/.next-cli-build/static/css/51974dfc20771632.css +1 -0
- package/app/.next-cli-build/static/css/f07d94a01bdf469e.css +1 -0
- package/app/.next-cli-build/static/lMbtHcr6Kz2RRK-8mcWEC/_buildManifest.js +1 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-5.2.79-to-5.2.80-5.2.80-20260814-192528 → upgrade-5.2.82-to-5.2.83-5.2.83-20260815-115318}/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite +0 -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/IVzQ_3CdPz4K2QWoApApi/_buildManifest.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/branding/[asset]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/branding/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/branding/upload/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/cloud-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/autostart/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/prompt-log-db/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/root-ca/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/qwen-settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/config/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/heartbeat/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/command/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/snapshot/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/sync/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/ai-power-index/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/ai-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/analyze/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/combos/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/endpoint/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/local-ai-report/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/options/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/token-saver/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/caveman-test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/api-key-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/import-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/usage/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/client/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/monitor/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/permissions/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/routing/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/visibility/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/catalog/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/recalculate/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-health/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/[id]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/ai-models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/analyze/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/history/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/restart/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-3fc740cd5cf6802d.js +0 -1
- package/app/.next-cli-build/static/css/515412bc5cdf9cc2.css +0 -1
- /package/app/.next-cli-build/static/{IVzQ_3CdPz4K2QWoApApi → lMbtHcr6Kz2RRK-8mcWEC}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=7812,exports.ids=[7812],exports.modules={9588:(a,b,c)=>{c.d(b,{I8:()=>
|
|
1
|
+
"use strict";exports.id=7812,exports.ids=[7812],exports.modules={9588:(a,b,c)=>{c.d(b,{Cy:()=>i,I8:()=>k,Tv:()=>v,UX:()=>p,aV:()=>o,bz:()=>r,hH:()=>u,oW:()=>t,s0:()=>m,ub:()=>n,vZ:()=>q});var d=c(65573),e=c(23211),f=c(89718),g=c(33792),h=c(90389);let i="dashboard_view_mode";function j(a){return String(a||"").trim().toLowerCase()}function k(a){return j(a)}function l(a={}){return[a.ldapUsername,a.ldapEmail,a.ldapName,a.oidcEmail,a.oidcName,a.localUsername,a.username,a.email].map(j).filter(Boolean)}function m(a={}){let b=l(a),c=b[0]||"local",d=a.ldapName||a.ldapEmail||a.oidcName||a.oidcEmail||a.localUsername||c;return{userId:c,displayName:d,loginMethod:a.oidc?"OIDC":a.ldap?"LDAP":"Local",candidates:b}}function n(a={},b={}){var c;if(!b?.authenticated)return!1;if(b.local||!b.ldap&&!b.oidc||b.role===h.hS.ADMIN||!0===b.ldapIsAdmin)return!0;let d=Array.isArray(c=a.ldapAllowedUsers)?c.map(j).filter(Boolean):String(c||"").split(/[,\n]/).map(j).filter(Boolean);return 0!==d.length&&l(b).some(a=>d.includes(a))}function o(a={},b={}){return!(!b?.authenticated||n(a,b))&&(b.role===h.hS.MONITOR_ADMIN||!0===b.ldapIsMonitorAdmin)}function p(a={},b={}){return!(!b?.authenticated||n(a,b)||o(a,b))&&(b.role===h.hS.AI_GATEWAYS_MONITOR||!0===b.ldapIsAiGatewaysMonitor)}function q(a={},b={}){return b?.authenticated?n(a,b)?h.hS.ADMIN:o(a,b)?h.hS.MONITOR_ADMIN:p(a,b)?h.hS.AI_GATEWAYS_MONITOR:h.hS.USER:h.hS.GUEST}function r(a={}){return!0===a.isAdmin||!0===a.isMonitorAdmin}async function s(){let a=await (0,f.mt)(),b=await (0,d.UL)(),c=await (0,g.dY)(b.get("auth_token")?.value);if(!c?.authenticated)return{authenticated:!1,isAdmin:!1,actualIsAdmin:!1,showAsUser:!1,canToggleUserMode:!1,isMonitorAdmin:!1,isAiGatewaysMonitor:!1,role:h.hS.GUEST,actualRole:h.hS.GUEST,userId:"",displayName:"Guest",loginMethod:"None",settings:{...a,requireLogin:!0},session:null};let e=m(c||{}),j=q(a,c||{}),k=j===h.hS.ADMIN,l=k&&b.get(i)?.value==="user",n=l?h.hS.USER:j,o=n===h.hS.ADMIN,p=n===h.hS.MONITOR_ADMIN,r=n===h.hS.AI_GATEWAYS_MONITOR;return{authenticated:!0,isAdmin:o,actualIsAdmin:k,showAsUser:l,canToggleUserMode:k,isMonitorAdmin:p,isAiGatewaysMonitor:r,role:n,actualRole:j,canManageApiKeys:o||p,canUseMonitorAdminTabs:o||p,canViewAllAnalytics:o||p||r,...e,settings:{...a,requireLogin:!0},session:c}}async function t(){let a=await s();return a.authenticated?{access:a,response:null}:{access:a,response:e.NextResponse.json({error:"Authentication required"},{status:401})}}async function u(a={}){let{allowMonitorAdmin:b=!1}=a||{},{access:c,response:d}=await t();return d?{access:c,response:d}:c.isAdmin||b&&c.isMonitorAdmin?{access:c,response:null}:{access:c,response:e.NextResponse.json({error:"Admin access required"},{status:403})}}function v(a,b){if(!a?.authenticated||!b)return!1;if(r(a))return!0;let c=j(a.userId),d=j(b.ownerUser),e=j(b.createdByUser);return!!c&&(d===c||e===c)}},17509:(a,b,c)=>{c.d(b,{V:()=>o});var d=c(91356),e=c(80700),f=c(99129),g=c(73575),h=c(41570),i=c(19035),j=c(44893),k=c(69052);async function l(a,b,c){let l,{protected:m,header:n,payload:o}=a,p={};if(m&&(p=(0,h.OX)(m,f.Ye,"JWS Protected Header is invalid")),void 0!==n){if(!(0,i.fz)(p,n))throw new f.Ye("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");l={...p,...n}}else l=p;let q=(0,j.nI)(f.Ye,j.qc,b[1],p,l),r=!0;if(q.includes("b64")&&"boolean"!=typeof(r=p.b64))throw new f.Ye('The "b64" (base64url-encode payload) Header Parameter must be a boolean');let{alg:s}=l;if("string"!=typeof s||!s)throw new f.Ye('JWS "alg" (Algorithm) Header Parameter missing or invalid');if(b[0]&&!b[0].has(s))throw new f.Rb('"alg" (Algorithm) Header Parameter value not allowed');if(r){if("string"!=typeof o)throw new f.Ye("JWS Payload must be a string")}else if("string"!=typeof o&&!(o instanceof Uint8Array))throw new f.Ye("JWS Payload must be a string or an Uint8Array instance");let t=!1;"function"==typeof c&&(c=await c(p,a),t=!0);let u=(0,e.q)(s),v=(0,g.xW)(void 0!==m?(0,g.lF)(m):new Uint8Array,(0,g.lF)("."),"string"==typeof o?r?b[2]??=(0,h.Fo)(o,"payload",f.Ye):g.Rd.encode(o):o),w=(0,h.h2)(a.signature,"signature",f.Ye),x=await (0,k.d)(u,c,"verify");if(!await (0,d.M)(u,x,w,v))throw new f.h2;return[r?(0,h.h2)(o,"payload",f.Ye):"string"==typeof o?g.Rd.encode(o):o,p,r,x,t]}async function m(a,b,c){if(a instanceof Uint8Array&&(a=g.D0.decode(a)),"string"!=typeof a)throw new f.Ye("Compact JWS must be a string or Uint8Array");let{0:d,1:e,2:h,length:i}=a.split(".");if(3!==i)throw new f.Ye("Invalid Compact JWS");return l({payload:e,protected:d,signature:h},b,c)}var n=c(17347);async function o(a,b,c){let d=await m(a,[c&&(0,j.Fw)("algorithms",c.algorithms),c?.crit],b);if(!d[2])throw new f.Dp("JWTs MUST NOT use unencoded payload");let e={payload:(0,n.k6)(d[1],d[0],c),protectedHeader:d[1]};return"function"==typeof b?{...e,key:d[3]}:e}},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)}}},33792:(a,b,c)=>{c.d(b,{Dc:()=>p,OZ:()=>s,YK:()=>n,dY:()=>q,tm:()=>r});var d=c(84433),e=c(17509),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(77598),k=c.n(j),l=c(49120);let m=new TextEncoder().encode(function(){if(process.env.JWT_SECRET)return process.env.JWT_SECRET;let a=i().join(l.DATA_DIR,"jwt-secret");try{return g().readFileSync(a,"utf8").trim()}catch{}g().mkdirSync(l.DATA_DIR,{recursive:!0});let b=k().randomBytes(32).toString("hex");return g().writeFileSync(a,b,{mode:384}),b}());function n(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=a?.headers?.get?.("x-forwarded-proto");return b||"https"===c}async function o(a={}){return new d.P({authenticated:!0,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("86400s").sign(m)}async function p(a){if(!a)return!1;try{return await (0,e.V)(a,m),!0}catch{return!1}}async function q(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,m);return b}catch{return null}}async function r(a,b,c={}){let d=await o(c);a.set("auth_token",d,{httpOnly:!0,secure:n(b),sameSite:"lax",path:"/",maxAge:86400})}function s(a){a.delete("auth_token")}},47812:(a,b,c)=>{c.d(b,{LW:()=>k,T4:()=>p,WZ:()=>o,Xl:()=>r,ZN:()=>l,_p:()=>t,nC:()=>q,nm:()=>v,ss:()=>n,uP:()=>s,vS:()=>m});var d=c(89718),e=c(74452),f=c(54603),g=c(490),h=c(33669),i=c(9588);function j(a,b){let c=Number(a);return!Number.isFinite(c)||c<=0?b:Math.floor(c)}function k(a){if(!a||"object"!=typeof a||Array.isArray(a))return{};let b={};for(let[c,d]of Object.entries(a)){let a=(0,i.I8)(c);if(!a)continue;let e=j(d,0);e<=0||(b[a]=e)}return b}function l(a={}){return j(a?.userApiKeyLimit,5)}function m(a={}){return k(a?.userApiKeyLimitOverrides)}function n(a={},b=""){let c=(0,i.I8)(b),d=m(a);return c&&d[c]>0?d[c]:l(a)}function o(a){return String(a||"").trim()}function p(a){if(Array.isArray(a))return(0,h.MI)(a);let b=o(a);return b?[b]:[]}function q(a={}){let b=p(a.apiKeyDefaultModels);return b.length>0?b:p(a.apiKeyDefaultModel)}function r(a={}){let b=a?.apiKeyDefaultPolicy;return(0,g.jQ)(b&&"object"==typeof b?b:g.is)}function s(a={}){return(0,h.MI)(q(a))}async function t(a){let b=(0,i.I8)(a||"");return b?(0,e.mI)({ownerUser:b}):0}async function u(a,b,c={}){let e={authenticated:!0,...b||{}},g=(0,i.s0)(e),h=(0,i.I8)(g.userId);if(!h)return{created:!1,skipped:"missing_owner"};let j=await t(h);if(j>0)return{created:!1,skipped:"already_has_key",apiKeyCount:j};let k=a||await (0,d.mt)(),l=s(k);if(0===l.length)return{created:!1,skipped:"missing_default_model"};let m=await (0,f.Xj)();return{created:!0,key:await (0,d.Iq)(c.name||function(a={}){let b=String(a.displayName||a.userId||"user").trim();return`Default API Key - ${b}`.slice(0,120)}(g),m,{allowedModels:l,limits:r(k),ownerUser:h,createdByUser:h})}}async function v(a,b,c={}){try{return await u(a,b,c)}catch(a){return console.log("Auto API key provisioning skipped:",a?.message||a),{created:!1,skipped:"error",error:a?.message||String(a)}}}},90389:(a,b,c)=>{c.d(b,{hS:()=>d});let d=Object.freeze({ADMIN:"admin",MONITOR_ADMIN:"monitor_admin",AI_GATEWAYS_MONITOR:"ai_gateways_monitor",USER:"user",GUEST:"guest"});Object.freeze([{href:"/dashboard/endpoint",label:"Endpoint",icon:"api"},{href:"/dashboard/api-keys",label:"API Keys",icon:"vpn_key"},{href:"/dashboard/usage",label:"Usage",icon:"bar_chart"},{href:"/dashboard/analytics",label:"Analytics",icon:"monitoring"},{href:"/dashboard/ai-power-index",label:"AI Power Index",icon:"electric_bolt"},{href:"/dashboard/quota",label:"Quota Tracker",icon:"data_usage"},{href:"/dashboard/prompt-logs",label:"Prompt Logs",icon:"manage_search"}]),Object.freeze(["/dashboard","/dashboard/endpoint","/dashboard/api-keys","/dashboard/usage","/dashboard/analytics","/dashboard/ai-power-index","/dashboard/quota","/dashboard/prompt-logs"])}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=8640,exports.ids=[8640],exports.modules={19113:(a,b,c)=>{async function d(a){let b=await fetch(`http://${a.host}:${a.agentPort}/status`,{headers:{Authorization:`Bearer ${a.agentToken}`},cache:"no-store",signal:AbortSignal.timeout(7e3)});if(!b.ok){let a=await b.text().catch(()=>"");if(401===b.status)throw Error("Agent returned HTTP 401: token dashboard kh\xf4ng khớp với token agent. H\xe3y c\xe0i lại agent từ n\xfat sửa server.");throw Error(`Agent returned HTTP ${b.status}${a?`: ${a.slice(0,200)}`:""}`)}return b.json()}c.d(b,{ensureResourceMonitorCollector:()=>k}),c(79646);var e=c(14938),f=c(
|
|
1
|
+
"use strict";exports.id=8640,exports.ids=[8640],exports.modules={19113:(a,b,c)=>{async function d(a){let b=await fetch(`http://${a.host}:${a.agentPort}/status`,{headers:{Authorization:`Bearer ${a.agentToken}`},cache:"no-store",signal:AbortSignal.timeout(7e3)});if(!b.ok){let a=await b.text().catch(()=>"");if(401===b.status)throw Error("Agent returned HTTP 401: token dashboard kh\xf4ng khớp với token agent. H\xe3y c\xe0i lại agent từ n\xfat sửa server.");throw Error(`Agent returned HTTP ${b.status}${a?`: ${a.slice(0,200)}`:""}`)}return b.json()}c.d(b,{ensureResourceMonitorCollector:()=>k}),c(79646);var e=c(14938),f=c(69810),g=c(75870);let h="__blueRouterResourceMonitorCollector";function i(){return globalThis[h]||(globalThis[h]={timer:null,running:null,started:!1}),globalThis[h]}async function j(){let a=i();return a.running||(a.running=(async()=>{if(await (0,g.WR)())return;let a=await (0,e.HI)({includeSecrets:!0});await Promise.allSettled(a.filter(a=>!1!==a.enabled).map(async a=>{let b=await d(a);await (0,f.Qg)(a.id,b)}))})().finally(()=>{a.running=null})),a.running}function k(){let a=i();if(a.started)return;a.started=!0;let b=async()=>{try{await j()}catch(a){console.warn("[resource-monitor] history collector failed:",a?.message||a)}finally{a.timer=setTimeout(b,6e4),a.timer.unref?.()}};a.timer=setTimeout(b,5e3),a.timer.unref?.()}},63960:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(82009);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}},82009:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}}};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=8895,exports.ids=[8895],exports.modules={324:(a,b,c)=>{c.d(b,{J:()=>e,Q:()=>f});let d={claude:["claude","anthropic"],"gemini-cli":["gemini-cli"],antigravity:["antigravity"],codex:["codex"]};function e(a={},b={}){let c=(a["user-agent"]||"").toLowerCase(),d=(a["x-app"]||"").toLowerCase(),f=(a["openai-intent"]||"").toLowerCase(),g=(a["x-initiator"]||a["X-Initiator"]||"").toLowerCase();return"antigravity"===b.userAgent?"antigravity":c.includes("githubcopilotchat")||"conversation-panel"===f||"user"===g?"github-copilot":c.includes("claude-cli")||c.includes("claude-code")||"cli"===d?"claude":c.includes("gemini-cli")?"gemini-cli":c.includes("codex-cli")?"codex":c.includes("deepseek-tui")?"deepseek-tui":null}function f(a,b){if(!a)return!1;let c=d[a];if(!c)return!1;let e=b.startsWith("anthropic-compatible")?"anthropic":b;return c.includes(e)}},5016:(a,b,c)=>{c.d(b,{N:()=>q});var d=c(14170),e=c(10729),f=c(39551),g=c(73483),h=c(43659),i=c(41004),j=c(81626),k=c(86171),l=c(47370),m=c(35901),n=c(55399),o=c(9902);function p({provider:a,model:b,connectionId:c,apiKey:d,endpoint:e,requestContext:f,body:g,stream:h,translatedBody:j,finalBody:n,requestStartTime:o,message:q,errorCode:r,errorType:s,rtkStats:t=null}){let u=Date.now()-o;(0,l.E5)({model:b,provider:a,connectionId:c,status:`FAILED ${i.gx.BAD_GATEWAY}`}).catch(()=>{}),(0,l.ox)((0,k.$R)({provider:a,model:b,connectionId:c,latency:{ttft:0,total:u},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,k.Fo)(g,h),providerRequest:n||j||null,response:{error:q,status:i.gx.BAD_GATEWAY,thinking:null},status:"error",rtkStats:t},{endpoint:e||null})).catch(()=>{}),(0,m.jk)({...f||{},requestContext:f,provider:a,model:b,connectionId:c,apiKey:d,endpoint:e,gatewayStatusCode:i.gx.BAD_GATEWAY,errorSource:"provider_response_parse",errorType:s,errorCode:r,errorMessageShort:q,latencyMs:u}).catch(()=>{}),(0,k.sx)({provider:a,model:b,connectionId:c,apiKey:d,endpoint:e,statusCode:i.gx.BAD_GATEWAY,errorCode:r,errorType:s,errorMessage:q,latencyMs:u,requestContext:f||{},meta:{errorSource:"provider_response_parse"},rtkStats:t})}async function q({providerResponse:a,provider:b,model:c,sourceFormat:m,targetFormat:r,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,connectionId:x,apiKey:y,clientRawRequest:z,onRequestSuccess:A,reqLogger:B,toolNameMap:C,trackDone:D,appendLog:E,requestContext:F,requestPolicyMeta:G,rtkStats:H=null}){let I;if(D(),(a.headers.get("content-type")||"").includes("text/event-stream")){let d=await a.text(),e=(0,j.F)(d,c);if(!e){let a="Invalid SSE response for non-streaming request";return E({status:`FAILED ${i.gx.BAD_GATEWAY}`}),p({provider:b,model:c,connectionId:x,apiKey:y,endpoint:z?.endpoint,requestContext:F,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,message:a,errorCode:"invalid_sse",errorType:"invalid_sse",rtkStats:H}),(0,h.A1)(i.gx.BAD_GATEWAY,a,void 0,m)}I=e}else try{I=await a.json()}catch(d){let a=`Invalid JSON response from ${b}`;return E({status:`FAILED ${i.gx.BAD_GATEWAY}`}),console.error(`[ChatCore] Failed to parse JSON from ${b}:`,d.message),p({provider:b,model:c,connectionId:x,apiKey:y,endpoint:z?.endpoint,requestContext:F,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,message:a,errorCode:"invalid_json",errorType:"invalid_json",rtkStats:H}),(0,h.A1)(i.gx.BAD_GATEWAY,a,void 0,m)}B.logProviderResponse(a.status,a.statusText,a.headers,I),A&&await A(),I=(0,n.kR)(I,C);let J=(0,k.MK)(I),K=Date.now()-w,L=(0,e.nZ)(r,m)?function(a,b,c){if(b===c||b===d.h.OPENAI)return a;if(b===d.h.GEMINI||b===d.h.ANTIGRAVITY||b===d.h.GEMINI_CLI||b===d.h.VERTEX){let b=a.response||a;if(!b?.candidates?.[0])return a;let c=b.candidates[0],d=c.content,e=b.usageMetadata||a.usageMetadata,f="",g="",h=[];if(d?.parts)for(let a of d.parts)!0===a.thought&&a.text?g+=a.text:void 0!==a.text&&(f+=a.text),a.functionCall&&h.push({id:`call_${a.functionCall.name}_${Date.now()}_${h.length}`,type:"function",function:{name:a.functionCall.name,arguments:JSON.stringify(a.functionCall.args||{})}});let i={role:"assistant"};f&&(i.content=f),g&&(i.reasoning_content=g),h.length>0&&(i.tool_calls=h),i.content||i.tool_calls||(i.content="");let j=(c.finishReason||"stop").toLowerCase();"stop"===j&&h.length>0&&(j="tool_calls");let k={id:`chatcmpl-${b.responseId||Date.now()}`,object:"chat.completion",created:Math.floor(new Date(b.createTime||Date.now()).getTime()/1e3),model:b.modelVersion||"gemini",choices:[{index:0,message:i,finish_reason:j}]};return e&&(k.usage={prompt_tokens:(e.promptTokenCount||0)+(e.thoughtsTokenCount||0),completion_tokens:e.candidatesTokenCount||0,total_tokens:e.totalTokenCount||0},e.thoughtsTokenCount>0&&(k.usage.completion_tokens_details={reasoning_tokens:e.thoughtsTokenCount})),k}if(b===d.h.CLAUDE){if(!a.content)return a;let b="",c="",d=[];for(let e of a.content)"text"===e.type?b+=(e.text??"").replace(/^\s*```\s*json\s*\n?/i,"").replace(/\n?\s*```\s*$/i,""):"thinking"===e.type?c+=e.thinking||"":"tool_use"===e.type&&d.push({id:e.id,type:"function",function:{name:e.name,arguments:JSON.stringify(e.input||{})}});let e={role:"assistant"};b&&(e.content=b),c&&(e.reasoning_content=c),d.length>0&&(e.tool_calls=d),e.content||e.tool_calls||(e.content="");let f=a.stop_reason||"stop";"end_turn"===f&&(f="stop"),"tool_use"===f&&(f="tool_calls");let g={id:`chatcmpl-${a.id||Date.now()}`,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a.model||"claude",choices:[{index:0,message:e,finish_reason:f}]};return a.usage&&(g.usage={prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,total_tokens:(a.usage.input_tokens||0)+(a.usage.output_tokens||0)}),g}return b===d.h.OLLAMA?(0,f.ollamaBodyToOpenAI)(a):a}(I,r,m):I,M=(0,k.YZ)({usage:J||(0,k.MK)(L),body:s,responseBody:I,translatedResponse:L,format:m});if(E({tokens:M,status:"200 OK"}),(0,k.qr)({provider:b,model:c,tokens:M,connectionId:x,apiKey:y,endpoint:z?.endpoint,status:"ok",statusCode:200,latencyMs:K,ttftMs:K,isStreaming:!1,requestContext:F||{},requestPolicyMeta:G,rtkStats:H,meta:M?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:M.usageEstimatedReason}:{}}),L?.choices?.[0]){let a=L.choices[0],b=a.message;Array.isArray(b?.tool_calls)&&b.tool_calls.length>0&&"tool_calls"!==a.finish_reason&&(a.finish_reason="tool_calls")}let N=Array.isArray(L?.choices);if(N&&(L.object||(L.object="chat.completion"),L.created||(L.created=Math.floor(Date.now()/1e3))),delete L.prompt_filter_results,L?.choices)for(let a of L.choices)delete a.content_filter_results;L?.usage&&(L.usage=(0,g.WL)((0,g.O9)(L.usage),m));let O=L?.choices?.[0]?.message?.reasoning_content||L?.reasoning_content||null,P=N&&m!==d.h.OPENAI,Q=L;if(P&&(m===d.h.CLAUDE?Q=(0,o.F)(L,M):m===d.h.OPENAI_RESPONSES&&(Q=(0,o.P)(L,M))),L?.choices)for(let a of L.choices)a?.message&&delete a.message.reasoning_content;return B.logConvertedResponse(Q),(0,l.ox)((0,k.$R)({provider:b,model:c,connectionId:x,latency:{ttft:K,total:K},tokens:M||{prompt_tokens:0,completion_tokens:0},request:(0,k.Fo)(s,t),providerRequest:v||u||null,providerResponse:I||null,response:{content:L?.choices?.[0]?.message?.content||L?.content||null,thinking:O,finish_reason:L?.choices?.[0]?.finish_reason||"unknown"},status:"success",rtkStats:H},{endpoint:z?.endpoint||null,requestId:F?.requestId})).catch(a=>{console.error("[RequestDetail] Failed to save:",a.message)}),{success:!0,response:new Response(JSON.stringify(Q),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}},9902:(a,b,c)=>{function d(a={}){let b="";if("string"==typeof a.content)b=a.content;else if(Array.isArray(a.content))for(let c of a.content)"string"==typeof c?b+=c:"string"==typeof c?.text&&(b+=c.text);return{text:b,toolCalls:Array.isArray(a.tool_calls)?a.tool_calls:[]}}function e(a,b){let c=a?.choices?.[0]||{},e=c.message||{},{text:f,toolCalls:g}=d(e),h=[];for(let a of(e.reasoning_content&&h.push({type:"thinking",thinking:e.reasoning_content}),f&&h.push({type:"text",text:f}),g))h.push({type:"tool_use",id:a.id,name:a.function?.name||"",input:function(a){if(!a)return{};try{let b=JSON.parse(a);return b&&"object"==typeof b?b:{}}catch{return{}}}(a.function?.arguments)});0===h.length&&h.push({type:"text",text:""});let i="end_turn";"length"===c.finish_reason?i="max_tokens":("tool_calls"===c.finish_reason||g.length>0)&&(i="tool_use");let j=b?.input_tokens??b?.prompt_tokens??0,k=b?.output_tokens??b?.completion_tokens??0,l={id:a?.id?`msg_${String(a.id).replace(/^chatcmpl-/,"")}`:`msg_${Date.now()}`,type:"message",role:"assistant",model:a?.model||"unknown",content:h,stop_reason:i,stop_sequence:null,usage:{input_tokens:j,output_tokens:k}},m=b?.cache_read_input_tokens,n=b?.cache_creation_input_tokens;return m>0&&(l.usage.cache_read_input_tokens=m),n>0&&(l.usage.cache_creation_input_tokens=n),l}function f(a,b){let c=(a?.choices?.[0]||{}).message||{},{text:e,toolCalls:f}=d(c),g=a?.id||`resp_${Date.now()}`,h=[];for(let a of(c.reasoning_content&&h.push({id:`rs_${g}`,type:"reasoning",summary:[{type:"summary_text",text:c.reasoning_content}]}),e&&h.push({id:`msg_${g}`,type:"message",role:"assistant",content:[{type:"output_text",annotations:[],logprobs:[],text:e}]}),f))h.push({id:`fc_${a.id||g}`,type:"function_call",call_id:a.id,name:a.function?.name||"",arguments:a.function?.arguments||"{}"});let i=b?.input_tokens??b?.prompt_tokens??0,j=b?.output_tokens??b?.completion_tokens??0,k={id:a?.id?`resp_${a.id}`:g,object:"response",created_at:a?.created||Math.floor(Date.now()/1e3),status:"completed",background:!1,error:null,model:a?.model||"unknown",output:h,usage:{input_tokens:i,output_tokens:j,total_tokens:i+j}},l=b?.cache_read_input_tokens||b?.cached_tokens;return l>0&&(k.usage.input_tokens_details={cached_tokens:l}),k}c.d(b,{F:()=>e,P:()=>f})},12557:(a,b,c)=>{c.d(b,{Bl:()=>q,L5:()=>k,Qo:()=>m,S5:()=>s,hk:()=>l,kJ:()=>r});var d=c(3662);function e(a=0){let b=Math.max(0,a-1);return Math.min(d.EQ.base*Math.pow(2,b),d.EQ.max)}let f=new Set([400,406,409,413,415,422]),g=new Set([401,402,403,404,408,425,429,500,502,503,504]),h=new Set([401,402,403,404,408,425,429,500,502,503,504]),i=["improperly formed request","invalid request","validation error","context length","maximum context","context window","too many tokens","request too large","json schema"];function j(a,b,c,g){let h=Number(a)||0,j=b?("string"==typeof b?b:JSON.stringify(b)).toLowerCase():"";if(i.some(a=>j.includes(a)))return{shouldFallback:!1,cooldownMs:0};let k=function(a,b,c){for(let f of d.t2){if(f.text&&a&&a.includes(f.text)){if("improperly formed request"===f.text)return null;if(f.backoff){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:e(a),newBackoffLevel:a}}return{shouldFallback:!0,cooldownMs:f.cooldownMs}}if(f.status&&f.status===b){if(f.backoff){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:e(a),newBackoffLevel:a}}return{shouldFallback:!0,cooldownMs:f.cooldownMs}}}return null}(j,h,c);return k&&!f.has(h)||k&&["rate limit","too many requests","quota exceeded","capacity","overloaded","no credentials","request not allowed"].some(a=>j.includes(a))?k:f.has(h)?{shouldFallback:!1,cooldownMs:0}:g.has(h)||h>=500||0===h?k||{shouldFallback:!0,cooldownMs:d.wf}:{shouldFallback:!1,cooldownMs:0}}function k(a,b,c=0){return j(a,b,c,h)}function l(a,b,c=0){return function(a,b,c=0){return j(a,b,c,g)}(a,b,c)}function m(a){if(!a)return"";let b=new Date(a).getTime()-Date.now();if(b<=0)return"reset after 0s";let c=Math.ceil(b/1e3),d=Math.floor(c/3600),e=Math.floor(c%3600/60),f=c%60,g=[];return d>0&&g.push(`${d}h`),e>0&&g.push(`${e}m`),(f>0||0===g.length)&&g.push(`${f}s`),`reset after ${g.join(" ")}`}let n="modelLock_",o=`${n}__all`;function p(a){return a?`${n}${a}`:o}function q(a,b){let c=a[p(b)]||a[o];return!!c&&new Date(c).getTime()>Date.now()}function r(a){if(!a)return null;let b=null,c=Date.now();for(let[d,e]of Object.entries(a)){if(!d.startsWith(n)||!e)continue;let a=new Date(e).getTime();a<=c||(!b||a<b)&&(b=a)}return b?new Date(b).toISOString():null}function s(a,b){return{[p(a)]:new Date(Date.now()+b).toISOString()}}},14724:(a,b,c)=>{c.d(b,{F:()=>g});let d=[{triggers:["mcp__exa__web_search_exa","mcp__exa__web_fetch_exa"],strip:["WebSearch","WebFetch","mcp__workspace__web_fetch"]},{triggers:["mcp__tavily__tavily_search","mcp__tavily__tavily_extract"],strip:["WebSearch","WebFetch","mcp__workspace__web_fetch"]},{triggers:[/^mcp__browsermcp__/],strip:[/^mcp__Claude_in_Chrome__/]}];function e(a){return a?.name||a?.function?.name||""}function f(a,b){return"string"==typeof b?a===b:b instanceof RegExp&&b.test(a)}function g(a){if(!Array.isArray(a)||0===a.length)return{tools:a,stripped:[]};let b=a.map(e),c=new Set;for(let a of d)if(b.some(b=>a.triggers.some(a=>f(b,a))))for(let d of b)a.strip.some(a=>f(d,a))&&c.add(d);return 0===c.size?{tools:a,stripped:[]}:{tools:a.filter(a=>!c.has(e(a))),stripped:Array.from(c)}}},20623:(a,b,c)=>{c.d(b,{$:()=>r,M:()=>q});var d=c(14170),e=c(10729),f=c(71857),g=c(59657),h=c(86171),i=c(47370);let j={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"},k=new TextEncoder;function l(a,b){try{return a.enqueue(k.encode(b)),!0}catch{return!1}}function m(a,b){"string"==typeof b&&b.length>0&&a.push(b)}function n(a){let b=[],c=[];return(a=>{if(!a||"object"!=typeof a)return;if(Array.isArray(a.choices))for(let d of a.choices)m(b,d?.message?.content),m(b,d?.delta?.content),m(b,d?.text),m(c,d?.message?.reasoning_content),m(c,d?.message?.thinking),m(c,d?.delta?.reasoning_content),m(c,d?.delta?.thinking);let d=Array.isArray(a.candidates)?a.candidates:Array.isArray(a.response?.candidates)?a.response.candidates:null;if(d)for(let a of d)for(let d of a?.content?.parts||[])m(d?.thought===!0?c:b,d?.text);if(Array.isArray(a.content))for(let d of a.content)"string"==typeof d?m(b,d):(m(d?.type==="thinking"?c:b,d?.text),m(d?.type==="thinking"?c:b,d?.thinking));if(m(b,a.delta?.text),m(c,a.delta?.thinking),m(b,a.message?.content),m(c,a.message?.thinking),m(b,a.response),m(c,a.thinking),m(b,a.content),m(b,a.text),m(b,a.output_text),m(b,a.data?.content),m(b,a.data?.text),Array.isArray(a.output)){for(let d of a.output)if("string"==typeof d?.content&&m("reasoning"===d.type?c:b,d.content),Array.isArray(d?.content))for(let a of d.content)m(a?.type==="reasoning"||a?.type==="summary_text"||a?.type==="reasoning_text"?c:b,a?.text||a?.output_text)}})(a),{content:b.join(""),thinking:c.join("")}}function o(a){let b=a?.body&&"object"==typeof a.body?a.body:a,c=b?.usage||b?.response?.usage||b?.usageMetadata||b?.response?.usageMetadata;if(!c||"object"!=typeof c)return null;if(void 0!==c.prompt_tokens||void 0!==c.completion_tokens||void 0!==c.total_tokens)return c;if(void 0!==c.input_tokens||void 0!==c.output_tokens){let a=c.input_tokens||0,b=c.output_tokens||0,d={prompt_tokens:a,completion_tokens:b,total_tokens:c.total_tokens||a+b},e=c.input_tokens_details?.cached_tokens;"number"==typeof e&&e>0&&(d.prompt_tokens_details={cached_tokens:e},d.cached_tokens=e);let f=c.output_tokens_details?.reasoning_tokens;return"number"==typeof f&&f>0&&(d.completion_tokens_details={reasoning_tokens:f},d.reasoning_tokens=f),d}return void 0!==c.promptTokenCount||void 0!==c.candidatesTokenCount||void 0!==c.totalTokenCount?{prompt_tokens:c.promptTokenCount||0,completion_tokens:c.candidatesTokenCount||0,total_tokens:c.totalTokenCount||(c.promptTokenCount||0)+(c.candidatesTokenCount||0)}:null}function p({provider:a,targetFormat:b,sourceFormat:c,userAgent:e}){let f=(e||"").toLowerCase(),g=f.includes("droid")||f.includes("codex-cli");return"codex"!==a||b!==d.h.OPENAI_RESPONSES||g?c:c===d.h.OPENAI_RESPONSES?d.h.OPENAI_RESPONSES:c===d.h.CLAUDE?d.h.CLAUDE:c===d.h.ANTIGRAVITY||c===d.h.GEMINI||c===d.h.GEMINI_CLI?d.h.ANTIGRAVITY:d.h.OPENAI}function q({providerResponse:a,provider:b,model:c,sourceFormat:k,targetFormat:m,userAgent:r,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,connectionId:x,apiKey:y,clientRawRequest:z,onRequestSuccess:A,reqLogger:B,toolNameMap:C,streamController:D,onStreamComplete:E,requestContext:F,requestPolicyMeta:G,rtkStats:H=null}){if(!function({providerResponse:a,provider:b,targetFormat:c}){let e;return e=a?.headers?.get?.("content-type")||"",!!(/text\/event-stream/i.test(e)||"codex"===b&&c===d.h.OPENAI_RESPONSES&&a?.body)}({providerResponse:a,provider:b,targetFormat:m}))return function({providerResponse:a,provider:b,model:c,sourceFormat:g,targetFormat:k,userAgent:m,body:q,stream:r,translatedBody:s,finalBody:t,requestStartTime:u,connectionId:v,apiKey:w,clientRawRequest:x,onRequestSuccess:y,reqLogger:z,toolNameMap:A,requestContext:B,requestPolicyMeta:C,rtkStats:D=null,providerResponseInfo:E=null}){y&&y();let F=B?.requestId?`${B.requestId}:stream`:`${Date.now()}-${Math.random().toString(36).slice(2,11)}`,G=new ReadableStream({async start(j){let y=Date.now(),G="",H=null,I="",J="",K=null,L="",M=null,N=a?.status||E?.status||200,O=a?.statusText||E?.statusText||"OK",P=function(a){let b={};try{a?.forEach?.((a,c)=>{b[c]=a})}catch{}return b}(a?.headers||E?.headers);try{G=await a.text();let E=function({rawText:a,provider:b,model:c,sourceFormat:g,targetFormat:h,userAgent:i,toolNameMap:j,reqLogger:k}){if(!("string"==typeof a&&a.trim()&&/^\s*(event|data):/m.test(a)&&/^\s*data:/m.test(a)))return null;let l=function(a){let b=[],c=null,d=[],e=()=>{if(0===d.length){c=null;return}let a=d.join("\n").trim();if(d=[],!a){c=null;return}if("[DONE]"===a){b.push({done:!0}),c=null;return}try{let d=JSON.parse(a);c?b.push({event:c,type:d?.type||c,data:d}):b.push(d)}catch{b.push(c?{event:c,type:c,data:a}:{data:a})}c=null};for(let b of a.split(/\r?\n/)){let a=b.trimEnd();if(""===a){e();continue}if(!a.startsWith(":")){if(a.startsWith("event:")){c=a.slice(6).trim();continue}a.startsWith("data:")&&d.push(a.slice(5).trimStart())}}return e(),b}(a);if(!l.length)return null;let m=p({provider:b,targetFormat:h,sourceFormat:g,userAgent:i});if(m===h)return{ssePayload:a.endsWith("\n")?a:`${a}
|
|
1
|
+
"use strict";exports.id=8895,exports.ids=[8895],exports.modules={324:(a,b,c)=>{c.d(b,{J:()=>e,Q:()=>f});let d={claude:["claude","anthropic"],"gemini-cli":["gemini-cli"],antigravity:["antigravity"],codex:["codex"]};function e(a={},b={}){let c=(a["user-agent"]||"").toLowerCase(),d=(a["x-app"]||"").toLowerCase(),f=(a["openai-intent"]||"").toLowerCase(),g=(a["x-initiator"]||a["X-Initiator"]||"").toLowerCase();return"antigravity"===b.userAgent?"antigravity":c.includes("githubcopilotchat")||"conversation-panel"===f||"user"===g?"github-copilot":c.includes("claude-cli")||c.includes("claude-code")||"cli"===d?"claude":c.includes("gemini-cli")?"gemini-cli":c.includes("codex-cli")?"codex":c.includes("deepseek-tui")?"deepseek-tui":null}function f(a,b){if(!a)return!1;let c=d[a];if(!c)return!1;let e=b.startsWith("anthropic-compatible")?"anthropic":b;return c.includes(e)}},5016:(a,b,c)=>{c.d(b,{N:()=>q});var d=c(14170),e=c(33110),f=c(39551),g=c(73483),h=c(43659),i=c(41004),j=c(81626),k=c(86171),l=c(47370),m=c(35901),n=c(55399),o=c(9902);function p({provider:a,model:b,connectionId:c,apiKey:d,endpoint:e,requestContext:f,body:g,stream:h,translatedBody:j,finalBody:n,requestStartTime:o,message:q,errorCode:r,errorType:s,rtkStats:t=null}){let u=Date.now()-o;(0,l.E5)({model:b,provider:a,connectionId:c,status:`FAILED ${i.gx.BAD_GATEWAY}`}).catch(()=>{}),(0,l.ox)((0,k.$R)({provider:a,model:b,connectionId:c,latency:{ttft:0,total:u},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,k.Fo)(g,h),providerRequest:n||j||null,response:{error:q,status:i.gx.BAD_GATEWAY,thinking:null},status:"error",rtkStats:t},{endpoint:e||null})).catch(()=>{}),(0,m.jk)({...f||{},requestContext:f,provider:a,model:b,connectionId:c,apiKey:d,endpoint:e,gatewayStatusCode:i.gx.BAD_GATEWAY,errorSource:"provider_response_parse",errorType:s,errorCode:r,errorMessageShort:q,latencyMs:u}).catch(()=>{}),(0,k.sx)({provider:a,model:b,connectionId:c,apiKey:d,endpoint:e,statusCode:i.gx.BAD_GATEWAY,errorCode:r,errorType:s,errorMessage:q,latencyMs:u,requestContext:f||{},meta:{errorSource:"provider_response_parse"},rtkStats:t})}async function q({providerResponse:a,provider:b,model:c,sourceFormat:m,targetFormat:r,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,connectionId:x,apiKey:y,clientRawRequest:z,onRequestSuccess:A,reqLogger:B,toolNameMap:C,trackDone:D,appendLog:E,requestContext:F,requestPolicyMeta:G,rtkStats:H=null}){let I;if(D(),(a.headers.get("content-type")||"").includes("text/event-stream")){let d=await a.text(),e=(0,j.F)(d,c);if(!e){let a="Invalid SSE response for non-streaming request";return E({status:`FAILED ${i.gx.BAD_GATEWAY}`}),p({provider:b,model:c,connectionId:x,apiKey:y,endpoint:z?.endpoint,requestContext:F,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,message:a,errorCode:"invalid_sse",errorType:"invalid_sse",rtkStats:H}),(0,h.A1)(i.gx.BAD_GATEWAY,a,void 0,m)}I=e}else try{I=await a.json()}catch(d){let a=`Invalid JSON response from ${b}`;return E({status:`FAILED ${i.gx.BAD_GATEWAY}`}),console.error(`[ChatCore] Failed to parse JSON from ${b}:`,d.message),p({provider:b,model:c,connectionId:x,apiKey:y,endpoint:z?.endpoint,requestContext:F,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,message:a,errorCode:"invalid_json",errorType:"invalid_json",rtkStats:H}),(0,h.A1)(i.gx.BAD_GATEWAY,a,void 0,m)}B.logProviderResponse(a.status,a.statusText,a.headers,I),A&&await A(),I=(0,n.kR)(I,C);let J=(0,k.MK)(I),K=Date.now()-w,L=(0,e.nZ)(r,m)?function(a,b,c){if(b===c||b===d.h.OPENAI)return a;if(b===d.h.GEMINI||b===d.h.ANTIGRAVITY||b===d.h.GEMINI_CLI||b===d.h.VERTEX){let b=a.response||a;if(!b?.candidates?.[0])return a;let c=b.candidates[0],d=c.content,e=b.usageMetadata||a.usageMetadata,f="",g="",h=[];if(d?.parts)for(let a of d.parts)!0===a.thought&&a.text?g+=a.text:void 0!==a.text&&(f+=a.text),a.functionCall&&h.push({id:`call_${a.functionCall.name}_${Date.now()}_${h.length}`,type:"function",function:{name:a.functionCall.name,arguments:JSON.stringify(a.functionCall.args||{})}});let i={role:"assistant"};f&&(i.content=f),g&&(i.reasoning_content=g),h.length>0&&(i.tool_calls=h),i.content||i.tool_calls||(i.content="");let j=(c.finishReason||"stop").toLowerCase();"stop"===j&&h.length>0&&(j="tool_calls");let k={id:`chatcmpl-${b.responseId||Date.now()}`,object:"chat.completion",created:Math.floor(new Date(b.createTime||Date.now()).getTime()/1e3),model:b.modelVersion||"gemini",choices:[{index:0,message:i,finish_reason:j}]};return e&&(k.usage={prompt_tokens:(e.promptTokenCount||0)+(e.thoughtsTokenCount||0),completion_tokens:e.candidatesTokenCount||0,total_tokens:e.totalTokenCount||0},e.thoughtsTokenCount>0&&(k.usage.completion_tokens_details={reasoning_tokens:e.thoughtsTokenCount})),k}if(b===d.h.CLAUDE){if(!a.content)return a;let b="",c="",d=[];for(let e of a.content)"text"===e.type?b+=(e.text??"").replace(/^\s*```\s*json\s*\n?/i,"").replace(/\n?\s*```\s*$/i,""):"thinking"===e.type?c+=e.thinking||"":"tool_use"===e.type&&d.push({id:e.id,type:"function",function:{name:e.name,arguments:JSON.stringify(e.input||{})}});let e={role:"assistant"};b&&(e.content=b),c&&(e.reasoning_content=c),d.length>0&&(e.tool_calls=d),e.content||e.tool_calls||(e.content="");let f=a.stop_reason||"stop";"end_turn"===f&&(f="stop"),"tool_use"===f&&(f="tool_calls");let g={id:`chatcmpl-${a.id||Date.now()}`,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a.model||"claude",choices:[{index:0,message:e,finish_reason:f}]};return a.usage&&(g.usage={prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,total_tokens:(a.usage.input_tokens||0)+(a.usage.output_tokens||0)}),g}return b===d.h.OLLAMA?(0,f.ollamaBodyToOpenAI)(a):a}(I,r,m):I,M=(0,k.YZ)({usage:J||(0,k.MK)(L),body:s,responseBody:I,translatedResponse:L,format:m});if(E({tokens:M,status:"200 OK"}),(0,k.qr)({provider:b,model:c,tokens:M,connectionId:x,apiKey:y,endpoint:z?.endpoint,status:"ok",statusCode:200,latencyMs:K,ttftMs:K,isStreaming:!1,requestContext:F||{},requestPolicyMeta:G,rtkStats:H,meta:M?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:M.usageEstimatedReason}:{}}),L?.choices?.[0]){let a=L.choices[0],b=a.message;Array.isArray(b?.tool_calls)&&b.tool_calls.length>0&&"tool_calls"!==a.finish_reason&&(a.finish_reason="tool_calls")}let N=Array.isArray(L?.choices);if(N&&(L.object||(L.object="chat.completion"),L.created||(L.created=Math.floor(Date.now()/1e3))),delete L.prompt_filter_results,L?.choices)for(let a of L.choices)delete a.content_filter_results;L?.usage&&(L.usage=(0,g.WL)((0,g.O9)(L.usage),m));let O=L?.choices?.[0]?.message?.reasoning_content||L?.reasoning_content||null,P=N&&m!==d.h.OPENAI,Q=L;if(P&&(m===d.h.CLAUDE?Q=(0,o.F)(L,M):m===d.h.OPENAI_RESPONSES&&(Q=(0,o.P)(L,M))),L?.choices)for(let a of L.choices)a?.message&&delete a.message.reasoning_content;return B.logConvertedResponse(Q),(0,l.ox)((0,k.$R)({provider:b,model:c,connectionId:x,latency:{ttft:K,total:K},tokens:M||{prompt_tokens:0,completion_tokens:0},request:(0,k.Fo)(s,t),providerRequest:v||u||null,providerResponse:I||null,response:{content:L?.choices?.[0]?.message?.content||L?.content||null,thinking:O,finish_reason:L?.choices?.[0]?.finish_reason||"unknown"},status:"success",rtkStats:H},{endpoint:z?.endpoint||null,requestId:F?.requestId})).catch(a=>{console.error("[RequestDetail] Failed to save:",a.message)}),{success:!0,response:new Response(JSON.stringify(Q),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}},9902:(a,b,c)=>{function d(a={}){let b="";if("string"==typeof a.content)b=a.content;else if(Array.isArray(a.content))for(let c of a.content)"string"==typeof c?b+=c:"string"==typeof c?.text&&(b+=c.text);return{text:b,toolCalls:Array.isArray(a.tool_calls)?a.tool_calls:[]}}function e(a,b){let c=a?.choices?.[0]||{},e=c.message||{},{text:f,toolCalls:g}=d(e),h=[];for(let a of(e.reasoning_content&&h.push({type:"thinking",thinking:e.reasoning_content}),f&&h.push({type:"text",text:f}),g))h.push({type:"tool_use",id:a.id,name:a.function?.name||"",input:function(a){if(!a)return{};try{let b=JSON.parse(a);return b&&"object"==typeof b?b:{}}catch{return{}}}(a.function?.arguments)});0===h.length&&h.push({type:"text",text:""});let i="end_turn";"length"===c.finish_reason?i="max_tokens":("tool_calls"===c.finish_reason||g.length>0)&&(i="tool_use");let j=b?.input_tokens??b?.prompt_tokens??0,k=b?.output_tokens??b?.completion_tokens??0,l={id:a?.id?`msg_${String(a.id).replace(/^chatcmpl-/,"")}`:`msg_${Date.now()}`,type:"message",role:"assistant",model:a?.model||"unknown",content:h,stop_reason:i,stop_sequence:null,usage:{input_tokens:j,output_tokens:k}},m=b?.cache_read_input_tokens,n=b?.cache_creation_input_tokens;return m>0&&(l.usage.cache_read_input_tokens=m),n>0&&(l.usage.cache_creation_input_tokens=n),l}function f(a,b){let c=(a?.choices?.[0]||{}).message||{},{text:e,toolCalls:f}=d(c),g=a?.id||`resp_${Date.now()}`,h=[];for(let a of(c.reasoning_content&&h.push({id:`rs_${g}`,type:"reasoning",summary:[{type:"summary_text",text:c.reasoning_content}]}),e&&h.push({id:`msg_${g}`,type:"message",role:"assistant",content:[{type:"output_text",annotations:[],logprobs:[],text:e}]}),f))h.push({id:`fc_${a.id||g}`,type:"function_call",call_id:a.id,name:a.function?.name||"",arguments:a.function?.arguments||"{}"});let i=b?.input_tokens??b?.prompt_tokens??0,j=b?.output_tokens??b?.completion_tokens??0,k={id:a?.id?`resp_${a.id}`:g,object:"response",created_at:a?.created||Math.floor(Date.now()/1e3),status:"completed",background:!1,error:null,model:a?.model||"unknown",output:h,usage:{input_tokens:i,output_tokens:j,total_tokens:i+j}},l=b?.cache_read_input_tokens||b?.cached_tokens;return l>0&&(k.usage.input_tokens_details={cached_tokens:l}),k}c.d(b,{F:()=>e,P:()=>f})},12557:(a,b,c)=>{c.d(b,{Bl:()=>q,L5:()=>k,Qo:()=>m,S5:()=>s,hk:()=>l,kJ:()=>r});var d=c(3662);function e(a=0){let b=Math.max(0,a-1);return Math.min(d.EQ.base*Math.pow(2,b),d.EQ.max)}let f=new Set([400,406,409,413,415,422]),g=new Set([401,402,403,404,408,425,429,500,502,503,504]),h=new Set([401,402,403,404,408,425,429,500,502,503,504]),i=["improperly formed request","invalid request","validation error","context length","maximum context","context window","too many tokens","request too large","json schema"];function j(a,b,c,g){let h=Number(a)||0,j=b?("string"==typeof b?b:JSON.stringify(b)).toLowerCase():"";if(i.some(a=>j.includes(a)))return{shouldFallback:!1,cooldownMs:0};let k=function(a,b,c){for(let f of d.t2){if(f.text&&a&&a.includes(f.text)){if("improperly formed request"===f.text)return null;if(f.backoff){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:e(a),newBackoffLevel:a}}return{shouldFallback:!0,cooldownMs:f.cooldownMs}}if(f.status&&f.status===b){if(f.backoff){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:e(a),newBackoffLevel:a}}return{shouldFallback:!0,cooldownMs:f.cooldownMs}}}return null}(j,h,c);return k&&!f.has(h)||k&&["rate limit","too many requests","quota exceeded","capacity","overloaded","no credentials","request not allowed"].some(a=>j.includes(a))?k:f.has(h)?{shouldFallback:!1,cooldownMs:0}:g.has(h)||h>=500||0===h?k||{shouldFallback:!0,cooldownMs:d.wf}:{shouldFallback:!1,cooldownMs:0}}function k(a,b,c=0){return j(a,b,c,h)}function l(a,b,c=0){return function(a,b,c=0){return j(a,b,c,g)}(a,b,c)}function m(a){if(!a)return"";let b=new Date(a).getTime()-Date.now();if(b<=0)return"reset after 0s";let c=Math.ceil(b/1e3),d=Math.floor(c/3600),e=Math.floor(c%3600/60),f=c%60,g=[];return d>0&&g.push(`${d}h`),e>0&&g.push(`${e}m`),(f>0||0===g.length)&&g.push(`${f}s`),`reset after ${g.join(" ")}`}let n="modelLock_",o=`${n}__all`;function p(a){return a?`${n}${a}`:o}function q(a,b){let c=a[p(b)]||a[o];return!!c&&new Date(c).getTime()>Date.now()}function r(a){if(!a)return null;let b=null,c=Date.now();for(let[d,e]of Object.entries(a)){if(!d.startsWith(n)||!e)continue;let a=new Date(e).getTime();a<=c||(!b||a<b)&&(b=a)}return b?new Date(b).toISOString():null}function s(a,b){return{[p(a)]:new Date(Date.now()+b).toISOString()}}},14724:(a,b,c)=>{c.d(b,{F:()=>g});let d=[{triggers:["mcp__exa__web_search_exa","mcp__exa__web_fetch_exa"],strip:["WebSearch","WebFetch","mcp__workspace__web_fetch"]},{triggers:["mcp__tavily__tavily_search","mcp__tavily__tavily_extract"],strip:["WebSearch","WebFetch","mcp__workspace__web_fetch"]},{triggers:[/^mcp__browsermcp__/],strip:[/^mcp__Claude_in_Chrome__/]}];function e(a){return a?.name||a?.function?.name||""}function f(a,b){return"string"==typeof b?a===b:b instanceof RegExp&&b.test(a)}function g(a){if(!Array.isArray(a)||0===a.length)return{tools:a,stripped:[]};let b=a.map(e),c=new Set;for(let a of d)if(b.some(b=>a.triggers.some(a=>f(b,a))))for(let d of b)a.strip.some(a=>f(d,a))&&c.add(d);return 0===c.size?{tools:a,stripped:[]}:{tools:a.filter(a=>!c.has(e(a))),stripped:Array.from(c)}}},20623:(a,b,c)=>{c.d(b,{$:()=>r,M:()=>q});var d=c(14170),e=c(33110),f=c(71857),g=c(59657),h=c(86171),i=c(47370);let j={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"},k=new TextEncoder;function l(a,b){try{return a.enqueue(k.encode(b)),!0}catch{return!1}}function m(a,b){"string"==typeof b&&b.length>0&&a.push(b)}function n(a){let b=[],c=[];return(a=>{if(!a||"object"!=typeof a)return;if(Array.isArray(a.choices))for(let d of a.choices)m(b,d?.message?.content),m(b,d?.delta?.content),m(b,d?.text),m(c,d?.message?.reasoning_content),m(c,d?.message?.thinking),m(c,d?.delta?.reasoning_content),m(c,d?.delta?.thinking);let d=Array.isArray(a.candidates)?a.candidates:Array.isArray(a.response?.candidates)?a.response.candidates:null;if(d)for(let a of d)for(let d of a?.content?.parts||[])m(d?.thought===!0?c:b,d?.text);if(Array.isArray(a.content))for(let d of a.content)"string"==typeof d?m(b,d):(m(d?.type==="thinking"?c:b,d?.text),m(d?.type==="thinking"?c:b,d?.thinking));if(m(b,a.delta?.text),m(c,a.delta?.thinking),m(b,a.message?.content),m(c,a.message?.thinking),m(b,a.response),m(c,a.thinking),m(b,a.content),m(b,a.text),m(b,a.output_text),m(b,a.data?.content),m(b,a.data?.text),Array.isArray(a.output)){for(let d of a.output)if("string"==typeof d?.content&&m("reasoning"===d.type?c:b,d.content),Array.isArray(d?.content))for(let a of d.content)m(a?.type==="reasoning"||a?.type==="summary_text"||a?.type==="reasoning_text"?c:b,a?.text||a?.output_text)}})(a),{content:b.join(""),thinking:c.join("")}}function o(a){let b=a?.body&&"object"==typeof a.body?a.body:a,c=b?.usage||b?.response?.usage||b?.usageMetadata||b?.response?.usageMetadata;if(!c||"object"!=typeof c)return null;if(void 0!==c.prompt_tokens||void 0!==c.completion_tokens||void 0!==c.total_tokens)return c;if(void 0!==c.input_tokens||void 0!==c.output_tokens){let a=c.input_tokens||0,b=c.output_tokens||0,d={prompt_tokens:a,completion_tokens:b,total_tokens:c.total_tokens||a+b},e=c.input_tokens_details?.cached_tokens;"number"==typeof e&&e>0&&(d.prompt_tokens_details={cached_tokens:e},d.cached_tokens=e);let f=c.output_tokens_details?.reasoning_tokens;return"number"==typeof f&&f>0&&(d.completion_tokens_details={reasoning_tokens:f},d.reasoning_tokens=f),d}return void 0!==c.promptTokenCount||void 0!==c.candidatesTokenCount||void 0!==c.totalTokenCount?{prompt_tokens:c.promptTokenCount||0,completion_tokens:c.candidatesTokenCount||0,total_tokens:c.totalTokenCount||(c.promptTokenCount||0)+(c.candidatesTokenCount||0)}:null}function p({provider:a,targetFormat:b,sourceFormat:c,userAgent:e}){let f=(e||"").toLowerCase(),g=f.includes("droid")||f.includes("codex-cli");return"codex"!==a||b!==d.h.OPENAI_RESPONSES||g?c:c===d.h.OPENAI_RESPONSES?d.h.OPENAI_RESPONSES:c===d.h.CLAUDE?d.h.CLAUDE:c===d.h.ANTIGRAVITY||c===d.h.GEMINI||c===d.h.GEMINI_CLI?d.h.ANTIGRAVITY:d.h.OPENAI}function q({providerResponse:a,provider:b,model:c,sourceFormat:k,targetFormat:m,userAgent:r,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,connectionId:x,apiKey:y,clientRawRequest:z,onRequestSuccess:A,reqLogger:B,toolNameMap:C,streamController:D,onStreamComplete:E,requestContext:F,requestPolicyMeta:G,rtkStats:H=null}){if(!function({providerResponse:a,provider:b,targetFormat:c}){let e;return e=a?.headers?.get?.("content-type")||"",!!(/text\/event-stream/i.test(e)||"codex"===b&&c===d.h.OPENAI_RESPONSES&&a?.body)}({providerResponse:a,provider:b,targetFormat:m}))return function({providerResponse:a,provider:b,model:c,sourceFormat:g,targetFormat:k,userAgent:m,body:q,stream:r,translatedBody:s,finalBody:t,requestStartTime:u,connectionId:v,apiKey:w,clientRawRequest:x,onRequestSuccess:y,reqLogger:z,toolNameMap:A,requestContext:B,requestPolicyMeta:C,rtkStats:D=null,providerResponseInfo:E=null}){y&&y();let F=B?.requestId?`${B.requestId}:stream`:`${Date.now()}-${Math.random().toString(36).slice(2,11)}`,G=new ReadableStream({async start(j){let y=Date.now(),G="",H=null,I="",J="",K=null,L="",M=null,N=a?.status||E?.status||200,O=a?.statusText||E?.statusText||"OK",P=function(a){let b={};try{a?.forEach?.((a,c)=>{b[c]=a})}catch{}return b}(a?.headers||E?.headers);try{G=await a.text();let E=function({rawText:a,provider:b,model:c,sourceFormat:g,targetFormat:h,userAgent:i,toolNameMap:j,reqLogger:k}){if(!("string"==typeof a&&a.trim()&&/^\s*(event|data):/m.test(a)&&/^\s*data:/m.test(a)))return null;let l=function(a){let b=[],c=null,d=[],e=()=>{if(0===d.length){c=null;return}let a=d.join("\n").trim();if(d=[],!a){c=null;return}if("[DONE]"===a){b.push({done:!0}),c=null;return}try{let d=JSON.parse(a);c?b.push({event:c,type:d?.type||c,data:d}):b.push(d)}catch{b.push(c?{event:c,type:c,data:a}:{data:a})}c=null};for(let b of a.split(/\r?\n/)){let a=b.trimEnd();if(""===a){e();continue}if(!a.startsWith(":")){if(a.startsWith("event:")){c=a.slice(6).trim();continue}a.startsWith("data:")&&d.push(a.slice(5).trimStart())}}return e(),b}(a);if(!l.length)return null;let m=p({provider:b,targetFormat:h,sourceFormat:g,userAgent:i});if(m===h)return{ssePayload:a.endsWith("\n")?a:`${a}
|
|
2
2
|
|
|
3
3
|
`,usage:null,content:"",thinking:"",parserFormat:"raw_sse_passthrough"};let q={...(0,e.Ws)(m),provider:b,toolNameMap:j,model:c},r="",s="",t="",u=null,v=!1;for(let a of l){var w;if(!a||a.done)continue;let b=(w=a)&&!w.done&&"object"==typeof w?w.data&&"object"==typeof w.data&&!Array.isArray(w.data)?!w.data.type&&(w.type||w.event)?{...w.data,type:w.type||w.event}:w.data:w:w,c=n(b);c.content&&(s+=c.content),c.thinking&&(t+=c.thinking),u=o(b)||u;let g=(0,e.Y8)(h,m,b,q);if(g?._openaiIntermediate)for(let a of g._openaiIntermediate)k?.appendOpenAIChunk?.((0,f.v8)(a,d.h.OPENAI));if(g?.length)for(let a of g){let b=(0,f.v8)(a,m);k?.appendConvertedChunk?.(b),r+=b,v=!0}}let x=(0,e.Y8)(h,m,null,q);if(x?._openaiIntermediate)for(let a of x._openaiIntermediate)k?.appendOpenAIChunk?.((0,f.v8)(a,d.h.OPENAI));if(x?.length)for(let a of x){let b=(0,f.v8)(a,m);k?.appendConvertedChunk?.(b),r+=b,v=!0}return v?(q?.usage&&"object"==typeof q.usage&&(u=q.usage),{ssePayload:r+="data: [DONE]\n\n",usage:u,content:s,thinking:t,parserFormat:"raw_sse_translated"}):null}({rawText:G,provider:b,model:c,sourceFormat:g,targetFormat:k,userAgent:m,toolNameMap:A,reqLogger:z});H=function(a){if("string"!=typeof a||!a.trim())return null;try{return JSON.parse(a)}catch{return null}}(G);let Q=E?{content:E.content||"",thinking:E.thinking||""}:n(H||{text:G});I=Q.content||"",J=Q.thinking||"",K=E?.usage||o(H)||null;let R=(0,h.YZ)({usage:K,body:q,contentText:`${I||""}${J||""}`,format:g});L=I||(G?"[Non-SSE response captured, text extraction failed]":"[No response content captured]"),M=J||null,z?.logProviderResponse?.(N,O,P,{streaming:!1,non_sse_in_streaming_path:!0,content:L,thinking:M,usage:R||K||null,provider_body:H??G,parser:{format:E?.parserFormat||(H?"json":"text"),formats:E?[E.parserFormat]:H?["json"]:["text"],content_found:!!I,thinking_found:!!J,usage_found:!!(R||K)}});let S={ttft:y-u,total:Date.now()-u};(0,i.ox)((0,h.$R)({provider:b,model:c,connectionId:v,latency:S,tokens:R||{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(q,r),providerRequest:t||s||null,providerResponse:H??G,response:{content:L,thinking:M,type:"non_sse_streaming_fallback"},status:"success",rtkStats:D},{id:F,requestId:B?.requestId,endpoint:x?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to save non-SSE streaming response:",a.message)}),(0,h.qr)({provider:b,model:c,tokens:R,connectionId:v,apiKey:w,endpoint:x?.endpoint,label:"STREAM NON-SSE USAGE",status:"ok",statusCode:N,latencyMs:S.total,ttftMs:S.ttft,isStreaming:!0,requestContext:B||{},requestPolicyMeta:C,rtkStats:D,meta:R?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:R.usageEstimatedReason,nonSseInStreamingPath:!0}:{nonSseInStreamingPath:!0}});let T=E?.ssePayload||function({sourceFormat:a,model:b,content:c,thinking:e,usage:f}){return a===d.h.CLAUDE?function({model:a,content:b,thinking:c,usage:d}){let e=`msg_${Date.now().toString(36)}`,f=0,g=[],h=(a,b)=>{g.push(`event: ${a}
|
|
4
4
|
data: ${JSON.stringify({type:a,...b})}
|
|
@@ -16,12 +16,12 @@ data: [DONE]
|
|
|
16
16
|
|
|
17
17
|
data: [DONE]
|
|
18
18
|
|
|
19
|
-
`}({sourceFormat:g,message:a}))}finally{try{j.close()}catch{}}}});return(0,i.ox)((0,h.$R)({provider:b,model:c,connectionId:v,latency:{ttft:0,total:Date.now()-u},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(q,r),providerRequest:t||s||null,providerResponse:"[Non-SSE response in streaming path - capture pending]",response:{content:"[Non-SSE response in streaming path...]",thinking:null,type:"non_sse_streaming_pending"},status:"success",rtkStats:D},{id:F,requestId:B?.requestId,endpoint:x?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to save non-SSE streaming request:",a.message)}),{success:!0,response:new Response(G,{headers:j})}}({providerResponse:a,provider:b,model:c,sourceFormat:k,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,connectionId:x,apiKey:y,clientRawRequest:z,onRequestSuccess:A,reqLogger:B,toolNameMap:C,targetFormat:m,userAgent:r,requestContext:F,requestPolicyMeta:G,rtkStats:H,providerResponseInfo:{status:a?.status,statusText:a?.statusText,headers:a?.headers}});A&&A();let I=function({provider:a,sourceFormat:b,targetFormat:c,userAgent:g,reqLogger:h,toolNameMap:i,model:j,connectionId:k,body:l,onStreamComplete:m,apiKey:n}){let o=p({provider:a,targetFormat:c,sourceFormat:b,userAgent:g});return"codex"===a&&c===d.h.OPENAI_RESPONSES&&o!==b?(0,f.i5)(d.h.OPENAI_RESPONSES,o,a,h,i,j,k,l,m,n):(0,e.nZ)(c,b)?(0,f.i5)(c,b,a,h,i,j,k,l,m,n):(0,f.l2)(a,h,j,k,l,m,n)}({provider:b,sourceFormat:k,targetFormat:m,userAgent:r,reqLogger:B,toolNameMap:C,model:c,connectionId:x,body:s,onStreamComplete:E,apiKey:y}),J=(0,g.Jb)(a,I,D),K=F?.requestId?`${F.requestId}:stream`:`${Date.now()}-${Math.random().toString(36).slice(2,11)}`;return(0,i.ox)((0,h.$R)({provider:b,model:c,connectionId:x,latency:{ttft:0,total:Date.now()-w},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(s,t),providerRequest:v||u||null,providerResponse:"[Streaming - raw response not captured]",response:{content:"[Streaming in progress...]",thinking:null,type:"streaming"},status:"success",rtkStats:H},{id:K,requestId:F?.requestId,endpoint:z?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to save streaming request:",a.message)}),{success:!0,response:new Response(J,{headers:j})}}function r({provider:a,model:b,connectionId:c,apiKey:d,requestStartTime:e,body:f,stream:g,finalBody:j,translatedBody:k,clientRawRequest:l,requestContext:m,requestPolicyMeta:n,rtkStats:o=null,sourceFormat:p,reqLogger:q=null,providerResponseInfo:s=null}){let t=m?.requestId?`${m.requestId}:stream`:`${Date.now()}-${Math.random().toString(36).slice(2,11)}`;return{onStreamComplete:(r,u,v)=>{let w,x,y={ttft:v?v-e:Date.now()-e,total:Date.now()-e},z=r?.providerStream||null,A=r?.content||z?.content||"",B=r?.thinking||z?.thinking||"",C=A||(w=!!z?.raw_sse||Array.isArray(z?.events)&&z.events.length>0,x=z?.raw_disabled===!0||z?.events_disabled===!0,w?"[Streaming response captured, text extraction failed]":x?"[Response text extraction failed; raw stream capture disabled]":"[No response content captured]"),D=B||null,E=r?.streamError||null,F=E?.message||(E?JSON.stringify(E):null),G=(0,h.YZ)({usage:u,body:f,contentText:`${A||""}${B||""}`,format:p});q?.logProviderResponse?.(s?.status||200,s?.statusText||"OK",s?.headers||{},{streaming:!0,reconstructed:!0,content:C,thinking:D,usage:G||u||null,raw_sse:z?.raw_sse||"",raw_disabled:z?.raw_disabled||!1,raw_truncated:z?.raw_truncated||!1,events:z?.events||[],events_disabled:z?.events_disabled||!1,events_truncated:z?.events_truncated||!1,finish_reason:z?.finish_reason||null,finish_reason_raw:z?.finish_reason_raw||null,finish_reason_provider:z?.finish_reason_provider||null,parser:z?.parser||{format:"unknown",formats:[],content_found:!!r?.content,thinking_found:!!r?.thinking,usage_found:!!(G||u)}}),(0,i.ox)((0,h.$R)({provider:a,model:b,connectionId:c,latency:y,tokens:G||{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(f,g),providerRequest:j||k||null,providerResponse:C,response:E?{content:C,thinking:D,type:"streaming",error:F}:{content:C,thinking:D,type:"streaming"},status:E?"error":"success",rtkStats:o},{id:t,requestId:m?.requestId,endpoint:l?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to update streaming content:",a.message)}),(0,h.qr)({provider:a,model:b,tokens:G,connectionId:c,apiKey:d,endpoint:l?.endpoint,label:"STREAM USAGE",status:E?"error":"ok",statusCode:E?502:200,latencyMs:y.total,ttftMs:y.ttft,isStreaming:!0,requestContext:m||{},requestPolicyMeta:n,rtkStats:o,meta:G?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:G.usageEstimatedReason}:{}})},streamDetailId:t}}},27349:(a,b,c)=>{c.d(b,{c:()=>i});var d=c(57647),e=c(
|
|
19
|
+
`}({sourceFormat:g,message:a}))}finally{try{j.close()}catch{}}}});return(0,i.ox)((0,h.$R)({provider:b,model:c,connectionId:v,latency:{ttft:0,total:Date.now()-u},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(q,r),providerRequest:t||s||null,providerResponse:"[Non-SSE response in streaming path - capture pending]",response:{content:"[Non-SSE response in streaming path...]",thinking:null,type:"non_sse_streaming_pending"},status:"success",rtkStats:D},{id:F,requestId:B?.requestId,endpoint:x?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to save non-SSE streaming request:",a.message)}),{success:!0,response:new Response(G,{headers:j})}}({providerResponse:a,provider:b,model:c,sourceFormat:k,body:s,stream:t,translatedBody:u,finalBody:v,requestStartTime:w,connectionId:x,apiKey:y,clientRawRequest:z,onRequestSuccess:A,reqLogger:B,toolNameMap:C,targetFormat:m,userAgent:r,requestContext:F,requestPolicyMeta:G,rtkStats:H,providerResponseInfo:{status:a?.status,statusText:a?.statusText,headers:a?.headers}});A&&A();let I=function({provider:a,sourceFormat:b,targetFormat:c,userAgent:g,reqLogger:h,toolNameMap:i,model:j,connectionId:k,body:l,onStreamComplete:m,apiKey:n}){let o=p({provider:a,targetFormat:c,sourceFormat:b,userAgent:g});return"codex"===a&&c===d.h.OPENAI_RESPONSES&&o!==b?(0,f.i5)(d.h.OPENAI_RESPONSES,o,a,h,i,j,k,l,m,n):(0,e.nZ)(c,b)?(0,f.i5)(c,b,a,h,i,j,k,l,m,n):(0,f.l2)(a,h,j,k,l,m,n)}({provider:b,sourceFormat:k,targetFormat:m,userAgent:r,reqLogger:B,toolNameMap:C,model:c,connectionId:x,body:s,onStreamComplete:E,apiKey:y}),J=(0,g.Jb)(a,I,D),K=F?.requestId?`${F.requestId}:stream`:`${Date.now()}-${Math.random().toString(36).slice(2,11)}`;return(0,i.ox)((0,h.$R)({provider:b,model:c,connectionId:x,latency:{ttft:0,total:Date.now()-w},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(s,t),providerRequest:v||u||null,providerResponse:"[Streaming - raw response not captured]",response:{content:"[Streaming in progress...]",thinking:null,type:"streaming"},status:"success",rtkStats:H},{id:K,requestId:F?.requestId,endpoint:z?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to save streaming request:",a.message)}),{success:!0,response:new Response(J,{headers:j})}}function r({provider:a,model:b,connectionId:c,apiKey:d,requestStartTime:e,body:f,stream:g,finalBody:j,translatedBody:k,clientRawRequest:l,requestContext:m,requestPolicyMeta:n,rtkStats:o=null,sourceFormat:p,reqLogger:q=null,providerResponseInfo:s=null}){let t=m?.requestId?`${m.requestId}:stream`:`${Date.now()}-${Math.random().toString(36).slice(2,11)}`;return{onStreamComplete:(r,u,v)=>{let w,x,y={ttft:v?v-e:Date.now()-e,total:Date.now()-e},z=r?.providerStream||null,A=r?.content||z?.content||"",B=r?.thinking||z?.thinking||"",C=A||(w=!!z?.raw_sse||Array.isArray(z?.events)&&z.events.length>0,x=z?.raw_disabled===!0||z?.events_disabled===!0,w?"[Streaming response captured, text extraction failed]":x?"[Response text extraction failed; raw stream capture disabled]":"[No response content captured]"),D=B||null,E=r?.streamError||null,F=E?.message||(E?JSON.stringify(E):null),G=(0,h.YZ)({usage:u,body:f,contentText:`${A||""}${B||""}`,format:p});q?.logProviderResponse?.(s?.status||200,s?.statusText||"OK",s?.headers||{},{streaming:!0,reconstructed:!0,content:C,thinking:D,usage:G||u||null,raw_sse:z?.raw_sse||"",raw_disabled:z?.raw_disabled||!1,raw_truncated:z?.raw_truncated||!1,events:z?.events||[],events_disabled:z?.events_disabled||!1,events_truncated:z?.events_truncated||!1,finish_reason:z?.finish_reason||null,finish_reason_raw:z?.finish_reason_raw||null,finish_reason_provider:z?.finish_reason_provider||null,parser:z?.parser||{format:"unknown",formats:[],content_found:!!r?.content,thinking_found:!!r?.thinking,usage_found:!!(G||u)}}),(0,i.ox)((0,h.$R)({provider:a,model:b,connectionId:c,latency:y,tokens:G||{prompt_tokens:0,completion_tokens:0},request:(0,h.Fo)(f,g),providerRequest:j||k||null,providerResponse:C,response:E?{content:C,thinking:D,type:"streaming",error:F}:{content:C,thinking:D,type:"streaming"},status:E?"error":"success",rtkStats:o},{id:t,requestId:m?.requestId,endpoint:l?.endpoint||null})).catch(a=>{console.error("[RequestDetail] Failed to update streaming content:",a.message)}),(0,h.qr)({provider:a,model:b,tokens:G,connectionId:c,apiKey:d,endpoint:l?.endpoint,label:"STREAM USAGE",status:E?"error":"ok",statusCode:E?502:200,latencyMs:y.total,ttftMs:y.ttft,isStreaming:!0,requestContext:m||{},requestPolicyMeta:n,rtkStats:o,meta:G?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:G.usageEstimatedReason}:{}})},streamDetailId:t}}},27349:(a,b,c)=>{c.d(b,{c:()=>i});var d=c(57647),e=c(33110),f=c(14170),g=c(41004),h=c(71857);function i(a,b,c="",e=!1){if(!c.includes("claude-cli")||!a.messages?.length)return null;let f=a.messages,h=a=>"string"==typeof a?a:Array.isArray(a)?a.filter(a=>"text"===a.type).map(a=>a.text).join(" "):"",j=!1,m=!1,n=f[f.length-1];if(n?.role==="assistant"&&n.content?.[0]?.text==="{"&&(j=!0),j||"Warmup"===h(f[0]?.content)&&(j=!0),j||1!==f.length||f[0]?.role!=="user"||"count"===h(f[0]?.content)&&(j=!0),!j&&g.C8?.length){let a=f.filter(a=>"user"===a.role).map(a=>h(a.content)).join(" ");g.C8.some(b=>a.includes(b))&&(j=!0)}if(!j&&e){let b=f.find(a=>"system"===a.role),c=h(b?.content),d=Array.isArray(a.system)?a.system.filter(a=>"text"===a.type).map(a=>a.text).join(" "):"string"==typeof a.system?a.system:"";(c||d).includes("isNewTopic")&&(j=!0,m=!0)}if(!j)return null;let o=(0,d.Tz)(a),p=!1!==a.stream;if(m){let a=f.find(a=>"user"===a.role),c=JSON.stringify({isNewTopic:!0,title:h(a?.content).trim().split(/\s+/).slice(0,3).join(" ")});return p?l(o,b,c):k(o,b,c)}return p?l(o,b):k(o,b)}function j(a,b="CLI Command Execution: Clear Terminal"){return{id:`chatcmpl-${Date.now()}`,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a,choices:[{index:0,message:{role:"assistant",content:b},finish_reason:"stop"}],usage:{prompt_tokens:1,completion_tokens:1,total_tokens:2}}}function k(a,b,c){let d=j(b,c);if(a===f.h.OPENAI)return{success:!0,response:new Response(JSON.stringify(d),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})};let g=(0,e.Ws)(a);g.model=b;let h=m(d),i=[];for(let b of h){let c=(0,e.Y8)(f.h.OPENAI,a,b,g);c?.length>0&&i.push(...c)}let k=(0,e.Y8)(f.h.OPENAI,a,null,g);return k?.length>0&&i.push(...k),{success:!0,response:new Response(JSON.stringify(function(a,b){if(!a||0===a.length)return j("unknown");let c=a[a.length-1];if(b===f.h.CLAUDE&&a.find(a=>"message_stop"===a.type)){a.find(a=>"content_block_delta"===a.type);let b=a.find(a=>"message_delta"===a.type),d=a.find(a=>"message_start"===a.type);d?.message&&(c=d.message,b?.usage&&(c.usage=b.usage))}return c}(i,a)),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}function l(a,b,c){let d=j(b,c),g=(0,e.Ws)(a);g.model=b;let i=m(d),k=[];for(let b of i){let c=(0,e.Y8)(f.h.OPENAI,a,b,g);if(c?.length>0)for(let b of c)k.push((0,h.v8)(b,a))}let l=(0,e.Y8)(f.h.OPENAI,a,null,g);if(l?.length>0)for(let b of l)k.push((0,h.v8)(b,a));return k.push("data: [DONE]\n\n"),{success:!0,response:new Response(k.join(""),{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"}})}}function m(a){let{id:b,created:c,model:d,choices:e}=a;return[{id:b,object:"chat.completion.chunk",created:c,model:d,choices:[{index:0,delta:{role:"assistant",content:e[0].message.content},finish_reason:null}]},{id:b,object:"chat.completion.chunk",created:c,model:d,choices:[{index:0,delta:{},finish_reason:"stop"}],usage:a.usage}]}},43659:(a,b,c)=>{c.d(b,{A1:()=>j,j7:()=>h,lR:()=>l,wO:()=>k,yj:()=>g,zL:()=>i});var d=c(3662),e=c(14170);function f(a,b,c){let f;return c===e.h.CLAUDE?{type:"error",error:{type:d.iq[a]||(a>=500?"api_error":"invalid_request_error"),message:b||d.O[a]||"An error occurred"}}:(f=d.LY[a]||(a>=500?{type:"server_error",code:"internal_server_error"}:{type:"invalid_request_error",code:""}),{error:{message:b||d.O[a]||"An error occurred",type:f.type,code:f.code}})}function g(a,b,c){return new Response(JSON.stringify(f(a,b,c)),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function h(a,b,c){let d=f(a,b,c);return c===e.h.CLAUDE?`event: error
|
|
20
20
|
data: ${JSON.stringify(d)}
|
|
21
21
|
|
|
22
22
|
`:`data: ${JSON.stringify(d)}
|
|
23
23
|
|
|
24
|
-
`}async function i(a,b=null){let c="";try{c=await a.text()}catch{c=""}if(b&&"function"==typeof b.parseError)try{let e=b.parseError(a,c);if(e&&"object"==typeof e){let b=e.message||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:e.status||a.status,message:b,resetsAtMs:e.resetsAtMs}}}catch{}let e="";try{let a=JSON.parse(c);e=a.error?.message||a.message||a.error||c}catch{e=c}let f=("string"==typeof e?e:JSON.stringify(e))||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:a.status,message:f}}function j(a,b,c,d){return{success:!1,status:a,error:b,resetsAtMs:c,response:g(a,b,d)}}function k(a,b,c,d,e){let g=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify(f(a,`${b} (${d})`,e)),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(g)}})}function l(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},47370:(a,b,c)=>{c.d(b,{BY:()=>d.BY,E5:()=>d.E5,SL:()=>d.SL,Zx:()=>d.Zx,_V:()=>d._V,j$:()=>d.j$,ox:()=>d.ox,rg:()=>d.rg,sZ:()=>d.sZ,uw:()=>d.uw});var d=c(39189);c(99703)},48895:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$B:()=>f.$B,KC:()=>e.KC,SB:()=>h.SB}),c(39609),c(35024),c(75924),c(41004);var e=c(44404);c(14170),c(
|
|
24
|
+
`}async function i(a,b=null){let c="";try{c=await a.text()}catch{c=""}if(b&&"function"==typeof b.parseError)try{let e=b.parseError(a,c);if(e&&"object"==typeof e){let b=e.message||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:e.status||a.status,message:b,resetsAtMs:e.resetsAtMs}}}catch{}let e="";try{let a=JSON.parse(c);e=a.error?.message||a.message||a.error||c}catch{e=c}let f=("string"==typeof e?e:JSON.stringify(e))||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:a.status,message:f}}function j(a,b,c,d){return{success:!1,status:a,error:b,resetsAtMs:c,response:g(a,b,d)}}function k(a,b,c,d,e){let g=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify(f(a,`${b} (${d})`,e)),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(g)}})}function l(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},47370:(a,b,c)=>{c.d(b,{BY:()=>d.BY,E5:()=>d.E5,SL:()=>d.SL,Zx:()=>d.Zx,_V:()=>d._V,j$:()=>d.j$,ox:()=>d.ox,rg:()=>d.rg,sZ:()=>d.sZ,uw:()=>d.uw});var d=c(39189);c(99703)},48895:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$B:()=>f.$B,KC:()=>e.KC,SB:()=>h.SB}),c(39609),c(35024),c(75924),c(41004);var e=c(44404);c(14170),c(33110),c(57647),c(40669),c(12557);var f=c(8590),g=c(92500);c(59657);var h=c(55330);c(43659),c(71857);var i=a([g,h]);[g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},59657:(a,b,c)=>{c.d(b,{Jb:()=>f,jd:()=>e});var d=c(41004);function e({onDisconnect:a,onError:b,log:c,provider:d,model:f}={}){let g=new AbortController,h=Date.now(),i=!1,j=null,k=a=>{let b=Date.now()-h,c=d?.toUpperCase()||"UNKNOWN";console.log(`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 🌊 [STREAM] ${c} | ${f||"unknown"} | ${b}ms | ${a}`)};return{signal:g.signal,startTime:h,isConnected:()=>!i,handleDisconnect:(b="client_closed")=>{i||(i=!0,k(`disconnect: ${b}`),j=setTimeout(()=>{g.abort()},500),a?.({reason:b,duration:Date.now()-h}))},handleComplete:()=>{!i&&(i=!0,k("complete"),j&&(clearTimeout(j),j=null))},handleError:a=>{if(!i){if(i=!0,j&&(clearTimeout(j),j=null),"AbortError"===a.name)return void k("aborted");k(`error: ${a.message}`),b?.(a)}},abort:()=>g.abort()}}function f(a,b,c){var e;let f,g,h=null,i=()=>{h&&(clearTimeout(h),h=null)},j=()=>{i(),h=setTimeout(()=>{h=null,c.handleError?.(Error("stream stall timeout")),c.abort?.()},d.xM)},k={signal:c.signal,startTime:c.startTime,isConnected:()=>c.isConnected(),handleComplete:()=>{i(),c.handleComplete()},handleError:a=>{i(),c.handleError(a)},handleDisconnect:a=>{i(),c.handleDisconnect(a)},abort:()=>{i(),c.abort()}};j();let l=new TransformStream({transform(a,b){j(),b.enqueue(a)},flush(){i()}});return e={readable:a.body.pipeThrough(l).pipeThrough(b),writable:{getWriter:()=>({abort:()=>Promise.resolve()})}},f=e.readable.getReader(),g=e.writable.getWriter(),new ReadableStream({async pull(a){if(!k.isConnected())return void a.close();try{let{done:b,value:c}=await f.read();if(b){k.handleComplete(),a.close();return}a.enqueue(c)}catch(c){let b=k.isConnected();if(k.handleError(c),f.cancel().catch(()=>{}),g.abort().catch(()=>{}),!b||"AbortError"===c.name||c.message?.includes("aborted"))try{a.close()}catch(a){}else try{a.error(c)}catch(a){}}},cancel(a){k.handleDisconnect(a||"cancelled"),f.cancel(),g.abort()}})}},60125:(a,b,c)=>{c.d(b,{p:()=>g});var d=c(14170);let e="Preserve every fact, number, name, technical term, negation, uncertainty qualifier, condition, time/frequency word, constraint and ordered step. Never add facts or remove reasoning links. Keep code blocks, file paths, commands, errors, URLs and API identifiers exact. Use normal language for security warnings, irreversible actions and confirmation requests. Prioritize replying in the language used by the user in their latest request, unless they explicitly ask for another language.",f={lite:["Use concise normal language. Remove filler, pleasantries, repeated explanations and unnecessary hedging. Prefer active voice, present tense and short sentences. One atomic thought per sentence when practical.",e,"Do not mention this compression instruction."].join(" "),full:["Use Caveman Compression. Remove articles, auxiliary verbs, redundant pronouns, intensifiers and grammatical scaffolding when meaning remains clear. Prefer 2-7 word sentences. Split compound thoughts. Remove connectives when sequence preserves cause and effect. Use simple common words, active voice and present tense. Keep critical prepositions that define location, source, inclusion or exclusion.",e,"Avoid telegraphic ambiguity. Do not mention this compression instruction."].join(" "),ultra:["Use maximum safe Caveman Compression. Keep only unpredictable semantic content. Use atomic 2-5 word sentences, labels, compact lists and standard technical abbreviations. Remove articles, auxiliaries, filler and most connectives. Compression must remain unambiguous and logically complete. Expand any phrase whose word order could change meaning.",e,"Do not mention this compression instruction."].join(" ")};function g(a,b,c){let e=f[c];if(a&&e)switch(b){case d.h.CLAUDE:!function(a,b){if("string"==typeof a.system&&a.system.length>0){a.system=`${a.system}
|
|
25
25
|
|
|
26
26
|
${b}`;return}if(Array.isArray(a.system)){let c={type:"text",text:b},d=-1;for(let b=a.system.length-1;b>=0;b--)if(a.system[b]?.cache_control){d=b;break}d>=0?a.system.splice(d,0,c):a.system.push(c);return}a.system=b}(a,e);return;case d.h.GEMINI:case d.h.GEMINI_CLI:case d.h.VERTEX:case d.h.ANTIGRAVITY:var g,h;let i,j,k;g=a,h=e,i=g.request&&"object"==typeof g.request?g.request:g,j=Object.prototype.hasOwnProperty.call(i,"system_instruction")?"system_instruction":"systemInstruction",(k=i[j])&&Array.isArray(k.parts)?k.parts.push({text:h}):i[j]={parts:[{text:h}]};return;default:!function(a,b){var c,d;if("string"==typeof a.instructions){a.instructions=a.instructions?`${a.instructions}
|
|
27
27
|
|
|
@@ -135,10 +135,10 @@ ${f.join("\n\n")}`),c.length?c:null}(b):null;if(e)return d.push(...e),d;if("stri
|
|
|
135
135
|
account_name = COALESCE(account_name, ?),
|
|
136
136
|
connection_id = COALESCE(connection_id, ?),
|
|
137
137
|
display_model = ?
|
|
138
|
-
WHERE session_id = ?`,[S.provider,S.account_name,S.connection_id,S.display_model,S.session_id])}finally{U.close()}}catch(a){t("db-write",`[PromptDB] Failed to write prompt log: ${a.message}`)}}async function M(a,b,c){if(await s(),!m||!p)return null;try{m.existsSync(p)||m.mkdirSync(p,{recursive:!0});let d=u(),e=(c||"unknown").replace(/[/:]/g,"-"),f=`${a}_${b}_${e}_${d}`,g=n.join(p,f);return m.mkdirSync(g,{recursive:!0}),g}catch(a){return console.log("[LOG] Failed to create log session:",a.message),null}}function N(a){if(!a)return{};let b={...a},c=["authorization","x-api-key","cookie","token","api-key","openai-api-key","anthropic-api-key","gemini-api-key","google-api-key"];for(let a of Object.keys(b)){let d=a.toLowerCase();if(c.some(a=>d.includes(a))){let c=String(b[a]||"");c.length>16?b[a]=`${c.slice(0,6)}...${c.slice(-4)}`:c.length>0&&(b[a]="***")}}return b}async function O(a,b,c,d={}){if(!f)return{sessionPath:null,logClientRawRequest(){},logRawRequest(){},logOpenAIRequest(){},logTargetRequest(){},logProviderResponse(){},appendProviderChunk(){},appendOpenAIChunk(){},logConvertedResponse(){},appendConvertedChunk(){},logError(){}};let e=await B(),h=e?.fileLoggingEnabled===!0?await M(a,b,c):null,i=h?String(h).split(/[\\/]/).pop():`${a}_${b}_${(c||"unknown").replace(/[/:]/g,"-")}_${u()}`,j="disabled"===l(d?.contentLoggingMode),k={},o={},p=(a,b)=>{if(h){var c=j?function(a={}){let b={timestamp:a.timestamp||new Date().toISOString(),contentLoggingMode:"disabled",contentRedacted:!0,note:g};return a.endpoint&&(b.endpoint=a.endpoint),a.url&&(b.url=a.url),void 0!==a.status&&(b.status=a.status),void 0!==a.statusText&&(b.statusText=a.statusText),void 0!==a.error&&(b.error=a.error),b}(b):b;if(m&&h)try{let b=n.join(h,a);m.writeFileSync(b,JSON.stringify(c,null,2))}catch(b){console.log(`[LOG] Failed to write ${a}:`,b.message)}}};return{get sessionPath(){return h},logClientRawRequest(e,f,g={}){let h={timestamp:new Date().toISOString(),endpoint:e,headers:N(g),body:f};k=z(k,x(g)),o=z(o,y(g)),p("1_req_client.json",h),L({stage:"client",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,endpoint:e,request:h})},logRawRequest(e,f={}){let g={timestamp:new Date().toISOString(),headers:N(f),body:e};k=z(k,x(f)),o=z(o,y(f)),p("2_req_source.json",g),L({stage:"source",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,request:g})},logOpenAIRequest(e){let f={timestamp:new Date().toISOString(),body:e};p("3_req_openai.json",f),L({stage:"openai",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,request:f})},logTargetRequest(e,f,g,h=null){let j={timestamp:new Date().toISOString(),url:e,headers:N(f),body:g,...h?{attempt:h}:{}};p("4_req_target.json",j),L({stage:"target",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,endpoint:e,providerUrl:e,request:j,meta:h?{attempt:h}:void 0})},logProviderResponse(e,f,g,h){let j={timestamp:new Date().toISOString(),status:e,statusText:f,headers:g?"function"==typeof g.entries?Object.fromEntries(g.entries()):g:{},body:h};p("5_res_provider.json",j),L({stage:"provider_response",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,statusCode:e,response:h,meta:j})},appendProviderChunk(a){if(!j&&m&&h)try{let b=n.join(h,"5_res_provider.txt");m.appendFileSync(b,a)}catch{}},appendOpenAIChunk(a){if(!j&&m&&h)try{let b=n.join(h,"6_res_openai.txt");m.appendFileSync(b,a)}catch{}},logConvertedResponse(a){p("7_res_client.json",{timestamp:new Date().toISOString(),body:a})},appendConvertedChunk(a){if(!j&&m&&h)try{let b=n.join(h,"7_res_client.txt");m.appendFileSync(b,a)}catch{}},logError(e,f=null){let g={timestamp:new Date().toISOString(),error:e?.message||String(e),stack:e?.stack,requestBody:f};p("6_error.json",g),L({stage:"error",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,errorText:g.error,request:f,meta:g})}}}},71857:(a,b,c)=>{c.d(b,{i5:()=>w,l2:()=>x,lm:()=>g.lm,v8:()=>h.v8});var d=c(10729),e=c(14170),f=c(47370),g=c(73483),h=c(9024),i=c(43659),j=c(41004);let k=new TextEncoder,l=Number(process.env.PROMPT_LOG_DB_PROVIDER_STREAM_RAW_MAX_CHARS||262144),m=Number(process.env.PROMPT_LOG_DB_PROVIDER_STREAM_EVENT_MAX_ITEMS||1e3);function n(a,b,c=null,d=null){if(!a||!b||"object"!=typeof b)return;let e=Number.isFinite(m)&&m>0?m:0,f=p(b);f&&a.formats.add(f),c?.content&&(a.contentFound=!0),c?.thinking&&(a.thinkingFound=!0),(d||(0,g.f5)(b))&&(a.usageFound=!0);let h=q(b);if(h&&(a.finishReason=h.normalized,a.finishReasonRaw=h.raw,a.finishReasonProvider=f||p(b)||"unknown"),e<=0){a.eventsDisabled=!0;return}if(a.events.length>=e){a.eventsTruncated=!0;return}a.events.push(b)}function o(a,b="",c=""){if(!a)return null;let d=Array.from(a.formats||[]),e="string"==typeof b?b:"",f="string"==typeof c?c:"";return{raw_sse:a.raw||"",raw_disabled:!!a.rawDisabled,raw_truncated:!!a.rawTruncated,events:a.events||[],events_disabled:!!a.eventsDisabled,events_truncated:!!a.eventsTruncated,content:e,thinking:f,finish_reason:a.finishReason||null,finish_reason_raw:a.finishReasonRaw||null,finish_reason_provider:a.finishReasonProvider||null,parser:{format:1===d.length?d[0]:d.length>1?"mixed":"unknown",formats:d,content_found:!!(a.contentFound||e),thinking_found:!!(a.thinkingFound||f),usage_found:!!a.usageFound}}}function p(a){return a&&"object"==typeof a?a.choices||"chat.completion.chunk"===a.object||"response.chunk"===a.object?"openai":a.candidates||a.usageMetadata||a.response?.candidates?"gemini":a.type&&String(a.type).startsWith("content_block")||a.type&&String(a.type).startsWith("message")?"anthropic":a.type&&String(a.type).startsWith("response.")?"openai_responses":a.message||Object.prototype.hasOwnProperty.call(a,"response")||Object.prototype.hasOwnProperty.call(a,"done")?"ollama":a.content||a.text||a.output_text?"generic":"unknown":"unknown"}function q(a){if(!a||"object"!=typeof a)return null;for(let b of[a.choices?.[0]?.finish_reason,a.choices?.[0]?.finishReason,a.candidates?.[0]?.finishReason,a.response?.candidates?.[0]?.finishReason,a.delta?.stop_reason,a.stop_reason,a.message?.stop_reason,a.response?.status==="completed"?"stop":null,"response.completed"===a.type?"stop":null,"response.done"===a.type?"stop":null,a.finish_reason,a.finishReason,!0===a.done?a.done_reason||"stop":null,a.done_reason]){let a=function(a){if(null==a)return null;let b=String(a).trim();if(!b)return null;let c=b.toLowerCase();switch(c){case"stop":case"end_turn":case"complete":case"completed":case"success":return"stop";case"length":case"max_tokens":case"max_output_tokens":case"max_tokens_reached":return"length";case"tool_calls":case"tool_call":case"function_call":return"tool_calls";case"content_filter":case"safety":case"blocked":return"safety";case"recitation":return"recitation";default:return c}}(b);if(a)return{raw:String(b),normalized:a}}return null}function r(a){let b={content:"",thinking:""};if(!a||"object"!=typeof a)return b;let c=(a,c=!1)=>{"string"==typeof a&&0!==a.length&&(c?b.thinking+=a:b.content+=a)};for(let b of Array.isArray(a.choices)?a.choices:[]){let a=b?.delta||null,d=b?.message||null;c(a?.content),c(a?.text),c(a?.reasoning_content,!0),c(a?.reasoning,!0),c(a?.thinking,!0),c(d?.content),c(d?.reasoning_content,!0),c(d?.thinking,!0)}let d=a.delta||null;c(d?.content),c(d?.text),c(d?.reasoning_content,!0),c(d?.reasoning,!0),c(d?.thinking,!0),("content_block_delta"===a.type||"message_delta"===a.type||a.delta)&&(c(a.delta?.text),c(a.delta?.thinking,!0),c(a.delta?.partial_json)),"content_block_start"===a.type&&(c(a.content_block?.text),c(a.content_block?.thinking,!0));let e=a.candidates||a.response?.candidates;if(Array.isArray(e))for(let a of e)for(let b of a?.content?.parts||[])c(b?.text,b?.thought===!0||b?.thoughtSignature===!0);c(a.message?.content),c(a.message?.thinking,!0),c(a.response),c(a.thinking,!0),c(a.output_text),c(a.response?.output_text),"response.output_text.delta"===a.type&&c(a.delta),"response.reasoning_summary_text.delta"===a.type&&c(a.delta,!0),"response.reasoning_delta"===a.type&&c(a.delta,!0);let f=a.output||a.response?.output;if(Array.isArray(f)){for(let a of f)if("string"==typeof a?.content&&c(a.content,"reasoning"===a.type),Array.isArray(a?.content))for(let b of a.content)c(b?.text||b?.output_text,b?.type==="reasoning"||b?.type==="summary_text"||b?.type==="reasoning_text")}return c(a.content),c(a.text),c(a.data?.content),c(a.data?.text),c(a.data?.message?.content),b}function s(a){return!!a&&"object"==typeof a&&!!(q(a)||"message_delta"===a.type)}let t="translate",u="passthrough";function v(a={}){let{mode:b=t,targetFormat:c,sourceFormat:m,provider:p=null,reqLogger:q=null,toolNameMap:w=null,model:x=null,connectionId:y=null,body:z=null,onStreamComplete:A=null,apiKey:B=null}=a,C="",D=null,E=new TextDecoder("utf-8",{fatal:!1}),F=b===t?{...(0,d.Ws)(m),provider:p,toolNameMap:w,model:x}:null,G=0,H="",I="",J=null,K=!1,L={raw:"",rawTruncated:!1,rawDisabled:!1,events:[],eventsTruncated:!1,eventsDisabled:!1,formats:new Set,contentFound:!1,thinkingFound:!1,usageFound:!1,finishReason:null,finishReasonRaw:null,finishReasonProvider:null};return new TransformStream({transform(a,f){J||(J=Date.now());let o=E.decode(a,{stream:!0});C+=o,q?.appendProviderChunk?.(o),function(a,b){if(!a||"string"!=typeof b||!b)return;let c=Number.isFinite(l)&&l>0?l:0;if(c<=0){a.rawDisabled=!0;return}let d=c-a.raw.length;if(d<=0){a.rawTruncated=!0;return}b.length>d?(a.raw+=b.slice(0,d),a.rawTruncated=!0):a.raw+=b}(L,o);let p=C.split("\n");for(let a of(C=p.pop()||"",p)){let l=a.trim();if(b===u){let b,c=!1;if(l.startsWith("data:")&&"[DONE]"===l.slice(5).trim()&&(K=!0),l.startsWith("data:")&&"[DONE]"!==l.slice(5).trim())try{let a=JSON.parse(l.slice(5).trim()),d=(0,h.A4)(a),f=!1;if(void 0!==a.choices&&(a.object||(a.object="chat.completion.chunk",f=!0),a.created||(a.created=Math.floor(Date.now()/1e3),f=!0)),void 0!==a.prompt_filter_results&&(delete a.prompt_filter_results,f=!0),a?.choices)for(let b of a.choices)void 0!==b.content_filter_results&&(delete b.content_filter_results,f=!0);let i=r(a),j=(0,g.f5)(a);if(n(L,a,i,j),j&&(D=j),!(0,h.c2)(a,e.h.OPENAI)&&!i.content&&!i.thinking&&!j&&!s(a))continue;i.content&&(G+=i.content.length,H+=i.content),i.thinking&&(G+=i.thinking.length,I+=i.thinking);let k=s(a),m=void 0!==a.choices;if(k&&m&&!(0,g.Gh)(a.usage)){let d=(0,g.OF)(z,G,e.h.OPENAI);a.usage=(0,g.WL)(d,e.h.OPENAI),b=`data: ${JSON.stringify(a)}
|
|
138
|
+
WHERE session_id = ?`,[S.provider,S.account_name,S.connection_id,S.display_model,S.session_id])}finally{U.close()}}catch(a){t("db-write",`[PromptDB] Failed to write prompt log: ${a.message}`)}}async function M(a,b,c){if(await s(),!m||!p)return null;try{m.existsSync(p)||m.mkdirSync(p,{recursive:!0});let d=u(),e=(c||"unknown").replace(/[/:]/g,"-"),f=`${a}_${b}_${e}_${d}`,g=n.join(p,f);return m.mkdirSync(g,{recursive:!0}),g}catch(a){return console.log("[LOG] Failed to create log session:",a.message),null}}function N(a){if(!a)return{};let b={...a},c=["authorization","x-api-key","cookie","token","api-key","openai-api-key","anthropic-api-key","gemini-api-key","google-api-key"];for(let a of Object.keys(b)){let d=a.toLowerCase();if(c.some(a=>d.includes(a))){let c=String(b[a]||"");c.length>16?b[a]=`${c.slice(0,6)}...${c.slice(-4)}`:c.length>0&&(b[a]="***")}}return b}async function O(a,b,c,d={}){if(!f)return{sessionPath:null,logClientRawRequest(){},logRawRequest(){},logOpenAIRequest(){},logTargetRequest(){},logProviderResponse(){},appendProviderChunk(){},appendOpenAIChunk(){},logConvertedResponse(){},appendConvertedChunk(){},logError(){}};let e=await B(),h=e?.fileLoggingEnabled===!0?await M(a,b,c):null,i=h?String(h).split(/[\\/]/).pop():`${a}_${b}_${(c||"unknown").replace(/[/:]/g,"-")}_${u()}`,j="disabled"===l(d?.contentLoggingMode),k={},o={},p=(a,b)=>{if(h){var c=j?function(a={}){let b={timestamp:a.timestamp||new Date().toISOString(),contentLoggingMode:"disabled",contentRedacted:!0,note:g};return a.endpoint&&(b.endpoint=a.endpoint),a.url&&(b.url=a.url),void 0!==a.status&&(b.status=a.status),void 0!==a.statusText&&(b.statusText=a.statusText),void 0!==a.error&&(b.error=a.error),b}(b):b;if(m&&h)try{let b=n.join(h,a);m.writeFileSync(b,JSON.stringify(c,null,2))}catch(b){console.log(`[LOG] Failed to write ${a}:`,b.message)}}};return{get sessionPath(){return h},logClientRawRequest(e,f,g={}){let h={timestamp:new Date().toISOString(),endpoint:e,headers:N(g),body:f};k=z(k,x(g)),o=z(o,y(g)),p("1_req_client.json",h),L({stage:"client",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,endpoint:e,request:h})},logRawRequest(e,f={}){let g={timestamp:new Date().toISOString(),headers:N(f),body:e};k=z(k,x(f)),o=z(o,y(f)),p("2_req_source.json",g),L({stage:"source",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,request:g})},logOpenAIRequest(e){let f={timestamp:new Date().toISOString(),body:e};p("3_req_openai.json",f),L({stage:"openai",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,request:f})},logTargetRequest(e,f,g,h=null){let j={timestamp:new Date().toISOString(),url:e,headers:N(f),body:g,...h?{attempt:h}:{}};p("4_req_target.json",j),L({stage:"target",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,endpoint:e,providerUrl:e,request:j,meta:h?{attempt:h}:void 0})},logProviderResponse(e,f,g,h){let j={timestamp:new Date().toISOString(),status:e,statusText:f,headers:g?"function"==typeof g.entries?Object.fromEntries(g.entries()):g:{},body:h};p("5_res_provider.json",j),L({stage:"provider_response",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,statusCode:e,response:h,meta:j})},appendProviderChunk(a){if(!j&&m&&h)try{let b=n.join(h,"5_res_provider.txt");m.appendFileSync(b,a)}catch{}},appendOpenAIChunk(a){if(!j&&m&&h)try{let b=n.join(h,"6_res_openai.txt");m.appendFileSync(b,a)}catch{}},logConvertedResponse(a){p("7_res_client.json",{timestamp:new Date().toISOString(),body:a})},appendConvertedChunk(a){if(!j&&m&&h)try{let b=n.join(h,"7_res_client.txt");m.appendFileSync(b,a)}catch{}},logError(e,f=null){let g={timestamp:new Date().toISOString(),error:e?.message||String(e),stack:e?.stack,requestBody:f};p("6_error.json",g),L({stage:"error",clientInfo:k,sourceInfo:o,sessionId:i,sourceFormat:a,targetFormat:b,model:c,context:d,errorText:g.error,request:f,meta:g})}}}},71857:(a,b,c)=>{c.d(b,{i5:()=>w,l2:()=>x,lm:()=>g.lm,v8:()=>h.v8});var d=c(33110),e=c(14170),f=c(47370),g=c(73483),h=c(9024),i=c(43659),j=c(41004);let k=new TextEncoder,l=Number(process.env.PROMPT_LOG_DB_PROVIDER_STREAM_RAW_MAX_CHARS||262144),m=Number(process.env.PROMPT_LOG_DB_PROVIDER_STREAM_EVENT_MAX_ITEMS||1e3);function n(a,b,c=null,d=null){if(!a||!b||"object"!=typeof b)return;let e=Number.isFinite(m)&&m>0?m:0,f=p(b);f&&a.formats.add(f),c?.content&&(a.contentFound=!0),c?.thinking&&(a.thinkingFound=!0),(d||(0,g.f5)(b))&&(a.usageFound=!0);let h=q(b);if(h&&(a.finishReason=h.normalized,a.finishReasonRaw=h.raw,a.finishReasonProvider=f||p(b)||"unknown"),e<=0){a.eventsDisabled=!0;return}if(a.events.length>=e){a.eventsTruncated=!0;return}a.events.push(b)}function o(a,b="",c=""){if(!a)return null;let d=Array.from(a.formats||[]),e="string"==typeof b?b:"",f="string"==typeof c?c:"";return{raw_sse:a.raw||"",raw_disabled:!!a.rawDisabled,raw_truncated:!!a.rawTruncated,events:a.events||[],events_disabled:!!a.eventsDisabled,events_truncated:!!a.eventsTruncated,content:e,thinking:f,finish_reason:a.finishReason||null,finish_reason_raw:a.finishReasonRaw||null,finish_reason_provider:a.finishReasonProvider||null,parser:{format:1===d.length?d[0]:d.length>1?"mixed":"unknown",formats:d,content_found:!!(a.contentFound||e),thinking_found:!!(a.thinkingFound||f),usage_found:!!a.usageFound}}}function p(a){return a&&"object"==typeof a?a.choices||"chat.completion.chunk"===a.object||"response.chunk"===a.object?"openai":a.candidates||a.usageMetadata||a.response?.candidates?"gemini":a.type&&String(a.type).startsWith("content_block")||a.type&&String(a.type).startsWith("message")?"anthropic":a.type&&String(a.type).startsWith("response.")?"openai_responses":a.message||Object.prototype.hasOwnProperty.call(a,"response")||Object.prototype.hasOwnProperty.call(a,"done")?"ollama":a.content||a.text||a.output_text?"generic":"unknown":"unknown"}function q(a){if(!a||"object"!=typeof a)return null;for(let b of[a.choices?.[0]?.finish_reason,a.choices?.[0]?.finishReason,a.candidates?.[0]?.finishReason,a.response?.candidates?.[0]?.finishReason,a.delta?.stop_reason,a.stop_reason,a.message?.stop_reason,a.response?.status==="completed"?"stop":null,"response.completed"===a.type?"stop":null,"response.done"===a.type?"stop":null,a.finish_reason,a.finishReason,!0===a.done?a.done_reason||"stop":null,a.done_reason]){let a=function(a){if(null==a)return null;let b=String(a).trim();if(!b)return null;let c=b.toLowerCase();switch(c){case"stop":case"end_turn":case"complete":case"completed":case"success":return"stop";case"length":case"max_tokens":case"max_output_tokens":case"max_tokens_reached":return"length";case"tool_calls":case"tool_call":case"function_call":return"tool_calls";case"content_filter":case"safety":case"blocked":return"safety";case"recitation":return"recitation";default:return c}}(b);if(a)return{raw:String(b),normalized:a}}return null}function r(a){let b={content:"",thinking:""};if(!a||"object"!=typeof a)return b;let c=(a,c=!1)=>{"string"==typeof a&&0!==a.length&&(c?b.thinking+=a:b.content+=a)};for(let b of Array.isArray(a.choices)?a.choices:[]){let a=b?.delta||null,d=b?.message||null;c(a?.content),c(a?.text),c(a?.reasoning_content,!0),c(a?.reasoning,!0),c(a?.thinking,!0),c(d?.content),c(d?.reasoning_content,!0),c(d?.thinking,!0)}let d=a.delta||null;c(d?.content),c(d?.text),c(d?.reasoning_content,!0),c(d?.reasoning,!0),c(d?.thinking,!0),("content_block_delta"===a.type||"message_delta"===a.type||a.delta)&&(c(a.delta?.text),c(a.delta?.thinking,!0),c(a.delta?.partial_json)),"content_block_start"===a.type&&(c(a.content_block?.text),c(a.content_block?.thinking,!0));let e=a.candidates||a.response?.candidates;if(Array.isArray(e))for(let a of e)for(let b of a?.content?.parts||[])c(b?.text,b?.thought===!0||b?.thoughtSignature===!0);c(a.message?.content),c(a.message?.thinking,!0),c(a.response),c(a.thinking,!0),c(a.output_text),c(a.response?.output_text),"response.output_text.delta"===a.type&&c(a.delta),"response.reasoning_summary_text.delta"===a.type&&c(a.delta,!0),"response.reasoning_delta"===a.type&&c(a.delta,!0);let f=a.output||a.response?.output;if(Array.isArray(f)){for(let a of f)if("string"==typeof a?.content&&c(a.content,"reasoning"===a.type),Array.isArray(a?.content))for(let b of a.content)c(b?.text||b?.output_text,b?.type==="reasoning"||b?.type==="summary_text"||b?.type==="reasoning_text")}return c(a.content),c(a.text),c(a.data?.content),c(a.data?.text),c(a.data?.message?.content),b}function s(a){return!!a&&"object"==typeof a&&!!(q(a)||"message_delta"===a.type)}let t="translate",u="passthrough";function v(a={}){let{mode:b=t,targetFormat:c,sourceFormat:m,provider:p=null,reqLogger:q=null,toolNameMap:w=null,model:x=null,connectionId:y=null,body:z=null,onStreamComplete:A=null,apiKey:B=null}=a,C="",D=null,E=new TextDecoder("utf-8",{fatal:!1}),F=b===t?{...(0,d.Ws)(m),provider:p,toolNameMap:w,model:x}:null,G=0,H="",I="",J=null,K=!1,L={raw:"",rawTruncated:!1,rawDisabled:!1,events:[],eventsTruncated:!1,eventsDisabled:!1,formats:new Set,contentFound:!1,thinkingFound:!1,usageFound:!1,finishReason:null,finishReasonRaw:null,finishReasonProvider:null};return new TransformStream({transform(a,f){J||(J=Date.now());let o=E.decode(a,{stream:!0});C+=o,q?.appendProviderChunk?.(o),function(a,b){if(!a||"string"!=typeof b||!b)return;let c=Number.isFinite(l)&&l>0?l:0;if(c<=0){a.rawDisabled=!0;return}let d=c-a.raw.length;if(d<=0){a.rawTruncated=!0;return}b.length>d?(a.raw+=b.slice(0,d),a.rawTruncated=!0):a.raw+=b}(L,o);let p=C.split("\n");for(let a of(C=p.pop()||"",p)){let l=a.trim();if(b===u){let b,c=!1;if(l.startsWith("data:")&&"[DONE]"===l.slice(5).trim()&&(K=!0),l.startsWith("data:")&&"[DONE]"!==l.slice(5).trim())try{let a=JSON.parse(l.slice(5).trim()),d=(0,h.A4)(a),f=!1;if(void 0!==a.choices&&(a.object||(a.object="chat.completion.chunk",f=!0),a.created||(a.created=Math.floor(Date.now()/1e3),f=!0)),void 0!==a.prompt_filter_results&&(delete a.prompt_filter_results,f=!0),a?.choices)for(let b of a.choices)void 0!==b.content_filter_results&&(delete b.content_filter_results,f=!0);let i=r(a),j=(0,g.f5)(a);if(n(L,a,i,j),j&&(D=j),!(0,h.c2)(a,e.h.OPENAI)&&!i.content&&!i.thinking&&!j&&!s(a))continue;i.content&&(G+=i.content.length,H+=i.content),i.thinking&&(G+=i.thinking.length,I+=i.thinking);let k=s(a),m=void 0!==a.choices;if(k&&m&&!(0,g.Gh)(a.usage)){let d=(0,g.OF)(z,G,e.h.OPENAI);a.usage=(0,g.WL)(d,e.h.OPENAI),b=`data: ${JSON.stringify(a)}
|
|
139
139
|
`,D=d,c=!0}else if(k&&m&&D){let d=(0,g.O9)(D);a.usage=(0,g.WL)(d,e.h.OPENAI),b=`data: ${JSON.stringify(a)}
|
|
140
140
|
`,c=!0}else(d||f)&&(b=`data: ${JSON.stringify(a)}
|
|
141
|
-
`,c=!0)}catch{}c||(b=a.startsWith("data:")&&!a.startsWith("data: ")?"data: "+a.slice(5)+"\n":a+"\n"),q?.appendConvertedChunk?.(b),f.enqueue(k.encode(b));continue}if(!l)continue;let o=(0,h.tV)(l,c);if(!o)continue;if(o&&o.done&&c!==e.h.OLLAMA){let a="data: [DONE]\n\n";q?.appendConvertedChunk?.(a),f.enqueue(k.encode(a)),K=!0;continue}let p=r(o);p.content&&(G+=p.content.length,H+=p.content),p.thinking&&(G+=p.thinking.length,I+=p.thinking);let t=(0,g.f5)(o);n(L,o,p,t),t&&(F.usage=t);let v=(0,d.Y8)(c,m,o,F);if(F?.error&&!F.errorFrameSent){F.errorFrameSent=!0;let a=F.error.message||JSON.stringify(F.error),b=(0,i.j7)(j.gx.BAD_GATEWAY,a,m);q?.appendConvertedChunk?.(b),f.enqueue(k.encode(b)),K=!0;continue}if(v?._openaiIntermediate)for(let a of v._openaiIntermediate){let b=(0,h.v8)(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(v?.length>0)for(let a of v){if(!(0,h.c2)(a,m))continue;let b="message_delta"===a.type||a.choices?.[0]?.finish_reason;if(F.finishReason&&b&&!(0,g.Gh)(a.usage)&&G>0){let b=(0,g.OF)(z,G,m);a.usage=(0,g.WL)(b,m),F.usage=b}else if(F.finishReason&&b&&F.usage){let b=(0,g.O9)(F.usage);a.usage=(0,g.WL)(b,m)}let c=(0,h.v8)(a,m);q?.appendConvertedChunk?.(c),f.enqueue(k.encode(c))}}},flush(a){(0,f.uw)(x,p,y,!1);try{let i=E.decode();if(i&&(C+=i),b===u){if(C){let b=C;C.startsWith("data:")&&!C.startsWith("data: ")&&(b="data: "+C.slice(5)),q?.appendConvertedChunk?.(b),a.enqueue(k.encode(b))}if(!(0,g.Gh)(D)&&G>0&&(D=(0,g.OF)(z,G,e.h.OPENAI)),(0,g.Gh)(D)?(0,g.IF)(p,D,x,y,B):(0,f.E5)({model:x,provider:p,connectionId:y,tokens:null,status:"200 OK"}).catch(()=>{}),!K){let b="data: [DONE]\n\n";q?.appendConvertedChunk?.(b),a.enqueue(k.encode(b)),K=!0}A&&A({content:H,thinking:I,providerStream:o(L,H,I)},D,J);return}if(C.trim()){let b=(0,h.tV)(C.trim());if(b&&!b.done){n(L,b,r(b),(0,g.f5)(b));let f=(0,d.Y8)(c,m,b,F);if(f?._openaiIntermediate)for(let a of f._openaiIntermediate){let b=(0,h.v8)(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(f?.length>0)for(let b of f){let c=(0,h.v8)(b,m);q?.appendConvertedChunk?.(c),a.enqueue(k.encode(c))}}}let j=(0,d.Y8)(c,m,null,F);if(j?._openaiIntermediate)for(let a of j._openaiIntermediate){let b=(0,h.v8)(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(j?.length>0)for(let b of j){let c=(0,h.v8)(b,m);q?.appendConvertedChunk?.(c),a.enqueue(k.encode(c))}if(!K){let b="data: [DONE]\n\n";q?.appendConvertedChunk?.(b),a.enqueue(k.encode(b)),K=!0}!(0,g.Gh)(F?.usage)&&G>0&&(F.usage=(0,g.OF)(z,G,m)),(0,g.Gh)(F?.usage)?(0,g.IF)(F.provider||c,F.usage,x,y,B):(0,f.E5)({model:x,provider:p,connectionId:y,tokens:null,status:"200 OK"}).catch(()=>{}),A&&A({content:H,thinking:I,providerStream:o(L,H,I),streamError:F?.error||null},F?.usage,J)}catch(a){console.log("Error in flush:",a)}}})}function w(a,b,c=null,d=null,e=null,f=null,g=null,h=null,i=null,j=null){return v({mode:t,targetFormat:a,sourceFormat:b,provider:c,reqLogger:d,toolNameMap:e,model:f,connectionId:g,body:h,onStreamComplete:i,apiKey:j})}function x(a=null,b=null,c=null,d=null,e=null,f=null,g=null){return v({mode:u,provider:a,reqLogger:b,model:c,connectionId:d,body:e,onStreamComplete:f,apiKey:g})}},81626:(a,b,c)=>{function d(a,b){let c;if(!a.trim())return;let d=a.match(/^event:\s*(.+)$/m),e=a.match(/^data:\s*(.+)$/m);if(!d||!e)return;let f=d[1].trim(),g=e[1].trim();if("[DONE]"!==g){try{c=JSON.parse(g)}catch{return}"response.created"===f?(b.responseId=c.response?.id||b.responseId,b.created=c.response?.created_at||b.created):"response.output_item.done"===f?b.items.set(c.output_index??0,c.item):"response.completed"===f?(b.status="completed",c.response?.usage&&(b.usage.input_tokens=c.response.usage.input_tokens||0,b.usage.output_tokens=c.response.usage.output_tokens||0,b.usage.total_tokens=c.response.usage.total_tokens||0)):"response.failed"===f&&(b.status="failed")}}c.d(b,{I:()=>o,F:()=>n});let e={input_tokens:0,output_tokens:0,total_tokens:0};async function f(a){if(!a||"function"!=typeof a.getReader)return{id:`resp_${Date.now()}`,object:"response",created_at:Math.floor(Date.now()/1e3),status:"failed",output:[],usage:{...e}};let b=a.getReader(),c=new TextDecoder,f="",g={responseId:"",created:Math.floor(Date.now()/1e3),status:"in_progress",usage:{...e},items:new Map};try{for(;;){let{done:a,value:e}=await b.read();if(a)break;let h=(f+=c.decode(e,{stream:!0})).split("\n\n");for(let a of(f=h.pop()||"",h))d(a,g)}f.trim()&&d(f,g)}finally{b.releaseLock()}let h=[],i=g.items.size>0?Math.max(...g.items.keys()):-1;for(let a=0;a<=i;a++)h.push(g.items.get(a)||{type:"message",content:[],role:"assistant"});return{id:g.responseId||`resp_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,object:"response",created_at:g.created,status:g.status||"completed",output:h,usage:g.usage}}var g=c(43659),h=c(41004),i=c(14170),j=c(86171),k=c(9902),l=c(47370);function m(a){if(!a?.content||!Array.isArray(a.content))return"";let b=a.content.find(a=>"output_text"===a.type);if("string"==typeof b?.text)return b.text;let c=a.content.find(a=>"string"==typeof a.text);return"string"==typeof c?.text?c.text:""}function n(a,b){let c=[];for(let b of String(a||"").split("\n")){let a=b.trim();if(!a.startsWith("data:"))continue;let d=a.slice(5).trim();if(d&&"[DONE]"!==d)try{c.push(JSON.parse(d))}catch{}}if(0===c.length)return null;let d=c[0],e=[],f=[],g=new Map,h="stop",i=null,j=!1;for(let a of c){let b=a?.choices?.[0];b&&(j=!0);let c=b?.delta||{};if("string"==typeof c.content&&c.content.length>0&&e.push(c.content),"string"==typeof c.reasoning_content&&c.reasoning_content.length>0&&f.push(c.reasoning_content),b?.finish_reason&&(h=b.finish_reason),a?.usage&&"object"==typeof a.usage&&(i=a.usage),Array.isArray(c.tool_calls))for(let a of c.tool_calls){let b=a.index??0;g.has(b)||g.set(b,{id:a.id||"",type:"function",function:{name:"",arguments:""}});let c=g.get(b);a.id&&(c.id=a.id),a.function?.name&&(c.function.name+=a.function.name),a.function?.arguments&&(c.function.arguments+=a.function.arguments)}}if(!j)return null;let k={role:"assistant",content:e.join("")||(g.size>0?null:"")};f.length>0&&(k.reasoning_content=f.join("")),g.size>0&&(k.tool_calls=[...g.entries()].sort((a,b)=>a[0]-b[0]).map(([,a])=>a));let l={id:d.id||`chatcmpl-${Date.now()}`,object:"chat.completion",created:d.created||Math.floor(Date.now()/1e3),model:d.model||b||"unknown",choices:[{index:0,message:k,finish_reason:h}]};return i&&(l.usage=i),l}async function o({providerResponse:a,sourceFormat:b,provider:c,model:d,body:e,stream:p,translatedBody:q,finalBody:r,requestStartTime:s,connectionId:t,apiKey:u,clientRawRequest:v,onRequestSuccess:w,trackDone:x,appendLog:y,requestContext:z,requestPolicyMeta:A,rtkStats:B=null}){let C=a.headers.get("content-type")||"";if(!(C.includes("text/event-stream")||""===C&&"codex"===c))return null;x();let D={provider:c,model:d,connectionId:t,request:(0,j.Fo)(e,p),providerRequest:r||q||null};if("codex"===c||b===i.h.OPENAI_RESPONSES)try{let g,h=await f(a.body);w&&await w();let{msgItem:n,textContent:o}=function(a){if(!Array.isArray(a))return{msgItem:null,textContent:null};let b=a.filter(a=>a?.type==="message");if(0===b.length)return{msgItem:null,textContent:null};for(let a=b.length-1;a>=0;a--){let c=m(b[a]);if(c.length>0)return{msgItem:b[a],textContent:c}}let c=b[b.length-1];return{msgItem:c,textContent:m(c)}}(h.output),p=(0,j.YZ)({usage:h.usage||null,body:e,responseBody:h,contentText:o||"",format:b});y({tokens:p,status:"200 OK"});let q=Date.now()-s;if((0,j.qr)({provider:c,model:d,tokens:p,connectionId:t,apiKey:u,endpoint:v?.endpoint,status:"ok",statusCode:200,latencyMs:q,ttftMs:q,isStreaming:!1,requestContext:z||{},requestPolicyMeta:A,rtkStats:B,meta:p?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:p.usageEstimatedReason}:{}}),(0,l.ox)((0,j.$R)({...D,latency:{ttft:q,total:q},tokens:{prompt_tokens:p.input_tokens??p.prompt_tokens??0,completion_tokens:p.output_tokens??p.completion_tokens??0},response:{content:o,thinking:null,finish_reason:h.status||"unknown"},status:"success",rtkStats:B},{endpoint:v?.endpoint||null,requestId:z?.requestId})).catch(()=>{}),b===i.h.OPENAI_RESPONSES)return{success:!0,response:new Response(JSON.stringify(h),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})};let r=p.input_tokens??p.prompt_tokens??0,x=p.output_tokens??p.completion_tokens??0,C=(h.output||[]).filter(a=>"function_call"===a.type).map((a,b)=>({id:a.call_id||`call_${a.name}_${Date.now()}_${b}`,type:"function",function:{name:a.name,arguments:"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments||{})}})),E=C.length>0;if(b===i.h.ANTIGRAVITY||b===i.h.GEMINI||b===i.h.GEMINI_CLI)g={response:{candidates:[{content:{role:"model",parts:[{text:o||""}]},finishReason:"STOP",index:0}],usageMetadata:{promptTokenCount:r,candidatesTokenCount:x,totalTokenCount:r+x},modelVersion:d,responseId:h.id||`resp_${Date.now()}`}};else if(b===i.h.CLAUDE){let a={id:h.id||`chatcmpl-${Date.now()}`,model:h.model||d,choices:[{index:0,message:{role:"assistant",content:o||(E?null:""),...E?{tool_calls:C}:{}},finish_reason:E?"tool_calls":"completed"===h.status?"stop":h.status||"stop"}]};g=(0,k.F)(a,{input_tokens:r,output_tokens:x})}else{let a={role:"assistant",content:o||(E?null:"")};E&&(a.tool_calls=C);let b=E?"tool_calls":"completed"===h.status?"stop":h.status||"stop";g={id:h.id||`chatcmpl-${Date.now()}`,object:"chat.completion",created:h.created_at||Math.floor(Date.now()/1e3),model:h.model||d,choices:[{index:0,message:a,finish_reason:b}],usage:{prompt_tokens:r,completion_tokens:x,total_tokens:r+x}}}return{success:!0,response:new Response(JSON.stringify(g),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}catch(a){return console.error("[ChatCore] Responses API SSE→JSON failed:",a),(0,g.A1)(h.gx.BAD_GATEWAY,"Failed to convert streaming response to JSON",void 0,b)}try{let f=await a.text(),m=n(f,d);if(!m)return(0,g.A1)(h.gx.BAD_GATEWAY,"Invalid SSE response for non-streaming request",void 0,b);w&&await w();let o=(0,j.YZ)({usage:m.usage||null,body:e,responseBody:m,contentText:`${m.choices?.[0]?.message?.content||""}${m.choices?.[0]?.message?.reasoning_content||""}`,format:b});y({tokens:o,status:"200 OK"});let p=Date.now()-s;(0,j.qr)({provider:c,model:d,tokens:o,connectionId:t,apiKey:u,endpoint:v?.endpoint,status:"ok",statusCode:200,latencyMs:p,ttftMs:p,isStreaming:!1,requestContext:z||{},requestPolicyMeta:A,rtkStats:B,meta:o?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:o.usageEstimatedReason}:{}}),(0,l.ox)((0,j.$R)({...D,latency:{ttft:p,total:p},tokens:o,response:{content:m.choices?.[0]?.message?.content||null,thinking:m.choices?.[0]?.message?.reasoning_content||null,finish_reason:m.choices?.[0]?.finish_reason||"unknown"},status:"success",rtkStats:B},{endpoint:v?.endpoint||null,requestId:z?.requestId})).catch(()=>{});let q=m;if(b===i.h.CLAUDE)q=(0,k.F)(m,o);else if(b===i.h.OPENAI_RESPONSES)q=(0,k.P)(m,o);else if(m?.choices)for(let a of m.choices)a?.message?.reasoning_content&&a.message.content&&delete a.message.reasoning_content;return{success:!0,response:new Response(JSON.stringify(q),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}catch(a){return console.error("[ChatCore] Chat Completions SSE→JSON failed:",a),(0,g.A1)(h.gx.BAD_GATEWAY,"Failed to convert streaming response to JSON",void 0,b)}}},86171:(a,b,c)=>{c.d(b,{$R:()=>p,Fo:()=>n,MK:()=>o,YZ:()=>i,qr:()=>s,sx:()=>t,wS:()=>m});var d=c(99703),e=c(71857),f=c(73483);let g=["temperature","top_p","top_k","max_tokens","max_completion_tokens","thinking","reasoning","enable_thinking","presence_penalty","frequency_penalty","seed","stop","tools","tool_choice","response_format","prediction","store","metadata","n","logprobs","top_logprobs","logit_bias","user","parallel_tool_calls"];function h(a){return(function a(b,c=new Set){if(null==b)return"";if("string"==typeof b)return b;if("object"!=typeof b||c.has(b))return"";if(c.add(b),Array.isArray(b))return b.map(b=>a(b,c)).filter(Boolean).join("");let d="";for(let e of("string"==typeof b.content&&(d+=b.content),"string"==typeof b.reasoning_content&&(d+=b.reasoning_content),"string"==typeof b.text&&(d+=b.text),"string"==typeof b.output_text&&(d+=b.output_text),"string"==typeof b.delta?.content&&(d+=b.delta.content),"string"==typeof b.delta?.reasoning_content&&(d+=b.delta.reasoning_content),"string"==typeof b.delta?.text&&(d+=b.delta.text),"string"==typeof b.delta?.thinking&&(d+=b.delta.thinking),["message","choices","candidates","content","parts","output","response","data","item","items","result","results","message_delta","delta"]))void 0!==b[e]&&"string"!=typeof b[e]&&(d+=a(b[e],c));return d})(a).trim()}function i({usage:a,body:b,responseBody:c,translatedResponse:d,contentText:e,format:g,reason:j="missing_provider_usage"}={}){if((0,f.Gh)(a))return a;let k="string"==typeof e&&e.length>0?e:h(d)||h(c);return{...(0,f.OF)(b,k.length,g),estimated:!0,usageEstimated:!0,usageEstimatedReason:j}}function j(a){return String(a||"").trim()}function k(a){return a?"function"==typeof a.entries?Object.fromEntries(a.entries()):"object"==typeof a?a:{}:{}}function l(a,...b){let c=k(a);for(let a of b){let b=c[a]??c[a.toLowerCase()]??c[a.toUpperCase()];if(null!=b)return String(b)}return""}function m(a={}){let b=k(a.headers||a.request?.headers||a.clientHeaders),c=a.clientIp||a.sourceIp||l(b,"x-forwarded-for","x-real-ip","cf-connecting-ip","x-client-ip")||a.ip||"",d=a.clientUserAgent||l(b,"user-agent")||"",e=a.sourceTool||l(b,"x-9r-source-tool","x-source-tool","x-client-tool","x-bluerouter-source-tool")||"",f=a.sourceToolLabel||l(b,"x-9r-source-tool-label","x-source-tool-label","x-client-tool-label")||e;return{requestId:j(a.requestId)||`req_${Date.now()}_${Math.random().toString(36).slice(2,10)}`,sessionId:j(a.sessionId||l(b,"x-session-id","x-conversation-id","x-request-session-id")),clientIp:j(c),clientHost:j(a.clientHost||l(b,"host","x-forwarded-host")),clientUserAgent:j(d),sourceTool:j(e),sourceToolLabel:j(f),sourceHost:j(a.sourceHost||l(b,"x-9r-source-host","origin","referer"))}}function n(a,b){let c={messages:a.messages||[],model:a.model,stream:b};for(let b of g)void 0!==a[b]&&(c[b]=a[b]);return c}function o(a){if(!a||"object"!=typeof a)return null;let b=a.usage||a.response?.usage;if(b?.input_tokens!==void 0||b?.output_tokens!==void 0)return{prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cache_read_input_tokens:b.cache_read_input_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens??b.input_tokens_details?.cache_creation_tokens??b.prompt_tokens_details?.cache_creation_tokens,cached_tokens:b.input_tokens_details?.cached_tokens??b.prompt_tokens_details?.cached_tokens,input_tokens_details:b.input_tokens_details,prompt_tokens_details:b.prompt_tokens_details,reasoning_tokens:b.output_tokens_details?.reasoning_tokens||b.completion_tokens_details?.reasoning_tokens};if(b?.prompt_tokens!==void 0)return{prompt_tokens:b.prompt_tokens||0,completion_tokens:b.completion_tokens||0,cached_tokens:b.prompt_tokens_details?.cached_tokens??b.prompt_cache_hit_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens??b.input_tokens_details?.cache_creation_tokens??b.prompt_tokens_details?.cache_creation_tokens,reasoning_tokens:b.completion_tokens_details?.reasoning_tokens,input_tokens_details:b.input_tokens_details,prompt_tokens_details:b.prompt_tokens_details,completion_tokens_details:b.completion_tokens_details};let c=a.usageMetadata||a.response?.usageMetadata;if(c)return{prompt_tokens:c.promptTokenCount||0,completion_tokens:c.candidatesTokenCount||0,total_tokens:c.totalTokenCount,cached_tokens:c.cachedContentTokenCount,reasoning_tokens:c.thoughtsTokenCount};if(!0===a.done||a.response?.done===!0){let b=a.response||a;if("number"==typeof b.prompt_eval_count||"number"==typeof b.eval_count)return{prompt_tokens:b.prompt_eval_count||0,completion_tokens:b.eval_count||0,total_tokens:(b.prompt_eval_count||0)+(b.eval_count||0)}}return null}function p(a,b={}){return{provider:a.provider||"unknown",model:a.model||"unknown",connectionId:a.connectionId||void 0,timestamp:new Date().toISOString(),latency:a.latency||{ttft:0,total:0},tokens:a.tokens||{prompt_tokens:0,completion_tokens:0},request:a.request,providerRequest:a.providerRequest||null,providerResponse:a.providerResponse||null,response:a.response||{},status:a.status||"success",rtkStats:a.rtkStats||b.rtkStats||null,...b}}function q(a){if(!0===a||1===a)return!0;if(!1===a||0===a)return!1;if("string"==typeof a){let b=a.trim().toLowerCase();if(["true","1","yes","on","enabled"].includes(b))return!0;if(["false","0","no","off","disabled"].includes(b))return!1}return null}function r(a,b=0){let c=Number(a);return Number.isFinite(c)?Math.max(0,Math.trunc(c)):b}function s({provider:a,model:b,tokens:c,connectionId:f,apiKey:g,endpoint:h,label:i="USAGE",status:j="ok",statusCode:k=200,errorCode:l="",errorType:m="",errorMessage:n="",latencyMs:o=0,ttftMs:p=0,isStreaming:t=!1,requestContext:u={},meta:v={},requestPolicyMeta:w={},rtkStats:x=null}){let y=c&&"object"==typeof c?c:{},z=y.input_tokens??y.prompt_tokens??0,A=y.output_tokens??y.completion_tokens??0,B=k>=400||j&&!["ok","success","200"].includes(String(j).toLowerCase()),C=new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"}),D=f?` | account=${f.slice(0,8)}...`:"",E=B?e.lm.red||"":e.lm.green||"";console.log(`${E}[${C}] [${i}] ${String(a||"unknown").toUpperCase()} | in=${z} | out=${A}${D}${e.lm.reset}`);let F=Number(y.prompt_tokens??y.input_tokens??0)||0,G=Number(y.completion_tokens??y.output_tokens??0)||0,H=Number(y.cached_tokens??y.cache_read_input_tokens??y.input_tokens_details?.cached_tokens??y.prompt_tokens_details?.cached_tokens??0)||0,I=Number(y.cache_creation_input_tokens??y.input_tokens_details?.cache_creation_tokens??y.prompt_tokens_details?.cache_creation_tokens??0)||0,J=Number(y.reasoning_tokens??y.output_tokens_details?.reasoning_tokens??y.completion_tokens_details?.reasoning_tokens??0)||0,K=null!=y.cache_read_input_tokens||null!=y.cache_creation_input_tokens,L=!!(y.input_tokens_details||y.prompt_tokens_details),M=void 0!==y.prompt_tokens&&void 0!==y.input_tokens&&Number(y.prompt_tokens)!==Number(y.input_tokens),N=K&&!L&&!M,O=N?F:Math.max(0,F-H-I),P=["gemini","gemini-cli","antigravity"].includes(String(a||"").trim().toLowerCase()),Q=y.output_tokens_details?.reasoning_tokens!==void 0||y.completion_tokens_details?.reasoning_tokens!==void 0,R=function(a={}){let b=a&&"object"==typeof a&&!Array.isArray(a)?a:{};return{thinkingEnabled:q(b.thinkingEnabled),thinkingAutoOff:!0===q(b.thinkingAutoOff),thinkingAutoOffReason:String(b.thinkingAutoOffReason||"").trim(),promptChars:r(b.promptChars,0),forceThinkingOffAboveChars:r(b.forceThinkingOffAboveChars,0)}}(w||v?.requestPolicyMeta||{});(0,d.Py)({provider:a||"unknown",model:b||"unknown",tokens:{prompt_tokens:F,completion_tokens:G,cached_tokens:H,cache_read_input_tokens:H,cache_creation_input_tokens:I,reasoning_tokens:J,display_total_input_tokens:N?F+H+I:F,display_new_input_tokens:O,display_cached_input_tokens:H,display_cache_creation_input_tokens:I,display_reasoning_tokens:J,display_output_tokens:P&&!Q?G+J:G},timestamp:new Date().toISOString(),connectionId:f||void 0,apiKey:g||void 0,endpoint:h||null,status:j,statusCode:k,errorCode:l,errorType:m,errorMessage:n,latencyMs:o,ttftMs:p,isStreaming:t,thinkingEnabled:R.thinkingEnabled,thinkingAutoOff:R.thinkingAutoOff,thinkingAutoOffReason:R.thinkingAutoOffReason,promptChars:R.promptChars,forceThinkingOffAboveChars:R.forceThinkingOffAboveChars,...u,meta:{...v,...x?{rtkStats:x}:{},requestContext:u,requestPolicyMeta:R}}).catch(()=>{})}function t({provider:a="unknown",model:b="unknown",connectionId:c,apiKey:d,endpoint:e,statusCode:f=500,errorCode:g="unknown_error",errorType:h="error",errorMessage:i="",latencyMs:j=0,ttftMs:k=0,requestContext:l={},requestPolicyMeta:m={},meta:n={},rtkStats:o=null}){s({provider:a,model:b,tokens:{prompt_tokens:0,completion_tokens:0},connectionId:c,apiKey:d,endpoint:e,status:"error",statusCode:f,errorCode:g,errorType:h,errorMessage:i,latencyMs:j,ttftMs:k,requestContext:l,requestPolicyMeta:m||l?.requestPolicyMeta||n?.requestPolicyMeta||{},meta:n,rtkStats:o,label:"ERROR USAGE"})}},92500:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{w:()=>C});var e=c(57647),f=c(10729),g=c(14170),h=c(71857),i=c(59657),j=c(8590),k=c(71336),l=c(44404),m=c(43659),n=c(41004),o=c(27349),p=c(47370),q=c(35901),r=c(55330),s=c(86171),t=c(81626),u=c(5016),v=c(20623),w=c(324),x=c(14724),y=c(60125),z=c(94882),A=a([r]);function B(a={}){(0,q.jk)(a).catch(()=>{}),(0,s.sx)({provider:a.provider,model:a.model,connectionId:a.connectionId,apiKey:a.apiKey,endpoint:a.endpoint,statusCode:a.gatewayStatusCode||a.statusCode||a.upstreamStatusCode||500,errorCode:a.errorCode,errorType:a.errorType,errorMessage:a.errorMessageShort||a.errorMessage,latencyMs:a.latencyMs,requestContext:a.requestContext||{},requestPolicyMeta:a.requestPolicyMeta||a.requestContext?.requestPolicyMeta||{},meta:{errorSource:a.errorSource,upstreamStatusCode:a.upstreamStatusCode,statusClass:a.statusClass},rtkStats:a.rtkStats||null})}async function C({body:a,modelInfo:b,credentials:c,log:d,onCredentialsRefreshed:q,onRequestSuccess:A,onDisconnect:D,clientRawRequest:E,connectionId:F,userAgent:G,apiKey:H,ccFilterNaming:I,rtkEnabled:J,cavemanEnabled:K,cavemanLevel:L,sourceFormatOverride:M,providerThinking:N,contentLoggingMode:O="inherit",requestPolicyMeta:P=null,skipProviderRetry:Q=!1}){let R,S,T,U,V,W,{provider:X,model:Y}=b,Z=Date.now(),$=M||(0,e.Tz)(a),_=(0,s.wS)({headers:E?.headers||{},requestId:E?.requestId,sessionId:E?.sessionId});if(E)for(let a of["accountName","connectionName","accountEmail","accountDisplayName","ownerUser","connectionScope","visibility"])E[a]&&!_[a]&&(_[a]=E[a]);P&&"object"==typeof P&&(_.requestPolicyMeta=P);let aa=(0,w.J)(E?.headers||{},a),ab="claude"===aa&&"claude"===X;if(!ab){let b=(0,o.c)(a,Y,G,I);if(b)return b}let ac=l.Xg[X]||X,ad=(0,l.ux)(ac,Y)||(0,e.jJ)(X),ae=(0,l.cY)(ac,Y),af=P?.thinkingEnabled===!1||a?.enable_thinking===!1||a?.chat_template_kwargs?.enable_thinking===!1||a?.thinking?.type==="disabled";if(!ab&&N?.mode&&"auto"!==N.mode&&!af){let b=N.mode;"on"!==b||a.thinking?"off"!==b||a.thinking?a.reasoning_effort||(a={...a,reasoning_effort:b}):a={...a,thinking:{type:"disabled"}}:(console.log("Injecting provider-level thinking config override: on"),a={...a,thinking:{type:"enabled",budget_tokens:1e4}})}let ag=!0===a.stream||$===g.h.ANTIGRAVITY||$===g.h.GEMINI||$===g.h.GEMINI_CLI,ah="openai"===X||"codex"===X||"commandcode"===X,ai=!!ah||!0===a.stream,aj=(0,w.J)(E?.headers||{},a);"deepseek-tui"===aj&&!0!==a.stream&&(ai=!1);let ak=E?.headers?.accept||"",al=ak.includes("application/json"),am=ak.includes("text/event-stream");al&&!am&&!0!==a.stream&&(ai=!1);let an=c?._connection||{},ao={provider:X,connectionId:F,connectionName:c?.connectionName||c?.name||c?.providerSpecificData?.connectionName||c?.providerSpecificData?.name||"",accountName:c?.email||c?.accountName||c?.providerSpecificData?.email||c?.providerSpecificData?.accountName||c?.providerSpecificData?.account_name||c?.providerSpecificData?.login||c?.providerSpecificData?.username||"",accountEmail:an.email||E?.accountEmail||"",accountDisplayName:an.displayName||an.name||E?.accountDisplayName||"",ownerUser:an.ownerUser||E?.ownerUser||"",connectionScope:an.scope||E?.connectionScope||"",visibility:an.visibility||E?.visibility||"",contentLoggingMode:O,routingMetadata:E?.routingMetadata||null},ap=await (0,k.q7)($,ad,Y,ao);E&&ap.logClientRawRequest(E.endpoint,E.body,E.headers),ap.logRawRequest(a),d?.debug?.("FORMAT",`${$} → ${ad} | stream=${ai}`);let aq=(0,w.Q)(aa,X);if(aa&&!_.sourceTool&&(_.sourceTool=aa,_.sourceToolLabel||(_.sourceToolLabel=aa)),aq)d?.debug?.("PASSTHROUGH",`${aa} → ${X} | native lossless`),R={...a,model:Y};else{if(!(R=(0,f.GH)($,ad,Y,a,ai,c,X,ap,ae,F,aa))){(0,p.uw)(Y,X,F,!1,!0);let a=`Failed to translate request for ${$} → ${ad}`;return B({..._,requestContext:_,provider:X,model:Y,connectionId:F,apiKey:H,endpoint:E?.endpoint,gatewayStatusCode:n.gx.BAD_REQUEST,errorSource:"gateway_validation",errorType:"invalid_request",errorCode:"translate_request_failed",errorMessageShort:a,latencyMs:Date.now()-Z}),(0,m.A1)(n.gx.BAD_REQUEST,a,void 0,$)}S=R._toolNameMap,delete R._toolNameMap,R.model=Y}if("claude"===aa&&!ab&&Array.isArray(R.tools)){let{tools:a,stripped:b}=(0,x.F)(R.tools);b.length>0&&(R.tools=a,d?.debug?.("TOOLDEDUP",`stripped ${b.length}: ${b.slice(0,3).join(", ")}${b.length>3?"...":""}`))}let ar=aq?$:ad,as=(0,z.BI)(R,J),at=(0,z.Qi)(as,J),au=(0,z.fT)(as);au&&console.log(au),K&&L&&((0,y.p)(R,ar,L),d?.debug?.("CAVEMAN",`${L} | ${ar}`));let av=(0,r.SB)(X);(0,p.uw)(Y,X,F,!0),(0,p.E5)({model:Y,provider:X,connectionId:F,status:"PENDING"}).catch(()=>{});let aw=R.messages?.length||R.input?.length||R.contents?.length||R.request?.contents?.length||0;d?.debug?.("REQUEST",`${X.toUpperCase()} | ${Y} | ${aw} msgs`);let ax=(0,i.jd)({onDisconnect:a=>{(0,p.uw)(Y,X,F,!1),D&&D(a)},onError:()=>(0,p.uw)(Y,X,F,!1),log:d,provider:X,model:Y}),ay={connectionProxyEnabled:c?.providerSpecificData?.connectionProxyEnabled===!0,connectionProxyUrl:c?.providerSpecificData?.connectionProxyUrl||"",connectionNoProxy:c?.providerSpecificData?.connectionNoProxy||"",vercelRelayUrl:c?.providerSpecificData?.vercelRelayUrl||""};if(ay.vercelRelayUrl){let a=c?.connectionName||c?.connectionId||"unknown",b=c?.providerSpecificData?.connectionProxyPoolId||"none";d?.info?.("PROXY",`${X.toUpperCase()} | ${Y} | conn=${a} | pool=${b} | vercel-relay=${ay.vercelRelayUrl}`)}else if(ay.connectionProxyEnabled&&ay.connectionProxyUrl){let a=ay.connectionProxyUrl;try{let b=new URL(ay.connectionProxyUrl),c=b.port?`:${b.port}`:"";a=`${b.protocol||"http:"}//${b.hostname||""}${c}`}catch{}let b=c?.providerSpecificData?.connectionProxyPoolId||"none",e=c?.connectionName||c?.connectionId||"unknown";d?.info?.("PROXY",`${X.toUpperCase()} | ${Y} | conn=${e} | pool=${b} | url=${a}`)}if(ay.connectionProxyEnabled&&ay.connectionNoProxy){let a=c?.connectionName||c?.connectionId||"unknown";d?.debug?.("PROXY",`${X.toUpperCase()} | ${Y} | conn=${a} | no_proxy=${ay.connectionNoProxy}`)}let az=!1,aA=(a,b,c,d)=>{az=!0,ap.logTargetRequest(a,b,c,d)};try{let a=await av.execute({model:Y,body:R,stream:ai,credentials:c,signal:ax.signal,log:d,proxyOptions:ay,skipRetry:Q,clientRequest:ab?{nativeClaudePassthrough:!0,headers:E?.headers||{},query:E?.query||""}:null,onBeforeFetch:aA});T=a.response,U=a.url,V=a.headers,W=a.transformedBody,az||ap.logTargetRequest(U,V,W)}catch(f){let b=f?.code==="UPSTREAM_HEADERS_TIMEOUT",c="AbortError"===f.name?499:b?n.gx.GATEWAY_TIMEOUT:n.gx.BAD_GATEWAY,d=Date.now()-Z;if((0,p.uw)(Y,X,F,!1,!0),(0,p.E5)({model:Y,provider:X,connectionId:F,status:`FAILED ${c}`}).catch(()=>{}),(0,p.ox)((0,s.$R)({provider:X,model:Y,connectionId:F,latency:{ttft:0,total:d},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,s.Fo)(a,ai),providerRequest:R||null,response:{error:f.message||String(f),status:c,thinking:null},status:"error",rtkStats:at})).catch(()=>{}),B({..._,requestContext:_,provider:X,model:Y,connectionId:F,accountName:ao.accountName,apiKey:H,endpoint:E?.endpoint,gatewayStatusCode:c,errorSource:"AbortError"===f.name?"client_abort":b?"upstream_timeout":"network",errorType:"AbortError"===f.name?"client_abort":b?"upstream_headers_timeout":"network_error",errorCode:"AbortError"===f.name?"client_abort":b?"upstream_headers_timeout":"provider_execute_failed",errorMessageShort:f.message||String(f),latencyMs:d,rtkStats:at}),"AbortError"===f.name)return ax.handleError(f),(0,m.A1)(499,"Request aborted",void 0,$);if(b){let a=`${X} did not return response headers within timeout (model: ${Y})`;return console.log(`${h.lm.red}[TIMEOUT] ${a}${h.lm.reset}`),(0,m.A1)(n.gx.GATEWAY_TIMEOUT,a,void 0,$)}let e=(0,m.lR)(f,X,Y,n.gx.BAD_GATEWAY);return console.log(`${h.lm.red}[ERROR] ${e}${h.lm.reset}`),(0,m.A1)(n.gx.BAD_GATEWAY,e,void 0,$)}if(!av.noAuth&&(T.status===n.gx.UNAUTHORIZED||T.status===n.gx.FORBIDDEN))try{let a=await (0,j.qZ)(()=>av.refreshCredentials(c,d),3,d);if(a?.accessToken||a?.copilotToken){if(d?.info?.("TOKEN",`${X.toUpperCase()} | refreshed`),Object.assign(c,a),q)try{await q(a)}catch(a){d?.warn?.("TOKEN",`onCredentialsRefreshed failed: ${a.message}`)}try{let a=await av.execute({model:Y,body:R,stream:ai,credentials:c,signal:ax.signal,log:d,proxyOptions:ay,skipRetry:Q,clientRequest:ab?{nativeClaudePassthrough:!0,headers:E?.headers||{},query:E?.query||""}:null,onBeforeFetch:aA});T=a.response,U=a.url,V=a.headers,W=a.transformedBody||W}catch(c){let a=c?.code==="UPSTREAM_HEADERS_TIMEOUT";if(c?.name==="AbortError")return ax.handleError(c),(0,m.A1)(499,"Request aborted",void 0,$);if(a){let a=`${X} did not return response headers within timeout after token refresh (model: ${Y})`;return d?.warn?.("TOKEN",a),(0,m.A1)(n.gx.GATEWAY_TIMEOUT,a,void 0,$)}let b=(0,m.lR)(c,X,Y,n.gx.BAD_GATEWAY);return d?.warn?.("TOKEN",`${X.toUpperCase()} | retry after refresh failed: ${c?.message||c}`),(0,m.A1)(n.gx.BAD_GATEWAY,b,void 0,$)}}else d?.warn?.("TOKEN",`${X.toUpperCase()} | refresh failed`)}catch(a){d?.warn?.("TOKEN",`${X.toUpperCase()} | refresh threw: ${a.message}`)}if(!T.ok){(0,p.uw)(Y,X,F,!1,!0);let{statusCode:b,message:c,resetsAtMs:d}=await (0,m.zL)(T,av),e=Date.now()-Z;(0,p.E5)({model:Y,provider:X,connectionId:F,status:`FAILED ${b}`}).catch(()=>{}),(0,p.ox)((0,s.$R)({provider:X,model:Y,connectionId:F,latency:{ttft:0,total:e},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,s.Fo)(a,ai),providerRequest:W||R||null,response:{error:c,status:b,thinking:null},status:"error",rtkStats:at})).catch(()=>{}),B({..._,requestContext:_,provider:X,model:Y,connectionId:F,accountName:ao.accountName,apiKey:H,endpoint:E?.endpoint,gatewayStatusCode:b,upstreamStatusCode:T.status,errorSource:"provider_http",errorMessageShort:c,upstreamErrorBodySnippet:c,latencyMs:e,rtkStats:at});let f=(0,m.lR)(Error(c),X,Y,b);return console.log(`${h.lm.red}[ERROR] ${f}${h.lm.reset}`),ap.logError(Error(c),W||R),(0,m.A1)(b,f,d,$)}let aB={provider:X,model:Y,body:a,stream:ai,translatedBody:R,finalBody:W,requestStartTime:Z,connectionId:F,apiKey:H,clientRawRequest:E,onRequestSuccess:A,requestContext:_,sourceFormat:$,targetFormat:ad,requestPolicyMeta:P,rtkStats:at},aC=a=>(0,p.E5)({model:Y,provider:X,connectionId:F,...a}).catch(()=>{}),aD=()=>(0,p.uw)(Y,X,F,!1);if(!ag&&ah){let a=await (0,t.I)({...aB,providerResponse:T,sourceFormat:$,trackDone:aD,appendLog:aC});if(a)return ax.handleComplete(),a}if(!ai){let a=await (0,u.N)({...aB,providerResponse:T,sourceFormat:$,targetFormat:ad,reqLogger:ap,toolNameMap:S,trackDone:aD,appendLog:aC});return ax.handleComplete(),a}let{onStreamComplete:aE}=(0,v.$)({...aB,reqLogger:ap,providerResponseInfo:{status:T.status,statusText:T.statusText,headers:T.headers}});return(0,v.M)({...aB,providerResponse:T,sourceFormat:$,targetFormat:ad,userAgent:G,reqLogger:ap,toolNameMap:S,streamController:ax,onStreamComplete:aE})}r=(A.then?(await A)():A)[0],d()}catch(a){d(a)}})},94882:(a,b,c)=>{c.d(b,{BI:()=>_,fT:()=>ad,Qi:()=>ac});let d="v0.42.4",e=["node_modules",".git","target","__pycache__",".next","dist","build",".venv","venv",".cache",".idea",".vscode",".DS_Store"];function f(a,b=500){let c=[],d="",e=0,g=0,h=!1,i=0,j=0,k=!1;for(let f of a.split("\n")){if(f.startsWith("diff --git")){j>0&&(c.push(` ... (${j} lines truncated)`),k=!0,j=0),d&&(e>0||g>0)&&c.push(` +${e} -${g}`);let a=f.split(" b/");d=a.length>1?a.slice(1).join(" b/"):"unknown",c.push(`
|
|
141
|
+
`,c=!0)}catch{}c||(b=a.startsWith("data:")&&!a.startsWith("data: ")?"data: "+a.slice(5)+"\n":a+"\n"),q?.appendConvertedChunk?.(b),f.enqueue(k.encode(b));continue}if(!l)continue;let o=(0,h.tV)(l,c);if(!o)continue;if(o&&o.done&&c!==e.h.OLLAMA){let a="data: [DONE]\n\n";q?.appendConvertedChunk?.(a),f.enqueue(k.encode(a)),K=!0;continue}let p=r(o);p.content&&(G+=p.content.length,H+=p.content),p.thinking&&(G+=p.thinking.length,I+=p.thinking);let t=(0,g.f5)(o);n(L,o,p,t),t&&(F.usage=t);let v=(0,d.Y8)(c,m,o,F);if(F?.error&&!F.errorFrameSent){F.errorFrameSent=!0;let a=F.error.message||JSON.stringify(F.error),b=(0,i.j7)(j.gx.BAD_GATEWAY,a,m);q?.appendConvertedChunk?.(b),f.enqueue(k.encode(b)),K=!0;continue}if(v?._openaiIntermediate)for(let a of v._openaiIntermediate){let b=(0,h.v8)(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(v?.length>0)for(let a of v){if(!(0,h.c2)(a,m))continue;let b="message_delta"===a.type||a.choices?.[0]?.finish_reason;if(F.finishReason&&b&&!(0,g.Gh)(a.usage)&&G>0){let b=(0,g.OF)(z,G,m);a.usage=(0,g.WL)(b,m),F.usage=b}else if(F.finishReason&&b&&F.usage){let b=(0,g.O9)(F.usage);a.usage=(0,g.WL)(b,m)}let c=(0,h.v8)(a,m);q?.appendConvertedChunk?.(c),f.enqueue(k.encode(c))}}},flush(a){(0,f.uw)(x,p,y,!1);try{let i=E.decode();if(i&&(C+=i),b===u){if(C){let b=C;C.startsWith("data:")&&!C.startsWith("data: ")&&(b="data: "+C.slice(5)),q?.appendConvertedChunk?.(b),a.enqueue(k.encode(b))}if(!(0,g.Gh)(D)&&G>0&&(D=(0,g.OF)(z,G,e.h.OPENAI)),(0,g.Gh)(D)?(0,g.IF)(p,D,x,y,B):(0,f.E5)({model:x,provider:p,connectionId:y,tokens:null,status:"200 OK"}).catch(()=>{}),!K){let b="data: [DONE]\n\n";q?.appendConvertedChunk?.(b),a.enqueue(k.encode(b)),K=!0}A&&A({content:H,thinking:I,providerStream:o(L,H,I)},D,J);return}if(C.trim()){let b=(0,h.tV)(C.trim());if(b&&!b.done){n(L,b,r(b),(0,g.f5)(b));let f=(0,d.Y8)(c,m,b,F);if(f?._openaiIntermediate)for(let a of f._openaiIntermediate){let b=(0,h.v8)(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(f?.length>0)for(let b of f){let c=(0,h.v8)(b,m);q?.appendConvertedChunk?.(c),a.enqueue(k.encode(c))}}}let j=(0,d.Y8)(c,m,null,F);if(j?._openaiIntermediate)for(let a of j._openaiIntermediate){let b=(0,h.v8)(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(j?.length>0)for(let b of j){let c=(0,h.v8)(b,m);q?.appendConvertedChunk?.(c),a.enqueue(k.encode(c))}if(!K){let b="data: [DONE]\n\n";q?.appendConvertedChunk?.(b),a.enqueue(k.encode(b)),K=!0}!(0,g.Gh)(F?.usage)&&G>0&&(F.usage=(0,g.OF)(z,G,m)),(0,g.Gh)(F?.usage)?(0,g.IF)(F.provider||c,F.usage,x,y,B):(0,f.E5)({model:x,provider:p,connectionId:y,tokens:null,status:"200 OK"}).catch(()=>{}),A&&A({content:H,thinking:I,providerStream:o(L,H,I),streamError:F?.error||null},F?.usage,J)}catch(a){console.log("Error in flush:",a)}}})}function w(a,b,c=null,d=null,e=null,f=null,g=null,h=null,i=null,j=null){return v({mode:t,targetFormat:a,sourceFormat:b,provider:c,reqLogger:d,toolNameMap:e,model:f,connectionId:g,body:h,onStreamComplete:i,apiKey:j})}function x(a=null,b=null,c=null,d=null,e=null,f=null,g=null){return v({mode:u,provider:a,reqLogger:b,model:c,connectionId:d,body:e,onStreamComplete:f,apiKey:g})}},81626:(a,b,c)=>{function d(a,b){let c;if(!a.trim())return;let d=a.match(/^event:\s*(.+)$/m),e=a.match(/^data:\s*(.+)$/m);if(!d||!e)return;let f=d[1].trim(),g=e[1].trim();if("[DONE]"!==g){try{c=JSON.parse(g)}catch{return}"response.created"===f?(b.responseId=c.response?.id||b.responseId,b.created=c.response?.created_at||b.created):"response.output_item.done"===f?b.items.set(c.output_index??0,c.item):"response.completed"===f?(b.status="completed",c.response?.usage&&(b.usage.input_tokens=c.response.usage.input_tokens||0,b.usage.output_tokens=c.response.usage.output_tokens||0,b.usage.total_tokens=c.response.usage.total_tokens||0)):"response.failed"===f&&(b.status="failed")}}c.d(b,{I:()=>o,F:()=>n});let e={input_tokens:0,output_tokens:0,total_tokens:0};async function f(a){if(!a||"function"!=typeof a.getReader)return{id:`resp_${Date.now()}`,object:"response",created_at:Math.floor(Date.now()/1e3),status:"failed",output:[],usage:{...e}};let b=a.getReader(),c=new TextDecoder,f="",g={responseId:"",created:Math.floor(Date.now()/1e3),status:"in_progress",usage:{...e},items:new Map};try{for(;;){let{done:a,value:e}=await b.read();if(a)break;let h=(f+=c.decode(e,{stream:!0})).split("\n\n");for(let a of(f=h.pop()||"",h))d(a,g)}f.trim()&&d(f,g)}finally{b.releaseLock()}let h=[],i=g.items.size>0?Math.max(...g.items.keys()):-1;for(let a=0;a<=i;a++)h.push(g.items.get(a)||{type:"message",content:[],role:"assistant"});return{id:g.responseId||`resp_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,object:"response",created_at:g.created,status:g.status||"completed",output:h,usage:g.usage}}var g=c(43659),h=c(41004),i=c(14170),j=c(86171),k=c(9902),l=c(47370);function m(a){if(!a?.content||!Array.isArray(a.content))return"";let b=a.content.find(a=>"output_text"===a.type);if("string"==typeof b?.text)return b.text;let c=a.content.find(a=>"string"==typeof a.text);return"string"==typeof c?.text?c.text:""}function n(a,b){let c=[];for(let b of String(a||"").split("\n")){let a=b.trim();if(!a.startsWith("data:"))continue;let d=a.slice(5).trim();if(d&&"[DONE]"!==d)try{c.push(JSON.parse(d))}catch{}}if(0===c.length)return null;let d=c[0],e=[],f=[],g=new Map,h="stop",i=null,j=!1;for(let a of c){let b=a?.choices?.[0];b&&(j=!0);let c=b?.delta||{};if("string"==typeof c.content&&c.content.length>0&&e.push(c.content),"string"==typeof c.reasoning_content&&c.reasoning_content.length>0&&f.push(c.reasoning_content),b?.finish_reason&&(h=b.finish_reason),a?.usage&&"object"==typeof a.usage&&(i=a.usage),Array.isArray(c.tool_calls))for(let a of c.tool_calls){let b=a.index??0;g.has(b)||g.set(b,{id:a.id||"",type:"function",function:{name:"",arguments:""}});let c=g.get(b);a.id&&(c.id=a.id),a.function?.name&&(c.function.name+=a.function.name),a.function?.arguments&&(c.function.arguments+=a.function.arguments)}}if(!j)return null;let k={role:"assistant",content:e.join("")||(g.size>0?null:"")};f.length>0&&(k.reasoning_content=f.join("")),g.size>0&&(k.tool_calls=[...g.entries()].sort((a,b)=>a[0]-b[0]).map(([,a])=>a));let l={id:d.id||`chatcmpl-${Date.now()}`,object:"chat.completion",created:d.created||Math.floor(Date.now()/1e3),model:d.model||b||"unknown",choices:[{index:0,message:k,finish_reason:h}]};return i&&(l.usage=i),l}async function o({providerResponse:a,sourceFormat:b,provider:c,model:d,body:e,stream:p,translatedBody:q,finalBody:r,requestStartTime:s,connectionId:t,apiKey:u,clientRawRequest:v,onRequestSuccess:w,trackDone:x,appendLog:y,requestContext:z,requestPolicyMeta:A,rtkStats:B=null}){let C=a.headers.get("content-type")||"";if(!(C.includes("text/event-stream")||""===C&&"codex"===c))return null;x();let D={provider:c,model:d,connectionId:t,request:(0,j.Fo)(e,p),providerRequest:r||q||null};if("codex"===c||b===i.h.OPENAI_RESPONSES)try{let g,h=await f(a.body);w&&await w();let{msgItem:n,textContent:o}=function(a){if(!Array.isArray(a))return{msgItem:null,textContent:null};let b=a.filter(a=>a?.type==="message");if(0===b.length)return{msgItem:null,textContent:null};for(let a=b.length-1;a>=0;a--){let c=m(b[a]);if(c.length>0)return{msgItem:b[a],textContent:c}}let c=b[b.length-1];return{msgItem:c,textContent:m(c)}}(h.output),p=(0,j.YZ)({usage:h.usage||null,body:e,responseBody:h,contentText:o||"",format:b});y({tokens:p,status:"200 OK"});let q=Date.now()-s;if((0,j.qr)({provider:c,model:d,tokens:p,connectionId:t,apiKey:u,endpoint:v?.endpoint,status:"ok",statusCode:200,latencyMs:q,ttftMs:q,isStreaming:!1,requestContext:z||{},requestPolicyMeta:A,rtkStats:B,meta:p?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:p.usageEstimatedReason}:{}}),(0,l.ox)((0,j.$R)({...D,latency:{ttft:q,total:q},tokens:{prompt_tokens:p.input_tokens??p.prompt_tokens??0,completion_tokens:p.output_tokens??p.completion_tokens??0},response:{content:o,thinking:null,finish_reason:h.status||"unknown"},status:"success",rtkStats:B},{endpoint:v?.endpoint||null,requestId:z?.requestId})).catch(()=>{}),b===i.h.OPENAI_RESPONSES)return{success:!0,response:new Response(JSON.stringify(h),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})};let r=p.input_tokens??p.prompt_tokens??0,x=p.output_tokens??p.completion_tokens??0,C=(h.output||[]).filter(a=>"function_call"===a.type).map((a,b)=>({id:a.call_id||`call_${a.name}_${Date.now()}_${b}`,type:"function",function:{name:a.name,arguments:"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments||{})}})),E=C.length>0;if(b===i.h.ANTIGRAVITY||b===i.h.GEMINI||b===i.h.GEMINI_CLI)g={response:{candidates:[{content:{role:"model",parts:[{text:o||""}]},finishReason:"STOP",index:0}],usageMetadata:{promptTokenCount:r,candidatesTokenCount:x,totalTokenCount:r+x},modelVersion:d,responseId:h.id||`resp_${Date.now()}`}};else if(b===i.h.CLAUDE){let a={id:h.id||`chatcmpl-${Date.now()}`,model:h.model||d,choices:[{index:0,message:{role:"assistant",content:o||(E?null:""),...E?{tool_calls:C}:{}},finish_reason:E?"tool_calls":"completed"===h.status?"stop":h.status||"stop"}]};g=(0,k.F)(a,{input_tokens:r,output_tokens:x})}else{let a={role:"assistant",content:o||(E?null:"")};E&&(a.tool_calls=C);let b=E?"tool_calls":"completed"===h.status?"stop":h.status||"stop";g={id:h.id||`chatcmpl-${Date.now()}`,object:"chat.completion",created:h.created_at||Math.floor(Date.now()/1e3),model:h.model||d,choices:[{index:0,message:a,finish_reason:b}],usage:{prompt_tokens:r,completion_tokens:x,total_tokens:r+x}}}return{success:!0,response:new Response(JSON.stringify(g),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}catch(a){return console.error("[ChatCore] Responses API SSE→JSON failed:",a),(0,g.A1)(h.gx.BAD_GATEWAY,"Failed to convert streaming response to JSON",void 0,b)}try{let f=await a.text(),m=n(f,d);if(!m)return(0,g.A1)(h.gx.BAD_GATEWAY,"Invalid SSE response for non-streaming request",void 0,b);w&&await w();let o=(0,j.YZ)({usage:m.usage||null,body:e,responseBody:m,contentText:`${m.choices?.[0]?.message?.content||""}${m.choices?.[0]?.message?.reasoning_content||""}`,format:b});y({tokens:o,status:"200 OK"});let p=Date.now()-s;(0,j.qr)({provider:c,model:d,tokens:o,connectionId:t,apiKey:u,endpoint:v?.endpoint,status:"ok",statusCode:200,latencyMs:p,ttftMs:p,isStreaming:!1,requestContext:z||{},requestPolicyMeta:A,rtkStats:B,meta:o?.usageEstimated?{usageEstimated:!0,usageEstimatedReason:o.usageEstimatedReason}:{}}),(0,l.ox)((0,j.$R)({...D,latency:{ttft:p,total:p},tokens:o,response:{content:m.choices?.[0]?.message?.content||null,thinking:m.choices?.[0]?.message?.reasoning_content||null,finish_reason:m.choices?.[0]?.finish_reason||"unknown"},status:"success",rtkStats:B},{endpoint:v?.endpoint||null,requestId:z?.requestId})).catch(()=>{});let q=m;if(b===i.h.CLAUDE)q=(0,k.F)(m,o);else if(b===i.h.OPENAI_RESPONSES)q=(0,k.P)(m,o);else if(m?.choices)for(let a of m.choices)a?.message?.reasoning_content&&a.message.content&&delete a.message.reasoning_content;return{success:!0,response:new Response(JSON.stringify(q),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}catch(a){return console.error("[ChatCore] Chat Completions SSE→JSON failed:",a),(0,g.A1)(h.gx.BAD_GATEWAY,"Failed to convert streaming response to JSON",void 0,b)}}},86171:(a,b,c)=>{c.d(b,{$R:()=>p,Fo:()=>n,MK:()=>o,YZ:()=>i,qr:()=>s,sx:()=>t,wS:()=>m});var d=c(99703),e=c(71857),f=c(73483);let g=["temperature","top_p","top_k","max_tokens","max_completion_tokens","thinking","reasoning","enable_thinking","presence_penalty","frequency_penalty","seed","stop","tools","tool_choice","response_format","prediction","store","metadata","n","logprobs","top_logprobs","logit_bias","user","parallel_tool_calls"];function h(a){return(function a(b,c=new Set){if(null==b)return"";if("string"==typeof b)return b;if("object"!=typeof b||c.has(b))return"";if(c.add(b),Array.isArray(b))return b.map(b=>a(b,c)).filter(Boolean).join("");let d="";for(let e of("string"==typeof b.content&&(d+=b.content),"string"==typeof b.reasoning_content&&(d+=b.reasoning_content),"string"==typeof b.text&&(d+=b.text),"string"==typeof b.output_text&&(d+=b.output_text),"string"==typeof b.delta?.content&&(d+=b.delta.content),"string"==typeof b.delta?.reasoning_content&&(d+=b.delta.reasoning_content),"string"==typeof b.delta?.text&&(d+=b.delta.text),"string"==typeof b.delta?.thinking&&(d+=b.delta.thinking),["message","choices","candidates","content","parts","output","response","data","item","items","result","results","message_delta","delta"]))void 0!==b[e]&&"string"!=typeof b[e]&&(d+=a(b[e],c));return d})(a).trim()}function i({usage:a,body:b,responseBody:c,translatedResponse:d,contentText:e,format:g,reason:j="missing_provider_usage"}={}){if((0,f.Gh)(a))return a;let k="string"==typeof e&&e.length>0?e:h(d)||h(c);return{...(0,f.OF)(b,k.length,g),estimated:!0,usageEstimated:!0,usageEstimatedReason:j}}function j(a){return String(a||"").trim()}function k(a){return a?"function"==typeof a.entries?Object.fromEntries(a.entries()):"object"==typeof a?a:{}:{}}function l(a,...b){let c=k(a);for(let a of b){let b=c[a]??c[a.toLowerCase()]??c[a.toUpperCase()];if(null!=b)return String(b)}return""}function m(a={}){let b=k(a.headers||a.request?.headers||a.clientHeaders),c=a.clientIp||a.sourceIp||l(b,"x-forwarded-for","x-real-ip","cf-connecting-ip","x-client-ip")||a.ip||"",d=a.clientUserAgent||l(b,"user-agent")||"",e=a.sourceTool||l(b,"x-9r-source-tool","x-source-tool","x-client-tool","x-bluerouter-source-tool")||"",f=a.sourceToolLabel||l(b,"x-9r-source-tool-label","x-source-tool-label","x-client-tool-label")||e;return{requestId:j(a.requestId)||`req_${Date.now()}_${Math.random().toString(36).slice(2,10)}`,sessionId:j(a.sessionId||l(b,"x-session-id","x-conversation-id","x-request-session-id")),clientIp:j(c),clientHost:j(a.clientHost||l(b,"host","x-forwarded-host")),clientUserAgent:j(d),sourceTool:j(e),sourceToolLabel:j(f),sourceHost:j(a.sourceHost||l(b,"x-9r-source-host","origin","referer"))}}function n(a,b){let c={messages:a.messages||[],model:a.model,stream:b};for(let b of g)void 0!==a[b]&&(c[b]=a[b]);return c}function o(a){if(!a||"object"!=typeof a)return null;let b=a.usage||a.response?.usage;if(b?.input_tokens!==void 0||b?.output_tokens!==void 0)return{prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cache_read_input_tokens:b.cache_read_input_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens??b.input_tokens_details?.cache_creation_tokens??b.prompt_tokens_details?.cache_creation_tokens,cached_tokens:b.input_tokens_details?.cached_tokens??b.prompt_tokens_details?.cached_tokens,input_tokens_details:b.input_tokens_details,prompt_tokens_details:b.prompt_tokens_details,reasoning_tokens:b.output_tokens_details?.reasoning_tokens||b.completion_tokens_details?.reasoning_tokens};if(b?.prompt_tokens!==void 0)return{prompt_tokens:b.prompt_tokens||0,completion_tokens:b.completion_tokens||0,cached_tokens:b.prompt_tokens_details?.cached_tokens??b.prompt_cache_hit_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens??b.input_tokens_details?.cache_creation_tokens??b.prompt_tokens_details?.cache_creation_tokens,reasoning_tokens:b.completion_tokens_details?.reasoning_tokens,input_tokens_details:b.input_tokens_details,prompt_tokens_details:b.prompt_tokens_details,completion_tokens_details:b.completion_tokens_details};let c=a.usageMetadata||a.response?.usageMetadata;if(c)return{prompt_tokens:c.promptTokenCount||0,completion_tokens:c.candidatesTokenCount||0,total_tokens:c.totalTokenCount,cached_tokens:c.cachedContentTokenCount,reasoning_tokens:c.thoughtsTokenCount};if(!0===a.done||a.response?.done===!0){let b=a.response||a;if("number"==typeof b.prompt_eval_count||"number"==typeof b.eval_count)return{prompt_tokens:b.prompt_eval_count||0,completion_tokens:b.eval_count||0,total_tokens:(b.prompt_eval_count||0)+(b.eval_count||0)}}return null}function p(a,b={}){return{provider:a.provider||"unknown",model:a.model||"unknown",connectionId:a.connectionId||void 0,timestamp:new Date().toISOString(),latency:a.latency||{ttft:0,total:0},tokens:a.tokens||{prompt_tokens:0,completion_tokens:0},request:a.request,providerRequest:a.providerRequest||null,providerResponse:a.providerResponse||null,response:a.response||{},status:a.status||"success",rtkStats:a.rtkStats||b.rtkStats||null,...b}}function q(a){if(!0===a||1===a)return!0;if(!1===a||0===a)return!1;if("string"==typeof a){let b=a.trim().toLowerCase();if(["true","1","yes","on","enabled"].includes(b))return!0;if(["false","0","no","off","disabled"].includes(b))return!1}return null}function r(a,b=0){let c=Number(a);return Number.isFinite(c)?Math.max(0,Math.trunc(c)):b}function s({provider:a,model:b,tokens:c,connectionId:f,apiKey:g,endpoint:h,label:i="USAGE",status:j="ok",statusCode:k=200,errorCode:l="",errorType:m="",errorMessage:n="",latencyMs:o=0,ttftMs:p=0,isStreaming:t=!1,requestContext:u={},meta:v={},requestPolicyMeta:w={},rtkStats:x=null}){let y=c&&"object"==typeof c?c:{},z=y.input_tokens??y.prompt_tokens??0,A=y.output_tokens??y.completion_tokens??0,B=k>=400||j&&!["ok","success","200"].includes(String(j).toLowerCase()),C=new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"}),D=f?` | account=${f.slice(0,8)}...`:"",E=B?e.lm.red||"":e.lm.green||"";console.log(`${E}[${C}] [${i}] ${String(a||"unknown").toUpperCase()} | in=${z} | out=${A}${D}${e.lm.reset}`);let F=Number(y.prompt_tokens??y.input_tokens??0)||0,G=Number(y.completion_tokens??y.output_tokens??0)||0,H=Number(y.cached_tokens??y.cache_read_input_tokens??y.input_tokens_details?.cached_tokens??y.prompt_tokens_details?.cached_tokens??0)||0,I=Number(y.cache_creation_input_tokens??y.input_tokens_details?.cache_creation_tokens??y.prompt_tokens_details?.cache_creation_tokens??0)||0,J=Number(y.reasoning_tokens??y.output_tokens_details?.reasoning_tokens??y.completion_tokens_details?.reasoning_tokens??0)||0,K=null!=y.cache_read_input_tokens||null!=y.cache_creation_input_tokens,L=!!(y.input_tokens_details||y.prompt_tokens_details),M=void 0!==y.prompt_tokens&&void 0!==y.input_tokens&&Number(y.prompt_tokens)!==Number(y.input_tokens),N=K&&!L&&!M,O=N?F:Math.max(0,F-H-I),P=["gemini","gemini-cli","antigravity"].includes(String(a||"").trim().toLowerCase()),Q=y.output_tokens_details?.reasoning_tokens!==void 0||y.completion_tokens_details?.reasoning_tokens!==void 0,R=function(a={}){let b=a&&"object"==typeof a&&!Array.isArray(a)?a:{};return{thinkingEnabled:q(b.thinkingEnabled),thinkingAutoOff:!0===q(b.thinkingAutoOff),thinkingAutoOffReason:String(b.thinkingAutoOffReason||"").trim(),promptChars:r(b.promptChars,0),forceThinkingOffAboveChars:r(b.forceThinkingOffAboveChars,0)}}(w||v?.requestPolicyMeta||{});(0,d.Py)({provider:a||"unknown",model:b||"unknown",tokens:{prompt_tokens:F,completion_tokens:G,cached_tokens:H,cache_read_input_tokens:H,cache_creation_input_tokens:I,reasoning_tokens:J,display_total_input_tokens:N?F+H+I:F,display_new_input_tokens:O,display_cached_input_tokens:H,display_cache_creation_input_tokens:I,display_reasoning_tokens:J,display_output_tokens:P&&!Q?G+J:G},timestamp:new Date().toISOString(),connectionId:f||void 0,apiKey:g||void 0,endpoint:h||null,status:j,statusCode:k,errorCode:l,errorType:m,errorMessage:n,latencyMs:o,ttftMs:p,isStreaming:t,thinkingEnabled:R.thinkingEnabled,thinkingAutoOff:R.thinkingAutoOff,thinkingAutoOffReason:R.thinkingAutoOffReason,promptChars:R.promptChars,forceThinkingOffAboveChars:R.forceThinkingOffAboveChars,...u,meta:{...v,...x?{rtkStats:x}:{},requestContext:u,requestPolicyMeta:R}}).catch(()=>{})}function t({provider:a="unknown",model:b="unknown",connectionId:c,apiKey:d,endpoint:e,statusCode:f=500,errorCode:g="unknown_error",errorType:h="error",errorMessage:i="",latencyMs:j=0,ttftMs:k=0,requestContext:l={},requestPolicyMeta:m={},meta:n={},rtkStats:o=null}){s({provider:a,model:b,tokens:{prompt_tokens:0,completion_tokens:0},connectionId:c,apiKey:d,endpoint:e,status:"error",statusCode:f,errorCode:g,errorType:h,errorMessage:i,latencyMs:j,ttftMs:k,requestContext:l,requestPolicyMeta:m||l?.requestPolicyMeta||n?.requestPolicyMeta||{},meta:n,rtkStats:o,label:"ERROR USAGE"})}},92500:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{w:()=>C});var e=c(57647),f=c(33110),g=c(14170),h=c(71857),i=c(59657),j=c(8590),k=c(71336),l=c(44404),m=c(43659),n=c(41004),o=c(27349),p=c(47370),q=c(35901),r=c(55330),s=c(86171),t=c(81626),u=c(5016),v=c(20623),w=c(324),x=c(14724),y=c(60125),z=c(94882),A=a([r]);function B(a={}){(0,q.jk)(a).catch(()=>{}),(0,s.sx)({provider:a.provider,model:a.model,connectionId:a.connectionId,apiKey:a.apiKey,endpoint:a.endpoint,statusCode:a.gatewayStatusCode||a.statusCode||a.upstreamStatusCode||500,errorCode:a.errorCode,errorType:a.errorType,errorMessage:a.errorMessageShort||a.errorMessage,latencyMs:a.latencyMs,requestContext:a.requestContext||{},requestPolicyMeta:a.requestPolicyMeta||a.requestContext?.requestPolicyMeta||{},meta:{errorSource:a.errorSource,upstreamStatusCode:a.upstreamStatusCode,statusClass:a.statusClass},rtkStats:a.rtkStats||null})}async function C({body:a,modelInfo:b,credentials:c,log:d,onCredentialsRefreshed:q,onRequestSuccess:A,onDisconnect:D,clientRawRequest:E,connectionId:F,userAgent:G,apiKey:H,ccFilterNaming:I,rtkEnabled:J,cavemanEnabled:K,cavemanLevel:L,sourceFormatOverride:M,providerThinking:N,contentLoggingMode:O="inherit",requestPolicyMeta:P=null,skipProviderRetry:Q=!1}){let R,S,T,U,V,W,{provider:X,model:Y}=b,Z=Date.now(),$=M||(0,e.Tz)(a),_=(0,s.wS)({headers:E?.headers||{},requestId:E?.requestId,sessionId:E?.sessionId});if(E)for(let a of["accountName","connectionName","accountEmail","accountDisplayName","ownerUser","connectionScope","visibility"])E[a]&&!_[a]&&(_[a]=E[a]);P&&"object"==typeof P&&(_.requestPolicyMeta=P);let aa=(0,w.J)(E?.headers||{},a),ab="claude"===aa&&"claude"===X;if(!ab){let b=(0,o.c)(a,Y,G,I);if(b)return b}let ac=l.Xg[X]||X,ad=(0,l.ux)(ac,Y)||(0,e.jJ)(X),ae=(0,l.cY)(ac,Y),af=P?.thinkingEnabled===!1||a?.enable_thinking===!1||a?.chat_template_kwargs?.enable_thinking===!1||a?.thinking?.type==="disabled";if(!ab&&N?.mode&&"auto"!==N.mode&&!af){let b=N.mode;"on"!==b||a.thinking?"off"!==b||a.thinking?a.reasoning_effort||(a={...a,reasoning_effort:b}):a={...a,thinking:{type:"disabled"}}:(console.log("Injecting provider-level thinking config override: on"),a={...a,thinking:{type:"enabled",budget_tokens:1e4}})}let ag=!0===a.stream||$===g.h.ANTIGRAVITY||$===g.h.GEMINI||$===g.h.GEMINI_CLI,ah="openai"===X||"codex"===X||"commandcode"===X,ai=!!ah||!0===a.stream,aj=(0,w.J)(E?.headers||{},a);"deepseek-tui"===aj&&!0!==a.stream&&(ai=!1);let ak=E?.headers?.accept||"",al=ak.includes("application/json"),am=ak.includes("text/event-stream");al&&!am&&!0!==a.stream&&(ai=!1);let an=c?._connection||{},ao={provider:X,connectionId:F,connectionName:c?.connectionName||c?.name||c?.providerSpecificData?.connectionName||c?.providerSpecificData?.name||"",accountName:c?.email||c?.accountName||c?.providerSpecificData?.email||c?.providerSpecificData?.accountName||c?.providerSpecificData?.account_name||c?.providerSpecificData?.login||c?.providerSpecificData?.username||"",accountEmail:an.email||E?.accountEmail||"",accountDisplayName:an.displayName||an.name||E?.accountDisplayName||"",ownerUser:an.ownerUser||E?.ownerUser||"",connectionScope:an.scope||E?.connectionScope||"",visibility:an.visibility||E?.visibility||"",contentLoggingMode:O,routingMetadata:E?.routingMetadata||null},ap=await (0,k.q7)($,ad,Y,ao);E&&ap.logClientRawRequest(E.endpoint,E.body,E.headers),ap.logRawRequest(a),d?.debug?.("FORMAT",`${$} → ${ad} | stream=${ai}`);let aq=(0,w.Q)(aa,X);if(aa&&!_.sourceTool&&(_.sourceTool=aa,_.sourceToolLabel||(_.sourceToolLabel=aa)),aq)d?.debug?.("PASSTHROUGH",`${aa} → ${X} | native lossless`),R={...a,model:Y};else{if(!(R=(0,f.GH)($,ad,Y,a,ai,c,X,ap,ae,F,aa))){(0,p.uw)(Y,X,F,!1,!0);let a=`Failed to translate request for ${$} → ${ad}`;return B({..._,requestContext:_,provider:X,model:Y,connectionId:F,apiKey:H,endpoint:E?.endpoint,gatewayStatusCode:n.gx.BAD_REQUEST,errorSource:"gateway_validation",errorType:"invalid_request",errorCode:"translate_request_failed",errorMessageShort:a,latencyMs:Date.now()-Z}),(0,m.A1)(n.gx.BAD_REQUEST,a,void 0,$)}S=R._toolNameMap,delete R._toolNameMap,R.model=Y}if("claude"===aa&&!ab&&Array.isArray(R.tools)){let{tools:a,stripped:b}=(0,x.F)(R.tools);b.length>0&&(R.tools=a,d?.debug?.("TOOLDEDUP",`stripped ${b.length}: ${b.slice(0,3).join(", ")}${b.length>3?"...":""}`))}let ar=aq?$:ad,as=(0,z.BI)(R,J),at=(0,z.Qi)(as,J),au=(0,z.fT)(as);au&&console.log(au),K&&L&&((0,y.p)(R,ar,L),d?.debug?.("CAVEMAN",`${L} | ${ar}`));let av=(0,r.SB)(X);(0,p.uw)(Y,X,F,!0),(0,p.E5)({model:Y,provider:X,connectionId:F,status:"PENDING"}).catch(()=>{});let aw=R.messages?.length||R.input?.length||R.contents?.length||R.request?.contents?.length||0;d?.debug?.("REQUEST",`${X.toUpperCase()} | ${Y} | ${aw} msgs`);let ax=(0,i.jd)({onDisconnect:a=>{(0,p.uw)(Y,X,F,!1),D&&D(a)},onError:()=>(0,p.uw)(Y,X,F,!1),log:d,provider:X,model:Y}),ay={connectionProxyEnabled:c?.providerSpecificData?.connectionProxyEnabled===!0,connectionProxyUrl:c?.providerSpecificData?.connectionProxyUrl||"",connectionNoProxy:c?.providerSpecificData?.connectionNoProxy||"",vercelRelayUrl:c?.providerSpecificData?.vercelRelayUrl||""};if(ay.vercelRelayUrl){let a=c?.connectionName||c?.connectionId||"unknown",b=c?.providerSpecificData?.connectionProxyPoolId||"none";d?.info?.("PROXY",`${X.toUpperCase()} | ${Y} | conn=${a} | pool=${b} | vercel-relay=${ay.vercelRelayUrl}`)}else if(ay.connectionProxyEnabled&&ay.connectionProxyUrl){let a=ay.connectionProxyUrl;try{let b=new URL(ay.connectionProxyUrl),c=b.port?`:${b.port}`:"";a=`${b.protocol||"http:"}//${b.hostname||""}${c}`}catch{}let b=c?.providerSpecificData?.connectionProxyPoolId||"none",e=c?.connectionName||c?.connectionId||"unknown";d?.info?.("PROXY",`${X.toUpperCase()} | ${Y} | conn=${e} | pool=${b} | url=${a}`)}if(ay.connectionProxyEnabled&&ay.connectionNoProxy){let a=c?.connectionName||c?.connectionId||"unknown";d?.debug?.("PROXY",`${X.toUpperCase()} | ${Y} | conn=${a} | no_proxy=${ay.connectionNoProxy}`)}let az=!1,aA=(a,b,c,d)=>{az=!0,ap.logTargetRequest(a,b,c,d)};try{let a=await av.execute({model:Y,body:R,stream:ai,credentials:c,signal:ax.signal,log:d,proxyOptions:ay,skipRetry:Q,clientRequest:ab?{nativeClaudePassthrough:!0,headers:E?.headers||{},query:E?.query||""}:null,onBeforeFetch:aA});T=a.response,U=a.url,V=a.headers,W=a.transformedBody,az||ap.logTargetRequest(U,V,W)}catch(f){let b=f?.code==="UPSTREAM_HEADERS_TIMEOUT",c="AbortError"===f.name?499:b?n.gx.GATEWAY_TIMEOUT:n.gx.BAD_GATEWAY,d=Date.now()-Z;if((0,p.uw)(Y,X,F,!1,!0),(0,p.E5)({model:Y,provider:X,connectionId:F,status:`FAILED ${c}`}).catch(()=>{}),(0,p.ox)((0,s.$R)({provider:X,model:Y,connectionId:F,latency:{ttft:0,total:d},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,s.Fo)(a,ai),providerRequest:R||null,response:{error:f.message||String(f),status:c,thinking:null},status:"error",rtkStats:at})).catch(()=>{}),B({..._,requestContext:_,provider:X,model:Y,connectionId:F,accountName:ao.accountName,apiKey:H,endpoint:E?.endpoint,gatewayStatusCode:c,errorSource:"AbortError"===f.name?"client_abort":b?"upstream_timeout":"network",errorType:"AbortError"===f.name?"client_abort":b?"upstream_headers_timeout":"network_error",errorCode:"AbortError"===f.name?"client_abort":b?"upstream_headers_timeout":"provider_execute_failed",errorMessageShort:f.message||String(f),latencyMs:d,rtkStats:at}),"AbortError"===f.name)return ax.handleError(f),(0,m.A1)(499,"Request aborted",void 0,$);if(b){let a=`${X} did not return response headers within timeout (model: ${Y})`;return console.log(`${h.lm.red}[TIMEOUT] ${a}${h.lm.reset}`),(0,m.A1)(n.gx.GATEWAY_TIMEOUT,a,void 0,$)}let e=(0,m.lR)(f,X,Y,n.gx.BAD_GATEWAY);return console.log(`${h.lm.red}[ERROR] ${e}${h.lm.reset}`),(0,m.A1)(n.gx.BAD_GATEWAY,e,void 0,$)}if(!av.noAuth&&(T.status===n.gx.UNAUTHORIZED||T.status===n.gx.FORBIDDEN))try{let a=await (0,j.qZ)(()=>av.refreshCredentials(c,d),3,d);if(a?.accessToken||a?.copilotToken){if(d?.info?.("TOKEN",`${X.toUpperCase()} | refreshed`),Object.assign(c,a),q)try{await q(a)}catch(a){d?.warn?.("TOKEN",`onCredentialsRefreshed failed: ${a.message}`)}try{let a=await av.execute({model:Y,body:R,stream:ai,credentials:c,signal:ax.signal,log:d,proxyOptions:ay,skipRetry:Q,clientRequest:ab?{nativeClaudePassthrough:!0,headers:E?.headers||{},query:E?.query||""}:null,onBeforeFetch:aA});T=a.response,U=a.url,V=a.headers,W=a.transformedBody||W}catch(c){let a=c?.code==="UPSTREAM_HEADERS_TIMEOUT";if(c?.name==="AbortError")return ax.handleError(c),(0,m.A1)(499,"Request aborted",void 0,$);if(a){let a=`${X} did not return response headers within timeout after token refresh (model: ${Y})`;return d?.warn?.("TOKEN",a),(0,m.A1)(n.gx.GATEWAY_TIMEOUT,a,void 0,$)}let b=(0,m.lR)(c,X,Y,n.gx.BAD_GATEWAY);return d?.warn?.("TOKEN",`${X.toUpperCase()} | retry after refresh failed: ${c?.message||c}`),(0,m.A1)(n.gx.BAD_GATEWAY,b,void 0,$)}}else d?.warn?.("TOKEN",`${X.toUpperCase()} | refresh failed`)}catch(a){d?.warn?.("TOKEN",`${X.toUpperCase()} | refresh threw: ${a.message}`)}if(!T.ok){(0,p.uw)(Y,X,F,!1,!0);let{statusCode:b,message:c,resetsAtMs:d}=await (0,m.zL)(T,av),e=Date.now()-Z;(0,p.E5)({model:Y,provider:X,connectionId:F,status:`FAILED ${b}`}).catch(()=>{}),(0,p.ox)((0,s.$R)({provider:X,model:Y,connectionId:F,latency:{ttft:0,total:e},tokens:{prompt_tokens:0,completion_tokens:0},request:(0,s.Fo)(a,ai),providerRequest:W||R||null,response:{error:c,status:b,thinking:null},status:"error",rtkStats:at})).catch(()=>{}),B({..._,requestContext:_,provider:X,model:Y,connectionId:F,accountName:ao.accountName,apiKey:H,endpoint:E?.endpoint,gatewayStatusCode:b,upstreamStatusCode:T.status,errorSource:"provider_http",errorMessageShort:c,upstreamErrorBodySnippet:c,latencyMs:e,rtkStats:at});let f=(0,m.lR)(Error(c),X,Y,b);return console.log(`${h.lm.red}[ERROR] ${f}${h.lm.reset}`),ap.logError(Error(c),W||R),(0,m.A1)(b,f,d,$)}let aB={provider:X,model:Y,body:a,stream:ai,translatedBody:R,finalBody:W,requestStartTime:Z,connectionId:F,apiKey:H,clientRawRequest:E,onRequestSuccess:A,requestContext:_,sourceFormat:$,targetFormat:ad,requestPolicyMeta:P,rtkStats:at},aC=a=>(0,p.E5)({model:Y,provider:X,connectionId:F,...a}).catch(()=>{}),aD=()=>(0,p.uw)(Y,X,F,!1);if(!ag&&ah){let a=await (0,t.I)({...aB,providerResponse:T,sourceFormat:$,trackDone:aD,appendLog:aC});if(a)return ax.handleComplete(),a}if(!ai){let a=await (0,u.N)({...aB,providerResponse:T,sourceFormat:$,targetFormat:ad,reqLogger:ap,toolNameMap:S,trackDone:aD,appendLog:aC});return ax.handleComplete(),a}let{onStreamComplete:aE}=(0,v.$)({...aB,reqLogger:ap,providerResponseInfo:{status:T.status,statusText:T.statusText,headers:T.headers}});return(0,v.M)({...aB,providerResponse:T,sourceFormat:$,targetFormat:ad,userAgent:G,reqLogger:ap,toolNameMap:S,streamController:ax,onStreamComplete:aE})}r=(A.then?(await A)():A)[0],d()}catch(a){d(a)}})},94882:(a,b,c)=>{c.d(b,{BI:()=>_,fT:()=>ad,Qi:()=>ac});let d="v0.42.4",e=["node_modules",".git","target","__pycache__",".next","dist","build",".venv","venv",".cache",".idea",".vscode",".DS_Store"];function f(a,b=500){let c=[],d="",e=0,g=0,h=!1,i=0,j=0,k=!1;for(let f of a.split("\n")){if(f.startsWith("diff --git")){j>0&&(c.push(` ... (${j} lines truncated)`),k=!0,j=0),d&&(e>0||g>0)&&c.push(` +${e} -${g}`);let a=f.split(" b/");d=a.length>1?a.slice(1).join(" b/"):"unknown",c.push(`
|
|
142
142
|
${d}`),e=0,g=0,h=!1,i=0}else f.startsWith("@@")?(j>0&&(c.push(` ... (${j} lines truncated)`),k=!0,j=0),h=!0,i=0,c.push(` ${f}`)):h&&(f.startsWith("+")&&!f.startsWith("+++")?(e+=1,i<100?(c.push(` ${f}`),i+=1):j+=1):f.startsWith("-")&&!f.startsWith("---")?(g+=1,i<100?(c.push(` ${f}`),i+=1):j+=1):i<100&&!f.startsWith("\\")&&(c.push(` ${f}`),i+=1));if(c.length>=b){c.push("\n... (more changes truncated)"),k=!0;break}}return j>0&&(c.push(` ... (${j} lines truncated)`),k=!0),d&&(e>0||g>0)&&c.push(` +${e} -${g}`),k&&c.push("[full diff: rtk git diff --no-compact]"),c.join("\n")}function g(a){let b=a.split("\n");if(0===b.length||1===b.length&&!b[0].trim())return"Clean working tree";let c="",d=[],e=[],f=[],g=0,h=0,i=0,j=0;for(let a of b){if(!a.trim())continue;let b=a.match(/^On branch (\S+)/);if(b){c=b[1];continue}if(a.startsWith("##")){c=a.replace(/^##\s*/,"");continue}if(a.length>=3&&/^[ MADRCU?!][ MADRCU?!] /.test(a)){let b=a[0],c=a[1],k=a.slice(3);if("??"===a.slice(0,2)){i++,f.push(k);continue}"MADRC".includes(b)?(g++,d.push(k)):"U"===b&&j++,("M"===c||"D"===c)&&(h++,e.push(k));continue}let k=a.match(/^\s*(modified|new file|deleted|renamed|both modified):\s+(.+)$/);if(k){let a=k[1],b=k[2].trim();"both modified"===a?j++:"modified"===a||"deleted"===a?(h++,e.push(b)):("new file"===a||"renamed"===a)&&(g++,d.push(b));continue}}let k="";if(c&&(k+=`* ${c}
|
|
143
143
|
`),g>0){for(let a of(k+=`+ Staged: ${g} files
|
|
144
144
|
`,d.slice(0,10)))k+=` ${a}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=9483,exports.ids=[9483],exports.modules={
|
|
1
|
+
"use strict";exports.id=9483,exports.ids=[9483],exports.modules={69810:(a,b,c)=>{c.d(b,{Qg:()=>m,vY:()=>p});var d=c(41170);let e="__blueRouterResourceMonitorHistoryMysql";function f(){return globalThis[e]||(globalThis[e]={pool:null,fingerprint:null,schemaReady:null,lastPruneAt:0}),globalThis[e]}function g(a){let b=Number(a);return Number.isFinite(b)?b:0}function h(a){return(Array.isArray(a)?a:[]).map(a=>({id:String(a?.uuid||`index-${a?.index??0}`),uuid:String(a?.uuid||""),index:g(a?.index),name:String(a?.name||`NVIDIA GPU ${a?.index??0}`),usagePercent:g(a?.usagePercent),memoryUsagePercent:g(a?.memoryUsagePercent),temperatureC:a?.temperatureC==null?null:g(a.temperatureC),powerDrawW:a?.powerDrawW==null?null:g(a.powerDrawW)}))}async function i(){let a=await (0,d.L7)(),b=(0,d.I6)(a,a);if("mysql"!==b.type)throw Error("Resource Monitor history requires Prompt Log Database type MySQL.");if(!b.host||!b.database||!b.username)throw Error("Resource Monitor history requires the MySQL host, database, and username from Prompt Log Database settings.");return b}async function j(a){return(await c.e(4790).then(c.t.bind(c,94790,19))).createPool({host:a.host,port:Number(a.port||3306),database:a.database,user:a.username,password:a.password,ssl:a.ssl?{}:void 0,waitForConnections:!0,connectionLimit:4,maxIdle:4,idleTimeout:6e4,queueLimit:0,enableKeepAlive:!0,keepAliveInitialDelay:0,connectTimeout:5e3,supportBigNumbers:!0,bigNumberStrings:!1})}async function k(a){await a.query(`
|
|
2
2
|
CREATE TABLE IF NOT EXISTS resource_monitor_history (
|
|
3
3
|
server_id VARCHAR(120) NOT NULL,
|
|
4
4
|
sampled_at BIGINT UNSIGNED NOT NULL,
|
|
@@ -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/lMbtHcr6Kz2RRK-8mcWEC/_buildManifest.js","static/lMbtHcr6Kz2RRK-8mcWEC/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-6791048ac5efdb66.js","static/chunks/4bd1b696-8a4ab4fdf0ae305a.js","static/chunks/3794-d7cddff008311ab3.js","static/chunks/main-app-eacc433ef218cf40.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
|