vinext 0.0.54 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -15
- package/dist/build/clean-output.d.ts +1 -2
- package/dist/build/clean-output.js +0 -2
- package/dist/build/client-build-config.d.ts +16 -3
- package/dist/build/client-build-config.js +29 -4
- package/dist/build/css-url-assets.d.ts +29 -0
- package/dist/build/css-url-assets.js +211 -0
- package/dist/build/google-fonts/build-url.d.ts +1 -2
- package/dist/build/google-fonts/build-url.js +0 -2
- package/dist/build/google-fonts/fallback-metrics-data.js +0 -2
- package/dist/build/google-fonts/fallback-metrics.d.ts +1 -2
- package/dist/build/google-fonts/fallback-metrics.js +0 -2
- package/dist/build/google-fonts/font-data.js +0 -2
- package/dist/build/google-fonts/font-metadata.d.ts +1 -2
- package/dist/build/google-fonts/font-metadata.js +0 -2
- package/dist/build/google-fonts/get-axes.d.ts +1 -2
- package/dist/build/google-fonts/get-axes.js +0 -2
- package/dist/build/google-fonts/sort-variants.d.ts +1 -2
- package/dist/build/google-fonts/sort-variants.js +0 -2
- package/dist/build/google-fonts/validate.d.ts +1 -2
- package/dist/build/google-fonts/validate.js +0 -2
- package/dist/build/inline-css.d.ts +1 -2
- package/dist/build/inline-css.js +0 -2
- package/dist/build/layout-classification-types.d.ts +1 -2
- package/dist/build/layout-classification.d.ts +2 -3
- package/dist/build/layout-classification.js +1 -3
- package/dist/build/next-client-runtime-manifests.d.ts +14 -0
- package/dist/build/next-client-runtime-manifests.js +39 -0
- package/dist/build/nitro-route-rules.d.ts +1 -2
- package/dist/build/nitro-route-rules.js +0 -2
- package/dist/build/precompress.d.ts +1 -2
- package/dist/build/precompress.js +0 -2
- package/dist/build/prerender.d.ts +2 -3
- package/dist/build/prerender.js +14 -2
- package/dist/build/report.d.ts +1 -2
- package/dist/build/report.js +0 -2
- package/dist/build/route-classification-injector.d.ts +1 -2
- package/dist/build/route-classification-injector.js +4 -6
- package/dist/build/route-classification-manifest.d.ts +5 -6
- package/dist/build/route-classification-manifest.js +5 -7
- package/dist/build/run-prerender.d.ts +1 -2
- package/dist/build/run-prerender.js +15 -7
- package/dist/build/server-manifest.d.ts +1 -2
- package/dist/build/server-manifest.js +0 -2
- package/dist/build/ssr-manifest.d.ts +1 -2
- package/dist/build/ssr-manifest.js +2 -4
- package/dist/build/standalone.d.ts +1 -2
- package/dist/build/standalone.js +0 -2
- package/dist/build/static-export.d.ts +2 -3
- package/dist/build/static-export.js +0 -2
- package/dist/cache/cache-adapters-virtual.d.ts +50 -0
- package/dist/cache/cache-adapters-virtual.js +45 -0
- package/dist/check.d.ts +33 -2
- package/dist/check.js +321 -27
- package/dist/cli-args.d.ts +1 -2
- package/dist/cli-args.js +0 -2
- package/dist/cli.js +7 -13
- package/dist/client/instrumentation-client-inject.d.ts +1 -2
- package/dist/client/instrumentation-client-inject.js +0 -2
- package/dist/client/instrumentation-client-state.d.ts +1 -2
- package/dist/client/instrumentation-client-state.js +0 -2
- package/dist/client/instrumentation-client.d.ts +1 -2
- package/dist/client/instrumentation-client.js +0 -2
- package/dist/client/navigation-runtime.d.ts +2 -2
- package/dist/client/navigation-runtime.js +1 -3
- package/dist/client/pages-router-link-navigation.d.ts +1 -2
- package/dist/client/pages-router-link-navigation.js +0 -2
- package/dist/client/validate-module-path.d.ts +1 -2
- package/dist/client/validate-module-path.js +0 -2
- package/dist/client/vinext-next-data.d.ts +1 -2
- package/dist/client/vinext-next-data.js +0 -2
- package/dist/client/window-next.d.ts +1 -2
- package/dist/client/window-next.js +0 -2
- package/dist/cloudflare/index.d.ts +1 -1
- package/dist/cloudflare/index.js +1 -1
- package/dist/cloudflare/src/cache/cdn-adapter.runtime.js +97 -0
- package/dist/cloudflare/{kv-cache-handler.d.ts → src/cache/kv-data-adapter.runtime.d.ts} +25 -6
- package/dist/cloudflare/{kv-cache-handler.js → src/cache/kv-data-adapter.runtime.js} +36 -28
- package/dist/cloudflare/src/utils/cache-control-metadata.js +20 -0
- package/dist/cloudflare/tpr.d.ts +2 -3
- package/dist/cloudflare/tpr.js +8 -8
- package/dist/config/config-matchers.d.ts +1 -2
- package/dist/config/config-matchers.js +0 -2
- package/dist/config/dotenv.d.ts +1 -2
- package/dist/config/dotenv.js +0 -2
- package/dist/config/next-config.d.ts +30 -3
- package/dist/config/next-config.js +47 -8
- package/dist/config/tsconfig-paths.d.ts +12 -4
- package/dist/config/tsconfig-paths.js +58 -31
- package/dist/deploy.d.ts +48 -3
- package/dist/deploy.js +141 -112
- package/dist/entries/app-browser-entry.d.ts +1 -2
- package/dist/entries/app-browser-entry.js +0 -2
- package/dist/entries/app-rsc-entry.d.ts +6 -5
- package/dist/entries/app-rsc-entry.js +62 -61
- package/dist/entries/app-rsc-manifest.d.ts +1 -2
- package/dist/entries/app-rsc-manifest.js +42 -12
- package/dist/entries/app-ssr-entry.d.ts +1 -2
- package/dist/entries/app-ssr-entry.js +0 -2
- package/dist/entries/pages-client-entry.d.ts +3 -3
- package/dist/entries/pages-client-entry.js +16 -5
- package/dist/entries/pages-entry-helpers.d.ts +2 -11
- package/dist/entries/pages-entry-helpers.js +1 -20
- package/dist/entries/pages-server-entry.d.ts +2 -3
- package/dist/entries/pages-server-entry.js +94 -670
- package/dist/entries/runtime-entry-module.d.ts +1 -2
- package/dist/entries/runtime-entry-module.js +0 -2
- package/dist/index.d.ts +22 -2
- package/dist/index.js +297 -140
- package/dist/init.d.ts +1 -2
- package/dist/init.js +1 -3
- package/dist/plugins/ast-utils.d.ts +20 -0
- package/dist/plugins/ast-utils.js +78 -0
- package/dist/plugins/async-hooks-stub.d.ts +1 -2
- package/dist/plugins/async-hooks-stub.js +0 -2
- package/dist/plugins/client-reference-dedup.d.ts +1 -2
- package/dist/plugins/client-reference-dedup.js +4 -8
- package/dist/plugins/css-data-url.d.ts +1 -2
- package/dist/plugins/css-data-url.js +0 -2
- package/dist/plugins/fonts.d.ts +13 -3
- package/dist/plugins/fonts.js +19 -13
- package/dist/plugins/import-meta-url.d.ts +16 -0
- package/dist/plugins/import-meta-url.js +347 -0
- package/dist/plugins/instrumentation-client.d.ts +1 -2
- package/dist/plugins/instrumentation-client.js +0 -2
- package/dist/plugins/middleware-server-only.d.ts +1 -2
- package/dist/plugins/middleware-server-only.js +0 -2
- package/dist/plugins/og-assets.d.ts +32 -8
- package/dist/plugins/og-assets.js +126 -34
- package/dist/plugins/optimize-imports.d.ts +1 -2
- package/dist/plugins/optimize-imports.js +9 -17
- package/dist/plugins/postcss.d.ts +1 -2
- package/dist/plugins/postcss.js +0 -2
- package/dist/plugins/remove-console.d.ts +1 -2
- package/dist/plugins/remove-console.js +0 -2
- package/dist/plugins/rsc-client-reference-loaders.d.ts +1 -2
- package/dist/plugins/rsc-client-reference-loaders.js +0 -2
- package/dist/plugins/rsc-client-shim-excludes.d.ts +1 -2
- package/dist/plugins/rsc-client-shim-excludes.js +0 -2
- package/dist/plugins/sass.d.ts +1 -2
- package/dist/plugins/sass.js +0 -2
- package/dist/plugins/server-externals-manifest.d.ts +1 -2
- package/dist/plugins/server-externals-manifest.js +0 -2
- package/dist/plugins/strip-server-exports.d.ts +1 -2
- package/dist/plugins/strip-server-exports.js +0 -2
- package/dist/routing/app-route-graph.d.ts +2 -9
- package/dist/routing/app-route-graph.js +9 -30
- package/dist/routing/app-router.d.ts +1 -2
- package/dist/routing/app-router.js +0 -2
- package/dist/routing/file-matcher.d.ts +6 -2
- package/dist/routing/file-matcher.js +15 -7
- package/dist/routing/pages-router.d.ts +1 -2
- package/dist/routing/pages-router.js +0 -2
- package/dist/routing/route-matching.d.ts +1 -2
- package/dist/routing/route-matching.js +0 -2
- package/dist/routing/route-pattern.d.ts +1 -2
- package/dist/routing/route-pattern.js +0 -2
- package/dist/routing/route-trie.d.ts +1 -2
- package/dist/routing/route-trie.js +0 -2
- package/dist/routing/route-validation.d.ts +1 -2
- package/dist/routing/route-validation.js +0 -2
- package/dist/routing/utils.d.ts +44 -2
- package/dist/routing/utils.js +62 -3
- package/dist/server/api-handler.d.ts +1 -2
- package/dist/server/api-handler.js +0 -2
- package/dist/server/app-bfcache-id.d.ts +5 -0
- package/dist/server/app-bfcache-id.js +5 -0
- package/dist/server/app-browser-action-result.d.ts +9 -17
- package/dist/server/app-browser-action-result.js +25 -16
- package/dist/server/app-browser-client-reuse-manifest.d.ts +12 -0
- package/dist/server/app-browser-client-reuse-manifest.js +101 -0
- package/dist/server/app-browser-entry.js +352 -115
- package/dist/server/app-browser-error.d.ts +1 -2
- package/dist/server/app-browser-error.js +0 -2
- package/dist/server/app-browser-hydration.d.ts +1 -2
- package/dist/server/app-browser-hydration.js +0 -2
- package/dist/server/app-browser-interception-context.d.ts +1 -2
- package/dist/server/app-browser-interception-context.js +0 -2
- package/dist/server/app-browser-mpa-navigation.d.ts +16 -0
- package/dist/server/app-browser-mpa-navigation.js +42 -0
- package/dist/server/app-browser-navigation-controller.d.ts +5 -4
- package/dist/server/app-browser-navigation-controller.js +3 -3
- package/dist/server/app-browser-popstate.d.ts +4 -3
- package/dist/server/app-browser-popstate.js +15 -3
- package/dist/server/app-browser-rsc-redirect.d.ts +1 -2
- package/dist/server/app-browser-rsc-redirect.js +0 -2
- package/dist/server/app-browser-state.d.ts +28 -4
- package/dist/server/app-browser-state.js +195 -11
- package/dist/server/app-browser-stream.d.ts +1 -2
- package/dist/server/app-browser-stream.js +0 -2
- package/dist/server/app-browser-visible-commit.d.ts +2 -3
- package/dist/server/app-browser-visible-commit.js +24 -17
- package/dist/server/app-client-reference-preloader.d.ts +1 -2
- package/dist/server/app-client-reference-preloader.js +0 -2
- package/dist/server/app-elements-wire.d.ts +14 -8
- package/dist/server/app-elements-wire.js +45 -24
- package/dist/server/app-elements.d.ts +2 -3
- package/dist/server/app-elements.js +2 -4
- package/dist/server/app-fallback-renderer.d.ts +5 -5
- package/dist/server/app-fallback-renderer.js +4 -3
- package/dist/server/app-history-state.d.ts +18 -2
- package/dist/server/app-history-state.js +68 -10
- package/dist/server/app-hook-warning-suppression.d.ts +1 -2
- package/dist/server/app-hook-warning-suppression.js +0 -2
- package/dist/server/app-inline-css-client.d.ts +1 -2
- package/dist/server/app-inline-css-client.js +0 -2
- package/dist/server/app-interception-context-header.d.ts +1 -2
- package/dist/server/app-interception-context-header.js +0 -2
- package/dist/server/app-layout-param-observation.d.ts +43 -0
- package/dist/server/app-layout-param-observation.js +168 -0
- package/dist/server/app-middleware.d.ts +1 -2
- package/dist/server/app-middleware.js +0 -2
- package/dist/server/app-mounted-slots-header.d.ts +1 -2
- package/dist/server/app-mounted-slots-header.js +0 -2
- package/dist/server/app-optimistic-routing.d.ts +1 -2
- package/dist/server/app-optimistic-routing.js +0 -2
- package/dist/server/app-page-boundary-render.d.ts +4 -3
- package/dist/server/app-page-boundary-render.js +20 -11
- package/dist/server/app-page-boundary.d.ts +11 -2
- package/dist/server/app-page-boundary.js +13 -4
- package/dist/server/app-page-cache.d.ts +3 -3
- package/dist/server/app-page-cache.js +36 -11
- package/dist/server/app-page-dispatch.d.ts +19 -5
- package/dist/server/app-page-dispatch.js +119 -24
- package/dist/server/app-page-element-builder.d.ts +3 -2
- package/dist/server/app-page-element-builder.js +9 -11
- package/dist/server/app-page-execution.d.ts +8 -3
- package/dist/server/app-page-execution.js +55 -24
- package/dist/server/app-page-head.d.ts +1 -2
- package/dist/server/app-page-head.js +6 -6
- package/dist/server/app-page-method.d.ts +1 -2
- package/dist/server/app-page-method.js +0 -2
- package/dist/server/app-page-params.d.ts +2 -2
- package/dist/server/app-page-params.js +14 -3
- package/dist/server/app-page-probe.d.ts +90 -2
- package/dist/server/app-page-probe.js +201 -6
- package/dist/server/app-page-render-identity.d.ts +1 -2
- package/dist/server/app-page-render-identity.js +0 -2
- package/dist/server/app-page-render-observation.d.ts +1 -2
- package/dist/server/app-page-render-observation.js +0 -2
- package/dist/server/app-page-render.d.ts +9 -3
- package/dist/server/app-page-render.js +167 -10
- package/dist/server/app-page-request.d.ts +4 -3
- package/dist/server/app-page-request.js +1 -3
- package/dist/server/app-page-response.d.ts +2 -2
- package/dist/server/app-page-response.js +5 -3
- package/dist/server/app-page-route-wiring.d.ts +14 -3
- package/dist/server/app-page-route-wiring.js +63 -11
- package/dist/server/app-page-search-params-observation.d.ts +10 -0
- package/dist/server/app-page-search-params-observation.js +20 -0
- package/dist/server/app-page-segment-state.d.ts +1 -2
- package/dist/server/app-page-segment-state.js +1 -8
- package/dist/server/app-page-stream.d.ts +19 -9
- package/dist/server/app-page-stream.js +28 -10
- package/dist/server/app-pages-bridge.d.ts +25 -0
- package/dist/server/app-pages-bridge.js +34 -0
- package/dist/server/app-post-middleware-context.d.ts +1 -2
- package/dist/server/app-post-middleware-context.js +0 -2
- package/dist/server/app-ppr-fallback-shell.d.ts +21 -0
- package/dist/server/app-ppr-fallback-shell.js +82 -0
- package/dist/server/app-prerender-endpoints.d.ts +1 -2
- package/dist/server/app-prerender-endpoints.js +0 -2
- package/dist/server/app-prerender-static-params.d.ts +15 -2
- package/dist/server/app-prerender-static-params.js +44 -13
- package/dist/server/app-render-dependency.d.ts +3 -2
- package/dist/server/app-render-dependency.js +9 -3
- package/dist/server/app-request-context.d.ts +1 -2
- package/dist/server/app-request-context.js +0 -2
- package/dist/server/app-route-handler-cache.d.ts +1 -2
- package/dist/server/app-route-handler-cache.js +0 -2
- package/dist/server/app-route-handler-dispatch.d.ts +1 -2
- package/dist/server/app-route-handler-dispatch.js +0 -2
- package/dist/server/app-route-handler-execution.d.ts +1 -2
- package/dist/server/app-route-handler-execution.js +2 -4
- package/dist/server/app-route-handler-policy.d.ts +1 -2
- package/dist/server/app-route-handler-policy.js +0 -2
- package/dist/server/app-route-handler-response.d.ts +2 -3
- package/dist/server/app-route-handler-response.js +8 -7
- package/dist/server/app-route-handler-runtime.d.ts +1 -2
- package/dist/server/app-route-handler-runtime.js +0 -2
- package/dist/server/app-route-module-loader.d.ts +43 -0
- package/dist/server/app-route-module-loader.js +32 -0
- package/dist/server/app-router-entry.d.ts +1 -2
- package/dist/server/app-router-entry.js +2 -2
- package/dist/server/app-rsc-cache-busting.d.ts +12 -3
- package/dist/server/app-rsc-cache-busting.js +21 -10
- package/dist/server/app-rsc-embedded-chunks.d.ts +1 -2
- package/dist/server/app-rsc-embedded-chunks.js +0 -2
- package/dist/server/app-rsc-error-handler.d.ts +1 -2
- package/dist/server/app-rsc-error-handler.js +0 -2
- package/dist/server/app-rsc-errors.d.ts +1 -2
- package/dist/server/app-rsc-errors.js +0 -2
- package/dist/server/app-rsc-handler.d.ts +16 -2
- package/dist/server/app-rsc-handler.js +32 -14
- package/dist/server/app-rsc-render-mode.d.ts +1 -2
- package/dist/server/app-rsc-render-mode.js +0 -2
- package/dist/server/app-rsc-request-normalization.d.ts +4 -5
- package/dist/server/app-rsc-request-normalization.js +2 -4
- package/dist/server/app-rsc-response-finalizer.d.ts +1 -2
- package/dist/server/app-rsc-response-finalizer.js +2 -2
- package/dist/server/app-rsc-route-matching.d.ts +1 -2
- package/dist/server/app-rsc-route-matching.js +0 -2
- package/dist/server/app-segment-config.d.ts +5 -3
- package/dist/server/app-segment-config.js +12 -3
- package/dist/server/app-server-action-execution.d.ts +12 -2
- package/dist/server/app-server-action-execution.js +200 -25
- package/dist/server/app-ssr-entry.d.ts +5 -4
- package/dist/server/app-ssr-entry.js +31 -15
- package/dist/server/app-ssr-error-meta.d.ts +1 -2
- package/dist/server/app-ssr-error-meta.js +0 -2
- package/dist/server/app-ssr-stream.d.ts +1 -2
- package/dist/server/app-ssr-stream.js +31 -3
- package/dist/server/app-static-generation.d.ts +1 -2
- package/dist/server/app-static-generation.js +0 -2
- package/dist/server/app-visited-response-cache.d.ts +23 -0
- package/dist/server/app-visited-response-cache.js +19 -0
- package/dist/server/artifact-compatibility.d.ts +2 -2
- package/dist/server/artifact-compatibility.js +12 -7
- package/dist/server/cache-control.d.ts +15 -2
- package/dist/server/cache-control.js +21 -3
- package/dist/server/cache-headers.d.ts +1 -2
- package/dist/server/cache-headers.js +0 -2
- package/dist/server/cache-proof.d.ts +1 -2
- package/dist/server/cache-proof.js +0 -2
- package/dist/server/client-reuse-manifest.d.ts +10 -5
- package/dist/server/client-reuse-manifest.js +7 -10
- package/dist/server/client-trace-metadata.d.ts +1 -2
- package/dist/server/client-trace-metadata.js +0 -2
- package/dist/server/cookie-utils.d.ts +1 -2
- package/dist/server/cookie-utils.js +0 -2
- package/dist/server/csp.d.ts +1 -2
- package/dist/server/csp.js +0 -2
- package/dist/server/default-global-error-module.d.ts +1 -2
- package/dist/server/default-global-error-module.js +0 -2
- package/dist/server/default-not-found-module.d.ts +1 -2
- package/dist/server/default-not-found-module.js +0 -2
- package/dist/server/dev-error-overlay-store.d.ts +20 -4
- package/dist/server/dev-error-overlay-store.js +23 -4
- package/dist/server/dev-error-overlay.d.ts +39 -3
- package/dist/server/dev-error-overlay.js +952 -164
- package/dist/server/dev-initial-server-error.d.ts +9 -0
- package/dist/server/dev-initial-server-error.js +26 -0
- package/dist/server/dev-lockfile.d.ts +1 -2
- package/dist/server/dev-lockfile.js +0 -2
- package/dist/server/dev-module-runner.d.ts +1 -2
- package/dist/server/dev-module-runner.js +0 -2
- package/dist/server/dev-origin-check.d.ts +1 -2
- package/dist/server/dev-origin-check.js +0 -2
- package/dist/server/dev-route-files.d.ts +1 -2
- package/dist/server/dev-route-files.js +0 -2
- package/dist/server/dev-server.d.ts +2 -3
- package/dist/server/dev-server.js +127 -28
- package/dist/server/dev-stack-sourcemap-endpoint.d.ts +4 -0
- package/dist/server/dev-stack-sourcemap-endpoint.js +4 -0
- package/dist/server/dev-stack-sourcemap.d.ts +43 -0
- package/dist/server/dev-stack-sourcemap.js +443 -0
- package/dist/server/document-initial-head.d.ts +6 -0
- package/dist/server/document-initial-head.js +33 -0
- package/dist/server/edge-api-runtime.d.ts +1 -2
- package/dist/server/edge-api-runtime.js +0 -2
- package/dist/server/file-based-metadata.d.ts +1 -2
- package/dist/server/file-based-metadata.js +0 -2
- package/dist/server/headers.d.ts +3 -2
- package/dist/server/headers.js +3 -3
- package/dist/server/html.d.ts +1 -2
- package/dist/server/html.js +0 -2
- package/dist/server/http-error-responses.d.ts +1 -2
- package/dist/server/http-error-responses.js +0 -2
- package/dist/server/image-optimization.d.ts +1 -2
- package/dist/server/image-optimization.js +0 -2
- package/dist/server/implicit-tags.d.ts +1 -2
- package/dist/server/implicit-tags.js +0 -2
- package/dist/server/instrumentation-runtime.d.ts +1 -2
- package/dist/server/instrumentation-runtime.js +0 -2
- package/dist/server/instrumentation.d.ts +1 -2
- package/dist/server/instrumentation.js +0 -2
- package/dist/server/isr-cache.d.ts +10 -3
- package/dist/server/isr-cache.js +13 -28
- package/dist/server/metadata-route-build-data.d.ts +1 -2
- package/dist/server/metadata-route-build-data.js +0 -2
- package/dist/server/metadata-route-response.d.ts +1 -2
- package/dist/server/metadata-route-response.js +0 -2
- package/dist/server/metadata-routes.d.ts +1 -2
- package/dist/server/metadata-routes.js +0 -2
- package/dist/server/middleware-matcher.d.ts +1 -2
- package/dist/server/middleware-matcher.js +0 -2
- package/dist/server/middleware-request-headers.d.ts +1 -2
- package/dist/server/middleware-request-headers.js +0 -2
- package/dist/server/middleware-response-headers.d.ts +1 -2
- package/dist/server/middleware-response-headers.js +0 -2
- package/dist/server/middleware-runtime.d.ts +1 -2
- package/dist/server/middleware-runtime.js +14 -5
- package/dist/server/middleware.d.ts +2 -3
- package/dist/server/middleware.js +0 -2
- package/dist/server/navigation-planner.d.ts +16 -2
- package/dist/server/navigation-planner.js +1 -3
- package/dist/server/navigation-trace.d.ts +1 -2
- package/dist/server/navigation-trace.js +0 -2
- package/dist/server/next-error-digest.d.ts +1 -2
- package/dist/server/next-error-digest.js +0 -2
- package/dist/server/normalize-path.d.ts +1 -2
- package/dist/server/normalize-path.js +0 -2
- package/dist/server/pages-api-route.d.ts +1 -2
- package/dist/server/pages-api-route.js +1 -3
- package/dist/server/pages-asset-tags.d.ts +66 -0
- package/dist/server/pages-asset-tags.js +116 -0
- package/dist/server/pages-body-parser-config.d.ts +1 -2
- package/dist/server/pages-body-parser-config.js +0 -2
- package/dist/server/pages-data-route.d.ts +39 -2
- package/dist/server/pages-data-route.js +46 -3
- package/dist/server/pages-default-404.d.ts +1 -2
- package/dist/server/pages-default-404.js +0 -2
- package/dist/server/pages-document-initial-props.d.ts +84 -3
- package/dist/server/pages-document-initial-props.js +127 -3
- package/dist/server/pages-get-initial-props.d.ts +17 -0
- package/dist/server/pages-get-initial-props.js +50 -0
- package/dist/server/pages-i18n.d.ts +1 -2
- package/dist/server/pages-i18n.js +0 -2
- package/dist/server/pages-media-type.d.ts +1 -2
- package/dist/server/pages-media-type.js +1 -2
- package/dist/server/pages-node-compat.d.ts +9 -2
- package/dist/server/pages-node-compat.js +35 -4
- package/dist/server/pages-page-data.d.ts +7 -3
- package/dist/server/pages-page-data.js +75 -33
- package/dist/server/pages-page-handler.d.ts +90 -0
- package/dist/server/pages-page-handler.js +335 -0
- package/dist/server/pages-page-method.d.ts +1 -2
- package/dist/server/pages-page-method.js +0 -2
- package/dist/server/pages-page-response.d.ts +15 -2
- package/dist/server/pages-page-response.js +39 -12
- package/dist/server/pages-serializable-props.d.ts +1 -2
- package/dist/server/pages-serializable-props.js +0 -2
- package/dist/server/pregenerated-concrete-paths.d.ts +32 -0
- package/dist/server/pregenerated-concrete-paths.js +78 -0
- package/dist/server/prerender-route-params.d.ts +13 -3
- package/dist/server/prerender-route-params.js +30 -11
- package/dist/server/prerender-work-unit-setup.d.ts +1 -2
- package/dist/server/prerender-work-unit-setup.js +0 -2
- package/dist/server/prod-server.d.ts +2 -4
- package/dist/server/prod-server.js +13 -8
- package/dist/server/proxy-trust.d.ts +1 -2
- package/dist/server/proxy-trust.js +0 -2
- package/dist/server/request-log.d.ts +1 -2
- package/dist/server/request-log.js +0 -2
- package/dist/server/request-pipeline.d.ts +14 -2
- package/dist/server/request-pipeline.js +42 -3
- package/dist/server/rsc-stream-hints.d.ts +1 -2
- package/dist/server/rsc-stream-hints.js +0 -2
- package/dist/server/seed-cache.d.ts +6 -2
- package/dist/server/seed-cache.js +10 -8
- package/dist/server/server-action-not-found.d.ts +1 -2
- package/dist/server/server-action-not-found.js +0 -2
- package/dist/server/server-globals.d.ts +1 -2
- package/dist/server/server-globals.js +0 -2
- package/dist/server/skip-cache-proof.d.ts +23 -3
- package/dist/server/skip-cache-proof.js +81 -14
- package/dist/server/socket-error-backstop.d.ts +1 -2
- package/dist/server/socket-error-backstop.js +0 -2
- package/dist/server/static-file-cache.d.ts +1 -2
- package/dist/server/static-file-cache.js +0 -2
- package/dist/server/static-layout-client-reuse-proof.d.ts +15 -0
- package/dist/server/static-layout-client-reuse-proof.js +33 -0
- package/dist/server/streaming-metadata.d.ts +1 -2
- package/dist/server/streaming-metadata.js +0 -2
- package/dist/server/worker-utils.d.ts +1 -2
- package/dist/server/worker-utils.js +3 -6
- package/dist/shims/amp.d.ts +1 -2
- package/dist/shims/amp.js +0 -2
- package/dist/shims/app-router-scroll-state.d.ts +1 -2
- package/dist/shims/app-router-scroll-state.js +0 -2
- package/dist/shims/app-router-scroll.d.ts +3 -5
- package/dist/shims/app-router-scroll.js +0 -2
- package/dist/shims/app.d.ts +1 -2
- package/dist/shims/app.js +0 -2
- package/dist/shims/before-interactive-context.d.ts +1 -2
- package/dist/shims/before-interactive-context.js +0 -2
- package/dist/shims/cache-for-request.d.ts +1 -2
- package/dist/shims/cache-for-request.js +0 -2
- package/dist/shims/cache-runtime.d.ts +20 -5
- package/dist/shims/cache-runtime.js +35 -30
- package/dist/shims/cache.d.ts +68 -7
- package/dist/shims/cache.js +179 -25
- package/dist/shims/cdn-cache.d.ts +125 -0
- package/dist/shims/cdn-cache.js +100 -0
- package/dist/shims/client-hook-error.d.ts +1 -2
- package/dist/shims/client-hook-error.js +0 -2
- package/dist/shims/client-locale.d.ts +1 -2
- package/dist/shims/client-locale.js +1 -3
- package/dist/shims/compat-router.d.ts +1 -2
- package/dist/shims/compat-router.js +0 -2
- package/dist/shims/config.d.ts +1 -2
- package/dist/shims/config.js +0 -2
- package/dist/shims/constants.d.ts +1 -2
- package/dist/shims/constants.js +0 -2
- package/dist/shims/default-global-error.d.ts +3 -4
- package/dist/shims/default-global-error.js +0 -2
- package/dist/shims/default-not-found.d.ts +1 -2
- package/dist/shims/default-not-found.js +0 -2
- package/dist/shims/document.d.ts +11 -7
- package/dist/shims/document.js +7 -10
- package/dist/shims/dynamic.d.ts +1 -2
- package/dist/shims/dynamic.js +0 -2
- package/dist/shims/error-boundary.d.ts +16 -12
- package/dist/shims/error-boundary.js +60 -28
- package/dist/shims/error.d.ts +1 -2
- package/dist/shims/error.js +0 -2
- package/dist/shims/fetch-cache.d.ts +3 -2
- package/dist/shims/fetch-cache.js +18 -9
- package/dist/shims/font-google-base.d.ts +1 -2
- package/dist/shims/font-google-base.js +1 -13
- package/dist/shims/font-local.d.ts +1 -2
- package/dist/shims/font-local.js +1 -15
- package/dist/shims/font-utils.d.ts +7 -2
- package/dist/shims/font-utils.js +13 -3
- package/dist/shims/form.d.ts +12 -5
- package/dist/shims/form.js +98 -21
- package/dist/shims/hash-scroll.d.ts +4 -2
- package/dist/shims/hash-scroll.js +13 -3
- package/dist/shims/head-state.d.ts +2 -2
- package/dist/shims/head-state.js +18 -5
- package/dist/shims/head.d.ts +35 -2
- package/dist/shims/head.js +113 -16
- package/dist/shims/headers.d.ts +9 -2
- package/dist/shims/headers.js +13 -3
- package/dist/shims/i18n-context.d.ts +1 -2
- package/dist/shims/i18n-context.js +0 -2
- package/dist/shims/i18n-state.d.ts +1 -2
- package/dist/shims/i18n-state.js +0 -2
- package/dist/shims/image-config.d.ts +1 -2
- package/dist/shims/image-config.js +0 -2
- package/dist/shims/image.d.ts +1 -2
- package/dist/shims/image.js +1 -3
- package/dist/shims/internal/als-registry.d.ts +1 -2
- package/dist/shims/internal/als-registry.js +0 -2
- package/dist/shims/internal/api-utils.d.ts +1 -2
- package/dist/shims/internal/app-route-detection.d.ts +1 -2
- package/dist/shims/internal/app-route-detection.js +0 -2
- package/dist/shims/internal/app-router-context.d.ts +1 -2
- package/dist/shims/internal/app-router-context.js +0 -2
- package/dist/shims/internal/cookie-serialize.d.ts +1 -2
- package/dist/shims/internal/cookie-serialize.js +0 -2
- package/dist/shims/internal/make-hanging-promise.d.ts +1 -2
- package/dist/shims/internal/make-hanging-promise.js +0 -2
- package/dist/shims/internal/pages-data-fetch-dedup.d.ts +55 -0
- package/dist/shims/internal/pages-data-fetch-dedup.js +68 -0
- package/dist/shims/internal/pages-data-target.d.ts +1 -2
- package/dist/shims/internal/pages-data-target.js +0 -2
- package/dist/shims/internal/pages-data-url.d.ts +1 -2
- package/dist/shims/internal/pages-data-url.js +0 -2
- package/dist/shims/internal/parse-cookie-header.d.ts +1 -2
- package/dist/shims/internal/parse-cookie-header.js +0 -2
- package/dist/shims/internal/router-context.d.ts +2 -4
- package/dist/shims/internal/router-context.js +0 -2
- package/dist/shims/internal/utils.d.ts +1 -2
- package/dist/shims/internal/utils.js +0 -2
- package/dist/shims/internal/work-unit-async-storage.d.ts +1 -2
- package/dist/shims/internal/work-unit-async-storage.js +0 -2
- package/dist/shims/layout-segment-context.d.ts +2 -4
- package/dist/shims/layout-segment-context.js +0 -2
- package/dist/shims/legacy-image.d.ts +1 -2
- package/dist/shims/legacy-image.js +0 -2
- package/dist/shims/link-prefetch.d.ts +1 -2
- package/dist/shims/link-prefetch.js +0 -2
- package/dist/shims/link.d.ts +2 -2
- package/dist/shims/link.js +47 -15
- package/dist/shims/metadata.d.ts +4 -5
- package/dist/shims/metadata.js +1 -3
- package/dist/shims/navigation-state.d.ts +1 -2
- package/dist/shims/navigation-state.js +0 -2
- package/dist/shims/navigation.d.ts +61 -7
- package/dist/shims/navigation.js +244 -47
- package/dist/shims/navigation.react-server.d.ts +1 -2
- package/dist/shims/navigation.react-server.js +0 -2
- package/dist/shims/offline.d.ts +1 -2
- package/dist/shims/offline.js +0 -2
- package/dist/shims/og.d.ts +1 -2
- package/dist/shims/og.js +2 -4
- package/dist/shims/pages-router-runtime.d.ts +7 -2
- package/dist/shims/pages-router-runtime.js +11 -3
- package/dist/shims/ppr-fallback-shell.d.ts +29 -0
- package/dist/shims/ppr-fallback-shell.js +149 -0
- package/dist/shims/readonly-url-search-params.d.ts +1 -2
- package/dist/shims/readonly-url-search-params.js +0 -2
- package/dist/shims/request-context.d.ts +9 -5
- package/dist/shims/request-context.js +0 -2
- package/dist/shims/request-state-types.d.ts +1 -1
- package/dist/shims/root-params.d.ts +1 -2
- package/dist/shims/root-params.js +0 -2
- package/dist/shims/router-state.d.ts +1 -2
- package/dist/shims/router-state.js +0 -2
- package/dist/shims/router.d.ts +1 -2
- package/dist/shims/router.js +172 -37
- package/dist/shims/script-nonce-context.d.ts +1 -2
- package/dist/shims/script-nonce-context.js +0 -2
- package/dist/shims/script.d.ts +1 -2
- package/dist/shims/script.js +0 -2
- package/dist/shims/server.d.ts +1 -2
- package/dist/shims/server.js +0 -2
- package/dist/shims/slot.d.ts +11 -4
- package/dist/shims/slot.js +121 -9
- package/dist/shims/thenable-params.d.ts +6 -3
- package/dist/shims/thenable-params.js +131 -12
- package/dist/shims/unified-request-context.d.ts +1 -2
- package/dist/shims/unified-request-context.js +3 -2
- package/dist/shims/unrecognized-action-error.d.ts +1 -2
- package/dist/shims/unrecognized-action-error.js +0 -2
- package/dist/shims/url-safety.d.ts +1 -2
- package/dist/shims/url-safety.js +0 -2
- package/dist/shims/url-utils.d.ts +1 -2
- package/dist/shims/url-utils.js +0 -2
- package/dist/shims/use-merged-ref.d.ts +1 -2
- package/dist/shims/use-merged-ref.js +0 -2
- package/dist/shims/web-vitals.d.ts +1 -2
- package/dist/shims/web-vitals.js +0 -2
- package/dist/typegen.d.ts +1 -2
- package/dist/typegen.js +2 -9
- package/dist/utils/asset-prefix.d.ts +1 -2
- package/dist/utils/asset-prefix.js +0 -2
- package/dist/utils/base-path.d.ts +1 -2
- package/dist/utils/base-path.js +0 -2
- package/dist/utils/cache-control-metadata.d.ts +1 -4
- package/dist/utils/cache-control-metadata.js +1 -3
- package/dist/utils/client-build-manifest.d.ts +14 -0
- package/dist/utils/client-build-manifest.js +52 -0
- package/dist/utils/compare.d.ts +4 -0
- package/dist/utils/compare.js +8 -0
- package/dist/utils/dev-error-recovery-event.d.ts +4 -0
- package/dist/utils/dev-error-recovery-event.js +4 -0
- package/dist/utils/domain-locale.d.ts +1 -2
- package/dist/utils/domain-locale.js +2 -4
- package/dist/utils/encode-cache-tag.d.ts +1 -2
- package/dist/utils/encode-cache-tag.js +0 -2
- package/dist/utils/error-cause.d.ts +1 -2
- package/dist/utils/error-cause.js +0 -2
- package/dist/utils/hash.d.ts +1 -2
- package/dist/utils/hash.js +1 -3
- package/dist/utils/html-limited-bots.d.ts +1 -2
- package/dist/utils/html-limited-bots.js +0 -2
- package/dist/utils/lazy-chunks.d.ts +1 -2
- package/dist/utils/lazy-chunks.js +0 -2
- package/dist/utils/manifest-paths.d.ts +8 -3
- package/dist/utils/manifest-paths.js +15 -3
- package/dist/utils/mdx-scan.d.ts +1 -2
- package/dist/utils/mdx-scan.js +0 -2
- package/dist/utils/navigation-signal.d.ts +1 -2
- package/dist/utils/navigation-signal.js +0 -2
- package/dist/utils/number.d.ts +4 -0
- package/dist/utils/number.js +6 -0
- package/dist/utils/path.d.ts +4 -2
- package/dist/utils/path.js +5 -3
- package/dist/utils/prerender-output-paths.d.ts +1 -2
- package/dist/utils/prerender-output-paths.js +0 -2
- package/dist/utils/project.d.ts +1 -2
- package/dist/utils/project.js +0 -2
- package/dist/utils/promise.d.ts +4 -0
- package/dist/utils/promise.js +6 -0
- package/dist/utils/public-routes.d.ts +1 -2
- package/dist/utils/public-routes.js +0 -2
- package/dist/utils/query.d.ts +1 -2
- package/dist/utils/query.js +0 -2
- package/dist/utils/record.d.ts +1 -2
- package/dist/utils/record.js +0 -2
- package/dist/utils/regex.d.ts +4 -0
- package/dist/utils/regex.js +6 -0
- package/dist/utils/safe-json-file.d.ts +1 -2
- package/dist/utils/safe-json-file.js +0 -2
- package/dist/utils/sorted-array.d.ts +1 -2
- package/dist/utils/sorted-array.js +0 -2
- package/dist/utils/text-stream.d.ts +1 -2
- package/dist/utils/text-stream.js +0 -2
- package/dist/utils/vinext-root.d.ts +1 -2
- package/dist/utils/vinext-root.js +0 -2
- package/dist/utils/vite-version.d.ts +10 -0
- package/dist/utils/vite-version.js +34 -0
- package/package.json +20 -7
- package/dist/build/clean-output.js.map +0 -1
- package/dist/build/client-build-config.js.map +0 -1
- package/dist/build/google-fonts/build-url.js.map +0 -1
- package/dist/build/google-fonts/fallback-metrics-data.js.map +0 -1
- package/dist/build/google-fonts/fallback-metrics.js.map +0 -1
- package/dist/build/google-fonts/font-data.js.map +0 -1
- package/dist/build/google-fonts/font-metadata.js.map +0 -1
- package/dist/build/google-fonts/get-axes.js.map +0 -1
- package/dist/build/google-fonts/sort-variants.js.map +0 -1
- package/dist/build/google-fonts/validate.js.map +0 -1
- package/dist/build/inline-css.js.map +0 -1
- package/dist/build/layout-classification.js.map +0 -1
- package/dist/build/nitro-route-rules.js.map +0 -1
- package/dist/build/precompress.js.map +0 -1
- package/dist/build/prerender.js.map +0 -1
- package/dist/build/report.js.map +0 -1
- package/dist/build/route-classification-injector.js.map +0 -1
- package/dist/build/route-classification-manifest.js.map +0 -1
- package/dist/build/run-prerender.js.map +0 -1
- package/dist/build/server-manifest.js.map +0 -1
- package/dist/build/ssr-manifest.js.map +0 -1
- package/dist/build/standalone.js.map +0 -1
- package/dist/build/static-export.js.map +0 -1
- package/dist/check.js.map +0 -1
- package/dist/cli-args.js.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/client/instrumentation-client-inject.js.map +0 -1
- package/dist/client/instrumentation-client-state.js.map +0 -1
- package/dist/client/instrumentation-client.js.map +0 -1
- package/dist/client/navigation-runtime.js.map +0 -1
- package/dist/client/pages-router-link-navigation.js.map +0 -1
- package/dist/client/validate-module-path.js.map +0 -1
- package/dist/client/vinext-next-data.js.map +0 -1
- package/dist/client/window-next.js.map +0 -1
- package/dist/cloudflare/kv-cache-handler.js.map +0 -1
- package/dist/cloudflare/tpr.js.map +0 -1
- package/dist/config/config-matchers.js.map +0 -1
- package/dist/config/dotenv.js.map +0 -1
- package/dist/config/next-config.js.map +0 -1
- package/dist/config/tsconfig-paths.js.map +0 -1
- package/dist/deploy.js.map +0 -1
- package/dist/entries/app-browser-entry.js.map +0 -1
- package/dist/entries/app-rsc-entry.js.map +0 -1
- package/dist/entries/app-rsc-manifest.js.map +0 -1
- package/dist/entries/app-ssr-entry.js.map +0 -1
- package/dist/entries/pages-client-entry.js.map +0 -1
- package/dist/entries/pages-entry-helpers.js.map +0 -1
- package/dist/entries/pages-server-entry.js.map +0 -1
- package/dist/entries/runtime-entry-module.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/init.js.map +0 -1
- package/dist/plugins/async-hooks-stub.js.map +0 -1
- package/dist/plugins/client-reference-dedup.js.map +0 -1
- package/dist/plugins/css-data-url.js.map +0 -1
- package/dist/plugins/fonts.js.map +0 -1
- package/dist/plugins/instrumentation-client.js.map +0 -1
- package/dist/plugins/middleware-server-only.js.map +0 -1
- package/dist/plugins/og-assets.js.map +0 -1
- package/dist/plugins/optimize-imports.js.map +0 -1
- package/dist/plugins/postcss.js.map +0 -1
- package/dist/plugins/remove-console.js.map +0 -1
- package/dist/plugins/rsc-client-reference-loaders.js.map +0 -1
- package/dist/plugins/rsc-client-shim-excludes.js.map +0 -1
- package/dist/plugins/sass.js.map +0 -1
- package/dist/plugins/server-externals-manifest.js.map +0 -1
- package/dist/plugins/strip-server-exports.js.map +0 -1
- package/dist/routing/app-route-graph.js.map +0 -1
- package/dist/routing/app-router.js.map +0 -1
- package/dist/routing/file-matcher.js.map +0 -1
- package/dist/routing/pages-router.js.map +0 -1
- package/dist/routing/route-matching.js.map +0 -1
- package/dist/routing/route-pattern.js.map +0 -1
- package/dist/routing/route-trie.js.map +0 -1
- package/dist/routing/route-validation.js.map +0 -1
- package/dist/routing/utils.js.map +0 -1
- package/dist/server/api-handler.js.map +0 -1
- package/dist/server/app-browser-action-result.js.map +0 -1
- package/dist/server/app-browser-entry.js.map +0 -1
- package/dist/server/app-browser-error.js.map +0 -1
- package/dist/server/app-browser-hydration.js.map +0 -1
- package/dist/server/app-browser-interception-context.js.map +0 -1
- package/dist/server/app-browser-navigation-controller.js.map +0 -1
- package/dist/server/app-browser-popstate.js.map +0 -1
- package/dist/server/app-browser-rsc-redirect.js.map +0 -1
- package/dist/server/app-browser-state.js.map +0 -1
- package/dist/server/app-browser-stream.js.map +0 -1
- package/dist/server/app-browser-visible-commit.js.map +0 -1
- package/dist/server/app-client-reference-preloader.js.map +0 -1
- package/dist/server/app-elements-wire.js.map +0 -1
- package/dist/server/app-elements.js.map +0 -1
- package/dist/server/app-fallback-renderer.js.map +0 -1
- package/dist/server/app-history-state.js.map +0 -1
- package/dist/server/app-hook-warning-suppression.js.map +0 -1
- package/dist/server/app-inline-css-client.js.map +0 -1
- package/dist/server/app-interception-context-header.js.map +0 -1
- package/dist/server/app-middleware.js.map +0 -1
- package/dist/server/app-mounted-slots-header.js.map +0 -1
- package/dist/server/app-optimistic-routing.js.map +0 -1
- package/dist/server/app-page-boundary-render.js.map +0 -1
- package/dist/server/app-page-boundary.js.map +0 -1
- package/dist/server/app-page-cache.js.map +0 -1
- package/dist/server/app-page-dispatch.js.map +0 -1
- package/dist/server/app-page-element-builder.js.map +0 -1
- package/dist/server/app-page-execution.js.map +0 -1
- package/dist/server/app-page-head.js.map +0 -1
- package/dist/server/app-page-method.js.map +0 -1
- package/dist/server/app-page-params.js.map +0 -1
- package/dist/server/app-page-probe.js.map +0 -1
- package/dist/server/app-page-render-identity.js.map +0 -1
- package/dist/server/app-page-render-observation.js.map +0 -1
- package/dist/server/app-page-render.js.map +0 -1
- package/dist/server/app-page-request.js.map +0 -1
- package/dist/server/app-page-response.js.map +0 -1
- package/dist/server/app-page-route-wiring.js.map +0 -1
- package/dist/server/app-page-segment-state.js.map +0 -1
- package/dist/server/app-page-stream.js.map +0 -1
- package/dist/server/app-post-middleware-context.js.map +0 -1
- package/dist/server/app-prerender-endpoints.js.map +0 -1
- package/dist/server/app-prerender-static-params.js.map +0 -1
- package/dist/server/app-render-dependency.js.map +0 -1
- package/dist/server/app-request-context.js.map +0 -1
- package/dist/server/app-route-handler-cache.js.map +0 -1
- package/dist/server/app-route-handler-dispatch.js.map +0 -1
- package/dist/server/app-route-handler-execution.js.map +0 -1
- package/dist/server/app-route-handler-policy.js.map +0 -1
- package/dist/server/app-route-handler-response.js.map +0 -1
- package/dist/server/app-route-handler-runtime.js.map +0 -1
- package/dist/server/app-router-entry.js.map +0 -1
- package/dist/server/app-rsc-cache-busting.js.map +0 -1
- package/dist/server/app-rsc-embedded-chunks.js.map +0 -1
- package/dist/server/app-rsc-error-handler.js.map +0 -1
- package/dist/server/app-rsc-errors.js.map +0 -1
- package/dist/server/app-rsc-handler.js.map +0 -1
- package/dist/server/app-rsc-render-mode.js.map +0 -1
- package/dist/server/app-rsc-request-normalization.js.map +0 -1
- package/dist/server/app-rsc-response-finalizer.js.map +0 -1
- package/dist/server/app-rsc-route-matching.js.map +0 -1
- package/dist/server/app-segment-config.js.map +0 -1
- package/dist/server/app-server-action-execution.js.map +0 -1
- package/dist/server/app-ssr-entry.js.map +0 -1
- package/dist/server/app-ssr-error-meta.js.map +0 -1
- package/dist/server/app-ssr-stream.js.map +0 -1
- package/dist/server/app-static-generation.js.map +0 -1
- package/dist/server/artifact-compatibility.js.map +0 -1
- package/dist/server/cache-control.js.map +0 -1
- package/dist/server/cache-headers.js.map +0 -1
- package/dist/server/cache-proof.js.map +0 -1
- package/dist/server/client-reuse-manifest.js.map +0 -1
- package/dist/server/client-trace-metadata.js.map +0 -1
- package/dist/server/cookie-utils.js.map +0 -1
- package/dist/server/csp.js.map +0 -1
- package/dist/server/default-global-error-module.js.map +0 -1
- package/dist/server/default-not-found-module.js.map +0 -1
- package/dist/server/dev-error-overlay-store.js.map +0 -1
- package/dist/server/dev-error-overlay.js.map +0 -1
- package/dist/server/dev-lockfile.js.map +0 -1
- package/dist/server/dev-module-runner.js.map +0 -1
- package/dist/server/dev-origin-check.js.map +0 -1
- package/dist/server/dev-route-files.js.map +0 -1
- package/dist/server/dev-server.js.map +0 -1
- package/dist/server/edge-api-runtime.js.map +0 -1
- package/dist/server/file-based-metadata.js.map +0 -1
- package/dist/server/headers.js.map +0 -1
- package/dist/server/html.js.map +0 -1
- package/dist/server/http-error-responses.js.map +0 -1
- package/dist/server/image-optimization.js.map +0 -1
- package/dist/server/implicit-tags.js.map +0 -1
- package/dist/server/instrumentation-runtime.js.map +0 -1
- package/dist/server/instrumentation.js.map +0 -1
- package/dist/server/isr-cache.js.map +0 -1
- package/dist/server/metadata-route-build-data.js.map +0 -1
- package/dist/server/metadata-route-response.js.map +0 -1
- package/dist/server/metadata-routes.js.map +0 -1
- package/dist/server/middleware-matcher.js.map +0 -1
- package/dist/server/middleware-request-headers.js.map +0 -1
- package/dist/server/middleware-response-headers.js.map +0 -1
- package/dist/server/middleware-runtime.js.map +0 -1
- package/dist/server/middleware.js.map +0 -1
- package/dist/server/navigation-planner.js.map +0 -1
- package/dist/server/navigation-trace.js.map +0 -1
- package/dist/server/next-error-digest.js.map +0 -1
- package/dist/server/normalize-path.js.map +0 -1
- package/dist/server/pages-api-route.js.map +0 -1
- package/dist/server/pages-body-parser-config.js.map +0 -1
- package/dist/server/pages-data-route.js.map +0 -1
- package/dist/server/pages-default-404.js.map +0 -1
- package/dist/server/pages-document-initial-props.js.map +0 -1
- package/dist/server/pages-i18n.js.map +0 -1
- package/dist/server/pages-media-type.js.map +0 -1
- package/dist/server/pages-node-compat.js.map +0 -1
- package/dist/server/pages-page-data.js.map +0 -1
- package/dist/server/pages-page-method.js.map +0 -1
- package/dist/server/pages-page-response.js.map +0 -1
- package/dist/server/pages-serializable-props.js.map +0 -1
- package/dist/server/prerender-route-params.js.map +0 -1
- package/dist/server/prerender-work-unit-setup.js.map +0 -1
- package/dist/server/prod-server.js.map +0 -1
- package/dist/server/proxy-trust.js.map +0 -1
- package/dist/server/request-log.js.map +0 -1
- package/dist/server/request-pipeline.js.map +0 -1
- package/dist/server/rsc-stream-hints.js.map +0 -1
- package/dist/server/seed-cache.js.map +0 -1
- package/dist/server/server-action-not-found.js.map +0 -1
- package/dist/server/server-globals.js.map +0 -1
- package/dist/server/skip-cache-proof.js.map +0 -1
- package/dist/server/socket-error-backstop.js.map +0 -1
- package/dist/server/static-file-cache.js.map +0 -1
- package/dist/server/streaming-metadata.js.map +0 -1
- package/dist/server/worker-utils.js.map +0 -1
- package/dist/shims/amp.js.map +0 -1
- package/dist/shims/app-router-scroll-state.js.map +0 -1
- package/dist/shims/app-router-scroll.js.map +0 -1
- package/dist/shims/app.js.map +0 -1
- package/dist/shims/before-interactive-context.js.map +0 -1
- package/dist/shims/cache-for-request.js.map +0 -1
- package/dist/shims/cache-runtime.js.map +0 -1
- package/dist/shims/cache.js.map +0 -1
- package/dist/shims/client-hook-error.js.map +0 -1
- package/dist/shims/client-locale.js.map +0 -1
- package/dist/shims/compat-router.js.map +0 -1
- package/dist/shims/config.js.map +0 -1
- package/dist/shims/constants.js.map +0 -1
- package/dist/shims/default-global-error.js.map +0 -1
- package/dist/shims/default-not-found.js.map +0 -1
- package/dist/shims/document.js.map +0 -1
- package/dist/shims/dynamic.js.map +0 -1
- package/dist/shims/error-boundary.js.map +0 -1
- package/dist/shims/error.js.map +0 -1
- package/dist/shims/fetch-cache.js.map +0 -1
- package/dist/shims/font-google-base.js.map +0 -1
- package/dist/shims/font-local.js.map +0 -1
- package/dist/shims/font-utils.js.map +0 -1
- package/dist/shims/form.js.map +0 -1
- package/dist/shims/hash-scroll.js.map +0 -1
- package/dist/shims/head-state.js.map +0 -1
- package/dist/shims/head.js.map +0 -1
- package/dist/shims/headers.js.map +0 -1
- package/dist/shims/i18n-context.js.map +0 -1
- package/dist/shims/i18n-state.js.map +0 -1
- package/dist/shims/image-config.js.map +0 -1
- package/dist/shims/image.js.map +0 -1
- package/dist/shims/internal/als-registry.js.map +0 -1
- package/dist/shims/internal/app-route-detection.js.map +0 -1
- package/dist/shims/internal/app-router-context.js.map +0 -1
- package/dist/shims/internal/cookie-serialize.js.map +0 -1
- package/dist/shims/internal/make-hanging-promise.js.map +0 -1
- package/dist/shims/internal/pages-data-target.js.map +0 -1
- package/dist/shims/internal/pages-data-url.js.map +0 -1
- package/dist/shims/internal/parse-cookie-header.js.map +0 -1
- package/dist/shims/internal/router-context.js.map +0 -1
- package/dist/shims/internal/utils.js.map +0 -1
- package/dist/shims/internal/work-unit-async-storage.js.map +0 -1
- package/dist/shims/layout-segment-context.js.map +0 -1
- package/dist/shims/legacy-image.js.map +0 -1
- package/dist/shims/link-prefetch.js.map +0 -1
- package/dist/shims/link.js.map +0 -1
- package/dist/shims/metadata.js.map +0 -1
- package/dist/shims/navigation-state.js.map +0 -1
- package/dist/shims/navigation.js.map +0 -1
- package/dist/shims/navigation.react-server.js.map +0 -1
- package/dist/shims/offline.js.map +0 -1
- package/dist/shims/og.js.map +0 -1
- package/dist/shims/pages-router-runtime.js.map +0 -1
- package/dist/shims/readonly-url-search-params.js.map +0 -1
- package/dist/shims/request-context.js.map +0 -1
- package/dist/shims/root-params.js.map +0 -1
- package/dist/shims/router-state.js.map +0 -1
- package/dist/shims/router.js.map +0 -1
- package/dist/shims/script-nonce-context.js.map +0 -1
- package/dist/shims/script.js.map +0 -1
- package/dist/shims/server.js.map +0 -1
- package/dist/shims/slot.js.map +0 -1
- package/dist/shims/thenable-params.js.map +0 -1
- package/dist/shims/unified-request-context.js.map +0 -1
- package/dist/shims/unrecognized-action-error.js.map +0 -1
- package/dist/shims/url-safety.js.map +0 -1
- package/dist/shims/url-utils.js.map +0 -1
- package/dist/shims/use-merged-ref.js.map +0 -1
- package/dist/shims/web-vitals.js.map +0 -1
- package/dist/typegen.js.map +0 -1
- package/dist/utils/asset-prefix.js.map +0 -1
- package/dist/utils/base-path.js.map +0 -1
- package/dist/utils/cache-control-metadata.js.map +0 -1
- package/dist/utils/domain-locale.js.map +0 -1
- package/dist/utils/encode-cache-tag.js.map +0 -1
- package/dist/utils/error-cause.js.map +0 -1
- package/dist/utils/hash.js.map +0 -1
- package/dist/utils/html-limited-bots.js.map +0 -1
- package/dist/utils/lazy-chunks.js.map +0 -1
- package/dist/utils/manifest-paths.js.map +0 -1
- package/dist/utils/mdx-scan.js.map +0 -1
- package/dist/utils/navigation-signal.js.map +0 -1
- package/dist/utils/path.js.map +0 -1
- package/dist/utils/prerender-output-paths.js.map +0 -1
- package/dist/utils/project.js.map +0 -1
- package/dist/utils/public-routes.js.map +0 -1
- package/dist/utils/query.js.map +0 -1
- package/dist/utils/record.js.map +0 -1
- package/dist/utils/safe-json-file.js.map +0 -1
- package/dist/utils/sorted-array.js.map +0 -1
- package/dist/utils/text-stream.js.map +0 -1
- package/dist/utils/vinext-root.js.map +0 -1
|
@@ -9,10 +9,12 @@ import { tagAppPageMetadataError } from "./app-page-execution.js";
|
|
|
9
9
|
* `APP_PAGE_METADATA_ERROR_MARKER` symbol. The marker lets downstream special-
|
|
10
10
|
* error handling distinguish a `generateMetadata()` redirect/notFound from a
|
|
11
11
|
* page-component redirect/notFound, which matters because metadata is
|
|
12
|
-
* suspended/streamed in Next.js
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
12
|
+
* suspended/streamed in Next.js. Its redirects no longer become a plain
|
|
13
|
+
* HTTP 307: RSC navigation rides inside the flight payload (200), streaming
|
|
14
|
+
* document SSR gets an HTML refresh meta tag (200), and html-limited bots
|
|
15
|
+
* get a blocking 307 — whereas page redirects still emit a 307 for SSR.
|
|
16
|
+
* See https://github.com/cloudflare/vinext/issues/1347
|
|
17
|
+
* and Next.js test/e2e/app-dir/metadata-streaming.
|
|
16
18
|
*/
|
|
17
19
|
async function resolveModuleMetadata(...args) {
|
|
18
20
|
try {
|
|
@@ -225,5 +227,3 @@ async function resolveAppPageHeadInner(options) {
|
|
|
225
227
|
}
|
|
226
228
|
//#endregion
|
|
227
229
|
export { collectAppPageSearchParams, resolveActiveParallelRouteHeadInputs, resolveAppPageHead };
|
|
228
|
-
|
|
229
|
-
//# sourceMappingURL=app-page-head.js.map
|
|
@@ -12,5 +12,4 @@ type ResolveAppPageMethodResponseOptions = {
|
|
|
12
12
|
declare function isStaticOrSsgAppPageCandidate(options: AppPageMethodPolicyOptions): boolean;
|
|
13
13
|
declare function resolveAppPageMethodResponse(options: ResolveAppPageMethodResponseOptions): Response | null;
|
|
14
14
|
//#endregion
|
|
15
|
-
export { isStaticOrSsgAppPageCandidate, resolveAppPageMethodResponse };
|
|
16
|
-
//# sourceMappingURL=app-page-method.d.ts.map
|
|
15
|
+
export { isStaticOrSsgAppPageCandidate, resolveAppPageMethodResponse };
|
|
@@ -2,7 +2,7 @@ import { AppPageParams } from "./app-page-boundary.js";
|
|
|
2
2
|
|
|
3
3
|
//#region src/server/app-page-params.d.ts
|
|
4
4
|
declare function getAppPageSegmentParamName(segment: string): string | null;
|
|
5
|
+
declare function resolveAppPageSegmentParamScopeKeys(routeSegments: readonly string[] | null | undefined, treePosition: number): readonly string[];
|
|
5
6
|
declare function resolveAppPageSegmentParams(routeSegments: readonly string[] | null | undefined, treePosition: number, matchedParams: AppPageParams): AppPageParams;
|
|
6
7
|
//#endregion
|
|
7
|
-
export { getAppPageSegmentParamName, resolveAppPageSegmentParams };
|
|
8
|
-
//# sourceMappingURL=app-page-params.d.ts.map
|
|
8
|
+
export { getAppPageSegmentParamName, resolveAppPageSegmentParamScopeKeys, resolveAppPageSegmentParams };
|
|
@@ -8,6 +8,19 @@ function getAppPageSegmentParamName(segment) {
|
|
|
8
8
|
function isEmptyOptionalCatchAll(segment, paramValue) {
|
|
9
9
|
return segment.startsWith("[[...") && Array.isArray(paramValue) && paramValue.length === 0;
|
|
10
10
|
}
|
|
11
|
+
function resolveAppPageSegmentParamScopeKeys(routeSegments, treePosition) {
|
|
12
|
+
const paramNames = [];
|
|
13
|
+
const seen = /* @__PURE__ */ new Set();
|
|
14
|
+
const segments = routeSegments ?? [];
|
|
15
|
+
const end = Math.min(Math.max(treePosition, 0), segments.length);
|
|
16
|
+
for (let index = 0; index < end; index++) {
|
|
17
|
+
const paramName = getAppPageSegmentParamName(segments[index]);
|
|
18
|
+
if (!paramName || seen.has(paramName)) continue;
|
|
19
|
+
seen.add(paramName);
|
|
20
|
+
paramNames.push(paramName);
|
|
21
|
+
}
|
|
22
|
+
return paramNames;
|
|
23
|
+
}
|
|
11
24
|
function resolveAppPageSegmentParams(routeSegments, treePosition, matchedParams) {
|
|
12
25
|
const segmentParams = {};
|
|
13
26
|
const segments = routeSegments ?? [];
|
|
@@ -23,6 +36,4 @@ function resolveAppPageSegmentParams(routeSegments, treePosition, matchedParams)
|
|
|
23
36
|
return segmentParams;
|
|
24
37
|
}
|
|
25
38
|
//#endregion
|
|
26
|
-
export { getAppPageSegmentParamName, resolveAppPageSegmentParams };
|
|
27
|
-
|
|
28
|
-
//# sourceMappingURL=app-page-params.js.map
|
|
39
|
+
export { getAppPageSegmentParamName, resolveAppPageSegmentParamScopeKeys, resolveAppPageSegmentParams };
|
|
@@ -2,6 +2,17 @@ import { LayoutFlags } from "./app-elements-wire.js";
|
|
|
2
2
|
import { AppPageSpecialError, LayoutClassificationOptions } from "./app-page-execution.js";
|
|
3
3
|
|
|
4
4
|
//#region src/server/app-page-probe.d.ts
|
|
5
|
+
type ProbeReactServerSubtreeOptions = Readonly<{
|
|
6
|
+
maxDepth?: number;
|
|
7
|
+
maxNodes?: number;
|
|
8
|
+
}>;
|
|
9
|
+
/**
|
|
10
|
+
* Invokes server-component children returned by a layout probe so per-layout
|
|
11
|
+
* skip eligibility observes data dependencies created below the layout's
|
|
12
|
+
* immediate function body. The real RSC render remains authoritative; probe
|
|
13
|
+
* failures only make static-layout skip fall back to render-and-send.
|
|
14
|
+
*/
|
|
15
|
+
declare function probeReactServerSubtree(node: unknown, options?: ProbeReactServerSubtreeOptions): Promise<void>;
|
|
5
16
|
/**
|
|
6
17
|
* Build a probePage() invocation for the App Router request lifecycle.
|
|
7
18
|
*
|
|
@@ -24,6 +35,84 @@ declare function probeAppPage(options: {
|
|
|
24
35
|
asyncRouteParams: unknown;
|
|
25
36
|
searchParams: URLSearchParams | null | undefined;
|
|
26
37
|
}): unknown;
|
|
38
|
+
type AppPageProbeModule = Readonly<{
|
|
39
|
+
default?: unknown;
|
|
40
|
+
}> | null | undefined;
|
|
41
|
+
type AppPageProbeSlot = Readonly<{
|
|
42
|
+
page?: AppPageProbeModule;
|
|
43
|
+
}> | null | undefined;
|
|
44
|
+
type AppPageProbeRoute = Readonly<{
|
|
45
|
+
slots?: Readonly<Record<string, AppPageProbeSlot>> | null;
|
|
46
|
+
}>;
|
|
47
|
+
type AppPageProbeIntercept = Readonly<{
|
|
48
|
+
page?: AppPageProbeModule;
|
|
49
|
+
matchedParams?: unknown;
|
|
50
|
+
/**
|
|
51
|
+
* Key of the parallel-route slot this interception overrides. At render
|
|
52
|
+
* time the matched route's `slots[slotKey].page` is replaced by the
|
|
53
|
+
* interception page (see app-page-element-builder.ts), so the slot's own
|
|
54
|
+
* page never renders for this request.
|
|
55
|
+
*/
|
|
56
|
+
slotKey?: string | null;
|
|
57
|
+
}> | null | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* Fan out the per-request page probes for the App Router dispatch lifecycle.
|
|
60
|
+
*
|
|
61
|
+
* A single request can render more than one page component: the matched page,
|
|
62
|
+
* each active parallel-route slot page, and an interception page when one
|
|
63
|
+
* matches. Each must be probed so searchParams access anywhere in the rendered
|
|
64
|
+
* tree bails the request out of the query-invariant static cache.
|
|
65
|
+
*
|
|
66
|
+
* Extracted out of the generated RSC entry so the fan-out is directly
|
|
67
|
+
* unit-testable and the entry stays codegen glue (see AGENTS.md "Generated
|
|
68
|
+
* Entry Modules Should Stay Thin"). Returns a list of resolved promises so the
|
|
69
|
+
* caller can `Promise.all` them.
|
|
70
|
+
*
|
|
71
|
+
* The fan-out is scoped to the page components that render for this request:
|
|
72
|
+
*
|
|
73
|
+
* - **Interception override:** when an interception matches it replaces the
|
|
74
|
+
* page of the slot named by `intercept.slotKey` (the element builder sets
|
|
75
|
+
* `overrides[slotKey].pageModule` to the interception page, which wins over
|
|
76
|
+
* `slot.page` in `app-page-route-wiring.tsx`). We probe the interception page
|
|
77
|
+
* in place of that slot's own page rather than probing both — probing the
|
|
78
|
+
* overridden slot page would mark an otherwise-static request dynamic for a
|
|
79
|
+
* component that never renders.
|
|
80
|
+
* - **Non-overridden slots:** `slot.page?.default` is exactly what renders.
|
|
81
|
+
* `app-page-route-wiring.tsx` resolves a slot to `overrideOrPageComponent ??
|
|
82
|
+
* defaultComponent`, so whenever a slot has a `page.tsx` that page renders.
|
|
83
|
+
* When a slot has only a `default.tsx` (including the soft-nav case at
|
|
84
|
+
* `app-page-route-wiring.tsx:741` that skips an already-mounted slot), there
|
|
85
|
+
* is no `slot.page?.default`, so `probeAppPage` short-circuits to `null` and
|
|
86
|
+
* probes nothing — a no-op, not an over-bail.
|
|
87
|
+
*
|
|
88
|
+
* Interception only fires for RSC navigations (`resolveAppPageInterceptState`
|
|
89
|
+
* returns `kind: "none"` when `!isRscRequest`, app-page-request.ts:324), so the
|
|
90
|
+
* interception handling here is gated on `isRscRequest`. For non-RSC (HTML)
|
|
91
|
+
* requests the matched route renders normally, so we probe every slot's own
|
|
92
|
+
* page and skip the interception probe entirely. The remaining "source-route"
|
|
93
|
+
* interception case (where a *different* route renders, app-page-request.ts:342)
|
|
94
|
+
* never reaches this probe: `dispatchAppPage` returns the intercepted response
|
|
95
|
+
* before calling `probePage`, so by the time this runs any matched interception
|
|
96
|
+
* is the current-route override case above.
|
|
97
|
+
*
|
|
98
|
+
* A `default.tsx` that itself awaits `searchParams` is not probed here, but the
|
|
99
|
+
* real render still observes that access and skips the query-invariant cache
|
|
100
|
+
* write (the same loading.tsx backstop), so this cannot under-bail.
|
|
101
|
+
*/
|
|
102
|
+
declare function buildAppPageProbes(options: {
|
|
103
|
+
route: AppPageProbeRoute;
|
|
104
|
+
pageComponent: unknown;
|
|
105
|
+
asyncRouteParams: unknown;
|
|
106
|
+
searchParams: URLSearchParams | null | undefined;
|
|
107
|
+
intercept?: AppPageProbeIntercept;
|
|
108
|
+
/**
|
|
109
|
+
* Whether this is an RSC navigation. Interception only fires for RSC
|
|
110
|
+
* requests, so the interception probe is ignored when this is false.
|
|
111
|
+
*/
|
|
112
|
+
isRscRequest: boolean; /** Fallback raw params used when an interception match omits its own. */
|
|
113
|
+
matchedParams: unknown;
|
|
114
|
+
makeThenableParams: (params: unknown) => unknown;
|
|
115
|
+
}): Promise<unknown>[];
|
|
27
116
|
type ProbeAppPageBeforeRenderResult = {
|
|
28
117
|
response: Response | null;
|
|
29
118
|
layoutFlags: LayoutFlags;
|
|
@@ -41,5 +130,4 @@ type ProbeAppPageBeforeRenderOptions = {
|
|
|
41
130
|
};
|
|
42
131
|
declare function probeAppPageBeforeRender(options: ProbeAppPageBeforeRenderOptions): Promise<ProbeAppPageBeforeRenderResult>;
|
|
43
132
|
//#endregion
|
|
44
|
-
export { probeAppPage, probeAppPageBeforeRender };
|
|
45
|
-
//# sourceMappingURL=app-page-probe.d.ts.map
|
|
133
|
+
export { buildAppPageProbes, probeAppPage, probeAppPageBeforeRender, probeReactServerSubtree };
|
|
@@ -1,7 +1,130 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { markAppPagePropsForUseCache } from "../shims/cache-runtime.js";
|
|
2
|
+
import { isNextRouterError } from "../shims/navigation.js";
|
|
3
|
+
import { isPromiseLike } from "../utils/promise.js";
|
|
2
4
|
import { probeAppPageComponent, probeAppPageLayouts } from "./app-page-execution.js";
|
|
3
5
|
import { collectAppPageSearchParams } from "./app-page-head.js";
|
|
6
|
+
import { makeObservedAppPageSearchParamsThenable } from "./app-page-search-params-observation.js";
|
|
7
|
+
import { Fragment, isValidElement } from "react";
|
|
4
8
|
//#region src/server/app-page-probe.ts
|
|
9
|
+
const DEFAULT_SUBTREE_PROBE_MAX_DEPTH = 32;
|
|
10
|
+
const DEFAULT_SUBTREE_PROBE_MAX_NODES = 1e3;
|
|
11
|
+
const REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref");
|
|
12
|
+
const REACT_LAZY_TYPE = Symbol.for("react.lazy");
|
|
13
|
+
const REACT_MEMO_TYPE = Symbol.for("react.memo");
|
|
14
|
+
var AppPageSubtreeProbeLimitError = class extends Error {
|
|
15
|
+
constructor(message) {
|
|
16
|
+
super(message);
|
|
17
|
+
this.name = "AppPageSubtreeProbeLimitError";
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
var AppPageSubtreeProbeUnsupportedIterableError = class extends Error {
|
|
21
|
+
constructor() {
|
|
22
|
+
super("App page layout subtree probe cannot safely inspect iterable children");
|
|
23
|
+
this.name = "AppPageSubtreeProbeUnsupportedIterableError";
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
function isIterable(value) {
|
|
27
|
+
return Boolean(value && typeof value !== "string" && typeof value === "object" && Symbol.iterator in value && typeof value[Symbol.iterator] === "function");
|
|
28
|
+
}
|
|
29
|
+
function isProbeReactElement(value) {
|
|
30
|
+
return isValidElement(value);
|
|
31
|
+
}
|
|
32
|
+
function isObjectLike(value) {
|
|
33
|
+
return (typeof value === "object" || typeof value === "function") && value !== null;
|
|
34
|
+
}
|
|
35
|
+
function isUnknownFunction(value) {
|
|
36
|
+
return typeof value === "function";
|
|
37
|
+
}
|
|
38
|
+
function readReactMemoType(value) {
|
|
39
|
+
if (!isObjectLike(value) || Reflect.get(value, "$$typeof") !== REACT_MEMO_TYPE) return null;
|
|
40
|
+
return { innerType: Reflect.get(value, "type") };
|
|
41
|
+
}
|
|
42
|
+
function readReactLazyType(value) {
|
|
43
|
+
if (!isObjectLike(value) || Reflect.get(value, "$$typeof") !== REACT_LAZY_TYPE) return null;
|
|
44
|
+
const init = Reflect.get(value, "_init");
|
|
45
|
+
if (!isUnknownFunction(init)) return null;
|
|
46
|
+
return {
|
|
47
|
+
init,
|
|
48
|
+
payload: Reflect.get(value, "_payload")
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function readReactForwardRefRender(value) {
|
|
52
|
+
if (!isObjectLike(value) || Reflect.get(value, "$$typeof") !== REACT_FORWARD_REF_TYPE) return null;
|
|
53
|
+
const render = Reflect.get(value, "render");
|
|
54
|
+
return isUnknownFunction(render) ? render : null;
|
|
55
|
+
}
|
|
56
|
+
async function resolveReactLazyType(lazyType) {
|
|
57
|
+
try {
|
|
58
|
+
return lazyType.init(lazyType.payload);
|
|
59
|
+
} catch (error) {
|
|
60
|
+
if (!isPromiseLike(error)) throw error;
|
|
61
|
+
await error;
|
|
62
|
+
return lazyType.init(lazyType.payload);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Invokes server-component children returned by a layout probe so per-layout
|
|
67
|
+
* skip eligibility observes data dependencies created below the layout's
|
|
68
|
+
* immediate function body. The real RSC render remains authoritative; probe
|
|
69
|
+
* failures only make static-layout skip fall back to render-and-send.
|
|
70
|
+
*/
|
|
71
|
+
async function probeReactServerSubtree(node, options = {}) {
|
|
72
|
+
const maxDepth = options.maxDepth ?? DEFAULT_SUBTREE_PROBE_MAX_DEPTH;
|
|
73
|
+
const maxNodes = options.maxNodes ?? DEFAULT_SUBTREE_PROBE_MAX_NODES;
|
|
74
|
+
let visitedNodes = 0;
|
|
75
|
+
const enterProbeNode = (depth) => {
|
|
76
|
+
if (depth > maxDepth) throw new AppPageSubtreeProbeLimitError("App page layout subtree probe exceeded max depth");
|
|
77
|
+
visitedNodes += 1;
|
|
78
|
+
if (visitedNodes > maxNodes) throw new AppPageSubtreeProbeLimitError("App page layout subtree probe exceeded max nodes");
|
|
79
|
+
};
|
|
80
|
+
const renderElementType = async (type, props, depth, wrapperDepth = 0) => {
|
|
81
|
+
if (wrapperDepth > maxDepth) throw new AppPageSubtreeProbeLimitError("App page layout subtree probe exceeded max depth");
|
|
82
|
+
if (isUnknownFunction(type)) {
|
|
83
|
+
await visit(type(props), depth + 1);
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
const memoType = readReactMemoType(type);
|
|
87
|
+
if (memoType) return renderElementType(memoType.innerType, props, depth, wrapperDepth + 1);
|
|
88
|
+
const lazyType = readReactLazyType(type);
|
|
89
|
+
if (lazyType) return renderElementType(await resolveReactLazyType(lazyType), props, depth, wrapperDepth + 1);
|
|
90
|
+
const forwardRefRender = readReactForwardRefRender(type);
|
|
91
|
+
if (forwardRefRender) {
|
|
92
|
+
await visit(forwardRefRender(props, null), depth + 1);
|
|
93
|
+
return true;
|
|
94
|
+
}
|
|
95
|
+
return false;
|
|
96
|
+
};
|
|
97
|
+
const visit = async (value, depth) => {
|
|
98
|
+
enterProbeNode(depth);
|
|
99
|
+
if (value == null || typeof value === "boolean" || typeof value === "number") return;
|
|
100
|
+
if (typeof value === "string" || typeof value === "bigint") return;
|
|
101
|
+
if (isPromiseLike(value)) {
|
|
102
|
+
await visit(await value, depth);
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (Array.isArray(value)) {
|
|
106
|
+
for (const child of value) await visit(child, depth + 1);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (isIterable(value) && !isProbeReactElement(value)) throw new AppPageSubtreeProbeUnsupportedIterableError();
|
|
110
|
+
if (!isProbeReactElement(value)) return;
|
|
111
|
+
if (value.type === Fragment || typeof value.type === "string") {
|
|
112
|
+
await visit(value.props.children, depth + 1);
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
if (await renderElementType(value.type, value.props, depth)) return;
|
|
116
|
+
await visit(value.props.children, depth + 1);
|
|
117
|
+
};
|
|
118
|
+
await visit(node, 0);
|
|
119
|
+
}
|
|
120
|
+
async function probeReactServerSubtreeForDynamicUsage(node) {
|
|
121
|
+
try {
|
|
122
|
+
await probeReactServerSubtree(node);
|
|
123
|
+
} catch (error) {
|
|
124
|
+
if (isNextRouterError(error)) return;
|
|
125
|
+
throw error;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
5
128
|
/**
|
|
6
129
|
* Build a probePage() invocation for the App Router request lifecycle.
|
|
7
130
|
*
|
|
@@ -23,10 +146,84 @@ function probeAppPage(options) {
|
|
|
23
146
|
const { pageComponent, asyncRouteParams, searchParams } = options;
|
|
24
147
|
if (typeof pageComponent !== "function") return null;
|
|
25
148
|
const { pageSearchParams } = collectAppPageSearchParams(searchParams);
|
|
26
|
-
|
|
149
|
+
const result = pageComponent(markAppPagePropsForUseCache({
|
|
27
150
|
params: asyncRouteParams,
|
|
28
|
-
searchParams:
|
|
151
|
+
searchParams: makeObservedAppPageSearchParamsThenable(pageSearchParams, { observeReactPromiseStatus: true })
|
|
152
|
+
}));
|
|
153
|
+
if (isPromiseLike(result)) return result.then(async (resolved) => {
|
|
154
|
+
await probeReactServerSubtreeForDynamicUsage(resolved);
|
|
155
|
+
return resolved;
|
|
29
156
|
});
|
|
157
|
+
if (isValidElement(result) || Array.isArray(result)) return probeReactServerSubtreeForDynamicUsage(result).then(() => result);
|
|
158
|
+
return result;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Fan out the per-request page probes for the App Router dispatch lifecycle.
|
|
162
|
+
*
|
|
163
|
+
* A single request can render more than one page component: the matched page,
|
|
164
|
+
* each active parallel-route slot page, and an interception page when one
|
|
165
|
+
* matches. Each must be probed so searchParams access anywhere in the rendered
|
|
166
|
+
* tree bails the request out of the query-invariant static cache.
|
|
167
|
+
*
|
|
168
|
+
* Extracted out of the generated RSC entry so the fan-out is directly
|
|
169
|
+
* unit-testable and the entry stays codegen glue (see AGENTS.md "Generated
|
|
170
|
+
* Entry Modules Should Stay Thin"). Returns a list of resolved promises so the
|
|
171
|
+
* caller can `Promise.all` them.
|
|
172
|
+
*
|
|
173
|
+
* The fan-out is scoped to the page components that render for this request:
|
|
174
|
+
*
|
|
175
|
+
* - **Interception override:** when an interception matches it replaces the
|
|
176
|
+
* page of the slot named by `intercept.slotKey` (the element builder sets
|
|
177
|
+
* `overrides[slotKey].pageModule` to the interception page, which wins over
|
|
178
|
+
* `slot.page` in `app-page-route-wiring.tsx`). We probe the interception page
|
|
179
|
+
* in place of that slot's own page rather than probing both — probing the
|
|
180
|
+
* overridden slot page would mark an otherwise-static request dynamic for a
|
|
181
|
+
* component that never renders.
|
|
182
|
+
* - **Non-overridden slots:** `slot.page?.default` is exactly what renders.
|
|
183
|
+
* `app-page-route-wiring.tsx` resolves a slot to `overrideOrPageComponent ??
|
|
184
|
+
* defaultComponent`, so whenever a slot has a `page.tsx` that page renders.
|
|
185
|
+
* When a slot has only a `default.tsx` (including the soft-nav case at
|
|
186
|
+
* `app-page-route-wiring.tsx:741` that skips an already-mounted slot), there
|
|
187
|
+
* is no `slot.page?.default`, so `probeAppPage` short-circuits to `null` and
|
|
188
|
+
* probes nothing — a no-op, not an over-bail.
|
|
189
|
+
*
|
|
190
|
+
* Interception only fires for RSC navigations (`resolveAppPageInterceptState`
|
|
191
|
+
* returns `kind: "none"` when `!isRscRequest`, app-page-request.ts:324), so the
|
|
192
|
+
* interception handling here is gated on `isRscRequest`. For non-RSC (HTML)
|
|
193
|
+
* requests the matched route renders normally, so we probe every slot's own
|
|
194
|
+
* page and skip the interception probe entirely. The remaining "source-route"
|
|
195
|
+
* interception case (where a *different* route renders, app-page-request.ts:342)
|
|
196
|
+
* never reaches this probe: `dispatchAppPage` returns the intercepted response
|
|
197
|
+
* before calling `probePage`, so by the time this runs any matched interception
|
|
198
|
+
* is the current-route override case above.
|
|
199
|
+
*
|
|
200
|
+
* A `default.tsx` that itself awaits `searchParams` is not probed here, but the
|
|
201
|
+
* real render still observes that access and skips the query-invariant cache
|
|
202
|
+
* write (the same loading.tsx backstop), so this cannot under-bail.
|
|
203
|
+
*/
|
|
204
|
+
function buildAppPageProbes(options) {
|
|
205
|
+
const { route, pageComponent, asyncRouteParams, searchParams, matchedParams } = options;
|
|
206
|
+
const intercept = options.isRscRequest ? options.intercept : null;
|
|
207
|
+
const probes = [probeAppPage({
|
|
208
|
+
pageComponent,
|
|
209
|
+
asyncRouteParams,
|
|
210
|
+
searchParams
|
|
211
|
+
})];
|
|
212
|
+
const overriddenSlotKey = intercept?.slotKey ?? null;
|
|
213
|
+
for (const [slotKey, slot] of Object.entries(route.slots ?? {})) {
|
|
214
|
+
if (overriddenSlotKey !== null && slotKey === overriddenSlotKey) continue;
|
|
215
|
+
probes.push(probeAppPage({
|
|
216
|
+
pageComponent: slot?.page?.default,
|
|
217
|
+
asyncRouteParams,
|
|
218
|
+
searchParams
|
|
219
|
+
}));
|
|
220
|
+
}
|
|
221
|
+
if (intercept) probes.push(probeAppPage({
|
|
222
|
+
pageComponent: intercept.page?.default,
|
|
223
|
+
asyncRouteParams: options.makeThenableParams(intercept.matchedParams ?? matchedParams),
|
|
224
|
+
searchParams
|
|
225
|
+
}));
|
|
226
|
+
return probes.map((probe) => Promise.resolve(probe));
|
|
30
227
|
}
|
|
31
228
|
async function probeAppPageBeforeRender(options) {
|
|
32
229
|
let layoutFlags = {};
|
|
@@ -71,6 +268,4 @@ async function probeAppPageBeforeRender(options) {
|
|
|
71
268
|
};
|
|
72
269
|
}
|
|
73
270
|
//#endregion
|
|
74
|
-
export { probeAppPage, probeAppPageBeforeRender };
|
|
75
|
-
|
|
76
|
-
//# sourceMappingURL=app-page-probe.js.map
|
|
271
|
+
export { buildAppPageProbes, probeAppPage, probeAppPageBeforeRender, probeReactServerSubtree };
|
|
@@ -18,5 +18,4 @@ type AppPageRenderIdentity = {
|
|
|
18
18
|
declare function normalizeAppPageInterceptionProofPathname(pathname: string | null): string | null;
|
|
19
19
|
declare function createAppPageRenderIdentity(input: AppPageRenderIdentityInput): AppPageRenderIdentity;
|
|
20
20
|
//#endregion
|
|
21
|
-
export { AppPageRenderIdentity, createAppPageRenderIdentity, normalizeAppPageInterceptionProofPathname };
|
|
22
|
-
//# sourceMappingURL=app-page-render-identity.d.ts.map
|
|
21
|
+
export { AppPageRenderIdentity, createAppPageRenderIdentity, normalizeAppPageInterceptionProofPathname };
|
|
@@ -31,5 +31,4 @@ declare function createAppPageHtmlOutputScope(options: {
|
|
|
31
31
|
routePattern: string;
|
|
32
32
|
}): CacheProofOutputScope;
|
|
33
33
|
//#endregion
|
|
34
|
-
export { AppPageRenderObservationState, createAppPageHtmlOutputScope, createAppPageRenderObservation, createAppPageRscOutputScope, createEmptyAppPageRenderObservationState };
|
|
35
|
-
//# sourceMappingURL=app-page-render-observation.d.ts.map
|
|
34
|
+
export { AppPageRenderObservationState, createAppPageHtmlOutputScope, createAppPageRenderObservation, createAppPageRscOutputScope, createEmptyAppPageRenderObservationState };
|
|
@@ -64,5 +64,3 @@ function createAppPageHtmlOutputScope(options) {
|
|
|
64
64
|
}
|
|
65
65
|
//#endregion
|
|
66
66
|
export { createAppPageHtmlOutputScope, createAppPageRenderObservation, createAppPageRscOutputScope, createEmptyAppPageRenderObservationState };
|
|
67
|
-
|
|
68
|
-
//# sourceMappingURL=app-page-render-observation.js.map
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { CachedAppPageValue } from "../shims/cache.js";
|
|
2
|
+
import { ClientReuseManifestParseResult, ClientReuseManifestSkipDisposition } from "./client-reuse-manifest.js";
|
|
2
3
|
import { AppOutgoingElements } from "./app-elements-wire.js";
|
|
4
|
+
import { NavigationContext } from "../shims/navigation.js";
|
|
3
5
|
import { AppPageFontPreload, AppPageSpecialError, LayoutClassificationOptions } from "./app-page-execution.js";
|
|
4
6
|
import { AppPageMiddlewareContext } from "./app-page-response.js";
|
|
5
7
|
import { RootParams } from "../shims/root-params.js";
|
|
6
8
|
import { AppPageSsrHandler } from "./app-page-stream.js";
|
|
9
|
+
import { AppLayoutParamAccessTracker } from "./app-layout-param-observation.js";
|
|
7
10
|
import { AppRscRenderMode } from "./app-rsc-render-mode.js";
|
|
8
11
|
import { AppPageRenderObservationState } from "./app-page-render-observation.js";
|
|
9
12
|
import { ReactNode } from "react";
|
|
@@ -34,13 +37,14 @@ type RenderAppPageLifecycleOptions = {
|
|
|
34
37
|
getFontLinks: () => string[];
|
|
35
38
|
getFontPreloads: () => AppPageFontPreload[];
|
|
36
39
|
getFontStyles: () => string[];
|
|
37
|
-
getNavigationContext: () =>
|
|
40
|
+
getNavigationContext: () => NavigationContext | null;
|
|
38
41
|
getPageTags: () => string[];
|
|
39
42
|
getRequestCacheLife: () => AppPageRequestCacheLife | null;
|
|
40
43
|
peekRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
41
44
|
getDraftModeCookieHeader: () => string | null | undefined;
|
|
42
45
|
handlerStart: number;
|
|
43
46
|
hasLoadingBoundary: boolean;
|
|
47
|
+
dynamicStaleTimeSeconds?: number;
|
|
44
48
|
isDynamicError: boolean;
|
|
45
49
|
isDraftMode: boolean;
|
|
46
50
|
isEdgeRuntime?: boolean;
|
|
@@ -76,13 +80,15 @@ type RenderAppPageLifecycleOptions = {
|
|
|
76
80
|
routePattern: string;
|
|
77
81
|
runWithSuppressedHookWarning<T>(probe: () => Promise<T>): Promise<T>;
|
|
78
82
|
scriptNonce?: string;
|
|
83
|
+
clientReuseManifest?: ClientReuseManifestParseResult;
|
|
84
|
+
skipDisposition?: ClientReuseManifestSkipDisposition;
|
|
79
85
|
mountedSlotsHeader?: string | null;
|
|
80
86
|
renderMode?: AppRscRenderMode;
|
|
81
87
|
waitUntil?: (promise: Promise<void>) => void;
|
|
88
|
+
layoutParamAccess?: AppLayoutParamAccessTracker;
|
|
82
89
|
element: ReactNode | Readonly<Record<string, ReactNode>>;
|
|
83
90
|
classification?: LayoutClassificationOptions | null;
|
|
84
91
|
};
|
|
85
92
|
declare function renderAppPageLifecycle(options: RenderAppPageLifecycleOptions): Promise<Response>;
|
|
86
93
|
//#endregion
|
|
87
|
-
export { renderAppPageLifecycle };
|
|
88
|
-
//# sourceMappingURL=app-page-render.d.ts.map
|
|
94
|
+
export { renderAppPageLifecycle };
|