9router 0.5.29 → 0.5.35
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 +15 -10
- package/app/.next-cli-build/build-manifest.json +3 -3
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/required-server-files.json +2 -2
- package/app/.next-cli-build/routes-manifest.json +32 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +5 -5
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +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 +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js +3 -3
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
- package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +5 -5
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
- 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/login/route_client-reference-manifest.js +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/logout/route_client-reference-manifest.js +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/callback/route_client-reference-manifest.js +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/start/route_client-reference-manifest.js +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/oidc/test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route_client-reference-manifest.js +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/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +12 -4
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +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/antigravity-mitm/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.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/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
- 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/cowork-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +10 -0
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route_client-reference-manifest.js +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/combos/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +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/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/locale/route_client-reference-manifest.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]/message/route_client-reference-manifest.js +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/mcp/[plugin]/sse/route_client-reference-manifest.js +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/deepgram/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route_client-reference-manifest.js +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/inworld/voices/route_client-reference-manifest.js +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/minimax/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route_client-reference-manifest.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/alias/route_client-reference-manifest.js +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/availability/route_client-reference-manifest.js +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/custom/route_client-reference-manifest.js +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/disabled/route_client-reference-manifest.js +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/route_client-reference-manifest.js +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/models/test/route_client-reference-manifest.js +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/[provider]/[action]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route_client-reference-manifest.js +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/codex/import-token/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +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/cursor/import/route_client-reference-manifest.js +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/gitlab/pat/route_client-reference-manifest.js +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/iflow/cookie/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.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/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.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/oauth/kiro/social-exchange/route_client-reference-manifest.js +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/pricing/route_client-reference-manifest.js +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/[id]/route_client-reference-manifest.js +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/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route_client-reference-manifest.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]/models/route_client-reference-manifest.js +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]/route_client-reference-manifest.js +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/route_client-reference-manifest.js +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/[id]/test-models/route_client-reference-manifest.js +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/client/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route_client-reference-manifest.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/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route_client-reference-manifest.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/test-batch/route_client-reference-manifest.js +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/providers/validate/route_client-reference-manifest.js +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]/route_client-reference-manifest.js +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/[id]/test/route_client-reference-manifest.js +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/cloudflare-deploy/route_client-reference-manifest.js +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/deno-deploy/route_client-reference-manifest.js +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/route_client-reference-manifest.js +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/proxy-pools/vercel-deploy/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/health/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route_client-reference-manifest.js +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/database/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route_client-reference-manifest.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/require-login/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route_client-reference-manifest.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/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route_client-reference-manifest.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/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route_client-reference-manifest.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/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route_client-reference-manifest.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/send/route_client-reference-manifest.js +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/translator/translate/route_client-reference-manifest.js +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/disable/route_client-reference-manifest.js +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/enable/route_client-reference-manifest.js +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/status/route_client-reference-manifest.js +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-check/route_client-reference-manifest.js +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-disable/route_client-reference-manifest.js +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-enable/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
- 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-install/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route_client-reference-manifest.js +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/[connectionId]/route_client-reference-manifest.js +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/chart/route_client-reference-manifest.js +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/history/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route_client-reference-manifest.js +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/providers/route_client-reference-manifest.js +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-details/route_client-reference-manifest.js +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/request-logs/route_client-reference-manifest.js +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/stats/route_client-reference-manifest.js +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/usage/stream/route_client-reference-manifest.js +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/api/chat/route_client-reference-manifest.js +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/speech/route_client-reference-manifest.js +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/transcriptions/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route_client-reference-manifest.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/chat/completions/route_client-reference-manifest.js +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/embeddings/route_client-reference-manifest.js +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/images/generations/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.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/messages/route_client-reference-manifest.js +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/[kind]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route_client-reference-manifest.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/models/route_client-reference-manifest.js +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/compact/route_client-reference-manifest.js +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/responses/route_client-reference-manifest.js +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/route_client-reference-manifest.js +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/search/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route_client-reference-manifest.js +1 -0
- 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/v1/web/fetch/route_client-reference-manifest.js +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/[...path]/route_client-reference-manifest.js +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/v1beta/models/route_client-reference-manifest.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/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route_client-reference-manifest.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/shutdown/route_client-reference-manifest.js +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/api/version/update/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback/page.js +2 -2
- package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +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/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +5 -5
- 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 +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +5 -5
- 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 +2 -2
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- 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/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +5 -5
- 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 +7 -7
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
- package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +5 -5
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing/page.js +2 -2
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +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/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +5 -5
- 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 +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login/page.js +2 -2
- package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +6 -6
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/page.js +2 -2
- package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +15 -10
- package/app/.next-cli-build/server/chunks/112.js +3 -0
- package/app/.next-cli-build/server/chunks/1260.js +1 -0
- package/app/.next-cli-build/server/chunks/155.js +1 -1
- package/app/.next-cli-build/server/chunks/1829.js +1 -0
- package/app/.next-cli-build/server/chunks/2056.js +1 -1
- package/app/.next-cli-build/server/chunks/2112.js +1 -0
- package/app/.next-cli-build/server/chunks/2416.js +3 -0
- package/app/.next-cli-build/server/chunks/318.js +4 -4
- package/app/.next-cli-build/server/chunks/3284.js +1 -0
- package/app/.next-cli-build/server/chunks/3350.js +1 -0
- package/app/.next-cli-build/server/chunks/3558.js +1 -0
- package/app/.next-cli-build/server/chunks/3813.js +1 -0
- package/app/.next-cli-build/server/chunks/3943.js +1 -0
- package/app/.next-cli-build/server/chunks/412.js +1 -1
- package/app/.next-cli-build/server/chunks/4123.js +7 -0
- package/app/.next-cli-build/server/chunks/4329.js +1 -0
- package/app/.next-cli-build/server/chunks/4632.js +1 -1
- package/app/.next-cli-build/server/chunks/4664.js +1 -0
- package/app/.next-cli-build/server/chunks/4884.js +2 -2
- package/app/.next-cli-build/server/chunks/5182.js +1 -0
- package/app/.next-cli-build/server/chunks/5491.js +1 -0
- package/app/.next-cli-build/server/chunks/5612.js +1 -1
- package/app/.next-cli-build/server/chunks/5615.js +1 -1
- package/app/.next-cli-build/server/chunks/63.js +4 -4
- package/app/.next-cli-build/server/chunks/6306.js +1 -1
- package/app/.next-cli-build/server/chunks/6805.js +73 -0
- package/app/.next-cli-build/server/chunks/6877.js +1 -0
- package/app/.next-cli-build/server/chunks/7011.js +1 -0
- package/app/.next-cli-build/server/chunks/7108.js +2 -2
- package/app/.next-cli-build/server/chunks/7211.js +1 -0
- package/app/.next-cli-build/server/chunks/{2722.js → 8038.js} +13 -3
- package/app/.next-cli-build/server/chunks/8145.js +1 -0
- package/app/.next-cli-build/server/chunks/827.js +1 -0
- package/app/.next-cli-build/server/chunks/8335.js +10 -0
- package/app/.next-cli-build/server/chunks/8473.js +1 -1
- package/app/.next-cli-build/server/chunks/869.js +1 -0
- package/app/.next-cli-build/server/chunks/8895.js +11 -5
- package/app/.next-cli-build/server/chunks/8910.js +1 -1
- package/app/.next-cli-build/server/chunks/{6182.js → 915.js} +2 -2
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +5 -5
- package/app/.next-cli-build/server/next-font-manifest.js +1 -1
- package/app/.next-cli-build/server/next-font-manifest.json +1 -1
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/chunks/1321-7f70ea1854851a9b.js +1 -0
- package/app/.next-cli-build/static/chunks/{6069-d1368320cca656fb.js → 5116-abbb531d1c70d939.js} +18 -8
- package/app/.next-cli-build/static/chunks/5497-25476bc01a0ff241.js +7 -0
- package/app/.next-cli-build/static/chunks/{1393-ab87fa950d86db95.js → 8720-19a77015c83761c0.js} +2 -2
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/{page-21c0ade53f5f4d61.js → page-3fea5e5140e9e9e2.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-8e9ba5b967b1cd9a.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-4628a6c5aef221c0.js → page-500933e92ec9d704.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-00ee45b3da219332.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-774e3c6a5509c01a.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-03440c117ff474a7.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-72fef93e917346a1.js → page-217b751496114bf0.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-efea2cc0f6765959.js → page-d1f252e6640649cc.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-bc5b2ec7d129a7ba.js → page-108328d1577f1b0f.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-8ce8fcdd914a06ba.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-3da9be46b9b86651.js → page-ddf2d92f4cb62adb.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-8b2e0a89feccc094.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-5508baf577f1c9c3.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-b2d9fdc7aa9d2bfd.js +12 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-2e01ae18f0d08d46.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/{page-9b6201eae096c221.js → page-a2ed056ba7f0b270.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-96de3ba27d43a550.js → page-dc0917f50d986e3c.js} +2 -2
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/page-a603eea1f7b2f3d7.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-4a4e8b584d49bc4c.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/page-98e6138533e70e8c.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-05de6f7cc897becc.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-72ee583cf658dbeb.js → page-c469c57e8e9dfdeb.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-7bf19c0148287de7.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-6a47b27423489d9e.js → layout-6341528ea2ebaa7c.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/_not-found/{page-3396db0e61e07183.js → page-d14b4f85e766485b.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/init/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/callback/page-b1b657faae953b1b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/{page-6586c129a35d40ef.js → page-d409a7cb7cd6df95.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/landing/page-38fb1c1cf15b58e6.js +1 -0
- package/app/.next-cli-build/static/chunks/app/{layout-81136c44a44956ea.js → layout-4a76cb1a35802ba3.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/login/{page-2a345f69010053f3.js → page-1de68414b4896979.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/{main-app-8803a230dfc5c361.js → main-app-e9cac73f211d4f39.js} +1 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-ba1c54bc3a839b67.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-0b074c453edbc4ed.js +1 -0
- package/app/.next-cli-build/static/css/da4a0bfccb4cb38e.css +1 -0
- package/app/.next-cli-build/static/sQN_jz73W79rVHaflXPWr/_buildManifest.js +1 -0
- package/app/cli/.build-home/.9router/db/data.sqlite +0 -0
- package/app/package.json +1 -1
- package/app/public/i18n/literals/fa.json +1367 -171
- package/app/public/i18n/literals/th.json +1373 -177
- package/app/src/shared/services/quotaAutoPing.js +313 -0
- package/cli.js +18 -0
- package/package.json +1 -1
- package/src/cli/commands/xaiVideo.js +300 -0
- package/app/.next-cli-build/server/chunks/1051.js +0 -1
- package/app/.next-cli-build/server/chunks/212.js +0 -1
- package/app/.next-cli-build/server/chunks/2231.js +0 -1
- package/app/.next-cli-build/server/chunks/2701.js +0 -10
- package/app/.next-cli-build/server/chunks/28.js +0 -1
- package/app/.next-cli-build/server/chunks/4177.js +0 -1
- package/app/.next-cli-build/server/chunks/4380.js +0 -1
- package/app/.next-cli-build/server/chunks/4746.js +0 -1
- package/app/.next-cli-build/server/chunks/4827.js +0 -1
- package/app/.next-cli-build/server/chunks/6936.js +0 -7
- package/app/.next-cli-build/server/chunks/8238.js +0 -1
- package/app/.next-cli-build/server/chunks/8271.js +0 -1
- package/app/.next-cli-build/server/chunks/8833.js +0 -79
- package/app/.next-cli-build/server/chunks/9489.js +0 -3
- package/app/.next-cli-build/server/chunks/9630.js +0 -1
- package/app/.next-cli-build/server/chunks/9862.js +0 -3
- package/app/.next-cli-build/static/7lsDwCspRaXYwAmHEUEbc/_buildManifest.js +0 -1
- package/app/.next-cli-build/static/chunks/1321-c34b8421e3bdc6b7.js +0 -1
- package/app/.next-cli-build/static/chunks/5497-07026ddf771eca0a.js +0 -7
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-f4e60f97eb85e23a.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-eb595f3eac502b64.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-2509a0787c2da4d8.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-edae7c2bb81bb9ed.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-1371953933419a98.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-04208adab928df43.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-14ed582242156c00.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-c4036664eb48f412.js +0 -12
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-a8cdd70f494ec78a.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/page-224a4fded27e3267.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-5dcceb20e5aa06cf.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/page-d15cc86cf8f6061a.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-bd933ec4d974a606.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-00d4fa5a93de9944.js +0 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/callback/page-806e86a828cf4a0f.js +0 -1
- package/app/.next-cli-build/static/chunks/app/landing/page-89ca9e565739184f.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-f740e7b53cfd899a.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-766442d23beca874.js +0 -1
- package/app/.next-cli-build/static/css/62914796a44dcc37.css +0 -1
- /package/app/.next-cli-build/static/{7lsDwCspRaXYwAmHEUEbc → sQN_jz73W79rVHaflXPWr}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
// Quota auto-ping scheduler: warms 5h windows by sending tiny opt-in requests right after reset.
|
|
2
|
+
import "open-sse/index.js";
|
|
3
|
+
|
|
4
|
+
import { getSettings, getProviderConnections, updateProviderConnection } from "@/lib/localDb";
|
|
5
|
+
import { getClaudeUsage } from "open-sse/services/usage/claude.js";
|
|
6
|
+
import { getCodexUsage } from "open-sse/services/usage/codex.js";
|
|
7
|
+
import { getExecutor } from "open-sse/executors/index.js";
|
|
8
|
+
import { CLAUDE_CLI_SPOOF_HEADERS } from "open-sse/providers/shared.js";
|
|
9
|
+
import { proxyAwareFetch } from "open-sse/utils/proxyFetch.js";
|
|
10
|
+
import { resolveConnectionProxyConfig } from "@/lib/network/connectionProxy";
|
|
11
|
+
import { refreshAndUpdateCredentials } from "@/app/api/usage/[connectionId]/route.js";
|
|
12
|
+
import { QUOTA_AUTOPING_CONFIG } from "@/shared/constants/config";
|
|
13
|
+
|
|
14
|
+
const C = QUOTA_AUTOPING_CONFIG;
|
|
15
|
+
const CLAUDE_PING_URL = "https://api.anthropic.com/v1/messages?beta=true";
|
|
16
|
+
|
|
17
|
+
const providerHandlers = {
|
|
18
|
+
claude: {
|
|
19
|
+
getUsage: getClaudeUsage,
|
|
20
|
+
sendPing: sendClaudePing,
|
|
21
|
+
},
|
|
22
|
+
codex: {
|
|
23
|
+
getUsage: getCodexUsage,
|
|
24
|
+
sendPing: sendCodexPing,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
// Survive Next.js hot reload and keep one scheduler per server process.
|
|
29
|
+
const g = (global.__quotaAutoPing ??= {
|
|
30
|
+
interval: null,
|
|
31
|
+
running: false,
|
|
32
|
+
resetCache: {},
|
|
33
|
+
failureCache: {},
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
function cacheKey(provider, connectionId) {
|
|
37
|
+
return `${provider}:${connectionId}`;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function normalizeResetKey(resetAt) {
|
|
41
|
+
const ms = new Date(resetAt).getTime();
|
|
42
|
+
if (!Number.isFinite(ms)) return resetAt;
|
|
43
|
+
return new Date(Math.floor(ms / 60000) * 60000).toISOString();
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function getResetDriftMs(previousResetAt, nextResetAt) {
|
|
47
|
+
const previousMs = new Date(previousResetAt).getTime();
|
|
48
|
+
const nextMs = new Date(nextResetAt).getTime();
|
|
49
|
+
if (!Number.isFinite(previousMs) || !Number.isFinite(nextMs)) return 0;
|
|
50
|
+
return nextMs - previousMs;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
function toFiniteNumber(value, fallback = null) {
|
|
54
|
+
if (typeof value === "number" && Number.isFinite(value)) return value;
|
|
55
|
+
if (typeof value === "string" && value.trim()) {
|
|
56
|
+
const parsed = Number(value);
|
|
57
|
+
if (Number.isFinite(parsed)) return parsed;
|
|
58
|
+
}
|
|
59
|
+
return fallback;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
function isQuotaExhausted(quota) {
|
|
63
|
+
if (!quota || quota.unlimited === true) return false;
|
|
64
|
+
const remaining = toFiniteNumber(quota.remaining);
|
|
65
|
+
if (remaining !== null) return remaining <= 0;
|
|
66
|
+
|
|
67
|
+
const used = toFiniteNumber(quota.used);
|
|
68
|
+
const total = toFiniteNumber(quota.total);
|
|
69
|
+
return total !== null && total > 0 && used !== null && used >= total;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function wasPingedRecently(connection, intervalMs, nowMs = Date.now()) {
|
|
73
|
+
if (!intervalMs) return false;
|
|
74
|
+
const lastPingAtMs = new Date(connection.lastPingAt).getTime();
|
|
75
|
+
return Number.isFinite(lastPingAtMs) && nowMs - lastPingAtMs < intervalMs;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function isBlockingQuotaName(name, sessionKey) {
|
|
79
|
+
if (name === sessionKey) return false;
|
|
80
|
+
return !String(name).toLowerCase().includes("session");
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
function hasExhaustedBlockingQuota(quotas, sessionKey) {
|
|
84
|
+
return Object.entries(quotas || {}).some(([name, quota]) => isBlockingQuotaName(name, sessionKey) && isQuotaExhausted(quota));
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
function shouldPingForReset(providerConfig, cachedReset, resetAt, now) {
|
|
88
|
+
if (providerConfig.pingWhenResetAtSlides) {
|
|
89
|
+
return Boolean(cachedReset) && getResetDriftMs(cachedReset, resetAt) >= (providerConfig.resetAtDriftMs || 0);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
const resetMs = new Date(resetAt).getTime();
|
|
93
|
+
return Number.isFinite(resetMs) && now >= resetMs - C.pingLeadMs;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
function buildProxyOptions(cfg) {
|
|
97
|
+
return {
|
|
98
|
+
connectionProxyEnabled: cfg.connectionProxyEnabled === true,
|
|
99
|
+
connectionProxyUrl: cfg.connectionProxyUrl || "",
|
|
100
|
+
connectionNoProxy: cfg.connectionNoProxy || "",
|
|
101
|
+
vercelRelayUrl: cfg.vercelRelayUrl || "",
|
|
102
|
+
strictProxy: false,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
async function sendClaudePing(connection, providerConfig, proxyOptions, deps) {
|
|
107
|
+
const res = await deps.proxyAwareFetch(CLAUDE_PING_URL, {
|
|
108
|
+
method: "POST",
|
|
109
|
+
headers: {
|
|
110
|
+
...CLAUDE_CLI_SPOOF_HEADERS,
|
|
111
|
+
"Authorization": `Bearer ${connection.accessToken}`,
|
|
112
|
+
"content-type": "application/json",
|
|
113
|
+
},
|
|
114
|
+
body: JSON.stringify({
|
|
115
|
+
model: providerConfig.pingModel,
|
|
116
|
+
max_tokens: providerConfig.pingMaxTokens,
|
|
117
|
+
messages: [{ role: "user", content: providerConfig.pingText }],
|
|
118
|
+
}),
|
|
119
|
+
}, proxyOptions);
|
|
120
|
+
return res.ok;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
function buildCodexPingInput(text) {
|
|
124
|
+
return [{
|
|
125
|
+
type: "message",
|
|
126
|
+
role: "user",
|
|
127
|
+
content: [{ type: "input_text", text }],
|
|
128
|
+
}];
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
async function drainResponseBody(response) {
|
|
132
|
+
if (typeof response?.text === "function") {
|
|
133
|
+
await response.text();
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
const reader = response?.body?.getReader?.();
|
|
138
|
+
if (!reader) return;
|
|
139
|
+
|
|
140
|
+
try {
|
|
141
|
+
while (true) {
|
|
142
|
+
const { done } = await reader.read();
|
|
143
|
+
if (done) return;
|
|
144
|
+
}
|
|
145
|
+
} finally {
|
|
146
|
+
reader.releaseLock?.();
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
async function sendCodexPing(connection, providerConfig, proxyOptions, deps) {
|
|
151
|
+
const executor = deps.getExecutor("codex");
|
|
152
|
+
const { response } = await executor.execute({
|
|
153
|
+
model: providerConfig.pingModel,
|
|
154
|
+
stream: true,
|
|
155
|
+
credentials: {
|
|
156
|
+
accessToken: connection.accessToken,
|
|
157
|
+
connectionId: connection.id,
|
|
158
|
+
providerSpecificData: connection.providerSpecificData,
|
|
159
|
+
},
|
|
160
|
+
proxyOptions,
|
|
161
|
+
log: console,
|
|
162
|
+
body: {
|
|
163
|
+
model: providerConfig.pingModel,
|
|
164
|
+
input: buildCodexPingInput(providerConfig.pingText),
|
|
165
|
+
instructions: providerConfig.pingInstructions,
|
|
166
|
+
reasoning: providerConfig.pingReasoningEffort
|
|
167
|
+
? { effort: providerConfig.pingReasoningEffort, summary: "auto" }
|
|
168
|
+
: undefined,
|
|
169
|
+
store: false,
|
|
170
|
+
stream: true,
|
|
171
|
+
},
|
|
172
|
+
});
|
|
173
|
+
if (!response.ok) {
|
|
174
|
+
try { await response.body?.cancel?.(); } catch { /* noop */ }
|
|
175
|
+
return false;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
// Codex only starts the 5h window after the streaming response completes.
|
|
179
|
+
await drainResponseBody(response);
|
|
180
|
+
return true;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
function shouldSkipAfterFailure(state, key, nowMs = Date.now()) {
|
|
184
|
+
const failedAt = state.failureCache[key];
|
|
185
|
+
return failedAt && nowMs - failedAt < C.failureCooldownMs;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
async function pingConnection(conn, provider, providerConfig, handler, deps, state = g) {
|
|
189
|
+
const key = cacheKey(provider, conn.id);
|
|
190
|
+
|
|
191
|
+
// resetAt is stable for time-based windows; Codex polls every tick because inactive windows slide forward.
|
|
192
|
+
const cachedReset = state.resetCache[key];
|
|
193
|
+
if (!providerConfig.pingWhenResetAtSlides && cachedReset && Date.now() < new Date(cachedReset).getTime() - C.refreshAheadMs) return;
|
|
194
|
+
|
|
195
|
+
// Avoid hammering provider auth/quota endpoints if a ping failed recently.
|
|
196
|
+
if (shouldSkipAfterFailure(state, key)) return;
|
|
197
|
+
|
|
198
|
+
const proxyCfg = await deps.resolveConnectionProxyConfig(conn.providerSpecificData);
|
|
199
|
+
const proxyOptions = buildProxyOptions(proxyCfg);
|
|
200
|
+
|
|
201
|
+
let connection = conn;
|
|
202
|
+
try {
|
|
203
|
+
const r = await deps.refreshAndUpdateCredentials(connection, false, proxyOptions);
|
|
204
|
+
connection = r.connection;
|
|
205
|
+
} catch (e) {
|
|
206
|
+
state.failureCache[key] = Date.now();
|
|
207
|
+
console.warn(`[AutoPing] ${provider}:${conn.id}: refresh failed: ${e.message}`);
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
const usage = await handler.getUsage(connection.accessToken, proxyOptions);
|
|
212
|
+
const quotas = usage?.quotas || {};
|
|
213
|
+
const quota = quotas?.[providerConfig.quotaKey];
|
|
214
|
+
const resetAt = quota?.resetAt;
|
|
215
|
+
if (!resetAt) return;
|
|
216
|
+
|
|
217
|
+
state.resetCache[key] = resetAt;
|
|
218
|
+
|
|
219
|
+
if (providerConfig.skipWhenBlockingQuotaExhausted && hasExhaustedBlockingQuota(quotas, providerConfig.quotaKey)) return;
|
|
220
|
+
if (isQuotaExhausted(quota)) return;
|
|
221
|
+
|
|
222
|
+
const now = Date.now();
|
|
223
|
+
const resetKey = normalizeResetKey(resetAt);
|
|
224
|
+
const lastPingedResetKey = connection.lastPingedResetKey || normalizeResetKey(connection.lastPingedResetAt);
|
|
225
|
+
|
|
226
|
+
// Claude waits for reset. Codex pings only when resetAt slides, which means the 5h window is inactive.
|
|
227
|
+
if (!shouldPingForReset(providerConfig, cachedReset, resetAt, now)) return;
|
|
228
|
+
if (wasPingedRecently(connection, providerConfig.minPingIntervalMs, now)) return;
|
|
229
|
+
if (lastPingedResetKey === resetKey) return;
|
|
230
|
+
|
|
231
|
+
const ok = await handler.sendPing(connection, providerConfig, proxyOptions, deps);
|
|
232
|
+
if (!ok) {
|
|
233
|
+
// Do not mark reset as pinged unless upstream accepted the tiny request.
|
|
234
|
+
state.failureCache[key] = Date.now();
|
|
235
|
+
console.warn(`[AutoPing] ${provider}:${connection.id}: ping failed (reset ${resetAt})`);
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
delete state.failureCache[key];
|
|
240
|
+
await deps.updateProviderConnection(connection.id, {
|
|
241
|
+
lastPingedResetAt: resetAt,
|
|
242
|
+
lastPingedResetKey: resetKey,
|
|
243
|
+
lastPingAt: new Date().toISOString(),
|
|
244
|
+
updatedAt: new Date().toISOString(),
|
|
245
|
+
});
|
|
246
|
+
console.log(`[AutoPing] ${provider}:${connection.id}: ping sent (reset ${resetAt})`);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
function createDefaultDeps() {
|
|
250
|
+
return {
|
|
251
|
+
getSettings,
|
|
252
|
+
getProviderConnections,
|
|
253
|
+
updateProviderConnection,
|
|
254
|
+
resolveConnectionProxyConfig,
|
|
255
|
+
refreshAndUpdateCredentials,
|
|
256
|
+
proxyAwareFetch,
|
|
257
|
+
getExecutor,
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
export async function runQuotaAutoPingTick(deps = createDefaultDeps(), state = g) {
|
|
262
|
+
if (state.running) return;
|
|
263
|
+
state.running = true;
|
|
264
|
+
try {
|
|
265
|
+
const settings = await deps.getSettings();
|
|
266
|
+
|
|
267
|
+
for (const [provider, providerConfig] of Object.entries(C.providers)) {
|
|
268
|
+
const handler = providerHandlers[provider];
|
|
269
|
+
if (!handler) continue;
|
|
270
|
+
|
|
271
|
+
const enabledMap = settings?.[providerConfig.settingsKey]?.connections || {};
|
|
272
|
+
if (Object.keys(enabledMap).length === 0) continue;
|
|
273
|
+
|
|
274
|
+
const conns = await deps.getProviderConnections({ provider, isActive: true });
|
|
275
|
+
const targets = conns.filter((conn) => conn.authType === "oauth" && enabledMap[conn.id] === true);
|
|
276
|
+
for (const conn of targets) {
|
|
277
|
+
try {
|
|
278
|
+
await pingConnection(conn, provider, providerConfig, handler, deps, state);
|
|
279
|
+
} catch (e) {
|
|
280
|
+
state.failureCache[cacheKey(provider, conn.id)] = Date.now();
|
|
281
|
+
console.warn(`[AutoPing] ${provider}:${conn.id}: ${e.message}`);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
} catch (e) {
|
|
286
|
+
console.warn("[AutoPing] tick error:", e.message);
|
|
287
|
+
} finally {
|
|
288
|
+
state.running = false;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
export function startQuotaAutoPing() {
|
|
293
|
+
if (g.interval) return;
|
|
294
|
+
console.log("[AutoPing] scheduler started");
|
|
295
|
+
runQuotaAutoPingTick().catch(() => {});
|
|
296
|
+
g.interval = setInterval(() => { runQuotaAutoPingTick().catch(() => {}); }, C.tickIntervalMs);
|
|
297
|
+
if (g.interval.unref) g.interval.unref();
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
export function stopQuotaAutoPing() {
|
|
301
|
+
if (!g.interval) return;
|
|
302
|
+
clearInterval(g.interval);
|
|
303
|
+
g.interval = null;
|
|
304
|
+
console.log("[AutoPing] scheduler stopped");
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
export function configureQuotaAutoPing(settings) {
|
|
308
|
+
const enabled = Object.values(C.providers).some((providerConfig) =>
|
|
309
|
+
Object.values(settings?.[providerConfig.settingsKey]?.connections || {}).some(Boolean)
|
|
310
|
+
);
|
|
311
|
+
if (enabled) startQuotaAutoPing();
|
|
312
|
+
else stopQuotaAutoPing();
|
|
313
|
+
}
|
package/cli.js
CHANGED
|
@@ -67,6 +67,19 @@ const { ensureSqliteRuntime, buildEnvWithRuntime } = require("./hooks/sqliteRunt
|
|
|
67
67
|
const { ensureTrayRuntime } = require("./hooks/trayRuntime");
|
|
68
68
|
const args = process.argv.slice(2);
|
|
69
69
|
|
|
70
|
+
// Subcommands (`9router xai video …`) run against an already-running gateway
|
|
71
|
+
// and bypass the launcher flow (no runtime self-heal, no server spawn).
|
|
72
|
+
if (args[0] === "xai" && args[1] === "video") {
|
|
73
|
+
const { run } = require("./src/cli/commands/xaiVideo");
|
|
74
|
+
run(args.slice(2))
|
|
75
|
+
.then((code) => process.exit(code))
|
|
76
|
+
.catch((err) => {
|
|
77
|
+
console.error(`❌ ${err?.message || err}`);
|
|
78
|
+
process.exit(1);
|
|
79
|
+
});
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
|
|
70
83
|
// Self-heal SQLite runtime deps (sql.js + better-sqlite3) into ~/.9router/runtime
|
|
71
84
|
// so the server can resolve them via NODE_PATH. Best-effort — sql.js is required,
|
|
72
85
|
// better-sqlite3 is optional. Logs to stderr only on failure.
|
|
@@ -139,6 +152,11 @@ Options:
|
|
|
139
152
|
--skip-update Skip auto-update check
|
|
140
153
|
-h, --help Show this help message
|
|
141
154
|
-v, --version Show version
|
|
155
|
+
|
|
156
|
+
Commands:
|
|
157
|
+
xai video --prompt "..." --output video.mp4
|
|
158
|
+
Generate a Grok Imagine video via the running gateway
|
|
159
|
+
(see: ${APP_NAME} xai video --help)
|
|
142
160
|
`);
|
|
143
161
|
process.exit(0);
|
|
144
162
|
} else if (args[i] === "--version" || args[i] === "-v") {
|
package/package.json
CHANGED
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `9router xai video` — generate a Grok Imagine video through the local
|
|
3
|
+
* 9router gateway and save the result as an MP4 file.
|
|
4
|
+
*
|
|
5
|
+
* Flow: POST /v1/videos/generations → poll GET /v1/videos/{request_id}
|
|
6
|
+
* until done/failed/timeout → download video.url → atomic rename.
|
|
7
|
+
*
|
|
8
|
+
* No OAuth tokens or Authorization headers are ever printed.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
const http = require("http");
|
|
12
|
+
const https = require("https");
|
|
13
|
+
const fs = require("fs");
|
|
14
|
+
const path = require("path");
|
|
15
|
+
|
|
16
|
+
const DEFAULT_PORT = 20128;
|
|
17
|
+
const DEFAULT_HOST = "127.0.0.1";
|
|
18
|
+
const DEFAULT_MODEL = "xai/grok-imagine-video";
|
|
19
|
+
const DEFAULT_TIMEOUT_SEC = 600;
|
|
20
|
+
const DEFAULT_POLL_INTERVAL_MS = 5000;
|
|
21
|
+
|
|
22
|
+
const TERMINAL_STATUSES = new Set(["done", "failed", "completed", "error", "expired", "cancelled"]);
|
|
23
|
+
const FAILED_STATUSES = new Set(["failed", "error", "expired", "cancelled"]);
|
|
24
|
+
|
|
25
|
+
const HELP = `
|
|
26
|
+
Usage: 9router xai video --prompt "..." [options]
|
|
27
|
+
|
|
28
|
+
Generate a Grok Imagine video via your local 9router gateway
|
|
29
|
+
(requires a connected xAI account — Grok Build OAuth or API key).
|
|
30
|
+
|
|
31
|
+
Options:
|
|
32
|
+
--prompt <text> Video description (required)
|
|
33
|
+
--output <file> Output MP4 path (default: video.mp4)
|
|
34
|
+
--model <id> Model (default: ${DEFAULT_MODEL})
|
|
35
|
+
--duration <seconds> Video duration
|
|
36
|
+
--aspect-ratio <ratio> e.g. 16:9, 9:16, 1:1
|
|
37
|
+
--resolution <res> 480p | 720p | 1080p
|
|
38
|
+
--image <path-or-url> Image input for image-to-video
|
|
39
|
+
--timeout <seconds> Max wait for the job (default: ${DEFAULT_TIMEOUT_SEC})
|
|
40
|
+
--port <port> Gateway port (default: ${DEFAULT_PORT})
|
|
41
|
+
--host <host> Gateway host (default: ${DEFAULT_HOST})
|
|
42
|
+
--api-key <key> 9router API key (or env NINE_ROUTER_API_KEY)
|
|
43
|
+
-h, --help Show this help
|
|
44
|
+
`;
|
|
45
|
+
|
|
46
|
+
function sanitizeText(text) {
|
|
47
|
+
return String(text ?? "").replace(/Bearer\s+[A-Za-z0-9._~+/=-]{8,}/gi, "Bearer [redacted]");
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function parseArgs(argv) {
|
|
51
|
+
const opts = {
|
|
52
|
+
model: DEFAULT_MODEL,
|
|
53
|
+
output: "video.mp4",
|
|
54
|
+
timeoutSec: DEFAULT_TIMEOUT_SEC,
|
|
55
|
+
port: DEFAULT_PORT,
|
|
56
|
+
host: DEFAULT_HOST,
|
|
57
|
+
apiKey: process.env.NINE_ROUTER_API_KEY || null,
|
|
58
|
+
pollIntervalMs: DEFAULT_POLL_INTERVAL_MS,
|
|
59
|
+
};
|
|
60
|
+
for (let i = 0; i < argv.length; i++) {
|
|
61
|
+
const a = argv[i];
|
|
62
|
+
const next = () => argv[++i];
|
|
63
|
+
if (a === "--prompt") opts.prompt = next();
|
|
64
|
+
else if (a === "--output" || a === "-o") opts.output = next();
|
|
65
|
+
else if (a === "--model") opts.model = next();
|
|
66
|
+
else if (a === "--duration") opts.duration = parseInt(next(), 10);
|
|
67
|
+
else if (a === "--aspect-ratio") opts.aspectRatio = next();
|
|
68
|
+
else if (a === "--resolution") opts.resolution = next();
|
|
69
|
+
else if (a === "--image") opts.image = next();
|
|
70
|
+
else if (a === "--timeout") opts.timeoutSec = parseInt(next(), 10) || DEFAULT_TIMEOUT_SEC;
|
|
71
|
+
else if (a === "--port" || a === "-p") opts.port = parseInt(next(), 10) || DEFAULT_PORT;
|
|
72
|
+
else if (a === "--host" || a === "-H") opts.host = next() || DEFAULT_HOST;
|
|
73
|
+
else if (a === "--api-key") opts.apiKey = next();
|
|
74
|
+
else if (a === "--poll-interval-ms") opts.pollIntervalMs = parseInt(next(), 10) || DEFAULT_POLL_INTERVAL_MS;
|
|
75
|
+
else if (a === "-h" || a === "--help") opts.help = true;
|
|
76
|
+
else {
|
|
77
|
+
throw new Error(`Unknown option: ${a}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return opts;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/** Local file path → base64 data URL; URLs pass through untouched. */
|
|
84
|
+
function imageInputToUrl(input) {
|
|
85
|
+
if (/^(https?:|data:)/i.test(input)) return input;
|
|
86
|
+
const buf = fs.readFileSync(input);
|
|
87
|
+
const ext = path.extname(input).toLowerCase();
|
|
88
|
+
const mime = ext === ".png" ? "image/png" : ext === ".webp" ? "image/webp" : "image/jpeg";
|
|
89
|
+
return `data:${mime};base64,${buf.toString("base64")}`;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/** Minimal JSON request against the local gateway. Returns { status, headers, body }. */
|
|
93
|
+
function gatewayRequest({ host, port, apiKey, method, reqPath, body, signal }) {
|
|
94
|
+
return new Promise((resolve, reject) => {
|
|
95
|
+
const payload = body ? JSON.stringify(body) : null;
|
|
96
|
+
const headers = { Accept: "application/json" };
|
|
97
|
+
if (payload) {
|
|
98
|
+
headers["Content-Type"] = "application/json";
|
|
99
|
+
headers["Content-Length"] = Buffer.byteLength(payload);
|
|
100
|
+
}
|
|
101
|
+
if (apiKey) headers.Authorization = `Bearer ${apiKey}`;
|
|
102
|
+
|
|
103
|
+
const req = http.request({ hostname: host, port, path: reqPath, method, headers, signal }, (res) => {
|
|
104
|
+
let data = "";
|
|
105
|
+
res.on("data", (c) => (data += c));
|
|
106
|
+
res.on("end", () => {
|
|
107
|
+
let parsed = null;
|
|
108
|
+
try { parsed = data ? JSON.parse(data) : null; } catch { /* keep raw */ }
|
|
109
|
+
resolve({ status: res.statusCode, headers: res.headers, body: parsed, raw: data });
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
req.on("error", reject);
|
|
113
|
+
if (payload) req.write(payload);
|
|
114
|
+
req.end();
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
const sleep = (ms, signal) =>
|
|
119
|
+
new Promise((resolve, reject) => {
|
|
120
|
+
const t = setTimeout(resolve, ms);
|
|
121
|
+
signal?.addEventListener?.("abort", () => { clearTimeout(t); reject(new Error("aborted")); }, { once: true });
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Poll GET /v1/videos/{id} until a terminal status or deadline.
|
|
126
|
+
* @returns {Promise<object>} final poll body (status done) — throws on failed/timeout.
|
|
127
|
+
*/
|
|
128
|
+
async function pollUntilDone({ host, port, apiKey, requestId, connectionId, timeoutSec, pollIntervalMs, signal, onProgress }) {
|
|
129
|
+
const deadline = Date.now() + timeoutSec * 1000;
|
|
130
|
+
while (true) {
|
|
131
|
+
if (signal?.aborted) throw new Error("aborted");
|
|
132
|
+
if (Date.now() > deadline) {
|
|
133
|
+
throw new Error(`Timed out after ${timeoutSec}s waiting for video job ${requestId}`);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
const res = await gatewayRequestWithConnection({ host, port, apiKey, requestId, connectionId, signal });
|
|
137
|
+
if (res.status === 200 && res.body) {
|
|
138
|
+
const status = String(res.body.status || "").toLowerCase();
|
|
139
|
+
onProgress?.(status || "pending", res.body.progress);
|
|
140
|
+
if (FAILED_STATUSES.has(status)) {
|
|
141
|
+
const msg = res.body.error?.message || res.body.error || "video generation failed";
|
|
142
|
+
throw new Error(`Job ${requestId} failed: ${sanitizeText(typeof msg === "string" ? msg : JSON.stringify(msg))}`);
|
|
143
|
+
}
|
|
144
|
+
if (TERMINAL_STATUSES.has(status)) return res.body;
|
|
145
|
+
} else if (res.status >= 400 && res.status !== 429 && res.status !== 503) {
|
|
146
|
+
throw new Error(`Polling failed (HTTP ${res.status}): ${sanitizeText(res.raw?.slice(0, 300))}`);
|
|
147
|
+
}
|
|
148
|
+
await sleep(pollIntervalMs, signal);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
function gatewayRequestWithConnection({ host, port, apiKey, requestId, connectionId, signal }) {
|
|
153
|
+
return new Promise((resolve, reject) => {
|
|
154
|
+
const headers = { Accept: "application/json" };
|
|
155
|
+
if (apiKey) headers.Authorization = `Bearer ${apiKey}`;
|
|
156
|
+
if (connectionId) headers["x-connection-id"] = connectionId;
|
|
157
|
+
const req = http.request(
|
|
158
|
+
{ hostname: host, port, path: `/v1/videos/${encodeURIComponent(requestId)}`, method: "GET", headers, signal },
|
|
159
|
+
(res) => {
|
|
160
|
+
let data = "";
|
|
161
|
+
res.on("data", (c) => (data += c));
|
|
162
|
+
res.on("end", () => {
|
|
163
|
+
let parsed = null;
|
|
164
|
+
try { parsed = data ? JSON.parse(data) : null; } catch { /* keep raw */ }
|
|
165
|
+
resolve({ status: res.statusCode, body: parsed, raw: data });
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
);
|
|
169
|
+
req.on("error", reject);
|
|
170
|
+
req.end();
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Download a URL to `outputPath` via a `.part` temp file with atomic rename.
|
|
176
|
+
* The temp file is removed on any failure.
|
|
177
|
+
*/
|
|
178
|
+
async function downloadToFile(url, outputPath, { signal } = {}) {
|
|
179
|
+
const partPath = `${outputPath}.part`;
|
|
180
|
+
await new Promise((resolve, reject) => {
|
|
181
|
+
const cleanupAnd = (fn) => (err) => {
|
|
182
|
+
try { fs.unlinkSync(partPath); } catch { /* not created yet */ }
|
|
183
|
+
fn(err);
|
|
184
|
+
};
|
|
185
|
+
const get = (target, redirectsLeft) => {
|
|
186
|
+
const mod = target.startsWith("https:") ? https : http;
|
|
187
|
+
const req = mod.get(target, { signal }, (res) => {
|
|
188
|
+
if (res.statusCode >= 300 && res.statusCode < 400 && res.headers.location && redirectsLeft > 0) {
|
|
189
|
+
res.resume();
|
|
190
|
+
return get(new URL(res.headers.location, target).toString(), redirectsLeft - 1);
|
|
191
|
+
}
|
|
192
|
+
if (res.statusCode !== 200) {
|
|
193
|
+
res.resume();
|
|
194
|
+
return cleanupAnd(reject)(new Error(`Download failed: HTTP ${res.statusCode}`));
|
|
195
|
+
}
|
|
196
|
+
const out = fs.createWriteStream(partPath);
|
|
197
|
+
res.pipe(out);
|
|
198
|
+
out.on("finish", () => out.close(resolve));
|
|
199
|
+
out.on("error", cleanupAnd(reject));
|
|
200
|
+
res.on("error", cleanupAnd(reject));
|
|
201
|
+
});
|
|
202
|
+
req.on("error", cleanupAnd(reject));
|
|
203
|
+
};
|
|
204
|
+
get(url, 5);
|
|
205
|
+
});
|
|
206
|
+
fs.renameSync(partPath, outputPath);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
async function run(argv) {
|
|
210
|
+
let opts;
|
|
211
|
+
try {
|
|
212
|
+
opts = parseArgs(argv);
|
|
213
|
+
} catch (err) {
|
|
214
|
+
console.error(`❌ ${err.message}`);
|
|
215
|
+
console.log(HELP);
|
|
216
|
+
return 1;
|
|
217
|
+
}
|
|
218
|
+
if (opts.help) {
|
|
219
|
+
console.log(HELP);
|
|
220
|
+
return 0;
|
|
221
|
+
}
|
|
222
|
+
if (!opts.prompt) {
|
|
223
|
+
console.error("❌ --prompt is required");
|
|
224
|
+
console.log(HELP);
|
|
225
|
+
return 1;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
const controller = new AbortController();
|
|
229
|
+
const partPath = `${opts.output}.part`;
|
|
230
|
+
const onSigint = () => {
|
|
231
|
+
controller.abort();
|
|
232
|
+
try { fs.unlinkSync(partPath); } catch { /* absent */ }
|
|
233
|
+
console.error("\n✋ Cancelled");
|
|
234
|
+
process.exit(130);
|
|
235
|
+
};
|
|
236
|
+
process.on("SIGINT", onSigint);
|
|
237
|
+
|
|
238
|
+
try {
|
|
239
|
+
const body = { model: opts.model, prompt: opts.prompt };
|
|
240
|
+
if (opts.duration) body.duration = opts.duration;
|
|
241
|
+
if (opts.aspectRatio) body.aspect_ratio = opts.aspectRatio;
|
|
242
|
+
if (opts.resolution) body.resolution = opts.resolution;
|
|
243
|
+
if (opts.image) body.image = { url: imageInputToUrl(opts.image) };
|
|
244
|
+
|
|
245
|
+
console.log(`🎬 Requesting video (${opts.model})…`);
|
|
246
|
+
const create = await gatewayRequest({
|
|
247
|
+
host: opts.host, port: opts.port, apiKey: opts.apiKey,
|
|
248
|
+
method: "POST", reqPath: "/v1/videos/generations", body, signal: controller.signal,
|
|
249
|
+
});
|
|
250
|
+
|
|
251
|
+
if (create.status !== 200 || !create.body?.request_id) {
|
|
252
|
+
const detail = create.body?.error?.message || create.body?.error || create.raw || `HTTP ${create.status}`;
|
|
253
|
+
console.error(`❌ Create failed: ${sanitizeText(typeof detail === "string" ? detail : JSON.stringify(detail)).slice(0, 500)}`);
|
|
254
|
+
if (create.status === 400 && /No credentials/i.test(String(detail))) {
|
|
255
|
+
console.error(" Connect an xAI account first: dashboard → Providers → xAI (Grok).");
|
|
256
|
+
}
|
|
257
|
+
return 1;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
const requestId = create.body.request_id;
|
|
261
|
+
const connectionId = create.headers["x-9router-connection-id"] || null;
|
|
262
|
+
console.log(`📋 Job accepted: ${requestId}`);
|
|
263
|
+
|
|
264
|
+
let lastLine = "";
|
|
265
|
+
const result = await pollUntilDone({
|
|
266
|
+
host: opts.host, port: opts.port, apiKey: opts.apiKey,
|
|
267
|
+
requestId, connectionId,
|
|
268
|
+
timeoutSec: opts.timeoutSec, pollIntervalMs: opts.pollIntervalMs,
|
|
269
|
+
signal: controller.signal,
|
|
270
|
+
onProgress: (status, progress) => {
|
|
271
|
+
const line = `⏳ ${status}${Number.isFinite(progress) ? ` ${progress}%` : ""}`;
|
|
272
|
+
if (line !== lastLine) {
|
|
273
|
+
lastLine = line;
|
|
274
|
+
if (process.stdout.isTTY) process.stdout.write(`\r\x1b[K${line}`);
|
|
275
|
+
else console.log(line);
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
});
|
|
279
|
+
if (process.stdout.isTTY) process.stdout.write("\n");
|
|
280
|
+
|
|
281
|
+
const videoUrl = result.video?.url || result.video?.file_output?.public_url;
|
|
282
|
+
if (!videoUrl) {
|
|
283
|
+
console.error("❌ Job finished but no video URL was returned");
|
|
284
|
+
return 1;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
console.log("⬇️ Downloading…");
|
|
288
|
+
await downloadToFile(videoUrl, opts.output, { signal: controller.signal });
|
|
289
|
+
console.log(`✅ Saved ${opts.output}`);
|
|
290
|
+
return 0;
|
|
291
|
+
} catch (err) {
|
|
292
|
+
if (process.stdout.isTTY) process.stdout.write("\n");
|
|
293
|
+
console.error(`❌ ${sanitizeText(err?.message || String(err))}`);
|
|
294
|
+
return 1;
|
|
295
|
+
} finally {
|
|
296
|
+
process.removeListener("SIGINT", onSigint);
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
module.exports = { run, parseArgs, pollUntilDone, downloadToFile, imageInputToUrl, sanitizeText };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=1051,exports.ids=[1051,1998],exports.modules={19225:(a,b,c)=>{a.exports=c(44870)},39326:(a,b,c)=>{c.d(b,{B:()=>h,p:()=>g});var d=c(71998);function e(a){return null==a?"":String(a).trim()}let f=new Map;function g(a,b,c){if(!a||0===a.length)return null;if(1===a.length)return a[0];if("round-robin"===b){let b=f.get(c)||{index:-1};return b.index=(b.index+1)%a.length,f.set(c,b),a[b.index]}return"random"===b?a[Math.floor(Math.random()*a.length)]:a[0]}async function h(a={}){try{let b=e(a?.proxyPoolId),c="__none__"===b?"":b,f=function(a={}){let b=a?.connectionProxyEnabled===!0,c=e(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:e(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=e(a?.proxyUrl),f=e(a?.noProxy);if(a&&!0===a.isActive&&b){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:f,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:f,strictProxy:!0===a.strictProxy}}}if(f.connectionProxyEnabled&&f.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...f};return{source:"none",proxyPoolId:c||null,proxyPool:null,...f}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},80238:(a,b,c)=>{c.d(b,{Pt:()=>m,Tr:()=>n,c1:()=>k,kI:()=>o,vk:()=>l});var d=c(89718),e=c(39326),f=c(12557),g=c(3662),h=c(40615),i=c(7803);let j=Promise.resolve();async function k(a,b=null,c=null,g={}){let l,m=b instanceof Set?b:b?new Set([b]):new Set,n=g?.preferredConnectionId||null,o=j;j=new Promise(a=>{l=a});try{let b;await o;let g=(0,h.rs)(a);if(h.IS[g]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[g]||{},b=a.rotateStrategy||"none",c=a.proxyPoolId||null;if("none"!==b){let a=(await (0,d.ui)({isActive:!0})).filter(a=>a.proxyUrl).map(a=>a.id);c=(0,e.p)(a,b,g)}let f=await (0,e.B)({proxyPoolId:c||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl,connectionNoProxy:f.connectionNoProxy,connectionProxyPoolId:f.proxyPoolId||null,vercelRelayUrl:f.vercelRelayUrl||""}}}let j=await (0,d.getProviderConnections)({provider:g,isActive:!0});if(i.debug("AUTH",`${a} | total connections: ${j.length}, excludeIds: ${m.size>0?[...m].join(","):"none"}, model: ${c||"any"}`),0===j.length)return i.warn("AUTH",`No credentials for ${a}`),null;let k=j.filter(a=>!(m.has(a.id)||(0,f.Bl)(a,c)));if(i.debug("AUTH",`${a} | available: ${k.length}/${j.length}`),j.forEach(a=>{let b=m.has(a.id),d=(0,f.Bl)(a,c);if(b||d){let e=(0,f.kJ)(a);i.debug("AUTH",` → ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===k.length){let b=j.filter(a=>(0,f.Bl)(a,c)),d=b.map(a=>(0,f.kJ)(a)).filter(Boolean).sort()[0]||null;if(d){let e=b[0];return i.warn("AUTH",`${a} | all ${j.length} accounts locked for ${c||"all"} (${(0,f.Qo)(d)}) | lastError=${e?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:d,retryAfterHuman:(0,f.Qo)(d),lastError:e?.lastError||null,lastErrorCode:e?.errorCode||null}}return i.warn("AUTH",`${a} | all ${j.length} accounts unavailable`),null}let l=await (0,d.mt)(),p=(l.providerStrategies||{})[g]||{},q=p.fallbackStrategy||l.fallbackStrategy||"fill-first";if(n&&(b=k.find(a=>a.id===n))&&i.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if("round-robin"===q){let a=p.stickyRoundRobinLimit||l.stickyRoundRobinLimit||3,c=[...k].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=c?.consecutiveUseCount||0;c&&c.lastUsedAt&&e<a?(b=c,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(b.consecutiveUseCount||0)+1})):(b=[...k].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else b=k[0];let r=await (0,e.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,idToken:b.idToken,expiresAt:b.expiresAt,expiresIn:b.expiresIn,lastRefreshAt:b.lastRefreshAt,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:r.connectionProxyEnabled,connectionProxyUrl:r.connectionProxyUrl,connectionNoProxy:r.connectionNoProxy,connectionProxyPoolId:r.proxyPoolId||null,vercelRelayUrl:r.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{l&&l()}}async function l(a,b,c,e=null,h=null,j=null){let k,m,n;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let o=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),p=o?.backoffLevel||0;if(j&&j>Date.now()?(k=!0,m=Math.min(j-Date.now(),g.fh),n=0):{shouldFallback:k,cooldownMs:m,newBackoffLevel:n}=(0,f.hk)(b,c,p),!k)return{shouldFallback:!1,cooldownMs:0};let q="string"==typeof c?c.slice(0,100):"Provider error",r=(0,f.S5)(h,m);await (0,d.updateProviderConnection)(a,{...r,testStatus:"unavailable",lastError:q,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:n??p});let s=Object.keys(r)[0],t=o?.displayName||o?.name||o?.email||a.slice(0,8);return i.warn("AUTH",`${t} locked ${s} for ${Math.round(m/1e3)}s [${b}]`),e&&b&&q&&console.error(`❌ ${e} [${b}]: ${q}`),{shouldFallback:!0,cooldownMs:m}}async function m(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function n(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function o(a){return!!a&&await (0,d.ek)(a)}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};
|