9router 0.5.45 â 0.5.50
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 +6 -6
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/required-server-files.json +2 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.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 +19 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/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 +10 -10
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
- 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 +7 -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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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.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 +1 -1
- 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.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +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/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +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/headroom/extras/route.js.nft.json +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/restart/route.js.nft.json +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/status/route.js.nft.json +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/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +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/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/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/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/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/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- 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/pxpipe/health/route.js.nft.json +1 -1
- 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/logs/route.js.nft.json +1 -1
- 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/start/route.js.nft.json +1 -1
- 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/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/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]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +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/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page.js +1 -1
- 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 +5 -5
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
- 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 +1 -1
- 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 +1 -1
- 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.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 +1 -1
- 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 +5 -5
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
- 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 +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login/page.js +1 -1
- 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.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js +1 -1
- 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 +6 -6
- package/app/.next-cli-build/server/chunks/112.js +3 -0
- package/app/.next-cli-build/server/chunks/2051.js +1 -0
- package/app/.next-cli-build/server/chunks/2416.js +1 -1
- package/app/.next-cli-build/server/chunks/318.js +7 -7
- package/app/.next-cli-build/server/chunks/3212.js +1 -0
- package/app/.next-cli-build/server/chunks/3225.js +10 -0
- package/app/.next-cli-build/server/chunks/3350.js +1 -1
- package/app/.next-cli-build/server/chunks/3535.js +1 -1
- package/app/.next-cli-build/server/chunks/3558.js +1 -1
- package/app/.next-cli-build/server/chunks/3943.js +1 -1
- package/app/.next-cli-build/server/chunks/4037.js +1 -0
- package/app/.next-cli-build/server/chunks/412.js +5 -5
- package/app/.next-cli-build/server/chunks/4123.js +1 -1
- package/app/.next-cli-build/server/chunks/4125.js +1 -0
- package/app/.next-cli-build/server/chunks/4664.js +1 -1
- package/app/.next-cli-build/server/chunks/4730.js +7 -0
- package/app/.next-cli-build/server/chunks/4884.js +1 -1
- package/app/.next-cli-build/server/chunks/4963.js +1 -0
- package/app/.next-cli-build/server/chunks/5615.js +1 -1
- package/app/.next-cli-build/server/chunks/5619.js +1 -0
- package/app/.next-cli-build/server/chunks/5699.js +1 -1
- package/app/.next-cli-build/server/chunks/6070.js +1 -1
- package/app/.next-cli-build/server/chunks/615.js +1 -1
- package/app/.next-cli-build/server/chunks/6306.js +1 -1
- package/app/.next-cli-build/server/chunks/6763.js +1 -1
- package/app/.next-cli-build/server/chunks/6777.js +1 -1
- package/app/.next-cli-build/server/chunks/6832.js +1 -1
- package/app/.next-cli-build/server/chunks/7011.js +1 -1
- package/app/.next-cli-build/server/chunks/7211.js +1 -1
- package/app/.next-cli-build/server/chunks/7828.js +1 -0
- package/app/.next-cli-build/server/chunks/8038.js +18 -1
- package/app/.next-cli-build/server/chunks/8145.js +1 -1
- package/app/.next-cli-build/server/chunks/827.js +1 -1
- package/app/.next-cli-build/server/chunks/8499.js +5 -5
- package/app/.next-cli-build/server/chunks/869.js +1 -1
- package/app/.next-cli-build/server/chunks/8847.js +1 -0
- package/app/.next-cli-build/server/chunks/8895.js +10 -10
- package/app/.next-cli-build/server/chunks/8910.js +2 -2
- package/app/.next-cli-build/server/chunks/8920.js +1 -1
- package/app/.next-cli-build/server/instrumentation.js +1 -1
- package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -0
- package/app/.next-cli-build/server/interception-route-rewrite-manifest.js +1 -0
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +1 -1
- package/app/.next-cli-build/server/middleware.js.nft.json +1 -0
- 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-54939b699b5f3d07.js +1 -0
- package/app/.next-cli-build/static/chunks/{5116-cb256a4ded35d6c3.js â 5116-2810f8450da5f2e6.js} +25 -8
- package/app/.next-cli-build/static/chunks/5497-419d0c4bb6709be8.js +7 -0
- package/app/.next-cli-build/static/chunks/705-10f93cd2550e6494.js +1 -0
- package/app/.next-cli-build/static/chunks/8720-d7bd322d82b846f1.js +3 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-312deac8b81b91a4.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-c6b157578e72a193.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-6226ad0df4077bca.js â page-8e859b9efe1d5d4f.js} +12 -12
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-62c6f167a5e03a07.js +14 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-cbfb19efff4ac7f5.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-14020782e8f3bc6b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/login/page-ffcd52964a6bbce6.js +1 -0
- package/app/.next-cli-build/static/css/{cc29e6f232c039ff.css â 98dac860a6ea577d.css} +1 -1
- package/app/cli/.build-home/.9router/db/data.sqlite +0 -0
- package/app/custom-server.js +87 -2
- package/app/node_modules/bundle-name/index.js +5 -0
- package/app/node_modules/bundle-name/package.json +45 -0
- package/app/node_modules/default-browser/index.js +34 -0
- package/app/node_modules/default-browser/package.json +54 -0
- package/app/node_modules/default-browser/windows.js +57 -0
- package/app/node_modules/default-browser-id/index.js +25 -0
- package/app/node_modules/default-browser-id/package.json +41 -0
- package/app/node_modules/define-lazy-prop/index.js +18 -0
- package/app/node_modules/define-lazy-prop/package.json +51 -0
- package/app/node_modules/is-docker/index.js +29 -0
- package/app/node_modules/is-docker/package.json +44 -0
- package/app/node_modules/is-in-ssh/index.js +7 -0
- package/app/node_modules/is-in-ssh/package.json +43 -0
- package/app/node_modules/is-inside-container/index.js +23 -0
- package/app/node_modules/is-inside-container/package.json +51 -0
- package/app/node_modules/is-wsl/index.js +36 -0
- package/app/node_modules/is-wsl/package.json +58 -0
- package/app/node_modules/open/index.js +417 -0
- package/app/node_modules/open/package.json +70 -0
- package/app/node_modules/open/xdg-open +1267 -0
- package/app/node_modules/powershell-utils/index.js +58 -0
- package/app/node_modules/powershell-utils/package.json +47 -0
- package/app/node_modules/run-applescript/index.js +37 -0
- package/app/node_modules/run-applescript/package.json +42 -0
- package/app/node_modules/wsl-utils/index.js +98 -0
- package/app/node_modules/wsl-utils/package.json +48 -0
- package/app/node_modules/wsl-utils/utilities.js +19 -0
- package/app/package.json +3 -1
- package/app/public/i18n/literals/ar.json +2 -0
- package/app/public/i18n/literals/bn.json +2 -0
- package/app/public/i18n/literals/cs.json +2 -0
- package/app/public/i18n/literals/da.json +2 -0
- package/app/public/i18n/literals/de.json +2 -0
- package/app/public/i18n/literals/el.json +2 -0
- package/app/public/i18n/literals/es.json +2 -0
- package/app/public/i18n/literals/fa.json +2 -0
- package/app/public/i18n/literals/fi.json +2 -0
- package/app/public/i18n/literals/fr.json +2 -0
- package/app/public/i18n/literals/he.json +2 -0
- package/app/public/i18n/literals/hi.json +2 -0
- package/app/public/i18n/literals/hu.json +2 -0
- package/app/public/i18n/literals/id.json +2 -0
- package/app/public/i18n/literals/it.json +2 -0
- package/app/public/i18n/literals/ja.json +2 -0
- package/app/public/i18n/literals/km.json +2 -0
- package/app/public/i18n/literals/ko.json +2 -0
- package/app/public/i18n/literals/nl.json +2 -0
- package/app/public/i18n/literals/no.json +2 -0
- package/app/public/i18n/literals/pl.json +2 -0
- package/app/public/i18n/literals/pt-BR.json +3 -1
- package/app/public/i18n/literals/pt-PT.json +2 -0
- package/app/public/i18n/literals/ro.json +2 -0
- package/app/public/i18n/literals/ru.json +2 -0
- package/app/public/i18n/literals/sv.json +2 -0
- package/app/public/i18n/literals/th.json +3 -1
- package/app/public/i18n/literals/tl.json +2 -0
- package/app/public/i18n/literals/tr.json +2 -0
- package/app/public/i18n/literals/uk.json +2 -0
- package/app/public/i18n/literals/ur.json +2 -0
- package/app/public/i18n/literals/vi.json +2 -0
- package/app/public/i18n/literals/zh-CN.json +2 -0
- package/app/public/i18n/literals/zh-TW.json +2 -0
- package/app/public/providers/opendesign.png +0 -0
- package/app/public/providers/tokenrouter.png +0 -0
- package/app/server.js +1 -1
- package/app/src/sse/services/backgroundTokenRefresh.js +195 -0
- package/package.json +1 -1
- package/app/.next-cli-build/server/chunks/1829.js +0 -1
- package/app/.next-cli-build/server/chunks/1882.js +0 -1
- package/app/.next-cli-build/server/chunks/203.js +0 -10
- package/app/.next-cli-build/server/chunks/2112.js +0 -1
- package/app/.next-cli-build/server/chunks/2194.js +0 -1
- package/app/.next-cli-build/server/chunks/2573.js +0 -1
- package/app/.next-cli-build/server/chunks/3610.js +0 -1
- package/app/.next-cli-build/server/chunks/4632.js +0 -1
- package/app/.next-cli-build/server/chunks/7807.js +0 -3
- package/app/.next-cli-build/server/chunks/8473.js +0 -8
- package/app/.next-cli-build/static/chunks/1321-3cb00d56de5fba92.js +0 -1
- package/app/.next-cli-build/static/chunks/5497-ec8d04fe35d82d0b.js +0 -7
- package/app/.next-cli-build/static/chunks/705-979ff3eb195b9023.js +0 -1
- package/app/.next-cli-build/static/chunks/8720-19a77015c83761c0.js +0 -3
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-8e9ba5b967b1cd9a.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-f99b581b394e9850.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-ff73f5f0dde36128.js +0 -12
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-cf54417bb10c6b95.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-c31a0e5c041fa35d.js +0 -1
- package/app/.next-cli-build/static/chunks/app/login/page-1de68414b4896979.js +0 -1
- /package/app/.next-cli-build/static/{JWImzQkckVcSebM83PuaS â Iy6eJmUY2Da-w-NGiLufT}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{JWImzQkckVcSebM83PuaS â Iy6eJmUY2Da-w-NGiLufT}/_ssgManifest.js +0 -0
|
@@ -1121,6 +1121,7 @@
|
|
|
1121
1121
|
"Stop Server": "áááááááááļááá¸ááá",
|
|
1122
1122
|
"Stopped": "ááļááááááá",
|
|
1123
1123
|
"Strict Proxy": "Strict Proxy",
|
|
1124
|
+
"Style": "áá
ááļáá",
|
|
1124
1125
|
"Subagent Model": "áááŧááá Subagent",
|
|
1125
1126
|
"Sudo Password Required": "ááááŧáááļáááļááááááááļáá Sudo",
|
|
1126
1127
|
"Sudo password is required": "ááááŧáááļáááļááááááááļáá Sudo",
|
|
@@ -1317,6 +1318,7 @@
|
|
|
1317
1318
|
"disabled": "ááļáááˇá",
|
|
1318
1319
|
"dollars per million tokens": "ááģááááļáááááģáááŊáááļá Tokens",
|
|
1319
1320
|
"e.g. CwhRBWXzGAHq8TQ4Fs17": "á§. CwhRBWXzGAHq8TQ4Fs17",
|
|
1321
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "á§ááļá áááá áááĄááááááááá
ááˇááááááááá ááˇááļáááēááááááááááááááĄááááááĸááááááá",
|
|
1320
1322
|
"e.g. claude-opus-4-5": "á§. claude-opus-4-5",
|
|
1321
1323
|
"e.g. my-model-id": "á§. my-model-id",
|
|
1322
1324
|
"e.g. tts-1-hd": "á§. tts-1-hd",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "ëĄęˇ¸ėė",
|
|
13
13
|
"Login": "ëĄęˇ¸ė¸",
|
|
14
14
|
"Providers": "ė ęŗĩė",
|
|
15
|
+
"Style": "ė¤íėŧ",
|
|
15
16
|
"Usage": "íĩęŗ",
|
|
16
17
|
"API Key": "API í¤",
|
|
17
18
|
"Connected": "ė°ę˛°ë¨",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "ėë ë°Šė:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE ėė˛ â localhost:443ëĄ DNS ëĻŦëë ė
â MITM íëĄėę° ę°ëĄėą â 9Router â Antigravity/CopilotėŧëĄ ėëĩ",
|
|
178
179
|
"No API keys â create one in Keys page": "API í¤ ėė â í¤ íė´ė§ėė ë§ë¤ę¸°",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "ė: ë°ëģíęŗ ëļëëŦė´ ëĒŠėëĻŦëĄ ėęĩė ėĩėė ė°ëа ė˛ė˛í ë§í기",
|
|
179
181
|
"sk_9router (default)": "sk_9router (ę¸°ëŗ¸ę°)",
|
|
180
182
|
"Server started": "ėë˛ ėėë¨",
|
|
181
183
|
"Failed to start server": "ėë˛ ėė ė¤í¨",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "Afmelden",
|
|
13
13
|
"Login": "Aanmelden",
|
|
14
14
|
"Providers": "Providers",
|
|
15
|
+
"Style": "Stijl",
|
|
15
16
|
"Usage": "Statistieken",
|
|
16
17
|
"API Key": "API-sleutel",
|
|
17
18
|
"Connected": "Verbonden",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Hoe het werkt:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE-aanvraag â DNS-omleiding naar localhost:443 â MITM-proxy onderschept â 9Router â antwoord naar Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Geen API-sleutels â maak er ÊÊn aan op de pagina Sleutels",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "bijv.: een warme, zachte stem, die langzaam praat met een Brits accent",
|
|
179
181
|
"sk_9router (default)": "sk_9router (standaard)",
|
|
180
182
|
"Server started": "Server gestart",
|
|
181
183
|
"Failed to start server": "Server starten mislukt",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "Logg ut",
|
|
13
13
|
"Login": "Logg inn",
|
|
14
14
|
"Providers": "Leverandører",
|
|
15
|
+
"Style": "Stil",
|
|
15
16
|
"Usage": "Bruksstatistikk",
|
|
16
17
|
"API Key": "API-nøkkel",
|
|
17
18
|
"Connected": "Tilkoblet",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Slik fungerer det:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE-forespørsel â DNS-omdirigering til localhost:443 â MITM-proxy avlytt â 9Router â svar til Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Ingen API-nøkler â lag en pÃĨ Keys-siden",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "f.eks.: en varm, myk stemme, som snakker sakte med britisk aksent",
|
|
179
181
|
"sk_9router (default)": "sk_9router (standard)",
|
|
180
182
|
"Server started": "Server startet",
|
|
181
183
|
"Failed to start server": "Klarte ikke ÃĨ starte server",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "Wyloguj siÄ",
|
|
13
13
|
"Login": "Zaloguj siÄ",
|
|
14
14
|
"Providers": "Dostawcy",
|
|
15
|
+
"Style": "Styl",
|
|
15
16
|
"Usage": "Statystyka",
|
|
16
17
|
"API Key": "Klucz API",
|
|
17
18
|
"Connected": "PoÅÄ
czony",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Jak to dziaÅa:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "ÅģÄ
danie Antigravity/Copilot IDE â Przekierowanie DNS na localhost:443 â Serwer proxy MITM przechwytuje â 9Router â odpowiedÅē do Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Brak kluczy API â utwÃŗrz jeden na stronie Klucze",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "np.: ciepÅy, delikatny gÅos, mÃŗwiÄ
cy powoli z brytyjskim akcentem",
|
|
179
181
|
"sk_9router (default)": "sk_9router (domyÅlnie)",
|
|
180
182
|
"Server started": "Serwer uruchomiony",
|
|
181
183
|
"Failed to start server": "Nie udaÅo siÄ uruchomiÄ serwera",
|
|
@@ -864,6 +864,7 @@
|
|
|
864
864
|
"Stopped": "Parado",
|
|
865
865
|
"StoppingâĻ": "ParandoâĻ",
|
|
866
866
|
"Strict Proxy": "Proxy Estrito",
|
|
867
|
+
"Style": "Estilo",
|
|
867
868
|
"Subagent Model": "Modelo de Subagente",
|
|
868
869
|
"Subagent model overrides": "SubstituiçÃĩes de modelo de subagente",
|
|
869
870
|
"Submit": "Enviar",
|
|
@@ -978,6 +979,7 @@
|
|
|
978
979
|
"Your OAuth application client ID": "ID do cliente do seu aplicativo OAuth",
|
|
979
980
|
"Your requests start from your favorite tools or our unified SDK.": "Suas requisiçÃĩes começam de suas ferramentas favoritas ou do nosso SDK unificado.",
|
|
980
981
|
"[ml] downloads ~1 GB (torch + huggingface-hub). Continue?": "[ml] baixa ~1 GB (torch + huggingface-hub). Continuar?",
|
|
982
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "ex.: voz quente e suave, falando devagar com sotaque britÃĸnico",
|
|
981
983
|
"extras status failed": "falha no status dos extras",
|
|
982
984
|
"git/grep/ls/tree/logs â 60-90% fewer input tokens": "git/grep/ls/tree/logs â 60-90% menos tokens de entrada",
|
|
983
985
|
"not installed": "nÃŖo instalado",
|
|
@@ -985,4 +987,4 @@
|
|
|
985
987
|
"tree-sitter AST compression for code responses": "CompressÃŖo AST tree-sitter para respostas de cÃŗdigo",
|
|
986
988
|
"â ī¸ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS â account ban. Use at your own risk.": "â ī¸ MITM intercepta trÃĄfego HTTPS de ferramentas IDE (Antigravity, GitHub Copilot, Kiro) via CA local para redirecionar solicitaçÃĩes aos seus provedores. Pode violar ToS â risco de banimento de conta. Use por sua conta e risco.",
|
|
987
989
|
"â ī¸ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "â ī¸ Aviso de Risco: Este provedor usa uma sessÃŖo de assinatura/OAuth nÃŖo licenciada oficialmente para uso de proxy/roteador. A conta pode ser restrita ou banida. Use por sua conta e risco."
|
|
988
|
-
}
|
|
990
|
+
}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "Terminar sessÃŖo",
|
|
13
13
|
"Login": "Iniciar sessÃŖo",
|
|
14
14
|
"Providers": "Fornecedores",
|
|
15
|
+
"Style": "Estilo",
|
|
15
16
|
"Usage": "EstatÃsticas",
|
|
16
17
|
"API Key": "Chave API",
|
|
17
18
|
"Connected": "Ligado",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Como funciona:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Pedido do Antigravity/Copilot IDE â Redirecionamento DNS para localhost:443 â Proxy MITM interceta â 9Router â resposta para Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Sem chaves de API â crie uma na pÃĄgina Chaves",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "ex.: voz quente e suave, a falar devagar com sotaque britÃĸnico",
|
|
179
181
|
"sk_9router (default)": "sk_9router (predefiniÃ§ÃŖo)",
|
|
180
182
|
"Server started": "Servidor iniciado",
|
|
181
183
|
"Failed to start server": "Falha ao iniciar o servidor",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "IeČire",
|
|
13
13
|
"Login": "Conectare",
|
|
14
14
|
"Providers": "Furnizori",
|
|
15
|
+
"Style": "Stil",
|
|
15
16
|
"Usage": "Statistici de utilizare",
|
|
16
17
|
"API Key": "Cheie API",
|
|
17
18
|
"Connected": "Conectat",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Cum funcČioneazÄ:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Solicitare Antigravity/Copilot IDE â RedirecČionare DNS la localhost:443 â Proxy MITM intercepteazÄ â 9Router â rÄspuns la Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Nicio cheie API â creaČi una ÃŽn pagina Chei",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "ex.: voce caldÄ Či blÃĸndÄ, vorbind ÃŽncet cu accent britanic",
|
|
179
181
|
"sk_9router (default)": "sk_9router (implicit)",
|
|
180
182
|
"Server started": "Server pornit",
|
|
181
183
|
"Failed to start server": "Nu s-a putut porni serverul",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "ĐŅŅ
Од",
|
|
13
13
|
"Login": "ĐŅ
Од",
|
|
14
14
|
"Providers": "ĐŅОваКдĐĩŅŅ",
|
|
15
|
+
"Style": "ĐĄŅиĐģŅ",
|
|
15
16
|
"Usage": "ĐĄŅаŅиŅŅиĐēа",
|
|
16
17
|
"API Key": "ĐĐģŅŅ API",
|
|
17
18
|
"Connected": "ĐОдĐēĐģŅŅĐĩĐŊĐž",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "ĐаĐē ŅŅĐž ŅайОŅаĐĩŅ:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "ĐаĐŋŅĐžŅ Antigravity/Copilot IDE â ĐĐĩŅĐĩĐŊаĐŋŅавĐģĐĩĐŊиĐĩ DNS ĐŊа localhost:443 â ĐŅĐžĐēŅи MITM ĐŋĐĩŅĐĩŅ
ваŅŅваĐĩŅ â 9Router â ĐžŅвĐĩŅ Đ´ĐģŅ Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "ĐĐĩŅ ĐēĐģŅŅĐĩĐš API â ŅОСдаКŅĐĩ ОдиĐŊ ĐŊа ŅŅŅаĐŊиŅĐĩ ĐēĐģŅŅĐĩĐš",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "ĐŊаĐŋŅ.: ŅŅĐŋĐģŅĐš ĐŧŅĐŗĐēиК ĐŗĐžĐģĐžŅ, ĐŧĐĩĐ´ĐģĐĩĐŊĐŊĐž ĐŗĐžĐ˛ĐžŅŅŅиК Ņ ĐąŅиŅаĐŊŅĐēиĐŧ аĐēŅĐĩĐŊŅĐžĐŧ",
|
|
179
181
|
"sk_9router (default)": "sk_9router (ĐŋĐž ŅĐŧĐžĐģŅаĐŊиŅ)",
|
|
180
182
|
"Server started": "ĐĄĐĩŅвĐĩŅ ĐˇĐ°ĐŋŅŅĐĩĐŊ",
|
|
181
183
|
"Failed to start server": "ĐŅийĐēа ĐŋŅи СаĐŋŅŅĐēĐĩ ŅĐĩŅвĐĩŅа",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "Logga ut",
|
|
13
13
|
"Login": "Logga in",
|
|
14
14
|
"Providers": "LeverantÃļrer",
|
|
15
|
+
"Style": "Stil",
|
|
15
16
|
"Usage": "Användarstatistik",
|
|
16
17
|
"API Key": "API-nyckel",
|
|
17
18
|
"Connected": "Ansluten",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Hur det fungerar:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE-begäran â DNS-omdirigering till localhost:443 â MITM-proxy avlyssnar â 9Router â svar till Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Inga API-nycklar â skapa en pÃĨ nyckelsidan",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "t.ex.: en varm, mjuk rÃļst som talar lÃĨngsamt med brittisk accent",
|
|
179
181
|
"sk_9router (default)": "sk_9router (standard)",
|
|
180
182
|
"Server started": "Servern startad",
|
|
181
183
|
"Failed to start server": "Misslyckades att starta servern",
|
|
@@ -1119,6 +1119,7 @@
|
|
|
1119
1119
|
"Stop Server": "ā¸Ģā¸ĸ⏏ā¸āšā¸ā¸´ā¸Ŗāšā¸āšā¸§ā¸ā¸Ŗāš",
|
|
1120
1120
|
"Stopped": "ā¸Ģā¸ĸ⏏ā¸āšā¸Ĩāšā¸§",
|
|
1121
1121
|
"Strict Proxy": "Strict Proxy",
|
|
1122
|
+
"Style": "ā¸Ēāšā¸ā¸Ĩāš",
|
|
1122
1123
|
"Subagent Model": "Subagent Model",
|
|
1123
1124
|
"Sudo Password Required": "ā¸āšā¸ā¸āšā¸āš Sudo Password",
|
|
1124
1125
|
"Sudo password is required": "ā¸āšā¸ā¸āšā¸āš Sudo password",
|
|
@@ -1312,6 +1313,7 @@
|
|
|
1312
1313
|
"disabled": "ā¸ā¸´ā¸āšā¸āšā¸ā¸˛ā¸āšā¸Ĩāšā¸§",
|
|
1313
1314
|
"dollars per million tokens": "ā¸ā¸ā¸Ĩā¸Ĩ⏞⏪āšā¸āšā¸ā¸Ĩāšā¸˛ā¸ tokens",
|
|
1314
1315
|
"e.g. CwhRBWXzGAHq8TQ4Fs17": "āšā¸āšā¸ CwhRBWXzGAHq8TQ4Fs17",
|
|
1316
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "āšā¸āšā¸ āšā¸Ēā¸ĩā¸ĸā¸ā¸ā¸ā¸ā¸¸āšā¸ā¸ā¸¸āšā¸Ąā¸ā¸§ā¸Ĩ ā¸ā¸šā¸ā¸āšā¸˛āš ā¸āšā¸§ā¸ĸā¸Ē⏺āšā¸ā¸ĩā¸ĸā¸ā¸ā¸ąā¸ā¸ā¸¤ā¸Š",
|
|
1315
1317
|
"e.g. claude-opus-4-5": "āšā¸āšā¸ claude-opus-4-5",
|
|
1316
1318
|
"e.g. my-model-id": "āšā¸āšā¸ my-model-id",
|
|
1317
1319
|
"e.g. tts-1-hd": "āšā¸āšā¸ tts-1-hd",
|
|
@@ -1388,4 +1390,4 @@
|
|
|
1388
1390
|
"â Confirm Add": "â ā¸ĸ⏎ā¸ā¸ĸā¸ąā¸ā¸ā¸˛ā¸Ŗāšā¸ā¸´āšā¸Ą",
|
|
1389
1391
|
"đ Configure providers in dashboard or use environment variables": "đ ā¸ā¸ŗā¸Ģā¸ā¸ā¸āšā¸˛ providers āšā¸ dashboard ā¸Ģ⏪⏎ā¸āšā¸āš environment variables",
|
|
1390
1392
|
"đ OAuth required. Add now and authenticate after Apply; tool list will be discovered after first connect.": "đ ā¸āšā¸ā¸āšā¸āš OAuth āšā¸ā¸´āšā¸Ąā¸ā¸ā¸ā¸ā¸ĩāšāšā¸Ĩāšā¸§ authenticate ā¸Ģā¸Ĩā¸ąā¸ Apply; ⏪⏞ā¸ĸā¸ā¸˛ā¸Ŗāšā¸ā¸Ŗā¸ˇāšā¸ā¸ā¸Ąā¸ˇā¸ā¸ā¸°ā¸ā¸šā¸ā¸āšā¸ā¸ā¸ā¸Ģā¸Ĩā¸ąā¸ā¸ā¸˛ā¸Ŗāšā¸ā¸ˇāšā¸ā¸Ąā¸āšā¸ā¸ā¸Ŗā¸ąāšā¸āšā¸Ŗā¸"
|
|
1391
|
-
}
|
|
1393
|
+
}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "Maglog out",
|
|
13
13
|
"Login": "Magsimula ng sesyon",
|
|
14
14
|
"Providers": "Mga Provider",
|
|
15
|
+
"Style": "Estilo",
|
|
15
16
|
"Usage": "Mga Istatistika ng Paggamit",
|
|
16
17
|
"API Key": "Susi ng API",
|
|
17
18
|
"Connected": "Konektado",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Paano ito gumagana:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE request â DNS redirect sa localhost:443 â MITM proxy intercepts â 9Router â response sa Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Walang API keys â lumikha ng isa sa Keys page",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "hal.: mainit at malumanay na boses, dahan-dahang nagsasalita nang may British accent",
|
|
179
181
|
"sk_9router (default)": "sk_9router (default)",
|
|
180
182
|
"Server started": "Ang server ay nagsimula",
|
|
181
183
|
"Failed to start server": "Nabigo na magsimula ang server",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "ÃÄąkÄąÅ Yap",
|
|
13
13
|
"Login": "GiriÅ Yap",
|
|
14
14
|
"Providers": "SaÄlayÄącÄąlar",
|
|
15
|
+
"Style": "Stil",
|
|
15
16
|
"Usage": "KullanĹm İstatistikleri",
|
|
16
17
|
"API Key": "API AnahtarÄą",
|
|
17
18
|
"Connected": "BaÄlÄą",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "NasÄąl çalÄąÅÄąr:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE isteÄi â DNS'i localhost:443'e yÃļnlendir â MITM proxy yakalar â 9Router â Antigravity/Copilot'a yanÄąt",
|
|
178
179
|
"No API keys â create one in Keys page": "API anahtarÄą yok â Keys sayfasÄąnda bir tane oluÅturun",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "Ãļrn.: sÄącak ve yumuÅak bir ses, İngiliz aksanÄąyla yavaÅ konuÅuyor",
|
|
179
181
|
"sk_9router (default)": "sk_9router (varsayÄąlan)",
|
|
180
182
|
"Server started": "Sunucu baÅlatÄąldÄą",
|
|
181
183
|
"Failed to start server": "Sunucu baÅlatÄąlamadÄą",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "ĐиКŅи",
|
|
13
13
|
"Login": "ĐŖĐ˛ŅĐšŅи",
|
|
14
14
|
"Providers": "ĐĐžŅŅаŅаĐģŅĐŊиĐēи",
|
|
15
|
+
"Style": "ĐĄŅиĐģŅ",
|
|
15
16
|
"Usage": "ĐĄŅаŅиŅŅиĐēа виĐēĐžŅиŅŅаĐŊĐŊŅ",
|
|
16
17
|
"API Key": "ĐĐģŅŅ API",
|
|
17
18
|
"Connected": "ĐŅĐ´ĐēĐģŅŅĐĩĐŊĐž",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "Đ¯Đē ŅĐĩ ĐŋŅаŅŅŅ:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "ĐаĐŋĐ¸Ņ Antigravity/Copilot IDE â ĐĐĩŅĐĩĐŊаĐŋŅавĐģĐĩĐŊĐŊŅ DNS ĐŊа localhost:443 â MITM ĐŋŅĐžĐēŅŅ ĐŋĐĩŅĐĩŅ
ĐžĐŋиŅи â 9Router â вŅĐ´ĐŋОвŅĐ´Ņ ĐŊа Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "ĐĐĩĐŧĐ°Ņ ĐēĐģŅŅŅв API â ŅŅвОŅŅŅŅ ĐžĐ´Đ¸ĐŊ ĐŊа ŅŅĐžŅŅĐŊŅŅ ĐēĐģŅŅŅв",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "ĐŊаĐŋŅ.: ŅĐĩĐŋĐģиК Đŧ'ŅĐēиК ĐŗĐžĐģĐžŅ, ŅĐž ĐŋОвŅĐģŅĐŊĐž ĐŗĐžĐ˛ĐžŅиŅŅ Đˇ ĐąŅиŅаĐŊŅŅĐēиĐŧ аĐēŅĐĩĐŊŅĐžĐŧ",
|
|
179
181
|
"sk_9router (default)": "sk_9router (Са СаĐŧОвŅŅваĐŊĐŊŅĐŧ)",
|
|
180
182
|
"Server started": "ĐĄĐĩŅвĐĩŅ ĐˇĐ°ĐŋŅŅĐĩĐŊĐž",
|
|
181
183
|
"Failed to start server": "ĐĐĩ вдаĐģĐžŅŅ ĐˇĐ°ĐŋŅŅŅиŅи ŅĐĩŅвĐĩŅ",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "ŲØ§Ú¯ ØĸØ¤Ųš",
|
|
13
13
|
"Login": "ŲØ§Ú¯ اŲ",
|
|
14
14
|
"Providers": "بਧÛŲ
ÚŠŲŲØ¯Ú¯Ø§Ų",
|
|
15
|
+
"Style": "Ø§ŲØ¯Ø§Ø˛",
|
|
15
16
|
"Usage": "Ø§ØŗØĒØšŲ
Ø§Ų ÚŠÛ Ø§ØšØ¯Ø§Ø¯ŲØ´Ų
Ø§Øą",
|
|
16
17
|
"API Key": "API ÚŠŲÛØ¯",
|
|
17
18
|
"Connected": "Ų
ŲØŗŲÚŠ",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "ÛÛ ÚŠÛØŗÛ ڊاŲ
ÚŠØąØĒا ÛÛ:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE Ø¯ØąØŽŲØ§ØŗØĒ â DNS ÚŠŲ localhost:443 ÚŠÛ ØˇØąŲ ØąÛ ÚØ§ØĻØąÛÚŠŲš ÚŠØąÛÚē â MITM ŲžØąŲÚŠØŗÛ ØąŲÚŠÛ â 9Router â Antigravity/Copilot ÚŠŲ ØŦŲØ§Ø¨",
|
|
178
179
|
"No API keys â create one in Keys page": "ÚŠŲØĻÛ API ÚŠŲÛØ¯ ŲÛÛÚē â Keys ØĩŲØÛ Ų
ÛÚē Ø§ÛÚŠ Ø¨ŲØ§ØĻÛÚē",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "Ų
ØĢŲØ§Ų: Ú¯ØąŲ
Ø ŲØąŲ
ØĸŲØ§Ø˛Ø Ø¨ØąØˇØ§ŲŲÛ ŲÛØŦÛ ÚŠÛ ØŗØ§ØĒÚž ØĸÛØŗØĒÛ Ø¨ŲŲØĒÛ ÛŲØĻÛ",
|
|
179
181
|
"sk_9router (default)": "sk_9router (ÚÛŲØ§ŲŲš)",
|
|
180
182
|
"Server started": "ØŗØąŲØą Ø´ØąŲØš ÛŲÚ¯ÛØ§",
|
|
181
183
|
"Failed to start server": "ØŗØąŲØą Ø´ØąŲØš ÚŠØąŲÛ Ų
ÛÚē ŲØ§ÚŠØ§Ų
",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "ÄÄng xuáēĨt",
|
|
13
13
|
"Login": "ÄÄng nháēp",
|
|
14
14
|
"Providers": "Nhà cung cáēĨp",
|
|
15
|
+
"Style": "Phong cÃĄch",
|
|
15
16
|
"Usage": "Tháģng kÃĒ",
|
|
16
17
|
"API Key": "KhÃŗa API",
|
|
17
18
|
"Connected": " ÄÃŖ káēŋt náģi",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "CÃĄch hoáēĄt Äáģng:",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "YÃĒu cáē§u Antigravity/Copilot IDE â Chuyáģn hưáģng DNS Äáēŋn localhost:443 â MITM proxy cháēˇn â 9Router â pháēŖn háģi Äáēŋn Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "Không cÃŗ khÃŗa API â táēĄo máģt khÃŗa trong trang Keys",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "vd.: giáģng áēĨm ÃĄp, nháēš nhà ng, nÃŗi cháēm váģi giáģng Anh-Anh",
|
|
179
181
|
"sk_9router (default)": "sk_9router (máēˇc Äáģnh)",
|
|
180
182
|
"Server started": "ÄÃŖ kháģi Äáģng mÃĄy cháģ§",
|
|
181
183
|
"Failed to start server": "Không tháģ kháģi Äáģng mÃĄy cháģ§",
|
|
@@ -1119,6 +1119,7 @@
|
|
|
1119
1119
|
"Stop Server": "åæĸæåĄå¨",
|
|
1120
1120
|
"Stopped": "厞åæĸ",
|
|
1121
1121
|
"Strict Proxy": "ä¸Ĩæ ŧäģŖį",
|
|
1122
|
+
"Style": "éŖæ ŧ",
|
|
1122
1123
|
"Subagent Model": "åäģŖįæ¨Ąå",
|
|
1123
1124
|
"Sudo Password Required": "éčĻ sudo å¯į ",
|
|
1124
1125
|
"Sudo password is required": "éčĻ sudo å¯į ",
|
|
@@ -1312,6 +1313,7 @@
|
|
|
1312
1313
|
"disabled": "厞įĻį¨",
|
|
1313
1314
|
"dollars per million tokens": "įžå
/ įžä¸ Token",
|
|
1314
1315
|
"e.g. CwhRBWXzGAHq8TQ4Fs17": "äžåĻ CwhRBWXzGAHq8TQ4Fs17",
|
|
1316
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "äžåĻīŧ渊ææåįåéŗīŧį¨čąåŧåŖéŗįŧæ
ĸ蝴č¯",
|
|
1315
1317
|
"e.g. claude-opus-4-5": "äžåĻ claude-opus-4-5",
|
|
1316
1318
|
"e.g. my-model-id": "äžåĻ my-model-id",
|
|
1317
1319
|
"e.g. tts-1-hd": "äžåĻ tts-1-hd",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"Logout": "įģåē",
|
|
13
13
|
"Login": "įģé",
|
|
14
14
|
"Providers": "æäžč
",
|
|
15
|
+
"Style": "éĸ¨æ ŧ",
|
|
15
16
|
"Usage": "įĩąč¨",
|
|
16
17
|
"API Key": "API éé°",
|
|
17
18
|
"Connected": "厞骿Ĩ",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"How it works:": "åˇĨäŊåįīŧ",
|
|
177
178
|
"Antigravity/Copilot IDE request â DNS redirect to localhost:443 â MITM proxy intercepts â 9Router â response to Antigravity/Copilot": "Antigravity/Copilot IDE čĢæą â DNS éåŽåå° localhost:443 â MITM äģŖįææĒ â 9Router â åæå° Antigravity/Copilot",
|
|
178
179
|
"No API keys â create one in Keys page": "æ˛æ API éé° â å¨éé°é éĸä¸åĩåģēä¸å",
|
|
180
|
+
"e.g. a warm, gentle voice, speaking slowly with a British accent": "äžåĻīŧæēĢææåįåéŗīŧį¨čąåŧåŖéŗįˇŠæ
ĸčĒĒ芹",
|
|
179
181
|
"sk_9router (default)": "sk_9routerīŧéģčĒīŧ",
|
|
180
182
|
"Server started": "æåå¨åˇ˛åå",
|
|
181
183
|
"Failed to start server": "ååæåå¨å¤ąæ",
|
|
Binary file
|
|
Binary file
|
package/app/server.js
CHANGED
|
@@ -9,7 +9,7 @@ const currentPort = parseInt(process.env.PORT, 10) || 3000
|
|
|
9
9
|
const hostname = process.env.HOSTNAME || '0.0.0.0'
|
|
10
10
|
|
|
11
11
|
let keepAliveTimeout = parseInt(process.env.KEEP_ALIVE_TIMEOUT, 10)
|
|
12
|
-
const nextConfig = {"env":{},"typescript":{"ignoreBuildErrors":false},"typedRoutes":false,"distDir":"./.next-cli-build","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.mjs","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":14400,"formats":["image/webp"],"maximumRedirects":3,"maximumResponseBody":50000000,"dangerouslyAllowLocalIP":false,"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","localPatterns":[{"pathname":"**","search":""}],"remotePatterns":[],"qualities":[75],"unoptimized":true,"customCacheHandler":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"reactProductionProfiling":false,"reactStrictMode":null,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{"serverFunctions":true,"browserToTerminal":"warn"},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/Users/Working/router4","cacheComponents":false,"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":30,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":31536000}},"cacheHandlers":{},"experimental":{"appNewScrollHandler":false,"useSkewCookie":false,"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"cachedNavigations":false,"partialFallbacks":false,"dynamicOnHover":false,"varyParams":false,"prefetchInlining":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","proxyPrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":7,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"imgOptSkipMetadata":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"strictRouteTypes":false,"viewTransition":false,"removeUncaughtErrorAndRejectionListeners":false,"validateRSCRequestHeaders":false,"staleTimes":{"dynamic":0,"static":300},"reactDebugChannel":true,"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"transitionIndicator":false,"gestureTransition":false,"inlineCss":false,"useCache":false,"globalNotFound":false,"browserDebugInfoInTerminal":"warn","lockDistDir":true,"proxyClientMaxBodySize":134217728,"hideLogsAfterAbort":false,"mcpServer":true,"turbopackFileSystemCacheForDev":true,"turbopackFileSystemCacheForBuild":false,"turbopackInferModuleSideEffects":true,"turbopackPluginRuntimeStrategy":"childProcesses","optimizePackageImports":["@xyflow/react","@dnd-kit/core","@dnd-kit/sortable","material-symbols","marked","lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-sqlite-node","@effect/sql-sqlite-bun","@effect/sql-sqlite-wasm","@effect/sql-sqlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"htmlLimitedBots":"[\\w-]+-Google|Google-[\\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight","bundlePagesRouterDependencies":false,"configFileName":"next.config.mjs","serverExternalPackages":["better-sqlite3","sql.js","node:sqlite","bun:sqlite"],"turbopack":{"root":"/Users/Working/router4"},"outputFileTracingExcludes":{"*":["./gitbook/**/*"]},"distDirRoot":".next-cli-build","_originalRewrites":{"beforeFiles":[],"afterFiles":[{"source":"/v1/v1/:path*","destination":"/api/v1/:path*"},{"source":"/v1/v1","destination":"/api/v1"},{"source":"/codex/:path*","destination":"/api/v1/responses"},{"source":"/responses","destination":"/api/v1/responses"},{"source":"/v1beta/:path*","destination":"/api/v1beta/:path*"},{"source":"/v1beta","destination":"/api/v1beta"},{"source":"/v1/:path*","destination":"/api/v1/:path*"},{"source":"/v1","destination":"/api/v1"}],"fallback":[]}}
|
|
12
|
+
const nextConfig = {"env":{},"typescript":{"ignoreBuildErrors":false},"typedRoutes":false,"distDir":"./.next-cli-build","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.mjs","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":14400,"formats":["image/webp"],"maximumRedirects":3,"maximumResponseBody":50000000,"dangerouslyAllowLocalIP":false,"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","localPatterns":[{"pathname":"**","search":""}],"remotePatterns":[],"qualities":[75],"unoptimized":true,"customCacheHandler":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"reactProductionProfiling":false,"reactStrictMode":null,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{"serverFunctions":true,"browserToTerminal":"warn"},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/Users/Working/router4","cacheComponents":false,"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":30,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":31536000}},"cacheHandlers":{},"experimental":{"appNewScrollHandler":false,"useSkewCookie":false,"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"cachedNavigations":false,"partialFallbacks":false,"dynamicOnHover":false,"varyParams":false,"prefetchInlining":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","proxyPrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":7,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"imgOptSkipMetadata":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"strictRouteTypes":false,"viewTransition":false,"removeUncaughtErrorAndRejectionListeners":false,"validateRSCRequestHeaders":false,"staleTimes":{"dynamic":0,"static":300},"reactDebugChannel":true,"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"transitionIndicator":false,"gestureTransition":false,"inlineCss":false,"useCache":false,"globalNotFound":false,"browserDebugInfoInTerminal":"warn","lockDistDir":true,"proxyClientMaxBodySize":134217728,"hideLogsAfterAbort":false,"mcpServer":true,"turbopackFileSystemCacheForDev":true,"turbopackFileSystemCacheForBuild":false,"turbopackInferModuleSideEffects":true,"turbopackPluginRuntimeStrategy":"childProcesses","optimizePackageImports":["@xyflow/react","@dnd-kit/core","@dnd-kit/sortable","material-symbols","marked","lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-sqlite-node","@effect/sql-sqlite-bun","@effect/sql-sqlite-wasm","@effect/sql-sqlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"htmlLimitedBots":"[\\w-]+-Google|Google-[\\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight","bundlePagesRouterDependencies":false,"configFileName":"next.config.mjs","serverExternalPackages":["better-sqlite3","sql.js","node:sqlite","bun:sqlite","open"],"turbopack":{"root":"/Users/Working/router4"},"outputFileTracingExcludes":{"*":["./gitbook/**/*"]},"distDirRoot":".next-cli-build","_originalRewrites":{"beforeFiles":[],"afterFiles":[{"source":"/v1/v1/:path*","destination":"/api/v1/:path*"},{"source":"/v1/v1","destination":"/api/v1"},{"source":"/codex/:path*","destination":"/api/v1/responses"},{"source":"/responses","destination":"/api/v1/responses"},{"source":"/v1beta/:path*","destination":"/api/v1beta/:path*"},{"source":"/v1beta","destination":"/api/v1beta"},{"source":"/v1/:path*","destination":"/api/v1/:path*"},{"source":"/v1","destination":"/api/v1"}],"fallback":[]}}
|
|
13
13
|
|
|
14
14
|
process.env.__NEXT_PRIVATE_STANDALONE_CONFIG = JSON.stringify(nextConfig)
|
|
15
15
|
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
// Background proactive OAuth token refresh â independent of inbound requests.
|
|
2
|
+
// Fail-open everywhere: tick errors and per-connection failures never kill the interval.
|
|
3
|
+
|
|
4
|
+
import * as log from "../utils/logger.js";
|
|
5
|
+
import { getRefreshLeadMs } from "open-sse/services/tokenRefresh.js";
|
|
6
|
+
import { getCredentialExpiryMs } from "open-sse/services/oauthCredentialManager.js";
|
|
7
|
+
|
|
8
|
+
/** Refresh when expiry is within 30 minutes (or the provider on-request lead, whichever larger). */
|
|
9
|
+
export const BACKGROUND_REFRESH_LEAD_MS = 30 * 60 * 1000;
|
|
10
|
+
const DEFAULT_INTERVAL_MS = 5 * 60 * 1000;
|
|
11
|
+
const INITIAL_DELAY_MS = 10 * 1000;
|
|
12
|
+
|
|
13
|
+
let started = false;
|
|
14
|
+
let intervalHandle = null;
|
|
15
|
+
let initialTimeoutHandle = null;
|
|
16
|
+
let tickRunning = false;
|
|
17
|
+
|
|
18
|
+
function isTruthyEnv(value) {
|
|
19
|
+
if (value == null || value === "") return false;
|
|
20
|
+
const v = String(value).trim().toLowerCase();
|
|
21
|
+
return v === "1" || v === "true" || v === "yes" || v === "on";
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function isNonServerRuntime() {
|
|
25
|
+
if (typeof window !== "undefined") return true;
|
|
26
|
+
const phase = process.env.NEXT_PHASE || "";
|
|
27
|
+
if (
|
|
28
|
+
phase === "phase-production-build" ||
|
|
29
|
+
phase === "phase-export" ||
|
|
30
|
+
phase === "phase-static"
|
|
31
|
+
) {
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
// Next.js build / static generation markers
|
|
35
|
+
if (process.env.NEXT_RUNTIME === "edge") return true;
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Pure selection: OAuth connections with a refreshToken whose access token
|
|
41
|
+
* expires within max(provider on-request lead, BACKGROUND_REFRESH_LEAD_MS).
|
|
42
|
+
*
|
|
43
|
+
* @param {Array<object>} connections
|
|
44
|
+
* @param {number} [nowMs]
|
|
45
|
+
* @returns {Array<object>}
|
|
46
|
+
*/
|
|
47
|
+
export function selectConnectionsNeedingRefresh(connections, nowMs = Date.now()) {
|
|
48
|
+
if (!Array.isArray(connections) || connections.length === 0) return [];
|
|
49
|
+
|
|
50
|
+
const out = [];
|
|
51
|
+
for (const conn of connections) {
|
|
52
|
+
if (!conn) continue;
|
|
53
|
+
|
|
54
|
+
const authType = String(conn.authType || "").toLowerCase().replace(/_/g, "");
|
|
55
|
+
if (authType !== "oauth") continue;
|
|
56
|
+
if (!conn.refreshToken) continue;
|
|
57
|
+
|
|
58
|
+
const expiresAtMs = getCredentialExpiryMs(conn);
|
|
59
|
+
if (expiresAtMs === null) continue;
|
|
60
|
+
|
|
61
|
+
const providerLead = getRefreshLeadMs(conn.provider);
|
|
62
|
+
const leadMs = Math.max(
|
|
63
|
+
Number.isFinite(providerLead) ? providerLead : 0,
|
|
64
|
+
BACKGROUND_REFRESH_LEAD_MS
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
if (expiresAtMs - nowMs < leadMs) {
|
|
68
|
+
out.push(conn);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return out;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
async function loadActiveConnections() {
|
|
75
|
+
// Dynamic import avoids circular load with db / app graph at module eval time.
|
|
76
|
+
const { getProviderConnections } = await import("../../lib/db/repos/connectionsRepo.js");
|
|
77
|
+
return getProviderConnections({ isActive: true });
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
async function refreshOne(connection) {
|
|
81
|
+
const { checkAndRefreshToken } = await import("./tokenRefresh.js");
|
|
82
|
+
return checkAndRefreshToken(connection.provider, connection, { force: true });
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* One scheduler tick. Fail-open at top level and per connection.
|
|
87
|
+
* @param {{ loadConnections?: Function, refreshConnection?: Function }} [deps]
|
|
88
|
+
*/
|
|
89
|
+
export async function runBackgroundTokenRefreshTick(deps = {}) {
|
|
90
|
+
if (tickRunning) {
|
|
91
|
+
log.debug("BG_TOKEN_REFRESH", "Tick already running, skip");
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
tickRunning = true;
|
|
95
|
+
try {
|
|
96
|
+
const load = deps.loadConnections || loadActiveConnections;
|
|
97
|
+
const refresh = deps.refreshConnection || refreshOne;
|
|
98
|
+
|
|
99
|
+
const connections = await load();
|
|
100
|
+
const due = selectConnectionsNeedingRefresh(connections, Date.now());
|
|
101
|
+
|
|
102
|
+
if (due.length === 0) {
|
|
103
|
+
log.debug("BG_TOKEN_REFRESH", "No connections due for refresh", {
|
|
104
|
+
active: Array.isArray(connections) ? connections.length : 0,
|
|
105
|
+
});
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
log.info("BG_TOKEN_REFRESH", "Refreshing due OAuth connections", {
|
|
110
|
+
due: due.length,
|
|
111
|
+
ids: due.map((c) => c.id).filter(Boolean),
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
await Promise.allSettled(
|
|
115
|
+
due.map(async (conn) => {
|
|
116
|
+
try {
|
|
117
|
+
await refresh(conn);
|
|
118
|
+
log.info("BG_TOKEN_REFRESH", "Connection refresh finished", {
|
|
119
|
+
id: conn.id,
|
|
120
|
+
provider: conn.provider,
|
|
121
|
+
});
|
|
122
|
+
} catch (err) {
|
|
123
|
+
log.warn("BG_TOKEN_REFRESH", "Connection refresh failed (swallowed)", {
|
|
124
|
+
id: conn?.id,
|
|
125
|
+
provider: conn?.provider,
|
|
126
|
+
error: err?.message ?? String(err),
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
})
|
|
130
|
+
);
|
|
131
|
+
} catch (err) {
|
|
132
|
+
log.warn("BG_TOKEN_REFRESH", "Tick failed (swallowed)", {
|
|
133
|
+
error: err?.message ?? String(err),
|
|
134
|
+
});
|
|
135
|
+
} finally {
|
|
136
|
+
tickRunning = false;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Start the background interval. Safe to call multiple times (no-op if already started).
|
|
142
|
+
* @param {{ intervalMs?: number }} [opts]
|
|
143
|
+
* @returns {boolean} true if started this call
|
|
144
|
+
*/
|
|
145
|
+
export function startBackgroundTokenRefresh({ intervalMs } = {}) {
|
|
146
|
+
if (started) return false;
|
|
147
|
+
if (isTruthyEnv(process.env.DISABLE_BACKGROUND_TOKEN_REFRESH)) {
|
|
148
|
+
log.info("BG_TOKEN_REFRESH", "Disabled via DISABLE_BACKGROUND_TOKEN_REFRESH");
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
if (isNonServerRuntime()) {
|
|
152
|
+
log.debug("BG_TOKEN_REFRESH", "Skip start outside long-running server runtime");
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
started = true;
|
|
157
|
+
const period = Number.isFinite(intervalMs) && intervalMs > 0 ? intervalMs : DEFAULT_INTERVAL_MS;
|
|
158
|
+
|
|
159
|
+
const safeTick = () => {
|
|
160
|
+
runBackgroundTokenRefreshTick().catch((err) => {
|
|
161
|
+
log.warn("BG_TOKEN_REFRESH", "Unhandled tick rejection (swallowed)", {
|
|
162
|
+
error: err?.message ?? String(err),
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
// First pass soon after boot so idle connections don't wait a full interval.
|
|
168
|
+
initialTimeoutHandle = setTimeout(safeTick, INITIAL_DELAY_MS);
|
|
169
|
+
if (initialTimeoutHandle.unref) initialTimeoutHandle.unref();
|
|
170
|
+
|
|
171
|
+
intervalHandle = setInterval(safeTick, period);
|
|
172
|
+
if (intervalHandle.unref) intervalHandle.unref();
|
|
173
|
+
|
|
174
|
+
log.info("BG_TOKEN_REFRESH", "Scheduler started", {
|
|
175
|
+
intervalMs: period,
|
|
176
|
+
initialDelayMs: INITIAL_DELAY_MS,
|
|
177
|
+
leadMs: BACKGROUND_REFRESH_LEAD_MS,
|
|
178
|
+
});
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
export function stopBackgroundTokenRefresh() {
|
|
183
|
+
if (initialTimeoutHandle) {
|
|
184
|
+
clearTimeout(initialTimeoutHandle);
|
|
185
|
+
initialTimeoutHandle = null;
|
|
186
|
+
}
|
|
187
|
+
if (intervalHandle) {
|
|
188
|
+
clearInterval(intervalHandle);
|
|
189
|
+
intervalHandle = null;
|
|
190
|
+
}
|
|
191
|
+
if (started) {
|
|
192
|
+
started = false;
|
|
193
|
+
log.info("BG_TOKEN_REFRESH", "Scheduler stopped");
|
|
194
|
+
}
|
|
195
|
+
}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=1829,exports.ids=[615,1829,1998],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","âĒ","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] đ [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] âšī¸ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] â ī¸ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] â [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] đĨ ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] đ [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},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}}}},40615:(a,b,c)=>{c.d(b,{AI_PROVIDERS:()=>s,js:()=>w,DI:()=>n,fg:()=>k,Pd:()=>o,IS:()=>h,nJ:()=>i,zN:()=>j,JH:()=>m,jO:()=>y,wb:()=>x,br:()=>l,wG:()=>v,zt:()=>t,gb:()=>q,gC:()=>r,mq:()=>p,rs:()=>u});var d=c(3610);let e="â ī¸ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.A.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.A.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.authModes?{authModes:a.authModes}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m="openai-compatible-",n="anthropic-compatible-",o="custom-embedding-";function p(a){return"string"==typeof a&&a.startsWith(m)}function q(a){return"string"==typeof a&&a.startsWith(n)}function r(a){return"string"==typeof a&&a.startsWith(o)}let s={...h,...i,...j,...k,...l};function t(a){for(let b of Object.values(s))if(b.alias===a||b.id===a)return b;return null}function u(a){let b=t(a);return b?.id||a}function v(a){let b=s[a];return b?.alias||a}let w=Object.values(s).reduce((a,b)=>(a[b.alias]=b.id,a),{});Object.values(s).reduce((a,b)=>(a[b.id]=b.alias,a),{});let x=d.A.filter(a=>a.features?.usage).map(a=>a.id),y=d.A.filter(a=>a.features?.usageApikey).map(a=>a.id)},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)},89718:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(9248)}};
|