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
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region src/server/app-metadata-tracing.d.ts
|
|
2
|
+
type AppMetadataModuleType = "forbidden" | "layout" | "not-found" | "page" | "unauthorized";
|
|
3
|
+
export declare function createAppMetadataModuleRoute(routeSegments: readonly string[], moduleType: AppMetadataModuleType): string;
|
|
4
|
+
export declare function traceGenerateMetadata<T>(moduleRoute: string, callback: () => T): T;
|
|
5
|
+
export declare function createGenerateMetadataSpanDescriptor(moduleRoute: string): {
|
|
6
|
+
readonly attributes: {
|
|
7
|
+
readonly "next.page": string;
|
|
8
|
+
};
|
|
9
|
+
readonly name: `generateMetadata ${string}`;
|
|
10
|
+
readonly type: "ResolveMetadata.generateMetadata";
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { frameworkTracer } from "./tracer.js";
|
|
2
|
+
//#region src/server/app-metadata-tracing.ts
|
|
3
|
+
function createAppMetadataModuleRoute(routeSegments, moduleType) {
|
|
4
|
+
return `/${[...routeSegments.filter((segment) => !segment.startsWith("@")), moduleType].join("/")}`;
|
|
5
|
+
}
|
|
6
|
+
function traceGenerateMetadata(moduleRoute, callback) {
|
|
7
|
+
return frameworkTracer.trace(createGenerateMetadataSpanDescriptor(moduleRoute), callback);
|
|
8
|
+
}
|
|
9
|
+
function createGenerateMetadataSpanDescriptor(moduleRoute) {
|
|
10
|
+
return {
|
|
11
|
+
attributes: { "next.page": moduleRoute },
|
|
12
|
+
name: `generateMetadata ${moduleRoute}`,
|
|
13
|
+
type: "ResolveMetadata.generateMetadata"
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { createAppMetadataModuleRoute, createGenerateMetadataSpanDescriptor, traceGenerateMetadata };
|
|
@@ -2,12 +2,12 @@ import { NextI18nConfig } from "../config/next-config.js";
|
|
|
2
2
|
import { MiddlewareModule } from "./middleware-runtime.js";
|
|
3
3
|
import { FLIGHT_HEADERS } from "./headers.js";
|
|
4
4
|
//#region src/server/app-middleware.d.ts
|
|
5
|
-
type AppMiddlewareContext = {
|
|
5
|
+
export type AppMiddlewareContext = {
|
|
6
6
|
headers: Headers | null;
|
|
7
7
|
requestHeaders: Headers | null;
|
|
8
8
|
status: number | null;
|
|
9
9
|
};
|
|
10
|
-
type ApplyAppMiddlewareOptions = {
|
|
10
|
+
export type ApplyAppMiddlewareOptions = {
|
|
11
11
|
basePath?: string;
|
|
12
12
|
cleanPathname: string;
|
|
13
13
|
context: AppMiddlewareContext;
|
|
@@ -35,7 +35,7 @@ type ApplyAppMiddlewareOptions = {
|
|
|
35
35
|
*/
|
|
36
36
|
trailingSlash?: boolean;
|
|
37
37
|
};
|
|
38
|
-
type ApplyAppMiddlewareResult = {
|
|
38
|
+
export type ApplyAppMiddlewareResult = {
|
|
39
39
|
kind: "continue";
|
|
40
40
|
cleanPathname: string;
|
|
41
41
|
/** Present on real middleware results; optional for older generated callers. */
|
|
@@ -52,8 +52,8 @@ type ApplyAppMiddlewareResult = {
|
|
|
52
52
|
pathnameEligible?: boolean;
|
|
53
53
|
response: Response;
|
|
54
54
|
};
|
|
55
|
-
declare function isExternalMiddlewareRewrite(rewriteUrl: string, request: Request): boolean;
|
|
56
|
-
declare function proxyExternalMiddlewareRewrite(request: Request, rewriteUrl: string, context: AppMiddlewareContext): Promise<Response>;
|
|
57
|
-
declare function applyAppMiddleware(options: ApplyAppMiddlewareOptions): Promise<ApplyAppMiddlewareResult>;
|
|
55
|
+
export declare function isExternalMiddlewareRewrite(rewriteUrl: string, request: Request): boolean;
|
|
56
|
+
export declare function proxyExternalMiddlewareRewrite(request: Request, rewriteUrl: string, context: AppMiddlewareContext): Promise<Response>;
|
|
57
|
+
export declare function applyAppMiddleware(options: ApplyAppMiddlewareOptions): Promise<ApplyAppMiddlewareResult>;
|
|
58
58
|
//#endregion
|
|
59
|
-
export {
|
|
59
|
+
export { FLIGHT_HEADERS };
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { VINEXT_MW_CTX_HEADER } from "../utils/protocol-headers.js";
|
|
2
|
-
import { FLIGHT_HEADERS } from "./headers.js";
|
|
3
2
|
import { buildRequestHeadersFromMiddlewareResponse } from "../utils/middleware-request-headers.js";
|
|
4
3
|
import { isExternalUrl } from "../utils/external-url.js";
|
|
4
|
+
import { FLIGHT_HEADERS } from "./headers.js";
|
|
5
5
|
import { internalServerErrorResponse } from "./http-error-responses.js";
|
|
6
6
|
import { cloneRequestWithHeaders, processMiddlewareHeaders } from "./request-pipeline.js";
|
|
7
7
|
import { executeMiddleware } from "./middleware-runtime.js";
|
|
8
8
|
import { applyMiddlewareRequestHeaders, setHeadersContext } from "../shims/headers.js";
|
|
9
|
-
import { setNavigationContext } from "../shims/navigation-context-state.js";
|
|
10
9
|
import { mergeMiddlewareResponseHeaders } from "./middleware-response-headers.js";
|
|
11
|
-
import "../shims/navigation.js";
|
|
10
|
+
import { setNavigationContext } from "../shims/navigation-context-accessors.js";
|
|
12
11
|
//#region src/server/app-middleware.ts
|
|
13
12
|
const FLIGHT_HEADER_SET = new Set(FLIGHT_HEADERS);
|
|
14
13
|
function isForwardedMiddlewareContext(value) {
|
|
@@ -30,6 +30,5 @@
|
|
|
30
30
|
* - app-elements (outgoing x-vinext-mounted-slots construction)
|
|
31
31
|
* - isr-cache (RSC cache key generation)
|
|
32
32
|
*/
|
|
33
|
-
declare function normalizeMountedSlotsHeader(raw: string | null | undefined): string | null;
|
|
34
|
-
//#endregion
|
|
35
|
-
export { normalizeMountedSlotsHeader };
|
|
33
|
+
export declare function normalizeMountedSlotsHeader(raw: string | null | undefined): string | null;
|
|
34
|
+
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isAppElementsWireSlotId } from "./app-elements-wire-key.js";
|
|
2
2
|
//#region src/server/app-mounted-slots-header.ts
|
|
3
3
|
/**
|
|
4
4
|
* Normalize the `x-vinext-mounted-slots` header for request handling and cache keying.
|
|
@@ -45,7 +45,7 @@ const MAX_SLOT_TOKENS = 16;
|
|
|
45
45
|
*/
|
|
46
46
|
function isValidSlotToken(token) {
|
|
47
47
|
if (token.length === 0 || token.length > MAX_TOKEN_LENGTH) return false;
|
|
48
|
-
return
|
|
48
|
+
return isAppElementsWireSlotId(token);
|
|
49
49
|
}
|
|
50
50
|
function normalizeMountedSlotsHeader(raw) {
|
|
51
51
|
if (!raw) return null;
|
|
@@ -6,7 +6,7 @@ type OptimisticRouteMatch = {
|
|
|
6
6
|
params: Record<string, string | string[]>;
|
|
7
7
|
route: RouteManifestRoute;
|
|
8
8
|
};
|
|
9
|
-
type OptimisticRouteTemplate = {
|
|
9
|
+
export type OptimisticRouteTemplate = {
|
|
10
10
|
elements: AppElements;
|
|
11
11
|
mountedSlotsHeader: string | null;
|
|
12
12
|
omittedBfcacheSegmentIds: readonly string[];
|
|
@@ -21,27 +21,27 @@ type OptimisticNavigationPayload = {
|
|
|
21
21
|
template: OptimisticRouteTemplate;
|
|
22
22
|
urlParts: readonly string[];
|
|
23
23
|
};
|
|
24
|
-
declare function getOptimisticRouteTemplateKey(options: {
|
|
24
|
+
export declare function getOptimisticRouteTemplateKey(options: {
|
|
25
25
|
interceptionContext: string | null;
|
|
26
26
|
mountedSlotsHeader: string | null;
|
|
27
27
|
routeId: string;
|
|
28
28
|
}): string;
|
|
29
|
-
declare function getOptimisticPrefetchSourceKey(options: {
|
|
29
|
+
export declare function getOptimisticPrefetchSourceKey(options: {
|
|
30
30
|
cacheKey: string;
|
|
31
31
|
interceptionContext: string | null;
|
|
32
32
|
mountedSlotsHeader: string | null;
|
|
33
33
|
}): string;
|
|
34
|
-
declare function matchOptimisticRouteManifestRoute(options: {
|
|
34
|
+
export declare function matchOptimisticRouteManifestRoute(options: {
|
|
35
35
|
basePath: string;
|
|
36
36
|
href: string;
|
|
37
37
|
routeManifest: RouteManifest;
|
|
38
38
|
}): OptimisticRouteMatch | null;
|
|
39
|
-
declare function resolveOptimisticNavigationParamsForHref(options: {
|
|
39
|
+
export declare function resolveOptimisticNavigationParamsForHref(options: {
|
|
40
40
|
basePath: string;
|
|
41
41
|
href: string;
|
|
42
42
|
routeManifest: RouteManifest;
|
|
43
43
|
}): Record<string, string | string[]> | null;
|
|
44
|
-
declare function createOptimisticRouteTemplate(options: {
|
|
44
|
+
export declare function createOptimisticRouteTemplate(options: {
|
|
45
45
|
allowLoadingShell?: boolean;
|
|
46
46
|
basePath: string;
|
|
47
47
|
elements: AppElements;
|
|
@@ -50,7 +50,7 @@ declare function createOptimisticRouteTemplate(options: {
|
|
|
50
50
|
mountedSlotsHeader: string | null;
|
|
51
51
|
routeManifest: RouteManifest;
|
|
52
52
|
}): OptimisticRouteTemplate | null;
|
|
53
|
-
declare function createOptimisticRouteElements(template: OptimisticRouteTemplate): AppElements;
|
|
53
|
+
export declare function createOptimisticRouteElements(template: OptimisticRouteTemplate): AppElements;
|
|
54
54
|
/**
|
|
55
55
|
* A loading-shell prefetch stops at the first loading boundary, so layouts
|
|
56
56
|
* below that boundary are present in the route metadata but absent from the
|
|
@@ -59,7 +59,7 @@ declare function createOptimisticRouteElements(template: OptimisticRouteTemplate
|
|
|
59
59
|
* keeps the shared segment active in this case, which also means the ancestor
|
|
60
60
|
* loading boundary does not re-trigger.
|
|
61
61
|
*/
|
|
62
|
-
declare function canCommitOptimisticRouteTemplate(options: {
|
|
62
|
+
export declare function canCommitOptimisticRouteTemplate(options: {
|
|
63
63
|
currentElements: AppElements;
|
|
64
64
|
currentLayoutIds: readonly string[];
|
|
65
65
|
currentParams: Readonly<Record<string, string | string[]>>;
|
|
@@ -68,7 +68,7 @@ declare function canCommitOptimisticRouteTemplate(options: {
|
|
|
68
68
|
targetUrlParts: readonly string[];
|
|
69
69
|
template: OptimisticRouteTemplate;
|
|
70
70
|
}): boolean;
|
|
71
|
-
declare function resolveOptimisticNavigationPayload(options: {
|
|
71
|
+
export declare function resolveOptimisticNavigationPayload(options: {
|
|
72
72
|
basePath: string;
|
|
73
73
|
href: string;
|
|
74
74
|
interceptionContext: string | null;
|
|
@@ -76,5 +76,4 @@ declare function resolveOptimisticNavigationPayload(options: {
|
|
|
76
76
|
routeManifest: RouteManifest;
|
|
77
77
|
templates: ReadonlyMap<string, OptimisticRouteTemplate>;
|
|
78
78
|
}): OptimisticNavigationPayload | null;
|
|
79
|
-
//#endregion
|
|
80
|
-
export { OptimisticRouteTemplate, canCommitOptimisticRouteTemplate, createOptimisticRouteElements, createOptimisticRouteTemplate, getOptimisticPrefetchSourceKey, getOptimisticRouteTemplateKey, matchOptimisticRouteManifestRoute, resolveOptimisticNavigationParamsForHref, resolveOptimisticNavigationPayload };
|
|
79
|
+
//#endregion
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { isUnknownRecord } from "../utils/record.js";
|
|
1
2
|
import { buildParams, decodeMatchedParams, splitPathnameForRouteMatch } from "../routing/utils.js";
|
|
2
3
|
import { stripBasePath } from "../utils/base-path.js";
|
|
3
|
-
import { isUnknownRecord } from "../utils/record.js";
|
|
4
4
|
import { AppElementsWire } from "./app-elements-wire.js";
|
|
5
5
|
import "./app-elements.js";
|
|
6
6
|
import { extractRawRoutePatternParams, matchRoutePattern } from "../routing/route-pattern.js";
|
|
@@ -127,7 +127,8 @@ function hrefToRouteParts(href, basePath) {
|
|
|
127
127
|
return null;
|
|
128
128
|
}
|
|
129
129
|
stripRscCacheBustingSearchParam(url);
|
|
130
|
-
const
|
|
130
|
+
const withoutRscSuffix = stripRscSuffix(url.pathname);
|
|
131
|
+
const appPathname = stripBasePath(withoutRscSuffix, basePath);
|
|
131
132
|
const pathname = appPathname === "" ? "/" : appPathname;
|
|
132
133
|
return {
|
|
133
134
|
normalized: splitPathnameForRouteMatch(pathname),
|
|
@@ -10,6 +10,7 @@ import { ApplyAppPageFileBasedMetadata } from "./app-page-head.js";
|
|
|
10
10
|
import { AppPageRouteWiringRoute } from "./app-page-route-wiring.js";
|
|
11
11
|
import { AppPageInterceptOptions } from "./app-page-element-builder.js";
|
|
12
12
|
import { AppPageSsrHandler } from "./app-page-stream.js";
|
|
13
|
+
import { AppRenderErrorContextOverrides } from "./app-rsc-error-handler.js";
|
|
13
14
|
import { ComponentType, ReactNode } from "react";
|
|
14
15
|
//#region src/server/app-page-boundary-render.d.ts
|
|
15
16
|
type AppPageComponent = ComponentType<any>;
|
|
@@ -17,7 +18,7 @@ type AppPageModule = Record<string, unknown> & {
|
|
|
17
18
|
default?: AppPageComponent | null | undefined;
|
|
18
19
|
};
|
|
19
20
|
type AppPageBoundaryOnError = (error: unknown, requestInfo: unknown, errorContext: unknown) => unknown;
|
|
20
|
-
type AppPageBoundaryRoute<TModule extends AppPageModule = AppPageModule> = {
|
|
21
|
+
export type AppPageBoundaryRoute<TModule extends AppPageModule = AppPageModule> = {
|
|
21
22
|
error?: TModule | null;
|
|
22
23
|
errorPaths?: readonly TModule[] | null;
|
|
23
24
|
errors?: readonly (TModule | null | undefined)[] | null;
|
|
@@ -41,7 +42,7 @@ type AppPageBoundaryRenderCommonOptions<TModule extends AppPageModule = AppPageM
|
|
|
41
42
|
applyFileBasedMetadata?: ApplyAppPageFileBasedMetadata;
|
|
42
43
|
buildFontLinkHeader: (preloads: readonly AppPageFontPreload[] | null | undefined) => string;
|
|
43
44
|
clearRequestContext: () => void;
|
|
44
|
-
createRscOnErrorHandler: (pathname: string, routePath: string) => AppPageBoundaryOnError;
|
|
45
|
+
createRscOnErrorHandler: (pathname: string, routePath: string, overrides?: AppRenderErrorContextOverrides) => AppPageBoundaryOnError;
|
|
45
46
|
getAndClearPendingCookies?: () => string[];
|
|
46
47
|
getFontLinks: () => string[];
|
|
47
48
|
getFontPreloads: () => AppPageFontPreload[];
|
|
@@ -108,7 +109,6 @@ type RenderAppPageErrorBoundaryOptions<TModule extends AppPageModule = AppPageMo
|
|
|
108
109
|
route?: AppPageBoundaryRoute<TModule> | null;
|
|
109
110
|
sanitizeErrorForClient: (error: Error) => Error;
|
|
110
111
|
} & AppPageBoundaryRenderCommonOptions<TModule>;
|
|
111
|
-
declare function renderAppPageHttpAccessFallback<TModule extends AppPageModule>(options: RenderAppPageHttpAccessFallbackOptions<TModule>): Promise<Response | null>;
|
|
112
|
-
declare function renderAppPageErrorBoundary<TModule extends AppPageModule>(options: RenderAppPageErrorBoundaryOptions<TModule>): Promise<Response | null>;
|
|
113
|
-
//#endregion
|
|
114
|
-
export { AppPageBoundaryRoute, renderAppPageErrorBoundary, renderAppPageHttpAccessFallback };
|
|
112
|
+
export declare function renderAppPageHttpAccessFallback<TModule extends AppPageModule>(options: RenderAppPageHttpAccessFallbackOptions<TModule>): Promise<Response | null>;
|
|
113
|
+
export declare function renderAppPageErrorBoundary<TModule extends AppPageModule>(options: RenderAppPageErrorBoundaryOptions<TModule>): Promise<Response | null>;
|
|
114
|
+
//#endregion
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { stripBasePath } from "../utils/base-path.js";
|
|
2
|
+
import { isNavigationSignalError } from "../utils/navigation-signal.js";
|
|
2
3
|
import { NEVER_CACHE_CONTROL, applyCdnResponseHeaders } from "./cache-control.js";
|
|
3
4
|
import { AppElementsWire } from "./app-elements-wire.js";
|
|
4
5
|
import "./app-elements.js";
|
|
5
6
|
import DefaultGlobalError from "../shims/default-global-error.js";
|
|
6
|
-
import { isNavigationSignalError } from "../utils/navigation-signal.js";
|
|
7
7
|
import { ErrorBoundary, GlobalErrorBoundary, SerializedErrorBoundary } from "../shims/error-boundary.js";
|
|
8
8
|
import { LayoutSegmentProvider } from "../shims/layout-segment-context.js";
|
|
9
9
|
import { MetadataHead, ViewportHead } from "../shims/metadata.js";
|
|
@@ -18,7 +18,7 @@ import { resolveHttpAccessFallbackMetadata, resolveHttpAccessFallbackViewport }
|
|
|
18
18
|
import "./app-rsc-route-matching.js";
|
|
19
19
|
import { renderAppPageBoundaryResponse, resolveAppPageErrorBoundary, resolveAppPageHttpAccessBoundaryModule, wrapAppPageBoundaryElement } from "./app-page-boundary.js";
|
|
20
20
|
import { resolveSlotParamOverrides } from "./app-page-element-builder.js";
|
|
21
|
-
import { createAppPageFontData, createAppPageRscErrorTracker, renderAppPageHtmlResponse } from "./app-page-stream.js";
|
|
21
|
+
import { createAppPageFontData, createAppPageRscErrorTracker, createAppPageSsrErrorHandler, renderAppPageHtmlResponse } from "./app-page-stream.js";
|
|
22
22
|
import { Fragment, createElement } from "react";
|
|
23
23
|
//#region src/server/app-page-boundary-render.ts
|
|
24
24
|
const DEFAULT_GLOBAL_ERROR_COMPONENT = DefaultGlobalError;
|
|
@@ -133,7 +133,8 @@ async function renderAppPageBoundaryElementResponse(options) {
|
|
|
133
133
|
route: options.route,
|
|
134
134
|
sourcePageSegments: options.sourcePageSegments
|
|
135
135
|
});
|
|
136
|
-
const
|
|
136
|
+
const baseRscOnErrorHandler = options.createRscOnErrorHandler(pathname, options.routePattern ?? pathname);
|
|
137
|
+
const rscErrorTracker = createAppPageRscErrorTracker(baseRscOnErrorHandler);
|
|
137
138
|
const resolveCapturedSpecialError = (error) => resolveAppPageSpecialError(error) ?? resolveAppPageSpecialError(rscErrorTracker.getCapturedSpecialError());
|
|
138
139
|
const renderSpecialErrorResponse = (specialError) => renderBoundarySpecialErrorResponse(options, specialError);
|
|
139
140
|
const handleSpecialErrors = options.handleSpecialErrors === true;
|
|
@@ -147,6 +148,7 @@ async function renderAppPageBoundaryElementResponse(options) {
|
|
|
147
148
|
getStyles: options.getFontStyles
|
|
148
149
|
});
|
|
149
150
|
const ssrHandler = await options.loadSsrHandler();
|
|
151
|
+
const onSsrError = options.createRscOnErrorHandler(pathname, options.routePattern ?? pathname, { renderSource: "server-rendering" });
|
|
150
152
|
return renderAppPageHtmlResponse({
|
|
151
153
|
clearRequestContext: options.clearRequestContext,
|
|
152
154
|
fontData,
|
|
@@ -163,7 +165,8 @@ async function renderAppPageBoundaryElementResponse(options) {
|
|
|
163
165
|
scriptNonce: options.scriptNonce,
|
|
164
166
|
ssrHandler,
|
|
165
167
|
status: responseStatus,
|
|
166
|
-
initialDevServerError: options.initialDevServerError
|
|
168
|
+
initialDevServerError: options.initialDevServerError,
|
|
169
|
+
onSsrError: createAppPageSsrErrorHandler(onSsrError, rscErrorTracker.isCapturedError)
|
|
167
170
|
});
|
|
168
171
|
},
|
|
169
172
|
createRscOnErrorHandler() {
|
|
@@ -254,6 +257,7 @@ async function renderAppPageHttpAccessFallback(options) {
|
|
|
254
257
|
},
|
|
255
258
|
...intercept?.interceptNotFound ? {
|
|
256
259
|
notFoundModule: intercept.interceptNotFound,
|
|
260
|
+
notFoundModuleRouteSegments: (intercept.interceptNotFoundBranchSegments ?? intercept.interceptSourcePageSegments ?? fallbackRouteSegments).slice(0, intercept.interceptNotFoundTreePosition ?? 0),
|
|
257
261
|
notFoundParams: resolveAppPageBranchParams(intercept.interceptNotFoundBranchSegments ?? intercept.interceptBranchSegments ?? fallbackRouteSegments, intercept.interceptNotFoundTreePosition ?? 0, effectiveParams)
|
|
258
262
|
} : {},
|
|
259
263
|
ownerTreePosition: fallbackRouteSegments.length
|
|
@@ -261,7 +265,9 @@ async function renderAppPageHttpAccessFallback(options) {
|
|
|
261
265
|
const fallbackHeadOptions = {
|
|
262
266
|
boundaryModule,
|
|
263
267
|
boundaryParams,
|
|
268
|
+
boundaryRouteSegments: fallbackRouteSegments.slice(0, boundaryTreePosition ?? 0),
|
|
264
269
|
branchNotFoundConventions: options.statusCode === 404,
|
|
270
|
+
errorConvention: options.statusCode === 403 ? "forbidden" : options.statusCode === 401 ? "unauthorized" : "not-found",
|
|
265
271
|
layoutModules,
|
|
266
272
|
layoutTreePositions: resolveHttpAccessFallbackHeadLayoutTreePositions(options.route, layoutModules),
|
|
267
273
|
parallelBranches,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region src/server/app-page-boundary.d.ts
|
|
2
|
-
type AppPageParams = Record<string, string | string[]>;
|
|
2
|
+
export type AppPageParams = Record<string, string | string[]>;
|
|
3
3
|
type ResolveAppPageHttpAccessBoundaryComponentOptions<TModule, TComponent> = {
|
|
4
4
|
getDefaultExport: (module: TModule | null | undefined) => TComponent | null | undefined;
|
|
5
5
|
rootForbiddenModule?: TModule | null;
|
|
@@ -72,9 +72,9 @@ type RenderAppPageBoundaryResponseOptions<TElement> = {
|
|
|
72
72
|
}) => ReadableStream<Uint8Array>;
|
|
73
73
|
status: number;
|
|
74
74
|
};
|
|
75
|
-
declare function resolveAppPageHttpAccessBoundaryComponent<TModule, TComponent>(options: ResolveAppPageHttpAccessBoundaryComponentOptions<TModule, TComponent>): TComponent | null;
|
|
76
|
-
declare function resolveAppPageHttpAccessBoundaryModule<TModule>(options: ResolveAppPageHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
77
|
-
declare function resolveAppPageParentHttpAccessBoundaryModule<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
75
|
+
export declare function resolveAppPageHttpAccessBoundaryComponent<TModule, TComponent>(options: ResolveAppPageHttpAccessBoundaryComponentOptions<TModule, TComponent>): TComponent | null;
|
|
76
|
+
export declare function resolveAppPageHttpAccessBoundaryModule<TModule>(options: ResolveAppPageHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
77
|
+
export declare function resolveAppPageParentHttpAccessBoundaryModule<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
78
78
|
/**
|
|
79
79
|
* Like {@link resolveAppPageParentHttpAccessBoundaryModule}, but also returns
|
|
80
80
|
* the layout index that owns the resolved boundary so callers can slice the
|
|
@@ -91,12 +91,11 @@ declare function resolveAppPageParentHttpAccessBoundaryModule<TModule>(options:
|
|
|
91
91
|
*
|
|
92
92
|
* @see https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/create-component-tree.tsx
|
|
93
93
|
*/
|
|
94
|
-
declare function resolveAppPageParentHttpAccessBoundary<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): {
|
|
94
|
+
export declare function resolveAppPageParentHttpAccessBoundary<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): {
|
|
95
95
|
module: TModule | null;
|
|
96
96
|
layoutIndex: number | null;
|
|
97
97
|
};
|
|
98
|
-
declare function resolveAppPageErrorBoundary<TModule, TComponent>(options: ResolveAppPageErrorBoundaryOptions<TModule, TComponent>): ResolveAppPageErrorBoundaryResult<TComponent>;
|
|
99
|
-
declare function wrapAppPageBoundaryElement<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>(options: WrapAppPageBoundaryElementOptions<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>): TElement;
|
|
100
|
-
declare function renderAppPageBoundaryResponse<TElement>(options: RenderAppPageBoundaryResponseOptions<TElement>): Promise<Response>;
|
|
101
|
-
//#endregion
|
|
102
|
-
export { AppPageParams, renderAppPageBoundaryResponse, resolveAppPageErrorBoundary, resolveAppPageHttpAccessBoundaryComponent, resolveAppPageHttpAccessBoundaryModule, resolveAppPageParentHttpAccessBoundary, resolveAppPageParentHttpAccessBoundaryModule, wrapAppPageBoundaryElement };
|
|
98
|
+
export declare function resolveAppPageErrorBoundary<TModule, TComponent>(options: ResolveAppPageErrorBoundaryOptions<TModule, TComponent>): ResolveAppPageErrorBoundaryResult<TComponent>;
|
|
99
|
+
export declare function wrapAppPageBoundaryElement<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>(options: WrapAppPageBoundaryElementOptions<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>): TElement;
|
|
100
|
+
export declare function renderAppPageBoundaryResponse<TElement>(options: RenderAppPageBoundaryResponseOptions<TElement>): Promise<Response>;
|
|
101
|
+
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VINEXT_RSC_VARY_HEADER } from "./
|
|
1
|
+
import { VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
|
|
2
2
|
import { runWithFetchDedupe } from "../shims/fetch-cache.js";
|
|
3
3
|
import { resolveAppPageSegmentParams } from "./app-page-params.js";
|
|
4
4
|
import { VINEXT_RSC_CONTENT_TYPE, applyRscCompatibilityIdHeader, applyRscDeploymentIdHeader } from "./app-rsc-cache-busting.js";
|
|
@@ -21,16 +21,24 @@ type FinalizeAppPageCacheabilityEvaluationOptions = {
|
|
|
21
21
|
getPageTags: () => string[];
|
|
22
22
|
getRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
23
23
|
expireSeconds?: number;
|
|
24
|
+
/**
|
|
25
|
+
* `false` for routes Next.js classifies as dynamic (ƒ), which are never
|
|
26
|
+
* cacheable even when a cacheLife resolves during the render.
|
|
27
|
+
*/
|
|
28
|
+
isStaticEligible: boolean;
|
|
24
29
|
revalidateSeconds: number | null;
|
|
25
30
|
};
|
|
26
31
|
type FinalizeAppPageHtmlCacheResponseOptions = {
|
|
32
|
+
bypassInterceptionContextCache?: boolean;
|
|
27
33
|
capturedDynamicUsageBeforeContextCleanup?: () => boolean;
|
|
28
34
|
capturedRscDataPromise: Promise<ArrayBuffer> | null;
|
|
29
35
|
cleanPathname: string;
|
|
36
|
+
/** Private marker surrounding this render's injected client trace metadata. */
|
|
37
|
+
clientTraceMetadataMarker?: string;
|
|
30
38
|
consumeDynamicUsage: () => boolean;
|
|
31
39
|
consumeRenderObservationState?: () => AppPageRenderObservationState;
|
|
32
|
-
createHtmlRenderObservation
|
|
33
|
-
createRscRenderObservation
|
|
40
|
+
createHtmlRenderObservation: BuildAppPageCacheRenderObservation;
|
|
41
|
+
createRscRenderObservation: BuildAppPageCacheRenderObservation;
|
|
34
42
|
getPageTags: () => string[];
|
|
35
43
|
getRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
36
44
|
isrDebug?: AppPageDebugLogger;
|
|
@@ -42,6 +50,7 @@ type FinalizeAppPageHtmlCacheResponseOptions = {
|
|
|
42
50
|
omitPendingDynamicCacheState?: boolean;
|
|
43
51
|
preserveClientResponseHeaders?: boolean;
|
|
44
52
|
expireSeconds?: number;
|
|
53
|
+
isStaticEligible: boolean;
|
|
45
54
|
revalidateSeconds: number | null;
|
|
46
55
|
linkHeader: string | null;
|
|
47
56
|
waitUntil?: (promise: Promise<void>) => void;
|
|
@@ -52,7 +61,7 @@ type ScheduleAppPageRscCacheWriteOptions = {
|
|
|
52
61
|
cleanPathname: string;
|
|
53
62
|
consumeDynamicUsage: () => boolean;
|
|
54
63
|
consumeRenderObservationState?: () => AppPageRenderObservationState;
|
|
55
|
-
createRscRenderObservation
|
|
64
|
+
createRscRenderObservation: BuildAppPageCacheRenderObservation;
|
|
56
65
|
dynamicUsedDuringBuild: boolean;
|
|
57
66
|
getPageTags: () => string[];
|
|
58
67
|
getRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
@@ -66,6 +75,7 @@ type ScheduleAppPageRscCacheWriteOptions = {
|
|
|
66
75
|
renderMode?: AppRscRenderMode;
|
|
67
76
|
preserveClientResponseHeaders?: boolean;
|
|
68
77
|
expireSeconds?: number;
|
|
78
|
+
isStaticEligible: boolean;
|
|
69
79
|
revalidateSeconds: number | null;
|
|
70
80
|
waitUntil?: (promise: Promise<void>) => void;
|
|
71
81
|
};
|
|
@@ -73,9 +83,8 @@ type ScheduleAppPageRscCacheWriteOptions = {
|
|
|
73
83
|
* Complete probe/admission classification for an App Page response that does
|
|
74
84
|
* not enter the ISR cache-write path. Ordinary requests pass through unchanged.
|
|
75
85
|
*/
|
|
76
|
-
declare function finalizeAppPageCacheabilityEvaluationResponse(response: Response, options: FinalizeAppPageCacheabilityEvaluationOptions): Response;
|
|
77
|
-
declare function finalizeAppPageHtmlCacheResponse(response: Response, options: FinalizeAppPageHtmlCacheResponseOptions): Response;
|
|
78
|
-
declare function finalizeAppPageRscCacheResponse(response: Response, options: ScheduleAppPageRscCacheWriteOptions): Response;
|
|
79
|
-
declare function scheduleAppPageRscCacheWrite(options: ScheduleAppPageRscCacheWriteOptions): boolean;
|
|
80
|
-
//#endregion
|
|
81
|
-
export { finalizeAppPageCacheabilityEvaluationResponse, finalizeAppPageHtmlCacheResponse, finalizeAppPageRscCacheResponse, scheduleAppPageRscCacheWrite };
|
|
86
|
+
export declare function finalizeAppPageCacheabilityEvaluationResponse(response: Response, options: FinalizeAppPageCacheabilityEvaluationOptions): Response;
|
|
87
|
+
export declare function finalizeAppPageHtmlCacheResponse(response: Response, options: FinalizeAppPageHtmlCacheResponseOptions): Response;
|
|
88
|
+
export declare function finalizeAppPageRscCacheResponse(response: Response, options: ScheduleAppPageRscCacheWriteOptions): Response;
|
|
89
|
+
export declare function scheduleAppPageRscCacheWrite(options: ScheduleAppPageRscCacheWriteOptions): boolean;
|
|
90
|
+
//#endregion
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import { NEXTJS_CACHE_HEADER, VINEXT_CACHE_HEADER } from "./headers.js";
|
|
2
|
+
import { getCdnCacheAdapter } from "../shims/cdn-cache.js";
|
|
3
|
+
import { captureRouteCacheabilityResponsePolicy, deferRouteCacheability, isRouteCacheabilityEvaluation } from "../shims/cacheability-classification.js";
|
|
4
|
+
import { NO_STORE_CACHE_CONTROL, STATIC_CACHE_CONTROL, applyCdnResponseHeaders, buildRevalidateCacheControl, captureCdnResponsePolicyHeaders, hasExplicitNonCacheableResponsePolicy } from "./cache-control.js";
|
|
5
|
+
import { buildAppPageCacheValue, isrCacheControl, resolveRouteExpireSeconds } from "./isr-cache.js";
|
|
2
6
|
import { resolveClientStaleTimeSeconds } from "../utils/cache-control-metadata.js";
|
|
3
|
-
import { NO_STORE_CACHE_CONTROL, STATIC_CACHE_CONTROL, applyCdnResponseHeaders, buildRevalidateCacheControl, hasExplicitNonCacheableResponsePolicy } from "./cache-control.js";
|
|
4
|
-
import { buildAppPageCacheValue, isrCacheControl } from "./isr-cache.js";
|
|
5
7
|
import { setCacheStateHeaders } from "./cache-headers.js";
|
|
6
8
|
import { readStreamAsText } from "../utils/text-stream.js";
|
|
9
|
+
import { deferUntilStreamConsumed } from "./defer-until-stream-consumed.js";
|
|
7
10
|
import { markFrameworkLinkHeaders } from "./app-response-header-provenance.js";
|
|
8
|
-
import {
|
|
11
|
+
import { hasQueryInvariantRenderProof } from "./cache-proof.js";
|
|
9
12
|
import { createEmptyAppPageRenderObservationState } from "./app-page-render-observation.js";
|
|
10
|
-
import { deferUntilStreamConsumed } from "./defer-until-stream-consumed.js";
|
|
11
13
|
//#region src/server/app-page-cache-finalizer.ts
|
|
12
14
|
function applyPendingDynamicCdnHeaders(headers, tags, options = {}) {
|
|
15
|
+
const cacheable = headers.get("Cache-Control") ?? "";
|
|
13
16
|
applyCdnResponseHeaders(headers, {
|
|
14
|
-
cacheControl:
|
|
17
|
+
cacheControl: cacheable,
|
|
15
18
|
pendingDynamicCheck: true,
|
|
16
19
|
tags
|
|
17
20
|
});
|
|
18
21
|
finalizePendingCacheStateHeaders(headers, options);
|
|
19
22
|
}
|
|
20
|
-
function
|
|
23
|
+
function applyUncacheableVariantNoStoreHeaders(headers, options = {}) {
|
|
21
24
|
applyCdnResponseHeaders(headers, { cacheControl: NO_STORE_CACHE_CONTROL });
|
|
22
25
|
finalizePendingCacheStateHeaders(headers, {
|
|
23
26
|
...options,
|
|
@@ -35,10 +38,9 @@ function finalizePendingCacheStateHeaders(headers, options = {}) {
|
|
|
35
38
|
}
|
|
36
39
|
function resolveAppPageCacheControl(options) {
|
|
37
40
|
let revalidateSeconds = options.revalidateSeconds;
|
|
38
|
-
let expireSeconds = options.expireSeconds;
|
|
39
41
|
const requestCacheLife = options.requestCacheLife;
|
|
40
42
|
if (requestCacheLife?.revalidate !== void 0) revalidateSeconds = revalidateSeconds === null ? requestCacheLife.revalidate : Math.min(revalidateSeconds, requestCacheLife.revalidate);
|
|
41
|
-
|
|
43
|
+
const expireSeconds = requestCacheLife?.expire ?? resolveRouteExpireSeconds(revalidateSeconds, options.expireSeconds);
|
|
42
44
|
if (revalidateSeconds === null || Number.isNaN(revalidateSeconds) || revalidateSeconds <= 0) return null;
|
|
43
45
|
return isrCacheControl(revalidateSeconds, {
|
|
44
46
|
expireSeconds,
|
|
@@ -52,17 +54,22 @@ function finalizeEvaluatedAppPageResponse(response, options) {
|
|
|
52
54
|
if (!isRouteCacheabilityEvaluation()) return null;
|
|
53
55
|
const complete = deferRouteCacheability();
|
|
54
56
|
if (!complete) return response;
|
|
55
|
-
captureRouteCacheabilityResponsePolicy(response.headers);
|
|
57
|
+
captureRouteCacheabilityResponsePolicy(captureCdnResponsePolicyHeaders(response.headers));
|
|
56
58
|
let completed = false;
|
|
57
59
|
const finish = () => {
|
|
58
60
|
if (completed) return;
|
|
59
61
|
completed = true;
|
|
62
|
+
const observationState = options.consumeRenderObservationState?.();
|
|
60
63
|
let outcome;
|
|
61
64
|
if (options.capturedDynamicUsageBeforeContextCleanup?.() === true || options.consumeDynamicUsage()) outcome = {
|
|
62
65
|
cacheable: false,
|
|
63
66
|
dynamicUsage: true,
|
|
64
67
|
reason: "dynamic API used during render"
|
|
65
68
|
};
|
|
69
|
+
else if (options.isStaticEligible === false) outcome = {
|
|
70
|
+
cacheable: false,
|
|
71
|
+
reason: "route is not statically generated"
|
|
72
|
+
};
|
|
66
73
|
else if (response.headers.has("set-cookie") || hasExplicitNonCacheableResponsePolicy(response.headers)) outcome = {
|
|
67
74
|
cacheable: false,
|
|
68
75
|
reason: "response explicitly opts out of shared caching"
|
|
@@ -76,13 +83,13 @@ function finalizeEvaluatedAppPageResponse(response, options) {
|
|
|
76
83
|
outcome = cacheControl ? {
|
|
77
84
|
cacheable: true,
|
|
78
85
|
cacheControl: appPageCacheControlHeader(cacheControl),
|
|
86
|
+
...observationState && !observationState.requestApis.includes("searchParams") ? { searchParamsUnread: true } : {},
|
|
79
87
|
tags: options.getPageTags()
|
|
80
88
|
} : {
|
|
81
89
|
cacheable: false,
|
|
82
90
|
reason: "render did not produce a cache policy"
|
|
83
91
|
};
|
|
84
92
|
}
|
|
85
|
-
options.consumeRenderObservationState?.();
|
|
86
93
|
complete(outcome);
|
|
87
94
|
};
|
|
88
95
|
if (!response.body) {
|
|
@@ -105,9 +112,25 @@ function finalizeAppPageCacheabilityEvaluationResponse(response, options) {
|
|
|
105
112
|
function finalizeAppPageHtmlCacheResponse(response, options) {
|
|
106
113
|
const probeResponse = finalizeEvaluatedAppPageResponse(response, options);
|
|
107
114
|
if (probeResponse) {
|
|
108
|
-
options.capturedRscDataPromise
|
|
115
|
+
if (options.capturedRscDataPromise) {
|
|
116
|
+
const adapter = getCdnCacheAdapter();
|
|
117
|
+
if (adapter.captureAppPageRscData) adapter.captureAppPageRscData(options.capturedRscDataPromise);
|
|
118
|
+
else options.capturedRscDataPromise.catch(() => {});
|
|
119
|
+
}
|
|
109
120
|
return probeResponse;
|
|
110
121
|
}
|
|
122
|
+
if (options.bypassInterceptionContextCache === true) {
|
|
123
|
+
options.capturedRscDataPromise?.catch(() => {});
|
|
124
|
+
const headers = new Headers(response.headers);
|
|
125
|
+
applyUncacheableVariantNoStoreHeaders(headers, { omitCacheState: options.omitPendingDynamicCacheState === true });
|
|
126
|
+
const clientResponse = new Response(response.body, {
|
|
127
|
+
status: response.status,
|
|
128
|
+
statusText: response.statusText,
|
|
129
|
+
headers
|
|
130
|
+
});
|
|
131
|
+
markFrameworkLinkHeaders(clientResponse.headers, options.linkHeader);
|
|
132
|
+
return clientResponse;
|
|
133
|
+
}
|
|
111
134
|
if (!response.body) return response;
|
|
112
135
|
const [streamForClient, streamForCache] = response.body.tee();
|
|
113
136
|
const htmlKey = options.isrHtmlKey(options.cleanPathname);
|
|
@@ -116,7 +139,7 @@ function finalizeAppPageHtmlCacheResponse(response, options) {
|
|
|
116
139
|
if (options.preserveClientResponseHeaders !== true) applyPendingDynamicCdnHeaders(clientHeaders, options.getPageTags(), { omitCacheState: options.omitPendingDynamicCacheState === true });
|
|
117
140
|
const cachePromise = (async () => {
|
|
118
141
|
try {
|
|
119
|
-
|
|
142
|
+
let cachedHtml = await readStreamAsText(streamForCache);
|
|
120
143
|
if (options.capturedDynamicUsageBeforeContextCleanup?.() === true || options.consumeDynamicUsage()) {
|
|
121
144
|
options.isrDebug?.("HTML cache write skipped (dynamic usage during render)", htmlKey);
|
|
122
145
|
return;
|
|
@@ -130,17 +153,25 @@ function finalizeAppPageHtmlCacheResponse(response, options) {
|
|
|
130
153
|
options.isrDebug?.("HTML cache write skipped (no cache policy)", htmlKey);
|
|
131
154
|
return;
|
|
132
155
|
}
|
|
156
|
+
if (options.clientTraceMetadataMarker) {
|
|
157
|
+
const { stripClientTraceMetadataBlock } = await import("./client-trace-metadata.js");
|
|
158
|
+
cachedHtml = stripClientTraceMetadataBlock(cachedHtml, options.clientTraceMetadataMarker);
|
|
159
|
+
}
|
|
133
160
|
const pageTags = options.getPageTags();
|
|
134
161
|
const observationState = options.consumeRenderObservationState?.() ?? createEmptyAppPageRenderObservationState();
|
|
135
|
-
const htmlRenderObservation = options.createHtmlRenderObservation
|
|
162
|
+
const htmlRenderObservation = options.createHtmlRenderObservation({
|
|
136
163
|
cacheTags: pageTags,
|
|
137
164
|
state: observationState
|
|
138
165
|
});
|
|
139
|
-
const rscRenderObservation = options.createRscRenderObservation
|
|
166
|
+
const rscRenderObservation = options.createRscRenderObservation({
|
|
140
167
|
cacheTags: pageTags,
|
|
141
168
|
state: observationState
|
|
142
169
|
});
|
|
143
170
|
const linkHeader = options.linkHeader;
|
|
171
|
+
if (!hasQueryInvariantRenderProof(htmlRenderObservation) || !hasQueryInvariantRenderProof(rscRenderObservation)) {
|
|
172
|
+
options.isrDebug?.("HTML cache write skipped (searchParams not proven unread)", htmlKey);
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
144
175
|
const writes = [options.isrSet(htmlKey, buildAppPageCacheValue(cachedHtml, void 0, 200, htmlRenderObservation, linkHeader ? { link: linkHeader } : void 0), {
|
|
145
176
|
cacheControl,
|
|
146
177
|
tags: pageTags
|
|
@@ -174,7 +205,7 @@ function finalizeAppPageRscCacheResponse(response, options) {
|
|
|
174
205
|
const isUncacheableVariant = Boolean(options.mountedSlotsHeader) || options.bypassInterceptionContextCache === true;
|
|
175
206
|
if (options.preserveClientResponseHeaders === true && !isUncacheableVariant) return response;
|
|
176
207
|
const clientHeaders = new Headers(response.headers);
|
|
177
|
-
if (isUncacheableVariant)
|
|
208
|
+
if (isUncacheableVariant) applyUncacheableVariantNoStoreHeaders(clientHeaders, { omitCacheState: options.omitPendingDynamicCacheState === true });
|
|
178
209
|
else applyPendingDynamicCdnHeaders(clientHeaders, options.getPageTags(), { omitCacheState: options.omitPendingDynamicCacheState === true });
|
|
179
210
|
return new Response(response.body, {
|
|
180
211
|
status: response.status,
|
|
@@ -204,10 +235,14 @@ function scheduleAppPageRscCacheWrite(options) {
|
|
|
204
235
|
}
|
|
205
236
|
const pageTags = options.getPageTags();
|
|
206
237
|
const observationState = options.consumeRenderObservationState?.() ?? createEmptyAppPageRenderObservationState();
|
|
207
|
-
const rscRenderObservation = options.createRscRenderObservation
|
|
238
|
+
const rscRenderObservation = options.createRscRenderObservation({
|
|
208
239
|
cacheTags: pageTags,
|
|
209
240
|
state: observationState
|
|
210
241
|
});
|
|
242
|
+
if (!hasQueryInvariantRenderProof(rscRenderObservation)) {
|
|
243
|
+
options.isrDebug?.("RSC cache write skipped (searchParams not proven unread)", rscKey);
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
211
246
|
await options.isrSet(rscKey, buildAppPageCacheValue("", rscData, 200, rscRenderObservation), {
|
|
212
247
|
cacheControl,
|
|
213
248
|
tags: pageTags
|
|
@@ -12,7 +12,7 @@ type AppPageCacheRoute = {
|
|
|
12
12
|
pattern: string;
|
|
13
13
|
routeSegments: readonly string[];
|
|
14
14
|
};
|
|
15
|
-
type RenderAppPageCacheArtifactsOptions = {
|
|
15
|
+
export type RenderAppPageCacheArtifactsOptions = {
|
|
16
16
|
basePath?: string;
|
|
17
17
|
captureRscData: boolean;
|
|
18
18
|
cleanPathname: string;
|
|
@@ -25,7 +25,9 @@ type RenderAppPageCacheArtifactsOptions = {
|
|
|
25
25
|
loadSsrHandler: () => Promise<AppPageSsrHandler>;
|
|
26
26
|
mountedSlotsHeader?: string | null;
|
|
27
27
|
navigationParams: Record<string, unknown>;
|
|
28
|
+
isCapturedRscError?: (error: unknown) => boolean;
|
|
28
29
|
onError: (error: unknown, requestInfo: unknown, errorContext: unknown) => unknown;
|
|
30
|
+
onSsrError?: (error: unknown) => unknown;
|
|
29
31
|
reactMaxHeadersLength?: number;
|
|
30
32
|
renderToReadableStream: (element: AppPageRenderableElement, options: {
|
|
31
33
|
onError: (error: unknown, requestInfo: unknown, errorContext: unknown) => unknown;
|
|
@@ -35,7 +37,7 @@ type RenderAppPageCacheArtifactsOptions = {
|
|
|
35
37
|
waitForAllReady?: boolean;
|
|
36
38
|
isForceStatic?: boolean;
|
|
37
39
|
};
|
|
38
|
-
type RenderAppPageCacheArtifactsResult = {
|
|
40
|
+
export type RenderAppPageCacheArtifactsResult = {
|
|
39
41
|
cacheControl?: CacheControlMetadata;
|
|
40
42
|
html: string;
|
|
41
43
|
htmlRenderObservation: ReturnType<typeof createAppPageRenderObservation>;
|
|
@@ -43,6 +45,8 @@ type RenderAppPageCacheArtifactsResult = {
|
|
|
43
45
|
rscData?: ArrayBuffer;
|
|
44
46
|
rscRenderObservation?: ReturnType<typeof createAppPageRenderObservation>;
|
|
45
47
|
tags: string[];
|
|
48
|
+
/** The render used a dynamic API, so its output must not be stored. */
|
|
49
|
+
usedDynamicApi: boolean;
|
|
46
50
|
};
|
|
47
51
|
/**
|
|
48
52
|
* Render an App page element to HTML (and optionally its RSC payload) for cache
|
|
@@ -50,6 +54,5 @@ type RenderAppPageCacheArtifactsResult = {
|
|
|
50
54
|
* cache-tag construction used by both normal ISR revalidation and PPR fallback
|
|
51
55
|
* shell regeneration.
|
|
52
56
|
*/
|
|
53
|
-
declare function renderAppPageCacheArtifacts(options: RenderAppPageCacheArtifactsOptions): Promise<RenderAppPageCacheArtifactsResult>;
|
|
54
|
-
//#endregion
|
|
55
|
-
export { RenderAppPageCacheArtifactsOptions, RenderAppPageCacheArtifactsResult, renderAppPageCacheArtifacts };
|
|
57
|
+
export declare function renderAppPageCacheArtifacts(options: RenderAppPageCacheArtifactsOptions): Promise<RenderAppPageCacheArtifactsResult>;
|
|
58
|
+
//#endregion
|