@yina-npm/openrouterx 0.4.28 → 0.4.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/app-path-routes-manifest.json +13 -2
- package/app/.next/build-manifest.json +3 -3
- package/app/.next/routes-manifest.json +70 -0
- 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/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 +2 -2
- 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 +4 -2
- 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 +2 -2
- 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 +3 -3
- 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 +5 -6
- package/app/.next/server/app/_not-found.segments/_full.segment.rsc +5 -6
- package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_index.segment.rsc +5 -6
- 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 +3 -4
- 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 -0
- package/app/.next/server/app/api/auth/oidc/callback/route.js.nft.json +1 -0
- package/app/.next/server/app/api/auth/oidc/callback/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/auth/oidc/start/route.js +1 -0
- package/app/.next/server/app/api/auth/oidc/start/route.js.nft.json +1 -0
- package/app/.next/server/app/api/auth/oidc/start/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/auth/oidc/test/route.js +1 -0
- package/app/.next/server/app/api/auth/oidc/test/route.js.nft.json +1 -0
- package/app/.next/server/app/api/auth/oidc/test/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/auth/status/route.js +1 -0
- package/app/.next/server/app/api/auth/status/route.js.nft.json +1 -0
- package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/cli-tools/all-statuses/route.js +9 -0
- package/app/.next/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -0
- package/app/.next/server/app/api/cli-tools/all-statuses/route_client-reference-manifest.js +1 -0
- 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/inject-auth/route.js +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/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/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 +2 -0
- package/app/.next/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -0
- package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js +1 -32
- 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 +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-tools/route.js +2 -0
- package/app/.next/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -0
- package/app/.next/server/app/api/cli-tools/cowork-mcp-tools/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/cli-tools/cowork-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- 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/kilo-settings/route.js +2 -0
- package/app/.next/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -0
- package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -0
- 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/cloud/auth/route.js +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next/server/app/api/combos/route.js +1 -1
- package/app/.next/server/app/api/health/route.js +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/mcp/[plugin]/message/route.js +7 -0
- package/app/.next/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -0
- package/app/.next/server/app/api/mcp/[plugin]/message/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/mcp/[plugin]/sse/route.js +10 -0
- package/app/.next/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -0
- package/app/.next/server/app/api/mcp/[plugin]/sse/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/media-providers/tts/deepgram/voices/route.js +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/inworld/voices/route.js +1 -1
- package/app/.next/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next/server/app/api/models/alias/route.js +1 -1
- package/app/.next/server/app/api/models/availability/route.js +1 -1
- package/app/.next/server/app/api/models/custom/route.js +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/import/route.js +1 -1
- package/app/.next/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js +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-exchange/route.js +1 -1
- package/app/.next/server/app/api/pricing/route.js +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js +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/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-models/route.js +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/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/test-batch/route.js +1 -1
- package/app/.next/server/app/api/providers/validate/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/app/.next/server/app/api/settings/database/route.js +1 -1
- package/app/.next/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next/server/app/api/settings/route.js +1 -1
- package/app/.next/server/app/api/shutdown/route.js +1 -1
- package/app/.next/server/app/api/tags/route.js +1 -1
- package/app/.next/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next/server/app/api/translator/load/route.js +1 -1
- package/app/.next/server/app/api/translator/save/route.js +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 +2 -2
- 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-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/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 +2 -2
- 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/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/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/version/route.js +1 -1
- package/app/.next/server/app/api/version/shutdown/route.js +1 -0
- package/app/.next/server/app/api/version/shutdown/route.js.nft.json +1 -0
- package/app/.next/server/app/api/version/shutdown/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/version/update/route.js +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 +6 -7
- package/app/.next/server/app/callback.segments/_full.segment.rsc +6 -7
- package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/_index.segment.rsc +5 -6
- package/app/.next/server/app/callback.segments/_tree.segment.rsc +3 -4
- package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
- 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 +5 -6
- package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -6
- 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 +5 -6
- package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +3 -4
- 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/index.html +1 -1
- package/app/.next/server/app/index.rsc +5 -6
- package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_full.segment.rsc +5 -6
- package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_index.segment.rsc +5 -6
- package/app/.next/server/app/index.segments/_tree.segment.rsc +3 -4
- 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 +5 -6
- package/app/.next/server/app/landing.segments/_full.segment.rsc +5 -6
- package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/_index.segment.rsc +5 -6
- package/app/.next/server/app/landing.segments/_tree.segment.rsc +3 -4
- 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 +6 -7
- package/app/.next/server/app/login.segments/_full.segment.rsc +6 -7
- package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/login.segments/_index.segment.rsc +5 -6
- package/app/.next/server/app/login.segments/_tree.segment.rsc +3 -4
- 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/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 +13 -2
- package/app/.next/server/chunks/1263.js +2 -2
- package/app/.next/server/chunks/1350.js +7 -0
- package/app/.next/server/chunks/{2574.js → 2343.js} +1 -1
- package/app/.next/server/chunks/2506.js +4 -3
- package/app/.next/server/chunks/2560.js +1 -0
- package/app/.next/server/chunks/3110.js +1 -1
- package/app/.next/server/chunks/3593.js +9 -0
- package/app/.next/server/chunks/3855.js +1 -1
- package/app/.next/server/chunks/3913.js +2 -2
- package/app/.next/server/chunks/412.js +5 -5
- package/app/.next/server/chunks/4126.js +1 -0
- package/app/.next/server/chunks/4739.js +9 -0
- package/app/.next/server/chunks/4922.js +9 -0
- package/app/.next/server/chunks/4989.js +2 -2
- package/app/.next/server/chunks/5217.js +9 -0
- package/app/.next/server/chunks/5258.js +9 -0
- package/app/.next/server/chunks/{7937.js → 5330.js} +4 -4
- package/app/.next/server/chunks/5434.js +1 -1
- package/app/.next/server/chunks/5573.js +1 -1
- package/app/.next/server/chunks/5627.js +7 -7
- package/app/.next/server/chunks/5681.js +1 -1
- package/app/.next/server/chunks/5789.js +1 -0
- package/app/.next/server/chunks/{8838.js → 6001.js} +1 -1
- package/app/.next/server/chunks/6182.js +36 -2
- package/app/.next/server/chunks/63.js +3 -3
- package/app/.next/server/chunks/6393.js +1 -0
- package/app/.next/server/chunks/6936.js +1 -0
- package/app/.next/server/chunks/723.js +44 -0
- package/app/.next/server/chunks/7540.js +1 -0
- package/app/.next/server/chunks/7568.js +1 -0
- package/app/.next/server/chunks/7595.js +1 -1
- package/app/.next/server/chunks/8520.js +9 -0
- package/app/.next/server/chunks/8590.js +1 -1
- package/app/.next/server/chunks/8760.js +1 -1
- package/app/.next/server/chunks/8895.js +4 -4
- package/app/.next/server/chunks/8971.js +1 -0
- package/app/.next/server/chunks/906.js +1 -0
- package/app/.next/server/chunks/9460.js +1 -0
- package/app/.next/server/chunks/9489.js +1 -1
- package/app/.next/server/chunks/9528.js +32 -0
- package/app/.next/server/chunks/9546.js +1 -0
- package/app/.next/server/chunks/9609.js +1 -1
- package/app/.next/server/chunks/9641.js +1 -1
- package/app/.next/server/chunks/9718.js +1 -1
- package/app/.next/server/functions-config-manifest.json +2 -0
- 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/bKAtYNzF3T9AwhxzQjlwr/_buildManifest.js +1 -0
- package/app/.next/static/chunks/1321-222b8cacaa28a34f.js +1 -0
- package/app/.next/static/chunks/5497-83030cc3d92a3519.js +7 -0
- package/app/.next/static/chunks/5555-fe35208b285372b6.js +3 -0
- package/app/.next/static/chunks/5964-87a3fc549eda915f.js +44 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/admin/keys/{page-e7d9455fb9021069.js → page-0b0deda6732f2c17.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/admin/users/page-78953d3b1df0d645.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/basic-chat/page-c86af5c8f255b3b1.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-e6ab107aa0c88255.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/focus-ui/page-0e1c6e92394e082a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-d7972070450d7abc.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/mitm/{page-4473f52ad379b661.js → page-320446d3e8bf8cdf.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-653d43b972894dc8.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-bafdc36ddde43d0d.js +3 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-d799365a8ef51d37.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-4319007c3ca0a634.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/{layout-7ea5a7abc543b04d.js → layout-f01d55c89fabcb07.js} +1 -1
- package/app/.next/static/chunks/app/_global-error/page-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/login/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/logout/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/me/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/oidc/callback/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/oidc/start/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/oidc/test/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/auth/status/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/all-statuses/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/inject-auth/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/restart/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/test/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cowork-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/hermes-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/auth/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/combos/[id]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/combos/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/health/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/init/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/keys/[id]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/keys/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/locale/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/mcp/[plugin]/message/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/mcp/[plugin]/sse/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/deepgram/voices/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/inworld/voices/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/media-providers/tts/voices/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/models/alias/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/models/availability/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/models/custom/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/models/disabled/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/models/test/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/network-analysis/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/gitlab/pat/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/client/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/kilo/free-models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/suggested-models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/test-batch/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/providers/validate/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/settings/database/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy-test/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/settings/require-login/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/settings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/shutdown/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tags/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/translator/console-logs/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/translator/load/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/translator/save/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/translator/send/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/translator/translate/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/disable/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/enable/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/status/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-check/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-disable/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-enable/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-install/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-login/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/api-keys/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/chart/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/history/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/logs/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/providers/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-details/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-logs/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/stats/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/usage/stream/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/users/[id]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/users/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/api/chat/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/voices/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/embeddings/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/images/generations/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/[kind]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/info/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/compact/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/search/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1/web/fetch/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/version/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/version/shutdown/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/api/version/update/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/callback/page-612232d68e5ef104.js +1 -0
- package/app/.next/static/chunks/app/layout-e2bc0634eb8e25c2.js +1 -0
- package/app/.next/static/chunks/app/login/page-618b0ac3d3cefbb3.js +1 -0
- package/app/.next/static/chunks/app/manifest.webmanifest/route-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/app/page-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-1172e1764d69e954.js +1 -0
- package/app/.next/static/chunks/{webpack-d1740476c6ab968a.js → webpack-786de0e184ffd859.js} +1 -1
- package/app/.next/static/css/{081a0afca5a9bd20.css → 2e1b7d528c228ec3.css} +1 -1
- package/app/.next/static/css/d0e6cedf3e986854.css +1 -0
- package/app/.next/static/media/material-symbols-outlined.1060ac06.woff2 +0 -0
- package/app/package.json +2 -1
- package/app/public/i18n/literals/ar.json +2 -1
- package/app/public/i18n/literals/bn.json +2 -1
- package/app/public/i18n/literals/cs.json +2 -1
- package/app/public/i18n/literals/da.json +2 -1
- package/app/public/i18n/literals/de.json +2 -1
- package/app/public/i18n/literals/el.json +2 -1
- package/app/public/i18n/literals/es.json +2 -1
- package/app/public/i18n/literals/fi.json +2 -1
- package/app/public/i18n/literals/fr.json +2 -1
- package/app/public/i18n/literals/he.json +2 -1
- package/app/public/i18n/literals/hi.json +2 -1
- package/app/public/i18n/literals/hu.json +2 -1
- package/app/public/i18n/literals/id.json +2 -1
- package/app/public/i18n/literals/it.json +2 -1
- package/app/public/i18n/literals/ja.json +2 -1
- package/app/public/i18n/literals/ko.json +2 -1
- package/app/public/i18n/literals/nl.json +2 -1
- package/app/public/i18n/literals/no.json +2 -1
- package/app/public/i18n/literals/pl.json +2 -1
- package/app/public/i18n/literals/pt-BR.json +2 -1
- package/app/public/i18n/literals/pt-PT.json +2 -1
- package/app/public/i18n/literals/ro.json +2 -1
- package/app/public/i18n/literals/ru.json +2 -1
- package/app/public/i18n/literals/sv.json +2 -1
- package/app/public/i18n/literals/th.json +2 -1
- package/app/public/i18n/literals/tl.json +2 -1
- package/app/public/i18n/literals/tr.json +2 -1
- package/app/public/i18n/literals/uk.json +2 -1
- package/app/public/i18n/literals/ur.json +2 -1
- package/app/public/i18n/literals/vi.json +2 -1
- package/app/public/i18n/literals/zh-CN.json +124 -2
- package/app/public/i18n/literals/zh-TW.json +2 -1
- package/app/src/lib/db/adapters/betterSqliteAdapter.js +55 -0
- package/app/src/lib/db/adapters/bunSqliteAdapter.js +63 -0
- package/app/src/lib/db/adapters/nodeSqliteAdapter.js +84 -0
- package/app/src/lib/db/adapters/sqljsAdapter.js +115 -0
- package/app/src/lib/db/migrate.js +248 -0
- package/app/src/lib/updater/updater.js +25 -0
- package/app/src/mitm/cert/install.js +53 -3
- package/app/src/mitm/dbReader.js +22 -0
- package/app/src/mitm/dns/dnsConfig.js +37 -8
- package/app/src/mitm/manager.js +3 -0
- package/app/src/mitm/paths.js +1 -0
- package/app/src/mitm/server.js +1 -2
- package/cli.js +148 -18
- package/package.json +1 -1
- package/app/.next/server/chunks/2417.js +0 -1
- package/app/.next/server/chunks/2549.js +0 -1
- package/app/.next/server/chunks/3605.js +0 -1
- package/app/.next/server/chunks/4122.js +0 -1
- package/app/.next/server/chunks/5296.js +0 -1
- package/app/.next/server/chunks/6184.js +0 -1
- package/app/.next/server/chunks/6774.js +0 -1
- package/app/.next/server/chunks/7861.js +0 -1
- package/app/.next/server/chunks/9547.js +0 -28
- package/app/.next/static/chunks/1321-38758d19993d62bf.js +0 -1
- package/app/.next/static/chunks/2336-cef968b5640a96f8.js +0 -28
- package/app/.next/static/chunks/5497-2ef9901a04eb9472.js +0 -7
- package/app/.next/static/chunks/5555-595382d9c4d118fe.js +0 -3
- package/app/.next/static/chunks/app/(dashboard)/dashboard/admin/users/page-adc5d5e8da3a0761.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/basic-chat/page-a4b2b832a4892e6d.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-bd677c182bc2aae9.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/focus-ui/page-74a4a20467839a51.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-7cf63e1a3a8adecd.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-ceb9bffbc34711bc.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-aa4cac34e6e605a5.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-a0419a964a084f76.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-c41fbdb17b88c549.js +0 -1
- package/app/.next/static/chunks/app/_global-error/page-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/auth/login/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/auth/logout/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/auth/me/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/inject-auth/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/restart/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/test/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cowork-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/hermes-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/auth/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/combos/[id]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/combos/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/health/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/init/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/keys/[id]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/keys/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/locale/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/deepgram/voices/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/inworld/voices/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/media-providers/tts/voices/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/models/alias/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/models/availability/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/models/custom/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/models/disabled/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/models/test/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/network-analysis/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/gitlab/pat/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/client/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/kilo/free-models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/suggested-models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/test-batch/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/providers/validate/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/settings/database/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy-test/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/settings/require-login/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/settings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/shutdown/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tags/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/translator/console-logs/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/translator/load/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/translator/save/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/translator/send/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/translator/translate/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/disable/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/enable/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/status/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-check/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-disable/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-enable/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-install/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-login/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/api-keys/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/chart/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/history/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/logs/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/providers/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-details/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-logs/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/stats/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/usage/stream/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/users/[id]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/users/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/api/chat/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/voices/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/embeddings/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/images/generations/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/[kind]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/info/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/compact/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/search/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1/web/fetch/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/version/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/api/version/update/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/callback/page-ca2aafefd1c72edc.js +0 -1
- package/app/.next/static/chunks/app/layout-88b42fda4d7c38d2.js +0 -1
- package/app/.next/static/chunks/app/login/page-cfe122b0047956eb.js +0 -1
- package/app/.next/static/chunks/app/manifest.webmanifest/route-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/app/page-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-e967880631a99483.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-e967880631a99483.js +0 -1
- package/app/.next/static/css/90eec4fabec62f30.css +0 -1
- package/app/.next/static/uJKVggqia7KT98gdWEdVM/_buildManifest.js +0 -1
- /package/app/.next/static/{uJKVggqia7KT98gdWEdVM → bKAtYNzF3T9AwhxzQjlwr}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports.id=906,exports.ids=[906],exports.modules={5211:(a,b,c)=>{"use strict";c.d(b,{RuntimeI18nProvider:()=>f});var d=c(48249);c(67484);var e=c(19099);function f({children:a}){return(0,e.usePathname)(),(0,d.jsx)(d.Fragment,{children:a})}c(99258)},12020:(a,b,c)=>{"use strict";c.d(b,{Q2:()=>d.Q2,fg:()=>d.fg,vQ:()=>e,MA:()=>d.MA,UY:()=>i,Nu:()=>f,zN:()=>d.zN,B2:()=>h,h0:()=>g});var d=c(96919);c(91431);let e={name:"openrouterx",description:"AI Infrastructure Management",version:"0.4.31"},f={changelogUrl:"https://raw.githubusercontent.com/decolua/9router/refs/heads/master/CHANGELOG.md"},g={npmPackageName:"@yina-npm/openrouterx",installCmd:"npm i -g @yina-npm/openrouterx --registry=https://registry.npmjs.org/",installCmdLatest:"npm i -g @yina-npm/openrouterx@latest --prefer-online --registry=https://registry.npmjs.org/",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:20128},h={storageKey:"theme",defaultTheme:"system"},i={maxLines:200,pollIntervalMs:1e3}},13033:(a,b,c)=>{"use strict";c.d(b,{A:()=>g});var d=c(31417),e=c(300),f=c(12020);let g=(0,d.v)((0,e.Zr)((a,b)=>({theme:f.B2.defaultTheme,setTheme:b=>{a({theme:b})},toggleTheme:()=>{let c="dark"===b().theme?"light":"dark";a({theme:c})},initTheme:()=>{b().theme}}),{name:f.B2.storageKey}))},19308:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>f});var d=c(48249);c(67484);var e=c(13033);function f({children:a}){let{initTheme:b}=(0,e.A)();return(0,d.jsx)(d.Fragment,{children:a})}},25334:(a,b,c)=>{"use strict";function d(a){return null==a?"":String(a).trim()}function e({outboundProxyEnabled:a,outboundProxyUrl:b,outboundNoProxy:c,outboundProxyTargets:f}={}){if("u"<typeof process||!process.env)return;let g=d(b),h=d(c),i=Array.isArray(f)?f.map(d).filter(Boolean).join(","):d(f);if(!a){"1"===process.env.NINE_ROUTER_PROXY_MANAGED&&(delete process.env.HTTP_PROXY,delete process.env.HTTPS_PROXY,delete process.env.ALL_PROXY,delete process.env.NO_PROXY,delete process.env.NINE_ROUTER_PROXY_MANAGED,delete process.env.NINE_ROUTER_PROXY_URL,delete process.env.NINE_ROUTER_NO_PROXY,delete process.env.NINE_ROUTER_PROXY_TARGETS);return}let j="1"===process.env.NINE_ROUTER_PROXY_MANAGED,k=!1;j&&(delete process.env.HTTP_PROXY,delete process.env.HTTPS_PROXY,delete process.env.ALL_PROXY,delete process.env.NO_PROXY,delete process.env.NINE_ROUTER_NO_PROXY,delete process.env.NINE_ROUTER_PROXY_TARGETS,g||delete process.env.NINE_ROUTER_PROXY_URL),g&&(process.env.NINE_ROUTER_PROXY_URL=g,process.env.NINE_ROUTER_PROXY_TARGETS=i,k=!0),h&&(process.env.NO_PROXY=h,process.env.NINE_ROUTER_NO_PROXY=h,k=!0),k?process.env.NINE_ROUTER_PROXY_MANAGED="1":j&&delete process.env.NINE_ROUTER_PROXY_MANAGED}c.d(b,{k:()=>e})},26892:(a,b,c)=>{"use strict";c.d(b,{KM:()=>m,fO:()=>l,up:()=>n,wJ:()=>k});var d=c(94735),e=c(30869);let f=["log","info","warn","error","debug"];global._consoleLogBufferState||(global._consoleLogBufferState={logs:[],patched:!1,originals:{},emitter:new d.EventEmitter},global._consoleLogBufferState.emitter.setMaxListeners(50));let g=global._consoleLogBufferState;g.emitter||(g.emitter=new d.EventEmitter,g.emitter.setMaxListeners(50));let h=/\x1b\[[0-9;]*m/g;function i(a){return a.replace(h,"")}function j(a){if("string"==typeof a)return i(a);if(a instanceof Error)return i(a.stack||a.message||String(a));try{return i(JSON.stringify(a))}catch{return i(String(a))}}function k(){if(!g.patched){for(let a of f)g.originals[a]=console[a],console[a]=(...b)=>{!function(a){g.logs.push(a);let b=e.UY.maxLines;g.logs.length>b&&(g.logs=g.logs.slice(-b)),g.emitter.emit("line",a)}(b.map(j).join(" ")),g.originals[a](...b)};g.patched=!0}}function l(){return g.logs}function m(){g.logs=[],g.emitter.emit("clear")}function n(){return g.emitter}},30869:(a,b,c)=>{"use strict";c.d(b,{UY:()=>h,X3:()=>i,eh:()=>f.eh,fg:()=>e.fg,h0:()=>g});var d=c(39006),e=c(75681),f=c(81329);d.rE;let g={npmPackageName:"@yina-npm/openrouterx",installCmd:"npm i -g @yina-npm/openrouterx --registry=https://registry.npmjs.org/",installCmdLatest:"npm i -g @yina-npm/openrouterx@latest --prefer-online --registry=https://registry.npmjs.org/",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:20128},h={maxLines:200,pollIntervalMs:1e3},i={openrouter:"https://openrouter.ai/api/v1/chat/completions",glm:"https://api.z.ai/api/anthropic/v1/messages","glm-cn":"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",kimi:"https://api.kimi.com/coding/v1/messages",minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages",alicode:"https://coding.dashscope.aliyuncs.com/v1/chat/completions","alicode-intl":"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions","volcengine-ark":"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",byteplus:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",openai:"https://api.openai.com/v1/chat/completions",anthropic:"https://api.anthropic.com/v1/messages",gemini:"https://generativelanguage.googleapis.com/v1beta/models",ollama:"https://ollama.com/api/chat","ollama-local":"http://localhost:11434/api/chat"}},31804:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23)),Promise.resolve().then(c.t.bind(c,15098,23)),Promise.resolve().then(c.t.bind(c,47644,23)),Promise.resolve().then(c.t.bind(c,33859,23)),Promise.resolve().then(c.t.bind(c,98099,23)),Promise.resolve().then(c.t.bind(c,16237,23)),Promise.resolve().then(c.t.bind(c,98562,23)),Promise.resolve().then(c.t.bind(c,36675,23))},32059:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>p,metadata:()=>n,viewport:()=>o});var d=c(5735),e=c(75329),f=c.n(e);c(36497),c(61135);var g=c(89886);c(87085);var h=c(89718),i=c(25334);let j=!1;async function k(){if(j)return!0;try{let a=await (0,h.getSettings)();(0,i.k)(a),j=!0}catch(a){console.error("[ServerInit] Error initializing outbound proxy:",a)}return j}setImmediate(()=>{k().catch(console.log)});var l=c(26892),m=c(85117);(0,l.wJ)();let n={title:"openrouterx - AI Infrastructure Management",description:"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.",icons:{icon:"/favicon.svg"}},o={themeColor:"#0a0a0a"};function p({children:a}){return(0,d.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,d.jsx)("head",{children:(0,d.jsx)("script",{dangerouslySetInnerHTML:{__html:"if(document.fonts&&document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}"}})}),(0,d.jsx)("body",{className:`${f().variable} font-sans antialiased`,children:(0,d.jsx)(g.ThemeProvider,{children:(0,d.jsx)(m.RuntimeI18nProvider,{children:a})})})]})}},34973:(a,b,c)=>{"use strict";c.d(b,{I:()=>d});let d=[{id:"af",name:"Afrikaans",type:"tts"},{id:"ar",name:"Arabic",type:"tts"},{id:"bg",name:"Bulgarian",type:"tts"},{id:"bn",name:"Bengali",type:"tts"},{id:"bs",name:"Bosnian",type:"tts"},{id:"ca",name:"Catalan",type:"tts"},{id:"cs",name:"Czech",type:"tts"},{id:"cy",name:"Welsh",type:"tts"},{id:"da",name:"Danish",type:"tts"},{id:"de",name:"German",type:"tts"},{id:"el",name:"Greek",type:"tts"},{id:"en",name:"English",type:"tts"},{id:"eo",name:"Esperanto",type:"tts"},{id:"es",name:"Spanish",type:"tts"},{id:"et",name:"Estonian",type:"tts"},{id:"fi",name:"Finnish",type:"tts"},{id:"fr",name:"French",type:"tts"},{id:"gu",name:"Gujarati",type:"tts"},{id:"hi",name:"Hindi",type:"tts"},{id:"hr",name:"Croatian",type:"tts"},{id:"hu",name:"Hungarian",type:"tts"},{id:"hy",name:"Armenian",type:"tts"},{id:"id",name:"Indonesian",type:"tts"},{id:"is",name:"Icelandic",type:"tts"},{id:"it",name:"Italian",type:"tts"},{id:"ja",name:"Japanese",type:"tts"},{id:"jw",name:"Javanese",type:"tts"},{id:"km",name:"Khmer",type:"tts"},{id:"kn",name:"Kannada",type:"tts"},{id:"ko",name:"Korean",type:"tts"},{id:"la",name:"Latin",type:"tts"},{id:"lv",name:"Latvian",type:"tts"},{id:"mk",name:"Macedonian",type:"tts"},{id:"ml",name:"Malayalam",type:"tts"},{id:"mr",name:"Marathi",type:"tts"},{id:"my",name:"Myanmar (Burmese)",type:"tts"},{id:"ne",name:"Nepali",type:"tts"},{id:"nl",name:"Dutch",type:"tts"},{id:"no",name:"Norwegian",type:"tts"},{id:"pl",name:"Polish",type:"tts"},{id:"pt",name:"Portuguese",type:"tts"},{id:"ro",name:"Romanian",type:"tts"},{id:"ru",name:"Russian",type:"tts"},{id:"si",name:"Sinhala",type:"tts"},{id:"sk",name:"Slovak",type:"tts"},{id:"sq",name:"Albanian",type:"tts"},{id:"sr",name:"Serbian",type:"tts"},{id:"su",name:"Sundanese",type:"tts"},{id:"sv",name:"Swedish",type:"tts"},{id:"sw",name:"Swahili",type:"tts"},{id:"ta",name:"Tamil",type:"tts"},{id:"te",name:"Telugu",type:"tts"},{id:"th",name:"Thai",type:"tts"},{id:"tl",name:"Filipino",type:"tts"},{id:"tr",name:"Turkish",type:"tts"},{id:"uk",name:"Ukrainian",type:"tts"},{id:"ur",name:"Urdu",type:"tts"},{id:"vi",name:"Vietnamese",type:"tts"},{id:"zh-CN",name:"Chinese (Simplified)",type:"tts"},{id:"zh-TW",name:"Chinese (Traditional)",type:"tts"}]},37791:(a,b,c)=>{Promise.resolve().then(c.bind(c,85117)),Promise.resolve().then(c.bind(c,89886))},39006:a=>{"use strict";a.exports={rE:"0.4.31"}},42889:(a,b,c)=>{"use strict";c.d(b,{Xg:()=>m,vq:()=>k,KC:()=>n});var d=c(21820);let e={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},f={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,d.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,d.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,d.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,d.platform)()}`}}(),"X-Stainless-Timeout":"600"},g="https://api.kimi.com/coding/v1/messages",h={claude:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...f},clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://api.anthropic.com/v1/oauth/token"},gemini:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},"gemini-cli":{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},codex:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",headers:{originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},clientId:"app_EMoamEEZ73f0CkXaXp7hrann",tokenUrl:"https://auth.openai.com/oauth/token"},qwen:{baseUrl:"https://portal.qwen.ai/v1/chat/completions",format:"openai",clientId:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",format:"openai",headers:{"User-Agent":"iFlow-Cli"},clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},qoder:{baseUrl:"https://api.qoder.com/v1/chat/completions",format:"openai",headers:{"User-Agent":"Qoder-Cli"},clientId:process.env.QODER_OAUTH_CLIENT_ID||"10009311001",clientSecret:process.env.QODER_OAUTH_CLIENT_SECRET||"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://api.qoder.com/oauth/token",authUrl:"https://qoder.com/oauth/authorize"},antigravity:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":`antigravity/1.107.0 ${(0,d.platform)()}/${(0,d.arch)()}`},clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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"},openrouter:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},openai:{baseUrl:"https://api.openai.com/v1/chat/completions",format:"openai"},glm:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",headers:{...e}},"glm-cn":{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",format:"openai",headers:{}},kimi:{baseUrl:g,format:"claude",headers:{...e}},minimax:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",headers:{...e}},"minimax-cn":{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",headers:{...e}},alicode:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"alicode-intl":{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"volcengine-ark":{baseUrl:"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",format:"openai",headers:{}},byteplus:{baseUrl:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",format:"openai",headers:{}},github:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",format:"openai",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},clientId:"Iv1.b507a08c87ecfe98"},kiro:{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","User-Agent":"AWS-SDK-JS/3.0.0 kiro-ide/1.0.0","X-Amz-User-Agent":"aws-sdk-js/3.0.0 kiro-ide/1.0.0"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},cursor:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.1.0"},"kimi-coding":{baseUrl:g,format:"claude",headers:{...e},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token"},kilocode:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",format:"openai",headers:{}},opencode:{baseUrl:"http://localhost:4096/v1/chat/completions",format:"openai",headers:{}},cline:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},nvidia:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",format:"openai"},anthropic:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...e}},deepseek:{baseUrl:"https://api.deepseek.com/chat/completions",format:"openai"},commandcode:{baseUrl:"https://api.commandcode.ai/alpha/generate",format:"commandcode",headers:{"x-command-code-version":"0.25.7","x-cli-environment":"cli"}},groq:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",format:"openai"},xai:{baseUrl:"https://api.x.ai/v1/chat/completions",format:"openai"},mistral:{baseUrl:"https://api.mistral.ai/v1/chat/completions",format:"openai"},perplexity:{baseUrl:"https://api.perplexity.ai/chat/completions",format:"openai"},together:{baseUrl:"https://api.together.xyz/v1/chat/completions",format:"openai"},fireworks:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",format:"openai"},cerebras:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",format:"openai"},cohere:{baseUrl:"https://api.cohere.ai/v1/chat/completions",format:"openai"},nebius:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",format:"openai"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1/chat/completions",format:"openai"},hyperbolic:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",format:"openai"},deepgram:{baseUrl:"https://api.deepgram.com/v1/listen",format:"openai"},assemblyai:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",format:"openai"},nanobanana:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",format:"openai"},chutes:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",format:"openai"},ollama:{baseUrl:"https://ollama.com/api/chat",format:"ollama"},"ollama-local":{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},vertex:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},"vertex-partner":{baseUrl:"https://aiplatform.googleapis.com",format:"openai"},gitlab:{baseUrl:"https://gitlab.com/api/v4/chat/completions",format:"openai"},codebuddy:{baseUrl:"https://copilot.tencent.com/v1/chat/completions",format:"openai"},opencode:{baseUrl:"https://opencode.ai",format:"openai",headers:{"x-opencode-client":"desktop"},noAuth:!0},"opencode-go":{baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",format:"openai",headers:{}},"grok-web":{baseUrl:"https://grok.com/rest/app-chat/conversations/new",format:"grok-web",authType:"cookie"},"perplexity-web":{baseUrl:"https://www.perplexity.ai/rest/sse/perplexity_ask",format:"perplexity-web",authType:"cookie"},azure:{baseUrl:"",format:"openai",headers:{}},"cloudflare-ai":{baseUrl:"https://api.cloudflare.com/client/v4/accounts/{accountId}/ai/v1/chat/completions",format:"openai"},"xiaomi-mimo":{baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",format:"openai"},agentrouter:{baseUrl:"https://agentrouter.org/v1/messages",format:"claude",headers:{...f}},aimlapi:{baseUrl:"https://api.aimlapi.com/v1/chat/completions",format:"openai"},novita:{baseUrl:"https://api.novita.ai/v3/openai/chat/completions",format:"openai"},modal:{baseUrl:"https://api.modal.com/v1/chat/completions",format:"openai"},reka:{baseUrl:"https://api.reka.ai/v1/chat/completions",format:"openai"},nlpcloud:{baseUrl:"https://api.nlpcloud.io/v1/gpu/chatbot",format:"openai"},bazaarlink:{baseUrl:"https://bazaarlink.ai/api/v1/chat/completions",format:"openai"},completions:{baseUrl:"https://completions.me/api/v1/chat/completions",format:"openai"},enally:{baseUrl:"https://ai.enally.in/v1/chat/completions",format:"openai",authHeader:"x-api-key"},freetheai:{baseUrl:"https://api.freetheai.xyz/v1/chat/completions",format:"openai"},llm7:{baseUrl:"https://api.llm7.io/v1/chat/completions",format:"openai"},lepton:{baseUrl:"https://api.lepton.ai/api/v1/chat/completions",format:"openai"},kluster:{baseUrl:"https://api.kluster.ai/v1/chat/completions",format:"openai"},ai21:{baseUrl:"https://api.ai21.com/studio/v1/chat/completions",format:"openai"},"inference-net":{baseUrl:"https://api.inference.net/v1/chat/completions",format:"openai"},predibase:{baseUrl:"https://serving.app.predibase.com/v1/chat/completions",format:"openai"},bytez:{baseUrl:"https://api.bytez.com/models/v2",format:"openai"},morph:{baseUrl:"https://api.morphllm.com/v1/chat/completions",format:"openai"},longcat:{baseUrl:"https://api.longcat.chat/openai/v1/chat/completions",format:"openai"},puter:{baseUrl:"https://api.puter.com/puterai/openai/v1/chat/completions",format:"openai"},uncloseai:{baseUrl:"https://hermes.ai.unturf.com/v1/chat/completions",format:"openai",noAuth:!0},scaleway:{baseUrl:"https://api.scaleway.ai/v1/chat/completions",format:"openai"},deepinfra:{baseUrl:"https://api.deepinfra.com/v1/openai/chat/completions",format:"openai"},sambanova:{baseUrl:"https://api.sambanova.ai/v1/chat/completions",format:"openai"},nscale:{baseUrl:"https://inference.api.nscale.com/v1/chat/completions",format:"openai"},baseten:{baseUrl:"https://inference.baseten.co/v1/chat/completions",format:"openai"},publicai:{baseUrl:"https://api.publicai.co/v1/chat/completions",format:"openai"},"nous-research":{baseUrl:"https://inference-api.nousresearch.com/v1/chat/completions",format:"openai"},glhf:{baseUrl:"https://glhf.chat/api/openai/v1/chat/completions",format:"openai"}};var i=c(68019);let j="-review",k={cc:[{id:"claude-opus-4-7",name:"Claude Opus 4.7"},{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}],cx:[{id:"gpt-5.5",name:"GPT 5.5"},{id:"gpt-5.4",name:"GPT 5.4"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.3-codex-spark",name:"GPT 5.3 Codex Spark"},{id:"gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini"},{id:"gpt-5.1-codex-mini-high",name:"GPT 5.1 Codex Mini (High)"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.1-codex-max",name:"GPT 5.1 Codex Max"},{id:"gpt-5.1-codex",name:"GPT 5.1 Codex"},{id:"gpt-5.1",name:"GPT 5.1"},{id:"gpt-5-codex",name:"GPT 5 Codex"},{id:"gpt-5-codex-mini",name:"GPT 5 Codex Mini"},{id:"gpt-5.5-image",name:"GPT 5.5 Image",type:"image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"]},{id:"gpt-image-2",name:"GPT Image 2",type:"image",capabilities:["text2img","edit"],params:["n","size","quality","background","image_detail","output_format","response_format","reference_images"]},{id:"gpt-5.4-image",name:"GPT 5.4 Image",type:"image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"]},{id:"gpt-5.3-image",name:"GPT 5.3 Image",type:"image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"]},{id:"gpt-5.2-image",name:"GPT 5.2 Image",type:"image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"]}].flatMap(a=>"llm"!==(a.type||"llm")||a.id.endsWith(j)?[a]:[a,{...a,id:`${a.id}${j}`,name:`${a.name} Review`,upstreamModelId:a.upstreamModelId||a.id,quotaFamily:"review"}]),gc:[{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"}],qw:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"},{id:"coder-model",name:"Qwen3.6 Coder Model"}],if:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"},{id:"qwen3-max-preview",name:"Qwen3 Max Preview"},{id:"qwen3-235b",name:"Qwen3 235B A22B"},{id:"qwen3-235b-a22b-instruct",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking"},{id:"qwen3-32b",name:"Qwen3 32B"},{id:"kimi-k2",name:"Kimi K2"},{id:"deepseek-v3.2",name:"DeepSeek V3.2 Exp"},{id:"deepseek-v3.1",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-v3",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"glm-4.7",name:"GLM 4.7"},{id:"iflow-rome-30ba3b",name:"iFlow ROME"}],ag:[{id:"gemini-3.1-pro-high",name:"Gemini 3 Pro High"},{id:"gemini-3.1-pro-low",name:"Gemini 3 Pro Low"},{id:"gemini-3-flash",name:"Gemini 3 Flash",thinking:!1},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking"},{id:"gpt-oss-120b-medium",name:"GPT OSS 120B Medium"}],gh:[{id:"gpt-3.5-turbo",name:"GPT-3.5 Turbo"},{id:"gpt-4",name:"GPT-4"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-opus-4.7",name:"Claude Opus 4.7"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash"},{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"},{id:"goldeneye-free-auto",name:"GoldenEye"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small (GitHub)",type:"embedding"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large (GitHub)",type:"embedding"}],kr:[{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"deepseek-3.2",name:"DeepSeek 3.2",strip:["image","audio"]},{id:"qwen3-coder-next",name:"Qwen3 Coder Next",strip:["image","audio"]},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"}],cu:[{id:"default",name:"Auto (Server Picks)"},{id:"claude-4.5-opus-high-thinking",name:"Claude 4.5 Opus High Thinking"},{id:"claude-4.5-opus-high",name:"Claude 4.5 Opus High"},{id:"claude-4.5-sonnet-thinking",name:"Claude 4.5 Sonnet Thinking"},{id:"claude-4.5-sonnet",name:"Claude 4.5 Sonnet"},{id:"claude-4.5-haiku",name:"Claude 4.5 Haiku"},{id:"claude-4.5-opus",name:"Claude 4.5 Opus"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"claude-4.6-opus-max",name:"Claude 4.6 Opus Max"},{id:"claude-4.6-sonnet-medium-thinking",name:"Claude 4.6 Sonnet Medium Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"}],kmc:[{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],kc:[{id:"anthropic/claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"anthropic/claude-opus-4-20250514",name:"Claude Opus 4"},{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"openai/gpt-4.1",name:"GPT-4.1"},{id:"openai/o3",name:"o3"},{id:"deepseek/deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek/deepseek-reasoner",name:"DeepSeek Reasoner"}],"opencode-go":[{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"qwen3.5-plus",name:"Qwen 3.5 Plus"},{id:"qwen3.6-plus",name:"Qwen 3.6 Plus"},{id:"mimo-v2-pro",name:"MiMo V2 Pro"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"minimax-m2.7",name:"MiniMax M2.7",targetFormat:"claude"},{id:"minimax-m2.5",name:"MiniMax M2.5",targetFormat:"claude"}],oc:[],cl:[{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7"},{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6"},{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"kwaipilot/kat-coder-pro",name:"KAT Coder Pro"}],openai:[{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-nano",name:"GPT-5 Nano"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"o3",name:"O3"},{id:"o3-mini",name:"O3 Mini"},{id:"o3-pro",name:"O3 Pro"},{id:"o4-mini",name:"O4 Mini"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",type:"embedding"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small",type:"embedding"},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",type:"embedding"},{id:"tts-1",name:"TTS-1",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"whisper-1",name:"Whisper 1",type:"stt",params:["language","response_format","temperature","prompt"]},{id:"gpt-4o-transcribe",name:"GPT-4o Transcribe",type:"stt",params:["language","response_format","temperature","prompt"]},{id:"gpt-4o-mini-transcribe",name:"GPT-4o Mini Transcribe",type:"stt",params:["language","response_format","temperature","prompt"]},{id:"gpt-image-1",name:"GPT Image 1",type:"image",params:["n","size","quality","response_format"]},{id:"dall-e-3",name:"DALL-E 3",type:"image",params:["size","quality","style","response_format"]},{id:"dall-e-2",name:"DALL-E 2",type:"image",params:["n","size","response_format"]}],anthropic:[{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"claude-opus-4-20250514",name:"Claude Opus 4"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"}],gemini:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash"},{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite"},{id:"gemma-4-31b-it",name:"Gemma 4 31B IT"},{id:"gemini-embedding-2-preview",name:"Gemini Embedding 2 Preview",type:"embedding"},{id:"gemini-embedding-001",name:"Gemini Embedding 001",type:"embedding"},{id:"text-embedding-005",name:"Text Embedding 005",type:"embedding"},{id:"text-embedding-004",name:"Text Embedding 004 (Legacy)",type:"embedding"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image (Nano Banana 2)",type:"image",params:[]},{id:"gemini-3-pro-image-preview",name:"Gemini 3 Pro Image (Nano Banana Pro)",type:"image",params:[]},{id:"gemini-2.5-flash-image",name:"Gemini 2.5 Flash Image (Nano Banana)",type:"image",params:[]},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Best)",type:"stt",params:["language","prompt"]},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",type:"stt",params:["language","prompt"]},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite (Cheapest)",type:"stt",params:["language","prompt"]},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",type:"stt",params:["language","prompt"]}],openrouter:[{id:"openai/text-embedding-3-large",name:"OpenAI Text Embedding 3 Large",type:"embedding"},{id:"openai/text-embedding-3-small",name:"OpenAI Text Embedding 3 Small",type:"embedding"},{id:"openai/text-embedding-ada-002",name:"OpenAI Text Embedding Ada 002",type:"embedding"},{id:"qwen/qwen3-embedding-8b",name:"Qwen3 Embedding 8B",type:"embedding"},{id:"perplexity/pplx-embed-v1-4b",name:"Perplexity Embed V1 4B",type:"embedding"},{id:"perplexity/pplx-embed-v1-0.6b",name:"Perplexity Embed V1 0.6B",type:"embedding"},{id:"nvidia/llama-nemotron-embed-vl-1b-v2:free",name:"NVIDIA Nemotron Embed VL 1B V2 (Free)",type:"embedding"},{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"},{id:"openai/dall-e-3",name:"DALL-E 3 (via OpenRouter)",type:"image",params:["size","quality","style","response_format"]},{id:"openai/gpt-image-1",name:"GPT Image 1 (via OpenRouter)",type:"image",params:["n","size","quality","response_format"]},{id:"google/imagen-3.0-generate-002",name:"Imagen 3 (via OpenRouter)",type:"image",params:["n","size"]},{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell (via OpenRouter)",type:"image",params:["n","size"]}],glm:[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM 4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"}],"glm-cn":[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM-4.7"},{id:"glm-4.6",name:"GLM-4.6"},{id:"glm-4.5-air",name:"GLM-4.5-Air"}],kimi:[{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],minimax:[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"},{id:"minimax-image-01",name:"MiniMax Image 01",type:"image",params:["n","size","response_format"]}],blackbox:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Legacy)"},{id:"claude-opus-4-6",name:"Claude Opus 4.6 (Legacy)"},{id:"deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek-v3-671b",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"o1",name:"OpenAI o1"},{id:"o3-mini",name:"OpenAI o3-mini"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"}],"minimax-cn":[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"}],alicode:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-max-2026-01-23",name:"Qwen3 Max"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],"alicode-intl":[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],"volcengine-ark":[{id:"Doubao-Seed-2.0-Code",name:"Doubao-Seed-2.0-Code"},{id:"Doubao-Seed-2.0-pro",name:"Doubao-Seed-2.0-pro"},{id:"Doubao-Seed-2.0-lite",name:"Doubao-Seed-2.0-lite"},{id:"Doubao-Seed-Code",name:"Doubao-Seed-Code"},{id:"GLM-5.1",name:"GLM-5.1"},{id:"MiniMax-M2.7",name:"MiniMax-M2.7"},{id:"Kimi-K2.6",name:"Kimi-K2.6"},{id:"MiniMax-M2.5",name:"MiniMax-M2.5"},{id:"Kimi-K2.5",name:"Kimi-K2.5"},{id:"GLM-4.7",name:"GLM-4.7"},{id:"DeepSeek-V3.2",name:"DeepSeek-V3.2"}],"cloudflare-ai":[{id:"@cf/meta/llama-3.2-1b-instruct",name:"Llama 3.2 1B Instruct"},{id:"@cf/meta/llama-3.2-3b-instruct",name:"Llama 3.2 3B Instruct"},{id:"@cf/meta/llama-3.1-8b-instruct-fp8-fast",name:"Llama 3.1 8B Instruct FP8 Fast"},{id:"@cf/meta/llama-3.1-8b-instruct-awq",name:"Llama 3.1 8B Instruct AWQ"},{id:"@cf/mistralai/mistral-small-3.1-24b-instruct",name:"Mistral Small 3.1 24B Instruct"},{id:"@cf/meta/llama-3.1-70b-instruct-fp8-fast",name:"Llama 3.1 70B Instruct FP8 Fast"},{id:"@cf/meta/llama-3.3-70b-instruct-fp8-fast",name:"Llama 3.3 70B Instruct FP8 Fast"},{id:"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b",name:"DeepSeek R1 Distill Qwen 32B"},{id:"@cf/moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"@cf/moonshotai/kimi-k2.6",name:"Kimi K2.6"},{id:"@cf/zai-org/glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"@cf/qwen/qwq-32b",name:"QwQ 32B"},{id:"@cf/qwen/qwen2.5-coder-32b-instruct",name:"Qwen 2.5 Coder 32B Instruct"},{id:"@cf/black-forest-labs/flux-2-klein-9b",name:"FLUX.2 Klein 9B",type:"image",params:["size"]},{id:"@cf/black-forest-labs/flux-2-klein-4b",name:"FLUX.2 Klein 4B",type:"image",params:["size"]},{id:"@cf/black-forest-labs/flux-2-dev",name:"FLUX.2 Dev",type:"image",params:["size"]},{id:"@cf/leonardo/lucid-origin",name:"Lucid Origin",type:"image",params:["size"]},{id:"@cf/leonardo/phoenix-1.0",name:"Phoenix 1.0",type:"image",params:["size"]},{id:"@cf/black-forest-labs/flux-1-schnell",name:"FLUX.1 Schnell",type:"image",params:["size"]},{id:"@cf/bytedance/stable-diffusion-xl-lightning",name:"SDXL Lightning",type:"image",params:["size"]},{id:"@cf/lykon/dreamshaper-8-lcm",name:"DreamShaper 8 LCM",type:"image",params:["size"]},{id:"@cf/runwayml/stable-diffusion-v1-5-img2img",name:"Stable Diffusion v1.5 Img2Img",type:"image",params:["size"],capabilities:["edit"]},{id:"@cf/runwayml/stable-diffusion-v1-5-inpainting",name:"Stable Diffusion v1.5 Inpainting",type:"image",params:["size"],capabilities:["edit","mask"]},{id:"@cf/stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",type:"image",params:["size"]}],byteplus:[{id:"seed-2-0-pro-260328",name:"Seed 2.0 Pro"},{id:"seed-2-0-code-preview-260328",name:"Seed 2.0 Code Preview"},{id:"seed-2-0-mini-260215",name:"Seed 2.0 Mini"},{id:"seed-2-0-lite-260228",name:"Seed 2.0 Lite"},{id:"kimi-k2-thinking-251104",name:"Kimi K2 Thinking"},{id:"glm-4-7-251222",name:"GLM 4.7"},{id:"gpt-oss-120b-250805",name:"GPT-OSS-120B"}],deepseek:[{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}],commandcode:[{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-5.1",name:"GLM 5.1"},{id:"zai-org/GLM-5",name:"GLM 5"},{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5"},{id:"Qwen/Qwen3.6-Max-Preview",name:"Qwen 3.6 Max Preview"},{id:"Qwen/Qwen3.6-Plus",name:"Qwen 3.6 Plus"},{id:"stepfun/Step-3.5-Flash",name:"Step 3.5 Flash"}],groq:[{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"openai/gpt-oss-120b",name:"GPT-OSS 120B"},{id:"whisper-large-v3",name:"Whisper Large v3",type:"stt",params:["language","response_format","temperature","prompt"]},{id:"whisper-large-v3-turbo",name:"Whisper Large v3 Turbo",type:"stt",params:["language","response_format","temperature","prompt"]},{id:"distil-whisper-large-v3-en",name:"Distil Whisper Large v3 EN",type:"stt",params:["language","response_format","temperature","prompt"]}],xai:[{id:"grok-4",name:"Grok 4"},{id:"grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning"},{id:"grok-code-fast-1",name:"Grok Code Fast"},{id:"grok-3",name:"Grok 3"}],mistral:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"},{id:"mistral-embed",name:"Mistral Embed",type:"embedding"}],perplexity:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}],together:[{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B Turbo"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"},{id:"BAAI/bge-large-en-v1.5",name:"BGE Large EN v1.5",type:"embedding"},{id:"togethercomputer/m2-bert-80M-8k-retrieval",name:"M2 BERT 80M 8K",type:"embedding"}],fireworks:[{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1"},{id:"accounts/fireworks/models/llama-v3p3-70b-instruct",name:"Llama 3.3 70B"},{id:"accounts/fireworks/models/qwen3-235b-a22b",name:"Qwen3 235B"},{id:"nomic-ai/nomic-embed-text-v1.5",name:"Nomic Embed Text v1.5",type:"embedding"}],cerebras:[{id:"gpt-oss-120b",name:"GPT OSS 120B"},{id:"zai-glm-4.7",name:"ZAI GLM 4.7"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout"},{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B"},{id:"qwen-3-32b",name:"Qwen3 32B"}],cohere:[{id:"command-r-plus-08-2024",name:"Command R+ (Aug 2024)"},{id:"command-r-08-2024",name:"Command R (Aug 2024)"},{id:"command-a-03-2025",name:"Command A (Mar 2025)"}],nvidia:[{id:"minimaxai/minimax-m2.7",name:"Minimax M2.7"},{id:"z-ai/glm4.7",name:"GLM 4.7"},{id:"nvidia/nv-embedqa-e5-v5",name:"NV EmbedQA E5 v5",type:"embedding"},{id:"nvidia/parakeet-ctc-1.1b-asr",name:"Parakeet CTC 1.1B",type:"stt",params:["language"]}],nebius:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"},{id:"Qwen/Qwen3-Embedding-8B",name:"Qwen3 Embedding 8B",type:"embedding"}],"voyage-ai":[{id:"voyage-3-large",name:"Voyage 3 Large",type:"embedding"},{id:"voyage-3.5",name:"Voyage 3.5",type:"embedding"},{id:"voyage-3.5-lite",name:"Voyage 3.5 Lite",type:"embedding"},{id:"voyage-code-3",name:"Voyage Code 3",type:"embedding"},{id:"voyage-finance-2",name:"Voyage Finance 2",type:"embedding"},{id:"voyage-law-2",name:"Voyage Law 2",type:"embedding"},{id:"voyage-multilingual-2",name:"Voyage Multilingual 2",type:"embedding"}],siliconflow:[{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B"},{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3 Coder 480B"},{id:"Qwen/Qwen3-32B",name:"Qwen3 32B"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-4.7",name:"GLM 4.7"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"baidu/ERNIE-4.5-300B-A47B",name:"ERNIE 4.5 300B"}],"xiaomi-mimo":[{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"mimo-v2.5",name:"MiMo V2.5"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"mimo-v2-flash",name:"MiMo V2 Flash"}],hyperbolic:[{id:"Qwen/QwQ-32B",name:"QwQ 32B"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"meta-llama/Llama-3.2-3B-Instruct",name:"Llama 3.2 3B"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"},{id:"NousResearch/Hermes-3-Llama-3.1-70B",name:"Hermes 3 70B"}],ollama:[{id:"gpt-oss:120b",name:"GPT OSS 120B"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"minimax-m2.5",name:"MiniMax M2.5"},{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"qwen3.5",name:"Qwen3.5"}],vertex:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"}],"vertex-partner":[{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2 (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-thinking-maas",name:"Qwen3 Next 80B Thinking (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-instruct-maas",name:"Qwen3 Next 80B Instruct (Vertex)"},{id:"zai-org/glm-5-maas",name:"GLM-5 (Vertex)"}],"grok-web":[{id:"grok-3",name:"Grok 3"},{id:"grok-3-mini",name:"Grok 3 Mini (Thinking)"},{id:"grok-3-thinking",name:"Grok 3 Thinking"},{id:"grok-4",name:"Grok 4"},{id:"grok-4-mini",name:"Grok 4 Mini (Thinking)"},{id:"grok-4-thinking",name:"Grok 4 Thinking"},{id:"grok-4-heavy",name:"Grok 4 Heavy (SuperGrok)"},{id:"grok-4.1-mini",name:"Grok 4.1 Mini (Thinking)"},{id:"grok-4.1-fast",name:"Grok 4.1 Fast"},{id:"grok-4.1-expert",name:"Grok 4.1 Expert"},{id:"grok-4.1-thinking",name:"Grok 4.1 Thinking"},{id:"grok-4.2",name:"Grok 4.2 (4.20 Beta)"}],"perplexity-web":[{id:"pplx-auto",name:"Perplexity Auto (Free)"},{id:"pplx-sonar",name:"Perplexity Sonar"},{id:"pplx-gpt",name:"GPT-5.4 (via Perplexity)"},{id:"pplx-gemini",name:"Gemini 3.1 Pro (via Perplexity)"},{id:"pplx-sonnet",name:"Claude Sonnet 4.6 (via Perplexity)"},{id:"pplx-opus",name:"Claude Opus 4.6 (via Perplexity)"},{id:"pplx-nemotron",name:"Nemotron 3 Super (via Perplexity)"}],...(0,i.pp)(),nanobanana:[{id:"nanobanana-flash",name:"NanoBanana Flash",type:"image",params:["n","size"]},{id:"nanobanana-pro",name:"NanoBanana Pro",type:"image",params:["n","size"]}],sdwebui:[{id:"stable-diffusion-v1-5",name:"Stable Diffusion v1.5",type:"image",params:["n","size"]},{id:"sdxl-base-1.0",name:"SDXL Base 1.0",type:"image",params:["n","size"]}],comfyui:[{id:"flux-dev",name:"FLUX Dev",type:"image",params:["n","size"]},{id:"sdxl",name:"SDXL",type:"image",params:["n","size"]}],huggingface:[{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell",type:"image",params:[]},{id:"stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",type:"image",params:[]},{id:"openai/whisper-large-v3",name:"Whisper Large v3 (HF)",type:"stt",params:["language"]},{id:"openai/whisper-small",name:"Whisper Small (HF)",type:"stt",params:["language"]}],agentrouter:[{id:"claude-opus-4-6",name:"Claude 4.6 Opus"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"},{id:"glm-5.1",name:"GLM 5.1"},{id:"deepseek-v3.2",name:"DeepSeek V3.2"}],aimlapi:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"},{id:"gemini-2.0-flash-exp",name:"Gemini 2.0 Flash"},{id:"meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo",name:"Llama 3.1 70B"}],novita:[{id:"deepseek/deepseek-r1",name:"DeepSeek R1"},{id:"deepseek/deepseek-v3",name:"DeepSeek V3"},{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama 3.3 70B"},{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen 2.5 72B"}],modal:[{id:"auto",name:"Auto (User-hosted)"}],reka:[{id:"reka-flash-3",name:"Reka Flash 3"},{id:"reka-edge-2603",name:"Reka Edge 2603"}],nlpcloud:[{id:"chatdolphin",name:"ChatDolphin"},{id:"dolphin",name:"Dolphin"},{id:"finetuned-llama-3-70b",name:"Llama 3 70B (Finetuned)"}],bazaarlink:[{id:"auto:free",name:"Auto Free (Zero Cost)"},{id:"auto",name:"Auto (Best Model)"}],completions:[{id:"claude-opus-4",name:"Claude Opus 4"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"gpt-4o",name:"GPT-4o"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash"}],enally:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"claude-3-5-sonnet",name:"Claude 3.5 Sonnet"}],freetheai:[{id:"gpt-4o",name:"GPT-4o"},{id:"claude-3-5-sonnet",name:"Claude 3.5 Sonnet"},{id:"gemini-1.5-pro",name:"Gemini 1.5 Pro"},{id:"deepseek-chat",name:"DeepSeek Chat"}],llm7:[{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash"}],lepton:[{id:"llama3-1-405b",name:"Llama 3.1 405B"},{id:"llama3-1-70b",name:"Llama 3.1 70B"},{id:"llama3-1-8b",name:"Llama 3.1 8B"},{id:"mixtral-8x7b",name:"Mixtral 8x7B"}],kluster:[{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"},{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout"},{id:"Qwen/Qwen3-235B-A22B-Instruct",name:"Qwen3 235B"}],ai21:[{id:"jamba-large",name:"Jamba 1.5 Large"},{id:"jamba-mini",name:"Jamba 1.5 Mini"}],"inference-net":[{id:"meta-llama/llama-3.3-70b-instruct/fp-16",name:"Llama 3.3 70B"},{id:"deepseek/deepseek-v3-0324",name:"DeepSeek V3"},{id:"mistralai/mistral-nemo-12b-instruct/fp-16",name:"Mistral Nemo 12B"}],predibase:[{id:"llama-3-2-3b-instruct",name:"Llama 3.2 3B"},{id:"llama-3-1-8b-instruct",name:"Llama 3.1 8B"},{id:"qwen2-5-7b-instruct",name:"Qwen 2.5 7B"}],bytez:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"mistralai/Mistral-7B-Instruct-v0.3",name:"Mistral 7B v0.3"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"}],morph:[{id:"morph-v3-large",name:"Morph V3 Large"},{id:"morph-v3-fast",name:"Morph V3 Fast"}],longcat:[{id:"LongCat-Flash-Chat",name:"LongCat Flash Chat"},{id:"LongCat-Flash-Thinking",name:"LongCat Flash Thinking"},{id:"LongCat-Flash-Lite",name:"LongCat Flash Lite"}],puter:[{id:"gpt-5",name:"GPT-5"},{id:"claude-opus-4",name:"Claude Opus 4"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro"},{id:"grok-4",name:"Grok 4"},{id:"deepseek-chat",name:"DeepSeek V3"}],uncloseai:[{id:"auto",name:"Auto (Free)"},{id:"gpt-4o-mini",name:"GPT-4o Mini"}],scaleway:[{id:"qwen3-235b-a22b-instruct-2507",name:"Qwen3 235B"},{id:"llama-3.3-70b-instruct",name:"Llama 3.3 70B"},{id:"mistral-small-3.1-24b-instruct-2503",name:"Mistral Small 3.1"}],deepinfra:[{id:"meta-llama/Meta-Llama-3.1-70B-Instruct",name:"Llama 3.1 70B"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"}],sambanova:[{id:"Meta-Llama-3.1-405B-Instruct",name:"Llama 3.1 405B"},{id:"Meta-Llama-3.1-70B-Instruct",name:"Llama 3.1 70B"},{id:"Meta-Llama-3.1-8B-Instruct",name:"Llama 3.1 8B"}],nscale:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"}],baseten:[{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"}],publicai:[{id:"auto",name:"Auto (Community)"}],"nous-research":[{id:"Hermes-4-405B",name:"Hermes 4 405B"},{id:"Hermes-4-70B",name:"Hermes 4 70B"}],glhf:[{id:"hf:meta-llama/Meta-Llama-3.1-405B-Instruct",name:"Llama 3.1 405B"},{id:"hf:meta-llama/Meta-Llama-3.1-70B-Instruct",name:"Llama 3.1 70B"},{id:"hf:Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"}],deepgram:[{id:"nova-3",name:"Nova 3",type:"stt",params:["language"]},{id:"nova-2",name:"Nova 2",type:"stt",params:["language"]},{id:"whisper-large",name:"Whisper Large",type:"stt",params:["language"]}],assemblyai:[{id:"universal-3-pro",name:"Universal 3 Pro",type:"stt",params:["language"]},{id:"universal-2",name:"Universal 2",type:"stt",params:["language"]}],"fal-ai":[{id:"fal-ai/flux/schnell",name:"FLUX Schnell",type:"image",params:["n","size"]},{id:"fal-ai/flux/dev",name:"FLUX Dev",type:"image",params:["n","size"]},{id:"fal-ai/flux-pro/v1.1",name:"FLUX Pro v1.1",type:"image",params:["n","size"]},{id:"fal-ai/flux-pro/v1.1-ultra",name:"FLUX Pro v1.1 Ultra",type:"image",params:["n","size"]},{id:"fal-ai/recraft-v3",name:"Recraft V3",type:"image",params:["n","size","style"]},{id:"fal-ai/ideogram/v2",name:"Ideogram V2",type:"image",params:["n","size","style"]},{id:"fal-ai/stable-diffusion-v35-large",name:"SD 3.5 Large",type:"image",params:["n","size"]}],"stability-ai":[{id:"stable-image-ultra",name:"Stable Image Ultra",type:"image",params:["size"]},{id:"stable-image-core",name:"Stable Image Core",type:"image",params:["size","style"]},{id:"sd3.5-large",name:"Stable Diffusion 3.5 Large",type:"image",params:["size"]},{id:"sd3.5-large-turbo",name:"Stable Diffusion 3.5 Large Turbo",type:"image",params:["size"]},{id:"sd3.5-medium",name:"Stable Diffusion 3.5 Medium",type:"image",params:["size"]}],"black-forest-labs":[{id:"flux-pro-1.1",name:"FLUX Pro 1.1",type:"image",params:["n","size"]},{id:"flux-pro-1.1-ultra",name:"FLUX Pro 1.1 Ultra",type:"image",params:["size"]},{id:"flux-pro",name:"FLUX Pro",type:"image",params:["n","size"]},{id:"flux-dev",name:"FLUX Dev",type:"image",params:["n","size"]},{id:"flux-kontext-pro",name:"FLUX Kontext Pro (Edit)",type:"image",params:["size"],capabilities:["edit"]},{id:"flux-kontext-max",name:"FLUX Kontext Max (Edit)",type:"image",params:["size"],capabilities:["edit"]}],recraft:[{id:"recraftv3",name:"Recraft V3",type:"image",params:["n","size","style"]},{id:"recraftv2",name:"Recraft V2",type:"image",params:["n","size","style"]}],runwayml:[{id:"gen4_image",name:"Gen-4 Image",type:"image",params:["size"]},{id:"gen4_image_turbo",name:"Gen-4 Image Turbo",type:"image",params:["size"]},{id:"gen4_turbo",name:"Gen-4 Turbo",type:"video",params:[]},{id:"gen3a_turbo",name:"Gen-3 Alpha Turbo",type:"video",params:[]}]},l={claude:"cc",codex:"cx","gemini-cli":"gc",qwen:"qw",iflow:"if",antigravity:"ag",github:"gh",kiro:"kr",cursor:"cu","kimi-coding":"kmc",kilocode:"kc",cline:"cl",opencode:"oc",vertex:"vertex","vertex-partner":"vertex-partner"},m=Object.fromEntries(Object.keys(h).map(a=>[a,l[a]||a]));function n(a){return k[m[a]||a]||[]}},51126:(a,b,c)=>{"use strict";c.d(b,{CL:()=>f,QC:()=>g,Xn:()=>e,YZ:()=>d});let d=["en","vi","zh-CN","zh-TW","ja","pt-BR","pt-PT","ko","es","de","fr","he","ar","ru","pl","cs","nl","tr","uk","tl","id","th","hi","bn","ur","ro","sv","it","el","hu","fi","da","no"],e="en",f="locale";function g(a){return"zh"===a||"zh-CN"===a?"zh-CN":"en"===a?"en":"vi"===a?"vi":"zh-TW"===a?"zh-TW":"ja"===a?"ja":"pt-BR"===a?"pt-BR":"pt-PT"===a?"pt-PT":"ko"===a?"ko":"es"===a?"es":"de"===a?"de":"fr"===a?"fr":"he"===a?"he":"ar"===a?"ar":"ru"===a?"ru":"pl"===a?"pl":"cs"===a?"cs":"nl"===a?"nl":"tr"===a?"tr":"uk"===a?"uk":"tl"===a?"tl":"id"===a?"id":"th"===a?"th":"hi"===a?"hi":"bn"===a?"bn":"ur"===a?"ur":"ro"===a?"ro":"sv"===a?"sv":"it"===a?"it":"el"===a?"el":"hu"===a?"hu":"fi"===a?"fi":"da"===a?"da":"no"===a?"no":e}},54326:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23))},61135:()=>{},68019:(a,b,c)=>{"use strict";c.d(b,{jY:()=>k,pp:()=>l});var d=c(34973);let e={alloy:{id:"alloy",name:"Alloy"},ash:{id:"ash",name:"Ash"},ballad:{id:"ballad",name:"Ballad"},cedar:{id:"cedar",name:"Cedar"},coral:{id:"coral",name:"Coral"},echo:{id:"echo",name:"Echo"},fable:{id:"fable",name:"Fable"},marin:{id:"marin",name:"Marin"},nova:{id:"nova",name:"Nova"},onyx:{id:"onyx",name:"Onyx"},sage:{id:"sage",name:"Sage"},shimmer:{id:"shimmer",name:"Shimmer"},verse:{id:"verse",name:"Verse"}},f=(...a)=>a.map(a=>({...e[a],type:"tts"})),g=f("alloy","ash","coral","echo","fable","nova","onyx","sage","shimmer"),h=f("alloy","ash","ballad","cedar","coral","echo","fable","marin","nova","onyx","sage","shimmer","verse"),i=["Zephyr","Puck","Charon","Kore","Fenrir","Leda","Orus","Aoede","Callirrhoe","Autonoe","Enceladus","Iapetus","Umbriel","Algieba","Despina","Erinome","Algenib","Rasalgethi","Laomedeia","Achernar","Alnilam","Schedar","Gacrux","Pulcherrima","Achird","Zubenelgenubi","Vindemiatrix","Sadachbia","Sadaltager","Sulafat"].map(a=>({id:a,name:a,type:"tts"})),j={openai:{models:[{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"tts-1",name:"TTS-1",type:"tts"}],voices:{"gpt-4o-mini-tts":h,"tts-1":g,"tts-1-hd":g},allVoices:h},openrouter:{models:[{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],voices:{"openai/gpt-4o-mini-tts":h,"openai/tts-1":g,"openai/tts-1-hd":g},allVoices:h},elevenlabs:{models:[{id:"eleven_flash_v2_5",name:"Flash v2.5 (Fastest)",type:"tts"},{id:"eleven_turbo_v2_5",name:"Turbo v2.5 (Fast)",type:"tts"},{id:"eleven_multilingual_v2",name:"Multilingual v2 (Quality)",type:"tts"},{id:"eleven_monolingual_v1",name:"Monolingual v1 (English)",type:"tts"}]},"edge-tts":{defaults:[{id:"en-US-AriaNeural",name:"Aria (en-US)",type:"tts"},{id:"en-US-GuyNeural",name:"Guy (en-US)",type:"tts"},{id:"en-GB-SoniaNeural",name:"Sonia (en-GB)",type:"tts"},{id:"vi-VN-HoaiMyNeural",name:"Hoai My (vi-VN)",type:"tts"},{id:"vi-VN-NamMinhNeural",name:"Nam Minh (vi-VN)",type:"tts"},{id:"zh-CN-XiaoxiaoNeural",name:"Xiaoxiao (zh-CN)",type:"tts"},{id:"zh-CN-YunxiNeural",name:"Yunxi (zh-CN)",type:"tts"},{id:"fr-FR-DeniseNeural",name:"Denise (fr-FR)",type:"tts"},{id:"de-DE-KatjaNeural",name:"Katja (de-DE)",type:"tts"},{id:"ja-JP-NanamiNeural",name:"Nanami (ja-JP)",type:"tts"},{id:"ko-KR-SunHiNeural",name:"SunHi (ko-KR)",type:"tts"}]},"local-device":{defaults:[{id:"default",name:"System Default Voice",type:"tts"}]},"google-tts":{defaults:d.I},gemini:{models:[{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS",type:"tts"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS",type:"tts"}],voices:{"gemini-2.5-flash-preview-tts":i,"gemini-2.5-pro-preview-tts":i},allVoices:i}};function k(a,b){let c=j[a];return c?.voices&&(c.voices[b]||c.allVoices)||null}function l(){let a={};for(let[b,c]of Object.entries(j))c.models&&(a[`${b}-tts-models`]=c.models),c.allVoices&&(a[`${b}-tts-voices`]=c.allVoices),c.defaults&&(a[b]=c.defaults);return a["openai-tts-voices"]=j.openai.allVoices,a["openrouter-tts-voices"]=j.openrouter.allVoices,a}},70440:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(88868);let e=async a=>[{type:"image/x-icon",sizes:"16x16",url:(0,d.fillMetadataSegment)(".",await a.params,"favicon.ico",!0)+"?603d046c9a6fdfbb"}]},74743:(a,b,c)=>{Promise.resolve().then(c.bind(c,5211)),Promise.resolve().then(c.bind(c,19308))},81329:(a,b,c)=>{"use strict";c.d(b,{Xg:()=>d.Xg,eh:()=>e,vq:()=>d.vq});var d=c(44404);Object.entries(c(75681).AI_PROVIDERS).filter(([,a])=>a.passthroughModels).map(([a])=>a);let e=Object.entries(d.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name})))},85117:(a,b,c)=>{"use strict";c.d(b,{RuntimeI18nProvider:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call RuntimeI18nProvider() from the server but RuntimeI18nProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/bytedance/Documents/9router/src/i18n/RuntimeI18nProvider.js","RuntimeI18nProvider")},87085:(a,b,c)=>{"use strict";var d=c(21820),e=c.n(d),f=c(1932),g=c(33873),h=c.n(g),i=c(29021),j=c.n(i),k=c(89718),l=c(53855),m=c(3179),n=c(12506),o=c(85567),p=c(49204),q=c(47764),r=c(96182);let s=process.env.DATA_DIR||("win32"===process.platform?h().join(process.env.APPDATA||h().join(e().homedir(),"AppData","Roaming"),"9router"):h().join(e().homedir(),".9router")),t=h().join(s,"mitm","aliases.json");async function u(){try{var a;let b,d,{getMitmAlias:e}=await c.e(9460).then(c.bind(c,9460));a=await e()||{},b=h().dirname(t),j().mkdirSync(b,{recursive:!0}),d=`${t}.tmp`,j().writeFileSync(d,JSON.stringify(a,null,2),"utf8"),j().renameSync(d,t)}catch(a){console.log("[mitmAliasCache] sync failed:",a.message)}}if(!process.env.MITM_SERVER_PATH)try{let a=(0,f.fileURLToPath)("file:///Users/bytedance/Documents/9router/src/shared/services/initializeApp.js"),b=(0,g.dirname)((0,g.dirname)(a)),c=(0,g.join)(b,"mitm","server.js");(0,i.existsSync)(c)&&(process.env.MITM_SERVER_PATH=c)}catch{}try{(0,r.initDbHooks)(k.getSettings,k.Xx)}catch{}process.setMaxListeners(20);let v=global.__appSingleton??={signalHandlersRegistered:!1,watchdogInterval:null,networkMonitorInterval:null,lastNetworkFingerprint:null,lastWatchdogTick:Date.now(),lastOnline:null,mitmStartInProgress:!1,tunnelAutoResumed:!1,tailscaleAutoResumed:!1};async function w(){try{await (0,k.bI)();let a=await (0,k.getSettings)();if(a.tunnelEnabled&&!v.tunnelAutoResumed&&(v.tunnelAutoResumed=!0,console.log("[InitApp] Tunnel was enabled, auto-resuming..."),y("startup").catch(a=>console.log("[InitApp] Tunnel resume failed:",a.message))),a.tailscaleEnabled&&!v.tailscaleAutoResumed&&(v.tailscaleAutoResumed=!0,console.log("[InitApp] Tailscale was enabled, auto-resuming..."),z("startup").catch(a=>console.log("[InitApp] Tailscale resume failed:",a.message))),!v.signalHandlersRegistered){let a=()=>{try{(0,r.removeAllDNSEntriesSync)()}catch{}(0,m.ss)(),process.exit()};process.on("SIGINT",a),process.on("SIGTERM",a),process.on("exit",()=>{try{(0,r.removeAllDNSEntriesSync)()}catch{}}),v.signalHandlersRegistered=!0}(0,m.Al)().catch(()=>{}),u().catch(()=>{}),!v.watchdogInterval&&(v.watchdogInterval=setInterval(()=>{y("watchdog").catch(()=>{}),z("watchdog").catch(()=>{})},q.DA),v.watchdogInterval.unref&&v.watchdogInterval.unref()),!v.networkMonitorInterval&&(v.lastNetworkFingerprint=A(),v.lastWatchdogTick=Date.now(),v.lastOnline=null,v.networkMonitorInterval=setInterval(async()=>{try{let a=Date.now(),b=a-v.lastWatchdogTick;v.lastWatchdogTick=a;let c=A(),d=c!==v.lastNetworkFingerprint,e=b>6*q.rI;d&&(v.lastNetworkFingerprint=c);let f=await (0,p.u7)(),g=!1===v.lastOnline;if(v.lastOnline=f,!f||!d&&!e&&!g)return;await new Promise(a=>setTimeout(a,q.cw));let h=g?"online":e&&d?"sleep+netchange":e?"sleep":"netchange";y(h).catch(()=>{}),z(h).catch(()=>{})}catch(a){console.log("[NetworkMonitor] error:",a.message)}},q.rI),v.networkMonitorInterval.unref&&v.networkMonitorInterval.unref()),x()}catch(a){console.error("[InitApp] Error:",a)}}async function x(){if(!v.mitmStartInProgress){v.mitmStartInProgress=!0;try{if(!(await (0,k.getSettings)()).mitmEnabled||(await (0,r.getMitmStatus)()).running)return;let a=await (0,r.loadEncryptedPassword)();if(!a&&"win32"!==process.platform)return void console.log("[InitApp] MITM was enabled but no saved password found, skipping auto-start");let b=(await (0,k.getApiKeys)()).find(a=>!1!==a.isActive);console.log("[InitApp] MITM was enabled, auto-starting..."),await (0,r.startMitm)(b?.key||"sk_openrouterx",a),console.log("[InitApp] MITM auto-started");try{await (0,r.restoreToolDNS)(a),console.log("[InitApp] DNS restored from saved state")}catch(a){console.log("[InitApp] DNS restore failed:",a.message)}}catch(a){console.log("[InitApp] MITM auto-start failed:",a.message)}finally{v.mitmStartInProgress=!1}}}async function y(a){let b=(0,l.Qn)();if(!(!(await (0,k.getSettings)()).tunnelEnabled||b.cancelToken.cancelled||b.spawnInProgress||Date.now()-b.lastRestartAt<q.Lh)){if((0,m.nN)()){let a=(0,o.C7)(),b=a?.shortId?`https://r${a.shortId}.9router.com`:null;if(b&&await (0,p.$c)(b))return}if(await (0,p.u7)()){console.log(`[Tunnel] safeRestart (${a})`);try{await (0,l.cb)(),b.lastRestartAt=Date.now(),console.log("[Tunnel] restart success")}catch(a){console.log("[Tunnel] restart failed:",a.message)}}}}async function z(a){let b=(0,l.oN)(),c=await (0,k.getSettings)();if(!(!c.tailscaleEnabled||b.cancelToken.cancelled||b.spawnInProgress||Date.now()-b.lastRestartAt<q.Lh||(0,n.Kp)()&&c.tailscaleUrl&&await (0,p.$c)(c.tailscaleUrl))&&await (0,p.u7)()){console.log(`[Tailscale] safeRestart (${a})`);try{await (0,l.mh)(),b.lastRestartAt=Date.now(),console.log("[Tailscale] restart success")}catch(a){console.log("[Tailscale] restart failed:",a.message)}}}function A(){let a=e().networkInterfaces(),b=[];for(let[c,d]of Object.entries(a))if(d)for(let a of d)a.internal||"IPv4"!==a.family||b.push(`${c}:${a.address}`);return b.sort().join("|")}let B=globalThis.__cloudSyncInit??={initialized:!1,inProgress:null};async function C(){return!!B.initialized||(B.inProgress||(B.inProgress=(async()=>{try{await w(),B.initialized=!0}catch(a){console.error("[ServerInit] Error initializing app:",a)}finally{B.inProgress=null}return B.initialized})()),B.inProgress)}"phase-production-build"!==process.env.NEXT_PHASE&&setImmediate(()=>{C().catch(console.log)})},89886:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call ThemeProvider() from the server but ThemeProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/bytedance/Documents/9router/src/shared/components/ThemeProvider.js","ThemeProvider")},89948:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23)),Promise.resolve().then(c.t.bind(c,60440,23)),Promise.resolve().then(c.t.bind(c,84342,23)),Promise.resolve().then(c.t.bind(c,82265,23)),Promise.resolve().then(c.t.bind(c,35421,23)),Promise.resolve().then(c.t.bind(c,61335,23)),Promise.resolve().then(c.t.bind(c,70664,23)),Promise.resolve().then(c.bind(c,74661))},91278:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23))},91431:(a,b,c)=>{"use strict";c.d(b,{KC:()=>d.KC,Xg:()=>d.Xg});var d=c(42889);Object.entries(c(96919).Q2).filter(([,a])=>a.passthroughModels).map(([a])=>a),Object.entries(d.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name})))},96919:(a,b,c)=>{"use strict";c.d(b,{DI:()=>k,IS:()=>d,JH:()=>j,MA:()=>q,Q2:()=>p,Yg:()=>o,br:()=>h,fg:()=>g,gC:()=>n,gb:()=>m,jO:()=>v,mq:()=>l,nJ:()=>e,o5:()=>t,rj:()=>i,wG:()=>s,wb:()=>u,zN:()=>f,zt:()=>r});let d={kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35",website:"https://kiro.dev",notice:{signupUrl:"https://kiro.dev"}},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981",mediaPriority:999,deprecated:!0,deprecationNotice:"Qwen OAuth free tier was discontinued by Alibaba on 2026-04-15. New connections will not work.",website:"https://chat.qwen.ai",notice:{signupUrl:"https://chat.qwen.ai"},serviceKinds:["llm","tts"],ttsConfig:{baseUrl:"http://localhost:8000/v1/audio/speech",authType:"none",authHeader:"none",format:"openai",models:[{id:"qwen3-tts",name:"Qwen3 TTS"}]}},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationNotice:"Gemini CLI is designed exclusively for Gemini CLI. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans.",website:"https://github.com/google-gemini/gemini-cli",notice:{signupUrl:"https://github.com/google-gemini/gemini-cli"}},iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1",website:"https://iflow.cn",notice:{signupUrl:"https://iflow.cn"}},opencode:{id:"opencode",alias:"oc",name:"OpenCode Free",icon:"terminal",color:"#E87040",textIcon:"OC",noAuth:!0,passthroughModels:!0,modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"}}},e={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After $10 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0,serviceKinds:["llm","embedding","tts","imageToText"],embeddingConfig:{baseUrl:"https://openrouter.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"openai/text-embedding-3-small",name:"Text Embedding 3 Small (OpenRouter)",dimensions:1536},{id:"openai/text-embedding-3-large",name:"Text Embedding 3 Large (OpenRouter)",dimensions:3072},{id:"openai/text-embedding-ada-002",name:"Text Embedding Ada 002 (OpenRouter)",dimensions:1536}]}},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"},serviceKinds:["llm","tts","embedding"],ttsConfig:{baseUrl:"https://integrate.api.nvidia.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"nvidia-tts",models:[{id:"fastpitch",name:"FastPitch"},{id:"tacotron2",name:"Tacotron2"}]},embeddingConfig:{baseUrl:"https://integrate.api.nvidia.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"nvidia/nv-embedqa-e5-v5",name:"NV EmbedQA E5 v5",dimensions:1024}]}},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo \xb7 Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",mediaPriority:1,website:"https://ai.google.dev",notice:{apiKeyUrl:"https://aistudio.google.com/app/apikey"},serviceKinds:["llm","embedding","image","imageToText","webSearch","tts","stt"],sttConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-stt",models:[{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Best)"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite (Cheapest)"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash"}]},searchViaChat:{defaultModel:"gemini-2.5-flash",pricingUrl:"https://ai.google.dev/pricing",freeTier:"Free tier: 15 RPM, 1M tokens/day on gemini-2.5-flash via AI Studio."},embeddingConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",models:[{id:"text-embedding-004",name:"Text Embedding 004",dimensions:768},{id:"embedding-001",name:"Embedding 001",dimensions:768}]},ttsConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-tts",models:[{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS"}]}},"cloudflare-ai":{id:"cloudflare-ai",alias:"cf",name:"Cloudflare",icon:"cloud",color:"#F38020",textIcon:"CF",website:"https://developers.cloudflare.com/workers-ai/",notice:{text:"Workers AI free tier. Requires a Cloudflare API token and Account ID.",apiKeyUrl:"https://dash.cloudflare.com/profile/api-tokens"},serviceKinds:["llm","image"],hasProviderSpecificData:!0},byteplus:{id:"byteplus",alias:"bpm",name:"BytePlus ModelArk",icon:"cloud",color:"#2563EB",textIcon:"BP",website:"https://console.byteplus.com/ark",notice:{text:"Free credits for new accounts. Access to Seed 2.0, Kimi K2 Thinking, GLM 4.7, GPT-OSS-120B models.",apiKeyUrl:"https://console.byteplus.com/ark/region:ark+ap-southeast-1/apiKey"},serviceKinds:["llm"]}},f={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757",website:"https://claude.ai",notice:{signupUrl:"https://claude.ai"}},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B",deprecated:!0,deprecationNotice:"AG is designed exclusively for Antigravity IDE. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans.",website:"https://antigravity.google",notice:{signupUrl:"https://antigravity.google"}},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6",thinkingConfig:{options:["auto","low","medium","high","xhigh"],defaultMode:"auto"},serviceKinds:["llm","image"],kindNotice:{image:"Requires a ChatGPT Plus (or higher) account. Free accounts are not supported for image generation."},website:"https://chatgpt.com/codex",notice:{signupUrl:"https://chatgpt.com/codex"}},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333",serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://models.github.ai/inference/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"text-embedding-3-small",name:"Text Embedding 3 Small (GitHub)",dimensions:1536},{id:"text-embedding-3-large",name:"Text Embedding 3 Large (GitHub)",dimensions:3072}]},website:"https://github.com/features/copilot",notice:{signupUrl:"https://github.com/features/copilot"}},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA",website:"https://cursor.com",notice:{signupUrl:"https://cursor.com"}},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC",website:"https://kilocode.ai",notice:{signupUrl:"https://kilocode.ai"}},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL",website:"https://cline.bot",notice:{signupUrl:"https://cline.bot"}}},g={glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn",notice:{apiKeyUrl:"https://open.bigmodel.cn/usercenter/apikeys"}},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn",notice:{apiKeyUrl:"https://open.bigmodel.cn/usercenter/apikeys"}},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",notice:{apiKeyUrl:"https://platform.moonshot.ai/console/api-keys"},serviceKinds:["llm","webSearch"],searchViaChat:{defaultModel:"kimi-k2.5",pricingUrl:"https://platform.moonshot.ai/docs/pricing/chat"}},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",notice:{apiKeyUrl:"https://platform.minimaxi.com/user-center/basic-information/interface-key"},serviceKinds:["llm","image","imageToText","webSearch"],searchViaChat:{defaultModel:"MiniMax-M2.7",pricingUrl:"https://www.minimaxi.com/document/price"}},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com",notice:{apiKeyUrl:"https://platform.minimaxi.com/user-center/basic-information/interface-key"}},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://bailian.console.aliyun.com",notice:{apiKeyUrl:"https://bailian.console.aliyun.com/?apiKey=1"}},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://modelstudio.console.alibabacloud.com",notice:{apiKeyUrl:"https://modelstudio.console.alibabacloud.com/?apiKey=1"}},"xiaomi-mimo":{id:"xiaomi-mimo",alias:"mimo",name:"Xiaomi MiMo",icon:"smart_toy",color:"#FF6900",textIcon:"XM",website:"https://xiaomimimo.com",notice:{apiKeyUrl:"https://xiaomimimo.com"}},"volcengine-ark":{id:"volcengine-ark",alias:"ark",name:"Volcengine Ark",icon:"cloud",color:"#1677FF",textIcon:"ARK",website:"https://ark.cn-beijing.volces.com",notice:{apiKeyUrl:"https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey"}},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",notice:{apiKeyUrl:"https://platform.openai.com/api-keys"},serviceKinds:["llm","embedding","tts","stt","image","imageToText","webSearch"],thinkingConfig:{options:["auto","none","low","medium","high","xhigh"],defaultMode:"auto"},searchViaChat:{defaultModel:"gpt-4o-mini",pricingUrl:"https://openai.com/api/pricing"},ttsConfig:{baseUrl:"https://api.openai.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"tts-1",name:"TTS-1"},{id:"tts-1-hd",name:"TTS-1 HD"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS"}]},sttConfig:{baseUrl:"https://api.openai.com/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"whisper-1",name:"Whisper 1"},{id:"gpt-4o-transcribe",name:"GPT-4o Transcribe"},{id:"gpt-4o-mini-transcribe",name:"GPT-4o Mini Transcribe"}]},embeddingConfig:{baseUrl:"https://api.openai.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"text-embedding-3-small",name:"Text Embedding 3 Small",dimensions:1536},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",dimensions:3072},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",dimensions:1536}]}},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",notice:{apiKeyUrl:"https://console.anthropic.com/settings/keys"},serviceKinds:["llm","imageToText"]},"opencode-go":{id:"opencode-go",alias:"ocg",name:"OpenCode Go",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode Go subscription: $5/mo (then $10/mo). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},azure:{id:"azure",alias:"azure",name:"Azure OpenAI",icon:"cloud",color:"#0078D4",textIcon:"AZ",website:"https://azure.microsoft.com/en-us/products/ai-services/openai-service",notice:{apiKeyUrl:"https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/OpenAI"},hasProviderSpecificData:!0},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com",notice:{apiKeyUrl:"https://platform.deepseek.com/api_keys"}},commandcode:{id:"commandcode",alias:"cmc",name:"Command Code",icon:"smart_toy",color:"#000000",textIcon:"CC",website:"https://commandcode.ai",notice:{text:"Use your CommandCode CLI API key (starts with user_...) from ~/.commandcode/auth.json or commandcode.ai/studio.",apiKeyUrl:"https://commandcode.ai/studio"}},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",notice:{apiKeyUrl:"https://console.groq.com/keys"},serviceKinds:["llm","imageToText","stt"],sttConfig:{baseUrl:"https://api.groq.com/openai/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"whisper-large-v3",name:"Whisper Large v3"},{id:"whisper-large-v3-turbo",name:"Whisper Large v3 Turbo"},{id:"distil-whisper-large-v3-en",name:"Distil Whisper Large v3 EN"}]}},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",notice:{apiKeyUrl:"https://console.x.ai"},serviceKinds:["llm","imageToText","webSearch"],searchViaChat:{defaultModel:"grok-4.20-reasoning",pricingUrl:"https://x.ai/api#pricing"}},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",notice:{apiKeyUrl:"https://console.mistral.ai/api-keys"},serviceKinds:["llm","imageToText","embedding"],embeddingConfig:{baseUrl:"https://api.mistral.ai/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"mistral-embed",name:"Mistral Embed",dimensions:1024}]}},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",notice:{apiKeyUrl:"https://www.perplexity.ai/settings/api"},serviceKinds:["llm","webSearch"],searchConfig:{baseUrl:"https://api.perplexity.ai/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.005,freeMonthlyQuota:0,searchTypes:["web"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5}},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai",notice:{apiKeyUrl:"https://api.together.xyz/settings/api-keys"},serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://api.together.xyz/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"BAAI/bge-large-en-v1.5",name:"BGE Large EN v1.5",dimensions:1024},{id:"togethercomputer/m2-bert-80M-8k-retrieval",name:"M2 BERT 80M 8K",dimensions:768}]}},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai",notice:{apiKeyUrl:"https://fireworks.ai/account/api-keys"},serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://api.fireworks.ai/inference/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"nomic-ai/nomic-embed-text-v1.5",name:"Nomic Embed Text v1.5",dimensions:768}]}},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai",notice:{apiKeyUrl:"https://cloud.cerebras.ai/platform"}},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com",notice:{apiKeyUrl:"https://dashboard.cohere.com/api-keys"}},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com",notice:{apiKeyUrl:"https://studio.nebius.com/settings/api-keys"},serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://api.tokenfactory.nebius.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"Qwen/Qwen3-Embedding-8B",name:"Qwen3 Embedding 8B",dimensions:4096}]}},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com",notice:{apiKeyUrl:"https://cloud.siliconflow.com/account/ak"}},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz",notice:{apiKeyUrl:"https://app.hyperbolic.xyz/settings"},serviceKinds:["llm","tts"],ttsConfig:{baseUrl:"https://api.hyperbolic.xyz/v1/audio/generation",authType:"apikey",authHeader:"bearer",format:"hyperbolic",models:[{id:"melo-tts",name:"Melo TTS"}]}},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",notice:{text:"$200 free credit on signup (no card required). Aura-1: $0.015/1k chars, Aura-2: $0.030/1k chars (Pay-As-You-Go).",apiKeyUrl:"https://console.deepgram.com/api-keys"},serviceKinds:["stt","imageToText","tts"],ttsConfig:{baseUrl:"https://api.deepgram.com/v1/speak",authType:"apikey",authHeader:"token",format:"deepgram",models:[]},sttConfig:{baseUrl:"https://api.deepgram.com/v1/listen",authType:"apikey",authHeader:"token",format:"deepgram",models:[{id:"nova-3",name:"Nova 3"},{id:"nova-2",name:"Nova 2"},{id:"whisper-large",name:"Whisper Large"}]}},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",notice:{apiKeyUrl:"https://www.assemblyai.com/app/api-keys"},serviceKinds:["stt"],sttConfig:{baseUrl:"https://api.assemblyai.com/v2/transcript",authType:"apikey",authHeader:"bearer",format:"assemblyai",async:!0,models:[{id:"universal-3-pro",name:"Universal 3 Pro"},{id:"universal-2",name:"Universal 2"}]}},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana API",icon:"extension",color:"#FFD700",textIcon:"\uD83C\uDF4C",website:"https://nanobananaapi.ai",notice:{text:"3rd-party proxy for Google Nano Banana (Gemini 2.5/3 Flash Image). For official, use Gemini provider.",apiKeyUrl:"https://nanobananaapi.ai/dashboard"},serviceKinds:["image"]},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",notice:{apiKeyUrl:"https://elevenlabs.io/app/settings/api-keys"},serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.elevenlabs.io/v1/text-to-speech",authType:"apikey",authHeader:"xi-api-key",format:"elevenlabs",models:[{id:"eleven_multilingual_v2",name:"Eleven Multilingual v2"},{id:"eleven_turbo_v2_5",name:"Eleven Turbo v2.5"}]}},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",notice:{apiKeyUrl:"https://play.cartesia.ai/keys"},serviceKinds:["tts"],hidden:!0,ttsConfig:{baseUrl:"https://api.cartesia.ai/tts/bytes",authType:"apikey",authHeader:"x-api-key",format:"cartesia",models:[{id:"sonic-2",name:"Sonic 2"},{id:"sonic-3",name:"Sonic 3"}]}},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",notice:{apiKeyUrl:"https://play.ht/studio/api-access"},serviceKinds:["tts"],hidden:!0,ttsConfig:{baseUrl:"https://api.play.ht/api/v2/tts/stream",authType:"apikey",authHeader:"playht",format:"playht",models:[{id:"PlayDialog",name:"PlayDialog"},{id:"Play3.0-mini",name:"Play 3.0 Mini"}]}},"local-device":{id:"local-device",alias:"local-device",name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD",mediaPriority:5,serviceKinds:["tts"],noAuth:!0,ttsConfig:{baseUrl:"local-device",authType:"none",authHeader:"none",format:"local-device",models:[]}},"google-tts":{id:"google-tts",alias:"google-tts",name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT",mediaPriority:5,serviceKinds:["tts"],noAuth:!0,ttsConfig:{baseUrl:"google-tts",authType:"none",authHeader:"none",format:"google-tts",models:[]}},"edge-tts":{id:"edge-tts",alias:"edge-tts",name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET",mediaPriority:5,serviceKinds:["tts"],noAuth:!0,ttsConfig:{baseUrl:"edge-tts",authType:"none",authHeader:"none",format:"edge-tts",models:[]}},coqui:{id:"coqui",alias:"coqui",name:"Coqui TTS",icon:"record_voice_over",color:"#10B981",textIcon:"CQ",website:"https://github.com/coqui-ai/TTS",serviceKinds:["tts"],hidden:!0,noAuth:!0,ttsConfig:{baseUrl:"http://localhost:5002/api/tts",authType:"none",authHeader:"none",format:"coqui",models:[{id:"tts_models/en/ljspeech/tacotron2-DDC",name:"Tacotron2 DDC (LJSpeech)"}]}},tortoise:{id:"tortoise",alias:"tortoise",name:"Tortoise TTS",icon:"record_voice_over",color:"#7C3AED",textIcon:"TT",website:"https://github.com/neonbjb/tortoise-tts",serviceKinds:["tts"],hidden:!0,noAuth:!0,ttsConfig:{baseUrl:"http://localhost:5000/api/tts",authType:"none",authHeader:"none",format:"tortoise",models:[{id:"tortoise-v2",name:"Tortoise v2"}]}},inworld:{id:"inworld",alias:"inworld",name:"Inworld TTS",icon:"record_voice_over",color:"#FF6B6B",textIcon:"IW",website:"https://inworld.ai",notice:{text:"Free tier: 40 minutes/month TTS. Paid: TTS-1.5 Mini $0.01/min ($15/1M chars), TTS-1.5 Max $0.025/min ($30/1M chars). 270+ voices, 15 languages.",apiKeyUrl:"https://platform.inworld.ai/api-keys"},serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.inworld.ai/tts/v1/voice",authType:"apikey",authHeader:"basic",format:"inworld",models:[{id:"inworld-tts-1.5-mini",name:"Inworld TTS 1.5 Mini ($0.01/min)"},{id:"inworld-tts-1.5-max",name:"Inworld TTS 1.5 Max ($0.025/min)"}]}},"voyage-ai":{id:"voyage-ai",alias:"voyage",name:"Voyage AI",icon:"data_array",color:"#0EA5E9",textIcon:"VG",website:"https://www.voyageai.com",notice:{apiKeyUrl:"https://dash.voyageai.com/api-keys"},serviceKinds:["embedding"],embeddingConfig:{baseUrl:"https://api.voyageai.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"voyage-3-large",name:"Voyage 3 Large",dimensions:1024},{id:"voyage-3.5",name:"Voyage 3.5",dimensions:1024},{id:"voyage-3.5-lite",name:"Voyage 3.5 Lite",dimensions:1024},{id:"voyage-code-3",name:"Voyage Code 3",dimensions:1024},{id:"voyage-finance-2",name:"Voyage Finance 2",dimensions:1024},{id:"voyage-law-2",name:"Voyage Law 2",dimensions:1024},{id:"voyage-multilingual-2",name:"Voyage Multilingual 2",dimensions:1024}]}},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui",serviceKinds:["image"]},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI",serviceKinds:["image"]},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",notice:{apiKeyUrl:"https://huggingface.co/settings/tokens"},serviceKinds:["image","imageToText","tts","stt"],hiddenKinds:["tts"],ttsConfig:{baseUrl:"https://api-inference.huggingface.co/models",authType:"apikey",authHeader:"bearer",format:"huggingface-tts",models:[{id:"facebook/mms-tts-eng",name:"MMS TTS English"},{id:"microsoft/speecht5_tts",name:"SpeechT5 TTS"}]},sttConfig:{baseUrl:"https://api-inference.huggingface.co/models",authType:"apikey",authHeader:"bearer",format:"huggingface-asr",models:[{id:"openai/whisper-large-v3",name:"Whisper Large v3 (HF)"},{id:"openai/whisper-small",name:"Whisper Small (HF)"}]}},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",notice:{apiKeyUrl:"https://www.blackbox.ai/api-management"},serviceKinds:["llm"]},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai",notice:{apiKeyUrl:"https://chutes.ai/app/api"}},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models",notice:{apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},tavily:{id:"tavily",alias:"tavily",name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",notice:{apiKeyUrl:"https://app.tavily.com/home"},serviceKinds:["webSearch","webFetch"],searchConfig:{baseUrl:"https://api.tavily.com/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.008,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5},fetchConfig:{baseUrl:"https://api.tavily.com/extract",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.008,freeMonthlyQuota:1e3,formats:["markdown","text"],maxCharacters:1e5,timeoutMs:15e3}},"brave-search":{id:"brave-search",alias:"brave",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",notice:{apiKeyUrl:"https://api-dashboard.search.brave.com/app/keys"},serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://api.search.brave.com/res/v1",method:"GET",authType:"apikey",authHeader:"x-subscription-token",costPerQuery:.005,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5}},serper:{id:"serper",alias:"serper",name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",notice:{apiKeyUrl:"https://serper.dev/api-key"},serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://google.serper.dev",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.001,freeMonthlyQuota:2500,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},exa:{id:"exa",alias:"exa",name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",notice:{apiKeyUrl:"https://dashboard.exa.ai/api-keys"},serviceKinds:["webSearch","webFetch"],searchConfig:{baseUrl:"https://api.exa.ai/search",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.007,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5},fetchConfig:{baseUrl:"https://api.exa.ai/contents",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.001,freeMonthlyQuota:1e3,formats:["text","markdown"],maxCharacters:1e5,timeoutMs:15e3}},searxng:{id:"searxng",alias:"searxng",name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org",serviceKinds:["webSearch"],noAuth:!0,searchConfig:{baseUrl:"http://localhost:8888/search",method:"GET",authType:"none",authHeader:"none",costPerQuery:0,freeMonthlyQuota:999999,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:18e4}},"google-pse":{id:"google-pse",alias:"gpse",name:"Google PSE",icon:"search",color:"#4285F4",textIcon:"GP",website:"https://programmablesearchengine.google.com",notice:{apiKeyUrl:"https://programmablesearchengine.google.com/controlpanel/create"},serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://www.googleapis.com/customsearch/v1",method:"GET",authType:"apikey",authHeader:"key",costPerQuery:.005,freeMonthlyQuota:3e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:10,timeoutMs:1e4,cacheTTLMs:3e5}},linkup:{id:"linkup",alias:"linkup",name:"Linkup",icon:"link",color:"#0EA5E9",textIcon:"LK",website:"https://linkup.so",notice:{apiKeyUrl:"https://app.linkup.so/api-keys"},serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://api.linkup.so/v1/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.005,freeMonthlyQuota:1e3,searchTypes:["web"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:3e5}},searchapi:{id:"searchapi",alias:"searchapi",name:"SearchAPI",icon:"search",color:"#0EA5A4",textIcon:"SA",website:"https://www.searchapi.io",notice:{apiKeyUrl:"https://www.searchapi.io/dashboard"},serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://www.searchapi.io/api/v1/search",method:"GET",authType:"apikey",authHeader:"api_key",costPerQuery:.004,freeMonthlyQuota:100,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},youcom:{id:"youcom",alias:"youcom",name:"You.com Search",icon:"search",color:"#7C3AED",textIcon:"YC",website:"https://you.com",notice:{apiKeyUrl:"https://api.you.com"},serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://ydc-index.io/v1/search",method:"GET",authType:"apikey",authHeader:"x-api-key",costPerQuery:.005,freeMonthlyQuota:0,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},firecrawl:{id:"firecrawl",alias:"firecrawl",name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",notice:{apiKeyUrl:"https://www.firecrawl.dev/app/api-keys"},serviceKinds:["webFetch"],fetchConfig:{baseUrl:"https://api.firecrawl.dev/v1/scrape",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.002,freeMonthlyQuota:500,formats:["markdown","html","text"],maxCharacters:2e5,timeoutMs:3e4}},"fal-ai":{id:"fal-ai",alias:"fal",name:"Fal.ai",icon:"image",color:"#2563EB",textIcon:"FL",website:"https://fal.ai",notice:{apiKeyUrl:"https://fal.ai/dashboard/keys"},serviceKinds:["image"],imageConfig:{baseUrl:"https://api.fal.ai/v1/models?limit=1",method:"GET",authType:"apikey",authHeader:"key"}},"stability-ai":{id:"stability-ai",alias:"stability",name:"Stability AI",icon:"image",color:"#8B5CF6",textIcon:"SA",website:"https://stability.ai",notice:{apiKeyUrl:"https://platform.stability.ai/account/keys"},serviceKinds:["image"],imageConfig:{baseUrl:"https://api.stability.ai/v1/user/account",method:"GET",authType:"apikey",authHeader:"bearer"}},"black-forest-labs":{id:"black-forest-labs",alias:"bfl",name:"Black Forest Labs",icon:"image",color:"#111827",textIcon:"BF",website:"https://blackforestlabs.ai",notice:{apiKeyUrl:"https://api.bfl.ai"},serviceKinds:["image"],imageConfig:{baseUrl:"https://api.bfl.ai/v1/get_result?id=ping",method:"GET",authType:"apikey",authHeader:"x-key"}},recraft:{id:"recraft",alias:"recraft",name:"Recraft",icon:"image",color:"#EC4899",textIcon:"RC",website:"https://recraft.ai",notice:{apiKeyUrl:"https://www.recraft.ai/profile/api"},serviceKinds:["image"],imageConfig:{baseUrl:"https://external.api.recraft.ai/v1/users/me",method:"GET",authType:"apikey",authHeader:"bearer"}},topaz:{id:"topaz",alias:"topaz",name:"Topaz",icon:"image",color:"#059669",textIcon:"TP",website:"https://topazlabs.com",notice:{apiKeyUrl:"https://topazlabs.com/account"},serviceKinds:["image"]},runwayml:{id:"runwayml",alias:"runway",name:"Runway ML",icon:"movie",color:"#000000",textIcon:"RW",website:"https://runwayml.com",notice:{apiKeyUrl:"https://dev.runwayml.com"},serviceKinds:["image","video"],imageConfig:{baseUrl:"https://api.dev.runwayml.com/v1/organization",method:"GET",authType:"apikey",authHeader:"bearer",extraHeaders:{"X-Runway-Version":"2024-11-06"}}},"aws-polly":{id:"aws-polly",alias:"polly",name:"AWS Polly",icon:"record_voice_over",color:"#FF9900",textIcon:"PL",website:"https://aws.amazon.com/polly/",notice:{text:"Use AWS Secret Access Key as API key; set providerSpecificData.accessKeyId and optional region.",apiKeyUrl:"https://console.aws.amazon.com/iam/home#/security_credentials"},serviceKinds:["tts"],hasProviderSpecificData:!0,ttsConfig:{baseUrl:"https://polly.{region}.amazonaws.com/v1/speech",authType:"apikey",authHeader:"aws-sigv4",format:"aws-polly",models:[{id:"standard",name:"Standard"},{id:"neural",name:"Neural"},{id:"long-form",name:"Long-form"},{id:"generative",name:"Generative"}]}},"jina-ai":{id:"jina-ai",alias:"jina",name:"Jina AI",icon:"blur_on",color:"#2563EB",textIcon:"JA",website:"https://jina.ai",notice:{text:"10M free tokens on signup (non-commercial), no credit card required.",apiKeyUrl:"https://jina.ai/?sui=apikey"},serviceKinds:["embedding"],embeddingConfig:{baseUrl:"https://api.jina.ai/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"jina-embeddings-v3",name:"Jina Embeddings v3",dimensions:1024},{id:"jina-embeddings-v2-base-en",name:"Jina Embeddings v2 Base EN",dimensions:768},{id:"jina-embeddings-v2-base-code",name:"Jina Embeddings v2 Base Code",dimensions:768}]}},"jina-reader":{id:"jina-reader",alias:"jina",name:"Jina Reader",icon:"menu_book",color:"#000000",textIcon:"JR",website:"https://jina.ai/reader",notice:{apiKeyUrl:"https://jina.ai/?sui=apikey"},serviceKinds:["webFetch"],fetchConfig:{baseUrl:"https://r.jina.ai",method:"GET",authType:"apikey",authHeader:"bearer",costPerQuery:0,freeMonthlyQuota:1e6,formats:["markdown","text","html"],maxCharacters:2e5,timeoutMs:3e4}}},h={"grok-web":{id:"grok-web",alias:"gw",name:"Grok Web (Subscription)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GW",website:"https://grok.com",authType:"cookie",authHint:"Paste your sso= cookie value from grok.com",passthroughModels:!0,serviceKinds:["llm"]},"perplexity-web":{id:"perplexity-web",alias:"pw",name:"Perplexity Web (Pro/Max)",icon:"search",color:"#20808D",textIcon:"PW",website:"https://www.perplexity.ai",authType:"cookie",authHint:"Paste your __Secure-next-auth.session-token cookie value from perplexity.ai",serviceKinds:["llm"]}},i=[{id:"embedding",label:"Embedding",icon:"data_array",endpoint:{method:"POST",path:"/v1/embeddings"}},{id:"image",label:"Text to Image",icon:"brush",endpoint:{method:"POST",path:"/v1/images/generations"}},{id:"imageToText",label:"Image to Text",icon:"image_search",endpoint:{method:"POST",path:"/v1/images/understanding"}},{id:"tts",label:"Text To Speech",icon:"record_voice_over",endpoint:{method:"POST",path:"/v1/audio/speech"}},{id:"stt",label:"Speech To Text",icon:"mic",endpoint:{method:"POST",path:"/v1/audio/transcriptions"}},{id:"webSearch",label:"Web Search",icon:"travel_explore",endpoint:{method:"POST",path:"/v1/search"}},{id:"webFetch",label:"Web Fetch",icon:"language",endpoint:{method:"POST",path:"/v1/web/fetch"}},{id:"video",label:"Video",icon:"movie",endpoint:{method:"POST",path:"/v1/video/generations"}},{id:"music",label:"Music",icon:"music_note",endpoint:{method:"POST",path:"/v1/audio/music"}}],j="openai-compatible-",k="anthropic-compatible-";function l(a){return"string"==typeof a&&a.startsWith(j)}function m(a){return"string"==typeof a&&a.startsWith(k)}function n(a){return"string"==typeof a&&a.startsWith("custom-embedding-")}function o(a){return"string"==typeof a&&a.startsWith("custom-image-")}let p={...d,...e,...f,...g,...h},q={oauth:{id:"oauth",name:"OAuth",icon:"lock"},apikey:{id:"apikey",name:"API Key",icon:"key"},cookie:{id:"cookie",name:"Browser Cookie",icon:"cookie"}};function r(a){for(let b of Object.values(p))if(b.alias===a||b.id===a)return b;return null}function s(a){let b=p[a];return b?.alias||a}function t(a){return Object.values(p).filter(b=>!(!(b.serviceKinds??["llm"]).includes(a)||b.hidden||b.hiddenKinds?.includes(a))).sort((a,b)=>(a.mediaPriority??100)-(b.mediaPriority??100))}Object.values(p).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(p).reduce((a,b)=>(a[b.id]=b.alias,a),{});let u=["claude","antigravity","kiro","github","codex","kimi-coding","ollama","gemini-cli","glm","glm-cn","minimax","minimax-cn"],v=["glm","glm-cn","minimax","minimax-cn"]},99258:(a,b,c)=>{"use strict";c.d(b,{FE:()=>m,Tl:()=>k,wn:()=>n});var d=c(51126);let e={},f=d.Xn,g=[],h=new Set(["API Key Name","Usage by API Key","Usage by Model","Usage by Account","Usage by Endpoint","Model","Provider","Requests","Last Used","Total Requests","Total Input Tokens","Est. Cost","Input Cost","Output Cost","Total Cost","Input","Output","Total","Input Tokens","Output Tokens","Total Tokens","Account","Endpoint","Tokens","Costs"]);function i(a){return String(a||"").replace(/\s+/g," ").trim()}async function j(a){if("en"===a){e={};return}try{let b=await fetch(`/i18n/literals/${a}.json`);e=await b.json()}catch(a){console.error("Failed to load translations:",a),e={}}}function k(a){if(!a||"string"!=typeof a)return a;let b=i(a);return b&&"en"!==f?h.has(i(b))?a:e[b]||a:a}function l(a){if(!a.nodeValue||!a.nodeValue.trim())return;let b=a.parentElement;if(!b)return;let c=b;for(;c;){if(c.hasAttribute&&c.hasAttribute("data-i18n-skip"))return;c=c.parentElement}if(["script","style","code","pre","colgroup","table","thead","tbody","tfoot","tr","select","datalist","optgroup"].includes(b.tagName?.toLowerCase()))return;a._originalText||(a._originalText=a.nodeValue);let d=k(a._originalText);d!==a.nodeValue&&(a.nodeValue=d)}async function m(){}async function n(){f=function(){if("u"<typeof document)return d.Xn;let a=document.cookie.split(";").find(a=>a.trim().startsWith(`${d.CL}=`)),b=a?decodeURIComponent(a.split("=")[1]):d.Xn;return(0,d.QC)(b)}(),await j(f),g.forEach(a=>a()),function(a){let b;if(!a)return;let c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT,null,!1),d=[];for(;b=c.nextNode();)d.push(b);d.forEach(l)}(document.body)}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=9460,exports.ids=[9460],exports.modules={644:(a,b,c)=>{function d(a,b=null){if(null==a)return b;if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return b}}function e(a){return JSON.stringify(a??null)}c.d(b,{q:()=>d,s:()=>e})},9460:(a,b,c)=>{c.d(b,{getMitmAlias:()=>f}),c(36366);var d=c(22846);(0,d.U)("modelAliases"),(0,d.U)("customModels");let e=(0,d.U)("mitmAlias");async function f(a){return a?await e.get(a)||{}:await e.getAll()}},22846:(a,b,c)=>{c.d(b,{U:()=>f});var d=c(36366),e=c(644);function f(a){return{async get(b,c=null){let f=(await (0,d.c)()).get("SELECT value FROM kv WHERE scope = ? AND key = ?",[a,b]);return f?(0,e.q)(f.value,c):c},async getAll(){let b=(await (0,d.c)()).all("SELECT key, value FROM kv WHERE scope = ?",[a]),c={};for(let a of b)c[a.key]=(0,e.q)(a.value);return c},async set(b,c){(await (0,d.c)()).run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,b,(0,e.s)(c)])},async setMany(b){let c=await (0,d.c)();c.transaction(()=>{for(let[d,f]of Object.entries(b))c.run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,d,(0,e.s)(f)])})},async remove(b){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ? AND key = ?",[a,b])},async clear(){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ?",[a])}}}},36366:(a,b,c)=>{c.d(b,{c:()=>k});var d=c(95658);global._dbAdapter||(global._dbAdapter={instance:null,initPromise:null,logged:!1});let e=global._dbAdapter;async function f(){if(!process.versions.bun)return null;try{let{createBunSqliteAdapter:a}=await c.e(4739).then(c.bind(c,24739));return await a(d.AL)}catch(a){return console.warn(`[DB] bun:sqlite unavailable: ${a.message}`),null}}async function g(){if(process.versions.bun)return null;try{let{createBetterSqliteAdapter:a}=await c.e(5258).then(c.bind(c,25258));return a(d.AL)}catch(a){return console.warn(`[DB] better-sqlite3 unavailable: ${a.message}`),null}}async function h(){if(process.versions.bun)return null;let[a,b]=process.versions.node.split(".").map(Number);if(a<22||22===a&&b<5)return null;try{let{createNodeSqliteAdapter:a}=await c.e(8520).then(c.bind(c,88520));return await a(d.AL)}catch(a){return console.warn(`[DB] node:sqlite unavailable: ${a.message}`),null}}async function i(){try{let{createSqlJsAdapter:a}=await c.e(3593).then(c.bind(c,53593));return await a(d.AL)}catch(a){return console.warn(`[DB] sql.js unavailable: ${a.message}`),null}}async function j(){(0,d.Jh)();let a=await f();if(a||(a=await g()),a||(a=await h()),a||(a=await i()),!a)throw Error("[DB] No SQLite driver available (bun/better/node/sql.js all failed)");e.logged||(console.log(`[DB] Driver: ${a.driver} | file: ${d.AL}`),e.logged=!0);let{runMigrationOnce:b}=await c.e(5217).then(c.bind(c,45217));return await b(a),a}async function k(){return e.instance?e.instance:(e.initPromise||(e.initPromise=j().then(a=>(e.instance=a,a))),e.initPromise)}},95658:(a,b,c)=>{c.d(b,{AL:()=>j,HG:()=>i,Jh:()=>m,KQ:()=>k,Or:()=>l});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(49120);let i=e().join(h.DATA_DIR,"db"),j=e().join(i,"data.sqlite"),k=e().join(i,"backups"),l={main:e().join(h.DATA_DIR,"db.json"),usage:e().join(h.DATA_DIR,"usage.json"),disabled:e().join(h.DATA_DIR,"disabledModels.json"),details:e().join(h.DATA_DIR,"request-details.json")};function m(){for(let a of[h.DATA_DIR,i,k])g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=9489,exports.ids=[9489],exports.modules={18910:(a,b,c)=>{c.d(b,{Pr:()=>i,UP:()=>g,Vu:()=>h});var d=c(12557),e=c(43659);let f=new Map;function g(a){a?f.delete(a):f.clear()}function h(a,b){if(a.includes("/"))return null;let c=(Array.isArray(b)?b:b?.combos||[]).find(b=>b.name===a);return c&&c.models&&c.models.length>0?c.models:null}async function i({body:a,models:b,handleSingleModel:c,log:g,comboName:h,comboStrategy:j,comboStickyLimit:k=1}){let l=function(a,b,c,d=1){let e;if(!a||a.length<=1||"round-robin"!==c)return a;let g=b||"__default__",h=Number.isFinite(e=Number.parseInt(d,10))&&e>0?e:1,i=f.get(g),j="number"==typeof i?{index:i,consecutiveUseCount:0}:i||{index:0,consecutiveUseCount:0},k=j.index%a.length,l=function(a,b){let c=[...a];for(let a=0;a<b;a++){let a=c.shift();c.push(a)}return c}(a,k),m=j.consecutiveUseCount+1;return m>=h?f.set(g,{index:(k+1)%a.length,consecutiveUseCount:0}):f.set(g,{index:k,consecutiveUseCount:m}),l}(b,h,j,k),m=null,n=null,o=null;for(let b=0;b<l.length;b++){let e=l[b];g.info("COMBO",`Trying model ${b+1}/${l.length}: ${e}`);try{let b=await c(a,e);if(b.ok)return g.info("COMBO",`Model ${e} succeeded`),b;let f=b.statusText||"",h=null;try{let a=await b.clone().json();f=a?.error?.message||a?.error||a?.message||f,h=a?.retryAfter||null}catch{}if(h&&(!n||new Date(h)<new Date(n))&&(n=h),"string"!=typeof f)try{f=JSON.stringify(f)}catch{f=String(f)}let{shouldFallback:i,cooldownMs:j}=(0,d.hk)(b.status,f);if(!i)return g.warn("COMBO",`Model ${e} failed (no fallback)`,{status:b.status}),b;j&&j>0&&j<=5e3&&(503===b.status||502===b.status||504===b.status)&&(g.info("COMBO",`Model ${e} transient ${b.status}, waiting ${j}ms before next`),await new Promise(a=>setTimeout(a,j))),m=f||String(b.status),o||(o=b.status),g.warn("COMBO",`Model ${e} failed, trying next`,{status:b.status})}catch(a){m=a.message||String(a),o||(o=500),g.warn("COMBO",`Model ${e} threw error, trying next`,{error:m})}}let p=m&&m.toLowerCase().includes("no credentials")?503:o||503,q=m||"All combo models unavailable";if(n){let a=(0,d.Qo)(n);return g.warn("COMBO",`All models failed | ${q} (${a})`),(0,e.wO)(p,q,n,a)}return g.warn("COMBO",`All models failed | ${q}`),new Response(JSON.stringify({error:{message:q}}),{status:p,headers:{"Content-Type":"application/json"}})}},
|
|
1
|
+
"use strict";exports.id=9489,exports.ids=[9489],exports.modules={18910:(a,b,c)=>{c.d(b,{Pr:()=>i,UP:()=>g,Vu:()=>h});var d=c(12557),e=c(43659);let f=new Map;function g(a){a?f.delete(a):f.clear()}function h(a,b){if(a.includes("/"))return null;let c=(Array.isArray(b)?b:b?.combos||[]).find(b=>b.name===a);return c&&c.models&&c.models.length>0?c.models:null}async function i({body:a,models:b,handleSingleModel:c,log:g,comboName:h,comboStrategy:j,comboStickyLimit:k=1}){let l=function(a,b,c,d=1){let e;if(!a||a.length<=1||"round-robin"!==c)return a;let g=b||"__default__",h=Number.isFinite(e=Number.parseInt(d,10))&&e>0?e:1,i=f.get(g),j="number"==typeof i?{index:i,consecutiveUseCount:0}:i||{index:0,consecutiveUseCount:0},k=j.index%a.length,l=function(a,b){let c=[...a];for(let a=0;a<b;a++){let a=c.shift();c.push(a)}return c}(a,k),m=j.consecutiveUseCount+1;return m>=h?f.set(g,{index:(k+1)%a.length,consecutiveUseCount:0}):f.set(g,{index:k,consecutiveUseCount:m}),l}(b,h,j,k),m=null,n=null,o=null;for(let b=0;b<l.length;b++){let e=l[b];g.info("COMBO",`Trying model ${b+1}/${l.length}: ${e}`);try{let b=await c(a,e);if(b.ok)return g.info("COMBO",`Model ${e} succeeded`),b;let f=b.statusText||"",h=null;try{let a=await b.clone().json();f=a?.error?.message||a?.error||a?.message||f,h=a?.retryAfter||null}catch{}if(h&&(!n||new Date(h)<new Date(n))&&(n=h),"string"!=typeof f)try{f=JSON.stringify(f)}catch{f=String(f)}let{shouldFallback:i,cooldownMs:j}=(0,d.hk)(b.status,f);if(!i)return g.warn("COMBO",`Model ${e} failed (no fallback)`,{status:b.status}),b;j&&j>0&&j<=5e3&&(503===b.status||502===b.status||504===b.status)&&(g.info("COMBO",`Model ${e} transient ${b.status}, waiting ${j}ms before next`),await new Promise(a=>setTimeout(a,j))),m=f||String(b.status),o||(o=b.status),g.warn("COMBO",`Model ${e} failed, trying next`,{status:b.status})}catch(a){m=a.message||String(a),o||(o=500),g.warn("COMBO",`Model ${e} threw error, trying next`,{error:m})}}let p=m&&m.toLowerCase().includes("no credentials")?503:o||503,q=m||"All combo models unavailable";if(n){let a=(0,d.Qo)(n);return g.warn("COMBO",`All models failed | ${q} (${a})`),(0,e.wO)(p,q,n,a)}return g.warn("COMBO",`All models failed | ${q}`),new Response(JSON.stringify({error:{message:q}}),{status:p,headers:{"Content-Type":"application/json"}})}},79489:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{P:()=>v});var e=c(48895),f=c(80238),g=c(71750),h=c(89718),i=c(38775),j=c(92500),k=c(43659),l=c(18910),m=c(27349),n=c(41004),o=c(14170),p=c(7803),q=c(67828),r=c(38160),s=c(9132),t=a([e,j]);function u(a,b){return Object.prototype.hasOwnProperty.call(a||{},b)}async function v(a,b=null){let c;try{c=await a.json()}catch{return p.warn("CHAT","Invalid JSON body"),(0,k.yj)(n.gx.BAD_REQUEST,"Invalid JSON body")}b||(b={endpoint:new URL(a.url).pathname,body:c,headers:Object.fromEntries(a.headers.entries())}),(0,g.n)(b.headers);let d=new URL(a.url),e=c.model,j=c.messages?.length||c.input?.length||0,o=c.tools?.length||0,q=c.reasoning_effort||c.reasoning?.effort||null;p.request("POST",`${d.pathname} | ${e} | ${j} msgs${o?` | ${o} tools`:""}${q?` | effort=${q}`:""}`);let r=a.headers.get("Authorization"),t=(0,f.Tr)(a);if(r&&t){let a=p.maskKey(t);p.debug("AUTH",`API Key: ${a}`)}else p.debug("AUTH","No API key provided (local mode)");let u=await (0,h.getSettings)(),x=await (0,s.RG)(a,t);if(u.requireApiKey){if(!t)return p.warn("AUTH","Missing API key (requireApiKey=true)"),(0,k.yj)(n.gx.UNAUTHORIZED,"Missing API key");if(!await (0,f.kI)(t))return p.warn("AUTH","Invalid API key (requireApiKey=true)"),(0,k.yj)(n.gx.UNAUTHORIZED,"Invalid API key")}if(!e)return p.warn("CHAT","Missing model"),(0,k.yj)(n.gx.BAD_REQUEST,"Missing model");let y=a?.headers?.get("user-agent")||"",z=(0,m.c)(c,e,y,!!u.ccFilterNaming);if(z)return z.response||z;let A=await (0,i.d_)(e);if(A){if(x)for(let a of A){let b=await (0,i.mA)(a);if(!b?.provider||!(0,s.iI)(x,b.provider))return(0,k.yj)(n.gx.FORBIDDEN,"This combo includes providers that are not enabled for the current sub-user")}let d=u.comboStrategies||{},f=d[e]?.fallbackStrategy||u.comboStrategy||"fallback",g=u.comboStickyRoundRobinLimit;return p.info("CHAT",`Combo "${e}" with ${A.length} models (strategy: ${f}, sticky: ${g})`),(0,l.Pr)({body:c,models:A,handleSingleModel:(c,d)=>w(c,d,b,a,t,x),log:p,comboName:e,comboStrategy:f,comboStickyLimit:g})}return w(c,e,b,a,t,x)}async function w(a,b,c=null,d=null,e=null,g=null){let m=await (0,i.mA)(b);if(!m.provider){let f=await (0,i.d_)(b);if(f){let i=await (0,h.getSettings)(),j=i.comboStrategies||{},k=j[b]?.fallbackStrategy||i.comboStrategy||"fallback",m=i.comboStickyRoundRobinLimit;return p.info("CHAT",`Combo "${b}" with ${f.length} models (strategy: ${k}, sticky: ${m})`),(0,l.Pr)({body:a,models:f,handleSingleModel:(a,b)=>w(a,b,c,d,e,g),log:p,comboName:b,comboStrategy:k,comboStickyLimit:m})}return p.warn("CHAT","Invalid model format",{model:b}),(0,k.yj)(n.gx.BAD_REQUEST,"Invalid model format")}let{provider:t,model:v}=m;if(!(0,s.iI)(g,t))return p.warn("AUTH",`Sub-user attempted to access disabled provider: ${t}`),(0,k.yj)(n.gx.FORBIDDEN,"This provider is not enabled for the current sub-user");b!==`${t}/${v}`?p.info("ROUTING",`${b} → ${t}/${v}`):p.info("ROUTING",`Provider: ${t}, Model: ${v}`);let x=d?.headers?.get("user-agent")||"",y=new Set,z=null,A=null;for(;;){let b=await (0,f.c1)(t,y,v,{allowedConnectionIds:(0,s.EM)(g)});if(!b||b.allRateLimited){if(b?.allRateLimited){let a=z||b.lastError||"Unavailable",c=A||Number(b.lastErrorCode)||n.gx.SERVICE_UNAVAILABLE;return p.warn("CHAT",`[${t}/${v}] ${a} (${b.retryAfterHuman})`),(0,k.wO)(c,`[${t}/${v}] ${a}`,b.retryAfter,b.retryAfterHuman)}if(0===y.size)return p.warn("AUTH",`No active credentials for provider: ${t}`),(0,k.yj)(n.gx.NOT_FOUND,`No active credentials for provider: ${t}`);return p.warn("CHAT","No more accounts available",{provider:t}),(0,k.yj)(A||n.gx.SERVICE_UNAVAILABLE,z||"All accounts unavailable")}p.info("AUTH",`\x1b[32mUsing ${t} account: ${b.connectionName}\x1b[0m`);let i=await (0,q.eU)(t,b);if(("antigravity"===t||"gemini-cli"===t)&&!i.projectId){let a=await (0,r.eG)(b.connectionId,i.accessToken);a&&(i.projectId=a,(0,q.vN)(b.connectionId,{projectId:a}).catch(()=>{}))}let l=await (0,h.getSettings)(),m=function(a,b,c){let d=(a.providerThinking||{})[b]||{},e=c?.role==="sub_user"?c.userId:"super_admin",f=c?.role==="sub_user"?(c.providerThinking||{})[b]||{}:(a.userProviderThinking||{})[e]?.[b]||{},g={...d};return u(f,"mode")&&(g.mode=f.mode),u(f,"fastMode")&&(g.fastMode=f.fastMode),Object.keys(g).length>0?g:null}(l,t,g),w=await (0,j.w)({body:{...a,model:`${t}/${v}`},modelInfo:{provider:t,model:v},credentials:i,log:p,clientRawRequest:c,connectionId:b.connectionId,userAgent:x,apiKey:e,ccFilterNaming:!!l.ccFilterNaming,rtkEnabled:!!l.rtkEnabled,cavemanEnabled:!!l.cavemanEnabled,cavemanLevel:l.cavemanLevel||"full",providerThinking:m,sourceFormatOverride:d?.url?(0,o.t)(new URL(d.url).pathname,a):null,onCredentialsRefreshed:async a=>{await (0,q.vN)(b.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,f.Pt)(b.connectionId,b,v)}});if(w.success)return w.response;let{shouldFallback:B}=await (0,f.vk)(b.connectionId,w.status,w.error,t,v,w.resetsAtMs);if(B){p.warn("AUTH",`Account ${b.connectionName} unavailable (${w.status}), trying fallback`),y.add(b.connectionId),z=w.error,A=w.status;continue}return w.response}}[e,j]=t.then?(await t)():t,d()}catch(a){d(a)}})}};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";exports.id=9528,exports.ids=[9528],exports.modules={24424:(a,b)=>{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}})},49796:(a,b,c)=>{Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(77943)},52750:(a,b,c)=>{c.d(b,{M:()=>C,q:()=>D});let d=/^(?:( )+|\t+)/,e="space";function f(a,b){let c=new Map,f=0,g,h;for(let i of a.split(/\n/g)){if(!i)continue;let a=i.match(d);if(null===a)f=0,g="";else{let d=a[0].length,i=a[1]?e:"tab";if(b&&i===e&&1===d)continue;i!==g&&(f=0),g=i;let j=1,k=0,l=d-f;if(f=d,0===l)j=0,k=1;else{let a=Math.abs(l);if(b&&i===e&&1===a)continue;h=(i===e?"s":"t")+String(a)}let m=c.get(h);c.set(h,void 0===m?[1,0]:[m[0]+j,m[1]+k])}}return c}let g=Symbol.for("__confbox_fmt__"),h=/^(\s+)/,i=/(\s+)$/;var j=class extends Error{line;column;codeblock;constructor(a,b){let[c,d]=function(a,b){let c=a.slice(0,b).split(/\r\n|\n|\r/g);return[c.length,c.pop().length+1]}(b.toml,b.ptr),e=function(a,b,c){let d=a.split(/\r\n|\n|\r/g),e="",f=(0|Math.log10(b+1))+1;for(let a=b-1;a<=b+1;a++){let g=d[a-1];g&&(e+=a.toString().padEnd(f," "),e+=": ",e+=g,e+=`
|
|
3
|
+
`,a===b&&(e+=" ".repeat(f+c+2),e+=`^
|
|
4
|
+
`))}return e}(b.toml,c,d);super(`Invalid TOML document: ${a}
|
|
5
|
+
|
|
6
|
+
${e}`,b),this.line=c,this.column=d,this.codeblock=e}};function k(a,b=0,c=a.length){let d=a.indexOf(`
|
|
7
|
+
`,b);return a[d-1]===`\r`&&d--,d<=c?d:-1}function l(a,b){for(let c=b;c<a.length;c++){let d=a[c];if(d===`
|
|
8
|
+
`)return c;if(d===`\r`&&a[c+1]===`
|
|
9
|
+
`)return c+1;if(d<" "&&" "!==d||""===d)throw new j("control characters are not allowed in comments",{toml:a,ptr:b})}return a.length}function m(a,b,c,d){let e;for(;" "===(e=a[b])||" "===e||!c&&(e===`
|
|
10
|
+
`||e===`\r`&&a[b+1]===`
|
|
11
|
+
`);)b++;return d||"#"!==e?b:m(a,l(a,b),c)}function n(a,b){let c=a[b],d=c===a[b+1]&&a[b+1]===a[b+2]?a.slice(b,b+3):c;b+=d.length-1;do b=a.indexOf(d,++b);while(b>-1&&"'"!==c&&function(a,b){let c=0;for(;"\\"===a[b-++c];);return--c&&c%2}(a,b));return b>-1&&(b+=d.length,d.length>1&&(a[b]===c&&b++,a[b]===c&&b++)),b}let o=/^(\d{4}-\d{2}-\d{2})?[T ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|[-+]\d{2}:\d{2})?$/i;var p=class a extends Date{#a=!1;#b=!1;#c=null;constructor(a){let b=!0,c=!0,d="Z";if("string"==typeof a){let e=a.match(o);e?(e[1]||(b=!1,a=`0000-01-01T${a}`),(c=!!e[2])&&" "===a[10]&&(a=a.replace(" ","T")),e[2]&&+e[2]>23?a="":(d=e[3]||null,a=a.toUpperCase(),!d&&c&&(a+="Z"))):a=""}super(a),isNaN(this.getTime())||(this.#a=b,this.#b=c,this.#c=d)}isDateTime(){return this.#a&&this.#b}isLocal(){return!this.#a||!this.#b||!this.#c}isDate(){return this.#a&&!this.#b}isTime(){return this.#b&&!this.#a}isValid(){return this.#a||this.#b}toISOString(){let a=super.toISOString();if(this.isDate())return a.slice(0,10);if(this.isTime())return a.slice(11,23);if(null===this.#c)return a.slice(0,-1);if("Z"===this.#c)return a;let b=60*this.#c.slice(1,3)+ +this.#c.slice(4,6);return b="-"===this.#c[0]?b:-b,new Date(this.getTime()-6e4*b).toISOString().slice(0,-1)+this.#c}static wrapAsOffsetDateTime(b,c="Z"){let d=new a(b);return d.#c=c,d}static wrapAsLocalDateTime(b){let c=new a(b);return c.#c=null,c}static wrapAsLocalDate(b){let c=new a(b);return c.#b=!1,c.#c=null,c}static wrapAsLocalTime(b){let c=new a(b);return c.#a=!1,c.#c=null,c}};let q=/^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/,r=/^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/,s=/^[+-]?0[0-9_]/,t=/^[0-9a-f]{2,8}$/i,u={b:"\b",t:" ",n:`
|
|
12
|
+
`,f:"\f",r:`\r`,e:"\x1b",'"':'"',"\\":"\\"};function v(a,b=0,c=a.length){let d="'"===a[b],e=a[b++]===a[b]&&a[b]===a[b+1];e&&(c-=2,a[b+=2]===`\r`&&b++,a[b]===`
|
|
13
|
+
`&&b++);let f=0,g,h="",i=b;for(;b<c-1;){let c=a[b++];if(c===`
|
|
14
|
+
`||c===`\r`&&a[b]===`
|
|
15
|
+
`){if(!e)throw new j("newlines are not allowed in strings",{toml:a,ptr:b-1})}else if(c<" "&&" "!==c||""===c)throw new j("control characters are not allowed in strings",{toml:a,ptr:b-1});if(g){if(g=!1,"x"===c||"u"===c||"U"===c){let d=a.slice(b,b+="x"===c?2:"u"===c?4:8);if(!t.test(d))throw new j("invalid unicode escape",{toml:a,ptr:f});try{h+=String.fromCodePoint(parseInt(d,16))}catch{throw new j("invalid unicode escape",{toml:a,ptr:f})}}else if(e&&(c===`
|
|
16
|
+
`||" "===c||" "===c||c===`\r`)){if(b=m(a,b-1,!0),a[b]!==`
|
|
17
|
+
`&&a[b]!==`\r`)throw new j("invalid escape: only line-ending whitespace may be escaped",{toml:a,ptr:f});b=m(a,b)}else if(c in u)h+=u[c];else throw new j("unrecognized escape sequence",{toml:a,ptr:f});i=b}else d||"\\"!==c||(f=b-1,g=!0,h+=a.slice(i,f))}return h+a.slice(i,c-1)}let w=/^[a-zA-Z0-9-_]+[ \t]*$/;function x(a,b,c="="){let d=b-1,e=[],f=a.indexOf(c,b);if(f<0)throw new j("incomplete key-value: cannot find end of key",{toml:a,ptr:b});do{let g=a[b=++d];if(" "!==g&&" "!==g)if('"'===g||"'"===g){if(g===a[b+1]&&g===a[b+2])throw new j("multiline strings are not allowed in keys",{toml:a,ptr:b});let h=n(a,b);if(h<0)throw new j("unfinished string encountered",{toml:a,ptr:b});d=a.indexOf(".",h);let i=a.slice(h,d<0||d>f?f:d),l=k(i);if(l>-1)throw new j("newlines are not allowed in keys",{toml:a,ptr:b+d+l});if(i.trimStart())throw new j("found extra tokens after the string part",{toml:a,ptr:h});if(f<h&&(f=a.indexOf(c,h))<0)throw new j("incomplete key-value: cannot find end of key",{toml:a,ptr:b});e.push(v(a,b,h))}else{d=a.indexOf(".",b);let c=a.slice(b,d<0||d>f?f:d);if(!w.test(c))throw new j("only letter, numbers, dashes and underscores are allowed in keys",{toml:a,ptr:b});e.push(c.trimEnd())}}while(d+1&&d<f);return[e,m(a,f+1,!0,!0)]}function y(a,b,c,d){let e=b,f=c,g,h=!1,i;for(let b=0;b<a.length;b++){if(b){if(e=h?e[g]:e[g]={},f=(i=f[g]).c,0===d&&(1===i.t||2===i.t))return null;if(2===i.t){let a=e.length-1;e=e[a],f=f[a].c}}if((h=Object.hasOwn(e,g=a[b]))&&f[g]?.t===0&&f[g]?.d)return null;h||("__proto__"===g&&(Object.defineProperty(e,g,{enumerable:!0,configurable:!0,writable:!0}),Object.defineProperty(f,g,{enumerable:!0,configurable:!0,writable:!0})),f[g]={t:b<a.length-1&&2===d?3:d,d:!1,i:0,c:{}})}if((i=f[g]).t!==d&&(1!==d||3!==i.t)||(2===d&&(i.d||(i.d=!0,e[g]=[]),e[g].push(e={}),i.c[i.i++]=i={t:1,d:!1,i:0,c:{}}),i.d))return null;if(i.d=!0,1===d)e=h?e[g]:e[g]={};else if(0===d&&h)return null;return[g,e,i.c]}let z=/^[a-z0-9-_]+$/i;function A(a){let b=typeof a;if("object"===b){if(Array.isArray(a))return"array";if(a instanceof Date)return"date"}return b}function B(a){return JSON.stringify(a).replace(/\x7f/g,"\\u007f")}function C(a){var b;let c=function(a,{maxDepth:b=1e3,integersAsBigInt:c}={}){let d={},e={},f=d,g=e;for(let h=m(a,0);h<a.length;){if("["===a[h]){let b="["===a[++h],c=x(a,h+=+b,"]");if(b){if("]"!==a[c[1]-1])throw new j("expected end of table declaration",{toml:a,ptr:c[1]-1});c[1]++}let i=y(c[0],d,e,b?2:1);if(!i)throw new j("trying to redefine an already defined table or value",{toml:a,ptr:h});g=i[2],f=i[1],h=c[1]}else{let d=x(a,h),e=y(d[0],f,g,0);if(!e)throw new j("trying to redefine an already defined table or value",{toml:a,ptr:h});let i=function a(b,c,d,e,f){var g;let h,i,o;if(0===e)throw new j("document contains excessively nested structures. aborting.",{toml:b,ptr:c});let t=b[c];if("["===t||"{"===t){let[g,h]="["===t?function(b,c,d,e){let f=[],g;for(c++;"]"!==(g=b[c++])&&g;)if(","===g)throw new j("expected value, found comma",{toml:b,ptr:c-1});else if("#"===g)c=l(b,c);else if(" "!==g&&" "!==g&&g!==`
|
|
18
|
+
`&&g!==`\r`){let g=a(b,c-1,"]",d-1,e);f.push(g[0]),c=g[1]}if(!g)throw new j("unfinished array encountered",{toml:b,ptr:c});return[f,c]}(b,c,e,f):function(b,c,d,e){let f={},g=new Set,h;for(c++;"}"!==(h=b[c++])&&h;)if(","===h)throw new j("expected value, found comma",{toml:b,ptr:c-1});else if("#"===h)c=l(b,c);else if(" "!==h&&" "!==h&&h!==`
|
|
19
|
+
`&&h!==`\r`){let h,i=f,k=!1,[l,m]=x(b,c-1);for(let a=0;a<l.length;a++){if(a&&(i=k?i[h]:i[h]={}),(k=Object.hasOwn(i,h=l[a]))&&("object"!=typeof i[h]||g.has(i[h])))throw new j("trying to redefine an already defined value",{toml:b,ptr:c});k||"__proto__"!==h||Object.defineProperty(i,h,{enumerable:!0,configurable:!0,writable:!0})}if(k)throw new j("trying to redefine an already defined value",{toml:b,ptr:c});let[n,o]=a(b,m,"}",d-1,e);g.add(n),i[h]=n,c=o}if(!h)throw new j("unfinished table encountered",{toml:b,ptr:c});return[f,c]}(b,c,e,f);if(d){if(h=m(b,h),","===b[h])h++;else if(b[h]!==d)throw new j("expected comma or end of structure",{toml:b,ptr:h})}return[g,h]}if('"'===t||"'"===t){h=n(b,c);let a=v(b,c,h);if(d){if(h=m(b,h),b[h]&&","!==b[h]&&b[h]!==d&&b[h]!==`
|
|
20
|
+
`&&b[h]!==`\r`)throw new j("unexpected character encountered",{toml:b,ptr:h});h+=+(","===b[h])}return[a,h]}h=function(a,b,c,d=!1){if(!c)return(b=k(a,b))<0?a.length:b;for(let e=b;e<a.length;e++){let b=a[e];if("#"===b)e=k(a,e);else if(","===b)return e+1;else if(b===c||d&&(b===`
|
|
21
|
+
`||b===`\r`&&a[e+1]===`
|
|
22
|
+
`))return e}throw new j("cannot find end of structure",{toml:a,ptr:b})}(b,c,d);let u=(g=h-(","===b[h-1]),(o=(i=b.slice(c,g)).indexOf("#"))>-1&&(l(b,o),i=i.slice(0,o)),[i.trimEnd(),o]);if(!u[0])throw new j("incomplete key-value declaration: no value specified",{toml:b,ptr:c});return d&&u[1]>-1&&(h=m(b,c+u[1]),h+=+(","===b[h])),[function(a,b,c,d){if("true"===a)return!0;if("false"===a)return!1;if("-inf"===a)return-1/0;if("inf"===a||"+inf"===a)return 1/0;if("nan"===a||"+nan"===a||"-nan"===a)return NaN;if("-0"===a)return d?0n:0;let e=q.test(a);if(e||r.test(a)){if(s.test(a))throw new j("leading zeroes are not allowed",{toml:b,ptr:c});let f=+(a=a.replace(/_/g,""));if(isNaN(f))throw new j("invalid number",{toml:b,ptr:c});if(e){if((e=!Number.isSafeInteger(f))&&!d)throw new j("integer value cannot be represented losslessly",{toml:b,ptr:c});(e||!0===d)&&(f=BigInt(a))}return f}let f=new p(a);if(!f.isValid())throw new j("invalid value",{toml:b,ptr:c});return f}(u[0],b,c,f),h]}(a,d[1],void 0,b,c);e[1][e[0]]=i[0],h=i[1]}if(h=m(a,h,!0),a[h]&&a[h]!==`
|
|
23
|
+
`&&a[h]!==`\r`)throw new j("each key-value declaration must be followed by an end-of-line",{toml:a,ptr:h});h=m(a,h)}return d}(a);return b={preserveIndentation:!1},c&&"object"==typeof c&&Object.defineProperty(c,g,{enumerable:!1,configurable:!0,writable:!0,value:function(a,b={}){return{sample:void 0===b.indent&&!1!==b.preserveIndentation&&a.slice(0,b?.sampleSize||1024),whiteSpace:!1===b.preserveWhitespace?void 0:{start:h.exec(a)?.[0]||"",end:i.exec(a)?.[0]||""}}}(a,b)}),c}function D(a){let b=function(a,b){if(!a||"object"!=typeof a||!(g in a))return{indent:b?.indent??2,whitespace:{start:"",end:""}};let c=a[g];return{indent:b?.indent||function(a){var b,c;if("string"!=typeof a)throw TypeError("Expected a string");let d=f(a,!0);0===d.size&&(d=f(a,!1));let g=function(a){let b,c=0,d=0;for(let[e,[f,g]]of a)(f>c||f===c&&g>d)&&(c=f,d=g,b=e);return b}(d),h,i=0,j="";return void 0!==g&&({type:h,amount:i}={type:"s"===g[0]?e:"tab",amount:Number(g.slice(1))},b=h,c=i,j=(b===e?" ":" ").repeat(c)),{amount:i,type:h,indent:j}}(c.sample||"").indent,whitespace:c.whiteSpace||{start:"",end:""}}}(a,{preserveIndentation:!1}),c=function(a,{maxDepth:b=1e3,numbersAsFloat:c=!1}={}){if("object"!==A(a))throw TypeError("stringify can only be called with an object");let d=function a(b,c,d,e,f){if(0===e)throw Error("Could not stringify the object: maximum object depth exceeded");let g="",h="",i=Object.keys(c);for(let b=0;b<i.length;b++){let j=i[b];if(null!==c[j]&&void 0!==c[j]){let b=A(c[j]);if("symbol"===b||"function"===b)throw TypeError(`cannot serialize values of type '${b}'`);let i=z.test(j)?j:B(j);if("array"===b&&function(a){for(let b=0;b<a.length;b++)if("object"!==A(a[b]))return!1;return 0!=a.length}(c[j]))h+=(h&&`
|
|
24
|
+
`)+function(b,c,d,e){if(0===d)throw Error("Could not stringify the object: maximum object depth exceeded");let f="";for(let g=0;g<b.length;g++)f+=`${f&&`
|
|
25
|
+
`}[[${c}]]
|
|
26
|
+
`,f+=a(0,b[g],c,d,e);return f}(c[j],d?`${d}.${i}`:i,e-1,f);else if("object"===b){let b=d?`${d}.${i}`:i;h+=(h&&`
|
|
27
|
+
`)+a(b,c[j],b,e-1,f)}else g+=i,g+=" = ",g+=function a(b,c,d,e){if(0===d)throw Error("Could not stringify the object: maximum object depth exceeded");if("number"===c)return isNaN(b)?"nan":b===1/0?"inf":b===-1/0?"-inf":e&&Number.isInteger(b)?b.toFixed(1):b.toString();if("bigint"===c||"boolean"===c)return b.toString();if("string"===c)return B(b);if("date"===c){if(isNaN(b.getTime()))throw TypeError("cannot serialize invalid date");return b.toISOString()}return"object"===c?function(b,c,d){let e=Object.keys(b);if(0===e.length)return"{}";let f="{ ";for(let g=0;g<e.length;g++){let h=e[g];g&&(f+=", "),f+=z.test(h)?h:B(h),f+=" = ",f+=a(b[h],A(b[h]),c-1,d)}return f+" }"}(b,d,e):"array"===c?function(b,c,d){if(0===b.length)return"[]";let e="[ ";for(let f=0;f<b.length;f++){if(f&&(e+=", "),null===b[f]||void 0===b[f])throw TypeError("arrays cannot contain null or undefined values");e+=a(b[f],A(b[f]),c-1,d)}return e+" ]"}(b,d,e):void 0}(c[j],b,e,f),g+=`
|
|
28
|
+
`}}return b&&(g||!h)&&(g=g?`[${b}]
|
|
29
|
+
${g}`:`[${b}]`),g&&h?`${g}
|
|
30
|
+
${h}`:g||h}(0,a,"",b,c);return d[d.length-1]===`
|
|
31
|
+
`?d:d+`
|
|
32
|
+
`}(a);return b.whitespace.start+c+b.whitespace.end}},77943:(a,b,c)=>{a.exports=c(7553).vendored["react-rsc"].ReactServerDOMWebpackServer}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports.id=9546,exports.ids=[9546],exports.modules={300:(a,b,c)=>{"use strict";c.d(b,{Zr:()=>e});let d=a=>b=>{try{let c=a(b);if(c instanceof Promise)return c;return{then:a=>d(a)(c),catch(a){return this}}}catch(a){return{then(a){return this},catch:b=>d(b)(a)}}},e=(a,b)=>(c,e,f)=>{let g,h={storage:function(a){let b;try{b=a()}catch(a){return}return{getItem:a=>{var c;let d=a=>null===a?null:JSON.parse(a,void 0),e=null!=(c=b.getItem(a))?c:null;return e instanceof Promise?e.then(d):d(e)},setItem:(a,c)=>b.setItem(a,JSON.stringify(c,void 0)),removeItem:a=>b.removeItem(a)}}(()=>window.localStorage),partialize:a=>a,version:0,merge:(a,b)=>({...b,...a}),...b},i=!1,j=0,k=new Set,l=new Set,m=h.storage;if(!m)return a((...a)=>{console.warn(`[zustand persist middleware] Unable to update item '${h.name}', the given storage is currently unavailable.`),c(...a)},e,f);let n=()=>{let a=h.partialize({...e()});return m.setItem(h.name,{state:a,version:h.version})},o=f.setState;f.setState=(a,b)=>(o(a,b),n());let p=a((...a)=>(c(...a),n()),e,f);f.getInitialState=()=>p;let q=()=>{var a,b;if(!m)return;let f=++j;i=!1,k.forEach(a=>{var b;return a(null!=(b=e())?b:p)});let o=(null==(b=h.onRehydrateStorage)?void 0:b.call(h,null!=(a=e())?a:p))||void 0;return d(m.getItem.bind(m))(h.name).then(a=>{if(a)if("number"!=typeof a.version||a.version===h.version)return[!1,a.state];else{if(h.migrate){let b=h.migrate(a.state,a.version);return b instanceof Promise?b.then(a=>[!0,a]):[!0,b]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(a=>{var b;if(f!==j)return;let[d,i]=a;if(c(g=h.merge(i,null!=(b=e())?b:p),!0),d)return n()}).then(()=>{f===j&&(null==o||o(e(),void 0),g=e(),i=!0,l.forEach(a=>a(g)))}).catch(a=>{f===j&&(null==o||o(void 0,a))})};return f.persist={setOptions:a=>{h={...h,...a},a.storage&&(m=a.storage)},clearStorage:()=>{null==m||m.removeItem(h.name)},getOptions:()=>h,rehydrate:()=>q(),hasHydrated:()=>i,onHydrate:a=>(k.add(a),()=>{k.delete(a)}),onFinishHydration:a=>(l.add(a),()=>{l.delete(a)})},h.skipHydration||q(),g||p}},5439:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={getPreviouslyRevalidatedTags:function(){return w},getServerUtils:function(){return v},interpolateDynamicPath:function(){return t},normalizeCdnUrl:function(){return s},normalizeDynamicRouteParams:function(){return u}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(13973),g=c(41659),h=c(31797),i=c(71544),j=c(89964),k=c(77165),l=c(66796),m=c(47929),n=c(62018),o=c(23101),p=c(37525),q=c(95491);function r(a,b){for(let c in delete a.nextInternalLocale,a){let d=c!==m.NEXT_QUERY_PARAM_PREFIX&&c.startsWith(m.NEXT_QUERY_PARAM_PREFIX),e=c!==m.NEXT_INTERCEPTION_MARKER_PREFIX&&c.startsWith(m.NEXT_INTERCEPTION_MARKER_PREFIX);(d||e||b.includes(c))&&delete a[c]}}function s(a,b){let c=(0,p.parseReqUrl)(a.url);if(!c)return a.url;delete c.search,r(c.query,b),a.url=(0,q.formatUrl)(c)}function t(a,b,c){if(!c)return a;for(let d of Object.keys(c.groups)){let e,{optional:f,repeat:g}=c.groups[d],h=`[${g?"...":""}${d}]`;f&&(h=`[${h}]`);let i=b[d];((e=Array.isArray(i)?i.map(a=>a&&encodeURIComponent(a)).join("/"):i?encodeURIComponent(i):"")||f)&&(a=a.replaceAll(h,e))}return a}function u(a,b,c,d){let e={};for(let f of Object.keys(b.groups)){let g=a[f];"string"==typeof g?g=(0,l.normalizeRscURL)(g):Array.isArray(g)&&(g=g.map(l.normalizeRscURL));let h=c[f],i=b.groups[f].optional;if((Array.isArray(h)?h.some(a=>Array.isArray(g)?g.some(b=>b.includes(a)):null==g?void 0:g.includes(a)):null==g?void 0:g.includes(h))||void 0===g&&!(i&&d))return{params:{},hasValidParams:!1};i&&(!g||Array.isArray(g)&&1===g.length&&("index"===g[0]||g[0]===`[[...${f}]]`)||"index"===g||g===`[[...${f}]]`)&&(g=void 0,delete a[f]),g&&"string"==typeof g&&b.groups[f].repeat&&(g=g.split("/")),g&&(e[f]=g)}return{params:e,hasValidParams:!0}}function v({page:a,i18n:b,basePath:c,rewrites:d,pageIsDynamic:e,trailingSlash:l,caseSensitive:m}){let p,q,w;return e&&(p=(0,h.getNamedRouteRegex)(a,{prefixRouteKeys:!1}),w=(q=(0,i.getRouteMatcher)(p))(a)),{handleRewrites:function(h,i){let n=structuredClone(i),o={},p=n.pathname,r=d=>{let i=(0,g.getPathMatch)(d.source+(l?"(/)?":""),{removeUnnamedParams:!0,strict:!0,sensitive:!!m});if(!n.pathname)return!1;let k=i(n.pathname);if((d.has||d.missing)&&k){let a=(0,j.matchHas)(h,n.query,d.has,d.missing);a?Object.assign(k,a):k=!1}if(k){let{parsedDestination:g,destQuery:h}=(0,j.prepareDestination)({appendParamsToQuery:!0,destination:d.destination,params:k,query:n.query});if(g.protocol)return!0;if(Object.assign(o,h,k),Object.assign(n.query,g.query),delete g.query,Object.assign(n,g),!(p=n.pathname))return!1;if(c&&(p=p.replace(RegExp(`^${c}`),"")||"/"),b){let a=(0,f.normalizeLocalePath)(p,b.locales);p=a.pathname,n.query.nextInternalLocale=a.detectedLocale||k.nextInternalLocale}if(p===a)return!0;if(e&&q){let a=q(p);if(a)return n.query={...n.query,...a},!0}}return!1};for(let a of d.beforeFiles||[])r(a);if(p!==a){let b,c=!1;for(let a of d.afterFiles||[])if(c=r(a))break;if(!c&&!((b=(0,k.removeTrailingSlash)(p||""))===(0,k.removeTrailingSlash)(a)||(null==q?void 0:q(b)))){for(let a of d.fallback||[])if(c=r(a))break}}return{rewriteParams:o,rewrittenParsedUrl:n}},defaultRouteRegex:p,dynamicRouteMatcher:q,defaultRouteMatches:w,normalizeQueryParams:function(a,b){for(let[c,d]of(delete a.nextInternalLocale,Object.entries(a))){let e=(0,n.normalizeNextQueryParam)(c);e&&(delete a[c],b.add(e),void 0!==d&&(a[e]=Array.isArray(d)?d.map(a=>(0,o.decodeQueryPathParameter)(a)):(0,o.decodeQueryPathParameter)(d)))}},getParamsFromRouteMatches:function(a){if(!p)return null;let{groups:b,routeKeys:c}=p,d=(0,i.getRouteMatcher)({re:{exec:a=>{let d=Object.fromEntries(new URLSearchParams(a));for(let[a,b]of Object.entries(d)){let c=(0,n.normalizeNextQueryParam)(a);c&&(d[c]=b,delete d[a])}let e={};for(let a of Object.keys(c)){let f=c[a];if(!f)continue;let g=b[f],h=d[a];if(!g.optional&&!h)return null;e[g.pos]=h}return e}},groups:b})(a);return d||null},normalizeDynamicRouteParams:(a,b)=>p&&w?u(a,p,w,b):{params:{},hasValidParams:!1},normalizeCdnUrl:(a,b)=>s(a,b),interpolateDynamicPath:(a,b)=>t(a,b,p),filterInternalQuery:(a,b)=>r(a,b)}}function w(a,b){return"string"==typeof a[m.NEXT_CACHE_REVALIDATED_TAGS_HEADER]&&a[m.NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER]===b?a[m.NEXT_CACHE_REVALIDATED_TAGS_HEADER].split(","):[]}},7904:(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}function e(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}c.r(b),c.d(b,{_:()=>e})},10684:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={PARAM_SEPARATOR:function(){return e},hasAdjacentParameterIssues:function(){return f},normalizeAdjacentParameters:function(){return g},normalizeTokensForRegexp:function(){return h},stripNormalizedSeparators:function(){return i},stripParameterSeparators:function(){return j}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e="_NEXTSEP_";function f(a){return"string"==typeof a&&!!(/\/\(\.{1,3}\):[^/\s]+/.test(a)||/:[a-zA-Z_][a-zA-Z0-9_]*:[a-zA-Z_][a-zA-Z0-9_]*/.test(a))}function g(a){let b=a;return(b=b.replace(/(\([^)]*\)):([^/\s]+)/g,`$1${e}:$2`)).replace(/:([^:/\s)]+)(?=:)/g,`:$1${e}`)}function h(a){return a.map(a=>"object"==typeof a&&null!==a&&"modifier"in a&&("*"===a.modifier||"+"===a.modifier)&&"prefix"in a&&"suffix"in a&&""===a.prefix&&""===a.suffix?{...a,prefix:"/"}:a)}function i(a){return a.replace(RegExp(`\\)${e}`,"g"),")")}function j(a){let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.replace(RegExp(`^${e}`),""):Array.isArray(d)?b[c]=d.map(a=>"string"==typeof a?a.replace(RegExp(`^${e}`),""):a):b[c]=d;return b}},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)})}}},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}}),c.o(d,"useParams")&&c.d(b,{useParams:function(){return d.useParams}}),c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},23101:(a,b)=>{"use strict";function c(a){try{return decodeURIComponent(a)}catch{return a}}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"decodeQueryPathParameter",{enumerable:!0,get:function(){return c}})},23315:(a,b)=>{"use strict";function c(a){return a.replace(/\\/g,"/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"normalizePathSep",{enumerable:!0,get:function(){return c}})},27196:a=>{(()=>{"use strict";"u">typeof __nccwpck_require__&&(__nccwpck_require__.ab=__dirname+"/");var b={};(()=>{function a(a,b){void 0===b&&(b={});for(var c=function(a){for(var b=[],c=0;c<a.length;){var d=a[c];if("*"===d||"+"===d||"?"===d){b.push({type:"MODIFIER",index:c,value:a[c++]});continue}if("\\"===d){b.push({type:"ESCAPED_CHAR",index:c++,value:a[c++]});continue}if("{"===d){b.push({type:"OPEN",index:c,value:a[c++]});continue}if("}"===d){b.push({type:"CLOSE",index:c,value:a[c++]});continue}if(":"===d){for(var e="",f=c+1;f<a.length;){var g=a.charCodeAt(f);if(g>=48&&g<=57||g>=65&&g<=90||g>=97&&g<=122||95===g){e+=a[f++];continue}break}if(!e)throw TypeError("Missing parameter name at ".concat(c));b.push({type:"NAME",index:c,value:e}),c=f;continue}if("("===d){var h=1,i="",f=c+1;if("?"===a[f])throw TypeError('Pattern cannot start with "?" at '.concat(f));for(;f<a.length;){if("\\"===a[f]){i+=a[f++]+a[f++];continue}if(")"===a[f]){if(0==--h){f++;break}}else if("("===a[f]&&(h++,"?"!==a[f+1]))throw TypeError("Capturing groups are not allowed at ".concat(f));i+=a[f++]}if(h)throw TypeError("Unbalanced pattern at ".concat(c));if(!i)throw TypeError("Missing pattern at ".concat(c));b.push({type:"PATTERN",index:c,value:i}),c=f;continue}b.push({type:"CHAR",index:c,value:a[c++]})}return b.push({type:"END",index:c,value:""}),b}(a),d=b.prefixes,f=void 0===d?"./":d,g=b.delimiter,h=void 0===g?"/#?":g,i=[],j=0,k=0,l="",m=function(a){if(k<c.length&&c[k].type===a)return c[k++].value},n=function(a){var b=m(a);if(void 0!==b)return b;var d=c[k],e=d.type,f=d.index;throw TypeError("Unexpected ".concat(e," at ").concat(f,", expected ").concat(a))},o=function(){for(var a,b="";a=m("CHAR")||m("ESCAPED_CHAR");)b+=a;return b},p=function(a){for(var b=0;b<h.length;b++){var c=h[b];if(a.indexOf(c)>-1)return!0}return!1},q=function(a){var b=i[i.length-1],c=a||(b&&"string"==typeof b?b:"");if(b&&!c)throw TypeError('Must have text between two parameters, missing text after "'.concat(b.name,'"'));return!c||p(c)?"[^".concat(e(h),"]+?"):"(?:(?!".concat(e(c),")[^").concat(e(h),"])+?")};k<c.length;){var r=m("CHAR"),s=m("NAME"),t=m("PATTERN");if(s||t){var u=r||"";-1===f.indexOf(u)&&(l+=u,u=""),l&&(i.push(l),l=""),i.push({name:s||j++,prefix:u,suffix:"",pattern:t||q(u),modifier:m("MODIFIER")||""});continue}var v=r||m("ESCAPED_CHAR");if(v){l+=v;continue}if(l&&(i.push(l),l=""),m("OPEN")){var u=o(),w=m("NAME")||"",x=m("PATTERN")||"",y=o();n("CLOSE"),i.push({name:w||(x?j++:""),pattern:w&&!x?q(u):x,prefix:u,suffix:y,modifier:m("MODIFIER")||""});continue}n("END")}return i}function c(a,b){void 0===b&&(b={});var c=f(b),d=b.encode,e=void 0===d?function(a){return a}:d,g=b.validate,h=void 0===g||g,i=a.map(function(a){if("object"==typeof a)return new RegExp("^(?:".concat(a.pattern,")$"),c)});return function(b){for(var c="",d=0;d<a.length;d++){var f=a[d];if("string"==typeof f){c+=f;continue}var g=b?b[f.name]:void 0,j="?"===f.modifier||"*"===f.modifier,k="*"===f.modifier||"+"===f.modifier;if(Array.isArray(g)){if(!k)throw TypeError('Expected "'.concat(f.name,'" to not repeat, but got an array'));if(0===g.length){if(j)continue;throw TypeError('Expected "'.concat(f.name,'" to not be empty'))}for(var l=0;l<g.length;l++){var m=e(g[l],f);if(h&&!i[d].test(m))throw TypeError('Expected all "'.concat(f.name,'" to match "').concat(f.pattern,'", but got "').concat(m,'"'));c+=f.prefix+m+f.suffix}continue}if("string"==typeof g||"number"==typeof g){var m=e(String(g),f);if(h&&!i[d].test(m))throw TypeError('Expected "'.concat(f.name,'" to match "').concat(f.pattern,'", but got "').concat(m,'"'));c+=f.prefix+m+f.suffix;continue}if(!j){var n=k?"an array":"a string";throw TypeError('Expected "'.concat(f.name,'" to be ').concat(n))}}return c}}function d(a,b,c){void 0===c&&(c={});var d=c.decode,e=void 0===d?function(a){return a}:d;return function(c){var d=a.exec(c);if(!d)return!1;for(var f=d[0],g=d.index,h=Object.create(null),i=1;i<d.length;i++)!function(a){if(void 0!==d[a]){var c=b[a-1];"*"===c.modifier||"+"===c.modifier?h[c.name]=d[a].split(c.prefix+c.suffix).map(function(a){return e(a,c)}):h[c.name]=e(d[a],c)}}(i);return{path:f,index:g,params:h}}}function e(a){return a.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function f(a){return a&&a.sensitive?"":"i"}function g(a,b,c){void 0===c&&(c={});for(var d=c.strict,g=void 0!==d&&d,h=c.start,i=c.end,j=c.encode,k=void 0===j?function(a){return a}:j,l=c.delimiter,m=c.endsWith,n="[".concat(e(void 0===m?"":m),"]|$"),o="[".concat(e(void 0===l?"/#?":l),"]"),p=void 0===h||h?"^":"",q=0;q<a.length;q++){var r=a[q];if("string"==typeof r)p+=e(k(r));else{var s=e(k(r.prefix)),t=e(k(r.suffix));if(r.pattern)if(b&&b.push(r),s||t)if("+"===r.modifier||"*"===r.modifier){var u="*"===r.modifier?"?":"";p+="(?:".concat(s,"((?:").concat(r.pattern,")(?:").concat(t).concat(s,"(?:").concat(r.pattern,"))*)").concat(t,")").concat(u)}else p+="(?:".concat(s,"(").concat(r.pattern,")").concat(t,")").concat(r.modifier);else{if("+"===r.modifier||"*"===r.modifier)throw TypeError('Can not repeat "'.concat(r.name,'" without a prefix and suffix'));p+="(".concat(r.pattern,")").concat(r.modifier)}else p+="(?:".concat(s).concat(t,")").concat(r.modifier)}}if(void 0===i||i)g||(p+="".concat(o,"?")),p+=c.endsWith?"(?=".concat(n,")"):"$";else{var v=a[a.length-1],w="string"==typeof v?o.indexOf(v[v.length-1])>-1:void 0===v;g||(p+="(?:".concat(o,"(?=").concat(n,"))?")),w||(p+="(?=".concat(o,"|").concat(n,")"))}return new RegExp(p,f(c))}function h(b,c,d){if(b instanceof RegExp){var e;if(!c)return b;for(var i=/\((?:\?<(.*?)>)?(?!\?)/g,j=0,k=i.exec(b.source);k;)c.push({name:k[1]||j++,prefix:"",suffix:"",modifier:"",pattern:""}),k=i.exec(b.source);return b}return Array.isArray(b)?(e=b.map(function(a){return h(a,c,d).source}),new RegExp("(?:".concat(e.join("|"),")"),f(d))):g(a(b,d),c,d)}Object.defineProperty(b,"__esModule",{value:!0}),b.pathToRegexp=b.tokensToRegexp=b.regexpToFunction=b.match=b.tokensToFunction=b.compile=b.parse=void 0,b.parse=a,b.compile=function(b,d){return c(a(b,d),d)},b.tokensToFunction=c,b.match=function(a,b){var c=[];return d(h(a,c,b),c,b)},b.regexpToFunction=d,b.tokensToRegexp=g,b.pathToRegexp=h})(),a.exports=b})()},31383:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"escapeStringRegexp",{enumerable:!0,get:function(){return e}});let c=/[|\\{}()[\]^$+*?.-]/,d=/[|\\{}()[\]^$+*?.-]/g;function e(a){return c.test(a)?a.replace(d,"\\$&"):a}},31417:(a,b,c)=>{"use strict";c.d(b,{v:()=>g});var d=c(67484);let e=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},f=a=>{let b=a?e(a):e,c=a=>(function(a,b=a=>a){let c=d.useSyncExternalStore(a.subscribe,d.useCallback(()=>b(a.getState()),[a,b]),d.useCallback(()=>b(a.getInitialState()),[a,b]));return d.useDebugValue(c),c})(b,a);return Object.assign(c,b),c},g=a=>a?f(a):f},31797:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={getNamedMiddlewareRegex:function(){return p},getNamedRouteRegex:function(){return o},getRouteRegex:function(){return l}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(47929),g=c(32107),h=c(31383),i=c(77165),j=c(93646);function k(a,b,c){let d={},e=1,f=[];for(let k of(0,i.removeTrailingSlash)(a).slice(1).split("/")){let a=g.INTERCEPTION_ROUTE_MARKERS.find(a=>k.startsWith(a)),i=k.match(j.PARAMETER_PATTERN);if(a&&i&&i[2]){let{key:b,optional:c,repeat:g}=(0,j.parseMatchedParameter)(i[2]);d[b]={pos:e++,repeat:g,optional:c},f.push(`/${(0,h.escapeStringRegexp)(a)}([^/]+?)`)}else if(i&&i[2]){let{key:a,repeat:b,optional:g}=(0,j.parseMatchedParameter)(i[2]);d[a]={pos:e++,repeat:b,optional:g},c&&i[1]&&f.push(`/${(0,h.escapeStringRegexp)(i[1])}`);let k=b?g?"(?:/(.+?))?":"/(.+?)":"/([^/]+?)";c&&i[1]&&(k=k.substring(1)),f.push(k)}else f.push(`/${(0,h.escapeStringRegexp)(k)}`);b&&i&&i[3]&&f.push((0,h.escapeStringRegexp)(i[3]))}return{parameterizedRoute:f.join(""),groups:d}}function l(a,{includeSuffix:b=!1,includePrefix:c=!1,excludeOptionalTrailingSlash:d=!1}={}){let{parameterizedRoute:e,groups:f}=k(a,b,c),g=e;return d||(g+="(?:/)?"),{re:RegExp(`^${g}$`),groups:f}}function m({interceptionMarker:a,getSafeRouteKey:b,segment:c,routeKeys:d,keyPrefix:e,backreferenceDuplicateKeys:f}){let g,{key:i,optional:k,repeat:l}=(0,j.parseMatchedParameter)(c),n=i.replace(/\W/g,"");e&&(n=`${e}${n}`);let o=!1;(0===n.length||n.length>30)&&(o=!0),isNaN(parseInt(n.slice(0,1)))||(o=!0),o&&(n=b());let p=n in d;e?d[n]=`${e}${i}`:d[n]=i;let q=a?(0,h.escapeStringRegexp)(a):"";return g=p&&f?`\\k<${n}>`:l?`(?<${n}>.+?)`:`(?<${n}>[^/]+?)`,{key:i,pattern:k?`(?:/${q}${g})?`:`/${q}${g}`,cleanedKey:n,optional:k,repeat:l}}function n(a,b,c,d,e,k={names:{},intercepted:{}}){let l,o=(l=0,()=>{let a="",b=++l;for(;b>0;)a+=String.fromCharCode(97+(b-1)%26),b=Math.floor((b-1)/26);return a}),p={},q=[],r=[];for(let l of(k=structuredClone(k),(0,i.removeTrailingSlash)(a).slice(1).split("/"))){let a,i=g.INTERCEPTION_ROUTE_MARKERS.some(a=>l.startsWith(a)),n=l.match(j.PARAMETER_PATTERN),s=i?n?.[1]:void 0;if(s&&n?.[2]?(a=b?f.NEXT_INTERCEPTION_MARKER_PREFIX:void 0,k.intercepted[n[2]]=s):a=n?.[2]&&k.intercepted[n[2]]?b?f.NEXT_INTERCEPTION_MARKER_PREFIX:void 0:b?f.NEXT_QUERY_PARAM_PREFIX:void 0,s&&n&&n[2]){let{key:b,pattern:c,cleanedKey:d,repeat:f,optional:g}=m({getSafeRouteKey:o,interceptionMarker:s,segment:n[2],routeKeys:p,keyPrefix:a,backreferenceDuplicateKeys:e});q.push(c),r.push(`/${n[1]}:${k.names[b]??d}${f?g?"*":"+":""}`),k.names[b]??=d}else if(n&&n[2]){d&&n[1]&&(q.push(`/${(0,h.escapeStringRegexp)(n[1])}`),r.push(`/${n[1]}`));let{key:b,pattern:c,cleanedKey:f,repeat:g,optional:i}=m({getSafeRouteKey:o,segment:n[2],routeKeys:p,keyPrefix:a,backreferenceDuplicateKeys:e}),j=c;d&&n[1]&&(j=j.substring(1)),q.push(j),r.push(`/:${k.names[b]??f}${g?i?"*":"+":""}`),k.names[b]??=f}else q.push(`/${(0,h.escapeStringRegexp)(l)}`),r.push(`/${l}`);c&&n&&n[3]&&(q.push((0,h.escapeStringRegexp)(n[3])),r.push(n[3]))}return{namedParameterizedRoute:q.join(""),routeKeys:p,pathToRegexpPattern:r.join(""),reference:k}}function o(a,b){let c=n(a,b.prefixRouteKeys,b.includeSuffix??!1,b.includePrefix??!1,b.backreferenceDuplicateKeys??!1,b.reference),d=c.namedParameterizedRoute;return b.excludeOptionalTrailingSlash||(d+="(?:/)?"),{...l(a,b),namedRegex:`^${d}$`,routeKeys:c.routeKeys,pathToRegexpPattern:c.pathToRegexpPattern,reference:c.reference}}function p(a,b){let{parameterizedRoute:c}=k(a,!1,!1),{catchAll:d=!0}=b;if("/"===c)return{namedRegex:`^/${d?".*":""}$`};let{namedParameterizedRoute:e}=n(a,!1,!1,!1,!1,void 0);return{namedRegex:`^${e}${d?"(?:(/.*)?)":""}$`}}},36497:()=>{},41659:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getPathMatch",{enumerable:!0,get:function(){return e}});let d=c(27196);function e(a,b){let c=[],e=(0,d.pathToRegexp)(a,c,{delimiter:"/",sensitive:"boolean"==typeof b?.sensitive&&b.sensitive,strict:b?.strict}),f=(0,d.regexpToFunction)(b?.regexModifier?new RegExp(b.regexModifier(e.source),e.flags):e,c);return(a,d)=>{if("string"!=typeof a)return!1;let e=f(a);if(!e)return!1;if(b?.removeUnnamedParams)for(let a of c)"number"==typeof a.name&&delete e.params[a.name];return{...d,...e.params}}}},55091:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(5735),e=c(22675);function f(){return(0,d.jsx)(e.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},68097:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"parseUrl",{enumerable:!0,get:function(){return f}});let d=c(9787),e=c(49286);function f(a){if(a.startsWith("/"))return(0,e.parseRelativeUrl)(a);let b=new URL(a),c=b.username,f=b.password,g=c?f?`${c}:${f}`:c:null,h=b.pathname,i=b.search;return{auth:g,hash:b.hash,hostname:b.hostname,href:b.href,pathname:h,port:b.port,protocol:b.protocol,query:(0,d.searchParamsToUrlQuery)(b.searchParams),search:i,origin:b.origin,slashes:"//"===b.href.slice(b.protocol.length,b.protocol.length+2)}}},71544:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getRouteMatcher",{enumerable:!0,get:function(){return f}});let d=c(16433),e=c(89151);function f({re:a,groups:b}){return(0,e.safeRouteMatcher)(c=>{let e=a.exec(c);if(!e)return!1;let f=a=>{try{return decodeURIComponent(a)}catch{throw Object.defineProperty(new d.DecodeError("failed to decode param"),"__NEXT_ERROR_CODE",{value:"E528",enumerable:!1,configurable:!0})}},g={};for(let[a,c]of Object.entries(b)){let b=e[c.pos];void 0!==b&&(c.repeat?g[a]=b.split("/").map(a=>f(a)):g[a]=f(b))}return g})}},75329:a=>{a.exports={style:{fontFamily:"'Inter', 'Inter Fallback'",fontStyle:"normal"},className:"__className_f367f3",variable:"__variable_f367f3"}},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()}}},85420:(a,b)=>{"use strict";function c(a){return a.endsWith("/route")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isAppRouteRoute",{enumerable:!0,get:function(){return c}})},88868:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d,e={fillMetadataSegment:function(){return p},normalizeMetadataPageToRoute:function(){return r},normalizeMetadataRoute:function(){return q}};for(var f in e)Object.defineProperty(b,f,{enumerable:!0,get:e[f]});let g=c(93302),h=(d=c(16225))&&d.__esModule?d:{default:d},i=c(5439),j=c(31797),k=c(38462),l=c(66796),m=c(23315),n=c(64929);function o(a){let b=h.default.dirname(a);if(a.endsWith("/sitemap")||a.endsWith("/sitemap.xml"))return"";let c="";return b.split("/").some(a=>(0,n.isGroupSegment)(a)||(0,n.isParallelRouteSegment)(a))&&(c=(0,k.djb2Hash)(b).toString(36).slice(0,6)),c}function p(a,b,c,d){let e=(0,l.normalizeAppPath)(a),f=(0,j.getNamedRouteRegex)(e,{prefixRouteKeys:!1}),g=d?Object.keys(f.groups).reduce((a,b)=>{let{repeat:c}=f.groups[b];return a[b]=c?["-"]:"-",a},{}):b,k=(0,i.interpolateDynamicPath)(e,g,f),{name:n,ext:p}=h.default.parse(c),q=o(h.default.posix.join(a,n)),r=q?`-${q}`:"";return(0,m.normalizePathSep)(h.default.join(k,`${n}${r}${p}`))}function q(a){if(!(0,g.isMetadataPage)(a))return a;let b=a,c="";if("/robots"===a?b+=".txt":"/manifest"===a?b+=".webmanifest":c=o(a),!b.endsWith("/route")){let{dir:a,name:d,ext:e}=h.default.parse(b);b=h.default.posix.join(a,`${d}${c?`-${c}`:""}${e}`,"route")}return b}function r(a,b){let c=a.endsWith("/route"),d=c?a.slice(0,-6):a,e=d.endsWith("/sitemap")?".xml":"";return(b?`${d}/[__metadata_id__]`:`${d}${e}`)+(c?"/route":"")}},89151:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={safeCompile:function(){return i},safePathToRegexp:function(){return h},safeRegexpToFunction:function(){return j},safeRouteMatcher:function(){return k}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(27196),g=c(10684);function h(a,b,c){if("string"!=typeof a)return(0,f.pathToRegexp)(a,b,c);let d=(0,g.hasAdjacentParameterIssues)(a),e=d?(0,g.normalizeAdjacentParameters)(a):a;try{return(0,f.pathToRegexp)(e,b,c)}catch(e){if(!d)try{let d=(0,g.normalizeAdjacentParameters)(a);return(0,f.pathToRegexp)(d,b,c)}catch(a){}throw e}}function i(a,b){let c=(0,g.hasAdjacentParameterIssues)(a),d=c?(0,g.normalizeAdjacentParameters)(a):a;try{let a=(0,f.compile)(d,b);if(c)return b=>(0,g.stripNormalizedSeparators)(a(b));return a}catch(d){if(!c)try{let c=(0,g.normalizeAdjacentParameters)(a),d=(0,f.compile)(c,b);return a=>(0,g.stripNormalizedSeparators)(d(a))}catch(a){}throw d}}function j(a,b){let c=(0,f.regexpToFunction)(a,b||[]);return a=>{let b=c(a);return!!b&&{...b,params:(0,g.stripParameterSeparators)(b.params)}}}function k(a){return b=>{let c=a(b);return!!c&&(0,g.stripParameterSeparators)(c)}}},89964:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={compileNonPath:function(){return m},matchHas:function(){return l},parseDestination:function(){return n},prepareDestination:function(){return o}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(31383),g=c(68097),h=c(32107),i=c(85782),j=c(89151);function k(a){return a.replace(/__ESC_COLON_/gi,":")}function l(a,b,c=[],d=[]){let e={},f=c=>{let d,f=c.key;switch(c.type){case"header":f=f.toLowerCase(),d=a.headers[f];break;case"cookie":d="cookies"in a?a.cookies[c.key]:(0,i.getCookieParser)(a.headers)()[c.key];break;case"query":d=b[f];break;case"host":{let{host:b}=a?.headers||{};d=b?.split(":",1)[0].toLowerCase()}}if(!c.value&&d)return e[function(a){let b="";for(let c=0;c<a.length;c++){let d=a.charCodeAt(c);(d>64&&d<91||d>96&&d<123)&&(b+=a[c])}return b}(f)]=d,!0;if(d){let a=RegExp(`^${c.value}$`),b=Array.isArray(d)?d.slice(-1)[0].match(a):d.match(a);if(b)return Array.isArray(b)&&(b.groups?Object.keys(b.groups).forEach(a=>{e[a]=b.groups[a]}):"host"===c.type&&b[0]&&(e.host=b[0])),!0}return!1};return!(!c.every(a=>f(a))||d.some(a=>f(a)))&&e}function m(a,b){if(!a.includes(":"))return a;for(let c of Object.keys(b))a.includes(`:${c}`)&&(a=a.replace(RegExp(`:${c}\\*`,"g"),`:${c}--ESCAPED_PARAM_ASTERISKS`).replace(RegExp(`:${c}\\?`,"g"),`:${c}--ESCAPED_PARAM_QUESTION`).replace(RegExp(`:${c}\\+`,"g"),`:${c}--ESCAPED_PARAM_PLUS`).replace(RegExp(`:${c}(?!\\w)`,"g"),`--ESCAPED_PARAM_COLON${c}`));return a=a.replace(/(:|\*|\?|\+|\(|\)|\{|\})/g,"\\$1").replace(/--ESCAPED_PARAM_PLUS/g,"+").replace(/--ESCAPED_PARAM_COLON/g,":").replace(/--ESCAPED_PARAM_QUESTION/g,"?").replace(/--ESCAPED_PARAM_ASTERISKS/g,"*"),(0,j.safeCompile)(`/${a}`,{validate:!1})(b).slice(1)}function n(a){let b=a.destination;for(let c of Object.keys({...a.params,...a.query}))c&&(b=b.replace(RegExp(`:${(0,f.escapeStringRegexp)(c)}`,"g"),`__ESC_COLON_${c}`));let c=(0,g.parseUrl)(b),d=c.pathname;d&&(d=k(d));let e=c.href;e&&(e=k(e));let h=c.hostname;h&&(h=k(h));let i=c.hash;i&&(i=k(i));let j=c.search;j&&(j=k(j));let l=c.origin;return l&&(l=k(l)),{...c,pathname:d,hostname:h,href:e,hash:i,search:j,origin:l}}function o(a){let b,c,d=n(a),{hostname:e,query:f,search:g}=d,i=d.pathname;d.hash&&(i=`${i}${d.hash}`);let l=[],o=[];for(let a of((0,j.safePathToRegexp)(i,o),o))l.push(a.name);if(e){let a=[];for(let b of((0,j.safePathToRegexp)(e,a),a))l.push(b.name)}let p=(0,j.safeCompile)(i,{validate:!1});for(let[c,d]of(e&&(b=(0,j.safeCompile)(e,{validate:!1})),Object.entries(f)))Array.isArray(d)?f[c]=d.map(b=>m(k(b),a.params)):"string"==typeof d&&(f[c]=m(k(d),a.params));let q=Object.keys(a.params).filter(a=>"nextInternalLocale"!==a);if(a.appendParamsToQuery&&!q.some(a=>l.includes(a)))for(let b of q)b in f||(f[b]=a.params[b]);if((0,h.isInterceptionRouteAppPath)(i))for(let b of i.split("/")){let c=h.INTERCEPTION_ROUTE_MARKERS.find(a=>b.startsWith(a));if(c){"(..)(..)"===c?(a.params["0"]="(..)",a.params["1"]="(..)"):a.params["0"]=c;break}}try{let[e,f]=(c=p(a.params)).split("#",2);b&&(d.hostname=b(a.params)),d.pathname=e,d.hash=`${f?"#":""}${f||""}`,d.search=g?m(g,a.params):""}catch(a){if(a.message.match(/Expected .*? to not repeat, but got an array/))throw Object.defineProperty(Error("To use a multi-match in the destination you must add `*` at the end of the param name to signify it should repeat. https://nextjs.org/docs/messages/invalid-multi-match"),"__NEXT_ERROR_CODE",{value:"E329",enumerable:!1,configurable:!0});throw a}return d.query={...a.query,...d.query},{newUrl:c,destQuery:f,parsedDestination:d}}},93302:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={DEFAULT_METADATA_ROUTE_EXTENSIONS:function(){return j},STATIC_METADATA_IMAGES:function(){return i},getExtensionRegexString:function(){return k},isMetadataPage:function(){return u},isMetadataRoute:function(){return v},isMetadataRouteFile:function(){return s},isStaticMetadataFile:function(){return l},isStaticMetadataRoute:function(){return t}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(23315),g=c(66796),h=c(85420),i={icon:{filename:"icon",extensions:["ico","jpg","jpeg","png","svg"]},apple:{filename:"apple-icon",extensions:["jpg","jpeg","png"]},favicon:{filename:"favicon",extensions:["ico"]},openGraph:{filename:"opengraph-image",extensions:["jpg","jpeg","png","gif"]},twitter:{filename:"twitter-image",extensions:["jpg","jpeg","png","gif"]}},j=["js","jsx","ts","tsx"],k=(a,b)=>b&&0!==b.length?`(?:\\.(${a.join("|")})|(\\.(${b.join("|")})))`:`(\\.(?:${a.join("|")}))`;function l(a){return s(a,[],!0)}let m=/^[\\/]favicon\.ico$/,n=/^[\\/]robots\.txt$/,o=/^[\\/]manifest\.json$/,p=/^[\\/]manifest\.webmanifest$/,q=/[\\/]sitemap\.xml$/,r=new Map;function s(a,b,c){if(!a||a.length<2)return!1;let d=(0,f.normalizePathSep)(a),e=!!(m.test(d)||n.test(d)||o.test(d)||p.test(d)||q.test(d))||(!!d.includes("robots")||!!d.includes("manifest")||!!d.includes("sitemap")||!!d.includes("icon")||!!d.includes("apple-icon")||!!d.includes("opengraph-image")||!!d.includes("twitter-image")||!!d.includes("favicon"))&&null;if(null!==e)return e;let g=function(a,b){let c=`${a.join(",")}|${b}`,d=r.get(c);if(d)return d;let e=b?"$":"?$",f="\\d?"+(b?"":"(-\\w{6})?"),g=a.length>0?[...a,"txt"]:["txt"],h=a.length>0?[...a,"webmanifest","json"]:["webmanifest","json"],j=[RegExp(`^[\\\\/]robots${k(g,null)}${e}`),RegExp(`^[\\\\/]manifest${k(h,null)}${e}`),RegExp(`[\\\\/]sitemap${k(["xml"],a)}${e}`),RegExp(`[\\\\/]icon${f}${k(i.icon.extensions,a)}${e}`),RegExp(`[\\\\/]apple-icon${f}${k(i.apple.extensions,a)}${e}`),RegExp(`[\\\\/]opengraph-image${f}${k(i.openGraph.extensions,a)}${e}`),RegExp(`[\\\\/]twitter-image${f}${k(i.twitter.extensions,a)}${e}`)];return r.set(c,j),j}(b,c);for(let a=0;a<g.length;a++)if(g[a].test(d))return!0;return!1}function t(a){let b=a.replace(/\/route$/,"");return(0,h.isAppRouteRoute)(a)&&s(b,[],!0)&&"/robots.txt"!==b&&"/manifest.webmanifest"!==b&&!b.endsWith("/sitemap.xml")}function u(a){return!(0,h.isAppRouteRoute)(a)&&s(a,[],!1)}function v(a){let b=(0,g.normalizeAppPath)(a).replace(/^\/?app\//,"").replace("/[__metadata_id__]","").replace(/\/route$/,"");return"/"!==b[0]&&(b="/"+b),(0,h.isAppRouteRoute)(a)&&s(b,[],!1)}},93646:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={PARAMETER_PATTERN:function(){return l},getDynamicParam:function(){return k},interpolateParallelRouteParams:function(){return j},parseMatchedParameter:function(){return n},parseParameter:function(){return m}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(72339),g=c(92122),h=c(4772),i=c(86070);function j(a,b,c,d){let e=structuredClone(b),j=[{tree:a,depth:0}],k=(0,h.parseAppRoute)(c,!0);for(;j.length>0;){let{tree:a,depth:b}=j.pop(),{segment:c,parallelRoutes:l}=(0,g.parseLoaderTree)(a),m=(0,h.parseAppRouteSegment)(c);if(m?.type==="dynamic"&&!e.hasOwnProperty(m.param.paramName)&&!d?.has(m.param.paramName)){let{paramName:a,paramType:c}=m.param,d=(0,i.resolveParamValue)(a,c,b,k,e);if(void 0!==d)e[a]=d;else if("optional-catchall"!==c)throw Object.defineProperty(new f.InvariantError(`Could not resolve param value for segment: ${a}`),"__NEXT_ERROR_CODE",{value:"E932",enumerable:!1,configurable:!0})}let n=b;for(let a of(m&&"route-group"!==m.type&&"parallel-route"!==m.type&&n++,Object.values(l)))j.push({tree:a,depth:n})}return e}function k(a,b,c,d,e){let g=function(a,b,c){let d=a[b];if(c?.has(b)){let[a]=c.get(b);d=a}else Array.isArray(d)?d=d.map(a=>encodeURIComponent(a)):"string"==typeof d&&(d=encodeURIComponent(d));return d}(a,b,d);if(!g||0===g.length){if("oc"===c)return{param:b,value:null,type:c,treeSegment:[b,"",c,e]};throw Object.defineProperty(new f.InvariantError(`Missing value for segment key: "${b}" with dynamic param type: ${c}`),"__NEXT_ERROR_CODE",{value:"E864",enumerable:!1,configurable:!0})}let h=Array.isArray(g)?g.join("/"):g;return{param:b,value:g,treeSegment:[b,h,c,e],type:c}}let l=/^([^[]*)\[((?:\[[^\]]*\])|[^\]]+)\](.*)$/;function m(a){let b=a.match(l);return b?n(b[2]):n(a)}function n(a){let b=a.startsWith("[")&&a.endsWith("]");b&&(a=a.slice(1,-1));let c=a.startsWith("...");return c&&(a=a.slice(3)),{key:a,repeat:c,optional:b}}},95491:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={formatUrl:function(){return h},formatWithValidation:function(){return j},urlObjectKeys:function(){return i}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(7904)._(c(9787)),g=/https?|ftp|gopher|file/;function h(a){let{auth:b,hostname:c}=a,d=a.protocol||"",e=a.pathname||"",h=a.hash||"",i=a.query||"",j=!1;b=b?encodeURIComponent(b).replace(/%3A/i,":")+"@":"",a.host?j=b+a.host:c&&(j=b+(~c.indexOf(":")?`[${c}]`:c),a.port&&(j+=":"+a.port)),i&&"object"==typeof i&&(i=String(f.urlQueryToSearchParams(i)));let k=a.search||i&&`?${i}`||"";return d&&!d.endsWith(":")&&(d+=":"),a.slashes||(!d||g.test(d))&&!1!==j?(j="//"+(j||""),e&&"/"!==e[0]&&(e="/"+e)):j||(j=""),h&&"#"!==h[0]&&(h="#"+h),k&&"?"!==k[0]&&(k="?"+k),e=e.replace(/[?#]/g,encodeURIComponent),k=k.replace("#","%23"),`${d}${j}${e}${k}${h}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function j(a){return h(a)}}};
|