@yina-npm/openrouterx 0.4.38 → 0.4.52
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/README.md +1145 -300
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/app-path-routes-manifest.json +6 -6
- package/app/.next/build-manifest.json +2 -2
- package/app/.next/required-server-files.json +16 -3
- package/app/.next/routes-manifest.json +26 -24
- package/app/.next/server/app/(dashboard)/dashboard/admin/keys/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/admin/keys/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/admin/keys/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/admin/users/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/admin/users/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/admin/users/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +24 -0
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -0
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -0
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/focus-ui/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/focus-ui/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/focus-ui/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +10 -10
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/network-analysis/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/network-analysis/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/network-analysis/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js +4 -4
- package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/quota/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/skills/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/user/page.js +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/user/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/user/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error/page.js +2 -2
- package/app/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +1 -1
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page.js +2 -2
- package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_not-found.html +1 -1
- package/app/.next/server/app/_not-found.rsc +4 -4
- package/app/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
- package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/api/auth/login/route.js +1 -1
- package/app/.next/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/logout/route.js +1 -1
- package/app/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/me/route.js +1 -1
- package/app/.next/server/app/api/auth/me/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/oidc/callback/route.js +1 -1
- package/app/.next/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/oidc/start/route.js +1 -1
- package/app/.next/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/oidc/test/route.js +1 -1
- package/app/.next/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/status/route.js +1 -1
- package/app/.next/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/all-statuses/route.js +10 -2
- package/app/.next/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/inject-auth/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/inject-auth/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/restart/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/restart/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/test/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/cline-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/activate-account/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/codex-settings/activate-account/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/cowork-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/deepseek-tui-settings/route.js +9 -0
- package/app/.next/server/app/api/{cloud/auth → cli-tools/deepseek-tui-settings}/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/deepseek-tui-settings/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/jcode-settings/route.js +3 -0
- package/app/.next/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -0
- package/app/.next/server/app/api/cli-tools/jcode-settings/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/opencode-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/route.js +1 -1
- package/app/.next/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next/server/app/api/health/route.js +1 -1
- package/app/.next/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next/server/app/api/init/route.js +1 -1
- package/app/.next/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/keys/route.js +1 -1
- package/app/.next/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next/server/app/api/locale/route.js +1 -1
- package/app/.next/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next/server/app/api/mcp/[plugin]/message/route.js +3 -3
- package/app/.next/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next/server/app/api/mcp/[plugin]/sse/route.js +4 -4
- package/app/.next/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
- package/app/.next/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
- package/app/.next/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next/server/app/api/media-providers/tts/minimax/voices/route.js +1 -0
- package/app/.next/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -0
- package/app/.next/server/app/api/media-providers/tts/minimax/voices/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/alias/route.js +1 -1
- package/app/.next/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/availability/route.js +1 -1
- package/app/.next/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/custom/route.js +1 -1
- package/app/.next/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/disabled/route.js +1 -1
- package/app/.next/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/route.js +1 -1
- package/app/.next/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/test/route.js +1 -1
- package/app/.next/server/app/api/models/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/network-analysis/route.js +2 -2
- package/app/.next/server/app/api/network-analysis/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +2 -2
- package/app/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +2 -2
- package/app/.next/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/app/.next/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next/server/app/api/pricing/route.js +1 -1
- package/app/.next/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/client/route.js +1 -1
- package/app/.next/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/app/.next/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/route.js +1 -1
- package/app/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/suggested-models/route.js +1 -1
- package/app/.next/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/validate/route.js +1 -1
- package/app/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/app/.next/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/app/.next/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/database/route.js +1 -1
- package/app/.next/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/route.js +1 -1
- package/app/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/shutdown/route.js +1 -1
- package/app/.next/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next/server/app/api/startup-notices/route.js +2 -2
- package/app/.next/server/app/api/startup-notices/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tags/route.js +1 -1
- package/app/.next/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/load/route.js +1 -1
- package/app/.next/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/save/route.js +1 -1
- package/app/.next/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/send/route.js +1 -1
- package/app/.next/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/translate/route.js +1 -1
- package/app/.next/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/status/route.js +1 -1
- package/app/.next/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-check/route.js +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-install/route.js +4 -4
- package/app/.next/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-login/route.js +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/tunnel/tailscale-start-daemon/route.js +2 -2
- package/app/.next/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/api-keys/route.js +1 -1
- package/app/.next/server/app/api/usage/api-keys/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/chart/route.js +1 -1
- package/app/.next/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/history/route.js +1 -1
- package/app/.next/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/logs/route.js +1 -1
- package/app/.next/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/providers/route.js +1 -1
- package/app/.next/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/request-details/route.js +1 -1
- package/app/.next/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/stats/route.js +1 -1
- package/app/.next/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/stream/route.js +2 -2
- package/app/.next/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next/server/app/api/users/[id]/route.js +1 -1
- package/app/.next/server/app/api/users/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/users/route.js +1 -1
- package/app/.next/server/app/api/users/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/messages/route.js +1 -1
- package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/models/[kind]/route.js +1 -1
- package/app/.next/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/models/route.js +1 -1
- package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/responses/route.js +1 -1
- package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/route.js +1 -1
- package/app/.next/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/search/route.js +1 -1
- package/app/.next/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/web/fetch/route.js +1 -1
- package/app/.next/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/version/route.js +1 -1
- package/app/.next/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next/server/app/api/version/update/route.js +1 -1
- package/app/.next/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next/server/app/callback/page.js +2 -2
- package/app/.next/server/app/callback/page.js.nft.json +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback.html +1 -1
- package/app/.next/server/app/callback.rsc +4 -4
- package/app/.next/server/app/callback.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/_index.segment.rsc +4 -4
- package/app/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing/page.js +2 -2
- package/app/.next/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.rsc +4 -4
- package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
- package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/favicon.ico/route.js +1 -1
- package/app/.next/server/app/favicon.ico/route.js.nft.json +1 -1
- package/app/.next/server/app/index.html +1 -1
- package/app/.next/server/app/index.rsc +4 -4
- package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_index.segment.rsc +4 -4
- package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/landing/page.js +2 -2
- package/app/.next/server/app/landing/page.js.nft.json +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing.html +1 -1
- package/app/.next/server/app/landing.rsc +4 -4
- package/app/.next/server/app/landing.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/_index.segment.rsc +4 -4
- package/app/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next/server/app/login/page.js +2 -2
- package/app/.next/server/app/login/page.js.nft.json +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login.html +1 -1
- package/app/.next/server/app/login.rsc +5 -5
- package/app/.next/server/app/login.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/login.segments/_index.segment.rsc +4 -4
- package/app/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next/server/app/page.js +2 -2
- package/app/.next/server/app/page.js.nft.json +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app-paths-manifest.json +6 -6
- package/app/.next/server/chunks/1350.js +4 -4
- package/app/.next/server/chunks/1476.js +1 -0
- package/app/.next/server/chunks/2415.js +17 -0
- package/app/.next/server/chunks/2506.js +4 -4
- package/app/.next/server/chunks/2560.js +1 -1
- package/app/.next/server/chunks/2574.js +1 -0
- package/app/.next/server/chunks/2722.js +58 -0
- package/app/.next/server/chunks/3110.js +56 -5
- package/app/.next/server/chunks/3493.js +2 -2
- package/app/.next/server/chunks/3593.js +2 -2
- package/app/.next/server/chunks/412.js +5 -5
- package/app/.next/server/chunks/{9641.js → 4565.js} +2 -2
- package/app/.next/server/chunks/4664.js +1 -1
- package/app/.next/server/chunks/5217.js +1 -1
- package/app/.next/server/chunks/5330.js +7 -5
- package/app/.next/server/chunks/5681.js +1 -1
- package/app/.next/server/chunks/6001.js +1 -1
- package/app/.next/server/chunks/6393.js +1 -1
- package/app/.next/server/chunks/7177.js +1 -0
- package/app/.next/server/chunks/7595.js +1 -1
- package/app/.next/server/chunks/7828.js +1 -1
- package/app/.next/server/chunks/7930.js +3 -0
- package/app/.next/server/chunks/8574.js +1 -0
- package/app/.next/server/chunks/8651.js +9 -0
- package/app/.next/server/chunks/8750.js +1 -0
- package/app/.next/server/chunks/8760.js +1 -1
- package/app/.next/server/chunks/8895.js +25 -16
- package/app/.next/server/chunks/9095.js +1 -0
- package/app/.next/server/chunks/9718.js +1 -1
- package/app/.next/server/chunks/9856.js +1 -1
- package/app/.next/server/functions-config-manifest.json +2 -30
- package/app/.next/server/middleware-build-manifest.js +1 -1
- package/app/.next/server/middleware.js +2 -2
- package/app/.next/server/pages/404.html +1 -1
- package/app/.next/server/pages/500.html +1 -1
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/Q5oB2dEL7XeWBhjwqT_vo/_buildManifest.js +1 -0
- package/app/.next/static/chunks/1321-621ed3470478397e.js +1 -0
- package/app/.next/static/chunks/4072-cc92fb1222a2752b.js +3 -0
- package/app/.next/static/chunks/{5095-42d435b0583b2f98.js → 5095-c2bb7e2fc99ab8c3.js} +2 -2
- package/app/.next/static/chunks/5497-bebd4378b1048022.js +7 -0
- package/app/.next/static/chunks/6069-7c51e16aef293430.js +58 -0
- package/app/.next/static/chunks/7055-e60e20f43bfbe5f8.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-efbd0b93d35d25cc.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-acbac7a67319955a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/page-7fabe6d07b1f8823.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/focus-ui/{page-fb59dea0e48968bf.js → page-329b3a170ddd28c6.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-e43ee64cc1f1547c.js +59 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/mitm/page-e0f570e37fcc4d53.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-31a6e1cb19ebc4d8.js → page-c3234f9c82b1a78e.js} +2 -2
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-979e3e3663264d2b.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/proxy-pools/page-5040868a50d977bf.js +4 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-18d6399108c458a6.js +1 -0
- package/app/.next/static/chunks/app/_global-error/page-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/login/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/logout/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/me/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/oidc/callback/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/oidc/start/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/oidc/test/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/status/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/all-statuses/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/inject-auth/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/restart/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/test/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/activate-account/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cowork-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/hermes-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/jcode-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/[id]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/health/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/init/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/keys/[id]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/keys/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/locale/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/mcp/[plugin]/message/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/mcp/[plugin]/sse/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/deepgram/voices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/inworld/voices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/minimax/voices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/voices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/models/alias/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/models/availability/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/models/custom/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/models/disabled/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/models/test/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/network-analysis/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/gitlab/pat/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/client/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/kilo/free-models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/suggested-models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/test-batch/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/validate/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/database/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy-test/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/require-login/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/shutdown/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/startup-notices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tags/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/console-logs/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/load/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/save/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/send/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/translate/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/disable/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/enable/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/status/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-check/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-disable/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-enable/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-install/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-login/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/api-keys/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/chart/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/history/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/logs/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/providers/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-details/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-logs/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/stats/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/stream/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/users/[id]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/users/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/api/chat/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/voices/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/embeddings/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/images/generations/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/[kind]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/info/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/compact/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/search/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/web/fetch/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/version/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/version/shutdown/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/api/version/update/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/manifest.webmanifest/route-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/app/page-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/{main-2237af167d2c1c35.js → main-b8d198db3858ff3e.js} +3 -3
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-814b95c8fc310a6a.js +1 -0
- package/app/.next/static/css/402ee8646e1afa89.css +1 -0
- package/app/node_modules/better-sqlite3/build/Release/better_sqlite3.node +0 -0
- package/app/node_modules/sql.js/dist/sql-wasm.js +185 -0
- package/app/node_modules/sql.js/dist/sql-wasm.wasm +0 -0
- package/app/node_modules/sql.js/package.json +58 -0
- package/app/package.json +5 -1
- package/app/public/i18n/literals/ar.json +176 -173
- package/app/public/i18n/literals/bn.json +176 -173
- package/app/public/i18n/literals/cs.json +176 -173
- package/app/public/i18n/literals/da.json +176 -173
- package/app/public/i18n/literals/de.json +176 -173
- package/app/public/i18n/literals/el.json +176 -173
- package/app/public/i18n/literals/es.json +176 -173
- package/app/public/i18n/literals/fi.json +176 -173
- package/app/public/i18n/literals/fr.json +176 -173
- package/app/public/i18n/literals/he.json +176 -173
- package/app/public/i18n/literals/hi.json +176 -173
- package/app/public/i18n/literals/hu.json +176 -173
- package/app/public/i18n/literals/id.json +176 -173
- package/app/public/i18n/literals/it.json +176 -173
- package/app/public/i18n/literals/ja.json +176 -173
- package/app/public/i18n/literals/ko.json +176 -173
- package/app/public/i18n/literals/nl.json +176 -173
- package/app/public/i18n/literals/no.json +176 -173
- package/app/public/i18n/literals/pl.json +176 -173
- package/app/public/i18n/literals/pt-BR.json +176 -173
- package/app/public/i18n/literals/pt-PT.json +176 -173
- package/app/public/i18n/literals/ro.json +176 -173
- package/app/public/i18n/literals/ru.json +176 -173
- package/app/public/i18n/literals/sv.json +176 -173
- package/app/public/i18n/literals/th.json +176 -173
- package/app/public/i18n/literals/tl.json +176 -173
- package/app/public/i18n/literals/tr.json +176 -173
- package/app/public/i18n/literals/uk.json +176 -173
- package/app/public/i18n/literals/ur.json +176 -173
- package/app/public/i18n/literals/vi.json +176 -173
- package/app/public/i18n/literals/zh-CN.json +356 -359
- package/app/public/i18n/literals/zh-TW.json +184 -181
- package/app/public/providers/amp.png +0 -0
- package/app/public/providers/deepseek-tui.png +0 -0
- package/app/public/providers/jcode.png +0 -0
- package/app/public/providers/xiaomi-tokenplan.png +0 -0
- package/app/server.js +1 -1
- package/app/src/lib/db/migrate.js +56 -18
- package/app/src/mitm/config.js +16 -1
- package/app/src/mitm/handlers/antigravity.js +2 -1
- package/app/src/mitm/handlers/base.js +4 -1
- package/app/src/mitm/handlers/kiro.js +3 -1
- package/app/src/mitm/logger.js +11 -1
- package/app/src/mitm/server.js +18 -15
- package/package.json +1 -1
- package/app/.next/server/app/api/cloud/auth/route.js +0 -1
- package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +0 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js +0 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js.nft.json +0 -1
- package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +0 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js +0 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js.nft.json +0 -1
- package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +0 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js +0 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js.nft.json +0 -1
- package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +0 -1
- package/app/.next/server/chunks/2343.js +0 -1
- package/app/.next/server/chunks/3855.js +0 -1
- package/app/.next/server/chunks/4126.js +0 -1
- package/app/.next/server/chunks/4922.js +0 -9
- package/app/.next/server/chunks/5434.js +0 -1
- package/app/.next/server/chunks/5627.js +0 -17
- package/app/.next/server/chunks/723.js +0 -44
- package/app/.next/server/chunks/8866.js +0 -1
- package/app/.next/server/chunks/9300.js +0 -3
- package/app/.next/server/chunks/9460.js +0 -1
- package/app/.next/static/9qtW6KlzV_D2b828CZp1A/_buildManifest.js +0 -1
- package/app/.next/static/chunks/1321-634f2d25db77d618.js +0 -1
- package/app/.next/static/chunks/4072-91de6609dc7e6753.js +0 -3
- package/app/.next/static/chunks/5497-4a0f0c365aea0ea7.js +0 -7
- package/app/.next/static/chunks/5964-08d6048e026d4245.js +0 -44
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-211e322f002d5464.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/page-69469b6440aff8d0.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-95d31a6372622fcf.js +0 -59
- package/app/.next/static/chunks/app/(dashboard)/dashboard/mitm/page-7ae37df256035f59.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-9d071b63170b7f71.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/proxy-pools/page-7762d83be0982941.js +0 -4
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-f77dc916ed5a6f99.js +0 -1
- package/app/.next/static/chunks/app/_global-error/page-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/login/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/logout/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/me/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/oidc/callback/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/oidc/start/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/oidc/test/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/auth/status/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/all-statuses/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/inject-auth/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/restart/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/test/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/activate-account/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cowork-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/hermes-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/auth/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/combos/[id]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/combos/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/health/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/init/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/keys/[id]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/keys/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/locale/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/mcp/[plugin]/message/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/mcp/[plugin]/sse/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/deepgram/voices/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/inworld/voices/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/voices/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/models/alias/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/models/availability/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/models/custom/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/models/disabled/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/models/test/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/network-analysis/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/gitlab/pat/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/client/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/kilo/free-models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/suggested-models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/test-batch/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/providers/validate/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/settings/database/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy-test/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/settings/require-login/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/settings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/shutdown/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/startup-notices/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tags/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/translator/console-logs/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/translator/load/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/translator/save/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/translator/send/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/translator/translate/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/disable/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/enable/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/status/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-check/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-disable/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-enable/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-install/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-login/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/api-keys/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/chart/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/history/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/logs/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/providers/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-details/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-logs/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/stats/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/usage/stream/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/users/[id]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/users/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/api/chat/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/voices/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/embeddings/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/images/generations/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/[kind]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/info/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/compact/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/search/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1/web/fetch/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/version/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/version/shutdown/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/api/version/update/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/manifest.webmanifest/route-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/app/page-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-1879675a73caf73c.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-1879675a73caf73c.js +0 -1
- package/app/.next/static/css/f6642f5333f94810.css +0 -1
- /package/app/.next/static/{9qtW6KlzV_D2b828CZp1A → Q5oB2dEL7XeWBhjwqT_vo}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=8573,a.ids=[8573],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},12412:a=>{"use strict";a.exports=require("assert")},21820:a=>{"use strict";a.exports=require("os")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31687:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>N,patchFetch:()=>M,routeModule:()=>I,serverHooks:()=>L,workAsyncStorage:()=>J,workUnitAsyncStorage:()=>K});var d={};c.r(d),c.d(d,{DELETE:()=>G,GET:()=>E,PATCH:()=>H,POST:()=>F});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(96182),x=c(89718);(0,w.initDbHooks)(x.getSettings,x.Xx);let y="http://localhost:20502",z="win32"===process.platform;function A(a){return a||(0,w.getCachedPassword)()||null}function B(a){return!z&&!a&&(0,w.isSudoPasswordRequired)()}function C(){if(z)try{return c(79646).execSync("net session >nul 2>&1",{windowsHide:!0}),!0}catch{return!1}return"function"==typeof process.getuid&&0===process.getuid()}function D(a){return!!C()||!z&&(!(0,w.isSudoPasswordRequired)()||!!a)}async function E(){try{let a=await (0,w.getMitmStatus)(),b=await (0,x.getSettings)(),c=!!(0,w.getCachedPassword)()||!!await (0,w.loadEncryptedPassword)();return v.NextResponse.json({running:a.running,pid:a.pid||null,certExists:a.certExists||!1,certTrusted:a.certTrusted||!1,dnsStatus:a.dnsStatus||{},hasCachedPassword:c,isWin:z,needsSudoPassword:!z&&!c&&(0,w.isSudoPasswordRequired)(),isAdmin:C(),mitmRouterBaseUrl:b.mitmRouterBaseUrl&&String(b.mitmRouterBaseUrl).trim()||y})}catch(a){return console.log("Error getting MITM status:",a.message),v.NextResponse.json({error:"Failed to get MITM status"},{status:500})}}async function F(a){try{let{apiKey:b,sudoPassword:c,mitmRouterBaseUrl:d,forceKillPort443:e}=await a.json(),f=A(c)||await (0,w.loadEncryptedPassword)()||"";if(!b||B(f))return v.NextResponse.json({error:b?"Missing sudoPassword":"Missing apiKey"},{status:400});if(!D(f))return v.NextResponse.json({error:z?"Administrator required — restart OpenrouterX as Administrator":"Root or sudo password required to start MITM"},{status:403});if(null!=d)try{let a=function(a){let b;if(null==a||""===String(a).trim())return y;let c=String(a).trim().replace(/\/+$/,"");try{b=new URL(c)}catch{throw Error("Invalid MITM router URL")}if("http:"!==b.protocol&&"https:"!==b.protocol)throw Error("MITM router URL must use http or https");return c}(d);await (0,x.Xx)({mitmRouterBaseUrl:a})}catch(a){return v.NextResponse.json({error:a.message||"Invalid MITM router URL"},{status:400})}let g=await (0,w.startServer)(b,f,!!e);return z||(0,w.setCachedPassword)(f),v.NextResponse.json({success:!0,running:g.running,pid:g.pid})}catch(a){if(console.log("Error starting MITM server:",a.message),"PORT_443_BUSY"===a.code)return v.NextResponse.json({error:a.message,code:"PORT_443_BUSY",portOwner:a.portOwner},{status:409});return v.NextResponse.json({error:a.message||"Failed to start MITM server"},{status:500})}}async function G(a){try{let{sudoPassword:b}=await a.json().catch(()=>({})),c=A(b)||await (0,w.loadEncryptedPassword)()||"";if(B(c))return v.NextResponse.json({error:"Missing sudoPassword"},{status:400});return await (0,w.stopServer)(c),!z&&b&&(0,w.setCachedPassword)(b),v.NextResponse.json({success:!0,running:!1})}catch(a){return console.log("Error stopping MITM server:",a.message),v.NextResponse.json({error:a.message||"Failed to stop MITM server"},{status:500})}}async function H(a){try{let{tool:b,action:c,sudoPassword:d}=await a.json(),e=A(d)||await (0,w.loadEncryptedPassword)()||"";if(!c)return v.NextResponse.json({error:"action required"},{status:400});if(("enable"===c||"disable"===c)&&!b)return v.NextResponse.json({error:"tool required"},{status:400});if(B(e))return v.NextResponse.json({error:"Missing sudoPassword"},{status:400});if(!D(e))return v.NextResponse.json({error:z?"Administrator required — restart OpenrouterX as Administrator":"Root or sudo password required to modify DNS"},{status:403});if("enable"===c)await (0,w.enableToolDNS)(b,e);else if("disable"===c)await (0,w.disableToolDNS)(b,e);else{if("trust-cert"!==c)return v.NextResponse.json({error:"action must be enable, disable, or trust-cert"},{status:400});await (0,w.trustCert)(e),!z&&d&&(0,w.setCachedPassword)(d);let a=await (0,w.getMitmStatus)();return v.NextResponse.json({success:!0,certTrusted:a.certTrusted})}!z&&d&&(0,w.setCachedPassword)(d);let f=await (0,w.getMitmStatus)();return v.NextResponse.json({success:!0,dnsStatus:f.dnsStatus})}catch(a){return console.log("Error toggling DNS:",a.message),v.NextResponse.json({error:a.message||"Failed to toggle DNS"},{status:500})}}let I=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cli-tools/antigravity-mitm/route",pathname:"/api/cli-tools/antigravity-mitm",filename:"route",bundlePath:"app/api/cli-tools/antigravity-mitm/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/antigravity-mitm/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:J,workUnitAsyncStorage:K,serverHooks:L}=I;function M(){return(0,g.patchFetch)({workAsyncStorage:J,workUnitAsyncStorage:K})}async function N(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),I.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/antigravity-mitm/route";"/index"===d&&(d="/");let e=await I.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[H]||A.routes[E]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||I.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===I.isDev||!J,N=J&&!M;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await I.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>I.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>I.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await I.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await I.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await I.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},55591:a=>{"use strict";a.exports=require("https")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},74075:a=>{"use strict";a.exports=require("zlib")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},81115:a=>{"use strict";a.exports=require("constants")},82996:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});class d{adapter;data;constructor(a,b){!function(a,b){if(void 0===a)throw Error("lowdb: missing adapter");if(void 0===b)throw Error("lowdb: missing default data")}(a,b),this.adapter=a,this.data=b}async read(){let a=await this.adapter.read();a&&(this.data=a)}async write(){this.data&&await this.adapter.write(this.data)}async update(a){a(this.data),await this.write()}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7502,7568,9718,5627,6182],()=>b(b.s=31687));module.exports=c})();
|
|
1
|
+
"use strict";(()=>{var a={};a.id=8573,a.ids=[8573],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},12412:a=>{a.exports=require("assert")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},51455:a=>{a.exports=require("node:fs/promises")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},74075:a=>{a.exports=require("zlib")},76476:(a,b,c)=>{c.d(b,{N:()=>l,v:()=>k});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(49120);let i=g().join(h.DATA_DIR,"mitm","aliases.json");function j(a){let b=g().dirname(i);e().mkdirSync(b,{recursive:!0});let c=`${i}.tmp`;e().writeFileSync(c,JSON.stringify(a,null,2),"utf8"),e().renameSync(c,i)}async function k(){try{let{getMitmAlias:a}=await Promise.resolve().then(c.bind(c,89718)),b=await a();j(b||{})}catch(a){console.log("[mitmAliasCache] sync failed:",a.message)}}function l(a,b){try{let c={};if(e().existsSync(i))try{c=JSON.parse(e().readFileSync(i,"utf8"))}catch{}c[a]=b||{},j(c)}catch(a){console.log("[mitmAliasCache] write failed:",a.message)}}},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},79646:a=>{a.exports=require("child_process")},81115:a=>{a.exports=require("constants")},82996:(a,b,c)=>{c.d(b,{t:()=>d});class d{adapter;data;constructor(a,b){!function(a,b){if(void 0===a)throw Error("lowdb: missing adapter");if(void 0===b)throw Error("lowdb: missing default data")}(a,b),this.adapter=a,this.data=b}async read(){let a=await this.adapter.read();a&&(this.data=a)}async write(){this.data&&await this.adapter.write(this.data)}async update(a){a(this.data),await this.write()}}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},89536:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>O,patchFetch:()=>N,routeModule:()=>J,serverHooks:()=>M,workAsyncStorage:()=>K,workUnitAsyncStorage:()=>L});var d={};c.r(d),c.d(d,{DELETE:()=>H,GET:()=>F,PATCH:()=>I,POST:()=>G});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(76476),x=c(96182),y=c(89718);(0,x.initDbHooks)(y.getSettings,y.Xx);let z="http://localhost:20502",A="win32"===process.platform;function B(a){return a||(0,x.getCachedPassword)()||null}function C(a){return!A&&!a&&(0,x.isSudoPasswordRequired)()}function D(){if(A)try{return c(79646).execSync("net session >nul 2>&1",{windowsHide:!0}),!0}catch{return!1}return"function"==typeof process.getuid&&0===process.getuid()}function E(a){return!!D()||!A&&(!(0,x.isSudoPasswordRequired)()||!!a)}async function F(){try{let a=await (0,x.getMitmStatus)(),b=await (0,y.getSettings)(),c=!!(0,x.getCachedPassword)()||!!await (0,x.loadEncryptedPassword)();return v.NextResponse.json({running:a.running,pid:a.pid||null,certExists:a.certExists||!1,certTrusted:a.certTrusted||!1,dnsStatus:a.dnsStatus||{},hasCachedPassword:c,isWin:A,needsSudoPassword:!A&&!c&&(0,x.isSudoPasswordRequired)(),isAdmin:D(),mitmRouterBaseUrl:b.mitmRouterBaseUrl&&String(b.mitmRouterBaseUrl).trim()||z})}catch(a){return console.log("Error getting MITM status:",a.message),v.NextResponse.json({error:"Failed to get MITM status"},{status:500})}}async function G(a){try{let{apiKey:b,sudoPassword:c,mitmRouterBaseUrl:d,forceKillPort443:e}=await a.json(),f=B(c)||await (0,x.loadEncryptedPassword)()||"";if(!b||C(f))return v.NextResponse.json({error:b?"Missing sudoPassword":"Missing apiKey"},{status:400});if(!E(f))return v.NextResponse.json({error:A?"Administrator required — restart OpenrouterX as Administrator":"Root or sudo password required to start MITM"},{status:403});if(null!=d)try{let a=function(a){let b;if(null==a||""===String(a).trim())return z;let c=String(a).trim().replace(/\/+$/,"");try{b=new URL(c)}catch{throw Error("Invalid MITM router URL")}if("http:"!==b.protocol&&"https:"!==b.protocol)throw Error("MITM router URL must use http or https");return c}(d);await (0,y.Xx)({mitmRouterBaseUrl:a})}catch(a){return v.NextResponse.json({error:a.message||"Invalid MITM router URL"},{status:400})}await (0,w.v)();let g=await (0,x.startServer)(b,f,!!e);return A||(0,x.setCachedPassword)(f),v.NextResponse.json({success:!0,running:g.running,pid:g.pid})}catch(a){if(console.log("Error starting MITM server:",a.message),"PORT_443_BUSY"===a.code)return v.NextResponse.json({error:a.message,code:"PORT_443_BUSY",portOwner:a.portOwner},{status:409});return v.NextResponse.json({error:a.message||"Failed to start MITM server"},{status:500})}}async function H(a){try{let{sudoPassword:b}=await a.json().catch(()=>({})),c=B(b)||await (0,x.loadEncryptedPassword)()||"";if(C(c))return v.NextResponse.json({error:"Missing sudoPassword"},{status:400});return await (0,x.stopServer)(c),!A&&b&&(0,x.setCachedPassword)(b),v.NextResponse.json({success:!0,running:!1})}catch(a){return console.log("Error stopping MITM server:",a.message),v.NextResponse.json({error:a.message||"Failed to stop MITM server"},{status:500})}}async function I(a){try{let{tool:b,action:c,sudoPassword:d}=await a.json(),e=B(d)||await (0,x.loadEncryptedPassword)()||"";if(!c)return v.NextResponse.json({error:"action required"},{status:400});if(("enable"===c||"disable"===c)&&!b)return v.NextResponse.json({error:"tool required"},{status:400});if(C(e))return v.NextResponse.json({error:"Missing sudoPassword"},{status:400});if(!E(e))return v.NextResponse.json({error:A?"Administrator required — restart OpenrouterX as Administrator":"Root or sudo password required to modify DNS"},{status:403});if("enable"===c)await (0,x.enableToolDNS)(b,e);else if("disable"===c)await (0,x.disableToolDNS)(b,e);else{if("trust-cert"!==c)return v.NextResponse.json({error:"action must be enable, disable, or trust-cert"},{status:400});await (0,x.trustCert)(e),!A&&d&&(0,x.setCachedPassword)(d);let a=await (0,x.getMitmStatus)();return v.NextResponse.json({success:!0,certTrusted:a.certTrusted})}!A&&d&&(0,x.setCachedPassword)(d);let f=await (0,x.getMitmStatus)();return v.NextResponse.json({success:!0,dnsStatus:f.dnsStatus})}catch(a){return console.log("Error toggling DNS:",a.message),v.NextResponse.json({error:a.message||"Failed to toggle DNS"},{status:500})}}let J=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cli-tools/antigravity-mitm/route",pathname:"/api/cli-tools/antigravity-mitm",filename:"route",bundlePath:"app/api/cli-tools/antigravity-mitm/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/antigravity-mitm/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:K,workUnitAsyncStorage:L,serverHooks:M}=J;function N(){return(0,g.patchFetch)({workAsyncStorage:K,workUnitAsyncStorage:L})}async function O(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),J.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/antigravity-mitm/route";"/index"===d&&(d="/");let e=await J.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!I||J.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===J.isDev||!I,N=I&&!M;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await J.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>J.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>J.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await J.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await J.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await J.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7502,7568,9718,2415,6182],()=>b(b.s=89536));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../package.json","../../../../../../src/mitm/server.js","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/1813.js","../../../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../package.json","../../../../../../src/mitm/server.js","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/1813.js","../../../../chunks/2415.js","../../../../chunks/4741.js","../../../../chunks/6182.js","../../../../chunks/6844.js","../../../../chunks/7341.js","../../../../chunks/7502.js","../../../../chunks/7568.js","../../../../chunks/9718.js","../../../../webpack-runtime.js","route_client-reference-manifest.js","../../../../../../node_modules/sql.js/dist/sql-wasm.wasm"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=6432,a.ids=[6432],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},12412:a=>{"use strict";a.exports=require("assert")},21820:a=>{"use strict";a.exports=require("os")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44708:a=>{"use strict";a.exports=require("node:https")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},49120:(a,b,c)=>{"use strict";c.r(b),c.d(b,{APP_NAME:()=>j,DATA_DIR:()=>p,DB_FILE:()=>q,LEGACY_APP_NAME:()=>k,getDataDir:()=>o,getLegacyDataDir:()=>n,migrateLegacyDataFilesIfNeeded:()=>r});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="openrouterx",k="9router",l=["db.json","usage.json","log.txt","disabledModels.json","request-details.json"];function m(a){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),a):g().join(i().homedir(),`.${a}`)}function n(){return m(k)}function o(){let a=process.env.DATA_DIR;if(!a)return m(j);try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable -> fallback ~/.${j}`),m(j);throw b}}let p=o(),q=g().join(p,"db.json");function r(){if(process.env.DATA_DIR)return!1;let a=n();if(a===p||!e().existsSync(a))return!1;let b=!1;for(let c of(e().existsSync(p)||e().mkdirSync(p,{recursive:!0}),l)){let d=g().join(a,c),f=g().join(p,c);e().existsSync(d)&&!e().existsSync(f)&&(e().copyFileSync(d,f),b=!0)}return b}r()},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71998:(a,b,c)=>{"use strict";c.d(b,{Fh:()=>d.getProviderNodes,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,ek:()=>d.ek,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)},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},81115:a=>{"use strict";a.exports=require("constants")},82996:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});class d{adapter;data;constructor(a,b){!function(a,b){if(void 0===a)throw Error("lowdb: missing adapter");if(void 0===b)throw Error("lowdb: missing default data")}(a,b),this.adapter=a,this.data=b}async read(){let a=await this.adapter.read();a&&(this.data=a)}async write(){this.data&&await this.adapter.write(this.data)}async update(a){a(this.data),await this.write()}}},86128:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>L,patchFetch:()=>K,routeModule:()=>G,serverHooks:()=>J,workAsyncStorage:()=>H,workUnitAsyncStorage:()=>I});var d={};c.r(d),c.d(d,{POST:()=>F});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(44708),w=c.n(v),x=c(23211),y=c(71998);let z={"gemini-3.1-pro-high":"gemini-3.1-pro-high","gemini-3.1-pro-low":"gemini-3.1-pro-low","gemini-3-flash-agent":"cx/gpt-5.5","gemini-3-flash":"cx/gpt-5.5","claude-sonnet-4-6":"claude-sonnet-4-6","claude-opus-4-6-thinking":"claude-opus-4-6-thinking","gpt-oss-120b-medium":"gpt-oss-120b-medium"};function A(a){return String(a||"").split(/\r?\n/).filter(a=>a.trim()&&"data: [DONE]"!==a.trim()).map(a=>a.replace(/^data:\s*/,"")).join("\n").slice(0,4e3)}function B({path:a,method:b="GET",headers:c={},body:d=null}){return new Promise((e,f)=>{let g=w().request({hostname:"openrouter.ai",port:443,path:a,method:b,headers:c,rejectUnauthorized:!1},a=>{let b=[];a.on("data",a=>b.push(a)),a.on("end",()=>{let c=a.statusCode||0;e({ok:c>=200&&c<300,status:c,headers:a.headers||{},text:Buffer.concat(b).toString("utf8")})})});g.on("error",f),g.setTimeout(3e4,()=>{g.destroy(Error("Request timeout"))}),d&&g.write(d),g.end()})}function C(a={}){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a,"authorization"===a.toLowerCase()?"Bearer sk_openrouterx":b]))}async function D(){let a=Date.now(),b={method:"GET",url:"https://openrouter.ai/models",headers:{Accept:"application/json, text/plain;q=0.9, */*;q=0.8"}},c=await B({path:"/models",method:b.method,headers:b.headers}),d=Date.now()-a,e=c.text||"",f=String(c.headers["content-type"]||"");if(!f.includes("application/json"))return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`MITM inactive or misconfigured: expected JSON from https://openrouter.ai/models, got ${f||"unknown content-type"}`,preview:e.slice(0,200)},{status:502});let g=null;try{g=e?JSON.parse(e):null}catch{return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:"MITM returned non-JSON payload for https://openrouter.ai/models",preview:e.slice(0,200)},{status:502})}if(!c.ok){let a=g?.error?.message||g?.msg||g?.message||g?.error||e;return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`HTTP ${c.status}${a?`: ${String(a).slice(0,500)}`:""}`,response:g},{status:c.status})}let h=Array.isArray(g)?g:g?.data||g?.models||g?.results||[];return x.NextResponse.json({ok:!0,status:c.status,latencyMs:d,provider:"openrouter",request:b,count:h.length,models:h,response:g})}async function E(){let a=Date.now(),b={method:"GET",url:"https://openrouter.ai/api/v1/auth/key?include_limits=true",headers:C({Accept:"application/json, text/plain;q=0.9, */*;q=0.8",Authorization:"Bearer sk_openrouterx"})},c=await B({path:"/api/v1/auth/key?include_limits=true",method:b.method,headers:b.headers}),d=Date.now()-a,e=c.text||"",f=String(c.headers["content-type"]||"");if(!f.includes("application/json"))return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`MITM inactive or misconfigured: expected JSON from https://openrouter.ai/api/v1/auth/key, got ${f||"unknown content-type"}`,preview:e.slice(0,200)},{status:502});let g=null;try{g=e?JSON.parse(e):null}catch{return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:"MITM returned non-JSON payload for OpenRouter key validation",preview:e.slice(0,200)},{status:502})}if(!c.ok){let a=g?.error?.message||g?.msg||g?.message||g?.error||e;return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`HTTP ${c.status}${a?`: ${String(a).slice(0,500)}`:""}`,response:g},{status:c.status})}return x.NextResponse.json({ok:!0,status:c.status,latencyMs:d,provider:"openrouter",request:b,response:g})}async function F(a){try{var b;let c,d=await a.json().catch(()=>({})),e=d.tool||"openrouter",f=String(d.mode||"").trim(),g=String(d.publicModel||("antigravity"===e?"claude-sonnet-4-6":"openai/gpt-5.5")).trim(),h=String(d.mappedModel||"").trim(),i=String(d.prompt||("openrouter"===e?"How many r`s are in the word `strawberry?`":"Reply with exactly: local antigravity mitm ok")).trim();if("openrouter"!==e&&"antigravity"!==e)return x.NextResponse.json({ok:!1,error:"Only openrouter and antigravity MITM tests are supported"},{status:400});if("openrouter"===e&&"models"===f)return await D();if("openrouter"===e&&"key"===f)return await E();if(!g)return x.NextResponse.json({ok:!1,error:"publicModel is required"},{status:400});let j={..."antigravity"===e?z:{},...await (0,y.c)(e)},k=h||j?.[g]||"";if(!k)return x.NextResponse.json({ok:!1,publicModel:g,error:`No mapped model found for ${g}. Please configure it first.`},{status:400});if("antigravity"===e){let a=Date.now(),b=await function({publicModel:a,prompt:b}){let c=`/v1internal/models/${encodeURIComponent(a)}:generateContent`,d=JSON.stringify({userAgent:"antigravity",model:a,request:{contents:[{role:"user",parts:[{text:b}]}],generationConfig:{}}});return new Promise((a,b)=>{let e=w().request({hostname:"cloudcode-pa.googleapis.com",port:443,path:c,method:"POST",headers:{Host:"cloudcode-pa.googleapis.com","User-Agent":"antigravity/1.23.2 local-mitm-test","Content-Type":"application/json","Content-Length":Buffer.byteLength(d),Authorization:"Bearer local-dev-mitm-test"},rejectUnauthorized:!1},b=>{let c=[];b.on("data",a=>c.push(a)),b.on("end",()=>{a({status:b.statusCode||0,headers:b.headers||{},text:Buffer.concat(c).toString("utf8")})})});e.on("error",b),e.setTimeout(3e4,()=>{e.destroy(Error("Request timeout"))}),e.write(d),e.end()})}({publicModel:g,prompt:i}),c=Date.now()-a,d=b.text||"",e=null;try{e=d?JSON.parse(d):null}catch{e=null}if(b.status<200||b.status>=300){let a=e?.error?.message||e?.msg||e?.message||e?.error||d;return x.NextResponse.json({ok:!1,status:b.status,latencyMs:c,publicModel:g,mappedModel:k,error:`HTTP ${b.status}${a?`: ${String(a).slice(0,500)}`:""}`,preview:A(d)},{status:b.status||502})}return x.NextResponse.json({ok:!0,status:b.status,latencyMs:c,publicModel:g,mappedModel:k,contentType:b.headers["content-type"]||"",reply:String(d||"").split(/\r?\n/).filter(a=>a.trim()&&"data: [DONE]"!==a.trim()).map(a=>a.replace(/^data:\s*/,"")).map(a=>{try{let b=JSON.parse(a),c=b?.response?.candidates?.[0]?.content?.parts;if(!Array.isArray(c))return"";return c.map(a=>a?.text||"").join("")}catch{return""}}).join("").trim(),preview:A(d),response:e})}let l={model:g,stream:!1,reasoning:{enabled:!0},messages:[{role:"user",content:i||"How many r`s are in the word `strawberry?`"}]},m={method:"POST",url:"https://openrouter.ai/api/v1/chat/completions",headers:C({"Content-Type":"application/json",Authorization:"Bearer sk_openrouterx"}),body:l},n=Date.now(),o=await B({path:"/api/v1/chat/completions",method:m.method,headers:m.headers,body:JSON.stringify(l)}),p=Date.now()-n,q=o.text||"",r=null;try{r=q?JSON.parse(q):null}catch{r=null}if(o.status<200||o.status>=300){let a=r?.error?.message||r?.msg||r?.message||r?.error||q;return x.NextResponse.json({ok:!1,status:o.status,latencyMs:p,publicModel:g,mappedModel:k,request:m,error:`HTTP ${o.status}${a?`: ${String(a).slice(0,500)}`:""}`,response:r},{status:o.status})}let s=(b=r,c=b?.choices?.[0]?.message?.content,"string"==typeof c?c:Array.isArray(c)?c.map(a=>"string"==typeof a?a:"string"==typeof a?.text?a.text:"").join("").trim():"");return x.NextResponse.json({ok:!0,status:o.status,latencyMs:p,publicModel:g,mappedModel:k,request:m,reply:s,response:r})}catch(a){return x.NextResponse.json({ok:!1,error:a?.message||"OpenRouter MITM test failed"},{status:500})}}let G=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cli-tools/antigravity-mitm/test/route",pathname:"/api/cli-tools/antigravity-mitm/test",filename:"route",bundlePath:"app/api/cli-tools/antigravity-mitm/test/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/antigravity-mitm/test/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:H,workUnitAsyncStorage:I,serverHooks:J}=G;function K(){return(0,g.patchFetch)({workAsyncStorage:H,workUnitAsyncStorage:I})}async function L(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),G.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/antigravity-mitm/test/route";"/index"===d&&(d="/");let e=await G.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[E]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||G.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===G.isDev||!J,N=J&&!M;H&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await G.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>G.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>G.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await G.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await G.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await G.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7502,9718],()=>b(b.s=86128));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=6432,a.ids=[6432],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},12412:a=>{"use strict";a.exports=require("assert")},21820:a=>{"use strict";a.exports=require("os")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44708:a=>{"use strict";a.exports=require("node:https")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},47773:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>L,patchFetch:()=>K,routeModule:()=>G,serverHooks:()=>J,workAsyncStorage:()=>H,workUnitAsyncStorage:()=>I});var d={};c.r(d),c.d(d,{POST:()=>F});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(44708),w=c.n(v),x=c(23211),y=c(71998);let z={"gemini-3.1-pro-high":"gemini-3.1-pro-high","gemini-3.1-pro-low":"gemini-3.1-pro-low","gemini-3-flash-agent":"cx/gpt-5.5","gemini-3-flash":"cx/gpt-5.5","claude-sonnet-4-6":"claude-sonnet-4-6","claude-opus-4-6-thinking":"claude-opus-4-6-thinking","gpt-oss-120b-medium":"gpt-oss-120b-medium"};function A(a){return String(a||"").split(/\r?\n/).filter(a=>a.trim()&&"data: [DONE]"!==a.trim()).map(a=>a.replace(/^data:\s*/,"")).join("\n").slice(0,4e3)}function B({path:a,method:b="GET",headers:c={},body:d=null}){return new Promise((e,f)=>{let g=w().request({hostname:"openrouter.ai",port:443,path:a,method:b,headers:c,rejectUnauthorized:!1},a=>{let b=[];a.on("data",a=>b.push(a)),a.on("end",()=>{let c=a.statusCode||0;e({ok:c>=200&&c<300,status:c,headers:a.headers||{},text:Buffer.concat(b).toString("utf8")})})});g.on("error",f),g.setTimeout(3e4,()=>{g.destroy(Error("Request timeout"))}),d&&g.write(d),g.end()})}function C(a={}){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a,"authorization"===a.toLowerCase()?"Bearer sk_openrouterx":b]))}async function D(){let a=Date.now(),b={method:"GET",url:"https://openrouter.ai/models",headers:{Accept:"application/json, text/plain;q=0.9, */*;q=0.8"}},c=await B({path:"/models",method:b.method,headers:b.headers}),d=Date.now()-a,e=c.text||"",f=String(c.headers["content-type"]||"");if(!f.includes("application/json"))return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`MITM inactive or misconfigured: expected JSON from https://openrouter.ai/models, got ${f||"unknown content-type"}`,preview:e.slice(0,200)},{status:502});let g=null;try{g=e?JSON.parse(e):null}catch{return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:"MITM returned non-JSON payload for https://openrouter.ai/models",preview:e.slice(0,200)},{status:502})}if(!c.ok){let a=g?.error?.message||g?.msg||g?.message||g?.error||e;return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`HTTP ${c.status}${a?`: ${String(a).slice(0,500)}`:""}`,response:g},{status:c.status})}let h=Array.isArray(g)?g:g?.data||g?.models||g?.results||[];return x.NextResponse.json({ok:!0,status:c.status,latencyMs:d,provider:"openrouter",request:b,count:h.length,models:h,response:g})}async function E(){let a=Date.now(),b={method:"GET",url:"https://openrouter.ai/api/v1/auth/key?include_limits=true",headers:C({Accept:"application/json, text/plain;q=0.9, */*;q=0.8",Authorization:"Bearer sk_openrouterx"})},c=await B({path:"/api/v1/auth/key?include_limits=true",method:b.method,headers:b.headers}),d=Date.now()-a,e=c.text||"",f=String(c.headers["content-type"]||"");if(!f.includes("application/json"))return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`MITM inactive or misconfigured: expected JSON from https://openrouter.ai/api/v1/auth/key, got ${f||"unknown content-type"}`,preview:e.slice(0,200)},{status:502});let g=null;try{g=e?JSON.parse(e):null}catch{return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:"MITM returned non-JSON payload for OpenRouter key validation",preview:e.slice(0,200)},{status:502})}if(!c.ok){let a=g?.error?.message||g?.msg||g?.message||g?.error||e;return x.NextResponse.json({ok:!1,status:c.status,latencyMs:d,request:b,error:`HTTP ${c.status}${a?`: ${String(a).slice(0,500)}`:""}`,response:g},{status:c.status})}return x.NextResponse.json({ok:!0,status:c.status,latencyMs:d,provider:"openrouter",request:b,response:g})}async function F(a){try{var b;let c,d=await a.json().catch(()=>({})),e=d.tool||"openrouter",f=String(d.mode||"").trim(),g=String(d.publicModel||("antigravity"===e?"claude-sonnet-4-6":"openai/gpt-5.5")).trim(),h=String(d.mappedModel||"").trim(),i=String(d.prompt||("openrouter"===e?"How many r`s are in the word `strawberry?`":"Reply with exactly: local antigravity mitm ok")).trim();if("openrouter"!==e&&"antigravity"!==e)return x.NextResponse.json({ok:!1,error:"Only openrouter and antigravity MITM tests are supported"},{status:400});if("openrouter"===e&&"models"===f)return await D();if("openrouter"===e&&"key"===f)return await E();if(!g)return x.NextResponse.json({ok:!1,error:"publicModel is required"},{status:400});let j={..."antigravity"===e?z:{},...await (0,y.c)(e)},k=h||j?.[g]||"";if(!k)return x.NextResponse.json({ok:!1,publicModel:g,error:`No mapped model found for ${g}. Please configure it first.`},{status:400});if("antigravity"===e){let a=Date.now(),b=await function({publicModel:a,prompt:b}){let c=`/v1internal/models/${encodeURIComponent(a)}:generateContent`,d=JSON.stringify({userAgent:"antigravity",model:a,request:{contents:[{role:"user",parts:[{text:b}]}],generationConfig:{}}});return new Promise((a,b)=>{let e=w().request({hostname:"cloudcode-pa.googleapis.com",port:443,path:c,method:"POST",headers:{Host:"cloudcode-pa.googleapis.com","User-Agent":"antigravity/1.23.2 local-mitm-test","Content-Type":"application/json","Content-Length":Buffer.byteLength(d),Authorization:"Bearer local-dev-mitm-test"},rejectUnauthorized:!1},b=>{let c=[];b.on("data",a=>c.push(a)),b.on("end",()=>{a({status:b.statusCode||0,headers:b.headers||{},text:Buffer.concat(c).toString("utf8")})})});e.on("error",b),e.setTimeout(3e4,()=>{e.destroy(Error("Request timeout"))}),e.write(d),e.end()})}({publicModel:g,prompt:i}),c=Date.now()-a,d=b.text||"",e=null;try{e=d?JSON.parse(d):null}catch{e=null}if(b.status<200||b.status>=300){let a=e?.error?.message||e?.msg||e?.message||e?.error||d;return x.NextResponse.json({ok:!1,status:b.status,latencyMs:c,publicModel:g,mappedModel:k,error:`HTTP ${b.status}${a?`: ${String(a).slice(0,500)}`:""}`,preview:A(d)},{status:b.status||502})}return x.NextResponse.json({ok:!0,status:b.status,latencyMs:c,publicModel:g,mappedModel:k,contentType:b.headers["content-type"]||"",reply:String(d||"").split(/\r?\n/).filter(a=>a.trim()&&"data: [DONE]"!==a.trim()).map(a=>a.replace(/^data:\s*/,"")).map(a=>{try{let b=JSON.parse(a),c=b?.response?.candidates?.[0]?.content?.parts;if(!Array.isArray(c))return"";return c.map(a=>a?.text||"").join("")}catch{return""}}).join("").trim(),preview:A(d),response:e})}let l={model:g,stream:!1,reasoning:{enabled:!0},messages:[{role:"user",content:i||"How many r`s are in the word `strawberry?`"}]},m={method:"POST",url:"https://openrouter.ai/api/v1/chat/completions",headers:C({"Content-Type":"application/json",Authorization:"Bearer sk_openrouterx"}),body:l},n=Date.now(),o=await B({path:"/api/v1/chat/completions",method:m.method,headers:m.headers,body:JSON.stringify(l)}),p=Date.now()-n,q=o.text||"",r=null;try{r=q?JSON.parse(q):null}catch{r=null}if(o.status<200||o.status>=300){let a=r?.error?.message||r?.msg||r?.message||r?.error||q;return x.NextResponse.json({ok:!1,status:o.status,latencyMs:p,publicModel:g,mappedModel:k,request:m,error:`HTTP ${o.status}${a?`: ${String(a).slice(0,500)}`:""}`,response:r},{status:o.status})}let s=(b=r,c=b?.choices?.[0]?.message?.content,"string"==typeof c?c:Array.isArray(c)?c.map(a=>"string"==typeof a?a:"string"==typeof a?.text?a.text:"").join("").trim():"");return x.NextResponse.json({ok:!0,status:o.status,latencyMs:p,publicModel:g,mappedModel:k,request:m,reply:s,response:r})}catch(a){return x.NextResponse.json({ok:!1,error:a?.message||"OpenRouter MITM test failed"},{status:500})}}let G=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cli-tools/antigravity-mitm/test/route",pathname:"/api/cli-tools/antigravity-mitm/test",filename:"route",bundlePath:"app/api/cli-tools/antigravity-mitm/test/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/antigravity-mitm/test/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:H,workUnitAsyncStorage:I,serverHooks:J}=G;function K(){return(0,g.patchFetch)({workAsyncStorage:H,workUnitAsyncStorage:I})}async function L(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),G.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/antigravity-mitm/test/route";"/index"===d&&(d="/");let e=await G.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[E]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||G.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===G.isDev||!J,N=J&&!M;H&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await G.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>G.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>G.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await G.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await G.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await G.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},49120:(a,b,c)=>{"use strict";c.r(b),c.d(b,{APP_NAME:()=>j,DATA_DIR:()=>p,DB_FILE:()=>q,LEGACY_APP_NAME:()=>k,getDataDir:()=>o,getLegacyDataDir:()=>n,migrateLegacyDataFilesIfNeeded:()=>r});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="openrouterx",k="9router",l=["db.json","usage.json","log.txt","disabledModels.json","request-details.json"];function m(a){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),a):g().join(i().homedir(),`.${a}`)}function n(){return m(k)}function o(){let a=process.env.DATA_DIR;if(!a)return m(j);try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable -> fallback ~/.${j}`),m(j);throw b}}let p=o(),q=g().join(p,"db.json");function r(){if(process.env.DATA_DIR)return!1;let a=n();if(a===p||!e().existsSync(a))return!1;let b=!1;for(let c of(e().existsSync(p)||e().mkdirSync(p,{recursive:!0}),l)){let d=g().join(a,c),f=g().join(p,c);e().existsSync(d)&&!e().existsSync(f)&&(e().copyFileSync(d,f),b=!0)}return b}r()},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71998:(a,b,c)=>{"use strict";c.d(b,{Fh:()=>d.getProviderNodes,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.getMitmAlias,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)},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},81115:a=>{"use strict";a.exports=require("constants")},82996:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});class d{adapter;data;constructor(a,b){!function(a,b){if(void 0===a)throw Error("lowdb: missing adapter");if(void 0===b)throw Error("lowdb: missing default data")}(a,b),this.adapter=a,this.data=b}async read(){let a=await this.adapter.read();a&&(this.data=a)}async write(){this.data&&await this.adapter.write(this.data)}async update(a){a(this.data),await this.write()}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7502,9718],()=>b(b.s=47773));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../../node_modules/@swc/helpers/package.json","../../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../../node_modules/next/package.json","../../../../../../../node_modules/react/cjs/react.development.js","../../../../../../../node_modules/react/cjs/react.production.js","../../../../../../../node_modules/react/index.js","../../../../../../../node_modules/react/package.json","../../../../../../../package.json","../../../../../../../src/shared/utils/apiKey.js","../../../../../../package.json","../../../../../chunks/1813.js","../../../../../chunks/4741.js","../../../../../chunks/6844.js","../../../../../chunks/7341.js","../../../../../chunks/7502.js","../../../../../chunks/9718.js","../../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
|
|
1
|
+
{"version":1,"files":["../../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../../node_modules/@swc/helpers/package.json","../../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../../node_modules/next/package.json","../../../../../../../node_modules/react/cjs/react.development.js","../../../../../../../node_modules/react/cjs/react.production.js","../../../../../../../node_modules/react/index.js","../../../../../../../node_modules/react/package.json","../../../../../../../package.json","../../../../../../../src/shared/utils/apiKey.js","../../../../../../package.json","../../../../../chunks/1813.js","../../../../../chunks/4741.js","../../../../../chunks/6844.js","../../../../../chunks/7341.js","../../../../../chunks/7502.js","../../../../../chunks/9718.js","../../../../../webpack-runtime.js","route_client-reference-manifest.js","../../../../../../../node_modules/sql.js/dist/sql-wasm.wasm"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=747,a.ids=[747],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12412:a=>{"use strict";a.exports=require("assert")},14833:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DELETE:()=>x,GET:()=>u,POST:()=>v});var d=c(49796),e=c(23211),f=c(79646),g=c(28354),h=c(79748),i=c.n(h),j=c(33873),k=c.n(j),l=c(21820),m=c.n(l),n=c(68658),o=c(24424);let p=(0,g.promisify)(f.exec);async function q(a){let b=await (0,n.f1)(a);return b?{payload:b,response:null}:{payload:null,response:e.NextResponse.json({error:"Unauthorized"},{status:401})}}let r=()=>{let a=m().homedir();return k().join(a,".claude","settings.json")},s=async()=>{try{let a="win32"===m().platform(),b=a?{...process.env,PATH:`${process.env.APPDATA}\\npm;${process.env.PATH}`}:process.env;return await p(a?"where claude":"which claude",{windowsHide:!0,env:b}),!0}catch{try{return await i().access(r()),!0}catch{return!1}}},t=async()=>{try{let a=r(),b=await i().readFile(a,"utf-8");return JSON.parse(b)}catch(a){if("ENOENT"===a.code)return null;throw a}};async function u(a){try{let{response:b}=await q(a);if(b)return b;if(!await s())return e.NextResponse.json({installed:!1,settings:null,message:"Claude CLI is not installed"});let c=await t(),d=!!c?.env?.ANTHROPIC_BASE_URL;return e.NextResponse.json({installed:!0,settings:c,hasOpenRouterX:d,settingsPath:r()})}catch(a){return console.log("Error checking claude settings:",a),e.NextResponse.json({error:"Failed to check claude settings"},{status:500})}}async function v(a){try{let{payload:b,response:c}=await q(a);if(c)return c;if("super_admin"!==b.role)return e.NextResponse.json({error:"Forbidden"},{status:403});let{env:d}=await a.json();if(!d||"object"!=typeof d)return e.NextResponse.json({error:"Invalid env object"},{status:400});let f=r(),g=k().dirname(f);await i().mkdir(g,{recursive:!0});let h={};try{let a=await i().readFile(f,"utf-8");h=JSON.parse(a)}catch(a){if("ENOENT"!==a.code)throw a}d.ANTHROPIC_BASE_URL&&(d.ANTHROPIC_BASE_URL=d.ANTHROPIC_BASE_URL.endsWith("/v1")?d.ANTHROPIC_BASE_URL:`${d.ANTHROPIC_BASE_URL}/v1`);let j={...h,hasCompletedOnboarding:!0,env:{...h.env||{},...d}};return await i().writeFile(f,JSON.stringify(j,null,2)),e.NextResponse.json({success:!0,message:"Settings updated successfully"})}catch(a){return console.log("Error updating claude settings:",a),e.NextResponse.json({error:"Failed to update claude settings"},{status:500})}}let w=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL","API_TIMEOUT_MS"];async function x(a){try{let{payload:b,response:c}=await q(a);if(c)return c;if("super_admin"!==b.role)return e.NextResponse.json({error:"Forbidden"},{status:403});let d=r(),f={};try{let a=await i().readFile(d,"utf-8");f=JSON.parse(a)}catch(a){if("ENOENT"===a.code)return e.NextResponse.json({success:!0,message:"No settings file to reset"});throw a}return f.env&&(w.forEach(a=>{delete f.env[a]}),0===Object.keys(f.env).length&&delete f.env),await i().writeFile(d,JSON.stringify(f,null,2)),e.NextResponse.json({success:!0,message:"Settings reset successfully"})}catch(a){return console.log("Error resetting claude settings:",a),e.NextResponse.json({error:"Failed to reset claude settings"},{status:500})}}(0,o.D)([u,v,x]),(0,d.A)(u,"405f2368e7b85a84c1e6bb9df5104bf478b1268908",null),(0,d.A)(v,"4043e379caa9724811d3bd8bf73e862e3e5ab0094e",null),(0,d.A)(x,"407bc0f96c6fb75c4b24ffc40abe397bad7d0b355f",null)},21820:a=>{"use strict";a.exports=require("os")},24424:(a,b)=>{"use strict";function c(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33792:(a,b,c)=>{"use strict";c.d(b,{Dc:()=>i,OZ:()=>l,YK:()=>g,dY:()=>j,tm:()=>k});var d=c(86935),e=c(69614);let f=new TextEncoder().encode(process.env.JWT_SECRET||"openrouterx-default-secret-change-me");function g(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=a?.headers?.get?.("x-forwarded-proto");return b||"https"===c}async function h(a={}){return new d.P({authenticated:!0,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("24h").sign(f)}async function i(a){if(!a)return!1;try{return await (0,e.V)(a,f),!0}catch{return!1}}async function j(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,f);return b}catch{return null}}async function k(a,b,c={}){let d=await h(c);a.set("auth_token",d,{httpOnly:!0,secure:g(b),sameSite:"lax",path:"/"})}function l(a){a.delete("auth_token")}},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},49120:(a,b,c)=>{"use strict";c.r(b),c.d(b,{APP_NAME:()=>j,DATA_DIR:()=>p,DB_FILE:()=>q,LEGACY_APP_NAME:()=>k,getDataDir:()=>o,getLegacyDataDir:()=>n,migrateLegacyDataFilesIfNeeded:()=>r});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="openrouterx",k="9router",l=["db.json","usage.json","log.txt","disabledModels.json","request-details.json"];function m(a){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),a):g().join(i().homedir(),`.${a}`)}function n(){return m(k)}function o(){let a=process.env.DATA_DIR;if(!a)return m(j);try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable -> fallback ~/.${j}`),m(j);throw b}}let p=o(),q=g().join(p,"db.json");function r(){if(process.env.DATA_DIR)return!1;let a=n();if(a===p||!e().existsSync(a))return!1;let b=!1;for(let c of(e().existsSync(p)||e().mkdirSync(p,{recursive:!0}),l)){let d=g().join(a,c),f=g().join(p,c);e().existsSync(d)&&!e().existsSync(f)&&(e().copyFileSync(d,f),b=!0)}return b}r()},49796:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(77943)},51455:a=>{"use strict";a.exports=require("node:fs/promises")},54603:(a,b,c)=>{"use strict";c.d(b,{Xj:()=>e});var d=c(19713);async function e(a=null){let b=a||process.env.MACHINE_ID_SALT||"endpoint-proxy-salt";try{let a=(0,d.machineIdSync)();return(await Promise.resolve().then(c.t.bind(c,55511,23))).createHash("sha256").update(a+b).digest("hex").substring(0,16)}catch(a){return console.log("Error getting machine ID:",a),crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){let b=16*Math.random()|0;return("x"==a?b:3&b|8).toString(16)})}}},55511:a=>{"use strict";a.exports=require("crypto")},58126:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(37527),u=c(14833);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/cli-tools/claude-settings/route",pathname:"/api/cli-tools/claude-settings",filename:"route",bundlePath:"app/api/cli-tools/claude-settings/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/claude-settings/route.js",nextConfigOutput:"standalone",userland:u,...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/claude-settings/route";"/index"===d&&(d="/");let f=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,deploymentId:w,params:x,nextConfig:y,parsedUrl:z,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=f,I=(0,j.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,z,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(y.adapterPath)return await K();throw new s.NoFallbackError}}let L=null;!J||v.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===v.isDev||!J,N=J&&!M;H&&G&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,h.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,g.getRequestMeta)(a,"minimalMode"),T=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,y,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:x,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:y.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>v.onRequestError(a,b,d,e,C)},sharedContext:{buildId:u,deploymentId:w}},V=new k.NodeNextRequest(a),W=new k.NodeNextResponse(b),X=l.NextRequestAdapter.fromNodeNextRequest(V,(0,l.signalFromNodeResponse)(b));try{let f,g=async a=>v.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route");if(e){let b=`${O} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b),f&&f!==a&&(f.setAttribute("http.route",e),f.updateName(b))}else a.updateName(`${O} ${d}`)}),i=async f=>{var h,i;let j=async({previousCacheEntry:e})=>{try{if(!S&&D&&E&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(f);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,o.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[r.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await v.handleResponse({req:a,nextConfig:y,cacheKey:L,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,p.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(r.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,q.getCacheControlHeader)(k.cacheControl)),await (0,o.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await i(Q):(f=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(m.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},i),void 0,!R))}catch(b){if(b instanceof s.NoFallbackError||await v.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,o.I)(V,W,new Response(null,{status:500})),null}}},62191:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"4043e379caa9724811d3bd8bf73e862e3e5ab0094e":()=>d.POST,"405f2368e7b85a84c1e6bb9df5104bf478b1268908":()=>d.GET,"407bc0f96c6fb75c4b24ffc40abe397bad7d0b355f":()=>d.DELETE});var d=c(14833)},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68658:(a,b,c)=>{"use strict";c.d(b,{f1:()=>e}),c(23211),c(89718);var d=c(33792);async function e(a){let b=a.cookies.get("auth_token")?.value;return(0,d.dY)(b)}c(54603)},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},77943:(a,b,c)=>{"use strict";a.exports=c(7553).vendored["react-rsc"].ReactServerDOMWebpackServer},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},79748:a=>{"use strict";a.exports=require("fs/promises")},81115:a=>{"use strict";a.exports=require("constants")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7502,6936,6001,9718],()=>b(b.s=58126));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=747,a.ids=[747],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12412:a=>{"use strict";a.exports=require("assert")},14833:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DELETE:()=>v,GET:()=>s,POST:()=>t});var d=c(49796),e=c(23211),f=c(79748),g=c.n(f),h=c(33873),i=c.n(h),j=c(21820),k=c.n(j),l=c(68658),m=c(83002),n=c(24424);async function o(a){let b=await (0,l.f)(a);return b?{payload:b,response:null}:{payload:null,response:e.NextResponse.json({error:"Unauthorized"},{status:401})}}let p=()=>{let a=k().homedir();return i().join(a,".claude","settings.json")},q=async()=>{if((await (0,m.q)("claude")).installed)return!0;try{return await g().access(p()),!0}catch{return!1}},r=async()=>{try{let a=p(),b=await g().readFile(a,"utf-8");return JSON.parse(b)}catch(a){if("ENOENT"===a.code)return null;throw a}};async function s(a){try{let{response:b}=await o(a);if(b)return b;if(!await q())return e.NextResponse.json({installed:!1,settings:null,message:"Claude CLI is not installed"});let c=await r(),d=!!c?.env?.ANTHROPIC_BASE_URL;return e.NextResponse.json({installed:!0,settings:c,hasOpenRouterX:d,settingsPath:p()})}catch(a){return console.log("Error checking claude settings:",a),e.NextResponse.json({error:"Failed to check claude settings"},{status:500})}}async function t(a){try{let{payload:b,response:c}=await o(a);if(c)return c;if("super_admin"!==b.role)return e.NextResponse.json({error:"Forbidden"},{status:403});let{env:d}=await a.json();if(!d||"object"!=typeof d)return e.NextResponse.json({error:"Invalid env object"},{status:400});let f=p(),h=i().dirname(f);await g().mkdir(h,{recursive:!0});let j={};try{let a=await g().readFile(f,"utf-8");j=JSON.parse(a)}catch(a){if("ENOENT"!==a.code)throw a}d.ANTHROPIC_BASE_URL&&(d.ANTHROPIC_BASE_URL=d.ANTHROPIC_BASE_URL.endsWith("/v1")?d.ANTHROPIC_BASE_URL:`${d.ANTHROPIC_BASE_URL}/v1`);let k={...j,hasCompletedOnboarding:!0,env:{...j.env||{},...d}};return await g().writeFile(f,JSON.stringify(k,null,2)),e.NextResponse.json({success:!0,message:"Settings updated successfully"})}catch(a){return console.log("Error updating claude settings:",a),e.NextResponse.json({error:"Failed to update claude settings"},{status:500})}}let u=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL","API_TIMEOUT_MS"];async function v(a){try{let{payload:b,response:c}=await o(a);if(c)return c;if("super_admin"!==b.role)return e.NextResponse.json({error:"Forbidden"},{status:403});let d=p(),f={};try{let a=await g().readFile(d,"utf-8");f=JSON.parse(a)}catch(a){if("ENOENT"===a.code)return e.NextResponse.json({success:!0,message:"No settings file to reset"});throw a}return f.env&&(u.forEach(a=>{delete f.env[a]}),0===Object.keys(f.env).length&&delete f.env),await g().writeFile(d,JSON.stringify(f,null,2)),e.NextResponse.json({success:!0,message:"Settings reset successfully"})}catch(a){return console.log("Error resetting claude settings:",a),e.NextResponse.json({error:"Failed to reset claude settings"},{status:500})}}(0,n.D)([s,t,v]),(0,d.A)(s,"405f2368e7b85a84c1e6bb9df5104bf478b1268908",null),(0,d.A)(t,"4043e379caa9724811d3bd8bf73e862e3e5ab0094e",null),(0,d.A)(v,"407bc0f96c6fb75c4b24ffc40abe397bad7d0b355f",null)},19604:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(37527),u=c(14833);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/cli-tools/claude-settings/route",pathname:"/api/cli-tools/claude-settings",filename:"route",bundlePath:"app/api/cli-tools/claude-settings/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/claude-settings/route.js",nextConfigOutput:"standalone",userland:u,...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/claude-settings/route";"/index"===d&&(d="/");let f=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,deploymentId:w,params:x,nextConfig:y,parsedUrl:z,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=f,I=(0,j.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,z,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(y.adapterPath)return await K();throw new s.NoFallbackError}}let L=null;!J||v.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===v.isDev||!J,N=J&&!M;H&&G&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,h.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,g.getRequestMeta)(a,"minimalMode"),T=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,y,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:x,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:y.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>v.onRequestError(a,b,d,e,C)},sharedContext:{buildId:u,deploymentId:w}},V=new k.NodeNextRequest(a),W=new k.NodeNextResponse(b),X=l.NextRequestAdapter.fromNodeNextRequest(V,(0,l.signalFromNodeResponse)(b));try{let f,g=async a=>v.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route");if(e){let b=`${O} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b),f&&f!==a&&(f.setAttribute("http.route",e),f.updateName(b))}else a.updateName(`${O} ${d}`)}),i=async f=>{var h,i;let j=async({previousCacheEntry:e})=>{try{if(!S&&D&&E&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(f);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,o.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[r.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await v.handleResponse({req:a,nextConfig:y,cacheKey:L,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,p.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(r.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,q.getCacheControlHeader)(k.cacheControl)),await (0,o.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await i(Q):(f=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(m.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},i),void 0,!R))}catch(b){if(b instanceof s.NoFallbackError||await v.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,o.I)(V,W,new Response(null,{status:500})),null}}},21820:a=>{"use strict";a.exports=require("os")},24424:(a,b)=>{"use strict";function c(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33792:(a,b,c)=>{"use strict";c.d(b,{Dc:()=>p,OZ:()=>s,YK:()=>n,dY:()=>q,tm:()=>r});var d=c(86935),e=c(69614),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(77598),k=c.n(j),l=c(49120);let m=new TextEncoder().encode(function(){if(process.env.JWT_SECRET)return process.env.JWT_SECRET;let a=i().join(l.DATA_DIR,"jwt-secret");try{return g().readFileSync(a,"utf8").trim()}catch{}g().mkdirSync(l.DATA_DIR,{recursive:!0});let b=k().randomBytes(32).toString("hex");return g().writeFileSync(a,b,{mode:384}),b}());function n(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=a?.headers?.get?.("x-forwarded-proto");return b||"https"===c}async function o(a={}){return new d.P({authenticated:!0,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("24h").sign(m)}async function p(a){if(!a)return!1;try{return await (0,e.V)(a,m),!0}catch{return!1}}async function q(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,m);return b}catch{return null}}async function r(a,b,c={}){let d=await o(c);a.set("auth_token",d,{httpOnly:!0,secure:n(b),sameSite:"lax",path:"/"})}function s(a){a.delete("auth_token")}},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},49120:(a,b,c)=>{"use strict";c.r(b),c.d(b,{APP_NAME:()=>j,DATA_DIR:()=>p,DB_FILE:()=>q,LEGACY_APP_NAME:()=>k,getDataDir:()=>o,getLegacyDataDir:()=>n,migrateLegacyDataFilesIfNeeded:()=>r});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="openrouterx",k="9router",l=["db.json","usage.json","log.txt","disabledModels.json","request-details.json"];function m(a){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),a):g().join(i().homedir(),`.${a}`)}function n(){return m(k)}function o(){let a=process.env.DATA_DIR;if(!a)return m(j);try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable -> fallback ~/.${j}`),m(j);throw b}}let p=o(),q=g().join(p,"db.json");function r(){if(process.env.DATA_DIR)return!1;let a=n();if(a===p||!e().existsSync(a))return!1;let b=!1;for(let c of(e().existsSync(p)||e().mkdirSync(p,{recursive:!0}),l)){let d=g().join(a,c),f=g().join(p,c);e().existsSync(d)&&!e().existsSync(f)&&(e().copyFileSync(d,f),b=!0)}return b}r()},49796:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(77943)},51455:a=>{"use strict";a.exports=require("node:fs/promises")},54603:(a,b,c)=>{"use strict";c.d(b,{Xj:()=>n});var d=c(19713),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(77598),j=c.n(i),k=c(49120);let l=h().join(k.DATA_DIR,"machine-id"),m=null;async function n(a=null){let b=a||process.env.MACHINE_ID_SALT||"endpoint-proxy-salt",c=function(){if(m)return m;try{if(m=f().readFileSync(l,"utf8").trim())return m}catch{}try{m=(0,d.machineIdSync)()}catch{m=j().randomUUID()}try{f().mkdirSync(k.DATA_DIR,{recursive:!0}),f().writeFileSync(l,m,{mode:384})}catch{}return m}();return j().createHash("sha256").update(c+b).digest("hex").substring(0,16)}},55511:a=>{"use strict";a.exports=require("crypto")},62191:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"4043e379caa9724811d3bd8bf73e862e3e5ab0094e":()=>d.POST,"405f2368e7b85a84c1e6bb9df5104bf478b1268908":()=>d.GET,"407bc0f96c6fb75c4b24ffc40abe397bad7d0b355f":()=>d.DELETE});var d=c(14833)},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68658:(a,b,c)=>{"use strict";c.d(b,{f:()=>e}),c(23211),c(89718);var d=c(33792);async function e(a){let b=a.cookies.get("auth_token")?.value;return(0,d.dY)(b)}c(54603)},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},77943:(a,b,c)=>{"use strict";a.exports=c(7553).vendored["react-rsc"].ReactServerDOMWebpackServer},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},79748:a=>{"use strict";a.exports=require("fs/promises")},81115:a=>{"use strict";a.exports=require("constants")},83002:(a,b,c)=>{"use strict";c.d(b,{q:()=>u,x:()=>v});var d=c(79646),e=c(28354),f=c(79748),g=c.n(f),h=c(33873),i=c.n(h),j=c(21820),k=c.n(j);let l=(0,e.promisify)(d.exec),m=(0,e.promisify)(d.execFile),n=["/opt/homebrew/bin","/opt/homebrew/sbin","/usr/local/bin","/usr/bin","/bin","/usr/sbin","/sbin","/Applications/Codex.app/Contents/Resources"];async function o(){if("win32"===k().platform())return[];let a=i().join(k().homedir(),".nvm","versions","node");try{return(await g().readdir(a)).map(b=>i().join(a,b,"bin"))}catch{return[]}}function p(a){return[...new Set(a.filter(Boolean))]}async function q(){let a=i().delimiter;if("win32"===k().platform())return{...process.env,PATH:p([process.env.APPDATA?i().join(process.env.APPDATA,"npm"):null,...(process.env.PATH||"").split(a)]).join(a)};let b=await o();return{...process.env,PATH:p([...(process.env.PATH||"").split(a),...b,...n]).join(a)}}async function r(a,b){let c="win32"===k().platform()?`where ${a}`:`command -v ${a}`,{stdout:d}=await l(c,{windowsHide:!0,env:b});return d.split(/\r?\n/).find(Boolean)?.trim()||a}async function s(a,b){if("win32"===k().platform()||!/^[a-zA-Z0-9._-]+$/.test(a))return null;try{let{stdout:c}=await m("/bin/zsh",["-lc",`command -v ${a}`],{windowsHide:!0,env:b,timeout:3e3});return c.split(/\r?\n/).find(Boolean)?.trim()||null}catch{return null}}async function t(a=[]){for(let b of a)try{return await g().access(b),b}catch{}return null}async function u(a,{fallbackCandidates:b=[]}={}){let c=await q();try{let b=await r(a,c);return{installed:!0,source:"cli",binaryPath:b}}catch{let b=await s(a,c);if(b)return{installed:!0,source:"login-shell",binaryPath:b}}let d=await t(b);return d?{installed:!0,source:"app",binaryPath:d}:{installed:!1}}async function v(a=[]){return t(a)}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7502,6936,6001,9718],()=>b(b.s=19604));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../package.json","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/1813.js","../../../../chunks/4741.js","../../../../chunks/6001.js","../../../../chunks/6844.js","../../../../chunks/6936.js","../../../../chunks/7341.js","../../../../chunks/7502.js","../../../../chunks/9718.js","../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../package.json","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/1813.js","../../../../chunks/4741.js","../../../../chunks/6001.js","../../../../chunks/6844.js","../../../../chunks/6936.js","../../../../chunks/7341.js","../../../../chunks/7502.js","../../../../chunks/9718.js","../../../../webpack-runtime.js","route_client-reference-manifest.js","../../../../../../node_modules/sql.js/dist/sql-wasm.wasm"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
(()=>{var a={};a.id=516,a.ids=[516],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{"use strict";a.exports=require("os")},24424:(a,b)=>{"use strict";function c(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46298:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DELETE:()=>w,GET:()=>u,POST:()=>v});var d=c(49796),e=c(23211),f=c(79646),g=c(28354),h=c(79748),i=c.n(h),j=c(33873),k=c.n(j),l=c(21820),m=c.n(l),n=c(24424);let o=(0,g.promisify)(f.exec),p=()=>k().join(m().homedir(),".cline","data"),q=()=>k().join(p(),"globalState.json"),r=()=>k().join(p(),"secrets.json"),s=async()=>{try{let a="win32"===m().platform(),b=a?{...process.env,PATH:`${process.env.APPDATA}\\npm;${process.env.PATH}`}:process.env;return await o(a?"where cline":"which cline",{windowsHide:!0,env:b}),!0}catch{try{return await i().access(q()),!0}catch{return!1}}},t=async a=>{try{let b=await i().readFile(a,"utf-8");return JSON.parse(b)}catch(a){if("ENOENT"===a.code)return null;throw a}};async function u(){try{if(!await s())return e.NextResponse.json({installed:!1,settings:null,message:"Cline CLI is not installed"});let a=await t(q());return e.NextResponse.json({installed:!0,settings:{actModeApiProvider:a?.actModeApiProvider,planModeApiProvider:a?.planModeApiProvider,openAiBaseUrl:a?.openAiBaseUrl,openAiModelId:a?.openAiModelId},has9Router:(a=>{if(!a)return!1;let b="openai"===a.actModeApiProvider||"openai"===a.planModeApiProvider,c=a.openAiBaseUrl||"";return b&&(c.includes("localhost")||c.includes("127.0.0.1")||c.includes("9router"))})(a),globalStatePath:q()})}catch(a){return console.log("Error checking cline settings:",a),e.NextResponse.json({error:"Failed to check cline settings"},{status:500})}}async function v(a){try{let{baseUrl:b,apiKey:c,model:d}=await a.json();if(!b||!c||!d)return e.NextResponse.json({error:"baseUrl, apiKey and model are required"},{status:400});await i().mkdir(p(),{recursive:!0});let f=b.endsWith("/v1")?b.slice(0,-3):b,g=await t(q())||{};g.actModeApiProvider="openai",g.planModeApiProvider="openai",g.openAiBaseUrl=f,g.openAiModelId=d,g.planModeOpenAiModelId=d,await i().writeFile(q(),JSON.stringify(g,null,2));let h=await t(r())||{};return h.openAiApiKey=c,await i().writeFile(r(),JSON.stringify(h,null,2)),e.NextResponse.json({success:!0,message:"Cline settings applied successfully!",globalStatePath:q()})}catch(a){return console.log("Error updating cline settings:",a),e.NextResponse.json({error:"Failed to update cline settings"},{status:500})}}async function w(){try{let a=await t(q());if(!a)return e.NextResponse.json({success:!0,message:"No settings file to reset"});"openai"===a.actModeApiProvider&&(delete a.openAiBaseUrl,delete a.openAiModelId,delete a.planModeOpenAiModelId,a.actModeApiProvider="cline",a.planModeApiProvider="cline"),await i().writeFile(q(),JSON.stringify(a,null,2));let b=await t(r())||{};return delete b.openAiApiKey,await i().writeFile(r(),JSON.stringify(b,null,2)),e.NextResponse.json({success:!0,message:"9Router settings removed from Cline"})}catch(a){return console.log("Error resetting cline settings:",a),e.NextResponse.json({error:"Failed to reset cline settings"},{status:500})}}(0,n.D)([u,v,w]),(0,d.A)(u,"001ba342c5f734fdbaedf7ae67d9ea3a34e9c1a752",null),(0,d.A)(v,"40c7990cbcb196a7e16ee289d72047846ab87a3d5e",null),(0,d.A)(w,"006c56163c62eeeb06b9490fa915e26a0e8a2dc2cc",null)},49796:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(77943)},51076:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(37527),u=c(46298);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/cli-tools/cline-settings/route",pathname:"/api/cli-tools/cline-settings",filename:"route",bundlePath:"app/api/cli-tools/cline-settings/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/cline-settings/route.js",nextConfigOutput:"standalone",userland:u,...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/cline-settings/route";"/index"===d&&(d="/");let f=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,deploymentId:w,params:x,nextConfig:y,parsedUrl:z,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=f,I=(0,j.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,z,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(y.adapterPath)return await K();throw new s.NoFallbackError}}let L=null;!J||v.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===v.isDev||!J,N=J&&!M;H&&G&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,h.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,g.getRequestMeta)(a,"minimalMode"),T=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,y,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:x,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:y.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>v.onRequestError(a,b,d,e,C)},sharedContext:{buildId:u,deploymentId:w}},V=new k.NodeNextRequest(a),W=new k.NodeNextResponse(b),X=l.NextRequestAdapter.fromNodeNextRequest(V,(0,l.signalFromNodeResponse)(b));try{let f,g=async a=>v.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route");if(e){let b=`${O} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b),f&&f!==a&&(f.setAttribute("http.route",e),f.updateName(b))}else a.updateName(`${O} ${d}`)}),i=async f=>{var h,i;let j=async({previousCacheEntry:e})=>{try{if(!S&&D&&E&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(f);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,o.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[r.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await v.handleResponse({req:a,nextConfig:y,cacheKey:L,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,p.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(r.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,q.getCacheControlHeader)(k.cacheControl)),await (0,o.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await i(Q):(f=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(m.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},i),void 0,!R))}catch(b){if(b instanceof s.NoFallbackError||await v.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,o.I)(V,W,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},77943:(a,b,c)=>{"use strict";a.exports=c(7553).vendored["react-rsc"].ReactServerDOMWebpackServer},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},79748:a=>{"use strict";a.exports=require("fs/promises")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88863:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"001ba342c5f734fdbaedf7ae67d9ea3a34e9c1a752":()=>d.GET,"006c56163c62eeeb06b9490fa915e26a0e8a2dc2cc":()=>d.DELETE,"40c7990cbcb196a7e16ee289d72047846ab87a3d5e":()=>d.POST});var d=c(46298)},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=51076));module.exports=c})();
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46298:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DELETE:()=>w,GET:()=>u,POST:()=>v});var d=c(49796),e=c(23211),f=c(79646),g=c(28354),h=c(79748),i=c.n(h),j=c(33873),k=c.n(j),l=c(21820),m=c.n(l),n=c(24424);let o=(0,g.promisify)(f.exec),p=()=>k().join(m().homedir(),".cline","data"),q=()=>k().join(p(),"globalState.json"),r=()=>k().join(p(),"secrets.json"),s=async()=>{try{let a="win32"===m().platform(),b=a?{...process.env,PATH:`${process.env.APPDATA}\\npm;${process.env.PATH}`}:process.env;return await o(a?"where cline":"which cline",{windowsHide:!0,env:b}),!0}catch{try{return await i().access(q()),!0}catch{return!1}}},t=async a=>{try{let b=await i().readFile(a,"utf-8");return JSON.parse(b)}catch(a){if("ENOENT"===a.code)return null;throw a}};async function u(){try{if(!await s())return e.NextResponse.json({installed:!1,settings:null,message:"Cline CLI is not installed"});let a=await t(q());return e.NextResponse.json({installed:!0,settings:{actModeApiProvider:a?.actModeApiProvider,planModeApiProvider:a?.planModeApiProvider,openAiBaseUrl:a?.openAiBaseUrl,openAiModelId:a?.openAiModelId},has9Router:(a=>{if(!a)return!1;let b="openai"===a.actModeApiProvider||"openai"===a.planModeApiProvider,c=a.openAiBaseUrl||"";return b&&(c.includes("localhost")||c.includes("127.0.0.1")||c.includes("9router"))})(a),globalStatePath:q()})}catch(a){return console.log("Error checking cline settings:",a),e.NextResponse.json({error:"Failed to check cline settings"},{status:500})}}async function v(a){try{let{baseUrl:b,apiKey:c,model:d}=await a.json();if(!b||!c||!d)return e.NextResponse.json({error:"baseUrl, apiKey and model are required"},{status:400});await i().mkdir(p(),{recursive:!0});let f=b.endsWith("/v1")?b.slice(0,-3):b,g=await t(q())||{};g.actModeApiProvider="openai",g.planModeApiProvider="openai",g.openAiBaseUrl=f,g.openAiModelId=d,g.planModeOpenAiModelId=d,await i().writeFile(q(),JSON.stringify(g,null,2));let h=await t(r())||{};return h.openAiApiKey=c,await i().writeFile(r(),JSON.stringify(h,null,2)),e.NextResponse.json({success:!0,message:"Cline settings applied successfully!",globalStatePath:q()})}catch(a){return console.log("Error updating cline settings:",a),e.NextResponse.json({error:"Failed to update cline settings"},{status:500})}}async function w(){try{let a=await t(q());if(!a)return e.NextResponse.json({success:!0,message:"No settings file to reset"});"openai"===a.actModeApiProvider&&(delete a.openAiBaseUrl,delete a.openAiModelId,delete a.planModeOpenAiModelId,a.actModeApiProvider="cline",a.planModeApiProvider="cline"),await i().writeFile(q(),JSON.stringify(a,null,2));let b=await t(r())||{};return delete b.openAiApiKey,await i().writeFile(r(),JSON.stringify(b,null,2)),e.NextResponse.json({success:!0,message:"9Router settings removed from Cline"})}catch(a){return console.log("Error resetting cline settings:",a),e.NextResponse.json({error:"Failed to reset cline settings"},{status:500})}}(0,n.D)([u,v,w]),(0,d.A)(u,"001ba342c5f734fdbaedf7ae67d9ea3a34e9c1a752",null),(0,d.A)(v,"40c7990cbcb196a7e16ee289d72047846ab87a3d5e",null),(0,d.A)(w,"006c56163c62eeeb06b9490fa915e26a0e8a2dc2cc",null)},49796:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(77943)},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},77943:(a,b,c)=>{"use strict";a.exports=c(7553).vendored["react-rsc"].ReactServerDOMWebpackServer},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},79748:a=>{"use strict";a.exports=require("fs/promises")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88863:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"001ba342c5f734fdbaedf7ae67d9ea3a34e9c1a752":()=>d.GET,"006c56163c62eeeb06b9490fa915e26a0e8a2dc2cc":()=>d.DELETE,"40c7990cbcb196a7e16ee289d72047846ab87a3d5e":()=>d.POST});var d=c(46298)},96487:()=>{},97246:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(37527),u=c(46298);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/cli-tools/cline-settings/route",pathname:"/api/cli-tools/cline-settings",filename:"route",bundlePath:"app/api/cli-tools/cline-settings/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/bytedance/Documents/Projects/9router/src/app/api/cli-tools/cline-settings/route.js",nextConfigOutput:"standalone",userland:u,...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cli-tools/cline-settings/route";"/index"===d&&(d="/");let f=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:u,deploymentId:w,params:x,nextConfig:y,parsedUrl:z,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=f,I=(0,j.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,z,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(y.adapterPath)return await K();throw new s.NoFallbackError}}let L=null;!J||v.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===v.isDev||!J,N=J&&!M;H&&G&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,h.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,g.getRequestMeta)(a,"minimalMode"),T=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,y,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:x,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:y.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>v.onRequestError(a,b,d,e,C)},sharedContext:{buildId:u,deploymentId:w}},V=new k.NodeNextRequest(a),W=new k.NodeNextResponse(b),X=l.NextRequestAdapter.fromNodeNextRequest(V,(0,l.signalFromNodeResponse)(b));try{let f,g=async a=>v.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route");if(e){let b=`${O} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b),f&&f!==a&&(f.setAttribute("http.route",e),f.updateName(b))}else a.updateName(`${O} ${d}`)}),i=async f=>{var h,i;let j=async({previousCacheEntry:e})=>{try{if(!S&&D&&E&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(f);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,o.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[r.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=r.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await v.handleResponse({req:a,nextConfig:y,cacheKey:L,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,p.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(r.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,q.getCacheControlHeader)(k.cacheControl)),await (0,o.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await i(Q):(f=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(m.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},i),void 0,!R))}catch(b){if(b instanceof s.NoFallbackError||await v.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,n.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,o.I)(V,W,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=97246));module.exports=c})();
|