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,21 +1,23 @@
|
|
|
1
|
+
import { VINEXT_PRERENDER_ROUTE_PARAMS_HEADER, VINEXT_PRERENDER_SECRET_HEADER, VINEXT_REVALIDATE_HOST_HEADER } from "../utils/protocol-headers.js";
|
|
2
|
+
import { assetPrefixPathname, isNextStaticPath } from "../utils/asset-prefix.js";
|
|
1
3
|
import { runWithExecutionContext } from "../shims/request-context.js";
|
|
2
4
|
import "./server-globals.js";
|
|
3
|
-
import
|
|
5
|
+
import "./app-rsc-vary.js";
|
|
4
6
|
import { VINEXT_CACHEABILITY_PROBE_QUERY_PARAM } from "./headers.js";
|
|
5
7
|
import { badRequestResponse, notFoundResponse, notFoundStaticAssetResponse } from "./http-error-responses.js";
|
|
6
8
|
import { isOpenRedirectShaped } from "./open-redirect.js";
|
|
7
9
|
import { cloneRequestWithHeaders, filterInternalHeaders } from "./request-pipeline.js";
|
|
8
10
|
import { getCdnCacheAdapter } from "../shims/cdn-cache.js";
|
|
9
11
|
import { applyCdnResponseIdentityHeaders, validateCdnRequest } from "./cache-control.js";
|
|
10
|
-
import { assetPrefixPathname, isNextStaticPath } from "../utils/asset-prefix.js";
|
|
11
12
|
import { getImageOptimizer, handleConfiguredImageOptimization, isImageOptimizationPath } from "./image-optimization.js";
|
|
13
|
+
import { traceFrameworkRequest } from "./request-tracing.js";
|
|
12
14
|
import { createStaticAssetRequest, finalizeMissingStaticAssetResponse, resolveStaticAssetSignal } from "./worker-utils.js";
|
|
13
15
|
import { readTrustedPrerenderRouteParams, serializePrerenderRouteParamsHeader } from "./prerender-route-params.js";
|
|
14
16
|
import { createWorkerRevalidationContext } from "./worker-revalidation-context.js";
|
|
15
17
|
import { createWorkerPrerenderDiscoveryContext, createWorkerPrerenderReadinessResponse } from "./worker-prerender-discovery.js";
|
|
16
|
-
import rscHandler, { __assetPrefix, __basePath, __cacheabilityManifest, __imageAllowedWidths, __imageConfig, __prerenderSecret } from "virtual:vinext-rsc-entry";
|
|
17
|
-
import { registerConfiguredCacheAdapters } from "virtual:vinext-cache-adapters";
|
|
18
18
|
import { registerConfiguredImageOptimizer } from "virtual:vinext-image-adapters";
|
|
19
|
+
import { registerConfiguredCacheAdapters } from "virtual:vinext-cache-adapters";
|
|
20
|
+
import rscHandler, { __assetPrefix, __basePath, __cacheabilityManifest, __ensureHybridPagesApplication, __ensureInstrumentation, __imageAllowedWidths, __imageConfig, __prerenderSecret } from "virtual:vinext-rsc-entry";
|
|
19
21
|
//#region src/server/app-router-entry.ts
|
|
20
22
|
const __workerBasePath = typeof __basePath === "string" ? __basePath : "";
|
|
21
23
|
const __workerAssetPathPrefix = assetPrefixPathname(typeof __assetPrefix === "string" ? __assetPrefix : "");
|
|
@@ -24,16 +26,34 @@ function isPotentialCompletedAdmissionRequest(request) {
|
|
|
24
26
|
if (request.headers.has("next-action") || request.headers.has("x-rsc-action")) return false;
|
|
25
27
|
return true;
|
|
26
28
|
}
|
|
27
|
-
var app_router_entry_default = {
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
var app_router_entry_default = {
|
|
30
|
+
__ensureInstrumentation,
|
|
31
|
+
async fetch(request, env, ctx) {
|
|
32
|
+
const handleFetch = async () => {
|
|
33
|
+
await __ensureInstrumentation();
|
|
34
|
+
const url = new URL(request.url);
|
|
35
|
+
return traceFrameworkRequest({
|
|
36
|
+
callback: async () => applyCdnResponseIdentityHeaders(await handleRequest(request, env, ctx), request),
|
|
37
|
+
getStatus: (response) => response?.status,
|
|
38
|
+
headers: request.headers,
|
|
39
|
+
isRsc: url.pathname.endsWith(".rsc") || request.headers.get("RSC") === "1",
|
|
40
|
+
method: request.method,
|
|
41
|
+
target: url.pathname + url.search
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
return ctx ? runWithExecutionContext(ctx, handleFetch) : handleFetch();
|
|
45
|
+
}
|
|
46
|
+
};
|
|
30
47
|
async function handleRequest(request, env, platformCtx) {
|
|
31
48
|
const requestCtx = platformCtx?.trustedRevalidateOrigin ? platformCtx : createWorkerRevalidationContext(platformCtx, (internalRequest, internalCtx) => handleRequest(internalRequest, env, internalCtx));
|
|
32
49
|
registerConfiguredCacheAdapters(env);
|
|
33
50
|
const cdnCacheAdapter = getCdnCacheAdapter();
|
|
34
51
|
let ctx = createWorkerPrerenderDiscoveryContext(requestCtx, request, __prerenderSecret);
|
|
35
52
|
const readinessResponse = createWorkerPrerenderReadinessResponse(ctx, request);
|
|
36
|
-
if (readinessResponse)
|
|
53
|
+
if (readinessResponse) {
|
|
54
|
+
if (readinessResponse.status === 204) await __ensureHybridPagesApplication();
|
|
55
|
+
return await validateCdnRequest(request) ?? readinessResponse;
|
|
56
|
+
}
|
|
37
57
|
let finalizeCacheabilityResponse;
|
|
38
58
|
if (request.headers.has("X-Vinext-Cacheability-Probe")) {
|
|
39
59
|
const cacheability = await import("./cacheability-request.js");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VINEXT_RSC_RENDER_MODE_HEADER, VINEXT_RSC_VARY_HEADER } from "./
|
|
1
|
+
import { VINEXT_RSC_RENDER_MODE_HEADER, VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
|
|
2
2
|
import { AppRscRenderMode } from "./app-rsc-render-mode.js";
|
|
3
3
|
import { AppRscStateFingerprintInput } from "./app-rsc-state-fingerprint.js";
|
|
4
4
|
//#region src/server/app-rsc-cache-busting.d.ts
|
|
@@ -8,10 +8,10 @@ import { AppRscStateFingerprintInput } from "./app-rsc-state-fingerprint.js";
|
|
|
8
8
|
* proxies; stripping them changes the server hash and turns stale URLs into
|
|
9
9
|
* repeated canonicalization redirects.
|
|
10
10
|
*/
|
|
11
|
-
declare const VINEXT_RSC_CACHE_BUSTING_SEARCH_PARAM = "_rsc";
|
|
12
|
-
declare const VINEXT_RSC_BUILD_ID_HEADER = "X-Vinext-RSC-Build-Id";
|
|
13
|
-
declare const VINEXT_RSC_COMPATIBILITY_ID_HEADER = "X-Vinext-RSC-Compatibility-Id";
|
|
14
|
-
declare const VINEXT_RSC_CONTENT_TYPE = "text/x-component";
|
|
11
|
+
export declare const VINEXT_RSC_CACHE_BUSTING_SEARCH_PARAM = "_rsc";
|
|
12
|
+
export declare const VINEXT_RSC_BUILD_ID_HEADER = "X-Vinext-RSC-Build-Id";
|
|
13
|
+
export declare const VINEXT_RSC_COMPATIBILITY_ID_HEADER = "X-Vinext-RSC-Compatibility-Id";
|
|
14
|
+
export declare const VINEXT_RSC_CONTENT_TYPE = "text/x-component";
|
|
15
15
|
type CreateRscRequestHeadersOptions = {
|
|
16
16
|
clientReuseManifestHeader?: string | null;
|
|
17
17
|
interceptionContext?: string | null;
|
|
@@ -32,18 +32,18 @@ type ResolveInvalidRscCacheBustingRequestOptions = {
|
|
|
32
32
|
isRscRequest: boolean;
|
|
33
33
|
request: Request;
|
|
34
34
|
};
|
|
35
|
-
declare function getVinextRscCompatibilityId(): string | null;
|
|
36
|
-
declare function applyRscCompatibilityIdHeader(headers: Headers, compatibilityId?: string | null | undefined, buildId?: string | null | undefined): void;
|
|
37
|
-
declare function applyRscDeploymentIdHeader(headers: Headers): void;
|
|
38
|
-
declare function isRscCompatibilityIdCompatible(responseCompatibilityId: string | null | undefined, clientCompatibilityId?: string | null | undefined): boolean;
|
|
35
|
+
export declare function getVinextRscCompatibilityId(): string | null;
|
|
36
|
+
export declare function applyRscCompatibilityIdHeader(headers: Headers, compatibilityId?: string | null | undefined, buildId?: string | null | undefined): void;
|
|
37
|
+
export declare function applyRscDeploymentIdHeader(headers: Headers): void;
|
|
38
|
+
export declare function isRscCompatibilityIdCompatible(responseCompatibilityId: string | null | undefined, clientCompatibilityId?: string | null | undefined): boolean;
|
|
39
39
|
type RscCompatibilityNavigationDecision = {
|
|
40
40
|
kind: "compatible";
|
|
41
41
|
} | {
|
|
42
42
|
hardNavigationTarget: string;
|
|
43
43
|
kind: "hard-navigate";
|
|
44
44
|
};
|
|
45
|
-
declare function resolveHardNavigationTargetFromRscResponse(responseUrl: string | null | undefined, currentHref: string, origin: string): string;
|
|
46
|
-
declare function resolveRscCompatibilityNavigationDecision(options: {
|
|
45
|
+
export declare function resolveHardNavigationTargetFromRscResponse(responseUrl: string | null | undefined, currentHref: string, origin: string): string;
|
|
46
|
+
export declare function resolveRscCompatibilityNavigationDecision(options: {
|
|
47
47
|
clientCompatibilityId?: string | null;
|
|
48
48
|
currentHref: string;
|
|
49
49
|
origin: string;
|
|
@@ -57,36 +57,43 @@ declare function resolveRscCompatibilityNavigationDecision(options: {
|
|
|
57
57
|
* built on this helper and the stripper can never disagree on which pairs
|
|
58
58
|
* count as `_rsc`, including encoded-key edge cases like `%5Frsc`.
|
|
59
59
|
*/
|
|
60
|
-
declare function hasRscCacheBustingSearchParam(url: URL): boolean;
|
|
61
|
-
declare function computeRscCacheBustingSearchParam(headers: Headers): Promise<string>;
|
|
62
|
-
declare function setRscCacheBustingSearchParam(url: URL, hash: string): void;
|
|
63
|
-
declare function stripRscCacheBustingSearchParam(url: URL): void;
|
|
60
|
+
export declare function hasRscCacheBustingSearchParam(url: URL): boolean;
|
|
61
|
+
export declare function computeRscCacheBustingSearchParam(headers: Headers): Promise<string>;
|
|
62
|
+
export declare function setRscCacheBustingSearchParam(url: URL, hash: string): void;
|
|
63
|
+
export declare function stripRscCacheBustingSearchParam(url: URL): void;
|
|
64
|
+
/**
|
|
65
|
+
* Reduce a URL's query to the one `_rsc` value that selects its representation.
|
|
66
|
+
* For RSC requests that is the value `resolveInvalidRscCacheBustingRequest`
|
|
67
|
+
* validated (the first pair), re-serialized; ignored duplicates and encodings
|
|
68
|
+
* are dropped. Other requests keep no `_rsc`, because it selects nothing there.
|
|
69
|
+
*/
|
|
70
|
+
export declare function keepOnlyValidatedRscCacheBustingSearchParam(url: URL, isRscRequest: boolean): void;
|
|
64
71
|
/**
|
|
65
72
|
* Remove a trailing `.rsc` suffix from a pathname. Returns the pathname
|
|
66
73
|
* unchanged when the suffix is absent.
|
|
67
74
|
*/
|
|
68
|
-
declare function stripRscSuffix(pathname: string): string;
|
|
69
|
-
declare function createCanonicalRscRequestHeaders(deploymentId?: string | null | undefined): Headers;
|
|
75
|
+
export declare function stripRscSuffix(pathname: string): string;
|
|
76
|
+
export declare function createCanonicalRscRequestHeaders(deploymentId?: string | null | undefined): Headers;
|
|
70
77
|
/** Headers for the deterministic loading-boundary prefetch representation. */
|
|
71
|
-
declare function createCanonicalLoadingShellRscRequestHeaders(deploymentId?: string | null | undefined): Headers;
|
|
72
|
-
declare function createRscRequestHeaders(options?: CreateRscRequestHeadersOptions): Headers;
|
|
78
|
+
export declare function createCanonicalLoadingShellRscRequestHeaders(deploymentId?: string | null | undefined): Headers;
|
|
79
|
+
export declare function createRscRequestHeaders(options?: CreateRscRequestHeadersOptions): Headers;
|
|
73
80
|
/**
|
|
74
81
|
* Convert a full, non-contextual navigation request to the definitive ISR RSC
|
|
75
82
|
* variant. Partial/intercepted/mounted-slot payloads remain contextual because
|
|
76
83
|
* their bytes can legitimately differ from the destination's full route.
|
|
77
84
|
*/
|
|
78
|
-
declare function canonicalizePrewarmableRscRequestHeaders(headers: Headers): boolean;
|
|
85
|
+
export declare function canonicalizePrewarmableRscRequestHeaders(headers: Headers): boolean;
|
|
79
86
|
/**
|
|
80
87
|
* Convert an ordinary loading-boundary prefetch to the shared loading-shell
|
|
81
88
|
* variant. The payload is selected by the three retained mode headers; visible
|
|
82
89
|
* router state is transport context and must not fragment the shared response.
|
|
83
90
|
*/
|
|
84
|
-
declare function canonicalizeLoadingShellRscRequestHeaders(headers: Headers): boolean;
|
|
85
|
-
declare function createRscRequestUrl(href: string, headers: Headers): Promise<string>;
|
|
91
|
+
export declare function canonicalizeLoadingShellRscRequestHeaders(headers: Headers): boolean;
|
|
92
|
+
export declare function createRscRequestUrl(href: string, headers: Headers): Promise<string>;
|
|
86
93
|
/** Build the definitive full-route RSC URL shared by prefetch and navigation. */
|
|
87
|
-
declare function createCanonicalRscRequestUrl(href: string): string;
|
|
88
|
-
declare function createServerActionRequestUrl(href: string): string;
|
|
89
|
-
declare function createRscRedirectLocation(location: string, request: Request): Promise<string>;
|
|
90
|
-
declare function resolveInvalidRscCacheBustingRequest(options: ResolveInvalidRscCacheBustingRequestOptions): Promise<Response | null>;
|
|
94
|
+
export declare function createCanonicalRscRequestUrl(href: string): string;
|
|
95
|
+
export declare function createServerActionRequestUrl(href: string): string;
|
|
96
|
+
export declare function createRscRedirectLocation(location: string, request: Request): Promise<string>;
|
|
97
|
+
export declare function resolveInvalidRscCacheBustingRequest(options: ResolveInvalidRscCacheBustingRequestOptions): Promise<Response | null>;
|
|
91
98
|
//#endregion
|
|
92
|
-
export {
|
|
99
|
+
export { VINEXT_RSC_RENDER_MODE_HEADER, VINEXT_RSC_VARY_HEADER };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NEXT_ROUTER_PREFETCH_HEADER, NEXT_ROUTER_SEGMENT_PREFETCH_HEADER, NEXT_ROUTER_STATE_TREE_HEADER, NEXT_URL_HEADER, VINEXT_INTERCEPTION_CONTEXT_HEADER, VINEXT_INTERCEPTION_ID_HEADER, VINEXT_MOUNTED_SLOTS_HEADER, VINEXT_RSC_RENDER_MODE_HEADER, VINEXT_RSC_STATE_FINGERPRINT_HEADER, VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
|
|
2
|
+
import { NEXTJS_DEPLOYMENT_ID_HEADER, VINEXT_CLIENT_REUSE_MANIFEST_HEADER } from "./headers.js";
|
|
2
3
|
import { fnv1a64 } from "../utils/hash.js";
|
|
3
4
|
import { APP_RSC_RENDER_MODE_PREFETCH_LOADING_SHELL, parseAppRscRenderMode } from "./app-rsc-render-mode.js";
|
|
4
5
|
import { applyDeploymentIdHeader, getDeploymentId } from "../utils/deployment-id.js";
|
|
@@ -136,6 +137,17 @@ function stripRscCacheBustingSearchParam(url) {
|
|
|
136
137
|
url.search = pairs.length > 0 ? `?${pairs.join("&")}` : "";
|
|
137
138
|
}
|
|
138
139
|
/**
|
|
140
|
+
* Reduce a URL's query to the one `_rsc` value that selects its representation.
|
|
141
|
+
* For RSC requests that is the value `resolveInvalidRscCacheBustingRequest`
|
|
142
|
+
* validated (the first pair), re-serialized; ignored duplicates and encodings
|
|
143
|
+
* are dropped. Other requests keep no `_rsc`, because it selects nothing there.
|
|
144
|
+
*/
|
|
145
|
+
function keepOnlyValidatedRscCacheBustingSearchParam(url, isRscRequest) {
|
|
146
|
+
const hash = isRscRequest ? url.searchParams.get(VINEXT_RSC_CACHE_BUSTING_SEARCH_PARAM) : null;
|
|
147
|
+
url.search = "";
|
|
148
|
+
if (hash !== null) setRscCacheBustingSearchParam(url, hash);
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
139
151
|
* Remove a trailing `.rsc` suffix from a pathname. Returns the pathname
|
|
140
152
|
* unchanged when the suffix is absent.
|
|
141
153
|
*/
|
|
@@ -297,4 +309,4 @@ async function resolveInvalidRscCacheBustingRequest(options) {
|
|
|
297
309
|
});
|
|
298
310
|
}
|
|
299
311
|
//#endregion
|
|
300
|
-
export { VINEXT_RSC_BUILD_ID_HEADER, VINEXT_RSC_CACHE_BUSTING_SEARCH_PARAM, VINEXT_RSC_COMPATIBILITY_ID_HEADER, VINEXT_RSC_CONTENT_TYPE, VINEXT_RSC_RENDER_MODE_HEADER, VINEXT_RSC_VARY_HEADER, applyRscCompatibilityIdHeader, applyRscDeploymentIdHeader, canonicalizeLoadingShellRscRequestHeaders, canonicalizePrewarmableRscRequestHeaders, computeRscCacheBustingSearchParam, createCanonicalLoadingShellRscRequestHeaders, createCanonicalRscRequestHeaders, createCanonicalRscRequestUrl, createRscRedirectLocation, createRscRequestHeaders, createRscRequestUrl, createServerActionRequestUrl, getVinextRscCompatibilityId, hasRscCacheBustingSearchParam, isRscCompatibilityIdCompatible, resolveHardNavigationTargetFromRscResponse, resolveInvalidRscCacheBustingRequest, resolveRscCompatibilityNavigationDecision, setRscCacheBustingSearchParam, stripRscCacheBustingSearchParam, stripRscSuffix };
|
|
312
|
+
export { VINEXT_RSC_BUILD_ID_HEADER, VINEXT_RSC_CACHE_BUSTING_SEARCH_PARAM, VINEXT_RSC_COMPATIBILITY_ID_HEADER, VINEXT_RSC_CONTENT_TYPE, VINEXT_RSC_RENDER_MODE_HEADER, VINEXT_RSC_VARY_HEADER, applyRscCompatibilityIdHeader, applyRscDeploymentIdHeader, canonicalizeLoadingShellRscRequestHeaders, canonicalizePrewarmableRscRequestHeaders, computeRscCacheBustingSearchParam, createCanonicalLoadingShellRscRequestHeaders, createCanonicalRscRequestHeaders, createCanonicalRscRequestUrl, createRscRedirectLocation, createRscRequestHeaders, createRscRequestUrl, createServerActionRequestUrl, getVinextRscCompatibilityId, hasRscCacheBustingSearchParam, isRscCompatibilityIdCompatible, keepOnlyValidatedRscCacheBustingSearchParam, resolveHardNavigationTargetFromRscResponse, resolveInvalidRscCacheBustingRequest, resolveRscCompatibilityNavigationDecision, setRscCacheBustingSearchParam, stripRscCacheBustingSearchParam, stripRscSuffix };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { VinextResponseStageDispatchOptions } from "./multi-stage.js";
|
|
2
|
+
import { AppWorkerResponseStageProps } from "./app-worker-stages.js";
|
|
3
|
+
import { AppRscHandlerRoute, AppRscRequestHandler, CreateAppRscHandlerOptions } from "./app-rsc-handler.js";
|
|
4
|
+
//#region src/server/app-rsc-combined-handler.d.ts
|
|
5
|
+
export type AppRscHandler = AppRscRequestHandler & {
|
|
6
|
+
handleResponseStage(request: Request, ctx: unknown, props: AppWorkerResponseStageProps, options?: VinextResponseStageDispatchOptions): Promise<Response>;
|
|
7
|
+
};
|
|
8
|
+
export declare function createAppRscHandler<TRoute extends AppRscHandlerRoute>(options: CreateAppRscHandlerOptions<TRoute>): AppRscHandler;
|
|
9
|
+
//#endregion
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createAppRscRequestHandler } from "./app-rsc-handler.js";
|
|
2
|
+
//#region src/server/app-rsc-combined-handler.ts
|
|
3
|
+
/** Combined request/response handler used by default single-stage App entries. */
|
|
4
|
+
function createAppRscHandler(options) {
|
|
5
|
+
const appRscHandler = createAppRscRequestHandler(options);
|
|
6
|
+
return Object.assign(appRscHandler, { handleResponseStage(request, ctx, props, stageOptions) {
|
|
7
|
+
return import("./app-rsc-response-stage.js").then(({ renderAppWorkerResponseStage }) => renderAppWorkerResponseStage(options, request, ctx, props, stageOptions));
|
|
8
|
+
} });
|
|
9
|
+
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { createAppRscHandler };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
//#region src/server/app-rsc-embedded-chunks.d.ts
|
|
2
|
-
declare const RSC_EMBEDDED_BINARY_CHUNK = 3;
|
|
3
|
-
type RscEmbeddedChunk = string | [typeof RSC_EMBEDDED_BINARY_CHUNK, string];
|
|
4
|
-
declare function bytesToBase64(bytes: Uint8Array): string;
|
|
5
|
-
declare function decodeRscEmbeddedChunk(chunk: RscEmbeddedChunk): Uint8Array;
|
|
6
|
-
declare function concatUint8Arrays(chunks: readonly Uint8Array[]): Uint8Array<ArrayBuffer>;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { RSC_EMBEDDED_BINARY_CHUNK, RscEmbeddedChunk, bytesToBase64, concatUint8Arrays, decodeRscEmbeddedChunk };
|
|
2
|
+
export declare const RSC_EMBEDDED_BINARY_CHUNK = 3;
|
|
3
|
+
export type RscEmbeddedChunk = string | [typeof RSC_EMBEDDED_BINARY_CHUNK, string];
|
|
4
|
+
export declare function bytesToBase64(bytes: Uint8Array): string;
|
|
5
|
+
export declare function decodeRscEmbeddedChunk(chunk: RscEmbeddedChunk): Uint8Array;
|
|
6
|
+
export declare function concatUint8Arrays(chunks: readonly Uint8Array[]): Uint8Array<ArrayBuffer>;
|
|
7
|
+
//#endregion
|
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
//#region src/server/app-rsc-error-handler.d.ts
|
|
2
|
-
type ReportRequestError = (error:
|
|
2
|
+
type ReportRequestError = (error: unknown, requestInfo: {
|
|
3
3
|
path: string;
|
|
4
4
|
method: string;
|
|
5
5
|
headers: Record<string, string>;
|
|
6
6
|
}, errorContext: {
|
|
7
7
|
routerKind: "App Router";
|
|
8
8
|
routePath: string;
|
|
9
|
-
routeType: "render";
|
|
10
|
-
|
|
9
|
+
routeType: "render" | "action";
|
|
10
|
+
renderSource?: "react-server-components" | "react-server-components-payload" | "server-rendering";
|
|
11
|
+
revalidateReason: "on-demand" | "stale" | undefined;
|
|
12
|
+
}) => void | Promise<void>;
|
|
13
|
+
export type AppRenderErrorContextOverrides = {
|
|
14
|
+
renderSource?: "react-server-components" | "react-server-components-payload" | "server-rendering";
|
|
15
|
+
revalidateReason?: "on-demand" | "stale";
|
|
16
|
+
routeType?: "render" | "action";
|
|
17
|
+
};
|
|
11
18
|
/**
|
|
12
19
|
* Build a per-request RSC error handler that extracts request metadata from
|
|
13
20
|
* the incoming Web `Request`, wires it into a `createRscOnErrorHandler` call,
|
|
@@ -15,6 +22,5 @@ type ReportRequestError = (error: Error, requestInfo: {
|
|
|
15
22
|
*
|
|
16
23
|
* Pure factory: takes all deps explicitly — no closure over module-level state.
|
|
17
24
|
*/
|
|
18
|
-
declare function createAppRscOnErrorHandler(reportRequestError: ReportRequestError, request: Request, pathname: string, routePath: string): (error: unknown) => string | undefined;
|
|
19
|
-
//#endregion
|
|
20
|
-
export { createAppRscOnErrorHandler };
|
|
25
|
+
export declare function createAppRscOnErrorHandler(reportRequestError: ReportRequestError, request: Request, pathname: string, routePath: string, overrides?: AppRenderErrorContextOverrides): (error: unknown) => string | undefined;
|
|
26
|
+
//#endregion
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import "../utils/protocol-headers.js";
|
|
2
|
+
import "./app-rsc-vary.js";
|
|
3
|
+
import { isOnDemandRevalidateRequest } from "./revalidation-request.js";
|
|
1
4
|
import { createRscOnErrorHandler } from "./app-rsc-errors.js";
|
|
2
5
|
//#region src/server/app-rsc-error-handler.ts
|
|
3
6
|
/**
|
|
@@ -7,20 +10,26 @@ import { createRscOnErrorHandler } from "./app-rsc-errors.js";
|
|
|
7
10
|
*
|
|
8
11
|
* Pure factory: takes all deps explicitly — no closure over module-level state.
|
|
9
12
|
*/
|
|
10
|
-
function createAppRscOnErrorHandler(reportRequestError, request, pathname, routePath) {
|
|
13
|
+
function createAppRscOnErrorHandler(reportRequestError, request, pathname, routePath, overrides) {
|
|
11
14
|
const requestHeaders = Object.fromEntries(request.headers.entries());
|
|
12
15
|
const requestInfo = {
|
|
13
16
|
path: pathname,
|
|
14
17
|
method: request.method,
|
|
15
18
|
headers: requestHeaders
|
|
16
19
|
};
|
|
20
|
+
const errorContext = {
|
|
21
|
+
routerKind: "App Router",
|
|
22
|
+
routePath: routePath || pathname,
|
|
23
|
+
routeType: overrides?.routeType ?? "render",
|
|
24
|
+
renderSource: overrides?.renderSource ?? (request.headers.get("RSC") === "1" || new URL(request.url).pathname.endsWith(".rsc") ? "react-server-components-payload" : "react-server-components"),
|
|
25
|
+
revalidateReason: isOnDemandRevalidateRequest(request.headers.get("x-prerender-revalidate")) ? "on-demand" : overrides?.revalidateReason
|
|
26
|
+
};
|
|
17
27
|
return createRscOnErrorHandler({
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
28
|
+
attachDigest: errorContext.renderSource !== "server-rendering",
|
|
29
|
+
errorContext,
|
|
30
|
+
reportRequestError(error, info, context) {
|
|
31
|
+
reportRequestError(error, info, context);
|
|
22
32
|
},
|
|
23
|
-
reportRequestError,
|
|
24
33
|
requestInfo
|
|
25
34
|
});
|
|
26
35
|
}
|
|
@@ -7,18 +7,22 @@ type RscRequestInfo = {
|
|
|
7
7
|
type RscErrorContext = {
|
|
8
8
|
routerKind: "App Router";
|
|
9
9
|
routePath: string;
|
|
10
|
-
routeType: "render";
|
|
10
|
+
routeType: "render" | "action";
|
|
11
|
+
renderSource?: "react-server-components" | "react-server-components-payload" | "server-rendering";
|
|
12
|
+
revalidateReason: "on-demand" | "stale" | undefined;
|
|
11
13
|
};
|
|
12
|
-
type RscErrorReporter = (error:
|
|
14
|
+
type RscErrorReporter = (error: unknown, requestInfo: RscRequestInfo, errorContext: RscErrorContext) => void;
|
|
13
15
|
type CreateRscOnErrorHandlerOptions = {
|
|
16
|
+
attachDigest?: boolean;
|
|
14
17
|
errorContext: RscErrorContext | null;
|
|
15
18
|
nodeEnv?: string;
|
|
16
19
|
reportRequestError: RscErrorReporter;
|
|
17
20
|
requestInfo: RscRequestInfo | null;
|
|
18
21
|
};
|
|
19
|
-
declare function hasDigest(error: unknown): error is {
|
|
22
|
+
export declare function hasDigest(error: unknown): error is {
|
|
20
23
|
digest: unknown;
|
|
21
24
|
};
|
|
25
|
+
export declare function isAppRenderAbortError(error: unknown): boolean;
|
|
22
26
|
/**
|
|
23
27
|
* vinext's mirror of Next.js's `getDigestForWellKnownError`: returns the digest
|
|
24
28
|
* string only when the error is a genuine control-flow signal — a redirect,
|
|
@@ -29,12 +33,11 @@ declare function hasDigest(error: unknown): error is {
|
|
|
29
33
|
* presence of a `digest` field is NOT enough — that conflation swallowed a class
|
|
30
34
|
* of server render errors with no instrumentation/telemetry.
|
|
31
35
|
*/
|
|
32
|
-
declare function getDigestForWellKnownError(error: unknown): string | undefined;
|
|
36
|
+
export declare function getDigestForWellKnownError(error: unknown): string | undefined;
|
|
33
37
|
/**
|
|
34
38
|
* djb2 hash matching Next.js's string-hash package for RSC error digests.
|
|
35
39
|
*/
|
|
36
|
-
declare function errorDigest(input: string): string;
|
|
37
|
-
declare function sanitizeErrorForClient(error: unknown, nodeEnv?: "development" | "production" | "test"): unknown;
|
|
38
|
-
declare function createRscOnErrorHandler(options: CreateRscOnErrorHandlerOptions): (error: unknown) => string | undefined;
|
|
39
|
-
//#endregion
|
|
40
|
-
export { createRscOnErrorHandler, errorDigest, getDigestForWellKnownError, hasDigest, sanitizeErrorForClient };
|
|
40
|
+
export declare function errorDigest(input: string): string;
|
|
41
|
+
export declare function sanitizeErrorForClient(error: unknown, nodeEnv?: "development" | "production" | "test"): unknown;
|
|
42
|
+
export declare function createRscOnErrorHandler(options: CreateRscOnErrorHandlerOptions): (error: unknown) => string | undefined;
|
|
43
|
+
//#endregion
|
|
@@ -7,7 +7,7 @@ function hasDigest(error) {
|
|
|
7
7
|
}
|
|
8
8
|
const BAILOUT_TO_CSR_DIGEST = "BAILOUT_TO_CLIENT_SIDE_RENDERING";
|
|
9
9
|
const DYNAMIC_SERVER_USAGE_DIGEST = "DYNAMIC_SERVER_USAGE";
|
|
10
|
-
function
|
|
10
|
+
function isAppRenderAbortError(error) {
|
|
11
11
|
if (!error || typeof error !== "object") return false;
|
|
12
12
|
const name = Reflect.get(error, "name");
|
|
13
13
|
return name === "AbortError" || name === "ResponseAborted";
|
|
@@ -55,27 +55,29 @@ function sanitizeErrorForClient(error, nodeEnv = process.env.NODE_ENV) {
|
|
|
55
55
|
return sanitized;
|
|
56
56
|
}
|
|
57
57
|
function createRscOnErrorHandler(options) {
|
|
58
|
+
let loggedPrerenderErrors;
|
|
58
59
|
return (error) => {
|
|
59
60
|
const nodeEnv = options.nodeEnv ?? process.env.NODE_ENV;
|
|
60
|
-
|
|
61
|
-
|
|
61
|
+
const reportableError = error && typeof error === "object" && ORIGINAL_SERVER_ERROR in error ? Reflect.get(error, ORIGINAL_SERVER_ERROR) : error;
|
|
62
|
+
if (isAppRenderAbortError(error) || isAppRenderAbortError(reportableError)) return;
|
|
63
|
+
const wellKnownDigest = getDigestForWellKnownError(error) ?? getDigestForWellKnownError(reportableError);
|
|
62
64
|
if (wellKnownDigest !== void 0) return wellKnownDigest;
|
|
63
65
|
if (nodeEnv !== "production" && error instanceof Error && error.message.includes("Only plain objects, and a few built-ins, can be passed to Client Components")) {
|
|
64
66
|
console.error("[vinext] RSC serialization error: a non-plain object was passed from a Server Component to a Client Component.\n\nCommon causes:\n * Passing a module namespace (import * as X) directly as a prop.\n Unlike Next.js (webpack), Vite produces real ESM module namespace objects\n which are not serializable. Fix: pass individual values instead,\n e.g. <Comp value={module.value} />\n * Passing a class instance (new Foo()) as a prop.\n Fix: convert to a plain object, e.g. { id: foo.id, name: foo.name }\n * Passing a Date, Map, or Set. Use .toISOString(), [...map.entries()], etc.\n * Passing Object.create(null). Use { ...obj } to restore a prototype.\n\nOriginal error:", error.message);
|
|
65
67
|
return;
|
|
66
68
|
}
|
|
67
|
-
if (options.requestInfo && options.errorContext && error)
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
69
|
+
if (options.requestInfo && options.errorContext && error) options.reportRequestError(reportableError, options.requestInfo, options.errorContext);
|
|
70
|
+
if (process.env.VINEXT_PRERENDER === "1" && error) {
|
|
71
|
+
if (!loggedPrerenderErrors?.has(reportableError)) {
|
|
72
|
+
(loggedPrerenderErrors ??= /* @__PURE__ */ new Set()).add(reportableError);
|
|
73
|
+
const route = options.requestInfo?.path ?? options.errorContext?.routePath ?? "<unknown>";
|
|
74
|
+
console.error(`[vinext] Error prerendering route ${JSON.stringify(route)}:`, reportableError);
|
|
75
|
+
}
|
|
76
|
+
} else if (nodeEnv !== "production" && error && !hasDigest(error)) console.error("[vinext] Server render error:", reportableError);
|
|
75
77
|
if (hasDigest(error)) return String(error.digest);
|
|
76
78
|
if (error) {
|
|
77
79
|
const digest = errorDigest(getThrownValueMessage(error) + getThrownValueStack(error));
|
|
78
|
-
if (error instanceof Error) try {
|
|
80
|
+
if (options.attachDigest !== false && error instanceof Error) try {
|
|
79
81
|
Object.assign(error, { digest });
|
|
80
82
|
} catch {}
|
|
81
83
|
return digest;
|
|
@@ -83,4 +85,4 @@ function createRscOnErrorHandler(options) {
|
|
|
83
85
|
};
|
|
84
86
|
}
|
|
85
87
|
//#endregion
|
|
86
|
-
export { createRscOnErrorHandler, errorDigest, getDigestForWellKnownError, hasDigest, sanitizeErrorForClient };
|
|
88
|
+
export { createRscOnErrorHandler, errorDigest, getDigestForWellKnownError, hasDigest, isAppRenderAbortError, sanitizeErrorForClient };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { VinextCacheabilityProbeMode } from "./multi-stage.js";
|
|
1
2
|
import { NextHeader, NextI18nConfig, NextRedirect, NextRewrite } from "../config/next-config.js";
|
|
2
3
|
import { ImageConfig } from "./image-optimization.js";
|
|
3
4
|
import { AppMiddlewareContext, ApplyAppMiddlewareResult } from "./app-middleware.js";
|
|
@@ -6,7 +7,10 @@ import { AppRscRenderMode } from "./app-rsc-render-mode.js";
|
|
|
6
7
|
import { RootParams } from "../shims/root-params.js";
|
|
7
8
|
import { AppPagePprFallbackCacheShell } from "./app-ppr-fallback-shell.js";
|
|
8
9
|
import { AppPrerenderRootParamNamesMap, AppPrerenderStaticParamsMap } from "./app-prerender-endpoints.js";
|
|
10
|
+
import { PagesRouteDataKind } from "./pages-route-data-kind.js";
|
|
11
|
+
import { TrustedPrerenderState } from "./prerender-route-params.js";
|
|
9
12
|
import { AppRouteTreePrefetchRoute, PrefetchInliningConfig } from "./app-route-tree-prefetch.js";
|
|
13
|
+
import { DispatchAppWorkerResponseStage, RenderAppWorkerResponseStageLocally } from "./app-worker-stages.js";
|
|
10
14
|
import { ReactFormState } from "react-dom/client";
|
|
11
15
|
//#region src/server/app-rsc-handler.d.ts
|
|
12
16
|
type AppPageParams = Record<string, string | string[]>;
|
|
@@ -23,9 +27,11 @@ type RunAppMiddlewareOptions = {
|
|
|
23
27
|
request: Request;
|
|
24
28
|
validateExternalRewriteRequest: () => Promise<Response | null>;
|
|
25
29
|
};
|
|
26
|
-
type AppRscHandlerRoute = {
|
|
30
|
+
export type AppRscHandlerRoute = {
|
|
27
31
|
__loadPage?: unknown;
|
|
28
32
|
__loadRouteHandler?: unknown;
|
|
33
|
+
canUseCanonicalLoadingShell?: boolean;
|
|
34
|
+
forceDynamic?: boolean;
|
|
29
35
|
isDynamic: boolean;
|
|
30
36
|
layouts?: readonly unknown[];
|
|
31
37
|
layoutTreePositions?: readonly number[];
|
|
@@ -44,6 +50,7 @@ type AppRscRouteMatch<TRoute> = {
|
|
|
44
50
|
};
|
|
45
51
|
type DispatchMatchedPageOptions<TRoute> = {
|
|
46
52
|
bypassInterceptionContextCache: boolean;
|
|
53
|
+
cachePathname: string;
|
|
47
54
|
clientReuseManifest: ClientReuseManifestParseResult;
|
|
48
55
|
cleanPathname: string;
|
|
49
56
|
displayPathname: string;
|
|
@@ -80,6 +87,12 @@ type DispatchMatchedPageOptions<TRoute> = {
|
|
|
80
87
|
renderMode: AppRscRenderMode;
|
|
81
88
|
};
|
|
82
89
|
type DispatchMatchedRouteHandlerOptions<TRoute> = {
|
|
90
|
+
/**
|
|
91
|
+
* Legacy transported cache-bypass bit. Also covers request/cache route-identity
|
|
92
|
+
* divergence so the response cannot be published under another route's key.
|
|
93
|
+
*/
|
|
94
|
+
bypassInterceptionContextCache: boolean;
|
|
95
|
+
cachePathname: string;
|
|
83
96
|
cleanPathname: string;
|
|
84
97
|
middlewareContext: AppRscMiddlewareContext;
|
|
85
98
|
/**
|
|
@@ -154,8 +167,10 @@ type RenderPagesFallbackOptions = {
|
|
|
154
167
|
pattern: string;
|
|
155
168
|
};
|
|
156
169
|
} | null;
|
|
170
|
+
dispatchPagesResponseStage?: (request: Request, resourceKind: "api" | "page", dataKind?: PagesRouteDataKind, hasRequestAwareDocument?: boolean) => Promise<Response>;
|
|
157
171
|
isDataRequest?: boolean;
|
|
158
172
|
isRscRequest: boolean;
|
|
173
|
+
initialResponseHeaders?: Headers;
|
|
159
174
|
matchKind?: "dynamic" | "static";
|
|
160
175
|
middlewareContext: AppRscMiddlewareContext;
|
|
161
176
|
pathname?: string;
|
|
@@ -168,9 +183,15 @@ type NavigationContextValue = {
|
|
|
168
183
|
pathname: string;
|
|
169
184
|
searchParams: URLSearchParams;
|
|
170
185
|
};
|
|
171
|
-
type CreateAppRscHandlerOptions<TRoute extends AppRscHandlerRoute> = {
|
|
186
|
+
export type CreateAppRscHandlerOptions<TRoute extends AppRscHandlerRoute> = {
|
|
172
187
|
basePath: string;
|
|
173
188
|
buildId: string | null;
|
|
189
|
+
/**
|
|
190
|
+
* Serialized request-stage projection of the Workers Cache manifest. Shared
|
|
191
|
+
* App page dispatches whose manifest state is `static-candidate` drop the
|
|
192
|
+
* user query. Null outside a `vinext deploy` artifact.
|
|
193
|
+
*/
|
|
194
|
+
cacheabilityRequestProjection?: string | null;
|
|
174
195
|
clearRequestContext: () => void;
|
|
175
196
|
configHeaders: NextHeader[];
|
|
176
197
|
configRedirects: NextRedirect[];
|
|
@@ -196,14 +217,17 @@ type CreateAppRscHandlerOptions<TRoute extends AppRscHandlerRoute> = {
|
|
|
196
217
|
* Node server and dev included, not just the Cloudflare worker entry.
|
|
197
218
|
*/
|
|
198
219
|
registerCacheAdapters: (env?: Record<string, unknown>) => void;
|
|
220
|
+
/** Request-only entries dynamically load the response graph for local bypasses. */
|
|
221
|
+
renderResponseStageLocally?: RenderAppWorkerResponseStageLocally;
|
|
199
222
|
handleProgressiveActionRequest?: (options: HandleProgressiveActionRequestOptions<TRoute>) => Promise<Response | ProgressiveActionFormStateResult | null>;
|
|
200
|
-
handleMetadataRouteRequest?: (cleanPathname: string) => Promise<Response | null>;
|
|
223
|
+
handleMetadataRouteRequest?: (cleanPathname: string, routePathname: string) => Promise<Response | null>;
|
|
201
224
|
isMetadataRoutePath?: (cleanPathname: string) => boolean | Promise<boolean>;
|
|
202
225
|
getPrerenderMetadataRoutePaths?: () => Promise<unknown>;
|
|
203
226
|
createPprFallbackShells?: (route: Pick<AppRscHandlerRoute, "params" | "pattern" | "rootParamNames">, params: AppPageParams) => AppPagePprFallbackCacheShell[];
|
|
204
227
|
handleServerActionRequest?: (options: HandleServerActionRequestOptions<TRoute>) => Promise<Response | null>;
|
|
205
228
|
i18nConfig: NextI18nConfig | null;
|
|
206
229
|
imageConfig?: ImageConfig;
|
|
230
|
+
isMetadataRoute?: (pathname: string) => boolean;
|
|
207
231
|
isDev: boolean;
|
|
208
232
|
hasInterceptionId: (interceptionId: string) => boolean;
|
|
209
233
|
loadPrerenderPagesRoutes?: () => Promise<unknown>;
|
|
@@ -221,6 +245,7 @@ type CreateAppRscHandlerOptions<TRoute extends AppRscHandlerRoute> = {
|
|
|
221
245
|
trailingSlash: boolean;
|
|
222
246
|
validateDevRequestOrigin?: (request: Request) => Response | null;
|
|
223
247
|
};
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
export
|
|
248
|
+
export type AppRscRequestHandler = (request: Request, ctx: unknown, allowInternalRscDocumentFallback?: boolean, dispatchResponseStage?: DispatchAppWorkerResponseStage, responseStageProbeMode?: VinextCacheabilityProbeMode | null, trustedPrerenderState?: TrustedPrerenderState | null) => Promise<Response>;
|
|
249
|
+
/** Build the request-only handler without retaining the response renderer graph. */
|
|
250
|
+
export declare function createAppRscRequestHandler<TRoute extends AppRscHandlerRoute>(options: CreateAppRscHandlerOptions<TRoute>): AppRscRequestHandler;
|
|
251
|
+
//#endregion
|