vinext 1.0.0-beta.9 → 1.0.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 +150 -92
- package/THIRD_PARTY_LICENSES.md +25 -0
- package/dist/_virtual/_rolldown/runtime.js +25 -0
- package/dist/build/action-owner-manifest.d.ts +8 -9
- package/dist/build/action-owner-manifest.js +23 -5
- package/dist/build/assets-ignore.d.ts +3 -4
- package/dist/build/clean-output.d.ts +2 -3
- package/dist/build/client-build-config.d.ts +40 -12
- package/dist/build/client-build-config.js +76 -6
- package/dist/build/css-url-assets.d.ts +4 -5
- package/dist/build/css-url-assets.js +5 -2
- package/dist/build/google-fonts/build-url.d.ts +3 -4
- package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
- package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
- package/dist/build/google-fonts/font-metadata.d.ts +2 -3
- package/dist/build/google-fonts/get-axes.d.ts +2 -3
- package/dist/build/google-fonts/sort-variants.d.ts +2 -3
- package/dist/build/google-fonts/validate.d.ts +2 -3
- package/dist/build/google-fonts/validate.js +8 -4
- package/dist/build/inject-pregenerated-paths.d.ts +2 -3
- package/dist/build/inject-pregenerated-paths.js +16 -14
- package/dist/build/inline-css.d.ts +3 -4
- package/dist/build/layout-classification-types.d.ts +4 -5
- package/dist/build/layout-classification.d.ts +7 -8
- package/dist/build/lifecycle.d.ts +42 -0
- package/dist/build/lifecycle.js +253 -0
- package/dist/build/module-dependency-cache.d.ts +2 -3
- package/dist/build/next-client-runtime-manifests.d.ts +4 -5
- package/dist/build/nitro-route-rules.d.ts +6 -7
- package/dist/build/nitro-route-rules.js +1 -1
- package/dist/build/pages-client-assets-module.d.ts +4 -8
- package/dist/build/pages-client-assets-module.js +1 -13
- package/dist/build/precompress.d.ts +2 -3
- package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
- package/dist/build/prerender-cloudflare-loader.js +49 -0
- package/dist/build/prerender-paths.d.ts +36 -11
- package/dist/build/prerender-paths.js +273 -97
- package/dist/build/prerender-phase.d.ts +2 -3
- package/dist/build/prerender-server-entry.js +11 -3
- package/dist/build/prerender-server-pool.d.ts +9 -6
- package/dist/build/prerender-server-pool.js +8 -5
- package/dist/build/prerender.d.ts +65 -15
- package/dist/build/prerender.js +139 -43
- package/dist/build/preview-credentials.d.ts +5 -6
- package/dist/build/preview-credentials.js +2 -2
- package/dist/build/public-dir-conflict.d.ts +5 -6
- package/dist/build/public-dir-conflict.js +2 -1
- package/dist/build/report.d.ts +24 -20
- package/dist/build/report.js +10 -2
- package/dist/build/route-classification-injector.d.ts +2 -3
- package/dist/build/route-classification-manifest.d.ts +5 -6
- package/dist/build/run-prerender.d.ts +11 -9
- package/dist/build/run-prerender.js +25 -16
- package/dist/build/server-entry.d.ts +4 -0
- package/dist/build/server-entry.js +28 -0
- package/dist/build/server-manifest.d.ts +8 -3
- package/dist/build/server-manifest.js +14 -2
- package/dist/build/ssr-manifest.d.ts +5 -6
- package/dist/build/standalone.d.ts +2 -3
- package/dist/build/standalone.js +2 -2
- package/dist/build/static-export.d.ts +6 -7
- package/dist/cache/cache-adapters-virtual.d.ts +60 -20
- package/dist/cache/cache-adapters-virtual.js +50 -7
- package/dist/check.d.ts +11 -10
- package/dist/check.js +467 -176
- package/dist/cli-args.d.ts +7 -16
- package/dist/cli-args.js +2 -45
- package/dist/cli-dev-config.d.ts +10 -7
- package/dist/cli-dev-config.js +160 -3
- package/dist/cli.js +124 -442
- package/dist/client/app-nav-failure-handler.d.ts +6 -7
- package/dist/client/client-rewrite-matcher.d.ts +2 -3
- package/dist/client/client-rewrites.d.ts +4 -5
- package/dist/client/dev-error-overlay-store.d.ts +13 -14
- package/dist/client/dev-error-overlay.d.ts +15 -15
- package/dist/client/dev-error-overlay.js +8 -5
- package/dist/client/instrumentation-client-inject.d.ts +3 -4
- package/dist/client/instrumentation-client-state.d.ts +5 -6
- package/dist/client/instrumentation-client.d.ts +3 -4
- package/dist/client/navigation-runtime.d.ts +21 -17
- package/dist/client/navigation-runtime.js +2 -1
- package/dist/client/pages-router-link-navigation.d.ts +4 -5
- package/dist/client/react-instance.d.ts +2 -3
- package/dist/client/validate-module-path.d.ts +2 -3
- package/dist/client/vinext-next-data.d.ts +7 -10
- package/dist/client/window-next.d.ts +4 -5
- package/dist/config/config-matchers.d.ts +16 -16
- package/dist/config/config-matchers.js +2 -4
- package/dist/config/dotenv.d.ts +3 -4
- package/dist/config/dotenv.js +2 -1
- package/dist/config/next-config.d.ts +31 -27
- package/dist/config/next-config.js +163 -16
- package/dist/config/prerender.d.ts +20 -16
- package/dist/config/prerender.js +10 -4
- package/dist/config/request-context.d.ts +5 -6
- package/dist/config/server-external-packages.d.ts +14 -3
- package/dist/config/server-external-packages.js +37 -3
- package/dist/config/tsconfig-paths.d.ts +3 -4
- package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
- package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
- package/dist/entries/app-browser-entry.d.ts +4 -5
- package/dist/entries/app-browser-entry.js +1 -3
- package/dist/entries/app-rsc-entry.d.ts +10 -3
- package/dist/entries/app-rsc-entry.js +502 -51
- package/dist/entries/app-rsc-manifest.d.ts +4 -3
- package/dist/entries/app-rsc-manifest.js +26 -8
- package/dist/entries/app-ssr-entry.d.ts +2 -3
- package/dist/entries/app-ssr-entry.js +8 -1
- package/dist/entries/pages-client-entry.d.ts +3 -3
- package/dist/entries/pages-client-entry.js +17 -2
- package/dist/entries/pages-server-entry.d.ts +13 -3
- package/dist/entries/pages-server-entry.js +234 -33
- package/dist/entries/runtime-entry-module.d.ts +4 -5
- package/dist/image/image-adapters-virtual.d.ts +4 -5
- package/dist/index.d.ts +10 -11
- package/dist/index.js +711 -189
- package/dist/init-cloudflare.d.ts +26 -17
- package/dist/init-cloudflare.js +710 -102
- package/dist/init-platform.d.ts +26 -22
- package/dist/init-platform.js +85 -29
- package/dist/init.d.ts +19 -13
- package/dist/init.js +123 -41
- package/dist/plugins/action-owner-manifest.d.ts +3 -4
- package/dist/plugins/action-owner-manifest.js +10 -3
- package/dist/plugins/ast-scope.d.ts +10 -11
- package/dist/plugins/ast-scope.js +10 -22
- package/dist/plugins/ast-utils.d.ts +16 -29
- package/dist/plugins/ast-utils.js +27 -71
- package/dist/plugins/async-hooks-stub.d.ts +2 -3
- package/dist/plugins/client-reference-dedup.d.ts +4 -5
- package/dist/plugins/css-data-url.d.ts +2 -3
- package/dist/plugins/css-module-imports.d.ts +3 -4
- package/dist/plugins/css-module-imports.js +1 -1
- package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
- package/dist/plugins/dynamic-preload-metadata.js +55 -154
- package/dist/plugins/environment.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.js +6 -10
- package/dist/plugins/fonts.d.ts +10 -11
- package/dist/plugins/fonts.js +4 -3
- package/dist/plugins/ignore-dynamic-requests.d.ts +3 -4
- package/dist/plugins/ignore-dynamic-requests.js +60 -89
- package/dist/plugins/import-meta-url.d.ts +6 -7
- package/dist/plugins/import-meta-url.js +31 -43
- package/dist/plugins/instrumentation-client.d.ts +3 -3
- package/dist/plugins/instrumentation-client.js +46 -10
- package/dist/plugins/middleware-export-validation.d.ts +3 -4
- package/dist/plugins/middleware-export-validation.js +3 -3
- package/dist/plugins/middleware-server-only.d.ts +2 -3
- package/dist/plugins/og-asset-ownership.d.ts +3 -4
- package/dist/plugins/og-assets.d.ts +4 -5
- package/dist/plugins/og-assets.js +32 -13
- package/dist/plugins/og-harfbuzz.d.ts +24 -0
- package/dist/plugins/og-harfbuzz.js +260 -0
- package/dist/plugins/optimize-imports.d.ts +7 -7
- package/dist/plugins/optimize-imports.js +32 -44
- package/dist/plugins/pages-node-externals.d.ts +2 -3
- package/dist/plugins/pages-node-externals.js +6 -11
- package/dist/plugins/postcss.d.ts +8 -4
- package/dist/plugins/postcss.js +1 -1
- package/dist/plugins/remove-console.d.ts +2 -3
- package/dist/plugins/remove-console.js +0 -1
- package/dist/plugins/require-condition-resolution.d.ts +3 -4
- package/dist/plugins/require-condition-resolution.js +17 -18
- package/dist/plugins/require-context.d.ts +2 -3
- package/dist/plugins/require-context.js +13 -21
- package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
- package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
- package/dist/plugins/rsc-client-shim-excludes.js +1 -0
- package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
- package/dist/plugins/sass.d.ts +7 -8
- package/dist/plugins/sass.js +7 -4
- package/dist/plugins/server-externals-manifest.d.ts +2 -3
- package/dist/plugins/strip-server-exports.d.ts +5 -6
- package/dist/plugins/strip-server-exports.js +1 -1
- package/dist/plugins/styled-jsx.d.ts +2 -3
- package/dist/plugins/styled-jsx.js +7 -7
- package/dist/plugins/transform-cache.d.ts +2 -3
- package/dist/plugins/transform-result.d.ts +3 -4
- package/dist/plugins/transitive-externals.d.ts +2 -3
- package/dist/plugins/typeof-window.d.ts +6 -7
- package/dist/plugins/typeof-window.js +30 -31
- package/dist/plugins/use-cache-callable.d.ts +2 -5
- package/dist/plugins/use-cache-callable.js +43 -22
- package/dist/plugins/wasm-module-import.d.ts +2 -3
- package/dist/plugins/worker-image-imports.d.ts +2 -3
- package/dist/plugins/worker-image-imports.js +6 -8
- package/dist/routing/app-route-graph.d.ts +19 -19
- package/dist/routing/app-route-graph.js +3 -2
- package/dist/routing/app-router.d.ts +19 -6
- package/dist/routing/app-router.js +24 -2
- package/dist/routing/file-matcher.d.ts +9 -10
- package/dist/routing/pages-router.d.ts +6 -6
- package/dist/routing/pages-router.js +1 -1
- package/dist/routing/route-matching.d.ts +4 -5
- package/dist/routing/route-matching.js +4 -2
- package/dist/routing/route-pattern.d.ts +13 -14
- package/dist/routing/route-trie.d.ts +5 -6
- package/dist/routing/route-validation.d.ts +3 -4
- package/dist/routing/route-validation.js +12 -11
- package/dist/routing/utils.d.ts +13 -14
- package/dist/server/accept-encoding.d.ts +9 -10
- package/dist/server/api-handler.d.ts +2 -3
- package/dist/server/api-handler.js +9 -6
- package/dist/server/app-action-forwarding.d.ts +3 -4
- package/dist/server/app-action-forwarding.js +1 -1
- package/dist/server/app-action-request.d.ts +2 -3
- package/dist/server/app-bfcache-id.d.ts +3 -4
- package/dist/server/app-bfcache-identity.d.ts +8 -9
- package/dist/server/app-browser-action-result.d.ts +15 -16
- package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
- package/dist/server/app-browser-entry.js +87 -34
- package/dist/server/app-browser-error.d.ts +5 -6
- package/dist/server/app-browser-error.js +9 -3
- package/dist/server/app-browser-history-controller.d.ts +4 -5
- package/dist/server/app-browser-hydration.d.ts +16 -6
- package/dist/server/app-browser-hydration.js +14 -1
- package/dist/server/app-browser-interception-context.d.ts +3 -4
- package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
- package/dist/server/app-browser-navigation-abort.d.ts +3 -4
- package/dist/server/app-browser-navigation-controller.d.ts +8 -8
- package/dist/server/app-browser-navigation-controller.js +8 -4
- package/dist/server/app-browser-navigation-response.d.ts +2 -3
- package/dist/server/app-browser-popstate.d.ts +4 -5
- package/dist/server/app-browser-prefetch-response.d.ts +5 -6
- package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
- package/dist/server/app-browser-server-action-client.d.ts +7 -6
- package/dist/server/app-browser-server-action-client.js +9 -5
- package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
- package/dist/server/app-browser-state.d.ts +17 -17
- package/dist/server/app-browser-state.js +6 -2
- package/dist/server/app-browser-stream.d.ts +4 -5
- package/dist/server/app-browser-stream.js +8 -6
- package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
- package/dist/server/app-browser-visible-commit.d.ts +6 -7
- package/dist/server/app-client-reference-preloader.d.ts +2 -3
- package/dist/server/app-elements-wire-key.d.ts +25 -0
- package/dist/server/app-elements-wire-key.js +69 -0
- package/dist/server/app-elements-wire.d.ts +34 -53
- package/dist/server/app-elements-wire.js +4 -75
- package/dist/server/app-elements.d.ts +5 -5
- package/dist/server/app-elements.js +1 -1
- package/dist/server/app-fallback-renderer.d.ts +4 -4
- package/dist/server/app-fallback-renderer.js +6 -6
- package/dist/server/app-fetch-tracing.d.ts +15 -0
- package/dist/server/app-fetch-tracing.js +38 -0
- package/dist/server/app-history-state.d.ts +26 -27
- package/dist/server/app-history-state.js +19 -11
- package/dist/server/app-hook-warning-suppression.d.ts +2 -3
- package/dist/server/app-hydration-cache-publication.d.ts +3 -4
- package/dist/server/app-inline-css-client.d.ts +3 -4
- package/dist/server/app-interception-context-header.d.ts +2 -3
- package/dist/server/app-layout-param-observation.d.ts +7 -8
- package/dist/server/app-metadata-tracing.d.ts +12 -0
- package/dist/server/app-metadata-tracing.js +17 -0
- package/dist/server/app-middleware.d.ts +7 -7
- package/dist/server/app-middleware.js +2 -3
- package/dist/server/app-mounted-slots-header.d.ts +2 -3
- package/dist/server/app-mounted-slots-header.js +2 -2
- package/dist/server/app-optimistic-routing.d.ts +10 -11
- package/dist/server/app-optimistic-routing.js +3 -2
- package/dist/server/app-page-boundary-render.d.ts +6 -6
- package/dist/server/app-page-boundary-render.js +10 -4
- package/dist/server/app-page-boundary.d.ts +9 -10
- package/dist/server/app-page-boundary.js +1 -1
- package/dist/server/app-page-cache-finalizer.d.ts +18 -9
- package/dist/server/app-page-cache-finalizer.js +51 -16
- package/dist/server/app-page-cache-render.d.ts +8 -5
- package/dist/server/app-page-cache-render.js +22 -5
- package/dist/server/app-page-cache.d.ts +28 -9
- package/dist/server/app-page-cache.js +95 -24
- package/dist/server/app-page-dispatch.d.ts +34 -12
- package/dist/server/app-page-dispatch.js +181 -64
- package/dist/server/app-page-element-builder.d.ts +13 -11
- package/dist/server/app-page-element-builder.js +104 -61
- package/dist/server/app-page-execution.d.ts +14 -14
- package/dist/server/app-page-execution.js +11 -7
- package/dist/server/app-page-head.d.ts +19 -16
- package/dist/server/app-page-head.js +25 -25
- package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
- package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
- package/dist/server/app-page-method.d.ts +5 -11
- package/dist/server/app-page-method.js +2 -9
- package/dist/server/app-page-params.d.ts +5 -6
- package/dist/server/app-page-ppr-runtime.d.ts +2 -2
- package/dist/server/app-page-probe.d.ts +5 -6
- package/dist/server/app-page-probe.js +5 -4
- package/dist/server/app-page-render-identity.d.ts +4 -5
- package/dist/server/app-page-render-observation.d.ts +8 -9
- package/dist/server/app-page-render-observation.js +1 -1
- package/dist/server/app-page-render.d.ts +41 -6
- package/dist/server/app-page-render.js +171 -25
- package/dist/server/app-page-request.d.ts +10 -9
- package/dist/server/app-page-request.js +16 -12
- package/dist/server/app-page-response.d.ts +20 -9
- package/dist/server/app-page-response.js +30 -12
- package/dist/server/app-page-route-wiring.d.ts +15 -15
- package/dist/server/app-page-route-wiring.js +31 -24
- package/dist/server/app-page-search-params-observation.d.ts +26 -5
- package/dist/server/app-page-search-params-observation.js +42 -6
- package/dist/server/app-page-segment-plan.d.ts +2 -3
- package/dist/server/app-page-segment-state.d.ts +11 -12
- package/dist/server/app-page-stream.d.ts +27 -11
- package/dist/server/app-page-stream.js +34 -6
- package/dist/server/app-page-tracing.d.ts +33 -0
- package/dist/server/app-page-tracing.js +49 -0
- package/dist/server/app-pages-bridge.d.ts +6 -6
- package/dist/server/app-pages-bridge.js +17 -4
- package/dist/server/app-post-middleware-context.d.ts +2 -3
- package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
- package/dist/server/app-ppr-fallback-shell-render.js +3 -2
- package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
- package/dist/server/app-prerender-endpoints.d.ts +5 -5
- package/dist/server/app-prerender-endpoints.js +3 -1
- package/dist/server/app-prerender-static-params.d.ts +15 -7
- package/dist/server/app-prerender-static-params.js +24 -9
- package/dist/server/app-render-dependency.d.ts +14 -13
- package/dist/server/app-render-dependency.js +5 -1
- package/dist/server/app-request-context.d.ts +3 -4
- package/dist/server/app-request-stage-context.d.ts +5 -0
- package/dist/server/app-request-stage-context.js +11 -0
- package/dist/server/app-request-stage-dispatch.d.ts +25 -0
- package/dist/server/app-request-stage-dispatch.js +54 -0
- package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
- package/dist/server/app-request-stage-independent-entry.js +115 -0
- package/dist/server/app-response-header-provenance.d.ts +13 -7
- package/dist/server/app-response-header-provenance.js +34 -1
- package/dist/server/app-response-stage-entry.d.ts +9 -0
- package/dist/server/app-response-stage-entry.js +87 -0
- package/dist/server/app-route-handler-cache.d.ts +2 -3
- package/dist/server/app-route-handler-cache.js +46 -34
- package/dist/server/app-route-handler-dispatch.d.ts +3 -3
- package/dist/server/app-route-handler-dispatch.js +68 -54
- package/dist/server/app-route-handler-execution.d.ts +17 -13
- package/dist/server/app-route-handler-execution.js +69 -18
- package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
- package/dist/server/app-route-handler-middleware-context.js +15 -0
- package/dist/server/app-route-handler-policy.d.ts +11 -11
- package/dist/server/app-route-handler-response.d.ts +9 -10
- package/dist/server/app-route-handler-response.js +2 -0
- package/dist/server/app-route-handler-runtime.d.ts +9 -10
- package/dist/server/app-route-handler-runtime.js +20 -16
- package/dist/server/app-route-module-loader.d.ts +6 -7
- package/dist/server/app-route-request-built-ins.d.ts +3 -4
- package/dist/server/app-route-tree-prefetch.d.ts +6 -7
- package/dist/server/app-route-tree-prefetch.js +2 -1
- package/dist/server/app-router-entry.d.ts +2 -0
- package/dist/server/app-router-entry.js +28 -8
- package/dist/server/app-rsc-cache-busting.d.ts +34 -27
- package/dist/server/app-rsc-cache-busting.js +14 -2
- package/dist/server/app-rsc-combined-handler.d.ts +9 -0
- package/dist/server/app-rsc-combined-handler.js +11 -0
- package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
- package/dist/server/app-rsc-error-handler.d.ts +12 -6
- package/dist/server/app-rsc-error-handler.js +15 -6
- package/dist/server/app-rsc-errors.d.ts +12 -9
- package/dist/server/app-rsc-errors.js +15 -13
- package/dist/server/app-rsc-handler.d.ts +31 -6
- package/dist/server/app-rsc-handler.js +411 -61
- package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
- package/dist/server/app-rsc-render-mode.d.ts +8 -9
- package/dist/server/app-rsc-request-normalization.d.ts +3 -3
- package/dist/server/app-rsc-request-normalization.js +2 -1
- package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
- package/dist/server/app-rsc-response-finalizer.js +6 -6
- package/dist/server/app-rsc-response-stage.d.ts +6 -0
- package/dist/server/app-rsc-response-stage.js +251 -0
- package/dist/server/app-rsc-route-matching.d.ts +3 -4
- package/dist/server/app-rsc-route-matching.js +3 -2
- package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
- package/dist/server/app-rsc-vary.d.ts +16 -0
- package/dist/server/app-rsc-vary.js +31 -0
- package/dist/server/app-segment-config.d.ts +119 -7
- package/dist/server/app-segment-config.js +242 -2
- package/dist/server/app-server-action-execution.d.ts +16 -12
- package/dist/server/app-server-action-execution.js +86 -33
- package/dist/server/app-ssr-entry.d.ts +14 -4
- package/dist/server/app-ssr-entry.js +61 -14
- package/dist/server/app-ssr-error-meta.d.ts +3 -4
- package/dist/server/app-ssr-error-meta.js +2 -1
- package/dist/server/app-ssr-router-instance.d.ts +2 -3
- package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
- package/dist/server/app-ssr-search-params-gate.js +54 -0
- package/dist/server/app-ssr-stream.d.ts +13 -9
- package/dist/server/app-ssr-stream.js +33 -7
- package/dist/server/app-static-generation.d.ts +4 -5
- package/dist/server/app-visited-response-cache.d.ts +11 -12
- package/dist/server/app-visited-response-cache.js +2 -2
- package/dist/server/app-worker-stages.d.ts +112 -0
- package/dist/server/app-worker-stages.js +105 -0
- package/dist/server/artifact-compatibility.d.ts +11 -12
- package/dist/server/before-interactive-head.d.ts +2 -3
- package/dist/server/bfcache-identity.d.ts +7 -8
- package/dist/server/cache-control.d.ts +35 -13
- package/dist/server/cache-control.js +71 -5
- package/dist/server/cache-headers.d.ts +3 -4
- package/dist/server/cache-proof.d.ts +75 -70
- package/dist/server/cache-proof.js +9 -1
- package/dist/server/cacheability-limits.d.ts +4 -5
- package/dist/server/cacheability-limits.js +2 -2
- package/dist/server/cacheability-manifest.d.ts +42 -16
- package/dist/server/cacheability-manifest.js +60 -10
- package/dist/server/cacheability-request.d.ts +37 -8
- package/dist/server/cacheability-request.js +159 -57
- package/dist/server/client-reuse-manifest.d.ts +17 -18
- package/dist/server/client-reuse-manifest.js +2 -2
- package/dist/server/client-trace-metadata.d.ts +9 -6
- package/dist/server/client-trace-metadata.js +27 -15
- package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
- package/dist/server/cloudflare-workers-tracing.js +8 -0
- package/dist/server/config-headers.d.ts +19 -5
- package/dist/server/config-headers.js +25 -11
- package/dist/server/cookie-utils.d.ts +2 -3
- package/dist/server/csp.d.ts +5 -6
- package/dist/server/default-global-error-module.d.ts +2 -3
- package/dist/server/default-global-not-found-module.d.ts +2 -3
- package/dist/server/default-not-found-module.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.js +2 -1
- package/dist/server/dev-initial-server-error.d.ts +3 -4
- package/dist/server/dev-initial-server-error.js +2 -1
- package/dist/server/dev-lockfile.d.ts +7 -8
- package/dist/server/dev-lockfile.js +4 -1
- package/dist/server/dev-module-runner.d.ts +2 -3
- package/dist/server/dev-origin-check.d.ts +5 -6
- package/dist/server/dev-route-files.d.ts +2 -3
- package/dist/server/dev-server.d.ts +4 -5
- package/dist/server/dev-server.js +130 -61
- package/dist/server/dev-stack-sourcemap.d.ts +7 -7
- package/dist/server/dev-stack-sourcemap.js +1 -1
- package/dist/server/document-initial-head.d.ts +3 -4
- package/dist/server/edge-api-runtime.d.ts +4 -5
- package/dist/server/fetch-handler.d.ts +3 -2
- package/dist/server/fetch-handler.js +3 -18
- package/dist/server/file-based-metadata.d.ts +2 -3
- package/dist/server/framework-tracer.d.ts +46 -0
- package/dist/server/framework-tracer.js +125 -0
- package/dist/server/fully-buffered-response.d.ts +11 -0
- package/dist/server/fully-buffered-response.js +19 -0
- package/dist/server/headers.d.ts +54 -61
- package/dist/server/headers.js +18 -31
- package/dist/server/html.d.ts +6 -27
- package/dist/server/html.js +16 -1
- package/dist/server/http-conditional.d.ts +5 -6
- package/dist/server/http-date.d.ts +2 -3
- package/dist/server/http-error-responses.d.ts +9 -10
- package/dist/server/http-range.d.ts +4 -5
- package/dist/server/hybrid-route-priority.d.ts +4 -5
- package/dist/server/image-optimization.d.ts +20 -21
- package/dist/server/implicit-tags.d.ts +3 -4
- package/dist/server/instrumentation-runtime.d.ts +17 -21
- package/dist/server/instrumentation-runtime.js +26 -8
- package/dist/server/instrumentation.d.ts +26 -30
- package/dist/server/instrumentation.js +18 -23
- package/dist/server/isr-cache.d.ts +28 -27
- package/dist/server/isr-cache.js +18 -70
- package/dist/server/isr-decision.d.ts +4 -4
- package/dist/server/metadata-route-build-data.d.ts +4 -5
- package/dist/server/metadata-route-cache-policy.d.ts +2 -3
- package/dist/server/metadata-route-response.d.ts +7 -7
- package/dist/server/metadata-route-response.js +68 -2
- package/dist/server/metadata-routes.d.ts +18 -19
- package/dist/server/middleware-matcher-pattern.d.ts +6 -7
- package/dist/server/middleware-matcher.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.js +11 -9
- package/dist/server/middleware-response-headers.d.ts +3 -4
- package/dist/server/middleware-runtime.d.ts +7 -8
- package/dist/server/middleware-runtime.js +36 -7
- package/dist/server/middleware.d.ts +5 -5
- package/dist/server/multi-stage.d.ts +141 -0
- package/dist/server/multi-stage.js +8 -0
- package/dist/server/navigation-planner.d.ts +26 -26
- package/dist/server/navigation-trace.d.ts +11 -12
- package/dist/server/next-error-digest.d.ts +4 -5
- package/dist/server/normalize-path.d.ts +5 -6
- package/dist/server/open-redirect.d.ts +2 -3
- package/dist/server/opentelemetry-api.d.ts +59 -0
- package/dist/server/opentelemetry-api.js +53 -0
- package/dist/server/opentelemetry-tracing.d.ts +5 -0
- package/dist/server/opentelemetry-tracing.js +83 -0
- package/dist/server/operation-token.d.ts +11 -12
- package/dist/server/otel-tracer-extension.d.ts +7 -9
- package/dist/server/otel-tracer-extension.js +37 -36
- package/dist/server/pages-api-route.d.ts +5 -4
- package/dist/server/pages-api-route.js +20 -7
- package/dist/server/pages-asset-tags.d.ts +6 -6
- package/dist/server/pages-asset-tags.js +37 -2
- package/dist/server/pages-body-parser-config.d.ts +4 -5
- package/dist/server/pages-body-parser-config.js +4 -4
- package/dist/server/pages-client-assets.d.ts +11 -5
- package/dist/server/pages-data-route.d.ts +11 -12
- package/dist/server/pages-data-route.js +1 -1
- package/dist/server/pages-default-404.d.ts +3 -4
- package/dist/server/pages-dev-hydration.d.ts +9 -4
- package/dist/server/pages-dev-hydration.js +19 -7
- package/dist/server/pages-dev-module-url.d.ts +3 -4
- package/dist/server/pages-dev-stylesheets.d.ts +5 -6
- package/dist/server/pages-document-asset-props.d.ts +6 -7
- package/dist/server/pages-document-initial-props.d.ts +5 -5
- package/dist/server/pages-document-initial-props.js +4 -2
- package/dist/server/pages-execution-tracing.d.ts +40 -0
- package/dist/server/pages-execution-tracing.js +80 -0
- package/dist/server/pages-get-initial-props.d.ts +9 -10
- package/dist/server/pages-i18n.d.ts +8 -8
- package/dist/server/pages-media-type.d.ts +4 -5
- package/dist/server/pages-node-compat.d.ts +11 -10
- package/dist/server/pages-node-compat.js +12 -4
- package/dist/server/pages-page-data.d.ts +18 -19
- package/dist/server/pages-page-data.js +11 -10
- package/dist/server/pages-page-handler.d.ts +7 -6
- package/dist/server/pages-page-handler.js +77 -39
- package/dist/server/pages-page-method.d.ts +2 -3
- package/dist/server/pages-page-response.d.ts +14 -10
- package/dist/server/pages-page-response.js +49 -31
- package/dist/server/pages-preview.d.ts +10 -11
- package/dist/server/pages-readiness.d.ts +2 -3
- package/dist/server/pages-request-pipeline.d.ts +14 -12
- package/dist/server/pages-request-pipeline.js +60 -30
- package/dist/server/pages-request-stage-entry.d.ts +23 -0
- package/dist/server/pages-request-stage-entry.js +314 -0
- package/dist/server/pages-response-stage-entry.d.ts +11 -0
- package/dist/server/pages-response-stage-entry.js +106 -0
- package/dist/server/pages-response-stage.d.ts +31 -0
- package/dist/server/pages-response-stage.js +49 -0
- package/dist/server/pages-revalidate.d.ts +3 -4
- package/dist/server/pages-revalidate.js +9 -4
- package/dist/server/pages-route-data-kind.d.ts +18 -0
- package/dist/server/pages-route-data-kind.js +11 -0
- package/dist/server/pages-router-entry.d.ts +1 -25
- package/dist/server/pages-router-entry.js +35 -148
- package/dist/server/pages-serializable-props.d.ts +3 -4
- package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
- package/dist/server/pregenerated-concrete-paths.js +12 -6
- package/dist/server/prerender-cache-life-header.d.ts +3 -4
- package/dist/server/prerender-manifest.d.ts +11 -11
- package/dist/server/prerender-manifest.js +6 -3
- package/dist/server/prerender-route-params.d.ts +16 -9
- package/dist/server/prerender-route-params.js +18 -3
- package/dist/server/prerender-work-unit-setup.d.ts +2 -3
- package/dist/server/prerender-work-unit-setup.js +5 -5
- package/dist/server/prod-server.d.ts +12 -9
- package/dist/server/prod-server.js +124 -31
- package/dist/server/proxy-trust.d.ts +5 -6
- package/dist/server/request-log.d.ts +3 -4
- package/dist/server/request-pipeline.d.ts +16 -16
- package/dist/server/request-pipeline.js +7 -2
- package/dist/server/request-stage.d.ts +5 -0
- package/dist/server/request-stage.js +7 -0
- package/dist/server/request-tracing.d.ts +22 -0
- package/dist/server/request-tracing.js +180 -0
- package/dist/server/response-stage-cacheability.d.ts +37 -0
- package/dist/server/response-stage-cacheability.js +55 -0
- package/dist/server/response-stage-policy.d.ts +23 -0
- package/dist/server/response-stage-policy.js +89 -0
- package/dist/server/response-stage.d.ts +5 -0
- package/dist/server/response-stage.js +7 -0
- package/dist/server/response-start-tracing.d.ts +14 -0
- package/dist/server/response-start-tracing.js +80 -0
- package/dist/server/revalidation-host.d.ts +2 -3
- package/dist/server/revalidation-host.js +1 -1
- package/dist/server/revalidation-request.d.ts +8 -0
- package/dist/server/revalidation-request.js +37 -0
- package/dist/server/rsc-completion-metadata.d.ts +6 -7
- package/dist/server/rsc-stream-hints.d.ts +18 -7
- package/dist/server/rsc-stream-hints.js +70 -35
- package/dist/server/seed-cache.d.ts +2 -3
- package/dist/server/seed-cache.js +8 -7
- package/dist/server/server-action-not-found.d.ts +5 -6
- package/dist/server/server-globals.d.ts +2 -3
- package/dist/server/skip-cache-proof.d.ts +4 -4
- package/dist/server/socket-error-backstop.d.ts +5 -6
- package/dist/server/socket-error-backstop.js +1 -1
- package/dist/server/static-file-cache.d.ts +5 -6
- package/dist/server/static-file-cache.js +9 -7
- package/dist/server/static-file-signal.d.ts +9 -6
- package/dist/server/static-file-signal.js +51 -2
- package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
- package/dist/server/streaming-metadata.d.ts +2 -3
- package/dist/server/tracer.d.ts +5 -0
- package/dist/server/tracer.js +13 -0
- package/dist/server/worker-prerender-discovery.d.ts +5 -6
- package/dist/server/worker-revalidation-context.d.ts +2 -3
- package/dist/server/worker-revalidation-context.js +5 -5
- package/dist/server/worker-stages.d.ts +43 -0
- package/dist/server/worker-stages.js +25 -0
- package/dist/server/worker-utils.d.ts +5 -6
- package/dist/server/worker-utils.js +2 -1
- package/dist/server/workers-tracing.d.ts +17 -0
- package/dist/server/workers-tracing.js +27 -0
- package/dist/shims/amp.d.ts +3 -4
- package/dist/shims/app-router-scroll-state.d.ts +9 -10
- package/dist/shims/app-router-scroll.d.ts +4 -5
- package/dist/shims/app-router-scroll.js +2 -1
- package/dist/shims/app.d.ts +5 -6
- package/dist/shims/before-interactive-context.d.ts +5 -6
- package/dist/shims/cache-callable-runtime.d.ts +44 -4
- package/dist/shims/cache-callable-runtime.js +168 -8
- package/dist/shims/cache-for-request.d.ts +2 -3
- package/dist/shims/cache-handler.d.ts +33 -20
- package/dist/shims/cache-handler.js +61 -2
- package/dist/shims/cache-request-state.d.ts +28 -29
- package/dist/shims/cache-runtime.d.ts +23 -21
- package/dist/shims/cache-runtime.js +107 -27
- package/dist/shims/cache.d.ts +15 -15
- package/dist/shims/cache.js +15 -13
- package/dist/shims/cacheability-classification.d.ts +49 -28
- package/dist/shims/cacheability-classification.js +27 -12
- package/dist/shims/cdn-cache-state.d.ts +13 -0
- package/dist/shims/cdn-cache-state.js +23 -0
- package/dist/shims/cdn-cache.d.ts +50 -21
- package/dist/shims/cdn-cache.js +15 -38
- package/dist/shims/client-hook-error.d.ts +3 -4
- package/dist/shims/client-locale.d.ts +2 -3
- package/dist/shims/client-page-root.d.ts +24 -0
- package/dist/shims/client-page-root.js +121 -0
- package/dist/shims/compat-router.d.ts +2 -3
- package/dist/shims/config.d.ts +3 -4
- package/dist/shims/constants.d.ts +73 -74
- package/dist/shims/constants.js +1 -1
- package/dist/shims/default-not-found.d.ts +2 -3
- package/dist/shims/document.d.ts +9 -9
- package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
- package/dist/shims/dynamic-preload-chunks.js +17 -13
- package/dist/shims/dynamic.d.ts +3 -3
- package/dist/shims/error-boundary-navigation.d.ts +3 -4
- package/dist/shims/error-boundary.d.ts +17 -18
- package/dist/shims/error-boundary.js +17 -11
- package/dist/shims/error.d.ts +4 -4
- package/dist/shims/error.react-server.d.ts +3 -4
- package/dist/shims/fetch-cache.d.ts +22 -22
- package/dist/shims/fetch-cache.js +42 -17
- package/dist/shims/font-google-base.d.ts +9 -9
- package/dist/shims/font-google-base.js +2 -1
- package/dist/shims/font-local.d.ts +3 -3
- package/dist/shims/font-local.js +1 -1
- package/dist/shims/font-utils.d.ts +14 -15
- package/dist/shims/form.d.ts +2 -2
- package/dist/shims/form.js +10 -7
- package/dist/shims/hash-scroll.d.ts +5 -6
- package/dist/shims/head-state.d.ts +4 -5
- package/dist/shims/head.d.ts +16 -16
- package/dist/shims/head.js +5 -4
- package/dist/shims/headers.d.ts +67 -33
- package/dist/shims/headers.js +93 -6
- package/dist/shims/i18n-context.d.ts +5 -6
- package/dist/shims/i18n-state.d.ts +4 -5
- package/dist/shims/image-config.d.ts +5 -6
- package/dist/shims/image-config.js +2 -0
- package/dist/shims/image.d.ts +5 -5
- package/dist/shims/image.js +12 -8
- package/dist/shims/internal/als-registry.d.ts +4 -5
- package/dist/shims/internal/api-utils.d.ts +3 -4
- package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
- package/dist/shims/internal/app-page-props-cache-key.js +53 -1
- package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
- package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
- package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
- package/dist/shims/internal/app-route-detection.d.ts +2 -2
- package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
- package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
- package/dist/shims/internal/app-router-context.d.ts +9 -10
- package/dist/shims/internal/cookie-serialize.d.ts +4 -5
- package/dist/shims/internal/format-url-object.d.ts +7 -0
- package/dist/shims/internal/format-url-object.js +53 -0
- package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
- package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
- package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
- package/dist/shims/internal/interpolate-as.d.ts +5 -6
- package/dist/shims/internal/interpolate-as.js +4 -2
- package/dist/shims/internal/link-status-registry.d.ts +5 -6
- package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
- package/dist/shims/internal/navigation-untracked.d.ts +2 -3
- package/dist/shims/internal/normalize-router-href.d.ts +15 -0
- package/dist/shims/internal/normalize-router-href.js +41 -0
- package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
- package/dist/shims/internal/pages-data-target.d.ts +8 -6
- package/dist/shims/internal/pages-data-target.js +32 -36
- package/dist/shims/internal/pages-data-url.d.ts +4 -5
- package/dist/shims/internal/pages-data-url.js +2 -1
- package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
- package/dist/shims/internal/pages-router-components.d.ts +3 -4
- package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
- package/dist/shims/internal/route-pattern-for-warning.js +3 -3
- package/dist/shims/internal/router-context.d.ts +2 -3
- package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
- package/dist/shims/internal/thenable-well-known-properties.js +33 -0
- package/dist/shims/internal/utils.d.ts +7 -8
- package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
- package/dist/shims/layout-segment-context.d.ts +3 -4
- package/dist/shims/link-prefetch.d.ts +9 -10
- package/dist/shims/link.d.ts +4 -4
- package/dist/shims/link.js +56 -116
- package/dist/shims/metadata.d.ts +15 -16
- package/dist/shims/metadata.js +40 -36
- package/dist/shims/navigation-context-accessors.d.ts +9 -0
- package/dist/shims/navigation-context-accessors.js +19 -0
- package/dist/shims/navigation-context-state.d.ts +27 -18
- package/dist/shims/navigation-errors.d.ts +18 -19
- package/dist/shims/navigation-state.d.ts +6 -7
- package/dist/shims/navigation.d.ts +80 -68
- package/dist/shims/navigation.js +24 -16
- package/dist/shims/navigation.react-server.d.ts +9 -9
- package/dist/shims/offline.d.ts +2 -3
- package/dist/shims/og.d.ts +2 -2
- package/dist/shims/pages-router-runtime.d.ts +4 -5
- package/dist/shims/ppr-fallback-shell.d.ts +13 -14
- package/dist/shims/readonly-url-search-params.d.ts +2 -3
- package/dist/shims/request-context.d.ts +5 -6
- package/dist/shims/root-params.d.ts +14 -15
- package/dist/shims/router-state.d.ts +5 -6
- package/dist/shims/router-state.js +1 -1
- package/dist/shims/router.d.ts +22 -21
- package/dist/shims/router.js +339 -164
- package/dist/shims/script-nonce-context.d.ts +8 -6
- package/dist/shims/script-nonce-context.js +15 -6
- package/dist/shims/script.d.ts +4 -4
- package/dist/shims/script.js +9 -7
- package/dist/shims/search-params-gate.d.ts +35 -0
- package/dist/shims/search-params-gate.js +32 -0
- package/dist/shims/server.d.ts +19 -51
- package/dist/shims/server.js +14 -28
- package/dist/shims/slot.d.ts +33 -15
- package/dist/shims/slot.js +41 -9
- package/dist/shims/streamed-icons.d.ts +3 -4
- package/dist/shims/thenable-params.d.ts +5 -7
- package/dist/shims/thenable-params.js +3 -24
- package/dist/shims/unified-request-context.d.ts +34 -31
- package/dist/shims/unified-request-context.js +34 -24
- package/dist/shims/unrecognized-action-error.d.ts +3 -4
- package/dist/shims/url-safety.d.ts +5 -6
- package/dist/shims/url-utils.d.ts +12 -13
- package/dist/shims/use-merged-ref.d.ts +2 -3
- package/dist/shims/user-agent.d.ts +31 -0
- package/dist/shims/user-agent.js +16 -0
- package/dist/shims/web-vitals.d.ts +2 -2
- package/dist/typegen.d.ts +3 -4
- package/dist/utils/asset-prefix.d.ts +7 -8
- package/dist/utils/base-path.d.ts +5 -6
- package/dist/utils/built-asset-url.d.ts +2 -3
- package/dist/utils/built-asset-url.js +1 -1
- package/dist/utils/cache-control-metadata.d.ts +4 -5
- package/dist/utils/client-build-manifest.d.ts +6 -7
- package/dist/utils/client-build-manifest.js +2 -1
- package/dist/utils/client-entry-manifest.d.ts +6 -7
- package/dist/utils/client-runtime-metadata.d.ts +8 -3
- package/dist/utils/client-runtime-metadata.js +18 -1
- package/dist/utils/commonjs-loader.d.ts +4 -5
- package/dist/utils/compare.d.ts +2 -3
- package/dist/utils/deployment-id.d.ts +6 -7
- package/dist/utils/dev-error-recovery-event.d.ts +2 -3
- package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
- package/dist/utils/domain-locale.d.ts +7 -8
- package/dist/utils/encode-cache-tag.d.ts +3 -4
- package/dist/utils/error-cause.d.ts +2 -3
- package/dist/utils/external-url.d.ts +2 -3
- package/dist/utils/has-trailing-comma.d.ts +3 -4
- package/dist/utils/hash.d.ts +3 -4
- package/dist/utils/html-limited-bots.d.ts +3 -4
- package/dist/utils/lazy-chunks.d.ts +8 -9
- package/dist/utils/lazy-chunks.js +4 -4
- package/dist/utils/manifest-paths.d.ts +5 -6
- package/dist/utils/mdx-scan.d.ts +11 -4
- package/dist/utils/mdx-scan.js +27 -1
- package/dist/utils/middleware-request-headers.d.ts +7 -6
- package/dist/utils/middleware-request-headers.js +6 -1
- package/dist/utils/navigation-signal.d.ts +3 -3
- package/dist/utils/navigation-signal.js +16 -1
- package/dist/utils/number.d.ts +2 -3
- package/dist/utils/package-name.d.ts +3 -4
- package/dist/utils/parse-cookie.d.ts +4 -5
- package/dist/utils/path.d.ts +8 -9
- package/dist/utils/plugin-options.d.ts +2 -3
- package/dist/utils/precompressed-variant.d.ts +3 -4
- package/dist/utils/prerender-output-paths.d.ts +4 -5
- package/dist/utils/project.d.ts +19 -30
- package/dist/utils/project.js +20 -29
- package/dist/utils/promise.d.ts +2 -3
- package/dist/utils/protocol-headers.d.ts +14 -15
- package/dist/utils/public-file-path.d.ts +2 -3
- package/dist/utils/public-routes.d.ts +2 -3
- package/dist/utils/query.d.ts +14 -9
- package/dist/utils/query.js +22 -1
- package/dist/utils/react-compiler-support.d.ts +6 -7
- package/dist/utils/react-version.d.ts +4 -3
- package/dist/utils/react-version.js +19 -1
- package/dist/utils/record.d.ts +2 -3
- package/dist/utils/redirect-digest.d.ts +3 -4
- package/dist/utils/regex-safety.d.ts +4 -5
- package/dist/utils/regex.d.ts +2 -3
- package/dist/utils/safe-json-file.d.ts +2 -3
- package/dist/utils/sorted-array.d.ts +2 -3
- package/dist/utils/text-stream.d.ts +3 -4
- package/dist/utils/vinext-root.d.ts +2 -3
- package/dist/utils/virtual-module.d.ts +3 -4
- package/dist/utils/vite-cli-invocation.d.ts +21 -0
- package/dist/utils/vite-cli-invocation.js +144 -0
- package/dist/utils/vite-version.d.ts +5 -6
- package/next-package.json +4 -0
- package/package.json +47 -6
|
@@ -1,29 +1,35 @@
|
|
|
1
1
|
import { closeAfterResponse, createRequestContext, runWithRequestContext } from "../shims/unified-request-context.js";
|
|
2
|
-
import { getRequestExecutionContext } from "../shims/request-context.js";
|
|
3
2
|
import "../utils/protocol-headers.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { getRequestExecutionContext } from "../shims/request-context.js";
|
|
4
|
+
import { VINEXT_INTERCEPTION_ID_HEADER, VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
|
|
5
|
+
import "./headers.js";
|
|
6
|
+
import { beginRouteCacheability, isRouteCacheabilityIdentityProbe, isRouteCacheabilityProbe, markRouteCacheabilityPatternDynamic, readRouteCacheabilityState } from "../shims/cacheability-classification.js";
|
|
6
7
|
import { APP_RSC_RENDER_MODE_PREFETCH_DYNAMIC_SHELL } from "./app-rsc-render-mode.js";
|
|
8
|
+
import { AppElementsWire } from "./app-elements-wire.js";
|
|
7
9
|
import "./app-elements.js";
|
|
8
10
|
import { consumeDynamicUsage, consumeInvalidDynamicUsageError, getAndClearPendingCookies, getDraftModeCookieHeader, getHeadersContext, isDraftModeRequest, peekDynamicUsage, peekRenderRequestApiUsage, runWithIsolatedDynamicUsage, setHeadersContext } from "../shims/headers.js";
|
|
9
11
|
import { _captureRequestScopedCacheLifeAccessors } from "../shims/cache-request-state.js";
|
|
10
12
|
import { ensureFetchPatch, getCollectedFetchTags, peekDynamicFetchObservations, runWithFetchDedupe, setCurrentFetchCacheMode, setCurrentFetchRevalidate, setCurrentFetchSoftTags, setCurrentForceDynamicFetchDefault, setRefreshStaleFetchesInForeground } from "../shims/fetch-cache.js";
|
|
13
|
+
import { cacheabilityManifestPageState } from "./cacheability-manifest.js";
|
|
11
14
|
import { VINEXT_RSC_CONTENT_TYPE, applyRscCompatibilityIdHeader, applyRscDeploymentIdHeader } from "./app-rsc-cache-busting.js";
|
|
12
15
|
import { mergeMiddlewareResponseHeaders } from "./middleware-response-headers.js";
|
|
13
|
-
import "./app-page-response.js";
|
|
16
|
+
import { resolveUncacheableCacheControl } from "./app-page-response.js";
|
|
14
17
|
import { buildRscRedirectFlightStream } from "./app-rsc-redirect-flight.js";
|
|
15
18
|
import { buildAppPageSpecialErrorResponse, probeAppPageThrownError, resolveAppPageSpecialError } from "./app-page-execution.js";
|
|
19
|
+
import { resolveAppPageTraceOperation } from "./app-page-tracing.js";
|
|
16
20
|
import { createAppPageTreePath } from "./app-page-route-wiring.js";
|
|
17
|
-
import {
|
|
21
|
+
import { traceResponseStart } from "./response-start-tracing.js";
|
|
18
22
|
import { buildAppPageTags } from "./implicit-tags.js";
|
|
19
23
|
import { consumeAppPageRenderObservationState, discardAppPageRenderState } from "./app-page-render-observation.js";
|
|
24
|
+
import { isAppPageStaticEligible } from "./app-segment-config.js";
|
|
20
25
|
import { resolveAppPageParentHttpAccessBoundary, resolveAppPageParentHttpAccessBoundaryModule } from "./app-page-boundary.js";
|
|
21
26
|
import { shouldServeStreamingMetadata } from "./streaming-metadata.js";
|
|
22
27
|
import { resolveAppPageNavigationParams } from "./app-page-element-builder.js";
|
|
28
|
+
import { createAppPageRscErrorTracker } from "./app-page-stream.js";
|
|
23
29
|
import { createAppLayoutParamAccessTracker, isAppLayoutObservationUnsafeForStaticReuse } from "./app-layout-param-observation.js";
|
|
24
30
|
import { resolveAppPageMethodResponse } from "./app-page-method.js";
|
|
25
31
|
import { buildAppPageElement, resolveAppPageIntercept, resolveAppPageInterceptionRerenderTarget, validateAppPageDynamicParams } from "./app-page-request.js";
|
|
26
|
-
import { renderAppPageLifecycle } from "./app-page-render.js";
|
|
32
|
+
import { applyIneligibleRouteCachePolicy, renderAppPageLifecycle } from "./app-page-render.js";
|
|
27
33
|
//#region src/server/app-page-dispatch.ts
|
|
28
34
|
function getActiveLoadingTreePositions(route) {
|
|
29
35
|
const positions = [];
|
|
@@ -128,14 +134,15 @@ function hasSearchParams(searchParams) {
|
|
|
128
134
|
}
|
|
129
135
|
async function runAppPageRevalidationContext(options, renderFn) {
|
|
130
136
|
const { createStaticGenerationHeadersContext } = await import("./app-static-generation.js");
|
|
137
|
+
const headersContext = createStaticGenerationHeadersContext({
|
|
138
|
+
draftModeEnabled: false,
|
|
139
|
+
draftModeSecret: options.draftModeSecret,
|
|
140
|
+
dynamicConfig: options.dynamicConfig,
|
|
141
|
+
routeKind: "page",
|
|
142
|
+
routePattern: options.routePattern
|
|
143
|
+
});
|
|
131
144
|
const requestContext = createRequestContext({
|
|
132
|
-
headersContext
|
|
133
|
-
draftModeEnabled: false,
|
|
134
|
-
draftModeSecret: options.draftModeSecret,
|
|
135
|
-
dynamicConfig: options.dynamicConfig,
|
|
136
|
-
routeKind: "page",
|
|
137
|
-
routePattern: options.routePattern
|
|
138
|
-
}),
|
|
145
|
+
headersContext,
|
|
139
146
|
currentFetchCacheMode: options.currentFetchCacheMode ?? null,
|
|
140
147
|
currentFetchRevalidate: options.currentFetchRevalidate ?? null,
|
|
141
148
|
currentForceDynamicFetchDefault: options.dynamicConfig === "force-dynamic",
|
|
@@ -182,10 +189,26 @@ function toInterceptOptions(interceptionContext, intercept) {
|
|
|
182
189
|
interceptTargetRouteGraphId: intercept.targetRouteGraphId ?? null
|
|
183
190
|
};
|
|
184
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Workers Cache never admits a path its deploy manifest gives no state: a
|
|
194
|
+
* listed path that used a dynamic API, or an unlisted path of a route without
|
|
195
|
+
* on-demand ISR. Next.js serves those per request, so they render normally,
|
|
196
|
+
* with real values. Without a manifest, admission uses the `runtime` policy
|
|
197
|
+
* and every path keeps candidate mode, as on core.
|
|
198
|
+
*/
|
|
199
|
+
function hasNoManifestAdmissionState(routePattern) {
|
|
200
|
+
const admission = readRouteCacheabilityState()?.admission;
|
|
201
|
+
return admission?.policy === "manifest" && admission.representation !== void 0 && admission.routePathname !== void 0 && cacheabilityManifestPageState(admission.manifest, {
|
|
202
|
+
kind: "app-page",
|
|
203
|
+
pattern: routePattern
|
|
204
|
+
}, admission.representation, admission.routePathname) === null;
|
|
205
|
+
}
|
|
185
206
|
async function dispatchAppPage(options) {
|
|
186
207
|
const dispatch = () => runWithFetchDedupe(() => dispatchAppPageInner(options));
|
|
187
|
-
|
|
188
|
-
|
|
208
|
+
let response;
|
|
209
|
+
if (!options.pprFallbackShell || !options.pprRuntime) response = await dispatch();
|
|
210
|
+
else response = await options.pprRuntime.run(options.pprFallbackShell, dispatch);
|
|
211
|
+
return options.isRscRequest ? response : traceResponseStart(response);
|
|
189
212
|
}
|
|
190
213
|
async function dispatchAppPageInner(options) {
|
|
191
214
|
const route = options.route;
|
|
@@ -195,13 +218,33 @@ async function dispatchAppPageInner(options) {
|
|
|
195
218
|
return new Response(null, { status: 204 });
|
|
196
219
|
}
|
|
197
220
|
const dynamicConfig = options.dynamicConfig;
|
|
198
|
-
const currentRevalidateSeconds = options.revalidateSeconds ?? (options.hasGenerateStaticParams ? Infinity : null);
|
|
199
221
|
const interceptionId = options.isRscRequest ? options.request.headers.get(VINEXT_INTERCEPTION_ID_HEADER) : null;
|
|
200
222
|
const isForceStatic = dynamicConfig === "force-static";
|
|
201
223
|
const isDynamicError = dynamicConfig === "error";
|
|
202
224
|
const isForceDynamic = dynamicConfig === "force-dynamic";
|
|
203
|
-
|
|
225
|
+
const isNextStaticEligible = isAppPageStaticEligible({
|
|
226
|
+
dynamicConfig,
|
|
227
|
+
hasGenerateStaticParams: options.hasGenerateStaticParams,
|
|
228
|
+
isDynamicRoute: route.isDynamic,
|
|
229
|
+
isStaticGenerationEdgeRuntime: options.isStaticGenerationEdgeRuntime === true,
|
|
230
|
+
revalidateSeconds: options.revalidateSeconds
|
|
231
|
+
});
|
|
232
|
+
const isStaticEligible = options.pprRuntime !== void 0 || isNextStaticEligible;
|
|
233
|
+
const hasStaticRevalidateDefault = options.isProduction && options.pprRuntime === void 0 && isNextStaticEligible;
|
|
234
|
+
const currentRevalidateSeconds = options.revalidateSeconds ?? (hasStaticRevalidateDefault || options.hasAnyGenerateStaticParams ? Infinity : null);
|
|
235
|
+
if (isRouteCacheabilityProbe()) {
|
|
236
|
+
const isRouteStaticEligible = options.pprRuntime !== void 0 || isAppPageStaticEligible({
|
|
237
|
+
dynamicConfig: options.dynamicConfig,
|
|
238
|
+
hasGenerateStaticParams: options.hasGenerateStaticParams,
|
|
239
|
+
isDynamicRoute: route.isDynamic,
|
|
240
|
+
isStaticGenerationEdgeRuntime: options.isStaticGenerationEdgeRuntime === true,
|
|
241
|
+
revalidateSeconds: options.revalidateSeconds ?? null
|
|
242
|
+
});
|
|
243
|
+
const patternDynamicReason = isForceDynamic ? "dynamic = \"force-dynamic\"" : currentRevalidateSeconds === 0 ? "revalidate = 0" : !isRouteStaticEligible ? "route is not statically generated" : null;
|
|
244
|
+
if (patternDynamicReason) markRouteCacheabilityPatternDynamic(patternDynamicReason);
|
|
245
|
+
}
|
|
204
246
|
const isPrerender = process.env.VINEXT_PRERENDER === "1";
|
|
247
|
+
let traceOperation = isPrerender ? "prerender" : "render";
|
|
205
248
|
const serveStreamingMetadata = shouldServeStreamingMetadata(options.request.headers.get("user-agent") ?? "", options.htmlLimitedBots);
|
|
206
249
|
const placeGeneratedMetadataInBody = (!isPrerender || options.pprFallbackShell !== void 0) && serveStreamingMetadata;
|
|
207
250
|
const isPrefetchDynamicShell = options.renderMode === APP_RSC_RENDER_MODE_PREFETCH_DYNAMIC_SHELL;
|
|
@@ -219,15 +262,25 @@ async function dispatchAppPageInner(options) {
|
|
|
219
262
|
setCurrentForceDynamicFetchDefault(isForceDynamic);
|
|
220
263
|
if (options.hasPageModule && !options.hasPageDefaultExport) {
|
|
221
264
|
options.clearRequestContext();
|
|
222
|
-
return new Response("Page has no default export", { status: 500 })
|
|
265
|
+
return applyIneligibleRouteCachePolicy(new Response("Page has no default export", { status: 500 }), {
|
|
266
|
+
isDraftMode,
|
|
267
|
+
isDynamicError,
|
|
268
|
+
isForceDynamic,
|
|
269
|
+
isForceStatic,
|
|
270
|
+
isProduction: options.isProduction,
|
|
271
|
+
isProgressiveActionRender: options.isProgressiveActionRender === true,
|
|
272
|
+
isRscRequest: options.isRscRequest,
|
|
273
|
+
isStaticEligible,
|
|
274
|
+
middlewareContext: options.middlewareContext,
|
|
275
|
+
peekDynamicUsage,
|
|
276
|
+
revalidateSeconds: currentRevalidateSeconds,
|
|
277
|
+
scriptNonce: options.scriptNonce
|
|
278
|
+
});
|
|
223
279
|
}
|
|
224
280
|
const methodResponse = resolveAppPageMethodResponse({
|
|
225
|
-
|
|
226
|
-
hasGenerateStaticParams: options.hasGenerateStaticParams,
|
|
227
|
-
isDynamicRoute: route.isDynamic,
|
|
281
|
+
isStaticEligible: isNextStaticEligible,
|
|
228
282
|
middlewareHeaders: options.middlewareContext.headers,
|
|
229
|
-
request: options.request
|
|
230
|
-
revalidateSeconds: currentRevalidateSeconds
|
|
283
|
+
request: options.request
|
|
231
284
|
});
|
|
232
285
|
if (methodResponse) {
|
|
233
286
|
options.clearRequestContext();
|
|
@@ -249,7 +302,7 @@ async function dispatchAppPageInner(options) {
|
|
|
249
302
|
params: staticNavigationParams
|
|
250
303
|
});
|
|
251
304
|
}
|
|
252
|
-
|
|
305
|
+
const isCacheEligibleRender = options.bypassInterceptionContextCache !== true && shouldReadAppPageCache({
|
|
253
306
|
isDraftMode,
|
|
254
307
|
isForceDynamic,
|
|
255
308
|
isProgressiveActionRender: options.isProgressiveActionRender === true,
|
|
@@ -257,13 +310,48 @@ async function dispatchAppPageInner(options) {
|
|
|
257
310
|
isRscRequest: options.isRscRequest,
|
|
258
311
|
revalidateSeconds: currentRevalidateSeconds,
|
|
259
312
|
scriptNonce: options.scriptNonce
|
|
260
|
-
})
|
|
313
|
+
});
|
|
314
|
+
const isNeverStoredPath = options.pprRuntime === void 0 && hasNoManifestAdmissionState(route.pattern);
|
|
315
|
+
const shouldReadCache = !isRouteCacheabilityProbe() && isCacheEligibleRender && !isNeverStoredPath;
|
|
316
|
+
const isCacheCandidate = isCacheEligibleRender && isStaticEligible && options.pprRuntime === void 0 && !isNeverStoredPath;
|
|
317
|
+
if (shouldReadCache && isStaticEligible) {
|
|
318
|
+
traceOperation = resolveAppPageTraceOperation({
|
|
319
|
+
hasRequestSearchParams,
|
|
320
|
+
isDynamicError,
|
|
321
|
+
isForceStatic,
|
|
322
|
+
isKnownPrerenderedRoute: options.renderedConcreteUrlPaths !== void 0,
|
|
323
|
+
isPrerender
|
|
324
|
+
});
|
|
261
325
|
const { readAppPageCacheResponse } = await import("./app-page-cache.js");
|
|
326
|
+
const reportedSsrRevalidationErrors = /* @__PURE__ */ new Set();
|
|
327
|
+
let revalidationRscErrorTracker = null;
|
|
328
|
+
const resolveCacheRenderTarget = async () => {
|
|
329
|
+
const revalidationTarget = await resolveAppPageInterceptionRerenderTarget({
|
|
330
|
+
cleanPathname: options.cleanPathname,
|
|
331
|
+
currentParams: options.params,
|
|
332
|
+
currentRoute: route,
|
|
333
|
+
findIntercept: options.findIntercept,
|
|
334
|
+
getRouteParamNames(sourceRoute) {
|
|
335
|
+
return sourceRoute.params;
|
|
336
|
+
},
|
|
337
|
+
getSourceRoute(sourceRouteIndex) {
|
|
338
|
+
return options.getSourceRoute(sourceRouteIndex);
|
|
339
|
+
},
|
|
340
|
+
isRscRequest: options.isRscRequest,
|
|
341
|
+
toInterceptOpts(intercept) {
|
|
342
|
+
return toInterceptOptions(options.interceptionContext, intercept);
|
|
343
|
+
}
|
|
344
|
+
});
|
|
345
|
+
await options.ensureRouteLoaded?.(revalidationTarget.route);
|
|
346
|
+
revalidationTarget.navigationParams = resolveAppPageNavigationParams(revalidationTarget.route, revalidationTarget.navigationParams, options.cleanPathname, revalidationTarget.interceptOpts);
|
|
347
|
+
return revalidationTarget;
|
|
348
|
+
};
|
|
262
349
|
const cachedPageResponse = await readAppPageCacheResponse({
|
|
263
350
|
cleanPathname: options.cleanPathname,
|
|
264
351
|
clearRequestContext: options.clearRequestContext,
|
|
265
352
|
hasRequestSearchParams,
|
|
266
353
|
isEdgeRuntime: options.isEdgeRuntime,
|
|
354
|
+
isRoutePPREnabled: options.pprRuntime !== void 0,
|
|
267
355
|
isRscRequest: options.isRscRequest,
|
|
268
356
|
isrDebug: options.isrDebug,
|
|
269
357
|
isrGet: options.isrGet,
|
|
@@ -275,6 +363,10 @@ async function dispatchAppPageInner(options) {
|
|
|
275
363
|
middlewareHeaders: options.middlewareContext.headers,
|
|
276
364
|
middlewareStatus: options.middlewareContext.status,
|
|
277
365
|
mountedSlotsHeader: options.mountedSlotsHeader,
|
|
366
|
+
async resolveParams() {
|
|
367
|
+
return (await resolveCacheRenderTarget()).navigationParams;
|
|
368
|
+
},
|
|
369
|
+
renderedPathAndSearch: options.renderedPathAndSearch,
|
|
278
370
|
renderMode: options.renderMode,
|
|
279
371
|
expireSeconds: options.expireSeconds,
|
|
280
372
|
revalidateSeconds: resolveAppPageCacheReadRevalidateSeconds({
|
|
@@ -283,30 +375,15 @@ async function dispatchAppPageInner(options) {
|
|
|
283
375
|
revalidateSeconds: currentRevalidateSeconds
|
|
284
376
|
}),
|
|
285
377
|
renderFreshPageForCache: async () => {
|
|
286
|
-
const revalidationTarget = await
|
|
287
|
-
cleanPathname: options.cleanPathname,
|
|
288
|
-
currentParams: options.params,
|
|
289
|
-
currentRoute: route,
|
|
290
|
-
findIntercept: options.findIntercept,
|
|
291
|
-
getRouteParamNames(sourceRoute) {
|
|
292
|
-
return sourceRoute.params;
|
|
293
|
-
},
|
|
294
|
-
getSourceRoute(sourceRouteIndex) {
|
|
295
|
-
return options.getSourceRoute(sourceRouteIndex);
|
|
296
|
-
},
|
|
297
|
-
isRscRequest: options.isRscRequest,
|
|
298
|
-
toInterceptOpts(intercept) {
|
|
299
|
-
return toInterceptOptions(options.interceptionContext, intercept);
|
|
300
|
-
}
|
|
301
|
-
});
|
|
302
|
-
revalidationTarget.navigationParams = resolveAppPageNavigationParams(revalidationTarget.route, revalidationTarget.navigationParams, options.cleanPathname, revalidationTarget.interceptOpts);
|
|
303
|
-
await options.ensureRouteLoaded?.(revalidationTarget.route);
|
|
378
|
+
const revalidationTarget = await resolveCacheRenderTarget();
|
|
304
379
|
const revalidationDynamicConfig = options.resolveRouteDynamicConfig?.(revalidationTarget.route) ?? (revalidationTarget.route === route ? dynamicConfig : void 0);
|
|
380
|
+
const revalidationConfigRevalidateSeconds = options.resolveRouteRevalidateSeconds?.(revalidationTarget.route) ?? (revalidationTarget.route === route ? currentRevalidateSeconds : null);
|
|
381
|
+
const revalidationRouteRevalidateSeconds = revalidationTarget.route === route ? void 0 : revalidationConfigRevalidateSeconds ?? (revalidationDynamicConfig === "force-static" || revalidationDynamicConfig === "error" || options.isProduction && options.pprRuntime === void 0 && options.resolveRouteStaticEligible(revalidationTarget.route) ? Infinity : null);
|
|
305
382
|
return runAppPageRevalidationContext({
|
|
306
383
|
cleanPathname: options.cleanPathname,
|
|
307
384
|
displayPathname: options.displayPathname,
|
|
308
385
|
currentFetchCacheMode: options.resolveRouteFetchCacheMode?.(revalidationTarget.route) ?? (revalidationTarget.route === route ? options.fetchCache ?? null : null),
|
|
309
|
-
currentFetchRevalidate:
|
|
386
|
+
currentFetchRevalidate: revalidationConfigRevalidateSeconds,
|
|
310
387
|
draftModeSecret: options.draftModeSecret,
|
|
311
388
|
dynamicConfig: revalidationDynamicConfig,
|
|
312
389
|
params: revalidationTarget.navigationParams,
|
|
@@ -316,11 +393,17 @@ async function dispatchAppPageInner(options) {
|
|
|
316
393
|
}, async () => {
|
|
317
394
|
const { renderAppPageCacheArtifacts } = await import("./app-page-cache-render.js");
|
|
318
395
|
const revalidatedElement = await options.buildPageElement(revalidationTarget.route, revalidationTarget.params, revalidationTarget.interceptOpts, new URLSearchParams(), void 0, {
|
|
396
|
+
isForceStatic: revalidationDynamicConfig === "force-static",
|
|
319
397
|
observeMetadataSearchParamsAccess: revalidationDynamicConfig !== "force-static",
|
|
320
398
|
observePageSearchParamsAccess: revalidationDynamicConfig !== "force-static",
|
|
321
399
|
serveStreamingMetadata: false
|
|
322
400
|
});
|
|
323
|
-
const
|
|
401
|
+
const baseRevalidatedOnError = options.createRscOnErrorHandler(options.cleanPathname, revalidationTarget.route.pattern, { revalidateReason: "stale" });
|
|
402
|
+
const baseRevalidatedOnSsrError = options.createRscOnErrorHandler(options.cleanPathname, revalidationTarget.route.pattern, {
|
|
403
|
+
renderSource: "server-rendering",
|
|
404
|
+
revalidateReason: "stale"
|
|
405
|
+
});
|
|
406
|
+
revalidationRscErrorTracker = createAppPageRscErrorTracker(baseRevalidatedOnError);
|
|
324
407
|
const rendered = await renderAppPageCacheArtifacts({
|
|
325
408
|
basePath: options.basePath,
|
|
326
409
|
captureRscData: true,
|
|
@@ -334,7 +417,12 @@ async function dispatchAppPageInner(options) {
|
|
|
334
417
|
loadSsrHandler: options.loadSsrHandler,
|
|
335
418
|
mountedSlotsHeader: options.mountedSlotsHeader,
|
|
336
419
|
navigationParams: revalidationTarget.navigationParams,
|
|
337
|
-
|
|
420
|
+
isCapturedRscError: revalidationRscErrorTracker.isCapturedError,
|
|
421
|
+
onError: revalidationRscErrorTracker.onRenderError,
|
|
422
|
+
onSsrError(error) {
|
|
423
|
+
reportedSsrRevalidationErrors.add(error);
|
|
424
|
+
return baseRevalidatedOnSsrError(error, void 0, void 0);
|
|
425
|
+
},
|
|
338
426
|
reactMaxHeadersLength: options.reactMaxHeadersLength,
|
|
339
427
|
renderToReadableStream: options.renderToReadableStream,
|
|
340
428
|
rootParams: options.rootParams,
|
|
@@ -350,7 +438,9 @@ async function dispatchAppPageInner(options) {
|
|
|
350
438
|
rscData: rendered.rscData,
|
|
351
439
|
rscRenderObservation: rendered.rscRenderObservation,
|
|
352
440
|
tags: rendered.tags,
|
|
353
|
-
cacheControl: rendered.cacheControl
|
|
441
|
+
cacheControl: rendered.cacheControl,
|
|
442
|
+
revalidateSeconds: revalidationRouteRevalidateSeconds,
|
|
443
|
+
usedDynamicApi: rendered.usedDynamicApi
|
|
354
444
|
};
|
|
355
445
|
});
|
|
356
446
|
},
|
|
@@ -358,7 +448,8 @@ async function dispatchAppPageInner(options) {
|
|
|
358
448
|
options.scheduleBackgroundRegeneration(key, renderFn, {
|
|
359
449
|
routerKind: "App Router",
|
|
360
450
|
routePath: route.pattern,
|
|
361
|
-
routeType: "render"
|
|
451
|
+
routeType: "render",
|
|
452
|
+
shouldReport: (error) => !reportedSsrRevalidationErrors.has(error) && !revalidationRscErrorTracker?.isCapturedError(error)
|
|
362
453
|
});
|
|
363
454
|
}
|
|
364
455
|
});
|
|
@@ -373,15 +464,30 @@ async function dispatchAppPageInner(options) {
|
|
|
373
464
|
});
|
|
374
465
|
if (dynamicParamsResponse) {
|
|
375
466
|
const renderedNotFound = await options.renderHttpAccessFallbackPage(404, { matchedParams: options.params }, options.middlewareContext);
|
|
376
|
-
|
|
467
|
+
const cachePolicy = {
|
|
468
|
+
isDraftMode,
|
|
469
|
+
isDynamicError,
|
|
470
|
+
isForceDynamic,
|
|
471
|
+
isForceStatic,
|
|
472
|
+
isProduction: options.isProduction,
|
|
473
|
+
isProgressiveActionRender: options.isProgressiveActionRender === true,
|
|
474
|
+
isRscRequest: options.isRscRequest,
|
|
475
|
+
isStaticEligible,
|
|
476
|
+
middlewareContext: options.middlewareContext,
|
|
477
|
+
peekDynamicUsage,
|
|
478
|
+
revalidateSeconds: currentRevalidateSeconds,
|
|
479
|
+
scriptNonce: options.scriptNonce
|
|
480
|
+
};
|
|
481
|
+
if (renderedNotFound) return applyIneligibleRouteCachePolicy(renderedNotFound, cachePolicy);
|
|
377
482
|
options.clearRequestContext();
|
|
378
|
-
return dynamicParamsResponse;
|
|
483
|
+
return applyIneligibleRouteCachePolicy(dynamicParamsResponse, cachePolicy);
|
|
379
484
|
}
|
|
380
485
|
}
|
|
381
486
|
const fallbackShellResponse = options.pprRuntime ? await options.pprRuntime.tryServe(options, currentRevalidateSeconds, isDraftMode, isForceStatic, isForceDynamic) : null;
|
|
382
487
|
if (fallbackShellResponse) return fallbackShellResponse;
|
|
383
488
|
let interceptDynamicConfig;
|
|
384
489
|
let interceptDynamicConfigResolved = false;
|
|
490
|
+
let isInterceptSourceKnownDynamic = false;
|
|
385
491
|
const interceptResult = await resolveAppPageIntercept({
|
|
386
492
|
async buildPageElement(interceptRoute, interceptParams, interceptOpts, interceptSearchParams, interceptLayoutParamAccess) {
|
|
387
493
|
const sourceDynamicConfig = interceptDynamicConfigResolved ? interceptDynamicConfig : options.resolveRouteDynamicConfig?.(interceptRoute);
|
|
@@ -395,10 +501,13 @@ async function dispatchAppPageInner(options) {
|
|
|
395
501
|
routePattern: interceptRoute.pattern
|
|
396
502
|
}));
|
|
397
503
|
} else setHeadersContext(requestHeadersContext);
|
|
504
|
+
const sourceRevalidateSeconds = options.resolveRouteRevalidateSeconds?.(interceptRoute) ?? null;
|
|
505
|
+
isInterceptSourceKnownDynamic = sourceDynamicConfig === "force-dynamic" || sourceRevalidateSeconds === 0;
|
|
398
506
|
setCurrentFetchCacheMode(options.resolveRouteFetchCacheMode?.(interceptRoute) ?? null);
|
|
399
|
-
setCurrentFetchRevalidate(
|
|
507
|
+
setCurrentFetchRevalidate(sourceRevalidateSeconds);
|
|
400
508
|
setCurrentForceDynamicFetchDefault(sourceDynamicConfig === "force-dynamic");
|
|
401
509
|
return options.buildPageElement(interceptRoute, interceptParams, interceptOpts, interceptSearchParams, interceptLayoutParamAccess, {
|
|
510
|
+
isForceStatic: sourceDynamicConfig === "force-static",
|
|
402
511
|
observeMetadataSearchParamsAccess: sourceDynamicConfig !== "force-static",
|
|
403
512
|
observePageSearchParamsAccess: sourceDynamicConfig !== "force-static",
|
|
404
513
|
serveStreamingMetadata: placeGeneratedMetadataInBody
|
|
@@ -427,6 +536,7 @@ async function dispatchAppPageInner(options) {
|
|
|
427
536
|
"Content-Type": VINEXT_RSC_CONTENT_TYPE,
|
|
428
537
|
Vary: VINEXT_RSC_VARY_HEADER
|
|
429
538
|
});
|
|
539
|
+
if (!(options.pprRuntime !== void 0 || options.resolveRouteStaticEligible(sourceRoute)) || isDraftMode || isInterceptSourceKnownDynamic) interceptHeaders.set("Cache-Control", resolveUncacheableCacheControl(options.isProduction));
|
|
430
540
|
mergeMiddlewareResponseHeaders(interceptHeaders, options.middlewareContext.headers);
|
|
431
541
|
applyRscCompatibilityIdHeader(interceptHeaders);
|
|
432
542
|
applyRscDeploymentIdHeader(interceptHeaders);
|
|
@@ -452,6 +562,7 @@ async function dispatchAppPageInner(options) {
|
|
|
452
562
|
buildPageElement() {
|
|
453
563
|
if (options.actionFailed) throw options.actionError;
|
|
454
564
|
return options.buildPageElement(route, options.params, interceptResult.interceptOpts, pageSearchParams, layoutParamAccess, {
|
|
565
|
+
isForceStatic,
|
|
455
566
|
observeMetadataSearchParamsAccess: !isForceStatic,
|
|
456
567
|
observePageSearchParamsAccess: !isForceStatic,
|
|
457
568
|
serveStreamingMetadata: placeGeneratedMetadataInBody
|
|
@@ -459,12 +570,13 @@ async function dispatchAppPageInner(options) {
|
|
|
459
570
|
},
|
|
460
571
|
async probePageSpecialError() {
|
|
461
572
|
if (hasActiveLoadingBoundary) return null;
|
|
462
|
-
|
|
573
|
+
const pageError = await probeAppPageThrownError({
|
|
463
574
|
probePage: () => options.probePage(pageSearchParams),
|
|
464
575
|
runWithSuppressedHookWarning(probe) {
|
|
465
576
|
return options.runWithSuppressedHookWarning(probe);
|
|
466
577
|
}
|
|
467
|
-
})
|
|
578
|
+
});
|
|
579
|
+
return resolveAppPageSpecialError(pageError);
|
|
468
580
|
},
|
|
469
581
|
renderErrorBoundaryPage(buildError) {
|
|
470
582
|
return options.renderErrorBoundaryPage(buildError);
|
|
@@ -486,14 +598,7 @@ async function dispatchAppPageInner(options) {
|
|
|
486
598
|
});
|
|
487
599
|
discardAppPageRenderState();
|
|
488
600
|
}
|
|
489
|
-
const pageBuildResult = await buildCurrentPageElement();
|
|
490
|
-
if (pageBuildResult.response) return pageBuildResult.response;
|
|
491
601
|
const navigationParams = resolveAppPageNavigationParams(route, options.params, options.cleanPathname, interceptResult.interceptOpts);
|
|
492
|
-
options.setNavigationContext({
|
|
493
|
-
pathname: options.displayPathname ?? options.cleanPathname,
|
|
494
|
-
searchParams: pageSearchParams,
|
|
495
|
-
params: navigationParams
|
|
496
|
-
});
|
|
497
602
|
const layoutClassifications = getEffectiveLayoutClassifications(route, options.debugClassification);
|
|
498
603
|
const activeFallbackShellState = options.pprRuntime?.getState() ?? null;
|
|
499
604
|
const pprFallbackShellSignal = activeFallbackShellState?.abortController.signal;
|
|
@@ -511,10 +616,19 @@ async function dispatchAppPageInner(options) {
|
|
|
511
616
|
peekDynamicUsage,
|
|
512
617
|
consumeInvalidDynamicUsageError,
|
|
513
618
|
consumeRenderObservationState: consumeAppPageRenderObservationState,
|
|
514
|
-
createRscOnErrorHandler(pathname, routePath) {
|
|
515
|
-
return options.createRscOnErrorHandler(pathname, routePath);
|
|
619
|
+
createRscOnErrorHandler(pathname, routePath, overrides) {
|
|
620
|
+
return options.createRscOnErrorHandler(pathname, routePath, overrides);
|
|
621
|
+
},
|
|
622
|
+
async prepareElement() {
|
|
623
|
+
const pageBuildResult = await buildCurrentPageElement();
|
|
624
|
+
if (pageBuildResult.response) return { response: pageBuildResult.response };
|
|
625
|
+
options.setNavigationContext({
|
|
626
|
+
pathname: options.displayPathname ?? options.cleanPathname,
|
|
627
|
+
searchParams: pageSearchParams,
|
|
628
|
+
params: navigationParams
|
|
629
|
+
});
|
|
630
|
+
return { element: pageBuildResult.element };
|
|
516
631
|
},
|
|
517
|
-
element: pageBuildResult.element,
|
|
518
632
|
clientReuseManifest: options.clientReuseManifest,
|
|
519
633
|
getDraftModeCookieHeader,
|
|
520
634
|
getFontLinks: options.getFontLinks,
|
|
@@ -532,7 +646,7 @@ async function dispatchAppPageInner(options) {
|
|
|
532
646
|
},
|
|
533
647
|
handlerStart: options.handlerStart,
|
|
534
648
|
hasLoadingBoundary: hasActiveLoadingBoundary,
|
|
535
|
-
omitPendingDynamicCacheState: hasRequestSearchParams,
|
|
649
|
+
omitPendingDynamicCacheState: hasRequestSearchParams && !(isCacheCandidate && !options.isRscRequest),
|
|
536
650
|
formState: options.formState ?? null,
|
|
537
651
|
isProgressiveActionRender: options.isProgressiveActionRender === true,
|
|
538
652
|
isDynamicError,
|
|
@@ -540,10 +654,13 @@ async function dispatchAppPageInner(options) {
|
|
|
540
654
|
isForceDynamic,
|
|
541
655
|
isForceStatic,
|
|
542
656
|
isEdgeRuntime: options.isEdgeRuntime === true,
|
|
657
|
+
isStaticEligible,
|
|
658
|
+
isCacheCandidate,
|
|
543
659
|
isPrerender,
|
|
544
660
|
isSpeculativePrerender,
|
|
545
661
|
isProduction: options.isProduction,
|
|
546
662
|
isRscRequest: options.isRscRequest,
|
|
663
|
+
traceOperation,
|
|
547
664
|
isrDebug: options.isrDebug,
|
|
548
665
|
isrHtmlKey: options.isrHtmlKey,
|
|
549
666
|
isrRscKey: options.isrRscKey,
|
|
@@ -13,13 +13,13 @@ import { AppPageErrorModule, AppPageModule, AppPageRouteWiringRoute } from "./ap
|
|
|
13
13
|
* the page module reference (used to extract the default export for the page
|
|
14
14
|
* element) and the URL pattern (used as the route path in head resolution).
|
|
15
15
|
*/
|
|
16
|
-
type AppPageBuildRoute<TModule extends AppPageModule = AppPageModule, TErrorModule extends AppPageErrorModule = AppPageErrorModule> = AppPageRouteWiringRoute<TModule, TErrorModule> & {
|
|
16
|
+
export type AppPageBuildRoute<TModule extends AppPageModule = AppPageModule, TErrorModule extends AppPageErrorModule = AppPageErrorModule> = AppPageRouteWiringRoute<TModule, TErrorModule> & {
|
|
17
17
|
page?: TModule | null;
|
|
18
18
|
pattern: string;
|
|
19
19
|
/** Param names captured by the route's URL pattern, in order. */
|
|
20
20
|
params?: readonly string[] | null;
|
|
21
21
|
};
|
|
22
|
-
type AppPageInterceptOptions<TModule extends AppPageModule = AppPageModule> = {
|
|
22
|
+
export type AppPageInterceptOptions<TModule extends AppPageModule = AppPageModule> = {
|
|
23
23
|
interceptGraphId?: string | null;
|
|
24
24
|
interceptionId?: string | null;
|
|
25
25
|
interceptionContext?: string | null;
|
|
@@ -40,7 +40,7 @@ type AppPageInterceptOptions<TModule extends AppPageModule = AppPageModule> = {
|
|
|
40
40
|
interceptTargetPatternParts?: readonly string[] | null;
|
|
41
41
|
interceptTargetRouteGraphId?: string | null;
|
|
42
42
|
};
|
|
43
|
-
type AppPagePageRequest<TModule extends AppPageModule = AppPageModule> = {
|
|
43
|
+
export type AppPagePageRequest<TModule extends AppPageModule = AppPageModule> = {
|
|
44
44
|
/** Interception context from current-route navigation (null for direct visits). */
|
|
45
45
|
opts?: AppPageInterceptOptions<TModule> | null;
|
|
46
46
|
/** URL search params from the incoming request (null when unavailable). */
|
|
@@ -55,6 +55,8 @@ type AppPagePageRequest<TModule extends AppPageModule = AppPageModule> = {
|
|
|
55
55
|
renderMode?: AppRscRenderMode;
|
|
56
56
|
/** Observe page `searchParams` access for cache-safety classification. */
|
|
57
57
|
observePageSearchParamsAccess?: boolean;
|
|
58
|
+
/** The route is `dynamic = "force-static"`, so pages read an empty query. */
|
|
59
|
+
isForceStatic?: boolean;
|
|
58
60
|
/** Observe page metadata `searchParams` access for cache-safety classification. */
|
|
59
61
|
observeMetadataSearchParamsAccess?: boolean;
|
|
60
62
|
/** Whether generated metadata may stream into the response body. */
|
|
@@ -62,7 +64,7 @@ type AppPagePageRequest<TModule extends AppPageModule = AppPageModule> = {
|
|
|
62
64
|
/** Whether streamed render errors must be sanitized for client transport. */
|
|
63
65
|
isProduction?: boolean;
|
|
64
66
|
};
|
|
65
|
-
type BuildPageElementsOptions<TModule extends AppPageModule = AppPageModule, TErrorModule extends AppPageErrorModule = AppPageErrorModule> = {
|
|
67
|
+
export type BuildPageElementsOptions<TModule extends AppPageModule = AppPageModule, TErrorModule extends AppPageErrorModule = AppPageErrorModule> = {
|
|
66
68
|
applyFileBasedMetadata?: ApplyAppPageFileBasedMetadata;
|
|
67
69
|
route: AppPageBuildRoute<TModule, TErrorModule>;
|
|
68
70
|
params: AppPageParams;
|
|
@@ -125,8 +127,8 @@ type AppPageNavigationParamInterceptOptions = {
|
|
|
125
127
|
* and the page head resolution in
|
|
126
128
|
* {@link https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/create-metadata.tsx|create-metadata.tsx}.
|
|
127
129
|
*/
|
|
128
|
-
declare function buildPageElements<TModule extends AppPageModule = AppPageModule, TErrorModule extends AppPageErrorModule = AppPageErrorModule>(options: BuildPageElementsOptions<TModule, TErrorModule>): Promise<AppElements>;
|
|
129
|
-
declare const APP_PAGE_INTERCEPTION_MARKER_TRAVERSALS: readonly [{
|
|
130
|
+
export declare function buildPageElements<TModule extends AppPageModule = AppPageModule, TErrorModule extends AppPageErrorModule = AppPageErrorModule>(options: BuildPageElementsOptions<TModule, TErrorModule>): Promise<AppElements>;
|
|
131
|
+
export declare const APP_PAGE_INTERCEPTION_MARKER_TRAVERSALS: readonly [{
|
|
130
132
|
readonly prefix: "(...)";
|
|
131
133
|
readonly levels: number;
|
|
132
134
|
}, {
|
|
@@ -145,9 +147,9 @@ declare const APP_PAGE_INTERCEPTION_MARKER_TRAVERSALS: readonly [{
|
|
|
145
147
|
* already bound to the param map that owns it (the route's params up to the
|
|
146
148
|
* marker, the slot's params from the marker on).
|
|
147
149
|
*/
|
|
148
|
-
declare function resolveInterceptedSlotIdentitySegments(sourcePageSegments: readonly string[] | null | undefined, slotKey: string): readonly AppPageSemanticSegment[] | null;
|
|
149
|
-
declare function resolveInterceptedSlotSegments(sourcePageSegments: readonly string[] | null | undefined, slotKey: string): readonly string[] | null;
|
|
150
|
-
declare function resolveSlotParamOverrides(route: AppPageNavigationParamRoute, routePath: string): Readonly<Record<string, AppPageParams>> | null;
|
|
151
|
-
declare function resolveAppPageNavigationParams(route: AppPageNavigationParamRoute, routeParams: AppPageParams, routePath: string, opts?: AppPageNavigationParamInterceptOptions | null): AppPageParams;
|
|
150
|
+
export declare function resolveInterceptedSlotIdentitySegments(sourcePageSegments: readonly string[] | null | undefined, slotKey: string): readonly AppPageSemanticSegment[] | null;
|
|
151
|
+
export declare function resolveInterceptedSlotSegments(sourcePageSegments: readonly string[] | null | undefined, slotKey: string): readonly string[] | null;
|
|
152
|
+
export declare function resolveSlotParamOverrides(route: AppPageNavigationParamRoute, routePath: string): Readonly<Record<string, AppPageParams>> | null;
|
|
153
|
+
export declare function resolveAppPageNavigationParams(route: AppPageNavigationParamRoute, routeParams: AppPageParams, routePath: string, opts?: AppPageNavigationParamInterceptOptions | null): AppPageParams;
|
|
152
154
|
//#endregion
|
|
153
|
-
export {
|
|
155
|
+
export type { AppPageErrorModule, AppPageRouteWiringRoute };
|