polyrouter 1.0.13 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +21 -17
- package/app/.next-cli-build/build-manifest.json +4 -4
- package/app/.next-cli-build/prerender-manifest.json +4 -4
- package/app/.next-cli-build/react-loadable-manifest.json +2 -2
- package/app/.next-cli-build/required-server-files.json +2 -1
- package/app/.next-cli-build/routes-manifest.json +24 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/realtime/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/realtime/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/realtime/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +7 -7
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/api/analytics/installation/route.js +1 -1
- package/app/.next-cli-build/server/app/api/analytics/installation/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/setup-password/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/setup-password/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/chatgpt-web/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mcp/chatgpt-web/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mcp/chatgpt-web/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mcp/chatgpt-web/status/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mcp/chatgpt-web/status/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mcp/chatgpt-web/status/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/chatgpt-web/cookie/route.js +1 -0
- package/app/.next-cli-build/server/app/api/oauth/chatgpt-web/cookie/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/oauth/chatgpt-web/cookie/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/trae/import/route.js +1 -0
- package/app/.next-cli-build/server/app/api/oauth/trae/import/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/oauth/trae/import/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/realtime/authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/realtime/authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/realtime/tickets/route.js +1 -1
- package/app/.next-cli-build/server/app/api/realtime/tickets/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/public-telemetry/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/public-telemetry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/rerank/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/rerank/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page.js +1 -1
- package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +7 -7
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/realtime.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/realtime.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/realtime.segments/!KGRhc2hib2FyZCk/dashboard/realtime/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/realtime.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/realtime.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/app/.next-cli-build/server/app/dashboard.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +7 -7
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing/page.js +1 -1
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +8 -8
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/login/page.js +1 -1
- package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +8 -8
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js +1 -1
- package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/privacy/page.js +1 -1
- package/app/.next-cli-build/server/app/privacy/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/privacy.html +1 -1
- package/app/.next-cli-build/server/app/privacy.rsc +7 -7
- package/app/.next-cli-build/server/app/privacy.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/privacy.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/privacy.segments/privacy/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app-paths-manifest.json +21 -17
- package/app/.next-cli-build/server/chunks/1522.js +4 -4
- package/app/.next-cli-build/server/chunks/1548.js +1 -0
- package/app/.next-cli-build/server/chunks/1605.js +1 -1
- package/app/.next-cli-build/server/chunks/1829.js +1 -1
- package/app/.next-cli-build/server/chunks/1882.js +1 -1
- package/app/.next-cli-build/server/chunks/2112.js +1 -1
- package/app/.next-cli-build/server/chunks/2194.js +1 -1
- package/app/.next-cli-build/server/chunks/2268.js +1 -1
- package/app/.next-cli-build/server/chunks/2430.js +3 -3
- package/app/.next-cli-build/server/chunks/318.js +19 -3
- package/app/.next-cli-build/server/chunks/3289.js +1 -1
- package/app/.next-cli-build/server/chunks/3792.js +1 -0
- package/app/.next-cli-build/server/chunks/3943.js +1 -1
- package/app/.next-cli-build/server/chunks/412.js +2 -2
- package/app/.next-cli-build/server/chunks/4123.js +1 -1
- package/app/.next-cli-build/server/chunks/4741.js +3 -3
- package/app/.next-cli-build/server/chunks/5699.js +1 -1
- package/app/.next-cli-build/server/chunks/6070.js +1 -1
- package/app/.next-cli-build/server/chunks/615.js +1 -1
- package/app/.next-cli-build/server/chunks/6198.js +8 -0
- package/app/.next-cli-build/server/chunks/6457.js +1 -1
- package/app/.next-cli-build/server/chunks/6922.js +1 -1
- package/app/.next-cli-build/server/chunks/7807.js +1 -1
- package/app/.next-cli-build/server/chunks/8012.js +65 -0
- package/app/.next-cli-build/server/chunks/8145.js +1 -1
- package/app/.next-cli-build/server/chunks/8185.js +1 -1
- package/app/.next-cli-build/server/chunks/827.js +1 -1
- package/app/.next-cli-build/server/chunks/869.js +1 -1
- package/app/.next-cli-build/server/chunks/8895.js +6 -6
- package/app/.next-cli-build/server/functions-config-manifest.json +7 -0
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +4 -4
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/KhMV8HKalIINcrsYyx_UA/_buildManifest.js +1 -0
- package/app/.next-cli-build/static/chunks/1321-ce94f3872cdc2b8f.js +1 -0
- package/app/.next-cli-build/static/chunks/1a258343.350d928b0613e312.js +1 -0
- package/app/.next-cli-build/static/chunks/3794-d29203733ca4633c.js +52 -0
- package/app/.next-cli-build/static/chunks/3959-c17dd6ecfa8473bf.js +65 -0
- package/app/.next-cli-build/static/chunks/4024-8b67be3a8eadaba2.js +1 -0
- package/app/.next-cli-build/static/chunks/5497-ba537b648bfa654b.js +7 -0
- package/app/.next-cli-build/static/chunks/{6357.3ff0f6c83619e67b.js → 6357.e71f577e1ac2017c.js} +1 -1
- package/app/.next-cli-build/static/chunks/9da6db1e-a477e67005ce8908.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/{page-03b2626d2312e74f.js → page-47d5fdc90d6fca50.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-670266ac42d639dc.js → page-08204e88492207c7.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-9d03ebc6b8993eb5.js → page-f144402147d2294b.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/{page-d159d9238efcc362.js → page-e30fcc4da9b7745b.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-b47aed52431835b6.js → page-a37110c851c7ee0f.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-269244fdc84ca89b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-8ed4bc941d85eaa9.js → page-b7509b81d68331d0.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-640540825e168b50.js → page-55b0f883389dd3e3.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-dc497ba0da1df139.js → page-c221787a1c591564.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-e78f0c4c8720237c.js → page-f1c47b3788dfc672.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-91cb73b1f2cba3eb.js → page-bf38caadfc3a7bb1.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-fa12b004f508748a.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-c4050748d6821b55.js → page-671236f428a777f5.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-904acbf5003a8eff.js +12 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-c31fbdfb86eea0b4.js → page-27a2cb517063a37c.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/{page-d0bb692dac18758c.js → page-7fecfa1a2f5b7d76.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-10691c9a6d96791c.js → page-87bf5774cfb7726a.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-6f8353c36a244ae6.js → page-e7bf1b150860b20a.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-c7b5e776132111f8.js → page-16264089e64d5bee.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-d30ed92db19690a1.js → page-f0bb10f1e7ff9c92.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/{page-9040b4357c33f048.js → page-0cd8186140146994.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-66a435207cb92313.js → page-2eaf87a9ff382644.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-4bc13394ac695b8c.js → page-40058f670fe500f5.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/layout-2ec2698af3e3e6e1.js +1 -0
- package/app/.next-cli-build/static/chunks/app/_global-error/page-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/analytics/installation/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/setup-password/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/init/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/chatgpt-web/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/chatgpt-web/status/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/chatgpt-web/cookie/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/trae/import/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/realtime/authorize/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/realtime/tickets/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/public-telemetry/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/edits/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/rerank/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/landing/page-8003579ac4a50ad7.js +1 -0
- package/app/.next-cli-build/static/chunks/app/login/{page-6667717a7afa8499.js → page-5ed7892846d9515e.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/{main-d2d664d299c2e1bc.js → main-f5790cdbdcedda06.js} +1 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-db2d88d6d88ed29b.js +1 -0
- package/app/.next-cli-build/static/chunks/{webpack-0f2e33a3ec5861c7.js → webpack-53761340c978c11c.js} +1 -1
- package/app/.next-cli-build/static/css/0dcaf31739cfe59e.css +1 -0
- package/app/custom-server.js +2 -0
- package/app/node_modules/@next/env/package.json +1 -1
- package/app/node_modules/@swc/helpers/esm/_interop_require_default.js +4 -0
- package/app/node_modules/@swc/helpers/esm/_interop_require_wildcard.js +36 -0
- package/app/node_modules/@swc/helpers/package.json +703 -469
- package/app/node_modules/baseline-browser-mapping/dist/index.cjs +1 -1
- package/app/node_modules/baseline-browser-mapping/package.json +3 -3
- package/app/node_modules/nanoid/package.json +1 -1
- package/app/node_modules/next/dist/build/swc/index.js +1 -1
- package/app/node_modules/next/dist/build/webpack-config.js +3 -3
- package/app/node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js +8 -6
- package/app/node_modules/next/dist/client/components/router-reducer/ppr-navigations.js +26 -20
- package/app/node_modules/next/dist/client/components/router-reducer/reducers/refresh-reducer.js +2 -1
- package/app/node_modules/next/dist/client/components/router-reducer/reducers/restore-reducer.js +5 -2
- package/app/node_modules/next/dist/client/components/router-reducer/reducers/server-action-reducer.js +2 -1
- package/app/node_modules/next/dist/client/components/router-reducer/reducers/server-patch-reducer.js +3 -1
- package/app/node_modules/next/dist/client/components/segment-cache/cache.js +150 -169
- package/app/node_modules/next/dist/client/components/segment-cache/navigation-testing-lock.js +16 -54
- package/app/node_modules/next/dist/client/components/segment-cache/navigation.js +115 -23
- package/app/node_modules/next/dist/client/components/segment-cache/optimistic-routes.js +61 -6
- package/app/node_modules/next/dist/client/components/segment-cache/scheduler.js +53 -36
- package/app/node_modules/next/dist/client/route-params.js +4 -8
- package/app/node_modules/next/dist/compiled/mini-css-extract-plugin/cjs.js +1 -1
- package/app/node_modules/next/dist/compiled/mini-css-extract-plugin/index.js +1 -1
- package/app/node_modules/next/dist/compiled/next-devtools/index.js +21 -21
- package/app/node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js +26 -26
- package/app/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +26 -26
- package/app/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +26 -26
- package/app/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js +24 -24
- package/app/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +2 -2
- package/app/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +9 -9
- package/app/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +9 -9
- package/app/node_modules/next/dist/compiled/sass-loader/cjs.js +1 -1
- package/app/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
- package/app/node_modules/next/dist/lib/turbopack-cache-seed.js +15 -7
- package/app/node_modules/next/dist/server/app-render/app-render.js +2 -0
- package/app/node_modules/next/dist/server/app-render/dev-validation-worker-snapshot.js +2 -1
- package/app/node_modules/next/dist/server/async-storage/request-store.js +29 -20
- package/app/node_modules/next/dist/server/async-storage/work-store.js +1 -0
- package/app/node_modules/next/dist/server/config.js +1 -1
- package/app/node_modules/next/dist/server/dev/dev-validation-worker-pool.js +90 -11
- package/app/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +24 -4
- package/app/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
- package/app/node_modules/next/dist/server/image-optimizer.js +1 -0
- package/app/node_modules/next/dist/server/lib/app-info-log.js +1 -1
- package/app/node_modules/next/dist/server/lib/encode-header-safe.js +44 -0
- package/app/node_modules/next/dist/server/lib/implicit-tags.js +3 -3
- package/app/node_modules/next/dist/server/lib/patch-fetch.js +2 -2
- package/app/node_modules/next/dist/server/lib/start-server.js +1 -1
- package/app/node_modules/next/dist/server/use-cache/handlers.js +14 -0
- package/app/node_modules/next/dist/server/web/spec-extension/adapters/headers.js +88 -2
- package/app/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
- package/app/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
- package/app/node_modules/next/dist/telemetry/events/version.js +2 -2
- package/app/node_modules/next/package.json +11 -11
- package/app/node_modules/sql.js/dist/sql-wasm.js +74 -73
- package/app/node_modules/sql.js/package.json +1 -1
- package/app/node_modules/ws/lib/permessage-deflate.js +3 -1
- package/app/node_modules/ws/package.json +1 -1
- package/app/package.json +5 -3
- package/app/public/downloads/polyrouter-connector/README.txt +14 -0
- package/app/public/downloads/polyrouter-connector/background.js +138 -0
- package/app/public/downloads/polyrouter-connector/content.js +61 -0
- package/app/public/downloads/polyrouter-connector/icon.png +0 -0
- package/app/public/downloads/polyrouter-connector/manifest.json +38 -0
- package/app/public/downloads/polyrouter-connector/popup.css +99 -0
- package/app/public/downloads/polyrouter-connector/popup.html +36 -0
- package/app/public/downloads/polyrouter-connector/popup.js +9 -0
- package/app/public/downloads/polyrouter-connector.zip +0 -0
- package/app/public/providers/trae.png +0 -0
- package/app/public/providers/trae.svg +5 -0
- package/app/server.js +1 -1
- package/package.json +1 -1
- package/app/.next-cli-build/server/chunks/2620.js +0 -1
- package/app/.next-cli-build/server/chunks/4185.js +0 -1
- package/app/.next-cli-build/server/chunks/5852.js +0 -8
- package/app/.next-cli-build/server/chunks/8230.js +0 -65
- package/app/.next-cli-build/static/chunks/1321-bdfb5e6d5dadcda7.js +0 -1
- package/app/.next-cli-build/static/chunks/1a258343.6854776462735bdd.js +0 -1
- package/app/.next-cli-build/static/chunks/3794-d7cddff008311ab3.js +0 -52
- package/app/.next-cli-build/static/chunks/4024-823f5cdd3f7f04cc.js +0 -1
- package/app/.next-cli-build/static/chunks/5497-325815f573697f27.js +0 -7
- package/app/.next-cli-build/static/chunks/8591-9aad5435634b497b.js +0 -65
- package/app/.next-cli-build/static/chunks/9da6db1e-976640ccbb1e41ba.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-2ab5b8a56273130e.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-1fdda6a6a711f69c.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-6022aa84d8a2143d.js +0 -12
- package/app/.next-cli-build/static/chunks/app/(dashboard)/layout-4a8ae0d8807210fe.js +0 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/analytics/installation/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/setup-password/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/realtime/authorize/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/realtime/tickets/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/public-telemetry/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/edits/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/rerank/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/landing/page-153102f46b226989.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-0ba50b07487d53e1.js +0 -1
- package/app/.next-cli-build/static/css/cfbc2ef62ed21a21.css +0 -1
- package/app/.next-cli-build/static/kpszOnTsyBdW7PAPsg2JX/_buildManifest.js +0 -1
- package/app/node_modules/next/dist/server/lib/encode-cache-tag.js +0 -45
- /package/app/.next-cli-build/static/{kpszOnTsyBdW7PAPsg2JX → KhMV8HKalIINcrsYyx_UA}/_ssgManifest.js +0 -0
|
@@ -33,9 +33,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
33
33
|
readOrCreateRouteCacheEntry: null,
|
|
34
34
|
readOrCreateSegmentCacheEntry: null,
|
|
35
35
|
readRouteCacheEntry: null,
|
|
36
|
-
readSegmentCacheEntry: null,
|
|
37
36
|
readSegmentCacheEntryForNavigation: null,
|
|
38
37
|
resolveStaleAt: null,
|
|
38
|
+
segmentCacheMap: null,
|
|
39
39
|
stripIsPartialByte: null,
|
|
40
40
|
upgradeToPendingSegment: null,
|
|
41
41
|
upsertSegmentEntry: null,
|
|
@@ -141,15 +141,15 @@ _export(exports, {
|
|
|
141
141
|
readRouteCacheEntry: function() {
|
|
142
142
|
return readRouteCacheEntry;
|
|
143
143
|
},
|
|
144
|
-
readSegmentCacheEntry: function() {
|
|
145
|
-
return readSegmentCacheEntry;
|
|
146
|
-
},
|
|
147
144
|
readSegmentCacheEntryForNavigation: function() {
|
|
148
145
|
return readSegmentCacheEntryForNavigation;
|
|
149
146
|
},
|
|
150
147
|
resolveStaleAt: function() {
|
|
151
148
|
return resolveStaleAt;
|
|
152
149
|
},
|
|
150
|
+
segmentCacheMap: function() {
|
|
151
|
+
return segmentCacheMap;
|
|
152
|
+
},
|
|
153
153
|
stripIsPartialByte: function() {
|
|
154
154
|
return stripIsPartialByte;
|
|
155
155
|
},
|
|
@@ -205,8 +205,8 @@ const MetadataOnlyRequestTree = [
|
|
|
205
205
|
null,
|
|
206
206
|
'metadata-only'
|
|
207
207
|
];
|
|
208
|
-
|
|
209
|
-
|
|
208
|
+
const routeCacheMap = (0, _cachemap.createCacheMap)();
|
|
209
|
+
const segmentCacheMap = (0, _cachemap.createCacheMap)();
|
|
210
210
|
// All invalidation listeners for the whole cache are tracked in single set.
|
|
211
211
|
// Since we don't yet support tag or path-based invalidation, there's no point
|
|
212
212
|
// tracking them any more granularly than this. Once we add granular
|
|
@@ -305,54 +305,30 @@ function readRouteCacheEntry(now, key) {
|
|
|
305
305
|
}
|
|
306
306
|
return null;
|
|
307
307
|
}
|
|
308
|
-
function
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
}
|
|
312
|
-
function readSegmentCacheEntryForNavigation(now, varyPath, restrictToShell = false) {
|
|
308
|
+
function readSegmentCacheEntryForNavigation(now, // The map the navigation is bound to: a locked navigation's driving-task
|
|
309
|
+
// map, or the shared map otherwise.
|
|
310
|
+
map, varyPath, restrictToShell = false) {
|
|
313
311
|
const isRevalidation = false;
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
// to mostly realistically happen in a production environment with a
|
|
322
|
-
// warm prefetch cache.
|
|
323
|
-
// If restrictToShell is true, it means we're navigating to a link that
|
|
324
|
-
// 1) has Partial Prefetching enabled, and 2) does not have a prefetch
|
|
325
|
-
// prop set. We should only allow the shell to render, not anything that
|
|
326
|
-
// varies on concrete route params.
|
|
327
|
-
const lookupVaryPath = restrictToShell ? (0, _varypath.getShellSegmentVaryPath)(varyPath) : varyPath;
|
|
328
|
-
// To prevent the test navigation from being "polluted" by earlier
|
|
329
|
-
// prefetches, we'll also only match entries that were created during
|
|
330
|
-
// the current lock scope. This is tracked by the `ownedEntries` set.
|
|
331
|
-
const ownedEntries = lock.ownedEntries;
|
|
332
|
-
// Besides that, the rest of the logic is the same as production.
|
|
333
|
-
const fulfilled = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), segmentCacheMap, lookupVaryPath, isRevalidation, true);
|
|
334
|
-
if (fulfilled !== null && ownedEntries.has(fulfilled)) {
|
|
335
|
-
return fulfilled;
|
|
336
|
-
}
|
|
337
|
-
const entry = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), segmentCacheMap, lookupVaryPath, isRevalidation, false);
|
|
338
|
-
if (entry !== null && ownedEntries.has(entry)) {
|
|
339
|
-
return entry;
|
|
340
|
-
}
|
|
341
|
-
return null;
|
|
342
|
-
}
|
|
312
|
+
let lookupVaryPath = varyPath;
|
|
313
|
+
if (process.env.__NEXT_EXPOSE_TESTING_API && restrictToShell) {
|
|
314
|
+
// Instant Navigation Testing API: we're navigating to a link that 1) has
|
|
315
|
+
// Partial Prefetching enabled, and 2) does not have a prefetch prop set.
|
|
316
|
+
// Only the shell may render, not anything that varies on concrete route
|
|
317
|
+
// params.
|
|
318
|
+
lookupVaryPath = (0, _varypath.getShellSegmentVaryPath)(varyPath);
|
|
343
319
|
}
|
|
344
320
|
// Prefer a Fulfilled entry (e.g. a cached shell) over a more-specific
|
|
345
321
|
// Pending/Rejected one so it renders immediately instead of blocking on an
|
|
346
322
|
// in-flight entry.
|
|
347
|
-
const fulfilled = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(),
|
|
323
|
+
const fulfilled = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, lookupVaryPath, isRevalidation, true);
|
|
348
324
|
if (fulfilled !== null) {
|
|
349
325
|
return fulfilled;
|
|
350
326
|
}
|
|
351
|
-
return (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(),
|
|
327
|
+
return (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, lookupVaryPath, isRevalidation, false);
|
|
352
328
|
}
|
|
353
|
-
function readRevalidatingSegmentCacheEntry(now, varyPath) {
|
|
329
|
+
function readRevalidatingSegmentCacheEntry(now, map, varyPath) {
|
|
354
330
|
const isRevalidation = true;
|
|
355
|
-
return (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(),
|
|
331
|
+
return (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, varyPath, isRevalidation, false);
|
|
356
332
|
}
|
|
357
333
|
function waitForSegmentCacheEntry(pendingEntry) {
|
|
358
334
|
// Because the entry is pending, there's already a in-progress request.
|
|
@@ -519,55 +495,29 @@ function deprecated_createOptimisticRouteTree(tree, newRenderedSearch) {
|
|
|
519
495
|
prefetchHints: tree.prefetchHints
|
|
520
496
|
};
|
|
521
497
|
}
|
|
522
|
-
function readOrCreateSegmentCacheEntry(now,
|
|
523
|
-
//
|
|
524
|
-
|
|
525
|
-
const existingEntry =
|
|
498
|
+
function readOrCreateSegmentCacheEntry(now, // The map the calling task operates in (`PrefetchTask.segmentCacheMap`,
|
|
499
|
+
// captured when the task was scheduled).
|
|
500
|
+
map, fetchStrategy, tree) {
|
|
501
|
+
const existingEntry = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, tree.varyPath, false, false);
|
|
526
502
|
if (existingEntry !== null) {
|
|
527
|
-
|
|
528
|
-
// Locked navigation: ignore entries that predate the lock so each
|
|
529
|
-
// navigation reads only data (re)fetched within the lock scope — a
|
|
530
|
-
// "clean read." But an entry we already created within this scope is
|
|
531
|
-
// reused like normal; otherwise the prefetch would discard the entry it
|
|
532
|
-
// just fetched on every scheduler pass and refetch forever. See
|
|
533
|
-
// navigation-testing-lock.ts.
|
|
534
|
-
const { getCurrentNavigationLock, trackNavigationLockPrefetchEntry } = require('./navigation-testing-lock');
|
|
535
|
-
const lock = getCurrentNavigationLock();
|
|
536
|
-
if (lock !== null && lock.ownedEntries.has(existingEntry)) {
|
|
537
|
-
// Track-on-reuse: when this navigation reuses an in-flight (Pending)
|
|
538
|
-
// entry it didn't spawn — e.g. a runtime-prefetch (PPRRuntime) upgrade
|
|
539
|
-
// started by an earlier prefetch in the scope — register it on this
|
|
540
|
-
// navigation's prefetch so the navigation awaits it before reading.
|
|
541
|
-
// Without this, the navigation can read while that upgrade is still
|
|
542
|
-
// pending and fall back to a less-specific fulfilled entry (the shell),
|
|
543
|
-
// never surfacing the resolved value.
|
|
544
|
-
//
|
|
545
|
-
// This is content-neutral: the entry is found by the concrete vary-path
|
|
546
|
-
// (not by strategy), so it's whatever the navigation would read at this
|
|
547
|
-
// key anyway. Tracking only controls whether we await it now versus
|
|
548
|
-
// suspend on it during the render, so it can't surface an entry the
|
|
549
|
-
// navigation wouldn't otherwise read. Tracking is deduped, so it's a
|
|
550
|
-
// no-op if we already spawned/tracked this entry.
|
|
551
|
-
if (existingEntry.status === _cachemap.EntryStatus.Pending) {
|
|
552
|
-
trackNavigationLockPrefetchEntry(navigationLockPrefetch, existingEntry);
|
|
553
|
-
}
|
|
554
|
-
return existingEntry;
|
|
555
|
-
}
|
|
556
|
-
} else {
|
|
557
|
-
return existingEntry;
|
|
558
|
-
}
|
|
503
|
+
return existingEntry;
|
|
559
504
|
}
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
505
|
+
return insertEmptySegmentCacheEntry(now, map, fetchStrategy, tree);
|
|
506
|
+
}
|
|
507
|
+
/**
|
|
508
|
+
* Creates an empty segment cache entry and inserts it into the cache, keyed
|
|
509
|
+
* at the vary path a request made with the given fetch strategy is stored
|
|
510
|
+
* under. The stale time is set to a default value; the actual stale time will
|
|
511
|
+
* be set when the entry is fulfilled with data from the server response.
|
|
512
|
+
*/ function insertEmptySegmentCacheEntry(now, map, fetchStrategy, tree) {
|
|
564
513
|
const varyPathForRequest = (0, _varypath.getSegmentVaryPathForRequest)(fetchStrategy, tree);
|
|
565
|
-
const
|
|
514
|
+
const emptyEntry = createDetachedSegmentCacheEntry(now);
|
|
566
515
|
const isRevalidation = false;
|
|
567
|
-
(0, _cachemap.setInCacheMap)(
|
|
568
|
-
return
|
|
516
|
+
(0, _cachemap.setInCacheMap)(map, varyPathForRequest, emptyEntry, isRevalidation);
|
|
517
|
+
return emptyEntry;
|
|
569
518
|
}
|
|
570
|
-
function readOrCreateRevalidatingSegmentEntry(now,
|
|
519
|
+
function readOrCreateRevalidatingSegmentEntry(now, // The map the calling task operates in (`PrefetchTask.segmentCacheMap`).
|
|
520
|
+
map, fetchStrategy, tree) {
|
|
571
521
|
// This function is called when we've already confirmed that a particular
|
|
572
522
|
// segment is cached, but we want to perform another request anyway in case it
|
|
573
523
|
// returns more complete and/or fresher data than we already have. The logic
|
|
@@ -594,7 +544,7 @@ function readOrCreateRevalidatingSegmentEntry(now, fetchStrategy, tree) {
|
|
|
594
544
|
// return a less generic entry upon revalidation. For now, though, this isn't
|
|
595
545
|
// a concern because the keypath is based solely on the prefetch strategy,
|
|
596
546
|
// not on data contained in the response.
|
|
597
|
-
const existingEntry = readRevalidatingSegmentCacheEntry(now, tree.varyPath);
|
|
547
|
+
const existingEntry = readRevalidatingSegmentCacheEntry(now, map, tree.varyPath);
|
|
598
548
|
if (existingEntry !== null) {
|
|
599
549
|
return existingEntry;
|
|
600
550
|
}
|
|
@@ -604,10 +554,11 @@ function readOrCreateRevalidatingSegmentEntry(now, fetchStrategy, tree) {
|
|
|
604
554
|
const varyPathForRequest = (0, _varypath.getSegmentVaryPathForRequest)(fetchStrategy, tree);
|
|
605
555
|
const pendingEntry = createDetachedSegmentCacheEntry(now);
|
|
606
556
|
const isRevalidation = true;
|
|
607
|
-
(0, _cachemap.setInCacheMap)(
|
|
557
|
+
(0, _cachemap.setInCacheMap)(map, varyPathForRequest, pendingEntry, isRevalidation);
|
|
608
558
|
return pendingEntry;
|
|
609
559
|
}
|
|
610
|
-
function overwriteRevalidatingSegmentCacheEntry(now,
|
|
560
|
+
function overwriteRevalidatingSegmentCacheEntry(now, // The map the calling task operates in (`PrefetchTask.segmentCacheMap`).
|
|
561
|
+
map, fetchStrategy, tree) {
|
|
611
562
|
// This function is called when we've already decided to replace an existing
|
|
612
563
|
// revalidation entry. Create a new entry and write it into the cache,
|
|
613
564
|
// overwriting the previous value. The stale time is set to a default value;
|
|
@@ -616,7 +567,7 @@ function overwriteRevalidatingSegmentCacheEntry(now, fetchStrategy, tree) {
|
|
|
616
567
|
const varyPathForRequest = (0, _varypath.getSegmentVaryPathForRequest)(fetchStrategy, tree);
|
|
617
568
|
const pendingEntry = createDetachedSegmentCacheEntry(now);
|
|
618
569
|
const isRevalidation = true;
|
|
619
|
-
(0, _cachemap.setInCacheMap)(
|
|
570
|
+
(0, _cachemap.setInCacheMap)(map, varyPathForRequest, pendingEntry, isRevalidation);
|
|
620
571
|
return pendingEntry;
|
|
621
572
|
}
|
|
622
573
|
/**
|
|
@@ -639,7 +590,12 @@ function overwriteRevalidatingSegmentCacheEntry(now, fetchStrategy, tree) {
|
|
|
639
590
|
// (TODO: can this be true if `candidateEntry.fetchStrategy >= existingEntry.fetchStrategy`?)
|
|
640
591
|
!existingEntry.isPartial && candidateEntry.isPartial);
|
|
641
592
|
}
|
|
642
|
-
function upsertSegmentEntry(now,
|
|
593
|
+
function upsertSegmentEntry(now, // The map the whole upsert (existing-entry read, insert, shadow eviction)
|
|
594
|
+
// operates in. Prefetch response-write paths pass the spawning task's map
|
|
595
|
+
// (`PrefetchTask.segmentCacheMap`), so a response that lands after a
|
|
596
|
+
// testing-lock scope boundary still writes into the map its entries
|
|
597
|
+
// live in.
|
|
598
|
+
map, varyPath, candidateEntry, // The fully concrete vary path a read for this segment position resolves
|
|
643
599
|
// against (all concrete param values, i.e. `tree.varyPath`) — the most
|
|
644
600
|
// specific path a read would use. Note this is the opposite of the
|
|
645
601
|
// generalized keying path that `getSegmentVaryPathForRequest` computes.
|
|
@@ -657,7 +613,7 @@ lookupVaryPath) {
|
|
|
657
613
|
// The entry is expired. We cannot upsert it.
|
|
658
614
|
return null;
|
|
659
615
|
}
|
|
660
|
-
const existingEntry =
|
|
616
|
+
const existingEntry = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, varyPath, false, false);
|
|
661
617
|
if (existingEntry !== null) {
|
|
662
618
|
// Don't replace a more specific segment with a less-specific one. A case where this
|
|
663
619
|
// might happen is if the existing segment was fetched via
|
|
@@ -703,9 +659,9 @@ lookupVaryPath) {
|
|
|
703
659
|
// what delete-then-insert did.
|
|
704
660
|
}
|
|
705
661
|
const isRevalidation = false;
|
|
706
|
-
(0, _cachemap.setInCacheMap)(
|
|
662
|
+
(0, _cachemap.setInCacheMap)(map, varyPath, candidateEntry, isRevalidation);
|
|
707
663
|
if (lookupVaryPath !== null) {
|
|
708
|
-
evictShadowingSegmentEntries(now, lookupVaryPath, candidateEntry);
|
|
664
|
+
evictShadowingSegmentEntries(now, map, lookupVaryPath, candidateEntry);
|
|
709
665
|
}
|
|
710
666
|
return candidateEntry;
|
|
711
667
|
}
|
|
@@ -739,7 +695,7 @@ lookupVaryPath) {
|
|
|
739
695
|
* Non-settled entries are never evicted here: a Pending entry is owned by an
|
|
740
696
|
* in-flight request that will settle it, and an Empty entry is a placeholder
|
|
741
697
|
* that a scheduler pass may still claim and upgrade.
|
|
742
|
-
*/ function evictShadowingSegmentEntries(now, lookupVaryPath, candidateEntry) {
|
|
698
|
+
*/ function evictShadowingSegmentEntries(now, map, lookupVaryPath, candidateEntry) {
|
|
743
699
|
// There can in principle be multiple shadowing entries at successively less
|
|
744
700
|
// specific keypaths, so loop until the read returns the candidate (or an
|
|
745
701
|
// entry we don't supersede). Each iteration re-reads and re-checks from
|
|
@@ -750,7 +706,7 @@ lookupVaryPath) {
|
|
|
750
706
|
// beyond any real fallback chain, which is bounded by the vary
|
|
751
707
|
// path's length.
|
|
752
708
|
for(let i = 0; i < 32; i++){
|
|
753
|
-
const shadowEntry =
|
|
709
|
+
const shadowEntry = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, lookupVaryPath, false, false);
|
|
754
710
|
if (shadowEntry === null || shadowEntry === candidateEntry) {
|
|
755
711
|
// The candidate is reachable from the lookup path (or the read missed
|
|
756
712
|
// entirely, e.g. because the candidate expired). Done.
|
|
@@ -795,16 +751,9 @@ function createDetachedSegmentCacheEntry(now) {
|
|
|
795
751
|
staleAt,
|
|
796
752
|
version: 0
|
|
797
753
|
};
|
|
798
|
-
if (process.env.__NEXT_EXPOSE_TESTING_API) {
|
|
799
|
-
// Instant Navigation Testing API: mark entries created during a lock scope
|
|
800
|
-
// as owned, so locked navigations match only data (re)fetched within the
|
|
801
|
-
// scope. No-op when no lock is held (always in production).
|
|
802
|
-
const { recordNavigationLockOwnedEntry } = require('./navigation-testing-lock');
|
|
803
|
-
recordNavigationLockOwnedEntry(emptyEntry);
|
|
804
|
-
}
|
|
805
754
|
return emptyEntry;
|
|
806
755
|
}
|
|
807
|
-
function upgradeToPendingSegment(emptyEntry, fetchStrategy
|
|
756
|
+
function upgradeToPendingSegment(emptyEntry, fetchStrategy) {
|
|
808
757
|
const pendingEntry = emptyEntry;
|
|
809
758
|
pendingEntry.status = _cachemap.EntryStatus.Pending;
|
|
810
759
|
pendingEntry.fetchStrategy = fetchStrategy;
|
|
@@ -820,17 +769,6 @@ function upgradeToPendingSegment(emptyEntry, fetchStrategy, navigationLockPrefet
|
|
|
820
769
|
// than when receiving the response, because it's guaranteed to happen
|
|
821
770
|
// before the data is read on the server.
|
|
822
771
|
pendingEntry.version = getCurrentSegmentCacheVersion();
|
|
823
|
-
if (process.env.__NEXT_EXPOSE_TESTING_API && // Instant Navigation Testing API only. Non-null when the requesting
|
|
824
|
-
// prefetch is driving a locked navigation, in which case the
|
|
825
|
-
// freshly-spawned pending entry is tracked against that navigation's
|
|
826
|
-
// prefetch state so the navigation waits for it to fulfill before reading
|
|
827
|
-
// it. Null at non-scheduler call sites (BFCache fulfillment, response
|
|
828
|
-
// processing), which don't spawn an in-flight request to wait on, and
|
|
829
|
-
// always in production.
|
|
830
|
-
navigationLockPrefetch !== null) {
|
|
831
|
-
const { trackNavigationLockPrefetchEntry } = require('./navigation-testing-lock');
|
|
832
|
-
trackNavigationLockPrefetchEntry(navigationLockPrefetch, pendingEntry);
|
|
833
|
-
}
|
|
834
772
|
return pendingEntry;
|
|
835
773
|
}
|
|
836
774
|
function attemptToFulfillDynamicSegmentFromBFCache(now, segment, tree) {
|
|
@@ -855,16 +793,15 @@ function attemptToFulfillDynamicSegmentFromBFCache(now, segment, tree) {
|
|
|
855
793
|
if (now > dynamicPrefetchStaleAt) {
|
|
856
794
|
return null;
|
|
857
795
|
}
|
|
858
|
-
const pendingSegment = upgradeToPendingSegment(segment, _types.FetchStrategy.Full
|
|
859
|
-
// navigation to wait on.
|
|
860
|
-
null);
|
|
796
|
+
const pendingSegment = upgradeToPendingSegment(segment, _types.FetchStrategy.Full);
|
|
861
797
|
const isPartial = false;
|
|
862
798
|
return fulfillSegmentCacheEntry(pendingSegment, bfcacheEntry.rsc, dynamicPrefetchStaleAt, isPartial, // bfcache data is concrete, never an ISR fallback.
|
|
863
799
|
false, _types.FetchStrategy.Full);
|
|
864
800
|
}
|
|
865
801
|
return null;
|
|
866
802
|
}
|
|
867
|
-
function attemptToUpgradeSegmentFromBFCache(now,
|
|
803
|
+
function attemptToUpgradeSegmentFromBFCache(now, // The map the calling task operates in (`PrefetchTask.segmentCacheMap`).
|
|
804
|
+
map, tree) {
|
|
868
805
|
const varyPath = tree.varyPath;
|
|
869
806
|
const bfcacheEntry = (0, _bfcache.readFromBFCache)(varyPath);
|
|
870
807
|
if (bfcacheEntry !== null) {
|
|
@@ -872,14 +809,12 @@ function attemptToUpgradeSegmentFromBFCache(now, tree) {
|
|
|
872
809
|
if (now > dynamicPrefetchStaleAt) {
|
|
873
810
|
return null;
|
|
874
811
|
}
|
|
875
|
-
const pendingSegment = upgradeToPendingSegment(createDetachedSegmentCacheEntry(now), _types.FetchStrategy.Full
|
|
876
|
-
// navigation to wait on.
|
|
877
|
-
null);
|
|
812
|
+
const pendingSegment = upgradeToPendingSegment(createDetachedSegmentCacheEntry(now), _types.FetchStrategy.Full);
|
|
878
813
|
const isPartial = false;
|
|
879
814
|
const newEntry = fulfillSegmentCacheEntry(pendingSegment, bfcacheEntry.rsc, dynamicPrefetchStaleAt, isPartial, // bfcache data is concrete, never an ISR fallback.
|
|
880
815
|
false, _types.FetchStrategy.Full);
|
|
881
816
|
const segmentVaryPath = (0, _varypath.getSegmentVaryPathForRequest)(_types.FetchStrategy.Full, tree);
|
|
882
|
-
const upserted = upsertSegmentEntry(now, segmentVaryPath, newEntry, // The concrete lookup path this BFCache upgrade applies to. (In
|
|
817
|
+
const upserted = upsertSegmentEntry(now, map, segmentVaryPath, newEntry, // The concrete lookup path this BFCache upgrade applies to. (In
|
|
883
818
|
// practice a Full request path is already fully concrete, so nothing
|
|
884
819
|
// can shadow the new entry and the shadow check is a no-op.)
|
|
885
820
|
tree.varyPath);
|
|
@@ -1244,7 +1179,9 @@ function convertRouteTreeToFlightRouterState(routeTree) {
|
|
|
1244
1179
|
}
|
|
1245
1180
|
return flightRouterState;
|
|
1246
1181
|
}
|
|
1247
|
-
async function fetchRouteOnCacheMiss(entry, key
|
|
1182
|
+
async function fetchRouteOnCacheMiss(entry, key, // The spawning task's `PrefetchTask.segmentCacheMap`, for the legacy
|
|
1183
|
+
// branch that writes segment data included in the tree response.
|
|
1184
|
+
map) {
|
|
1248
1185
|
// This function is allowed to use async/await because it contains the actual
|
|
1249
1186
|
// fetch that gets issued on a cache miss. Notice it writes the result to the
|
|
1250
1187
|
// cache entry directly, rather than return data that is then written by
|
|
@@ -1386,7 +1323,8 @@ async function fetchRouteOnCacheMiss(entry, key) {
|
|
|
1386
1323
|
// During this traversal, we accumulate additional data into this
|
|
1387
1324
|
// "accumulator" object.
|
|
1388
1325
|
const acc = {
|
|
1389
|
-
metadataVaryPath: null
|
|
1326
|
+
metadataVaryPath: null,
|
|
1327
|
+
treeDivergedFromBase: false
|
|
1390
1328
|
};
|
|
1391
1329
|
const routeTree = convertRootTreePrefetchToRouteTree(serverData, renderedPathname, renderedSearch, acc);
|
|
1392
1330
|
const metadataVaryPath = acc.metadataVaryPath;
|
|
@@ -1422,7 +1360,7 @@ async function fetchRouteOnCacheMiss(entry, key) {
|
|
|
1422
1360
|
const headVaryParams = (0, _varyparamsdecoding.readVaryParams)(serverData.h, serverData.r);
|
|
1423
1361
|
writeDynamicTreeResponseIntoCache(Date.now(), // The non-PPR response format is what we'd get if we prefetched these segments
|
|
1424
1362
|
// using the LoadingBoundary fetch strategy, so mark their cache entries accordingly.
|
|
1425
|
-
_types.FetchStrategy.LoadingBoundary, response, serverData, entry, couldBeIntercepted, canonicalUrl, routeIsPPREnabled, headVaryParams, serverData.r ?? null, pathname, search, nextUrl);
|
|
1363
|
+
_types.FetchStrategy.LoadingBoundary, response, serverData, entry, couldBeIntercepted, canonicalUrl, routeIsPPREnabled, headVaryParams, serverData.r ?? null, pathname, search, nextUrl, map);
|
|
1426
1364
|
}
|
|
1427
1365
|
if (!couldBeIntercepted) {
|
|
1428
1366
|
// This route will never be intercepted. So we can use this entry for all
|
|
@@ -1522,7 +1460,7 @@ fetchStrategy) {
|
|
|
1522
1460
|
}
|
|
1523
1461
|
const { serverResponse, shellResponse, responseSize, closed } = result;
|
|
1524
1462
|
const now = Date.now();
|
|
1525
|
-
writeSegmentBundleResponseVariants(serverResponse, shellResponse, responseSize, segments, segmentCount, now, fetchStrategy);
|
|
1463
|
+
writeSegmentBundleResponseVariants(task.segmentCacheMap, serverResponse, shellResponse, responseSize, segments, segmentCount, now, fetchStrategy);
|
|
1526
1464
|
// If the server served an upgradeable fallback shell, drive a localized
|
|
1527
1465
|
// retry loop to pick up the concrete version once the server's background
|
|
1528
1466
|
// regeneration finishes. Only the first such response per task starts a loop
|
|
@@ -1663,12 +1601,14 @@ fetchStrategy) {
|
|
|
1663
1601
|
* fallback-retry loop. The retry's bundle entries are already settled, so
|
|
1664
1602
|
* for that caller every write is a detached upsert and the rejection below
|
|
1665
1603
|
* is a no-op (it only touches Pending entries).
|
|
1666
|
-
*/ function writeSegmentBundleResponseVariants(
|
|
1604
|
+
*/ function writeSegmentBundleResponseVariants(// The map the bundle's entries live in (pinned when the request was
|
|
1605
|
+
// spawned).
|
|
1606
|
+
map, serverResponse, shellResponse, responseSize, segments, segmentCount, now, // Which walk spawned the bundle's entries; decides which payload fulfills
|
|
1667
1607
|
// them. See fetchSegmentsOnCacheMiss.
|
|
1668
1608
|
fetchStrategy) {
|
|
1669
1609
|
if (fetchStrategy === _types.FetchStrategy.StaticShell) {
|
|
1670
1610
|
if (shellResponse !== serverResponse) {
|
|
1671
|
-
writeSegmentBundleResponse(serverResponse, responseSize, detachEntriesFromSegmentBundle(segments), segmentCount, now, _types.FetchStrategy.PPR, _types.FetchStrategy.PPR);
|
|
1611
|
+
writeSegmentBundleResponse(map, serverResponse, responseSize, detachEntriesFromSegmentBundle(segments), segmentCount, now, _types.FetchStrategy.PPR, _types.FetchStrategy.PPR);
|
|
1672
1612
|
}
|
|
1673
1613
|
if (shellResponse === null) {
|
|
1674
1614
|
// No shell exists. Reject the spawned entries so the task isn't
|
|
@@ -1679,7 +1619,7 @@ fetchStrategy) {
|
|
|
1679
1619
|
// rejection's backoff expires.
|
|
1680
1620
|
rejectRemainingSegmentsInBundle(segments, now + 10 * 1000);
|
|
1681
1621
|
} else {
|
|
1682
|
-
writeSegmentBundleResponse(shellResponse, responseSize, segments, segmentCount, now, _types.FetchStrategy.StaticShell, // When the shell IS the full response (no shell/full split), the
|
|
1622
|
+
writeSegmentBundleResponse(map, shellResponse, responseSize, segments, segmentCount, now, _types.FetchStrategy.StaticShell, // When the shell IS the full response (no shell/full split), the
|
|
1683
1623
|
// entries this write fulfills carry full-tier content, so PPR is
|
|
1684
1624
|
// the strategy that describes it. They're still keyed at the shell
|
|
1685
1625
|
// vary path: that's the reusable slot, and it serves concrete
|
|
@@ -1688,9 +1628,9 @@ fetchStrategy) {
|
|
|
1688
1628
|
shellResponse === serverResponse ? _types.FetchStrategy.PPR : _types.FetchStrategy.StaticShell);
|
|
1689
1629
|
}
|
|
1690
1630
|
} else {
|
|
1691
|
-
writeSegmentBundleResponse(serverResponse, responseSize, segments, segmentCount, now, _types.FetchStrategy.PPR, _types.FetchStrategy.PPR);
|
|
1631
|
+
writeSegmentBundleResponse(map, serverResponse, responseSize, segments, segmentCount, now, _types.FetchStrategy.PPR, _types.FetchStrategy.PPR);
|
|
1692
1632
|
if (shellResponse !== null && shellResponse !== serverResponse) {
|
|
1693
|
-
writeSegmentBundleResponse(shellResponse, responseSize, detachEntriesFromSegmentBundle(segments), segmentCount, now, _types.FetchStrategy.StaticShell, _types.FetchStrategy.StaticShell);
|
|
1633
|
+
writeSegmentBundleResponse(map, shellResponse, responseSize, detachEntriesFromSegmentBundle(segments), segmentCount, now, _types.FetchStrategy.StaticShell, _types.FetchStrategy.StaticShell);
|
|
1694
1634
|
}
|
|
1695
1635
|
}
|
|
1696
1636
|
}
|
|
@@ -1714,7 +1654,7 @@ fetchStrategy) {
|
|
|
1714
1654
|
*
|
|
1715
1655
|
* Shared by the initial fetch and the localized fallback-retry loop (which
|
|
1716
1656
|
* re-issues the same request and upserts the upgraded result here).
|
|
1717
|
-
*/ function writeSegmentBundleResponse(serverResponse, responseSize, segments, segmentCount, now, fetchStrategy, // The strategy tier that describes this payload's CONTENT, recorded on
|
|
1657
|
+
*/ function writeSegmentBundleResponse(map, serverResponse, responseSize, segments, segmentCount, now, fetchStrategy, // The strategy tier that describes this payload's CONTENT, recorded on
|
|
1718
1658
|
// the entries it fulfills. Differs from `fetchStrategy` (which drives
|
|
1719
1659
|
// matching and keying) in one case: a StaticShell write whose payload IS
|
|
1720
1660
|
// the full response (no shell/full split) records PPR — see
|
|
@@ -1821,7 +1761,7 @@ payloadFetchStrategy) {
|
|
|
1821
1761
|
// downgrade it. (In the common case the slot already holds this
|
|
1822
1762
|
// very entry, which the upsert replaces in place.)
|
|
1823
1763
|
if (process.env.__NEXT_VARY_PARAMS) {
|
|
1824
|
-
upsertSegmentEntry(now, node.tree.shellVaryPath, fulfilledEntry, node.tree.varyPath);
|
|
1764
|
+
upsertSegmentEntry(now, map, node.tree.shellVaryPath, fulfilledEntry, node.tree.varyPath);
|
|
1825
1765
|
}
|
|
1826
1766
|
} else {
|
|
1827
1767
|
// Set the fulfilled entry into the canonical cache slot. Pass the
|
|
@@ -1830,15 +1770,14 @@ payloadFetchStrategy) {
|
|
|
1830
1770
|
// generic (i.e. the server re-keyed the segment), any stale settled
|
|
1831
1771
|
// entry at a more specific path (e.g. a partial shell entry) that
|
|
1832
1772
|
// would shadow this one is evicted. See evictShadowingSegmentEntries.
|
|
1833
|
-
upsertSegmentEntry(now, payloadVaryPath, fulfilledEntry, node.tree.varyPath);
|
|
1773
|
+
upsertSegmentEntry(now, map, payloadVaryPath, fulfilledEntry, node.tree.varyPath);
|
|
1834
1774
|
}
|
|
1835
1775
|
} else {
|
|
1836
1776
|
// We don't own this entry. Create a detached entry and attempt to
|
|
1837
1777
|
// upsert it into this payload's slot.
|
|
1838
1778
|
const detachedEntry = createDetachedSegmentCacheEntry(now);
|
|
1839
|
-
const fulfilledEntry = fulfillSegmentCacheEntry(upgradeToPendingSegment(detachedEntry, fetchStrategy,
|
|
1840
|
-
|
|
1841
|
-
upsertSegmentEntry(now, payloadVaryPath, fulfilledEntry, node.tree.varyPath);
|
|
1779
|
+
const fulfilledEntry = fulfillSegmentCacheEntry(upgradeToPendingSegment(detachedEntry, fetchStrategy), data.rsc, entryStaleAt, isPartial, responseIsUpgradeableISRFallback, recordedFetchStrategy);
|
|
1780
|
+
upsertSegmentEntry(now, map, payloadVaryPath, fulfilledEntry, node.tree.varyPath);
|
|
1842
1781
|
}
|
|
1843
1782
|
node = node.parent;
|
|
1844
1783
|
dataIndex++;
|
|
@@ -1995,7 +1934,7 @@ fetchStrategy) {
|
|
|
1995
1934
|
// allowed to revalidate.
|
|
1996
1935
|
const { serverResponse, shellResponse, responseSize } = result;
|
|
1997
1936
|
const now = Date.now();
|
|
1998
|
-
writeSegmentBundleResponseVariants(serverResponse, shellResponse, responseSize, segments, segmentCount, now, fetchStrategy);
|
|
1937
|
+
writeSegmentBundleResponseVariants(task.segmentCacheMap, serverResponse, shellResponse, responseSize, segments, segmentCount, now, fetchStrategy);
|
|
1999
1938
|
task.fallbackRetryStatus = _cachemap.EntryStatus.Fulfilled;
|
|
2000
1939
|
(0, _scheduler.pingPrefetchTask)(task);
|
|
2001
1940
|
return;
|
|
@@ -2157,7 +2096,7 @@ async function fetchSegmentPrefetchesUsingDynamicRequest(task, route, fetchStrat
|
|
|
2157
2096
|
staleAtForSpawnedEntries = shellStaleAt;
|
|
2158
2097
|
// Separately, we'll also cache the entire response, by upserting it
|
|
2159
2098
|
// into the cache.
|
|
2160
|
-
writePrerenderResponseIntoCache(now, _types.FetchStrategy.PPR, serverData.f, buildId, serverData.h, serverData.r ?? null, staleAt, dynamicRequestTree, renderedSearch, cacheData.isResponsePartial);
|
|
2099
|
+
writePrerenderResponseIntoCache(now, _types.FetchStrategy.PPR, serverData.f, buildId, serverData.h, serverData.r ?? null, staleAt, dynamicRequestTree, renderedSearch, cacheData.isResponsePartial, task.segmentCacheMap);
|
|
2161
2100
|
} else {
|
|
2162
2101
|
// This is _not_ a Shell prefetch, so the pending entries should be
|
|
2163
2102
|
// fulfilled with the entire response.
|
|
@@ -2170,7 +2109,7 @@ async function fetchSegmentPrefetchesUsingDynamicRequest(task, route, fetchStrat
|
|
|
2170
2109
|
// this path must be partial -- it does not represent the entire
|
|
2171
2110
|
// UI of the target page.
|
|
2172
2111
|
const isShellStagePartial = true;
|
|
2173
|
-
writePrerenderResponseIntoCache(now, _types.FetchStrategy.RuntimeShell, shellStageData.f, buildId, shellStageData.h, shellStageData.r ?? null, shellStaleAt, dynamicRequestTree, renderedSearch, isShellStagePartial);
|
|
2112
|
+
writePrerenderResponseIntoCache(now, _types.FetchStrategy.RuntimeShell, shellStageData.f, buildId, shellStageData.h, shellStageData.r ?? null, shellStaleAt, dynamicRequestTree, renderedSearch, isShellStagePartial, task.segmentCacheMap);
|
|
2174
2113
|
}
|
|
2175
2114
|
}
|
|
2176
2115
|
}
|
|
@@ -2193,10 +2132,38 @@ async function fetchSegmentPrefetchesUsingDynamicRequest(task, route, fetchStrat
|
|
|
2193
2132
|
}
|
|
2194
2133
|
const navigationSeed = (0, _navigation.convertServerPatchToFullTree)(now, dynamicRequestTree, flightDatas, renderedSearch, // Not needed for prefetch responses; pass unknown to use the default.
|
|
2195
2134
|
_bfcache.UnknownDynamicStaleTime);
|
|
2135
|
+
if (navigationSeed.treeDivergedFromBase && // A head-only request uses the MetadataOnlyRequestTree stub rather than
|
|
2136
|
+
// a tree derived from the route entry, so divergence from it carries
|
|
2137
|
+
// no signal.
|
|
2138
|
+
// TODO: This special case goes away once convertServerPatchToFullTree
|
|
2139
|
+
// diffs against the base RouteTree (route.tree) instead of the
|
|
2140
|
+
// request tree.
|
|
2141
|
+
dynamicRequestTree !== MetadataOnlyRequestTree) {
|
|
2142
|
+
// The server rendered a different route tree than the one we requested:
|
|
2143
|
+
// the URL has a rewrite that behaves dynamically, so the params baked
|
|
2144
|
+
// into the request are wrong and the server can never fulfill it. Mark
|
|
2145
|
+
// the route entry — which doubles as the stored prediction pattern, so
|
|
2146
|
+
// this also disables a bad prediction (see matchKnownRoute) that would
|
|
2147
|
+
// otherwise be re-derived on every retry — and invalidate entries that
|
|
2148
|
+
// were derived from it. This mirrors dispatchRetryDueToTreeMismatch on
|
|
2149
|
+
// the navigation path. It can't loop: the refetched route entry is
|
|
2150
|
+
// built from the server's response, so it only mismatches again if the
|
|
2151
|
+
// rewrite's behavior changes again.
|
|
2152
|
+
markRouteEntryAsDynamicRewrite(route);
|
|
2153
|
+
invalidateRouteCacheEntries(key.nextUrl, task.treeAtTimeOfPrefetch);
|
|
2154
|
+
// Reject with an immediate expiration instead of the usual backoff: the
|
|
2155
|
+
// invalidation above triggers a re-prefetch, which per the above does
|
|
2156
|
+
// not loop.
|
|
2157
|
+
// TODO: Consider also bounding retries with a counter on the task
|
|
2158
|
+
// object, so a prefetch that repeatedly fails to settle backs off
|
|
2159
|
+
// regardless of the reason.
|
|
2160
|
+
rejectSegmentEntriesIfStillPending(spawnedEntries, -1);
|
|
2161
|
+
return null;
|
|
2162
|
+
}
|
|
2196
2163
|
// Aside from writing the data into the cache, this function also returns
|
|
2197
2164
|
// the entries that were fulfilled, so we can streamingly update their sizes
|
|
2198
2165
|
// in the LRU as more data comes in.
|
|
2199
|
-
fulfilledEntries = writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, staleAtForSpawnedEntries, navigationSeed, spawnedEntries);
|
|
2166
|
+
fulfilledEntries = writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, staleAtForSpawnedEntries, navigationSeed, spawnedEntries, task.segmentCacheMap);
|
|
2200
2167
|
// For buffered responses, update LRU sizes now that we know which
|
|
2201
2168
|
// entries were fulfilled.
|
|
2202
2169
|
if (bufferedResponseSize !== null && fulfilledEntries !== null && fulfilledEntries.length > 0) {
|
|
@@ -2227,7 +2194,8 @@ async function fetchSegmentPrefetchesUsingDynamicRequest(task, route, fetchStrat
|
|
|
2227
2194
|
return null;
|
|
2228
2195
|
}
|
|
2229
2196
|
}
|
|
2230
|
-
function writeDynamicTreeResponseIntoCache(now, fetchStrategy, response, serverData, entry, couldBeIntercepted, canonicalUrl, routeIsPPREnabled, headVaryParams, rootVaryParamsIterable, originalPathname, originalSearch, nextUrl
|
|
2197
|
+
function writeDynamicTreeResponseIntoCache(now, fetchStrategy, response, serverData, entry, couldBeIntercepted, canonicalUrl, routeIsPPREnabled, headVaryParams, rootVaryParamsIterable, originalPathname, originalSearch, nextUrl, // The spawning task's `PrefetchTask.segmentCacheMap`.
|
|
2198
|
+
map) {
|
|
2231
2199
|
const renderedSearch = (0, _routeparams.getRenderedSearch)(response);
|
|
2232
2200
|
const normalizedFlightDataResult = (0, _flightdatahelpers.normalizeFlightData)(serverData.f);
|
|
2233
2201
|
if (// A string result means navigating to this route will result in an
|
|
@@ -2253,7 +2221,8 @@ function writeDynamicTreeResponseIntoCache(now, fetchStrategy, response, serverD
|
|
|
2253
2221
|
// During this traversal, we accumulate additional data into this
|
|
2254
2222
|
// "accumulator" object.
|
|
2255
2223
|
const acc = {
|
|
2256
|
-
metadataVaryPath: null
|
|
2224
|
+
metadataVaryPath: null,
|
|
2225
|
+
treeDivergedFromBase: false
|
|
2257
2226
|
};
|
|
2258
2227
|
const routeTree = convertRootFlightRouterStateToRouteTree(flightRouterState, renderedSearch, acc);
|
|
2259
2228
|
const metadataVaryPath = acc.metadataVaryPath;
|
|
@@ -2270,7 +2239,7 @@ function writeDynamicTreeResponseIntoCache(now, fetchStrategy, response, serverD
|
|
|
2270
2239
|
// can delete it. Leaving for a subsequent PR.
|
|
2271
2240
|
const navigationSeed = (0, _navigation.convertServerPatchToFullTree)(now, flightRouterState, normalizedFlightDataResult, renderedSearch, _bfcache.UnknownDynamicStaleTime);
|
|
2272
2241
|
const buildId = response.headers.get(_constants.NEXT_NAV_DEPLOYMENT_ID_HEADER) ?? serverData.b;
|
|
2273
|
-
writeDynamicRenderResponseIntoCache(now, fetchStrategy, normalizedFlightDataResult, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, getStaleAtFromHeader(now, response), navigationSeed, null);
|
|
2242
|
+
writeDynamicRenderResponseIntoCache(now, fetchStrategy, normalizedFlightDataResult, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, getStaleAtFromHeader(now, response), navigationSeed, null, map);
|
|
2274
2243
|
}
|
|
2275
2244
|
function rejectSegmentEntriesIfStillPending(entries, staleAt) {
|
|
2276
2245
|
const fulfilledEntries = [];
|
|
@@ -2283,7 +2252,12 @@ function rejectSegmentEntriesIfStillPending(entries, staleAt) {
|
|
|
2283
2252
|
}
|
|
2284
2253
|
return fulfilledEntries;
|
|
2285
2254
|
}
|
|
2286
|
-
function writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, staleAt, navigationSeed, spawnedEntries
|
|
2255
|
+
function writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, staleAt, navigationSeed, spawnedEntries, // The map the work that spawned this response's request is bound to: the
|
|
2256
|
+
// spawning task's `PrefetchTask.segmentCacheMap` for prefetches, the
|
|
2257
|
+
// navigation's map for navigation-side writes. Binding the write to the
|
|
2258
|
+
// requesting work means a response that lands after a testing-lock scope
|
|
2259
|
+
// boundary still writes into the map its entries live in.
|
|
2260
|
+
map) {
|
|
2287
2261
|
if (buildId && buildId !== (0, _navigationbuildid.getNavigationBuildId)()) {
|
|
2288
2262
|
// The server build does not match the client. Treat as a 404. During
|
|
2289
2263
|
// an actual navigation, the router will trigger an MPA navigation.
|
|
@@ -2318,7 +2292,9 @@ function writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, bu
|
|
|
2318
2292
|
return null;
|
|
2319
2293
|
}
|
|
2320
2294
|
}
|
|
2321
|
-
writeSeedDataIntoCache(now,
|
|
2295
|
+
writeSeedDataIntoCache(now, // A response write is bound to the map its entries live in (the
|
|
2296
|
+
// spawning task's `PrefetchTask.segmentCacheMap`).
|
|
2297
|
+
map, fetchStrategy, tree, staleAt, seedData, isResponsePartial, rootVaryParamsIterable, spawnedEntries);
|
|
2322
2298
|
}
|
|
2323
2299
|
const head = flightDataEntry.head;
|
|
2324
2300
|
if (head !== null && metadataTree !== null) {
|
|
@@ -2335,7 +2311,9 @@ function writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, bu
|
|
|
2335
2311
|
//
|
|
2336
2312
|
// Without Cache Components, the server sends the correct isHeadPartial.
|
|
2337
2313
|
const isHeadPartial = process.env.__NEXT_CACHE_COMPONENTS ? isResponsePartial : flightDataEntry.isHeadPartial;
|
|
2338
|
-
fulfillEntrySpawnedByRuntimePrefetch(now,
|
|
2314
|
+
fulfillEntrySpawnedByRuntimePrefetch(now, // A response write is bound to the map its entries live in (the
|
|
2315
|
+
// spawning task's `PrefetchTask.segmentCacheMap`).
|
|
2316
|
+
map, fetchStrategy, head, isHeadPartial, staleAt, // For head entries, use the head-specific vary params passed as
|
|
2339
2317
|
// parameter.
|
|
2340
2318
|
headVaryParams, metadataTree, spawnedEntries);
|
|
2341
2319
|
}
|
|
@@ -2354,7 +2332,7 @@ function writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, bu
|
|
|
2354
2332
|
}
|
|
2355
2333
|
return null;
|
|
2356
2334
|
}
|
|
2357
|
-
function writeSeedDataIntoCache(now, fetchStrategy, tree, staleAt, seedData, isResponsePartial, rootVaryParamsIterable, entriesOwnedByCurrentTask) {
|
|
2335
|
+
function writeSeedDataIntoCache(now, map, fetchStrategy, tree, staleAt, seedData, isResponsePartial, rootVaryParamsIterable, entriesOwnedByCurrentTask) {
|
|
2358
2336
|
// This function is used to write the result of a runtime server request
|
|
2359
2337
|
// (CacheNodeSeedData) into the prefetch cache.
|
|
2360
2338
|
const rsc = seedData[0];
|
|
@@ -2364,7 +2342,9 @@ function writeSeedDataIntoCache(now, fetchStrategy, tree, staleAt, seedData, isR
|
|
|
2364
2342
|
// iterable means tracking was not enabled (not a prerender). readVaryParams
|
|
2365
2343
|
// unions in the response-level root params.
|
|
2366
2344
|
const varyParams = (0, _varyparamsdecoding.readVaryParams)(seedData[4], rootVaryParamsIterable);
|
|
2367
|
-
fulfillEntrySpawnedByRuntimePrefetch(now,
|
|
2345
|
+
fulfillEntrySpawnedByRuntimePrefetch(now, // A response write is bound to the map its entries live in (the spawning
|
|
2346
|
+
// task's `PrefetchTask.segmentCacheMap`).
|
|
2347
|
+
map, fetchStrategy, rsc, isPartial, staleAt, varyParams, tree, entriesOwnedByCurrentTask);
|
|
2368
2348
|
// Recursively write the child data into the cache.
|
|
2369
2349
|
const slots = tree.slots;
|
|
2370
2350
|
if (slots !== null) {
|
|
@@ -2372,12 +2352,12 @@ function writeSeedDataIntoCache(now, fetchStrategy, tree, staleAt, seedData, isR
|
|
|
2372
2352
|
for (const [parallelRouteKey, childTree] of slots){
|
|
2373
2353
|
const childSeedData = seedDataChildren[parallelRouteKey];
|
|
2374
2354
|
if (childSeedData !== null && childSeedData !== undefined) {
|
|
2375
|
-
writeSeedDataIntoCache(now, fetchStrategy, childTree, staleAt, childSeedData, isResponsePartial, rootVaryParamsIterable, entriesOwnedByCurrentTask);
|
|
2355
|
+
writeSeedDataIntoCache(now, map, fetchStrategy, childTree, staleAt, childSeedData, isResponsePartial, rootVaryParamsIterable, entriesOwnedByCurrentTask);
|
|
2376
2356
|
}
|
|
2377
2357
|
}
|
|
2378
2358
|
}
|
|
2379
2359
|
}
|
|
2380
|
-
function fulfillEntrySpawnedByRuntimePrefetch(now, fetchStrategy, rsc, isPartial, staleAt, segmentVaryParams, tree, entriesOwnedByCurrentTask) {
|
|
2360
|
+
function fulfillEntrySpawnedByRuntimePrefetch(now, map, fetchStrategy, rsc, isPartial, staleAt, segmentVaryParams, tree, entriesOwnedByCurrentTask) {
|
|
2381
2361
|
// Decide whether to re-key the entry under a more generic vary path based on
|
|
2382
2362
|
// which params the segment actually depends on.
|
|
2383
2363
|
//
|
|
@@ -2421,7 +2401,7 @@ function fulfillEntrySpawnedByRuntimePrefetch(now, fetchStrategy, rsc, isPartial
|
|
|
2421
2401
|
const canonicalVaryPath = fulfilledVaryPath !== null ? fulfilledVaryPath : fetchStrategy !== _types.FetchStrategy.Full ? (0, _varypath.getSegmentVaryPathForRequest)(fetchStrategy, tree) : null;
|
|
2422
2402
|
if (canonicalVaryPath !== null) {
|
|
2423
2403
|
const isRevalidation = false;
|
|
2424
|
-
(0, _cachemap.setInCacheMap)(
|
|
2404
|
+
(0, _cachemap.setInCacheMap)(map, canonicalVaryPath, fulfilledEntry, isRevalidation);
|
|
2425
2405
|
// The re-key moved the entry to a more generic path (and, for a spawned
|
|
2426
2406
|
// revalidation, vacated its Revalidation slot). A stale settled entry
|
|
2427
2407
|
// at a more specific path — e.g. the partial entry that prompted the
|
|
@@ -2429,40 +2409,40 @@ function fulfillEntrySpawnedByRuntimePrefetch(now, fetchStrategy, rsc, isPartial
|
|
|
2429
2409
|
// causing the scheduler to keep re-reading the stale entry and respawn
|
|
2430
2410
|
// the revalidation forever. Evict it so the fulfilled entry is
|
|
2431
2411
|
// reachable. See evictShadowingSegmentEntries.
|
|
2432
|
-
evictShadowingSegmentEntries(now, tree.varyPath, fulfilledEntry);
|
|
2412
|
+
evictShadowingSegmentEntries(now, map, tree.varyPath, fulfilledEntry);
|
|
2433
2413
|
}
|
|
2434
2414
|
} else {
|
|
2435
|
-
// There's no matching entry. Attempt to create a new one.
|
|
2436
|
-
|
|
2437
|
-
|
|
2415
|
+
// There's no matching entry. Attempt to create a new one.
|
|
2416
|
+
let possiblyNewEntry = (0, _cachemap.getFromCacheMap)(now, getCurrentSegmentCacheVersion(), map, tree.varyPath, false, false);
|
|
2417
|
+
if (possiblyNewEntry === null) {
|
|
2418
|
+
possiblyNewEntry = insertEmptySegmentCacheEntry(now, map, fetchStrategy, tree);
|
|
2419
|
+
}
|
|
2438
2420
|
if (possiblyNewEntry.status === _cachemap.EntryStatus.Empty) {
|
|
2439
2421
|
// Confirmed this is a new entry. We can fulfill it.
|
|
2440
2422
|
const newEntry = possiblyNewEntry;
|
|
2441
|
-
const fulfilledEntry = fulfillSegmentCacheEntry(//
|
|
2442
|
-
upgradeToPendingSegment(newEntry, fetchStrategy, null), rsc, staleAt, isPartial, // Dynamic-request (Full/Runtime) responses are not ISR fallbacks.
|
|
2423
|
+
const fulfilledEntry = fulfillSegmentCacheEntry(upgradeToPendingSegment(newEntry, fetchStrategy), rsc, staleAt, isPartial, // Dynamic-request (Full/Runtime) responses are not ISR fallbacks.
|
|
2443
2424
|
false, fetchStrategy);
|
|
2444
2425
|
if (fulfilledVaryPath !== null) {
|
|
2445
2426
|
const isRevalidation = false;
|
|
2446
|
-
(0, _cachemap.setInCacheMap)(
|
|
2427
|
+
(0, _cachemap.setInCacheMap)(map, fulfilledVaryPath, fulfilledEntry, isRevalidation);
|
|
2447
2428
|
// Same as the owned-entry re-key above. Usually the entry really is
|
|
2448
2429
|
// new — the read a moment ago returned nothing at the concrete lookup
|
|
2449
2430
|
// path, so nothing can shadow it and this is a no-op — but this
|
|
2450
2431
|
// branch also claims a pre-existing Empty entry, and re-keying that
|
|
2451
2432
|
// away can expose a stale settled entry at an intermediate path.
|
|
2452
|
-
evictShadowingSegmentEntries(now, tree.varyPath, fulfilledEntry);
|
|
2433
|
+
evictShadowingSegmentEntries(now, map, tree.varyPath, fulfilledEntry);
|
|
2453
2434
|
}
|
|
2454
2435
|
} else {
|
|
2455
2436
|
// There was already an entry in the cache. But we may be able to
|
|
2456
2437
|
// replace it with the new one from the server.
|
|
2457
|
-
const newEntry = fulfillSegmentCacheEntry(upgradeToPendingSegment(createDetachedSegmentCacheEntry(now), fetchStrategy, //
|
|
2458
|
-
null), rsc, staleAt, isPartial, // Dynamic-request (Full/Runtime) responses are not ISR fallbacks.
|
|
2438
|
+
const newEntry = fulfillSegmentCacheEntry(upgradeToPendingSegment(createDetachedSegmentCacheEntry(now), fetchStrategy), rsc, staleAt, isPartial, // Dynamic-request (Full/Runtime) responses are not ISR fallbacks.
|
|
2459
2439
|
false, fetchStrategy);
|
|
2460
2440
|
const varyPath = fulfilledVaryPath !== null ? fulfilledVaryPath : (0, _varypath.getSegmentVaryPathForRequest)(fetchStrategy, tree);
|
|
2461
2441
|
// Pass the concrete lookup path so that if the entry was re-keyed to
|
|
2462
2442
|
// a more generic path, any stale settled entry at a more specific path
|
|
2463
2443
|
// that would shadow it is evicted (the upsert handles this; the other
|
|
2464
2444
|
// branches above call evictShadowingSegmentEntries themselves).
|
|
2465
|
-
upsertSegmentEntry(now, varyPath, newEntry, tree.varyPath);
|
|
2445
|
+
upsertSegmentEntry(now, map, varyPath, newEntry, tree.varyPath);
|
|
2466
2446
|
}
|
|
2467
2447
|
}
|
|
2468
2448
|
}
|
|
@@ -2627,7 +2607,9 @@ async function resolveStaleAt(now, staleTimeIterable, response) {
|
|
|
2627
2607
|
}
|
|
2628
2608
|
return now + _navigatereducer.STATIC_STALETIME_MS;
|
|
2629
2609
|
}
|
|
2630
|
-
function writePrerenderResponseIntoCache(now, fetchStrategy, flightData, buildId, headVaryParamsIterable, rootVaryParamsIterable, staleAt, baseTree, renderedSearch, isResponsePartial
|
|
2610
|
+
function writePrerenderResponseIntoCache(now, fetchStrategy, flightData, buildId, headVaryParamsIterable, rootVaryParamsIterable, staleAt, baseTree, renderedSearch, isResponsePartial, // The map the work that spawned this response's request is bound to. See
|
|
2611
|
+
// writeDynamicRenderResponseIntoCache.
|
|
2612
|
+
map) {
|
|
2631
2613
|
// Root params are emitted once at the top level; readVaryParams unions them
|
|
2632
2614
|
// into the head, and they're threaded down to each segment below.
|
|
2633
2615
|
const headVaryParams = (0, _varyparamsdecoding.readVaryParams)(headVaryParamsIterable, rootVaryParamsIterable);
|
|
@@ -2636,8 +2618,7 @@ function writePrerenderResponseIntoCache(now, fetchStrategy, flightData, buildId
|
|
|
2636
2618
|
return;
|
|
2637
2619
|
}
|
|
2638
2620
|
const navigationSeed = (0, _navigation.convertServerPatchToFullTree)(now, baseTree, flightDatas, renderedSearch, _bfcache.UnknownDynamicStaleTime);
|
|
2639
|
-
writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, staleAt, navigationSeed, null
|
|
2640
|
-
);
|
|
2621
|
+
writeDynamicRenderResponseIntoCache(now, fetchStrategy, flightDatas, buildId, isResponsePartial, headVaryParams, rootVaryParamsIterable, staleAt, navigationSeed, null, map);
|
|
2641
2622
|
}
|
|
2642
2623
|
async function processRuntimePrefetchStream(now, runtimePrefetchStream, baseTree, renderedSearch) {
|
|
2643
2624
|
const { stream, isPartial } = await stripIsPartialByte(runtimePrefetchStream);
|