omniroute 2.8.1 → 2.8.2
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 +1 -0
- package/app/.next/build-manifest.json +2 -2
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/routes-manifest.json +6 -0
- package/app/.next/server/app/(dashboard)/dashboard/a2a/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/a2a/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/a2a/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/agents/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/agents/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/agents/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- 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 +1 -1
- 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/costs/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
- 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/health/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mcp/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mcp/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mcp/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page.js +1 -1
- 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/playground/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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/search-tools/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/search-tools/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/search-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +1 -1
- 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 +1 -1
- 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/400/page.js +1 -1
- package/app/.next/server/app/400/page.js.nft.json +1 -1
- package/app/.next/server/app/400/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/401/page.js +1 -1
- package/app/.next/server/app/401/page.js.nft.json +1 -1
- package/app/.next/server/app/401/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/403/page.js +1 -1
- package/app/.next/server/app/403/page.js.nft.json +1 -1
- package/app/.next/server/app/403/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/408/page.js +1 -1
- package/app/.next/server/app/408/page.js.nft.json +1 -1
- package/app/.next/server/app/408/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/429/page.js +1 -1
- package/app/.next/server/app/429/page.js.nft.json +1 -1
- package/app/.next/server/app/429/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/500/page.js +1 -1
- package/app/.next/server/app/500/page.js.nft.json +1 -1
- package/app/.next/server/app/500/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/502/page.js +1 -1
- package/app/.next/server/app/502/page.js.nft.json +1 -1
- package/app/.next/server/app/502/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/503/page.js +1 -1
- package/app/.next/server/app/503/page.js.nft.json +1 -1
- package/app/.next/server/app/503/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error/page.js +1 -1
- package/app/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next/server/app/_global-error.html +2 -2
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.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 +1 -1
- 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/api/acp/agents/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cache/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/backups/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/backups/route.js.nft.json +1 -1
- 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.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-profiles/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/status/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/auth/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/compliance/audit-log/route.js.nft.json +1 -1
- package/app/.next/server/app/api/db-backups/export/route.js.nft.json +1 -1
- package/app/.next/server/app/api/db-backups/exportAll/route.js.nft.json +1 -1
- package/app/.next/server/app/api/db-backups/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/db-backups/route.js.nft.json +1 -1
- package/app/.next/server/app/api/fallback/chains/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next/server/app/api/logs/console/route.js.nft.json +1 -1
- package/app/.next/server/app/api/logs/detail/route.js.nft.json +1 -1
- package/app/.next/server/app/api/logs/export/route/app-paths-manifest.json +3 -0
- package/app/.next/server/app/api/logs/export/route/build-manifest.json +11 -0
- package/app/.next/server/app/api/logs/export/route/server-reference-manifest.json +4 -0
- package/app/.next/server/app/api/logs/export/route.js +7 -0
- package/app/.next/server/app/api/logs/export/route.js.map +5 -0
- package/app/.next/server/app/api/logs/export/route.js.nft.json +1 -0
- package/app/.next/server/app/api/logs/export/route_client-reference-manifest.js +2 -0
- package/app/.next/server/app/api/mcp/sse/route.js.nft.json +1 -1
- package/app/.next/server/app/api/mcp/status/route.js.nft.json +1 -1
- package/app/.next/server/app/api/mcp/stream/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/catalog/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/openrouter-catalog/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/monitoring/health/route.js.nft.json +1 -1
- 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.nft.json +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next/server/app/api/policies/route.js.nft.json +1 -1
- package/app/.next/server/app/api/pricing/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next/server/app/api/pricing/sync/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-metrics/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/route.js.nft.json +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]/refresh/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/rate-limits/route.js.nft.json +1 -1
- package/app/.next/server/app/api/resilience/reset/route.js.nft.json +1 -1
- package/app/.next/server/app/api/resilience/route.js.nft.json +1 -1
- package/app/.next/server/app/api/search/providers/route.js.nft.json +1 -1
- package/app/.next/server/app/api/search/stats/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/background-degradation/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/codex-service-tier/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/combo-defaults/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/model-aliases/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxies/assignments/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxies/bulk-assign/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxies/health/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxies/migrate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxies/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxy/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/system-prompt/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/task-routing/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/thinking-budget/route.js.nft.json +1 -1
- package/app/.next/server/app/api/storage/health/route.js +1 -1
- package/app/.next/server/app/api/storage/health/route.js.nft.json +1 -1
- package/app/.next/server/app/api/sync/cloud/route.js.nft.json +1 -1
- package/app/.next/server/app/api/sync/initialize/route.js.nft.json +1 -1
- package/app/.next/server/app/api/system/version/route.js.nft.json +1 -1
- package/app/.next/server/app/api/token-health/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/analytics/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/budget/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/call-logs/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/call-logs/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/usage/proxy-logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/quota/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/request-logs/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/completions/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/v1/management/proxies/assignments/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/management/proxies/bulk-assign/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/management/proxies/health/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/management/proxies/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/music/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/responses/[...path]/route.js.nft.json +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.nft.json +1 -1
- package/app/.next/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next/server/app/callback/page.js +1 -1
- 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/docs/page.js +1 -1
- package/app/.next/server/app/docs/page.js.nft.json +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden/page.js +1 -1
- package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password/page.js +1 -1
- package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing/page.js +1 -1
- 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/login/page.js +1 -1
- 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/maintenance/page.js +1 -1
- package/app/.next/server/app/maintenance/page.js.nft.json +1 -1
- package/app/.next/server/app/maintenance/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/offline/page.js +1 -1
- package/app/.next/server/app/offline/page.js.nft.json +1 -1
- package/app/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/page.js +1 -1
- 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/privacy/page.js +1 -1
- package/app/.next/server/app/privacy/page.js.nft.json +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/status/page.js +1 -1
- package/app/.next/server/app/status/page.js.nft.json +1 -1
- package/app/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms/page.js +1 -1
- package/app/.next/server/app/terms/page.js.nft.json +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app-paths-manifest.json +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__09c944b3._.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__52346ca4._.js → [root-of-the-server]__561d1987._.js} +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__7d9b23e7._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__80e3bfc3._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__84e445b2._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__85096f79._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__9230ee98._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__92cb0def._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__a4403ad8._.js +3 -0
- package/app/.next/server/chunks/{[root-of-the-server]__87186578._.js → [root-of-the-server]__d142dcb5._.js} +2 -2
- package/app/.next/server/chunks/{[root-of-the-server]__dc47ee64._.js → [root-of-the-server]__d4563e10._.js} +3 -3
- package/app/.next/server/chunks/{[root-of-the-server]__43a4e384._.js → [root-of-the-server]__d780e24b._.js} +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__db2f9fe0._.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__167585da._.js → [root-of-the-server]__e27a89bd._.js} +3 -3
- package/app/.next/server/chunks/_05c48915._.js +1 -1
- package/app/.next/server/chunks/_1244636c._.js +3 -3
- package/app/.next/server/chunks/_2115d8de._.js +1 -1
- package/app/.next/server/chunks/_3ac953eb._.js +1 -1
- package/app/.next/server/chunks/_4b8fd853._.js +1 -1
- package/app/.next/server/chunks/_68683848._.js +1 -1
- package/app/.next/server/chunks/_ee9b677b._.js +1 -1
- package/app/.next/server/chunks/_next-internal_server_app_api_logs_export_route_actions_659d16c3.js +3 -0
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_0fddbb51._.js +1 -1
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_4245a86e._.js +1 -1
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_65de0558._.js +1 -1
- package/app/.next/server/chunks/ssr/{[root-of-the-server]__efdd7f81._.js → [root-of-the-server]__7ae68a0e._.js} +2 -2
- package/app/.next/server/chunks/ssr/[root-of-the-server]__9affb65e._.js +1 -1
- package/app/.next/server/chunks/ssr/[root-of-the-server]__a6942102._.js +1 -1
- package/app/.next/server/chunks/ssr/{[root-of-the-server]__788f5583._.js → [root-of-the-server]__b6544c47._.js} +2 -2
- package/app/.next/server/chunks/ssr/src_5dd5869e._.js +1 -1
- package/app/.next/server/chunks/ssr/src_app_(dashboard)_dashboard_settings_pricing_page_tsx_5aff4262._.js +1 -1
- package/app/.next/server/chunks/ssr/src_shared_constants_pricing_ts_a704230a._.js +1 -1
- package/app/.next/server/middleware.js +1 -1
- package/app/.next/server/pages/500.html +2 -2
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/chunks/{b5cc103e16794392.js → 18934c9ed2a28555.js} +1 -1
- package/app/.next/static/chunks/374fe2b2c612c189.js +1 -0
- package/app/.next/static/chunks/{1ef9ea85406a01d6.js → 8ec4e086bf58dca6.js} +1 -1
- package/app/.next/static/chunks/af071ff826ecff1b.css +1 -0
- package/app/CHANGELOG.md +20 -0
- package/app/docs/openapi.yaml +1 -1
- package/app/open-sse/handlers/chatCore.ts +14 -8
- package/app/open-sse/utils/stream.ts +27 -0
- package/app/package-lock.json +2 -2
- package/app/package.json +1 -1
- package/app/src/app/(dashboard)/dashboard/logs/page.tsx +119 -11
- package/app/src/app/api/logs/export/route.ts +58 -0
- package/app/src/shared/constants/pricing.ts +71 -1
- package/package.json +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__4308f91a._.js +0 -3
- package/app/.next/static/chunks/02afac1b585d8219.css +0 -1
- package/app/.next/static/chunks/b36fd5a7c702d808.js +0 -1
- /package/app/.next/static/{JoLoKHY_9DVANe7Qs4D0K → sRyjByTPg8ioL4UQ1sX-q}/_buildManifest.js +0 -0
- /package/app/.next/static/{JoLoKHY_9DVANe7Qs4D0K → sRyjByTPg8ioL4UQ1sX-q}/_clientMiddlewareManifest.json +0 -0
- /package/app/.next/static/{JoLoKHY_9DVANe7Qs4D0K → sRyjByTPg8ioL4UQ1sX-q}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
|
|
2
|
-
globalThis.__RSC_MANIFEST["/terms/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":339756,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":339756,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":837457,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":837457,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":347257,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":347257,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":768017,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":768017,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":897367,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":897367,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/src/app/global-error.tsx <module evaluation>":{"id":563491,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/src/app/global-error.tsx":{"id":563491,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/src/shared/components/ThemeProvider.tsx <module evaluation>":{"id":450222,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":true},"[project]/src/shared/components/ThemeProvider.tsx":{"id":450222,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":true},"[project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js <module evaluation>":{"id":175696,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":false},"[project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js":{"id":175696,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":false},"[project]/src/app/error.tsx <module evaluation>":{"id":758298,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/beeffe5f5394be33.js"],"async":false},"[project]/src/app/error.tsx":{"id":758298,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/beeffe5f5394be33.js"],"async":false},"[project]/src/app/loading.tsx <module evaluation>":{"id":790392,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f79cbcb7ca904f94.js"],"async":false},"[project]/src/app/loading.tsx":{"id":790392,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f79cbcb7ca904f94.js"],"async":false},"[project]/src/app/not-found.tsx <module evaluation>":{"id":329306,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f51538785d2d89a5.js"],"async":false},"[project]/src/app/not-found.tsx":{"id":329306,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f51538785d2d89a5.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":522016,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/a53ec3f73e2e9d76.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js":{"id":522016,"name":"*","chunks":["/_next/static/chunks/b5cc103e16794392.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/a53ec3f73e2e9d76.js"],"async":false}},"ssrModuleMapping":{"339756":{"*":{"id":802420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"837457":{"*":{"id":324017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"347257":{"*":{"id":877682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"92825":{"*":{"id":697296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"768017":{"*":{"id":861660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"27201":{"*":{"id":660704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"897367":{"*":{"id":990574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"563491":{"*":{"id":537006,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"450222":{"*":{"id":561487,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js"],"async":true}},"175696":{"*":{"id":588788,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js"],"async":false}},"758298":{"*":{"id":123953,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/src_app_error_tsx_22278d09._.js"],"async":false}},"790392":{"*":{"id":42816,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/src_9607843e._.js"],"async":false}},"329306":{"*":{"id":336394,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/_8cfab48b._.js","server/chunks/ssr/node_modules_next_dist_c2965c68._.js"],"async":false}},"522016":{"*":{"id":238246,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/node_modules_next_becc837c._.js","server/chunks/ssr/node_modules_next_dist_c2965c68._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"339756":{"*":{"id":926768,"name":"*","chunks":[],"async":false}},"837457":{"*":{"id":517910,"name":"*","chunks":[],"async":false}},"347257":{"*":{"id":292977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":348552,"name":"*","chunks":[],"async":false}},"768017":{"*":{"id":683919,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":340771,"name":"*","chunks":[],"async":false}},"897367":{"*":{"id":724150,"name":"*","chunks":[],"async":false}},"563491":{"*":{"id":530269,"name":"*","chunks":[],"async":false}},"450222":{"*":{"id":898658,"name":"*","chunks":[],"async":false}},"175696":{"*":{"id":152265,"name":"*","chunks":[],"async":false}},"758298":{"*":{"id":780257,"name":"*","chunks":[],"async":false}},"790392":{"*":{"id":562386,"name":"*","chunks":[],"async":false}},"329306":{"*":{"id":204145,"name":"*","chunks":[],"async":false}},"522016":{"*":{"id":784707,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/global-error":[],"[project]/src/app/layout":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/02afac1b585d8219.css","inlined":false}],"[project]/src/app/error":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/02afac1b585d8219.css","inlined":false}],"[project]/src/app/loading":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/02afac1b585d8219.css","inlined":false}],"[project]/src/app/not-found":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/02afac1b585d8219.css","inlined":false}],"[project]/src/app/terms/page":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/02afac1b585d8219.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/global-error":["static/chunks/d245df73b72378fb.js","static/chunks/16ea27c3b926bc31.js"],"[project]/src/app/layout":["static/chunks/b5cc103e16794392.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js"],"[project]/src/app/error":["static/chunks/b5cc103e16794392.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/beeffe5f5394be33.js"],"[project]/src/app/loading":["static/chunks/b5cc103e16794392.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/f79cbcb7ca904f94.js"],"[project]/src/app/not-found":["static/chunks/b5cc103e16794392.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/f51538785d2d89a5.js"],"[project]/src/app/terms/page":["static/chunks/b5cc103e16794392.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/a53ec3f73e2e9d76.js"]}}
|
|
2
|
+
globalThis.__RSC_MANIFEST["/terms/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":339756,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":339756,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":837457,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":837457,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":347257,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":347257,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":768017,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":768017,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":897367,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":897367,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/src/app/global-error.tsx <module evaluation>":{"id":563491,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/src/app/global-error.tsx":{"id":563491,"name":"*","chunks":["/_next/static/chunks/d245df73b72378fb.js","/_next/static/chunks/16ea27c3b926bc31.js"],"async":false},"[project]/src/shared/components/ThemeProvider.tsx <module evaluation>":{"id":450222,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":true},"[project]/src/shared/components/ThemeProvider.tsx":{"id":450222,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":true},"[project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js <module evaluation>":{"id":175696,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":false},"[project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js":{"id":175696,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js"],"async":false},"[project]/src/app/error.tsx <module evaluation>":{"id":758298,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/beeffe5f5394be33.js"],"async":false},"[project]/src/app/error.tsx":{"id":758298,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/beeffe5f5394be33.js"],"async":false},"[project]/src/app/loading.tsx <module evaluation>":{"id":790392,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f79cbcb7ca904f94.js"],"async":false},"[project]/src/app/loading.tsx":{"id":790392,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f79cbcb7ca904f94.js"],"async":false},"[project]/src/app/not-found.tsx <module evaluation>":{"id":329306,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f51538785d2d89a5.js"],"async":false},"[project]/src/app/not-found.tsx":{"id":329306,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/f51538785d2d89a5.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":522016,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/a53ec3f73e2e9d76.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js":{"id":522016,"name":"*","chunks":["/_next/static/chunks/18934c9ed2a28555.js","/_next/static/chunks/37e9976d0367faad.js","/_next/static/chunks/3073ed4e47d4d993.js","/_next/static/chunks/a53ec3f73e2e9d76.js"],"async":false}},"ssrModuleMapping":{"339756":{"*":{"id":802420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"837457":{"*":{"id":324017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"347257":{"*":{"id":877682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"92825":{"*":{"id":697296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"768017":{"*":{"id":861660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"27201":{"*":{"id":660704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"897367":{"*":{"id":990574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"563491":{"*":{"id":537006,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9a0bc6cc._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"450222":{"*":{"id":561487,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js"],"async":true}},"175696":{"*":{"id":588788,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js"],"async":false}},"758298":{"*":{"id":123953,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/src_app_error_tsx_22278d09._.js"],"async":false}},"790392":{"*":{"id":42816,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/src_9607843e._.js"],"async":false}},"329306":{"*":{"id":336394,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/_8cfab48b._.js","server/chunks/ssr/node_modules_next_dist_c2965c68._.js"],"async":false}},"522016":{"*":{"id":238246,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__9affb65e._.js","server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_ca139740.js","server/chunks/ssr/_19b3d5b1._.js","server/chunks/ssr/node_modules_next_becc837c._.js","server/chunks/ssr/node_modules_next_dist_c2965c68._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"339756":{"*":{"id":926768,"name":"*","chunks":[],"async":false}},"837457":{"*":{"id":517910,"name":"*","chunks":[],"async":false}},"347257":{"*":{"id":292977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":348552,"name":"*","chunks":[],"async":false}},"768017":{"*":{"id":683919,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":340771,"name":"*","chunks":[],"async":false}},"897367":{"*":{"id":724150,"name":"*","chunks":[],"async":false}},"563491":{"*":{"id":530269,"name":"*","chunks":[],"async":false}},"450222":{"*":{"id":898658,"name":"*","chunks":[],"async":false}},"175696":{"*":{"id":152265,"name":"*","chunks":[],"async":false}},"758298":{"*":{"id":780257,"name":"*","chunks":[],"async":false}},"790392":{"*":{"id":562386,"name":"*","chunks":[],"async":false}},"329306":{"*":{"id":204145,"name":"*","chunks":[],"async":false}},"522016":{"*":{"id":784707,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/global-error":[],"[project]/src/app/layout":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/af071ff826ecff1b.css","inlined":false}],"[project]/src/app/error":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/af071ff826ecff1b.css","inlined":false}],"[project]/src/app/loading":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/af071ff826ecff1b.css","inlined":false}],"[project]/src/app/not-found":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/af071ff826ecff1b.css","inlined":false}],"[project]/src/app/terms/page":[{"path":"static/chunks/665dc3aa4aa2d85c.css","inlined":false},{"path":"static/chunks/af071ff826ecff1b.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/global-error":["static/chunks/d245df73b72378fb.js","static/chunks/16ea27c3b926bc31.js"],"[project]/src/app/layout":["static/chunks/18934c9ed2a28555.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js"],"[project]/src/app/error":["static/chunks/18934c9ed2a28555.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/beeffe5f5394be33.js"],"[project]/src/app/loading":["static/chunks/18934c9ed2a28555.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/f79cbcb7ca904f94.js"],"[project]/src/app/not-found":["static/chunks/18934c9ed2a28555.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/f51538785d2d89a5.js"],"[project]/src/app/terms/page":["static/chunks/18934c9ed2a28555.js","static/chunks/37e9976d0367faad.js","static/chunks/3073ed4e47d4d993.js","static/chunks/a53ec3f73e2e9d76.js"]}}
|
|
@@ -84,6 +84,7 @@
|
|
|
84
84
|
"/api/keys/route": "app/api/keys/route.js",
|
|
85
85
|
"/api/logs/console/route": "app/api/logs/console/route.js",
|
|
86
86
|
"/api/logs/detail/route": "app/api/logs/detail/route.js",
|
|
87
|
+
"/api/logs/export/route": "app/api/logs/export/route.js",
|
|
87
88
|
"/api/mcp/audit/route": "app/api/mcp/audit/route.js",
|
|
88
89
|
"/api/mcp/audit/stats/route": "app/api/mcp/audit/stats/route.js",
|
|
89
90
|
"/api/mcp/sse/route": "app/api/mcp/sse/route.js",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[918622,(e,t,i)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,i)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,i)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,i)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,i)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,i)=>{"use strict";var o=Object.defineProperty,r=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,n={},c={RequestCookies:()=>b,ResponseCookies:()=>y,parseCookie:()=>d,parseSetCookie:()=>u,stringifyCookie:()=>p};for(var l in c)o(n,l,{get:c[l],enumerable:!0});function p(e){var t;let i=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),o=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===i.length?o:`${o}; ${i.join("; ")}`}function d(e){let t=new Map;for(let i of e.split(/; */)){if(!i)continue;let e=i.indexOf("=");if(-1===e){t.set(i,"true");continue}let[o,r]=[i.slice(0,e),i.slice(e+1)];try{t.set(o,decodeURIComponent(null!=r?r:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,i],...o]=d(e),{domain:r,expires:s,httponly:a,maxage:n,path:c,samesite:l,secure:p,partitioned:u,priority:b}=Object.fromEntries(o.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var y,g,x={name:t,value:decodeURIComponent(i),domain:r,...s&&{expires:new Date(s)},...a&&{httpOnly:!0},..."string"==typeof n&&{maxAge:Number(n)},path:c,...l&&{sameSite:m.includes(y=(y=l).toLowerCase())?y:void 0},...p&&{secure:!0},...b&&{priority:h.includes(g=(g=b).toLowerCase())?g:void 0},...u&&{partitioned:!0}};let e={};for(let t in x)x[t]&&(e[t]=x[t]);return e}}t.exports=((e,t,i,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of s(t))a.call(e,i)||void 0===i||o(e,i,{get:()=>t[i],enumerable:!(n=r(t,i))||n.enumerable});return e})(o({},"__esModule",{value:!0}),n);var m=["strict","lax","none"],h=["low","medium","high"],b=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,i]of d(t))this._parsed.set(e,{name:e,value:i})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed);if(!e.length)return i.map(([e,t])=>t);let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(([e])=>e===o).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,i]=1===e.length?[e[0].name,e[0].value]:e,o=this._parsed;return o.set(t,{name:t,value:i}),this._headers.set("cookie",Array.from(o).map(([e,t])=>p(t)).join("; ")),this}delete(e){let t=this._parsed,i=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>p(t)).join("; ")),i}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},y=class{constructor(e){var t,i,o;this._parsed=new Map,this._headers=e;const r=null!=(o=null!=(i=null==(t=e.getSetCookie)?void 0:t.call(e))?i:e.get("set-cookie"))?o:[];for(const e of Array.isArray(r)?r:function(e){if(!e)return[];var t,i,o,r,s,a=[],n=0;function c(){for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length}for(;n<e.length;){for(t=n,s=!1;c();)if(","===(i=e.charAt(n))){for(o=n,n+=1,c(),r=n;n<e.length&&"="!==(i=e.charAt(n))&&";"!==i&&","!==i;)n+=1;n<e.length&&"="===e.charAt(n)?(s=!0,n=r,a.push(e.substring(t,o)),t=n):n=o+1}else n+=1;(!s||n>=e.length)&&a.push(e.substring(t,e.length))}return a}(r)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed.values());if(!e.length)return i;let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(e=>e.name===o)}has(e){return this._parsed.has(e)}set(...e){let[t,i,o]=1===e.length?[e[0].name,e[0].value,e[0]]:e,r=this._parsed;return r.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:i,...o})),function(e,t){for(let[,i]of(t.delete("set-cookie"),e)){let e=p(i);t.append("set-cookie",e)}}(r,this._headers),this}delete(...e){let[t,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...i,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(p).join("; ")}}},677850,e=>e.a(async(t,i)=>{try{let t=await e.y("zod");e.n(t),i()}catch(e){i(e)}},!0),804730,e=>{e.v({name:"omniroute",version:"2.8.1",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"next build","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"npx c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.1.6","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",zod:"^4.3.6",zustand:"^5.0.10","@swc/helpers":"0.5.19"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"16.1.6",husky:"^9.1.7","lint-staged":"^16.2.7",prettier:"^3.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]}})},102835,e=>e.a(async(t,i)=>{try{var o=e.i(677850),r=t([o]);[o]=r.then?(await r)():r;let a=o.z.object({id:o.z.string().min(1),alias:o.z.string().min(1),name:o.z.string().min(1),icon:o.z.string().min(1),color:o.z.string().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:o.z.string().optional(),website:o.z.string().url().optional(),passthroughModels:o.z.boolean().optional()}),n=o.z.record(o.z.string(),a);function s(e,t){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${t} has invalid entries:
|
|
1
|
+
module.exports=[918622,(e,t,i)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,i)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,i)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,i)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,i)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,i)=>{"use strict";var o=Object.defineProperty,r=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,n={},c={RequestCookies:()=>b,ResponseCookies:()=>y,parseCookie:()=>d,parseSetCookie:()=>u,stringifyCookie:()=>p};for(var l in c)o(n,l,{get:c[l],enumerable:!0});function p(e){var t;let i=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),o=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===i.length?o:`${o}; ${i.join("; ")}`}function d(e){let t=new Map;for(let i of e.split(/; */)){if(!i)continue;let e=i.indexOf("=");if(-1===e){t.set(i,"true");continue}let[o,r]=[i.slice(0,e),i.slice(e+1)];try{t.set(o,decodeURIComponent(null!=r?r:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,i],...o]=d(e),{domain:r,expires:s,httponly:a,maxage:n,path:c,samesite:l,secure:p,partitioned:u,priority:b}=Object.fromEntries(o.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var y,g,x={name:t,value:decodeURIComponent(i),domain:r,...s&&{expires:new Date(s)},...a&&{httpOnly:!0},..."string"==typeof n&&{maxAge:Number(n)},path:c,...l&&{sameSite:m.includes(y=(y=l).toLowerCase())?y:void 0},...p&&{secure:!0},...b&&{priority:h.includes(g=(g=b).toLowerCase())?g:void 0},...u&&{partitioned:!0}};let e={};for(let t in x)x[t]&&(e[t]=x[t]);return e}}t.exports=((e,t,i,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of s(t))a.call(e,i)||void 0===i||o(e,i,{get:()=>t[i],enumerable:!(n=r(t,i))||n.enumerable});return e})(o({},"__esModule",{value:!0}),n);var m=["strict","lax","none"],h=["low","medium","high"],b=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,i]of d(t))this._parsed.set(e,{name:e,value:i})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed);if(!e.length)return i.map(([e,t])=>t);let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(([e])=>e===o).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,i]=1===e.length?[e[0].name,e[0].value]:e,o=this._parsed;return o.set(t,{name:t,value:i}),this._headers.set("cookie",Array.from(o).map(([e,t])=>p(t)).join("; ")),this}delete(e){let t=this._parsed,i=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>p(t)).join("; ")),i}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},y=class{constructor(e){var t,i,o;this._parsed=new Map,this._headers=e;const r=null!=(o=null!=(i=null==(t=e.getSetCookie)?void 0:t.call(e))?i:e.get("set-cookie"))?o:[];for(const e of Array.isArray(r)?r:function(e){if(!e)return[];var t,i,o,r,s,a=[],n=0;function c(){for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length}for(;n<e.length;){for(t=n,s=!1;c();)if(","===(i=e.charAt(n))){for(o=n,n+=1,c(),r=n;n<e.length&&"="!==(i=e.charAt(n))&&";"!==i&&","!==i;)n+=1;n<e.length&&"="===e.charAt(n)?(s=!0,n=r,a.push(e.substring(t,o)),t=n):n=o+1}else n+=1;(!s||n>=e.length)&&a.push(e.substring(t,e.length))}return a}(r)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed.values());if(!e.length)return i;let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(e=>e.name===o)}has(e){return this._parsed.has(e)}set(...e){let[t,i,o]=1===e.length?[e[0].name,e[0].value,e[0]]:e,r=this._parsed;return r.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:i,...o})),function(e,t){for(let[,i]of(t.delete("set-cookie"),e)){let e=p(i);t.append("set-cookie",e)}}(r,this._headers),this}delete(...e){let[t,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...i,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(p).join("; ")}}},677850,e=>e.a(async(t,i)=>{try{let t=await e.y("zod");e.n(t),i()}catch(e){i(e)}},!0),804730,e=>{e.v({name:"omniroute",version:"2.8.2",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"next build","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"npx c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.1.6","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",zod:"^4.3.6",zustand:"^5.0.10","@swc/helpers":"0.5.19"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"16.1.6",husky:"^9.1.7","lint-staged":"^16.2.7",prettier:"^3.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]}})},102835,e=>e.a(async(t,i)=>{try{var o=e.i(677850),r=t([o]);[o]=r.then?(await r)():r;let a=o.z.object({id:o.z.string().min(1),alias:o.z.string().min(1),name:o.z.string().min(1),icon:o.z.string().min(1),color:o.z.string().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:o.z.string().optional(),website:o.z.string().url().optional(),passthroughModels:o.z.boolean().optional()}),n=o.z.record(o.z.string(),a);function s(e,t){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${t} has invalid entries:
|
|
2
2
|
${e}`),Error(`Provider validation failed for ${t}`)}}e.s(["validateProviders",()=>s]),i()}catch(e){i(e)}},!1),963219,e=>e.a(async(t,i)=>{try{var o=e.i(102835),r=t([o]);[o]=r.then?(await r)():r;let n={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},c={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},"kimi-coding":{id:"kimi-coding",alias:"kmc",name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},l={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"bailian-coding-plan":{id:"bailian-coding-plan",alias:"bcp",name:"Alibaba Coding Plan",icon:"code",color:"#FF6A00",textIcon:"BCP",website:"https://www.alibabacloud.com/help/en/model-studio/coding-plan"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},"kimi-coding-apikey":{id:"kimi-coding-apikey",alias:"kmca",name:"Kimi Coding (API Key)",icon:"psychology",color:"#1E40AF",textIcon:"KC",website:"https://kimi.com"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://bailian.console.aliyun.com"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://modelstudio.console.alibabacloud.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",hasFree:!0,freeNote:"Free tier: 30 RPM / 14.4K RPD — no credit card"},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"view_in_ar",color:"#1A1A2E",textIcon:"BB",website:"https://blackbox.ai"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://inference.cerebras.ai",hasFree:!0,freeNote:"Free: 1M tokens/day, 60K TPM — world's fastest inference"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://build.nvidia.com",hasFree:!0,freeNote:"Free dev access: ~40 RPM, 70+ models (Kimi K2.5, GLM 4.7, DeepSeek V3.2...)"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"},"ollama-cloud":{id:"ollama-cloud",alias:"ollamacloud",name:"Ollama Cloud",icon:"cloud",color:"#58A6FF",textIcon:"OC",website:"https://ollama.com/settings/api-keys"},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io"},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai"},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht"},inworld:{id:"inworld",alias:"inworld",name:"Inworld",icon:"voice_chat",color:"#7B2EF2",textIcon:"IW",website:"https://inworld.ai"},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui"},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI"},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",hasFree:!0,freeNote:"Free Inference API for thousands of models (Whisper, VITS, SDXL…)"},synthetic:{id:"synthetic",alias:"synthetic",name:"Synthetic",icon:"verified_user",color:"#6366F1",textIcon:"SY",website:"https://synthetic.new",passthroughModels:!0},"kilo-gateway":{id:"kilo-gateway",alias:"kg",name:"Kilo Gateway",icon:"hub",color:"#617A91",textIcon:"KG",website:"https://kilo.ai",passthroughModels:!0},vertex:{id:"vertex",alias:"vertex",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VA",website:"https://cloud.google.com/vertex-ai",authHint:"Provide Service Account JSON or OAuth access_token"},zai:{id:"zai",alias:"zai",name:"Z.AI (GLM-5)",icon:"psychology",color:"#2563EB",textIcon:"ZA",website:"https://open.bigmodel.cn",apiHint:"API key from https://open.bigmodel.cn/usercenter/apikeys"},"perplexity-search":{id:"perplexity-search",alias:"pplx-search",name:"Perplexity Search",icon:"search",color:"#20808D",textIcon:"PS",website:"https://docs.perplexity.ai/guides/search-quickstart",authHint:"Same API key as Perplexity (pplx-...)"},"serper-search":{id:"serper-search",alias:"serper-search",name:"Serper Search",icon:"search",color:"#4285F4",textIcon:"SP",website:"https://serper.dev",authHint:"API key from serper.dev dashboard"},"brave-search":{id:"brave-search",alias:"brave-search",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",authHint:"Subscription token from Brave Search API dashboard"},"exa-search":{id:"exa-search",alias:"exa-search",name:"Exa Search",icon:"neurology",color:"#1E40AF",textIcon:"EX",website:"https://exa.ai",authHint:"API key from dashboard.exa.ai"},"tavily-search":{id:"tavily-search",alias:"tavily-search",name:"Tavily Search",icon:"manage_search",color:"#5B4FDB",textIcon:"TV",website:"https://tavily.com",authHint:"API key from app.tavily.com (format: tvly-...)"}},p="openai-compatible-",d="anthropic-compatible-";function s(e){return"string"==typeof e&&e.startsWith(p)}function a(e){return"string"==typeof e&&e.startsWith(d)}let u={...n,...c,...l},m=Object.values(u).reduce((e,t)=>(e[t.alias]=t.id,e),{});Object.values(u).reduce((e,t)=>(e[t.id]=t.alias,e),{}),(0,o.validateProviders)(n,"FREE_PROVIDERS"),(0,o.validateProviders)(c,"OAUTH_PROVIDERS"),(0,o.validateProviders)(l,"APIKEY_PROVIDERS"),e.s(["AI_PROVIDERS",0,u,"ALIAS_TO_ID",0,m,"ANTHROPIC_COMPATIBLE_PREFIX",0,d,"APIKEY_PROVIDERS",0,l,"FREE_PROVIDERS",0,n,"OAUTH_PROVIDERS",0,c,"OPENAI_COMPATIBLE_PREFIX",0,p,"isAnthropicCompatibleProvider",()=>a,"isOpenAICompatibleProvider",()=>s]),i()}catch(e){i(e)}},!1),617325,e=>e.a(async(t,i)=>{try{var o=e.i(878947),r=e.i(963219),s=t([r]);[r]=s.then?(await s)():s,Object.entries(r.AI_PROVIDERS).filter(([,e])=>e.passthroughModels).map(([e])=>e);let a=Object.entries(o.PROVIDER_MODELS).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name})));e.s(["AI_MODELS",0,a]),i()}catch(e){i(e)}},!1),651948,e=>e.a(async(t,i)=>{try{var o=e.i(804730),r=e.i(963219),s=e.i(617325),a=t([r,s]);[r,s]=a.then?(await a)():a;let n={name:"OmniRoute",description:"AI Gateway for Multi-Provider LLMs",version:o.default.version};e.s(["APP_CONFIG",0,n]),i()}catch(e){i(e)}},!1),949423,e=>e.a(async(t,i)=>{try{var o=e.i(89171);e.i(245272);var r=e.i(548941),s=e.i(651948),a=t([s]);async function n(){try{let{getAllCircuitBreakerStatuses:t}=await e.A(970016),{getAllRateLimitStatus:i}=await e.A(134636),{getAllModelLockouts:a}=await e.A(730711),{getInflightCount:n}=await e.A(38026),c=await (0,r.getSettings)(),l=t(),p=i(),d=a(),{getAllHealthStatuses:u}=await e.A(338694),m={version:s.APP_CONFIG.version,nodeVersion:process.version,uptime:process.uptime(),memoryUsage:process.memoryUsage(),pid:process.pid,platform:process.platform},h={};for(let e of l)e.name.startsWith("test-")||e.name.startsWith("test_")||(h[e.name]={state:e.state,failures:e.failureCount||0,lastFailure:e.lastFailureTime});return o.NextResponse.json({status:"healthy",timestamp:new Date().toISOString(),system:m,providerHealth:h,localProviders:u(),rateLimitStatus:p,lockouts:d,dedup:{inflightRequests:n()},setupComplete:c?.setupComplete||!1})}catch(e){return console.error("[API] GET /api/monitoring/health error:",e),o.NextResponse.json({status:"error",error:"Health check failed"},{status:500})}}async function c(){try{let{resetAllCircuitBreakers:t,getAllCircuitBreakerStatuses:i}=await e.A(970016),r=i().length;return t(),console.log(`[API] DELETE /api/monitoring/health — Reset ${r} circuit breakers`),o.NextResponse.json({success:!0,message:`Reset ${r} circuit breaker(s) to healthy state`,resetCount:r})}catch(e){return console.error("[API] DELETE /api/monitoring/health error:",e),o.NextResponse.json({error:"Failed to reset circuit breakers"},{status:500})}}[s]=a.then?(await a)():a,e.s(["DELETE",()=>c,"GET",()=>n]),i()}catch(e){i(e)}},!1),984654,e=>e.a(async(t,i)=>{try{var o=e.i(747909),r=e.i(174017),s=e.i(996250),a=e.i(759756),n=e.i(561916),c=e.i(174677),l=e.i(869741),p=e.i(316795),d=e.i(487718),u=e.i(995169),m=e.i(47587),h=e.i(666012),b=e.i(570101),y=e.i(626937),g=e.i(10372),x=e.i(193695);e.i(52474);var f=e.i(600220),v=e.i(949423),w=t([v]);[v]=w.then?(await w)():w;let _=new o.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/monitoring/health/route",pathname:"/api/monitoring/health",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/monitoring/health/route.ts",nextConfigOutput:"standalone",userland:v}),{workAsyncStorage:k,workUnitAsyncStorage:R,serverHooks:E}=_;function A(){return(0,s.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:R})}async function I(e,t,i){_.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let o="/api/monitoring/health/route";o=o.replace(/\/index$/,"")||"/";let s=await _.prepare(e,t,{srcPage:o,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:v,params:w,nextConfig:A,parsedUrl:I,isDraftMode:k,prerenderManifest:R,routerServerContext:E,isOnDemandRevalidate:C,revalidateOnlyGenerated:P,resolvedPathname:F,clientReferenceManifest:j,serverActionsManifest:O}=s,S=(0,l.normalizeAppPath)(o),D=!!(R.dynamicRoutes[S]||R.routes[F]),N=async()=>((null==E?void 0:E.render404)?await E.render404(e,t,I,!1):t.end("This page could not be found"),null);if(D&&!k){let e=!!R.routes[F],t=R.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(A.experimental.adapterPath)return await N();throw new x.NoFallbackError}}let M=null;!D||_.isDev||k||(M=F,M="/index"===M?"/":M);let T=!0===_.isDev||!D,B=D&&!T;O&&j&&(0,c.setManifestsSingleton)({page:o,clientReferenceManifest:j,serverActionsManifest:O});let q=e.method||"GET",H=(0,n.getTracer)(),L=H.getActiveScopeSpan(),$={params:w,prerenderManifest:R,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:T,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:A.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,i,o,r)=>_.onRequestError(e,t,o,r,E)},sharedContext:{buildId:v}},U=new p.NodeNextRequest(e),K=new p.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(U,(0,d.signalFromNodeResponse)(t));try{let s=async e=>_.handle(G,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let i=H.getRootSpanAttributes();if(!i)return;if(i.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${i.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=i.get("next.route");if(r){let t=`${q} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${o}`)}),c=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var n,l;let p=async({previousCacheEntry:r})=>{try{if(!c&&C&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await s(a);e.fetchMetrics=$.renderOpts.fetchMetrics;let n=$.renderOpts.pendingWaitUntil;n&&i.waitUntil&&(i.waitUntil(n),n=void 0);let l=$.renderOpts.collectedTags;if(!D)return await (0,h.sendResponse)(U,K,o,$.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,b.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let i=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,r=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:f.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:i,expire:r}}}}catch(t){throw(null==r?void 0:r.isStale)&&await _.onRequestError(e,t,{routerKind:"App Router",routePath:o,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:C})},!1,E),t}},d=await _.handleResponse({req:e,nextConfig:A,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:R,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:P,responseGenerator:p,waitUntil:i.waitUntil,isMinimalMode:c});if(!D)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==f.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});c||t.setHeader("x-nextjs-cache",C?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,b.fromNodeOutgoingHttpHeaders)(d.value.headers);return c&&D||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,y.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(U,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L?await l(L):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${o}`,kind:n.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await _.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:C})},!1,E),D)throw t;return await (0,h.sendResponse)(U,K,new Response(null,{status:500})),null}}e.s(["handler",()=>I,"patchFetch",()=>A,"routeModule",()=>_,"serverHooks",()=>E,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>R]),i()}catch(e){i(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_fa113e09._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_65de0558._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},970016,e=>{e.v(t=>Promise.all(["server/chunks/src_5ca0c0a2._.js"].map(t=>e.l(t))).then(()=>t(260222)))},134636,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localDb_ts_287eb35f._.js","server/chunks/_5677b5e2._.js","server/chunks/open-sse_cf4d5692._.js"].map(t=>e.l(t))).then(()=>t(20870)))},730711,e=>{e.v(t=>Promise.all(["server/chunks/open-sse_cf4d5692._.js"].map(t=>e.l(t))).then(()=>t(441637)))},38026,e=>{e.v(t=>Promise.all(["server/chunks/open-sse_services_requestDedup_ts_82fdaab0._.js"].map(t=>e.l(t))).then(()=>t(951700)))},338694,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localHealthCheck_ts_06c8cb5d._.js"].map(t=>e.l(t))).then(()=>t(181666)))}];
|
|
3
3
|
|
|
4
4
|
//# sourceMappingURL=%5Broot-of-the-server%5D__09c944b3._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[
|
|
1
|
+
module.exports=[918622,(e,t,o)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,o)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,o)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,o)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,o)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},814747,(e,t,o)=>{t.exports=e.x("path",()=>require("path"))},254799,(e,t,o)=>{t.exports=e.x("crypto",()=>require("crypto"))},792509,(e,t,o)=>{t.exports=e.x("url",()=>require("url"))},785148,(e,t,o)=>{t.exports=e.x("better-sqlite3",()=>require("better-sqlite3"))},522734,(e,t,o)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,o)=>{t.exports=e.x("os",()=>require("os"))},666680,(e,t,o)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},478500,(e,t,o)=>{t.exports=e.x("node:async_hooks",()=>require("node:async_hooks"))},542876,e=>{"use strict";var t=e.i(886588),o=e.i(500085),n=e.i(223194),s=e.i(405742);parseInt(process.env.LOG_RETENTION_DAYS||"90",10);let r=new Set,l=new Map;for(let e of(process.env.NO_LOG_API_KEY_IDS||"").split(",").map(e=>e.trim()).filter(Boolean))r.add(e);function a(e,t){t?r.add(e):r.delete(e),l.set(e,{value:t,timestamp:Date.now()})}let i=!1,c=new Map,d=new Map,u=new Map,p=new Map,y=null,g=null,f=null,v=null,m=null,_=null;function h(){c.clear(),d.clear(),p.clear()}function A(e){return e&&"object"==typeof e?e:{}}function w(e){if(e.size>1e3){let t=Math.floor(200),o=0;for(let n of e.keys()){if(o++>=t)break;e.delete(n)}}}function E(e){if(!i)try{let t=e.prepare("PRAGMA table_info(api_keys)").all(),o=new Set(t.map(e=>String(e.name??"")));o.has("allowed_models")||(e.exec("ALTER TABLE api_keys ADD COLUMN allowed_models TEXT"),console.log("[DB] Added api_keys.allowed_models column")),o.has("no_log")||(e.exec("ALTER TABLE api_keys ADD COLUMN no_log INTEGER NOT NULL DEFAULT 0"),console.log("[DB] Added api_keys.no_log column")),o.has("allowed_connections")||(e.exec("ALTER TABLE api_keys ADD COLUMN allowed_connections TEXT"),console.log("[DB] Added api_keys.allowed_connections column")),o.has("auto_resolve")||(e.exec("ALTER TABLE api_keys ADD COLUMN auto_resolve INTEGER NOT NULL DEFAULT 0"),console.log("[DB] Added api_keys.auto_resolve column")),o.has("is_active")||(e.exec("ALTER TABLE api_keys ADD COLUMN is_active INTEGER NOT NULL DEFAULT 1"),console.log("[DB] Added api_keys.is_active column")),o.has("access_schedule")||(e.exec("ALTER TABLE api_keys ADD COLUMN access_schedule TEXT"),console.log("[DB] Added api_keys.access_schedule column")),i=!0}catch(e){console.warn("[DB] Failed to verify api_keys schema:",e instanceof Error?e.message:String(e))}if(y&&g&&f&&v&&m&&_||(y=e.prepare("SELECT * FROM api_keys ORDER BY created_at"),g=e.prepare("SELECT * FROM api_keys WHERE id = ?"),f=e.prepare("SELECT 1 FROM api_keys WHERE key = ?"),v=e.prepare("SELECT id, name, machine_id, allowed_models, allowed_connections, no_log, auto_resolve, is_active, access_schedule FROM api_keys WHERE key = ?"),m=e.prepare("INSERT INTO api_keys (id, name, key, machine_id, allowed_models, no_log, created_at) VALUES (?, ?, ?, ?, ?, ?, ?)"),_=e.prepare("DELETE FROM api_keys WHERE id = ?")),!y||!g||!f||!v||!m||!_)throw Error("Failed to initialize API key prepared statements");return{getAllKeys:y,getKeyById:g,validateKey:f,getKeyMetadata:v,insertKey:m,deleteKey:_}}async function L(){return E((0,o.getDbInstance)()).getAllKeys.all().map(e=>{let t=A((0,o.rowToCamel)(e));return t.allowedModels=k(t.allowedModels),t.allowedConnections=S(t.allowedConnections),t.noLog=D(t.noLog),t.autoResolve=T(t.autoResolve),t.isActive=R(t.isActive),t.accessSchedule=M(t.accessSchedule),"string"==typeof t.id&&t.id.length>0&&a(t.id,!0===t.noLog),t})}async function x(e){let t=E((0,o.getDbInstance)()).getKeyById.get(e);if(!t)return null;let n=A((0,o.rowToCamel)(t));return n.allowedModels=k(n.allowedModels),n.allowedConnections=S(n.allowedConnections),n.noLog=D(n.noLog),n.autoResolve=T(n.autoResolve),n.isActive=R(n.isActive),n.accessSchedule=M(n.accessSchedule),"string"==typeof n.id&&n.id.length>0&&a(n.id,!0===n.noLog),n}function k(e){if(!e||"string"!=typeof e||""===e.trim())return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>"string"==typeof e):[]}catch{return[]}}function D(e){return!0===e||1===e||"1"===e}function T(e){return!0===e||1===e||"1"===e}function R(e){return 0!==e&&"0"!==e&&!1!==e}function M(e){if(!e||"string"!=typeof e||""===e.trim())return null;try{let t=JSON.parse(e);if(!t||"object"!=typeof t||Array.isArray(t)||"boolean"!=typeof t.enabled||"string"!=typeof t.from||"string"!=typeof t.until||!Array.isArray(t.days)||"string"!=typeof t.tz)return null;let o=t.days.filter(e=>"number"==typeof e&&Number.isInteger(e)&&e>=0&&e<=6);return{enabled:t.enabled,from:t.from,until:t.until,days:o,tz:t.tz}}catch{return null}}function S(e){if(!e||"string"!=typeof e||""===e.trim())return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>"string"==typeof e):[]}catch{return[]}}async function b(s,r){if(!r)throw Error("machineId is required");let l=(0,o.getDbInstance)(),i=new Date().toISOString(),{generateApiKeyWithMachine:c}=await e.A(266160),d=c(r),u={id:(0,t.v4)(),name:s,key:d.key,machineId:r,allowedModels:[],allowedConnections:[],noLog:!1,createdAt:i};return E(l).insertKey.run(u.id,u.name,u.key,u.machineId,"[]",0,u.createdAt),a(u.id,!1),(0,n.backupDbFile)("pre-write"),u}async function C(e,t){let s=(0,o.getDbInstance)();E(s);let r=Array.isArray(t)||void 0===t?{allowedModels:t||[]}:{name:t.name,allowedModels:t.allowedModels,allowedConnections:t.allowedConnections,noLog:t.noLog,autoResolve:t.autoResolve,isActive:t.isActive,accessSchedule:t.accessSchedule};if(void 0===r.name&&void 0===r.allowedModels&&void 0===r.allowedConnections&&void 0===r.noLog&&void 0===r.autoResolve&&void 0===r.isActive&&void 0===r.accessSchedule)return!1;let l=[],i={id:e};return void 0!==r.name&&(l.push("name = @name"),i.name=r.name),void 0!==r.allowedModels&&(l.push("allowed_models = @allowedModels"),i.allowedModels=JSON.stringify(r.allowedModels||[])),void 0!==r.allowedConnections&&(l.push("allowed_connections = @allowedConnections"),i.allowedConnections=JSON.stringify(r.allowedConnections||[])),void 0!==r.noLog&&(l.push("no_log = @noLog"),i.noLog=+!!r.noLog),void 0!==r.autoResolve&&(l.push("auto_resolve = @autoResolve"),i.autoResolve=+!!r.autoResolve),void 0!==r.isActive&&(l.push("is_active = @isActive"),i.isActive=+!!r.isActive),void 0!==r.accessSchedule&&(l.push("access_schedule = @accessSchedule"),i.accessSchedule=null!==r.accessSchedule?JSON.stringify(r.accessSchedule):null),0!==s.prepare(`UPDATE api_keys SET ${l.join(", ")} WHERE id = @id`).run(i).changes&&(void 0!==r.noLog&&a(e,r.noLog),h(),(0,n.backupDbFile)("pre-write"),!0)}async function I(e){return 0!==E((0,o.getDbInstance)()).deleteKey.run(e).changes&&(a(e,!1),h(),(0,n.backupDbFile)("pre-write"),!0)}async function N(e){if(!e||"string"!=typeof e)return!1;let t=Date.now(),n=c.get(e);if(n&&t-n.timestamp<6e4)return n.valid;let s=!!E((0,o.getDbInstance)()).validateKey.get(e);return s&&(w(c),c.set(e,{valid:!0,timestamp:t})),s}async function O(e){if(!e||"string"!=typeof e)return null;let t=Date.now(),n=d.get(e);if(n&&t-n.timestamp<6e4)return n.value;let s=E((0,o.getDbInstance)()).getKeyMetadata.get(e);if(!s)return null;let r=A(s),l="string"==typeof r.id?r.id:"",i="string"==typeof r.name?r.name:"",c=r.machine_id??r.machineId,u={id:l,name:i,machineId:"string"==typeof c?c:null,allowedModels:k(r.allowed_models??r.allowedModels),allowedConnections:S(r.allowed_connections??r.allowedConnections),noLog:D(r.no_log??r.noLog),autoResolve:T(r.auto_resolve??r.autoResolve),isActive:R(r.is_active??r.isActive),accessSchedule:M(r.access_schedule??r.accessSchedule)};return u.id?(a(u.id,!0===u.noLog),w(d),d.set(e,{value:u,timestamp:t}),u):null}async function K(e,t){if(!e)return!0;if(!t)return!1;let o=`${e}:${t}`,n=Date.now(),s=p.get(o);if(s&&n-s.timestamp<6e4)return s.allowed;let r=await O(e);if(!r)return!1;let{allowedModels:l}=r;if(!l||0===l.length)return!0;let a=!1;for(let e of l){if(e===t){a=!0;break}if(e.endsWith("/*")){let o=e.slice(0,-2);if(t.startsWith(o+"/")||t.startsWith(o)){a=!0;break}}if(e.includes("*")&&(function(e){let t=u.get(e);if(!t){let o=e.replace(/\*/g,".*");if(t=RegExp(`^${o}$`),u.set(e,t),u.size>100){let e=u.keys().next().value;e&&u.delete(e)}}return t})(e).test(t)){a=!0;break}}return w(p),p.set(o,{allowed:a,timestamp:n}),a}function B(){h(),p.clear(),u.clear()}function q(){y=null,g=null,f=null,v=null,m=null,_=null,i=!1,B()}(0,s.registerDbStateResetter)(q),e.s(["clearApiKeyCaches",()=>B,"createApiKey",()=>b,"deleteApiKey",()=>I,"getApiKeyById",()=>x,"getApiKeyMetadata",()=>O,"getApiKeys",()=>L,"isModelAllowedForKey",()=>K,"resetApiKeyState",()=>q,"updateApiKeyPermissions",()=>C,"validateApiKey",()=>N],542876)},911812,e=>{e.v(e=>Promise.resolve().then(()=>e(850063)))},13929,e=>{e.v(e=>Promise.resolve().then(()=>e(182407)))},266160,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_6247cd31._.js"].map(t=>e.l(t))).then(()=>t(123260)))},935293,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0fddbb51._.js"].map(t=>e.l(t))).then(()=>t(547894)))},617569,e=>{e.v(e=>Promise.resolve().then(()=>e(47998)))},867559,e=>{e.v(e=>Promise.resolve().then(()=>e(542876)))},720167,e=>{e.v(e=>Promise.resolve().then(()=>e(500085)))}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__561d1987._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[918622,(e,t,i)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,i)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,i)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,i)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,i)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,i)=>{"use strict";var o=Object.defineProperty,r=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,n={},c={RequestCookies:()=>y,ResponseCookies:()=>b,parseCookie:()=>p,parseSetCookie:()=>u,stringifyCookie:()=>d};for(var l in c)o(n,l,{get:c[l],enumerable:!0});function d(e){var t;let i=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),o=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===i.length?o:`${o}; ${i.join("; ")}`}function p(e){let t=new Map;for(let i of e.split(/; */)){if(!i)continue;let e=i.indexOf("=");if(-1===e){t.set(i,"true");continue}let[o,r]=[i.slice(0,e),i.slice(e+1)];try{t.set(o,decodeURIComponent(null!=r?r:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,i],...o]=p(e),{domain:r,expires:s,httponly:a,maxage:n,path:c,samesite:l,secure:d,partitioned:u,priority:y}=Object.fromEntries(o.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var b,x,g={name:t,value:decodeURIComponent(i),domain:r,...s&&{expires:new Date(s)},...a&&{httpOnly:!0},..."string"==typeof n&&{maxAge:Number(n)},path:c,...l&&{sameSite:m.includes(b=(b=l).toLowerCase())?b:void 0},...d&&{secure:!0},...y&&{priority:h.includes(x=(x=y).toLowerCase())?x:void 0},...u&&{partitioned:!0}};let e={};for(let t in g)g[t]&&(e[t]=g[t]);return e}}t.exports=((e,t,i,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of s(t))a.call(e,i)||void 0===i||o(e,i,{get:()=>t[i],enumerable:!(n=r(t,i))||n.enumerable});return e})(o({},"__esModule",{value:!0}),n);var m=["strict","lax","none"],h=["low","medium","high"],y=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,i]of p(t))this._parsed.set(e,{name:e,value:i})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed);if(!e.length)return i.map(([e,t])=>t);let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(([e])=>e===o).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,i]=1===e.length?[e[0].name,e[0].value]:e,o=this._parsed;return o.set(t,{name:t,value:i}),this._headers.set("cookie",Array.from(o).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,i=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),i}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},b=class{constructor(e){var t,i,o;this._parsed=new Map,this._headers=e;const r=null!=(o=null!=(i=null==(t=e.getSetCookie)?void 0:t.call(e))?i:e.get("set-cookie"))?o:[];for(const e of Array.isArray(r)?r:function(e){if(!e)return[];var t,i,o,r,s,a=[],n=0;function c(){for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length}for(;n<e.length;){for(t=n,s=!1;c();)if(","===(i=e.charAt(n))){for(o=n,n+=1,c(),r=n;n<e.length&&"="!==(i=e.charAt(n))&&";"!==i&&","!==i;)n+=1;n<e.length&&"="===e.charAt(n)?(s=!0,n=r,a.push(e.substring(t,o)),t=n):n=o+1}else n+=1;(!s||n>=e.length)&&a.push(e.substring(t,e.length))}return a}(r)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed.values());if(!e.length)return i;let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(e=>e.name===o)}has(e){return this._parsed.has(e)}set(...e){let[t,i,o]=1===e.length?[e[0].name,e[0].value,e[0]]:e,r=this._parsed;return r.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:i,...o})),function(e,t){for(let[,i]of(t.delete("set-cookie"),e)){let e=d(i);t.append("set-cookie",e)}}(r,this._headers),this}delete(...e){let[t,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...i,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},677850,e=>e.a(async(t,i)=>{try{let t=await e.y("zod");e.n(t),i()}catch(e){i(e)}},!0),200392,e=>e.a(async(t,i)=>{try{var o=e.i(677850),r=t([o]);function s(e,t){let i=e.safeParse(t);if(i.success)return{success:!0,data:i.data};let o=Array.isArray(i.error?.issues)?i.error.issues:[];return{success:!1,error:{message:"Invalid request",details:o.map(e=>({field:e.path.join("."),message:e.message}))}}}function a(e){return!1===e.success}[o]=r.then?(await r)():r,o.z.object({password:o.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",()=>a,"validateBody",()=>s]),i()}catch(e){i(e)}},!1),804730,e=>{e.v({name:"omniroute",version:"2.8.1",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"next build","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"npx c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.1.6","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",zod:"^4.3.6",zustand:"^5.0.10","@swc/helpers":"0.5.19"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"16.1.6",husky:"^9.1.7","lint-staged":"^16.2.7",prettier:"^3.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]}})},180725,e=>{"use strict";e.i(245272),e.s([])},102835,e=>e.a(async(t,i)=>{try{var o=e.i(677850),r=t([o]);[o]=r.then?(await r)():r;let a=o.z.object({id:o.z.string().min(1),alias:o.z.string().min(1),name:o.z.string().min(1),icon:o.z.string().min(1),color:o.z.string().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:o.z.string().optional(),website:o.z.string().url().optional(),passthroughModels:o.z.boolean().optional()}),n=o.z.record(o.z.string(),a);function s(e,t){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${t} has invalid entries:
|
|
1
|
+
module.exports=[918622,(e,t,i)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,i)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,i)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,i)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,i)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,i)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,i)=>{"use strict";var o=Object.defineProperty,r=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,n={},c={RequestCookies:()=>y,ResponseCookies:()=>b,parseCookie:()=>p,parseSetCookie:()=>u,stringifyCookie:()=>d};for(var l in c)o(n,l,{get:c[l],enumerable:!0});function d(e){var t;let i=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),o=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===i.length?o:`${o}; ${i.join("; ")}`}function p(e){let t=new Map;for(let i of e.split(/; */)){if(!i)continue;let e=i.indexOf("=");if(-1===e){t.set(i,"true");continue}let[o,r]=[i.slice(0,e),i.slice(e+1)];try{t.set(o,decodeURIComponent(null!=r?r:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,i],...o]=p(e),{domain:r,expires:s,httponly:a,maxage:n,path:c,samesite:l,secure:d,partitioned:u,priority:y}=Object.fromEntries(o.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var b,x,g={name:t,value:decodeURIComponent(i),domain:r,...s&&{expires:new Date(s)},...a&&{httpOnly:!0},..."string"==typeof n&&{maxAge:Number(n)},path:c,...l&&{sameSite:m.includes(b=(b=l).toLowerCase())?b:void 0},...d&&{secure:!0},...y&&{priority:h.includes(x=(x=y).toLowerCase())?x:void 0},...u&&{partitioned:!0}};let e={};for(let t in g)g[t]&&(e[t]=g[t]);return e}}t.exports=((e,t,i,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of s(t))a.call(e,i)||void 0===i||o(e,i,{get:()=>t[i],enumerable:!(n=r(t,i))||n.enumerable});return e})(o({},"__esModule",{value:!0}),n);var m=["strict","lax","none"],h=["low","medium","high"],y=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,i]of p(t))this._parsed.set(e,{name:e,value:i})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed);if(!e.length)return i.map(([e,t])=>t);let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(([e])=>e===o).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,i]=1===e.length?[e[0].name,e[0].value]:e,o=this._parsed;return o.set(t,{name:t,value:i}),this._headers.set("cookie",Array.from(o).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,i=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),i}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},b=class{constructor(e){var t,i,o;this._parsed=new Map,this._headers=e;const r=null!=(o=null!=(i=null==(t=e.getSetCookie)?void 0:t.call(e))?i:e.get("set-cookie"))?o:[];for(const e of Array.isArray(r)?r:function(e){if(!e)return[];var t,i,o,r,s,a=[],n=0;function c(){for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length}for(;n<e.length;){for(t=n,s=!1;c();)if(","===(i=e.charAt(n))){for(o=n,n+=1,c(),r=n;n<e.length&&"="!==(i=e.charAt(n))&&";"!==i&&","!==i;)n+=1;n<e.length&&"="===e.charAt(n)?(s=!0,n=r,a.push(e.substring(t,o)),t=n):n=o+1}else n+=1;(!s||n>=e.length)&&a.push(e.substring(t,e.length))}return a}(r)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed.values());if(!e.length)return i;let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(e=>e.name===o)}has(e){return this._parsed.has(e)}set(...e){let[t,i,o]=1===e.length?[e[0].name,e[0].value,e[0]]:e,r=this._parsed;return r.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:i,...o})),function(e,t){for(let[,i]of(t.delete("set-cookie"),e)){let e=d(i);t.append("set-cookie",e)}}(r,this._headers),this}delete(...e){let[t,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...i,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},677850,e=>e.a(async(t,i)=>{try{let t=await e.y("zod");e.n(t),i()}catch(e){i(e)}},!0),200392,e=>e.a(async(t,i)=>{try{var o=e.i(677850),r=t([o]);function s(e,t){let i=e.safeParse(t);if(i.success)return{success:!0,data:i.data};let o=Array.isArray(i.error?.issues)?i.error.issues:[];return{success:!1,error:{message:"Invalid request",details:o.map(e=>({field:e.path.join("."),message:e.message}))}}}function a(e){return!1===e.success}[o]=r.then?(await r)():r,o.z.object({password:o.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",()=>a,"validateBody",()=>s]),i()}catch(e){i(e)}},!1),804730,e=>{e.v({name:"omniroute",version:"2.8.2",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"next build","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"npx c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.1.6","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",zod:"^4.3.6",zustand:"^5.0.10","@swc/helpers":"0.5.19"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"16.1.6",husky:"^9.1.7","lint-staged":"^16.2.7",prettier:"^3.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]}})},180725,e=>{"use strict";e.i(245272),e.s([])},102835,e=>e.a(async(t,i)=>{try{var o=e.i(677850),r=t([o]);[o]=r.then?(await r)():r;let a=o.z.object({id:o.z.string().min(1),alias:o.z.string().min(1),name:o.z.string().min(1),icon:o.z.string().min(1),color:o.z.string().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:o.z.string().optional(),website:o.z.string().url().optional(),passthroughModels:o.z.boolean().optional()}),n=o.z.record(o.z.string(),a);function s(e,t){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${t} has invalid entries:
|
|
2
2
|
${e}`),Error(`Provider validation failed for ${t}`)}}e.s(["validateProviders",()=>s]),i()}catch(e){i(e)}},!1),963219,e=>e.a(async(t,i)=>{try{var o=e.i(102835),r=t([o]);[o]=r.then?(await r)():r;let n={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},c={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},"kimi-coding":{id:"kimi-coding",alias:"kmc",name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},l={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"bailian-coding-plan":{id:"bailian-coding-plan",alias:"bcp",name:"Alibaba Coding Plan",icon:"code",color:"#FF6A00",textIcon:"BCP",website:"https://www.alibabacloud.com/help/en/model-studio/coding-plan"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},"kimi-coding-apikey":{id:"kimi-coding-apikey",alias:"kmca",name:"Kimi Coding (API Key)",icon:"psychology",color:"#1E40AF",textIcon:"KC",website:"https://kimi.com"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://bailian.console.aliyun.com"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://modelstudio.console.alibabacloud.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",hasFree:!0,freeNote:"Free tier: 30 RPM / 14.4K RPD — no credit card"},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"view_in_ar",color:"#1A1A2E",textIcon:"BB",website:"https://blackbox.ai"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://inference.cerebras.ai",hasFree:!0,freeNote:"Free: 1M tokens/day, 60K TPM — world's fastest inference"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://build.nvidia.com",hasFree:!0,freeNote:"Free dev access: ~40 RPM, 70+ models (Kimi K2.5, GLM 4.7, DeepSeek V3.2...)"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"},"ollama-cloud":{id:"ollama-cloud",alias:"ollamacloud",name:"Ollama Cloud",icon:"cloud",color:"#58A6FF",textIcon:"OC",website:"https://ollama.com/settings/api-keys"},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io"},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai"},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht"},inworld:{id:"inworld",alias:"inworld",name:"Inworld",icon:"voice_chat",color:"#7B2EF2",textIcon:"IW",website:"https://inworld.ai"},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui"},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI"},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",hasFree:!0,freeNote:"Free Inference API for thousands of models (Whisper, VITS, SDXL…)"},synthetic:{id:"synthetic",alias:"synthetic",name:"Synthetic",icon:"verified_user",color:"#6366F1",textIcon:"SY",website:"https://synthetic.new",passthroughModels:!0},"kilo-gateway":{id:"kilo-gateway",alias:"kg",name:"Kilo Gateway",icon:"hub",color:"#617A91",textIcon:"KG",website:"https://kilo.ai",passthroughModels:!0},vertex:{id:"vertex",alias:"vertex",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VA",website:"https://cloud.google.com/vertex-ai",authHint:"Provide Service Account JSON or OAuth access_token"},zai:{id:"zai",alias:"zai",name:"Z.AI (GLM-5)",icon:"psychology",color:"#2563EB",textIcon:"ZA",website:"https://open.bigmodel.cn",apiHint:"API key from https://open.bigmodel.cn/usercenter/apikeys"},"perplexity-search":{id:"perplexity-search",alias:"pplx-search",name:"Perplexity Search",icon:"search",color:"#20808D",textIcon:"PS",website:"https://docs.perplexity.ai/guides/search-quickstart",authHint:"Same API key as Perplexity (pplx-...)"},"serper-search":{id:"serper-search",alias:"serper-search",name:"Serper Search",icon:"search",color:"#4285F4",textIcon:"SP",website:"https://serper.dev",authHint:"API key from serper.dev dashboard"},"brave-search":{id:"brave-search",alias:"brave-search",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",authHint:"Subscription token from Brave Search API dashboard"},"exa-search":{id:"exa-search",alias:"exa-search",name:"Exa Search",icon:"neurology",color:"#1E40AF",textIcon:"EX",website:"https://exa.ai",authHint:"API key from dashboard.exa.ai"},"tavily-search":{id:"tavily-search",alias:"tavily-search",name:"Tavily Search",icon:"manage_search",color:"#5B4FDB",textIcon:"TV",website:"https://tavily.com",authHint:"API key from app.tavily.com (format: tvly-...)"}},d="openai-compatible-",p="anthropic-compatible-";function s(e){return"string"==typeof e&&e.startsWith(d)}function a(e){return"string"==typeof e&&e.startsWith(p)}let u={...n,...c,...l},m=Object.values(u).reduce((e,t)=>(e[t.alias]=t.id,e),{});Object.values(u).reduce((e,t)=>(e[t.id]=t.alias,e),{}),(0,o.validateProviders)(n,"FREE_PROVIDERS"),(0,o.validateProviders)(c,"OAUTH_PROVIDERS"),(0,o.validateProviders)(l,"APIKEY_PROVIDERS"),e.s(["AI_PROVIDERS",0,u,"ALIAS_TO_ID",0,m,"ANTHROPIC_COMPATIBLE_PREFIX",0,p,"APIKEY_PROVIDERS",0,l,"FREE_PROVIDERS",0,n,"OAUTH_PROVIDERS",0,c,"OPENAI_COMPATIBLE_PREFIX",0,d,"isAnthropicCompatibleProvider",()=>a,"isOpenAICompatibleProvider",()=>s]),i()}catch(e){i(e)}},!1),617325,e=>e.a(async(t,i)=>{try{var o=e.i(878947),r=e.i(963219),s=t([r]);[r]=s.then?(await s)():s,Object.entries(r.AI_PROVIDERS).filter(([,e])=>e.passthroughModels).map(([e])=>e);let a=Object.entries(o.PROVIDER_MODELS).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name})));e.s(["AI_MODELS",0,a]),i()}catch(e){i(e)}},!1),651948,e=>e.a(async(t,i)=>{try{var o=e.i(804730),r=e.i(963219),s=e.i(617325),a=t([r,s]);[r,s]=a.then?(await a)():a;let n={name:"OmniRoute",description:"AI Gateway for Multi-Provider LLMs",version:o.default.version};e.s(["APP_CONFIG",0,n]),i()}catch(e){i(e)}},!1),834202,e=>e.a(async(t,i)=>{try{var o=e.i(89171);e.i(180725);var r=e.i(385498),s=e.i(548941),a=e.i(651948),n=e.i(963219),c=e.i(250875),l=e.i(639173),d=e.i(676088),p=e.i(200392),u=t([a,n,d,p]);async function m(){try{let e=(await (0,r.getProviderConnections)()).map(e=>({...e,apiKey:void 0,accessToken:void 0,refreshToken:void 0,idToken:void 0}));return o.NextResponse.json({connections:e})}catch(e){return console.log("Error fetching providers:",e),o.NextResponse.json({error:"Failed to fetch providers"},{status:500})}}async function h(e){try{let t=await e.json(),i=(0,p.validateBody)(d.createProviderSchema,t);if((0,p.isValidationFailure)(i))return o.NextResponse.json({error:i.error},{status:400});let{provider:s,apiKey:a,name:c,priority:l,globalPriority:u,defaultModel:m,testStatus:h,providerSpecificData:b}=i.data;if(!(n.APIKEY_PROVIDERS[s]||(0,n.isOpenAICompatibleProvider)(s)||(0,n.isAnthropicCompatibleProvider)(s)))return o.NextResponse.json({error:"Invalid provider"},{status:400});let x=b||null,g="true"===process.env.ALLOW_MULTI_CONNECTIONS_PER_COMPAT_NODE;if((0,n.isOpenAICompatibleProvider)(s)){let e=await (0,r.getProviderNodeById)(s);if(!e)return o.NextResponse.json({error:"OpenAI Compatible node not found"},{status:404});let t=await (0,r.getProviderConnections)({provider:s});if(!g&&t.length>0)return o.NextResponse.json({error:"Only one connection is allowed for this OpenAI Compatible node"},{status:400});x={...x||{},prefix:e.prefix,apiType:e.apiType,baseUrl:e.baseUrl,nodeName:e.name,...e.chatPath?{chatPath:e.chatPath}:{},...e.modelsPath?{modelsPath:e.modelsPath}:{}}}else if((0,n.isAnthropicCompatibleProvider)(s)){let e=await (0,r.getProviderNodeById)(s);if(!e)return o.NextResponse.json({error:"Anthropic Compatible node not found"},{status:404});let t=await (0,r.getProviderConnections)({provider:s});if(!g&&t.length>0)return o.NextResponse.json({error:"Only one connection is allowed for this Anthropic Compatible node"},{status:400});x={...x||{},prefix:e.prefix,baseUrl:e.baseUrl,nodeName:e.name,...e.chatPath?{chatPath:e.chatPath}:{},...e.modelsPath?{modelsPath:e.modelsPath}:{}}}let v={...await (0,r.createProviderConnection)({provider:s,authType:"apikey",name:c,apiKey:a,priority:l||1,globalPriority:u||null,defaultModel:m||null,providerSpecificData:x,isActive:!0,testStatus:h||"unknown"})};return delete v.apiKey,await y(),o.NextResponse.json({connection:v},{status:201})}catch(e){return console.log("Error creating provider:",e),o.NextResponse.json({error:"Failed to create provider"},{status:500})}}async function y(){try{if(!await (0,s.isCloudEnabled)())return;let e=await (0,c.getConsistentMachineId)();await (0,l.syncToCloud)(e)}catch(e){console.log("Error syncing providers to cloud:",e)}}[a,n,d,p]=u.then?(await u)():u,e.s(["GET",()=>m,"POST",()=>h]),i()}catch(e){i(e)}},!1),367003,e=>e.a(async(t,i)=>{try{var o=e.i(747909),r=e.i(174017),s=e.i(996250),a=e.i(759756),n=e.i(561916),c=e.i(174677),l=e.i(869741),d=e.i(316795),p=e.i(487718),u=e.i(995169),m=e.i(47587),h=e.i(666012),y=e.i(570101),b=e.i(626937),x=e.i(10372),g=e.i(193695);e.i(52474);var v=e.i(600220),f=e.i(834202),w=t([f]);[f]=w.then?(await w)():w;let k=new o.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/providers/route",pathname:"/api/providers",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/providers/route.ts",nextConfigOutput:"standalone",userland:f}),{workAsyncStorage:C,workUnitAsyncStorage:P,serverHooks:_}=k;function I(){return(0,s.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:P})}async function A(e,t,i){k.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let o="/api/providers/route";o=o.replace(/\/index$/,"")||"/";let s=await k.prepare(e,t,{srcPage:o,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:f,params:w,nextConfig:I,parsedUrl:A,isDraftMode:C,prerenderManifest:P,routerServerContext:_,isOnDemandRevalidate:R,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:O,serverActionsManifest:j}=s,S=(0,l.normalizeAppPath)(o),D=!!(P.dynamicRoutes[S]||P.routes[F]),N=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(D&&!C){let e=!!P.routes[F],t=P.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(I.experimental.adapterPath)return await N();throw new g.NoFallbackError}}let T=null;!D||k.isDev||C||(T=F,T="/index"===T?"/":T);let M=!0===k.isDev||!D,B=D&&!M;j&&O&&(0,c.setManifestsSingleton)({page:o,clientReferenceManifest:O,serverActionsManifest:j});let q=e.method||"GET",H=(0,n.getTracer)(),U=H.getActiveScopeSpan(),L={params:w,prerenderManifest:P,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts},cacheComponents:!!I.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:I.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,i,o,r)=>k.onRequestError(e,t,o,r,_)},sharedContext:{buildId:f}},K=new d.NodeNextRequest(e),$=new d.NodeNextResponse(t),z=p.NextRequestAdapter.fromNodeNextRequest(K,(0,p.signalFromNodeResponse)(t));try{let s=async e=>k.handle(z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let i=H.getRootSpanAttributes();if(!i)return;if(i.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${i.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=i.get("next.route");if(r){let t=`${q} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${o}`)}),c=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var n,l;let d=async({previousCacheEntry:r})=>{try{if(!c&&R&&E&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await s(a);e.fetchMetrics=L.renderOpts.fetchMetrics;let n=L.renderOpts.pendingWaitUntil;n&&i.waitUntil&&(i.waitUntil(n),n=void 0);let l=L.renderOpts.collectedTags;if(!D)return await (0,h.sendResponse)(K,$,o,L.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[x.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let i=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,r=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:i,expire:r}}}}catch(t){throw(null==r?void 0:r.isStale)&&await k.onRequestError(e,t,{routerKind:"App Router",routePath:o,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:R})},!1,_),t}},p=await k.handleResponse({req:e,nextConfig:I,cacheKey:T,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:R,revalidateOnlyGenerated:E,responseGenerator:d,waitUntil:i.waitUntil,isMinimalMode:c});if(!D)return null;if((null==p||null==(n=p.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(l=p.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});c||t.setHeader("x-nextjs-cache",R?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(p.value.headers);return c&&D||u.delete(x.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,b.getCacheControlHeader)(p.cacheControl)),await (0,h.sendResponse)(K,$,new Response(p.value.body,{headers:u,status:p.value.status||200})),null};U?await l(U):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${o}`,kind:n.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await k.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:R})},!1,_),D)throw t;return await (0,h.sendResponse)(K,$,new Response(null,{status:500})),null}}e.s(["handler",()=>A,"patchFetch",()=>I,"routeModule",()=>k,"serverHooks",()=>_,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>P]),i()}catch(e){i(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_fa113e09._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_65de0558._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},485685,e=>{e.v(e=>Promise.resolve().then(()=>e(254799)))}];
|
|
3
3
|
|
|
4
4
|
//# sourceMappingURL=%5Broot-of-the-server%5D__7d9b23e7._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>m,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>p,stringifyCookie:()=>c};for(var u in l)n(o,u,{get:l[u],enumerable:!0});function c(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...n]=d(e),{domain:a,expires:s,httponly:i,maxage:o,path:l,samesite:u,secure:c,partitioned:p,priority:m}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,y,v={name:t,value:decodeURIComponent(r),domain:a,...s&&{expires:new Date(s)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...u&&{sameSite:f.includes(g=(g=u).toLowerCase())?g:void 0},...c&&{secure:!0},...m&&{priority:h.includes(y=(y=m).toLowerCase())?y:void 0},...p&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of s(t))i.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(o=a(t,r))||o.enumerable});return e})(n({},"__esModule",{value:!0}),o);var f=["strict","lax","none"],h=["low","medium","high"],m=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>c(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>c(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const a=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,n,a,s,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,s=!1;l();)if(","===(r=e.charAt(o))){for(n=o,o+=1,l(),a=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(s=!0,o=a,i.push(e.substring(t,n)),t=o):o=n+1}else o+=1;(!s||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(a)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=c(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(c).join("; ")}}},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},785148,(e,t,r)=>{t.exports=e.x("better-sqlite3",()=>require("better-sqlite3"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},256770,e=>{"use strict";var t=e.i(814747),r=e.i(446786);let n="omniroute";function a(){try{return r.default.homedir()}catch{return process.cwd()}}function s(e){if("string"!=typeof e)return null;let r=e.trim();return r?t.default.resolve(r):null}function i(){return t.default.join(a(),`.${n}`)}function o({isCloud:e=!1}={}){let r;if(e)return"/tmp";let l=s(process.env.DATA_DIR);return l?l:(a(),(r=s(process.env.XDG_CONFIG_HOME))?t.default.join(r,n):i())}function l(e,r){return!!e&&!!r&&t.default.resolve(e)===t.default.resolve(r)}e.s(["getLegacyDotDataDir",()=>i,"isSamePath",()=>l,"resolveDataDir",()=>o])},677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var n=e.i(677850),a=t([n]);function s(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let n=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:n.map(e=>({field:e.path.join("."),message:e.message}))}}}function i(e){return!1===e.success}[n]=a.then?(await a)():a,n.z.object({password:n.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",()=>i,"validateBody",()=>s]),r()}catch(e){r(e)}},!1),233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},197892,e=>{"use strict";var t=e.i(157763);function r(e,n=new Date().toISOString()){t.isBuildPhase||t.isCloud||(0,t.getDbInstance)().prepare("INSERT OR REPLACE INTO key_value (namespace, key, value) VALUES (?, ?, ?)").run("cliToolLastConfig",e,JSON.stringify(n))}function n(){if(t.isBuildPhase||t.isCloud)return{};let e=(0,t.getDbInstance)().prepare("SELECT key, value FROM key_value WHERE namespace = ?").all("cliToolLastConfig"),r={};for(let t of e){let e=function(e){try{return JSON.parse(e)}catch{return null}}(t.value);"string"==typeof e&&(r[t.key]=e)}return r}function a(e){t.isBuildPhase||t.isCloud||(0,t.getDbInstance)().prepare("DELETE FROM key_value WHERE namespace = ? AND key = ?").run("cliToolLastConfig",e)}e.s(["deleteCliToolLastConfigured",()=>a,"getAllCliToolLastConfigured",()=>n,"saveCliToolLastConfigured",()=>r])},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},266240,e=>{"use strict";var t=e.i(924868),r=e.i(446786),n=e.i(814747),a=e.i(233405);let s=new Set(["auto","host","container"]),i=new Set(["0","false","no","off"]),o={claude:{defaultCommand:"claude",envBinKey:"CLI_CLAUDE_BIN",requiresBinary:!0,healthcheckTimeoutMs:4e3,paths:{settings:".claude/settings.json"}},codex:{defaultCommand:"codex",envBinKey:"CLI_CODEX_BIN",requiresBinary:!0,healthcheckTimeoutMs:4e3,paths:{config:".codex/config.toml",auth:".codex/auth.json"}},droid:{defaultCommand:"droid",envBinKey:"CLI_DROID_BIN",requiresBinary:!0,healthcheckTimeoutMs:8e3,paths:{settings:".factory/settings.json"}},openclaw:{defaultCommand:"openclaw",envBinKey:"CLI_OPENCLAW_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{settings:".openclaw/openclaw.json"}},cursor:{defaultCommands:["agent","cursor"],envBinKey:"CLI_CURSOR_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{config:".cursor/cli-config.json",auth:".config/cursor/auth.json",state:".cursor/agent-cli-state.json"}},cline:{defaultCommand:"cline",envBinKey:"CLI_CLINE_BIN",requiresBinary:!0,healthcheckTimeoutMs:12e3,paths:{globalState:".cline/data/globalState.json",secrets:".cline/data/secrets.json"}},kilo:{defaultCommand:"kilocode",envBinKey:"CLI_KILO_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{auth:".local/share/kilo/auth.json"}},continue:{defaultCommand:null,envBinKey:"CLI_CONTINUE_BIN",requiresBinary:!1,healthcheckTimeoutMs:15e3,paths:{settings:".continue/config.json"}},opencode:{defaultCommand:"opencode",envBinKey:"CLI_OPENCODE_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{config:".config/opencode/config.toml"}}},l=(e,t,{env:r,timeoutMs:n=3e3}={})=>new Promise(s=>{let i="",o="",l=!1,u=!1,c=(0,a.spawn)(e,t,{env:r,stdio:["ignore","pipe","pipe"],..."win32"===process.platform?"TURBOPACK unreachable":{}}),d=setTimeout(()=>{l=!0,c.kill("SIGKILL")},n),p=e=>{u||(u=!0,clearTimeout(d),s(e))};c.stdout.on("data",e=>{i+=e.toString()}),c.stderr.on("data",e=>{o+=e.toString()}),c.on("error",e=>{p({ok:!1,code:null,stdout:i.trim(),stderr:o.trim(),timedOut:l,error:e?.message||"spawn_error"})}),c.on("close",e=>{p({ok:!l&&0===e,code:e,stdout:i.trim(),stderr:o.trim(),timedOut:l,error:l?"timeout":null})})}),u=["&","|",";","<",">","(",")","`","$","^","%","!"],c=async e=>{if(!(!(!e||!n.default.isAbsolute(e)||u.some(t=>e.includes(t)))&&1))return{installed:!1,commandPath:null,reason:"unsafe_path"};try{await t.default.access(e,t.default.constants.F_OK)}catch{return{installed:!1,commandPath:null,reason:"not_found"}}try{return await t.default.access(e,t.default.constants.X_OK),{installed:!0,commandPath:e,reason:null}}catch{return{installed:!0,commandPath:e,reason:"not_executable"}}},d=async(e,t)=>{if(!e)return{installed:!1,commandPath:null,reason:"missing_command"};if(e.includes("/")||e.includes("\\"))return c(e);process.platform;let r=await l("sh",["-c",'command -v -- "$1"',"sh",e],{env:t,timeoutMs:3e3});if(!r.ok||!r.stdout)return{installed:!1,commandPath:null,reason:"not_found"};let n=r.stdout.split(/\r?\n/).map(e=>e.trim()).find(Boolean)||null;return{installed:!!n,commandPath:n,reason:n?null:"not_found"}},p=async(e,t)=>{if(!Array.isArray(e)||0===e.length)return{command:null,installed:!1,commandPath:null,reason:"missing_command"};for(let r of e){let e=await d(r,t);if(e.installed||"not_found"!==e.reason)return{command:r,...e}}return{command:e[0],installed:!1,commandPath:null,reason:"not_found"}},f=async(e,t,r=4e3)=>{for(let n of[["--version"],["-v"]])if((await l(e,n,{env:t,timeoutMs:r})).ok)return{runnable:!0,reason:null};return{runnable:!1,reason:"healthcheck_failed"}},h=e=>{let t=o[e];if(!t)return null;let a=String(process.env.CLI_CONFIG_HOME||"").trim()||r.default.homedir();return Object.fromEntries(Object.entries(t.paths).map(([e,t])=>[e,n.default.join(a,t)]))},m=async e=>{let t,r,a,i=o[e],l=(t=String(process.env.CLI_MODE||"auto").trim().toLowerCase(),s.has(t)?t:"auto");if(!i)return{installed:!1,runnable:!1,command:null,commandPath:null,reason:"unknown_tool",runtimeMode:l,requiresBinary:!1};let u=(r={...process.env},(a=String(process.env.CLI_EXTRA_PATHS||"").split(n.default.delimiter).map(e=>e.trim()).filter(Boolean)).length>0&&(r.PATH=[...a,r.PATH||""].filter(Boolean).join(n.default.delimiter)),r),c=(e=>{let t=o[e];if(!t)return[];let r=String(process.env[t.envBinKey]||"").trim();return r?[r]:Array.isArray(t.defaultCommands)&&t.defaultCommands.length>0?t.defaultCommands.filter(Boolean):t.defaultCommand?[t.defaultCommand]:[]})(e),d=!1!==i.requiresBinary;if(!d&&0===c.length)return{installed:!0,runnable:!0,command:null,commandPath:null,reason:"not_required",runtimeMode:l,requiresBinary:d};let h=await p(c,u),m=h.command;if(!h.installed)return{installed:!1,runnable:!1,command:m,commandPath:null,reason:h.reason||"not_found",runtimeMode:l,requiresBinary:d};if("not_executable"===h.reason)return{installed:!0,runnable:!1,command:m,commandPath:h.commandPath,reason:"not_executable",runtimeMode:l,requiresBinary:d};let g=await f(h.commandPath,u,Number(i.healthcheckTimeoutMs||4e3));return{installed:!0,runnable:g.runnable,command:m,commandPath:h.commandPath,reason:g.reason,runtimeMode:l,requiresBinary:d}},g=Object.keys(o);e.s(["CLI_TOOL_IDS",0,g,"ensureCliConfigWriteAllowed",0,()=>((e,t=!0)=>null==e||""===e?t:!i.has(String(e).trim().toLowerCase()))(process.env.CLI_ALLOW_CONFIG_WRITES,!0)?null:"CLI config writes are disabled (CLI_ALLOW_CONFIG_WRITES=false)","getCliConfigPaths",0,h,"getCliPrimaryConfigPath",0,e=>{let t=h(e);if(!t)return null;let r=Object.keys(t)[0];return r?t[r]:null},"getCliRuntimeStatus",0,m])},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(997953)},195975,(e,t,r)=>{"use strict";function n(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},841788,e=>{"use strict";var t=e.i(924868),r=e.i(814747),n=e.i(256770);let a=r.default.join((0,n.resolveDataDir)(),"backups");function s(...e){let t=r.default.resolve(a,...e),n=r.default.resolve(a);if(t!==n&&!t.startsWith(n+r.default.sep))throw Error("Invalid path: directory traversal detected");return t}async function i(e){let r=s(e);return await t.default.mkdir(r,{recursive:!0}),r}async function o(e,n){let a,s,o;try{await t.default.access(n)}catch{return null}let l=await i(e),u=(a=r.default.extname(n),s=r.default.basename(n,a),o=new Date().toISOString().replace(/[:.]/g,"-"),`${s}_${o}${a}`),c=r.default.join(l,u);return await t.default.copyFile(n,c),await t.default.writeFile(c+".meta.json",JSON.stringify({originalPath:n,backupName:u,toolId:e,createdAt:new Date().toISOString()})),await p(e),c}async function l(e,t){let r=[];for(let n of t){let t=await o(e,n);r.push(t)}return r}async function u(e){let n,a=s(e);try{n=await t.default.readdir(a)}catch{return[]}let i=n.filter(e=>e.endsWith(".meta.json")),o=[];for(let e of i)try{let n=r.default.join(a,e),s=await t.default.readFile(n,"utf-8"),i=JSON.parse(s),l=e.replace(".meta.json",""),u=r.default.join(a,l),c=0;try{c=(await t.default.stat(u)).size}catch{continue}o.push({id:l,toolId:i.toolId,originalPath:i.originalPath,createdAt:i.createdAt,size:c})}catch{}return o.sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()),o}async function c(e,n){let a;s(e);let i=s(e,n),l=i+".meta.json";try{let e=await t.default.readFile(l,"utf-8");a=JSON.parse(e)}catch{throw Error(`Backup metadata not found: ${n}`)}try{await t.default.access(i)}catch{throw Error(`Backup file not found: ${n}`)}await o(e,a.originalPath);let u=r.default.dirname(a.originalPath);return await t.default.mkdir(u,{recursive:!0}),await t.default.copyFile(i,a.originalPath),{restored:!0,backupId:n,originalPath:a.originalPath}}async function d(e,r){let n=s(e,r);try{await t.default.unlink(n)}catch{}try{await t.default.unlink(n+".meta.json")}catch{}return{deleted:!0,backupId:r}}async function p(e){let t=await u(e),n={};for(let e of t){let t=r.default.basename(e.originalPath);n[t]||(n[t]=[]),n[t].push(e)}for(let[,t]of Object.entries(n))if(t.length>5)for(let r of t.slice(5))await d(e,r.id)}e.s(["createBackup",()=>o,"createMultiBackup",()=>l,"deleteBackup",()=>d,"listBackups",()=>u,"restoreBackup",()=>c])},522051,e=>e.a(async(t,r)=>{try{var n=e.i(745015),a=e.i(89171),s=e.i(924868),i=e.i(814747),o=e.i(266240),l=e.i(841788),u=e.i(197892),c=e.i(676088),d=e.i(200392),p=e.i(195975),f=t([c,d]);[c,d]=f.then?(await f)():f;let y=()=>(0,o.getCliPrimaryConfigPath)("claude"),v=async()=>{try{let e=y(),t=await s.default.readFile(e,"utf-8");return JSON.parse(t)}catch(e){if("ENOENT"===e.code)return null;throw e}};async function h(){try{let e=await (0,o.getCliRuntimeStatus)("claude");if(!e.installed||!e.runnable)return a.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:null,message:e.installed&&!e.runnable?"Claude CLI is installed but not runnable":"Claude CLI is not installed"});let t=await v(),r=!!t?.env?.ANTHROPIC_BASE_URL;return a.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:t,hasOmniRoute:r,settingsPath:y()})}catch(e){return console.log("Error checking claude settings:",e),a.NextResponse.json({error:"Failed to check claude settings"},{status:500})}}async function m(e){let t;try{t=await e.json()}catch{return a.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return a.NextResponse.json({error:e},{status:403});let r=(0,d.validateBody)(c.cliSettingsEnvSchema,t);if((0,d.isValidationFailure)(r))return a.NextResponse.json({error:r.error},{status:400});let{env:n}=r.data,p=y(),f=i.default.dirname(p);await s.default.mkdir(f,{recursive:!0}),await (0,l.createBackup)("claude",p);let h={};try{let e=await s.default.readFile(p,"utf-8");h=JSON.parse(e)}catch(e){if("ENOENT"!==e.code)throw e}n.ANTHROPIC_BASE_URL&&(n.ANTHROPIC_BASE_URL=n.ANTHROPIC_BASE_URL.endsWith("/v1")?n.ANTHROPIC_BASE_URL:`${n.ANTHROPIC_BASE_URL}/v1`);let m={...h,env:{...h.env||{},...n}};await s.default.writeFile(p,JSON.stringify(m,null,2));try{(0,u.saveCliToolLastConfigured)("claude")}catch{}return a.NextResponse.json({success:!0,message:"Settings updated successfully"})}catch(e){return console.log("Error updating claude settings:",e),a.NextResponse.json({error:"Failed to update claude settings"},{status:500})}}let C=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL","API_TIMEOUT_MS"];async function g(){try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return a.NextResponse.json({error:e},{status:403});let t=y(),r={};try{let e=await s.default.readFile(t,"utf-8");r=JSON.parse(e)}catch(e){if("ENOENT"===e.code)return a.NextResponse.json({success:!0,message:"No settings file to reset"});throw e}await (0,l.createBackup)("claude",t),r.env&&(C.forEach(e=>{delete r.env[e]}),0===Object.keys(r.env).length&&delete r.env),await s.default.writeFile(t,JSON.stringify(r,null,2));try{(0,u.deleteCliToolLastConfigured)("claude")}catch{}return a.NextResponse.json({success:!0,message:"Settings reset successfully"})}catch(e){return console.log("Error resetting claude settings:",e),a.NextResponse.json({error:"Failed to reset claude settings"},{status:500})}}(0,p.ensureServerEntryExports)([h,m,g]),(0,n.registerServerReference)(h,"007e23a67b8696cbf30750ddc78f2cfc76143e9857",null),(0,n.registerServerReference)(m,"406fcbd50870a6766fe991cb3ff277e7024cfd9cc2",null),(0,n.registerServerReference)(g,"00f4bf792c072e5c65ed5328e907cc24b9674227fb",null),e.s(["DELETE",()=>g,"GET",()=>h,"POST",()=>m]),r()}catch(e){r(e)}},!1),825593,e=>e.a(async(t,r)=>{try{var n=e.i(747909),a=e.i(174017),s=e.i(996250),i=e.i(759756),o=e.i(561916),l=e.i(174677),u=e.i(869741),c=e.i(316795),d=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),m=e.i(570101),g=e.i(626937),y=e.i(10372),v=e.i(193695);e.i(52474);var C=e.i(600220),_=e.i(522051),w=t([_]);[_]=w.then?(await w)():w;let E=new n.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/cli-tools/claude-settings/route",pathname:"/api/cli-tools/claude-settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/claude-settings/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:O,workUnitAsyncStorage:b,serverHooks:A}=E;function x(){return(0,s.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:b})}async function R(e,t,r){E.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/cli-tools/claude-settings/route";n=n.replace(/\/index$/,"")||"/";let s=await E.prepare(e,t,{srcPage:n,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:w,nextConfig:x,parsedUrl:R,isDraftMode:O,prerenderManifest:b,routerServerContext:A,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,resolvedPathname:N,clientReferenceManifest:I,serverActionsManifest:T}=s,k=(0,u.normalizeAppPath)(n),j=!!(b.dynamicRoutes[k]||b.routes[N]),L=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!O){let e=!!b.routes[N],t=b.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(x.experimental.adapterPath)return await L();throw new v.NoFallbackError}}let B=null;!j||E.isDev||O||(B=N,B="/index"===B?"/":B);let D=!0===E.isDev||!j,q=j&&!D;T&&I&&(0,l.setManifestsSingleton)({page:n,clientReferenceManifest:I,serverActionsManifest:T});let M=e.method||"GET",U=(0,o.getTracer)(),H=U.getActiveScopeSpan(),F={params:w,prerenderManifest:b,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:x.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>E.onRequestError(e,t,n,a,A)},sharedContext:{buildId:_}},$=new c.NodeNextRequest(e),K=new c.NodeNextResponse(t),W=d.NextRequestAdapter.fromNodeNextRequest($,(0,d.signalFromNodeResponse)(t));try{let s=async e=>E.handle(W,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${n}`)}),l=!!(0,i.getRequestMeta)(e,"minimalMode"),u=async i=>{var o,u;let c=async({previousCacheEntry:a})=>{try{if(!l&&S&&P&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await s(i);e.fetchMetrics=F.renderOpts.fetchMetrics;let o=F.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let u=F.renderOpts.collectedTags;if(!j)return await (0,h.sendResponse)($,K,n,F.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[y.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,a=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:C.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:n,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:S})},!1,A),t}},d=await E.handleResponse({req:e,nextConfig:x,cacheKey:B,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:l});if(!j)return null;if((null==d||null==(o=d.value)?void 0:o.kind)!==C.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),O&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&j||p.delete(y.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)($,K,new Response(d.value.body,{headers:p,status:d.value.status||200})),null};H?await u(H):await U.withPropagatedContext(e.headers,()=>U.trace(p.BaseServerSpan.handleRequest,{spanName:`${M} ${n}`,kind:o.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},u))}catch(t){if(t instanceof v.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:S})},!1,A),j)throw t;return await (0,h.sendResponse)($,K,new Response(null,{status:500})),null}}e.s(["handler",()=>R,"patchFetch",()=>x,"routeModule",()=>E,"serverHooks",()=>A,"workAsyncStorage",()=>O,"workUnitAsyncStorage",()=>b]),r()}catch(e){r(e)}},!1)];
|
|
1
|
+
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>m,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>p,stringifyCookie:()=>c};for(var u in l)a(o,u,{get:l[u],enumerable:!0});function c(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),a=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?a:`${a}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[a,n]=[r.slice(0,e),r.slice(e+1)];try{t.set(a,decodeURIComponent(null!=n?n:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...a]=d(e),{domain:n,expires:s,httponly:i,maxage:o,path:l,samesite:u,secure:c,partitioned:p,priority:m}=Object.fromEntries(a.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,y,v={name:t,value:decodeURIComponent(r),domain:n,...s&&{expires:new Date(s)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...u&&{sameSite:f.includes(g=(g=u).toLowerCase())?g:void 0},...c&&{secure:!0},...m&&{priority:h.includes(y=(y=m).toLowerCase())?y:void 0},...p&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of s(t))i.call(e,r)||void 0===r||a(e,r,{get:()=>t[r],enumerable:!(o=n(t,r))||o.enumerable});return e})(a({},"__esModule",{value:!0}),o);var f=["strict","lax","none"],h=["low","medium","high"],m=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===a).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,a=this._parsed;return a.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(a).map(([e,t])=>c(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>c(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,a;this._parsed=new Map,this._headers=e;const n=null!=(a=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?a:[];for(const e of Array.isArray(n)?n:function(e){if(!e)return[];var t,r,a,n,s,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,s=!1;l();)if(","===(r=e.charAt(o))){for(a=o,o+=1,l(),n=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(s=!0,o=n,i.push(e.substring(t,a)),t=o):o=a+1}else o+=1;(!s||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(n)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===a)}has(e){return this._parsed.has(e)}set(...e){let[t,r,a]=1===e.length?[e[0].name,e[0].value,e[0]]:e,n=this._parsed;return n.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...a})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=c(r);t.append("set-cookie",e)}}(n,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(c).join("; ")}}},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},785148,(e,t,r)=>{t.exports=e.x("better-sqlite3",()=>require("better-sqlite3"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},256770,e=>{"use strict";var t=e.i(814747),r=e.i(446786);let a="omniroute";function n(){try{return r.default.homedir()}catch{return process.cwd()}}function s(e){if("string"!=typeof e)return null;let r=e.trim();return r?t.default.resolve(r):null}function i(){return t.default.join(n(),`.${a}`)}function o({isCloud:e=!1}={}){let r;if(e)return"/tmp";let l=s(process.env.DATA_DIR);return l?l:(n(),(r=s(process.env.XDG_CONFIG_HOME))?t.default.join(r,a):i())}function l(e,r){return!!e&&!!r&&t.default.resolve(e)===t.default.resolve(r)}e.s(["getLegacyDotDataDir",()=>i,"isSamePath",()=>l,"resolveDataDir",()=>o])},677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),n=t([a]);function s(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}function i(e){return!1===e.success}[a]=n.then?(await n)():n,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",()=>i,"validateBody",()=>s]),r()}catch(e){r(e)}},!1),233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},197892,e=>{"use strict";var t=e.i(157763);function r(e,a=new Date().toISOString()){t.isBuildPhase||t.isCloud||(0,t.getDbInstance)().prepare("INSERT OR REPLACE INTO key_value (namespace, key, value) VALUES (?, ?, ?)").run("cliToolLastConfig",e,JSON.stringify(a))}function a(){if(t.isBuildPhase||t.isCloud)return{};let e=(0,t.getDbInstance)().prepare("SELECT key, value FROM key_value WHERE namespace = ?").all("cliToolLastConfig"),r={};for(let t of e){let e=function(e){try{return JSON.parse(e)}catch{return null}}(t.value);"string"==typeof e&&(r[t.key]=e)}return r}function n(e){t.isBuildPhase||t.isCloud||(0,t.getDbInstance)().prepare("DELETE FROM key_value WHERE namespace = ? AND key = ?").run("cliToolLastConfig",e)}e.s(["deleteCliToolLastConfigured",()=>n,"getAllCliToolLastConfigured",()=>a,"saveCliToolLastConfigured",()=>r])},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},266240,e=>{"use strict";var t=e.i(924868),r=e.i(446786),a=e.i(814747),n=e.i(233405);let s=new Set(["auto","host","container"]),i=new Set(["0","false","no","off"]),o={claude:{defaultCommand:"claude",envBinKey:"CLI_CLAUDE_BIN",requiresBinary:!0,healthcheckTimeoutMs:4e3,paths:{settings:".claude/settings.json"}},codex:{defaultCommand:"codex",envBinKey:"CLI_CODEX_BIN",requiresBinary:!0,healthcheckTimeoutMs:4e3,paths:{config:".codex/config.toml",auth:".codex/auth.json"}},droid:{defaultCommand:"droid",envBinKey:"CLI_DROID_BIN",requiresBinary:!0,healthcheckTimeoutMs:8e3,paths:{settings:".factory/settings.json"}},openclaw:{defaultCommand:"openclaw",envBinKey:"CLI_OPENCLAW_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{settings:".openclaw/openclaw.json"}},cursor:{defaultCommands:["agent","cursor"],envBinKey:"CLI_CURSOR_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{config:".cursor/cli-config.json",auth:".config/cursor/auth.json",state:".cursor/agent-cli-state.json"}},cline:{defaultCommand:"cline",envBinKey:"CLI_CLINE_BIN",requiresBinary:!0,healthcheckTimeoutMs:12e3,paths:{globalState:".cline/data/globalState.json",secrets:".cline/data/secrets.json"}},kilo:{defaultCommand:"kilocode",envBinKey:"CLI_KILO_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{auth:".local/share/kilo/auth.json"}},continue:{defaultCommand:null,envBinKey:"CLI_CONTINUE_BIN",requiresBinary:!1,healthcheckTimeoutMs:15e3,paths:{settings:".continue/config.json"}},opencode:{defaultCommand:"opencode",envBinKey:"CLI_OPENCODE_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{config:".config/opencode/config.toml"}}},l=(e,t,{env:r,timeoutMs:a=3e3}={})=>new Promise(s=>{let i="",o="",l=!1,u=!1,c=(0,n.spawn)(e,t,{env:r,stdio:["ignore","pipe","pipe"],..."win32"===process.platform?"TURBOPACK unreachable":{}}),d=setTimeout(()=>{l=!0,c.kill("SIGKILL")},a),p=e=>{u||(u=!0,clearTimeout(d),s(e))};c.stdout.on("data",e=>{i+=e.toString()}),c.stderr.on("data",e=>{o+=e.toString()}),c.on("error",e=>{p({ok:!1,code:null,stdout:i.trim(),stderr:o.trim(),timedOut:l,error:e?.message||"spawn_error"})}),c.on("close",e=>{p({ok:!l&&0===e,code:e,stdout:i.trim(),stderr:o.trim(),timedOut:l,error:l?"timeout":null})})}),u=["&","|",";","<",">","(",")","`","$","^","%","!"],c=async e=>{if(!(!(!e||!a.default.isAbsolute(e)||u.some(t=>e.includes(t)))&&1))return{installed:!1,commandPath:null,reason:"unsafe_path"};try{await t.default.access(e,t.default.constants.F_OK)}catch{return{installed:!1,commandPath:null,reason:"not_found"}}try{return await t.default.access(e,t.default.constants.X_OK),{installed:!0,commandPath:e,reason:null}}catch{return{installed:!0,commandPath:e,reason:"not_executable"}}},d=async(e,t)=>{if(!e)return{installed:!1,commandPath:null,reason:"missing_command"};if(e.includes("/")||e.includes("\\"))return c(e);process.platform;let r=await l("sh",["-c",'command -v -- "$1"',"sh",e],{env:t,timeoutMs:3e3});if(!r.ok||!r.stdout)return{installed:!1,commandPath:null,reason:"not_found"};let a=r.stdout.split(/\r?\n/).map(e=>e.trim()).find(Boolean)||null;return{installed:!!a,commandPath:a,reason:a?null:"not_found"}},p=async(e,t)=>{if(!Array.isArray(e)||0===e.length)return{command:null,installed:!1,commandPath:null,reason:"missing_command"};for(let r of e){let e=await d(r,t);if(e.installed||"not_found"!==e.reason)return{command:r,...e}}return{command:e[0],installed:!1,commandPath:null,reason:"not_found"}},f=async(e,t,r=4e3)=>{for(let a of[["--version"],["-v"]])if((await l(e,a,{env:t,timeoutMs:r})).ok)return{runnable:!0,reason:null};return{runnable:!1,reason:"healthcheck_failed"}},h=e=>{let t=o[e];if(!t)return null;let n=String(process.env.CLI_CONFIG_HOME||"").trim()||r.default.homedir();return Object.fromEntries(Object.entries(t.paths).map(([e,t])=>[e,a.default.join(n,t)]))},m=async e=>{let t,r,n,i=o[e],l=(t=String(process.env.CLI_MODE||"auto").trim().toLowerCase(),s.has(t)?t:"auto");if(!i)return{installed:!1,runnable:!1,command:null,commandPath:null,reason:"unknown_tool",runtimeMode:l,requiresBinary:!1};let u=(r={...process.env},(n=String(process.env.CLI_EXTRA_PATHS||"").split(a.default.delimiter).map(e=>e.trim()).filter(Boolean)).length>0&&(r.PATH=[...n,r.PATH||""].filter(Boolean).join(a.default.delimiter)),r),c=(e=>{let t=o[e];if(!t)return[];let r=String(process.env[t.envBinKey]||"").trim();return r?[r]:Array.isArray(t.defaultCommands)&&t.defaultCommands.length>0?t.defaultCommands.filter(Boolean):t.defaultCommand?[t.defaultCommand]:[]})(e),d=!1!==i.requiresBinary;if(!d&&0===c.length)return{installed:!0,runnable:!0,command:null,commandPath:null,reason:"not_required",runtimeMode:l,requiresBinary:d};let h=await p(c,u),m=h.command;if(!h.installed)return{installed:!1,runnable:!1,command:m,commandPath:null,reason:h.reason||"not_found",runtimeMode:l,requiresBinary:d};if("not_executable"===h.reason)return{installed:!0,runnable:!1,command:m,commandPath:h.commandPath,reason:"not_executable",runtimeMode:l,requiresBinary:d};let g=await f(h.commandPath,u,Number(i.healthcheckTimeoutMs||4e3));return{installed:!0,runnable:g.runnable,command:m,commandPath:h.commandPath,reason:g.reason,runtimeMode:l,requiresBinary:d}},g=Object.keys(o);e.s(["CLI_TOOL_IDS",0,g,"ensureCliConfigWriteAllowed",0,()=>((e,t=!0)=>null==e||""===e?t:!i.has(String(e).trim().toLowerCase()))(process.env.CLI_ALLOW_CONFIG_WRITES,!0)?null:"CLI config writes are disabled (CLI_ALLOW_CONFIG_WRITES=false)","getCliConfigPaths",0,h,"getCliPrimaryConfigPath",0,e=>{let t=h(e);if(!t)return null;let r=Object.keys(t)[0];return r?t[r]:null},"getCliRuntimeStatus",0,m])},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return a.registerServerReference}});let a=e.r(997953)},195975,(e,t,r)=>{"use strict";function a(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},841788,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(256770);let n=r.default.join((0,a.resolveDataDir)(),"backups");function s(...e){let t=r.default.resolve(n,...e),a=r.default.resolve(n);if(t!==a&&!t.startsWith(a+r.default.sep))throw Error("Invalid path: directory traversal detected");return t}async function i(e){let r=s(e);return await t.default.mkdir(r,{recursive:!0}),r}async function o(e,a){let n,s,o;try{await t.default.access(a)}catch{return null}let l=await i(e),u=(n=r.default.extname(a),s=r.default.basename(a,n),o=new Date().toISOString().replace(/[:.]/g,"-"),`${s}_${o}${n}`),c=r.default.join(l,u);return await t.default.copyFile(a,c),await t.default.writeFile(c+".meta.json",JSON.stringify({originalPath:a,backupName:u,toolId:e,createdAt:new Date().toISOString()})),await p(e),c}async function l(e,t){let r=[];for(let a of t){let t=await o(e,a);r.push(t)}return r}async function u(e){let a,n=s(e);try{a=await t.default.readdir(n)}catch{return[]}let i=a.filter(e=>e.endsWith(".meta.json")),o=[];for(let e of i)try{let a=r.default.join(n,e),s=await t.default.readFile(a,"utf-8"),i=JSON.parse(s),l=e.replace(".meta.json",""),u=r.default.join(n,l),c=0;try{c=(await t.default.stat(u)).size}catch{continue}o.push({id:l,toolId:i.toolId,originalPath:i.originalPath,createdAt:i.createdAt,size:c})}catch{}return o.sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()),o}async function c(e,a){let n;s(e);let i=s(e,a),l=i+".meta.json";try{let e=await t.default.readFile(l,"utf-8");n=JSON.parse(e)}catch{throw Error(`Backup metadata not found: ${a}`)}try{await t.default.access(i)}catch{throw Error(`Backup file not found: ${a}`)}await o(e,n.originalPath);let u=r.default.dirname(n.originalPath);return await t.default.mkdir(u,{recursive:!0}),await t.default.copyFile(i,n.originalPath),{restored:!0,backupId:a,originalPath:n.originalPath}}async function d(e,r){let a=s(e,r);try{await t.default.unlink(a)}catch{}try{await t.default.unlink(a+".meta.json")}catch{}return{deleted:!0,backupId:r}}async function p(e){let t=await u(e),a={};for(let e of t){let t=r.default.basename(e.originalPath);a[t]||(a[t]=[]),a[t].push(e)}for(let[,t]of Object.entries(a))if(t.length>5)for(let r of t.slice(5))await d(e,r.id)}e.s(["createBackup",()=>o,"createMultiBackup",()=>l,"deleteBackup",()=>d,"listBackups",()=>u,"restoreBackup",()=>c])},522051,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),s=e.i(924868),i=e.i(814747),o=e.i(266240),l=e.i(841788),u=e.i(197892),c=e.i(676088),d=e.i(200392),p=e.i(195975),f=t([c,d]);[c,d]=f.then?(await f)():f;let y=()=>(0,o.getCliPrimaryConfigPath)("claude"),v=async()=>{try{let e=y(),t=await s.default.readFile(e,"utf-8");return JSON.parse(t)}catch(e){if("ENOENT"===e.code)return null;throw e}};async function h(){try{let e=await (0,o.getCliRuntimeStatus)("claude");if(!e.installed||!e.runnable)return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:null,message:e.installed&&!e.runnable?"Claude CLI is installed but not runnable":"Claude CLI is not installed"});let t=await v(),r=!!t?.env?.ANTHROPIC_BASE_URL;return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:t,hasOmniRoute:r,settingsPath:y()})}catch(e){return console.log("Error checking claude settings:",e),n.NextResponse.json({error:"Failed to check claude settings"},{status:500})}}async function m(e){let t;try{t=await e.json()}catch{return n.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let r=(0,d.validateBody)(c.cliSettingsEnvSchema,t);if((0,d.isValidationFailure)(r))return n.NextResponse.json({error:r.error},{status:400});let{env:a}=r.data,p=y(),f=i.default.dirname(p);await s.default.mkdir(f,{recursive:!0}),await (0,l.createBackup)("claude",p);let h={};try{let e=await s.default.readFile(p,"utf-8");h=JSON.parse(e)}catch(e){if("ENOENT"!==e.code)throw e}a.ANTHROPIC_BASE_URL&&(a.ANTHROPIC_BASE_URL=a.ANTHROPIC_BASE_URL.endsWith("/v1")?a.ANTHROPIC_BASE_URL:`${a.ANTHROPIC_BASE_URL}/v1`);let m={...h,env:{...h.env||{},...a}};await s.default.writeFile(p,JSON.stringify(m,null,2));try{(0,u.saveCliToolLastConfigured)("claude")}catch{}return n.NextResponse.json({success:!0,message:"Settings updated successfully"})}catch(e){return console.log("Error updating claude settings:",e),n.NextResponse.json({error:"Failed to update claude settings"},{status:500})}}let C=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL","API_TIMEOUT_MS"];async function g(){try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let t=y(),r={};try{let e=await s.default.readFile(t,"utf-8");r=JSON.parse(e)}catch(e){if("ENOENT"===e.code)return n.NextResponse.json({success:!0,message:"No settings file to reset"});throw e}await (0,l.createBackup)("claude",t),r.env&&(C.forEach(e=>{delete r.env[e]}),0===Object.keys(r.env).length&&delete r.env),await s.default.writeFile(t,JSON.stringify(r,null,2));try{(0,u.deleteCliToolLastConfigured)("claude")}catch{}return n.NextResponse.json({success:!0,message:"Settings reset successfully"})}catch(e){return console.log("Error resetting claude settings:",e),n.NextResponse.json({error:"Failed to reset claude settings"},{status:500})}}(0,p.ensureServerEntryExports)([h,m,g]),(0,a.registerServerReference)(h,"005f4e450356ad38c45325e133e2410a6f98038a91",null),(0,a.registerServerReference)(m,"40ff617c784131763807a0d94c498c7183ca2159c1",null),(0,a.registerServerReference)(g,"00675523df5240ebdfa6ff16d4a26d97ddff240bc8",null),e.s(["DELETE",()=>g,"GET",()=>h,"POST",()=>m]),r()}catch(e){r(e)}},!1),825593,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),s=e.i(996250),i=e.i(759756),o=e.i(561916),l=e.i(174677),u=e.i(869741),c=e.i(316795),d=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),m=e.i(570101),g=e.i(626937),y=e.i(10372),v=e.i(193695);e.i(52474);var C=e.i(600220),_=e.i(522051),w=t([_]);[_]=w.then?(await w)():w;let E=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/cli-tools/claude-settings/route",pathname:"/api/cli-tools/claude-settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/claude-settings/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:O,workUnitAsyncStorage:b,serverHooks:A}=E;function x(){return(0,s.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:b})}async function R(e,t,r){E.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/cli-tools/claude-settings/route";a=a.replace(/\/index$/,"")||"/";let s=await E.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:w,nextConfig:x,parsedUrl:R,isDraftMode:O,prerenderManifest:b,routerServerContext:A,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,resolvedPathname:N,clientReferenceManifest:I,serverActionsManifest:T}=s,k=(0,u.normalizeAppPath)(a),j=!!(b.dynamicRoutes[k]||b.routes[N]),L=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!O){let e=!!b.routes[N],t=b.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(x.experimental.adapterPath)return await L();throw new v.NoFallbackError}}let B=null;!j||E.isDev||O||(B=N,B="/index"===B?"/":B);let D=!0===E.isDev||!j,q=j&&!D;T&&I&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:I,serverActionsManifest:T});let M=e.method||"GET",U=(0,o.getTracer)(),H=U.getActiveScopeSpan(),F={params:w,prerenderManifest:b,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:x.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>E.onRequestError(e,t,a,n,A)},sharedContext:{buildId:_}},$=new c.NodeNextRequest(e),K=new c.NodeNextResponse(t),W=d.NextRequestAdapter.fromNodeNextRequest($,(0,d.signalFromNodeResponse)(t));try{let s=async e=>E.handle(W,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${a}`)}),l=!!(0,i.getRequestMeta)(e,"minimalMode"),u=async i=>{var o,u;let c=async({previousCacheEntry:n})=>{try{if(!l&&S&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await s(i);e.fetchMetrics=F.renderOpts.fetchMetrics;let o=F.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let u=F.renderOpts.collectedTags;if(!j)return await (0,h.sendResponse)($,K,a,F.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(a.headers);u&&(t[y.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:C.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:S})},!1,A),t}},d=await E.handleResponse({req:e,nextConfig:x,cacheKey:B,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:l});if(!j)return null;if((null==d||null==(o=d.value)?void 0:o.kind)!==C.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),O&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&j||p.delete(y.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)($,K,new Response(d.value.body,{headers:p,status:d.value.status||200})),null};H?await u(H):await U.withPropagatedContext(e.headers,()=>U.trace(p.BaseServerSpan.handleRequest,{spanName:`${M} ${a}`,kind:o.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},u))}catch(t){if(t instanceof v.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:S})},!1,A),j)throw t;return await (0,h.sendResponse)($,K,new Response(null,{status:500})),null}}e.s(["handler",()=>R,"patchFetch",()=>x,"routeModule",()=>E,"serverHooks",()=>A,"workAsyncStorage",()=>O,"workUnitAsyncStorage",()=>b]),r()}catch(e){r(e)}},!1)];
|
|
3
3
|
|
|
4
4
|
//# sourceMappingURL=%5Broot-of-the-server%5D__80e3bfc3._.js.map
|