vinext 1.0.0-beta.9 → 1.0.1
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 +51 -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 +7 -14
- package/dist/build/precompress.d.ts +2 -3
- package/dist/build/precompress.js +1 -1
- 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 +274 -102
- 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 +73 -16
- package/dist/build/prerender.js +272 -80
- 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 +26 -16
- package/dist/build/server-entry.d.ts +6 -0
- package/dist/build/server-entry.js +34 -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/browser-globals.d.ts +4 -0
- package/dist/client/browser-globals.js +5 -0
- 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 +20 -17
- package/dist/client/navigation-runtime.js +4 -3
- 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 +14 -2
- 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 +503 -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 +848 -255
- package/dist/init-cloudflare.d.ts +26 -17
- package/dist/init-cloudflare.js +711 -103
- 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 +126 -42
- 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/commonjs-syntax.d.ts +16 -0
- package/dist/plugins/commonjs-syntax.js +22 -0
- 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 +14 -4
- package/dist/plugins/ignore-dynamic-requests.js +113 -91
- package/dist/plugins/import-meta-url.d.ts +6 -7
- package/dist/plugins/import-meta-url.js +36 -48
- 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 +5 -4
- package/dist/plugins/og-asset-ownership.js +24 -13
- package/dist/plugins/og-assets.d.ts +22 -5
- package/dist/plugins/og-assets.js +82 -21
- package/dist/plugins/og-harfbuzz.d.ts +24 -0
- package/dist/plugins/og-harfbuzz.js +271 -0
- package/dist/plugins/optimize-imports.d.ts +7 -7
- package/dist/plugins/optimize-imports.js +34 -45
- 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 +3 -3
- package/dist/plugins/require-context.js +41 -22
- 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/scan-build-css.d.ts +12 -0
- package/dist/plugins/scan-build-css.js +39 -0
- package/dist/plugins/server-externals-manifest.d.ts +2 -3
- package/dist/plugins/strip-server-exports.d.ts +7 -6
- package/dist/plugins/strip-server-exports.js +4 -2
- 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 +21 -4
- package/dist/plugins/transform-result.js +23 -2
- package/dist/plugins/transitive-externals.d.ts +2 -3
- package/dist/plugins/typeof-window.d.ts +16 -7
- package/dist/plugins/typeof-window.js +62 -39
- 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 +18 -19
- package/dist/routing/app-route-graph.js +5 -6
- package/dist/routing/app-route-ids.d.ts +3 -0
- package/dist/routing/app-route-ids.js +6 -0
- 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 +4 -4
- package/dist/server/app-bfcache-id.js +7 -1
- package/dist/server/app-bfcache-identity.d.ts +8 -9
- package/dist/server/app-bfcache-identity.js +1 -2
- 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 +91 -36
- 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 +15 -2
- 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 +9 -5
- 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 +7 -3
- package/dist/server/app-browser-stream.d.ts +5 -6
- 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 +25 -27
- package/dist/server/app-history-state.js +21 -16
- 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 -4
- 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 -24
- 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 +43 -7
- 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 +50 -0
- package/dist/server/app-pages-bridge.d.ts +6 -6
- package/dist/server/app-pages-bridge.js +18 -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-abort-error.d.ts +3 -0
- package/dist/server/app-render-abort-error.js +8 -0
- 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 +112 -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 +4 -4
- package/dist/server/app-route-handler-cache.js +51 -35
- package/dist/server/app-route-handler-dispatch.d.ts +3 -3
- package/dist/server/app-route-handler-dispatch.js +77 -56
- package/dist/server/app-route-handler-execution.d.ts +26 -14
- package/dist/server/app-route-handler-execution.js +94 -28
- 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-policy.js +2 -2
- package/dist/server/app-route-handler-response.d.ts +9 -10
- package/dist/server/app-route-handler-response.js +14 -3
- 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 +4 -1
- package/dist/server/app-router-entry.js +33 -17
- 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 +11 -9
- package/dist/server/app-rsc-errors.js +14 -16
- package/dist/server/app-rsc-handler.d.ts +32 -6
- package/dist/server/app-rsc-handler.js +425 -64
- 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 +5 -3
- package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
- package/dist/server/app-rsc-response-finalizer.js +10 -7
- 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 +18 -13
- 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 +62 -15
- 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 +34 -8
- 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 +64 -6
- 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 +192 -90
- 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 +141 -64
- 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 +56 -61
- package/dist/server/headers.js +22 -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-error-responses.js +1 -0
- 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 +30 -27
- package/dist/server/isr-cache.js +23 -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-response.d.ts +7 -7
- package/dist/server/metadata-route-response.js +158 -35
- 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 +28 -9
- package/dist/server/pages-asset-tags.d.ts +7 -6
- package/dist/server/pages-asset-tags.js +104 -18
- 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 +13 -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 +23 -19
- package/dist/server/pages-page-data.js +82 -75
- package/dist/server/pages-page-handler.d.ts +7 -6
- package/dist/server/pages-page-handler.js +103 -47
- 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 +52 -32
- 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 +15 -12
- package/dist/server/pages-request-pipeline.js +80 -35
- package/dist/server/pages-request-stage-entry.d.ts +23 -0
- package/dist/server/pages-request-stage-entry.js +316 -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 +17 -11
- package/dist/server/prerender-manifest.js +7 -4
- 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 +127 -44
- 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 +4 -4
- package/dist/server/worker-revalidation-context.js +6 -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 +34 -0
- package/dist/server/workers-tracing.js +67 -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 +26 -38
- package/dist/shims/cache-request-state.js +2 -13
- package/dist/shims/cache-runtime.d.ts +23 -21
- package/dist/shims/cache-runtime.js +110 -28
- package/dist/shims/cache.d.ts +17 -16
- package/dist/shims/cache.js +19 -15
- package/dist/shims/cacheability-classification.d.ts +50 -29
- package/dist/shims/cacheability-classification.js +29 -14
- 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 +59 -21
- package/dist/shims/cdn-cache.js +31 -47
- 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 +5 -19
- package/dist/shims/error.js +17 -10
- package/dist/shims/error.react-server.d.ts +4 -7
- package/dist/shims/error.react-server.js +4 -1
- package/dist/shims/fetch-cache.d.ts +22 -22
- package/dist/shims/fetch-cache.js +46 -20
- 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 +44 -73
- package/dist/shims/headers.js +87 -144
- 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/cache-context-accessor.d.ts +16 -0
- package/dist/shims/internal/cache-context-accessor.js +15 -0
- 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/headers-state.d.ts +74 -0
- package/dist/shims/internal/headers-state.js +157 -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 +26 -18
- 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/request-state-types.d.ts +2 -1
- package/dist/shims/root-params.d.ts +14 -15
- package/dist/shims/root-params.js +1 -1
- 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 +66 -30
- 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 +35 -32
- 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 +4 -4
- package/dist/utils/encode-cache-tag.js +11 -1
- 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 +151 -0
- package/dist/utils/vite-version.d.ts +5 -6
- package/next-package.json +4 -0
- package/package.json +51 -6
- package/dist/server/metadata-route-cache-policy.d.ts +0 -6
- package/dist/server/metadata-route-cache-policy.js +0 -6
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { closeAfterResponse, createRequestContext, runWithRequestContext } from "../shims/unified-request-context.js";
|
|
2
2
|
import { createValidFileMatcher, findFileWithExts } from "../routing/file-matcher.js";
|
|
3
|
+
import { isBotUserAgent } from "../utils/html-limited-bots.js";
|
|
4
|
+
import { PRERENDER_REVALIDATE_HEADER } from "../utils/protocol-headers.js";
|
|
5
|
+
import { sanitizeDestination } from "../config/config-matchers.js";
|
|
3
6
|
import { patternToNextFormat } from "../routing/route-validation.js";
|
|
4
7
|
import { matchRoute } from "../routing/pages-router.js";
|
|
5
|
-
import { PRERENDER_REVALIDATE_HEADER } from "../utils/protocol-headers.js";
|
|
6
8
|
import { NEXTJS_CACHE_HEADER, NEXTJS_DEPLOYMENT_ID_HEADER } from "./headers.js";
|
|
7
9
|
import { isDangerousScheme } from "../shims/url-safety.js";
|
|
8
|
-
import { sanitizeDestination } from "../config/config-matchers.js";
|
|
9
10
|
import { extractLocaleFromUrl as extractLocaleFromUrl$1, resolvePagesI18nRequest } from "./pages-i18n.js";
|
|
10
11
|
import { importModule, reportRequestError } from "./instrumentation.js";
|
|
11
12
|
import { NEVER_CACHE_CONTROL } from "./cache-control.js";
|
|
12
13
|
import { buildMissIsrCacheControl } from "./isr-decision.js";
|
|
13
|
-
import { isOnDemandRevalidateRequest } from "./
|
|
14
|
+
import { isOnDemandRevalidateRequest } from "./revalidation-request.js";
|
|
15
|
+
import "./isr-cache.js";
|
|
14
16
|
import { ensureFetchPatch } from "../shims/fetch-cache.js";
|
|
15
17
|
import { mergeRouteParamsIntoQuery, parseQueryString } from "../utils/query.js";
|
|
16
18
|
import "../shims/router-state.js";
|
|
@@ -25,9 +27,9 @@ import { buildPagesReadinessNextData } from "./pages-readiness.js";
|
|
|
25
27
|
import { resolvePagesPageMethodResponse } from "./pages-page-method.js";
|
|
26
28
|
import { loadUserDocumentInitialProps, runDocumentRenderPage } from "./pages-document-initial-props.js";
|
|
27
29
|
import { callDocumentGetInitialProps } from "./document-initial-head.js";
|
|
28
|
-
import { isBotUserAgent } from "../utils/html-limited-bots.js";
|
|
29
30
|
import { hasPagesGetInitialProps, loadDevAppInitialProps, loadPagesGetInitialProps } from "./pages-get-initial-props.js";
|
|
30
31
|
import { isSerializableProps } from "./pages-serializable-props.js";
|
|
32
|
+
import { traceFindPageComponents, tracePagesData, tracePagesDocument, tracePagesDocumentStream } from "./pages-execution-tracing.js";
|
|
31
33
|
import { assertPages404DoesNotReturnNotFound, buildPagesRedirectProps, getPagesRouteParams, matchesPagesStaticPath, mergePagesDataProps, resolvePagesRedirect, resolvePagesRedirectLocation, resolvePagesRevalidateSeconds } from "./pages-page-data.js";
|
|
32
34
|
import { createPagesDevModuleUrl } from "./pages-dev-module-url.js";
|
|
33
35
|
import { collectPagesDevInitialStylesheetHeadHTML } from "./pages-dev-stylesheets.js";
|
|
@@ -158,27 +160,43 @@ function stripDevPagesNotFoundFramingHeaders(res) {
|
|
|
158
160
|
* deferring them reduces TTFB and lets the browser start parsing the
|
|
159
161
|
* shell sooner).
|
|
160
162
|
*/
|
|
161
|
-
async function
|
|
162
|
-
const { url, server, fontHeadHTML, assetHeadHTML = "", scripts, DocumentComponent, statusCode, extraHeaders, getHeadHTML, getTailHeadHTML, enhancePageElement, scriptNonce, documentContext, setDocumentInitialHead, crossOrigin, bufferBodyBeforeHeaders = false, preserveExistingContentType = false } = options;
|
|
163
|
-
const
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
163
|
+
async function streamPageToResponseImpl(routePattern, res, element, options) {
|
|
164
|
+
const { url, server, fontHeadHTML, assetHeadHTML = "", scripts, DocumentComponent, statusCode, extraHeaders, getHeadHTML, getTailHeadHTML, enhancePageElement, scriptNonce, documentContext, setDocumentInitialHead, crossOrigin, bufferBodyBeforeHeaders = false, preserveExistingContentType = false, onDocumentBody } = options;
|
|
165
|
+
const renderDocument = async () => {
|
|
166
|
+
const documentRenderPage = await runDocumentRenderPage({
|
|
167
|
+
DocumentComponent,
|
|
168
|
+
enhancePageElement,
|
|
169
|
+
renderToReadableStream,
|
|
170
|
+
renderStylesToString: renderToStringAsync,
|
|
171
|
+
scriptNonce,
|
|
172
|
+
context: documentContext
|
|
173
|
+
});
|
|
174
|
+
if (res.headersSent || res.writableEnded) return {
|
|
175
|
+
documentRenderPage,
|
|
176
|
+
responseSent: true
|
|
177
|
+
};
|
|
178
|
+
let bodyStream;
|
|
179
|
+
if (documentRenderPage.status === "rendered") {
|
|
180
|
+
const synthesised = documentRenderPage.bodyHtml;
|
|
181
|
+
bodyStream = new ReadableStream({ start(controller) {
|
|
182
|
+
controller.enqueue(new TextEncoder().encode(synthesised));
|
|
183
|
+
controller.close();
|
|
184
|
+
} });
|
|
185
|
+
} else bodyStream = await renderToReadableStream(element);
|
|
186
|
+
if (documentRenderPage.status === "skipped") await callDocumentGetInitialProps(DocumentComponent, setDocumentInitialHead);
|
|
187
|
+
else setDocumentInitialHead?.(documentRenderPage.head);
|
|
188
|
+
return {
|
|
189
|
+
bodyStream,
|
|
190
|
+
documentRenderPage,
|
|
191
|
+
responseSent: false,
|
|
192
|
+
waitForBody: documentRenderPage.status === "skipped"
|
|
193
|
+
};
|
|
194
|
+
};
|
|
195
|
+
const documentResult = await tracePagesDocumentStream(routePattern, renderDocument);
|
|
196
|
+
if (documentResult.responseSent) return;
|
|
197
|
+
const { bodyStream, documentRenderPage } = documentResult;
|
|
198
|
+
if (!bodyStream) throw new Error("Pages document render did not produce a body stream");
|
|
199
|
+
onDocumentBody?.(bodyStream);
|
|
182
200
|
const headHTML = getHeadHTML();
|
|
183
201
|
const ssrHeadMarkerId = randomUUID();
|
|
184
202
|
const ssrHeadStartMarker = `<!--VINEXT_SSR_HEAD_START:${ssrHeadMarkerId}-->`;
|
|
@@ -198,7 +216,8 @@ async function streamPageToResponse(res, element, options) {
|
|
|
198
216
|
}));
|
|
199
217
|
if (DocumentComponent) {
|
|
200
218
|
const docProps = documentRenderPage.status === "skipped" ? await loadUserDocumentInitialProps(DocumentComponent) : documentRenderPage.docProps;
|
|
201
|
-
const
|
|
219
|
+
const docElement = docProps ? React.createElement(DocumentComponent, docProps) : React.createElement(DocumentComponent);
|
|
220
|
+
const renderedDocument = extractDocumentAssetProps(await renderToStringAsync(docElement));
|
|
202
221
|
documentAssetProps = renderedDocument.props;
|
|
203
222
|
let docHtml = protectAssetTags(renderedDocument.html);
|
|
204
223
|
const generatedScripts = applyGeneratedAssetProps(scripts, renderedDocument.props, "next-script");
|
|
@@ -264,6 +283,20 @@ async function streamPageToResponse(res, element, options) {
|
|
|
264
283
|
}
|
|
265
284
|
res.end(suffix);
|
|
266
285
|
}
|
|
286
|
+
async function streamPageToResponse(...args) {
|
|
287
|
+
let bodyStream;
|
|
288
|
+
try {
|
|
289
|
+
await streamPageToResponseImpl(args[0], args[1], args[2], {
|
|
290
|
+
...args[3],
|
|
291
|
+
onDocumentBody(stream) {
|
|
292
|
+
bodyStream = stream;
|
|
293
|
+
}
|
|
294
|
+
});
|
|
295
|
+
} catch (error) {
|
|
296
|
+
if (bodyStream && !bodyStream.locked) await bodyStream.cancel(error).catch(() => {});
|
|
297
|
+
throw error;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
267
300
|
/**
|
|
268
301
|
* Extract locale prefix from a URL path.
|
|
269
302
|
* e.g. /fr/about -> { locale: "fr", url: "/about", hadPrefix: true }
|
|
@@ -282,9 +315,20 @@ function extractLocaleFromUrl(url, i18nConfig) {
|
|
|
282
315
|
* 4. Render the component to HTML
|
|
283
316
|
* 5. Wrap in _document shell and send response
|
|
284
317
|
*/
|
|
285
|
-
function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatcher, basePath = "", trailingSlash = false, hasMiddleware = false, hasRewrites = false, clientTraceMetadata, htmlLimitedBots, reactStrictMode = false, expireTime = PAGES_CACHE_ONE_YEAR_SECONDS, crossOrigin, buildId = process.env.__VINEXT_BUILD_ID ?? "development") {
|
|
318
|
+
function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatcher, basePath = "", trailingSlash = false, hasMiddleware = false, hasRewrites = false, clientTraceMetadata, htmlLimitedBots, reactStrictMode = false, expireTime = PAGES_CACHE_ONE_YEAR_SECONDS, crossOrigin, buildId = process.env.__VINEXT_BUILD_ID ?? "development", clientMiddlewareMatcher, classifyPageRoute) {
|
|
286
319
|
const matcher = fileMatcher ?? createValidFileMatcher();
|
|
287
320
|
const pagePatterns = routes.map((r) => patternToNextFormat(r.pattern));
|
|
321
|
+
const pageLoaders = routes.map((route) => ({
|
|
322
|
+
pattern: patternToNextFormat(route.pattern),
|
|
323
|
+
moduleSource: createPagesDevModuleUrl(server.config.root, route.filePath, "/"),
|
|
324
|
+
dataKind: classifyPageRoute?.(route) ?? "none"
|
|
325
|
+
}));
|
|
326
|
+
const errorFile = findFileWithExts(pagesDir, "_error", matcher);
|
|
327
|
+
pageLoaders.push({
|
|
328
|
+
pattern: "/_error",
|
|
329
|
+
moduleSource: errorFile ? createPagesDevModuleUrl(server.config.root, errorFile, "/") : "next/error",
|
|
330
|
+
dataKind: "none"
|
|
331
|
+
});
|
|
288
332
|
const _alsRegistration = Promise.all([runner.import("vinext/head-state"), runner.import("vinext/router-state")]);
|
|
289
333
|
_alsRegistration.catch(() => {});
|
|
290
334
|
return async (req, res, url, statusCode, isDataReq = false, originalUrl = url) => {
|
|
@@ -324,6 +368,9 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
324
368
|
basePath,
|
|
325
369
|
buildId,
|
|
326
370
|
clientTraceMetadata,
|
|
371
|
+
pageLoaders,
|
|
372
|
+
hasMiddleware,
|
|
373
|
+
clientMiddlewareMatcher,
|
|
327
374
|
locale: locale ?? currentDefaultLocale,
|
|
328
375
|
locales: i18nConfig?.locales,
|
|
329
376
|
defaultLocale: currentDefaultLocale,
|
|
@@ -359,6 +406,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
359
406
|
const userFacingParams = route.isDynamic ? params : null;
|
|
360
407
|
let query = mergeRouteParamsIntoQuery(parseQueryString(url), params);
|
|
361
408
|
const requestContext = createRequestContext();
|
|
409
|
+
let isStaticPropsRender = false;
|
|
362
410
|
const closeRequest = () => void closeAfterResponse(requestContext);
|
|
363
411
|
res.on("finish", closeRequest);
|
|
364
412
|
res.on("close", closeRequest);
|
|
@@ -378,8 +426,20 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
378
426
|
hostname: req.headers.host?.split(":", 1)[0]
|
|
379
427
|
});
|
|
380
428
|
}
|
|
381
|
-
const pageModule = await
|
|
382
|
-
|
|
429
|
+
const { pageModule, AppComponent, appFilePath, DocumentComponent } = await traceFindPageComponents(route.pattern, async () => {
|
|
430
|
+
const pageModule = await importModule(runner, route.filePath);
|
|
431
|
+
const appFilePath = findFileWithExts(pagesDir, "_app", matcher);
|
|
432
|
+
const appModule = appFilePath ? await importModule(runner, appFilePath) : null;
|
|
433
|
+
const docFilePath = findFileWithExts(pagesDir, "_document", matcher);
|
|
434
|
+
const docModule = docFilePath ? await runner.import(docFilePath) : null;
|
|
435
|
+
return {
|
|
436
|
+
pageModule,
|
|
437
|
+
AppComponent: appModule?.default ?? null,
|
|
438
|
+
appFilePath,
|
|
439
|
+
DocumentComponent: docModule?.default ?? null
|
|
440
|
+
};
|
|
441
|
+
});
|
|
442
|
+
isStaticPropsRender = typeof pageModule.getStaticProps === "function" && typeof pageModule.getServerSideProps !== "function";
|
|
383
443
|
if (isStaticPropsRender) {
|
|
384
444
|
query = mergeRouteParamsIntoQuery({}, params);
|
|
385
445
|
requestAsPath = localeStrippedUrl.split("?")[0];
|
|
@@ -389,9 +449,6 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
389
449
|
shouldClear: false
|
|
390
450
|
};
|
|
391
451
|
const requestPreviewData = requestPreview.data;
|
|
392
|
-
let AppComponent = null;
|
|
393
|
-
const appFilePath = findFileWithExts(pagesDir, "_app", matcher);
|
|
394
|
-
if (appFilePath) AppComponent = (await importModule(runner, appFilePath)).default ?? null;
|
|
395
452
|
const pagesNextData = {
|
|
396
453
|
...buildPagesReadinessNextData({
|
|
397
454
|
pageModule,
|
|
@@ -447,12 +504,17 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
447
504
|
if (typeof pageModule.getStaticPaths === "function" && route.isDynamic) {
|
|
448
505
|
const pathsResult = await pageModule.getStaticPaths({
|
|
449
506
|
locales: i18nConfig?.locales ?? [],
|
|
450
|
-
defaultLocale:
|
|
507
|
+
defaultLocale: i18nConfig?.defaultLocale ?? ""
|
|
451
508
|
});
|
|
452
509
|
const fallback = pathsResult?.fallback ?? false;
|
|
453
510
|
const paths = pathsResult?.paths ?? [];
|
|
454
|
-
const
|
|
455
|
-
const
|
|
511
|
+
const routePattern = patternToNextFormat(route.pattern);
|
|
512
|
+
const routeParams = getPagesRouteParams(routePattern);
|
|
513
|
+
const isValidPath = paths.some((pathEntry) => matchesPagesStaticPath(pathEntry, params, routeParams, localeStrippedUrl, {
|
|
514
|
+
locale,
|
|
515
|
+
locales: i18nConfig?.locales,
|
|
516
|
+
defaultLocale: i18nConfig?.defaultLocale
|
|
517
|
+
}));
|
|
456
518
|
if (fallback === false && !isValidPath && requestPreviewData === false) {
|
|
457
519
|
if (isDataReq) {
|
|
458
520
|
const deploymentId = process.env.__VINEXT_DEPLOYMENT_ID || process.env.NEXT_DEPLOYMENT_ID;
|
|
@@ -540,7 +602,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
540
602
|
defaultLocale: currentDefaultLocale,
|
|
541
603
|
...previewContext
|
|
542
604
|
};
|
|
543
|
-
const result = await pageModule.getServerSideProps(context);
|
|
605
|
+
const result = await tracePagesData("getServerSideProps", route.pattern, () => pageModule.getServerSideProps(context));
|
|
544
606
|
if (res.writableEnded) return;
|
|
545
607
|
if (result && "props" in result) {
|
|
546
608
|
pageProps = mergePagesDataProps(renderProps.pageProps, await Promise.resolve(result.props));
|
|
@@ -609,7 +671,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
609
671
|
...previewContext
|
|
610
672
|
};
|
|
611
673
|
if (await loadAppInitialProps()) return;
|
|
612
|
-
const result = await pageModule.getStaticProps(context);
|
|
674
|
+
const result = await tracePagesData("getStaticProps", route.pattern, () => pageModule.getStaticProps(context));
|
|
613
675
|
const routePattern = patternToNextFormat(route.pattern);
|
|
614
676
|
assertPages404DoesNotReturnNotFound(routePattern, result);
|
|
615
677
|
if (result) staticPropsRevalidateSeconds = resolvePagesRevalidateSeconds(result, routePattern);
|
|
@@ -687,6 +749,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
687
749
|
}
|
|
688
750
|
if ((statusCode ?? 200) === 200) dataHeaders["x-nextjs-matched-path"] = `${locale ? `/${locale}` : ""}${patternToNextFormat(route.pattern)}`;
|
|
689
751
|
if (gsspExtraHeaders) for (const [k, v] of Object.entries(gsspExtraHeaders)) dataHeaders[k] = v;
|
|
752
|
+
dataHeaders["Cache-Control"] = DEV_PAGES_CACHE_CONTROL;
|
|
690
753
|
applyDevPagesPreviewHeaders(dataHeaders, requestPreview);
|
|
691
754
|
const dataRoutePattern = patternToNextFormat(route.pattern);
|
|
692
755
|
if (dataRoutePattern !== "/_error" && dataRoutePattern !== "/500") {
|
|
@@ -754,17 +817,19 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
754
817
|
pageModuleUrl,
|
|
755
818
|
appModuleUrl,
|
|
756
819
|
hasMiddleware,
|
|
757
|
-
routeUrl: requestAsPath
|
|
820
|
+
routeUrl: requestAsPath,
|
|
821
|
+
clientMiddlewareMatcher
|
|
758
822
|
}
|
|
759
823
|
};
|
|
760
824
|
const hydrationScript = createPagesDevHydrationScript({
|
|
761
825
|
appModuleSource,
|
|
762
826
|
pageModuleSource,
|
|
827
|
+
pageLoaders,
|
|
763
828
|
reactStrictMode: reactStrictMode === true,
|
|
764
829
|
replaceFallbackRoute: true,
|
|
765
830
|
scriptNonce
|
|
766
831
|
});
|
|
767
|
-
const
|
|
832
|
+
const allScripts = `${`<script id="__NEXT_DATA__" type="application/json"${nonceAttr}>${safeJsonStringify({
|
|
768
833
|
props: renderProps,
|
|
769
834
|
page: patternToNextFormat(route.pattern),
|
|
770
835
|
query: isFallbackRender ? {} : params,
|
|
@@ -775,19 +840,18 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
775
840
|
defaultLocale: currentDefaultLocale,
|
|
776
841
|
domainLocales,
|
|
777
842
|
...serializedPagesNextData
|
|
778
|
-
})}<\/script
|
|
779
|
-
const
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
const extraHeaders = { ...gsspExtraHeaders };
|
|
843
|
+
})}<\/script>`}\n ${createInlineScriptTag(`window.__VINEXT_PAGE_PATTERNS__=${safeJsonStringify(pagePatterns)}`, scriptNonce)}\n ${hydrationScript}`;
|
|
844
|
+
const extraHeaders = {
|
|
845
|
+
...gsspExtraHeaders,
|
|
846
|
+
"Cache-Control": DEV_PAGES_CACHE_CONTROL
|
|
847
|
+
};
|
|
784
848
|
if (typeof pageModule.getStaticProps === "function") {
|
|
785
849
|
extraHeaders["Cache-Control"] = DEV_PAGES_CACHE_CONTROL;
|
|
786
850
|
extraHeaders[NEXTJS_CACHE_HEADER] = isFallbackRender ? "MISS" : isOnDemandRevalidate ? "REVALIDATED" : "HIT";
|
|
787
851
|
}
|
|
788
852
|
applyDevPagesPreviewHeaders(extraHeaders, requestPreview);
|
|
789
853
|
if (allFontPreloads.length > 0) extraHeaders["Link"] = allFontPreloads.map((p) => `<${p.href}>; rel=preload; as=font; type=${p.type}; crossorigin`).join(", ");
|
|
790
|
-
await streamPageToResponse(res, withScriptNonce(element, scriptNonce), {
|
|
854
|
+
await streamPageToResponse(route.pattern, res, withScriptNonce(element, scriptNonce), {
|
|
791
855
|
url,
|
|
792
856
|
server,
|
|
793
857
|
fontHeadHTML,
|
|
@@ -831,15 +895,16 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
831
895
|
if (typeof routerShim.setSSRContext === "function") routerShim.setSSRContext(null);
|
|
832
896
|
} catch (e) {
|
|
833
897
|
console.error(e);
|
|
834
|
-
reportRequestError(e
|
|
898
|
+
await reportRequestError(e, {
|
|
835
899
|
path: url,
|
|
836
900
|
method: req.method ?? "GET",
|
|
837
|
-
headers: Object.fromEntries(Object.entries(req.headers).filter(([k]) => !k.startsWith(":"))
|
|
901
|
+
headers: Object.fromEntries(Object.entries(req.headers).filter(([k]) => !k.startsWith(":")))
|
|
838
902
|
}, {
|
|
839
903
|
routerKind: "Pages Router",
|
|
840
904
|
routePath: route.pattern,
|
|
841
|
-
routeType: "render"
|
|
842
|
-
|
|
905
|
+
routeType: "render",
|
|
906
|
+
revalidateReason: isOnDemandRevalidateRequest(Array.isArray(req.headers["x-prerender-revalidate"]) ? req.headers["x-prerender-revalidate"]?.[0] : req.headers["x-prerender-revalidate"]) ? "on-demand" : isStaticPropsRender ? "stale" : void 0
|
|
907
|
+
});
|
|
843
908
|
try {
|
|
844
909
|
await renderErrorPage(server, runner, req, res, url, pagesDir, 500, void 0, matcher, e instanceof Error ? e : new Error(String(e)), reactStrictMode, errorPageContext);
|
|
845
910
|
} catch (fallbackErr) {
|
|
@@ -861,7 +926,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
|
|
|
861
926
|
async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCode, wrapWithRouterContext, fileMatcher, err, reactStrictMode = false, context = { basePath: "" }) {
|
|
862
927
|
attachPagesRequestCookies(req);
|
|
863
928
|
const matcher = fileMatcher ?? createValidFileMatcher();
|
|
864
|
-
const candidates = statusCode === 404 ? ["404", "_error"] :
|
|
929
|
+
const candidates = statusCode === 404 ? ["404", "_error"] : ["_error"];
|
|
865
930
|
for (const candidate of candidates) {
|
|
866
931
|
let errorRouterShim = null;
|
|
867
932
|
let candidateLoaded = false;
|
|
@@ -869,16 +934,25 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
|
|
|
869
934
|
try {
|
|
870
935
|
errorAssetPath = findFileWithExts(pagesDir, candidate, matcher);
|
|
871
936
|
if (!errorAssetPath && candidate !== "_error") continue;
|
|
872
|
-
const
|
|
937
|
+
const errorPage = candidate === "_error" ? "/_error" : `/${candidate}`;
|
|
938
|
+
const { errorModule, AppComponent, appAssetPath, DocumentComponent } = await traceFindPageComponents(errorPage, async () => {
|
|
939
|
+
const errorModule = await importModule(runner, errorAssetPath ?? "next/error");
|
|
940
|
+
const appAssetPath = findFileWithExts(pagesDir, "_app", matcher);
|
|
941
|
+
const appModule = appAssetPath ? await importModule(runner, appAssetPath) : null;
|
|
942
|
+
const docFilePath = findFileWithExts(pagesDir, "_document", matcher);
|
|
943
|
+
const docModule = docFilePath ? await importModule(runner, docFilePath) : null;
|
|
944
|
+
return {
|
|
945
|
+
errorModule,
|
|
946
|
+
AppComponent: appModule?.default ?? null,
|
|
947
|
+
appAssetPath,
|
|
948
|
+
DocumentComponent: docModule?.default ?? null
|
|
949
|
+
};
|
|
950
|
+
});
|
|
873
951
|
candidateLoaded = true;
|
|
874
952
|
const ErrorComponent = errorModule.default;
|
|
875
953
|
if (!ErrorComponent) continue;
|
|
876
|
-
let AppComponent = null;
|
|
877
|
-
const appAssetPath = findFileWithExts(pagesDir, "_app", matcher);
|
|
878
|
-
if (appAssetPath) AppComponent = (await importModule(runner, appAssetPath)).default ?? null;
|
|
879
954
|
const createElement = React.createElement;
|
|
880
955
|
res.statusCode = statusCode;
|
|
881
|
-
const errorPage = candidate === "_error" ? "/_error" : `/${candidate}`;
|
|
882
956
|
const errorRouter = {
|
|
883
957
|
pathname: errorPage,
|
|
884
958
|
query: parseQueryString(url),
|
|
@@ -908,12 +982,12 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
|
|
|
908
982
|
};
|
|
909
983
|
if (typeof errorModule.getStaticProps === "function") {
|
|
910
984
|
const isOnDemandRevalidate = isOnDemandRevalidateRequest(req.headers[PRERENDER_REVALIDATE_HEADER]);
|
|
911
|
-
const staticResult = await errorModule.getStaticProps({
|
|
985
|
+
const staticResult = await tracePagesData("getStaticProps", errorPage, () => errorModule.getStaticProps({
|
|
912
986
|
locale: context.locale,
|
|
913
987
|
locales: context.locales,
|
|
914
988
|
defaultLocale: context.defaultLocale,
|
|
915
989
|
revalidateReason: isOnDemandRevalidate ? "on-demand" : "stale"
|
|
916
|
-
});
|
|
990
|
+
}));
|
|
917
991
|
assertPages404DoesNotReturnNotFound(errorPage, staticResult);
|
|
918
992
|
if (staticResult?.redirect) {
|
|
919
993
|
applyDevPagesCacheHeaders(res, isOnDemandRevalidate ? "REVALIDATED" : "HIT", NEVER_CACHE_CONTROL);
|
|
@@ -961,9 +1035,6 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
|
|
|
961
1035
|
pageProps: mergePagesDataProps(appRenderProps.pageProps, errorProps)
|
|
962
1036
|
} : appRenderProps;
|
|
963
1037
|
} else renderProps = { pageProps: errorProps };
|
|
964
|
-
let DocumentComponent = null;
|
|
965
|
-
const docFilePathErr = findFileWithExts(pagesDir, "_document", matcher);
|
|
966
|
-
if (docFilePathErr) DocumentComponent = (await importModule(runner, docFilePathErr)).default ?? null;
|
|
967
1038
|
const createErrorElement = (FinalApp, FinalComponent) => {
|
|
968
1039
|
let errorElement = FinalApp ? createElement(FinalApp, {
|
|
969
1040
|
...renderProps,
|
|
@@ -990,22 +1061,28 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
|
|
|
990
1061
|
query: parseQueryString(url),
|
|
991
1062
|
buildId: context.buildId ?? process.env.__VINEXT_BUILD_ID ?? "development",
|
|
992
1063
|
isFallback: false,
|
|
1064
|
+
locale: context.locale,
|
|
1065
|
+
locales: context.locales,
|
|
1066
|
+
defaultLocale: context.defaultLocale,
|
|
993
1067
|
notFoundSrcPage: context.notFoundSrcPage,
|
|
994
1068
|
__vinext: {
|
|
995
1069
|
pageModuleUrl: errorModuleUrl ?? void 0,
|
|
996
|
-
appModuleUrl: appModuleUrl ?? void 0
|
|
1070
|
+
appModuleUrl: appModuleUrl ?? void 0,
|
|
1071
|
+
hasMiddleware: context.hasMiddleware,
|
|
1072
|
+
clientMiddlewareMatcher: context.clientMiddlewareMatcher
|
|
997
1073
|
}
|
|
998
1074
|
})}<\/script>`}\n${createPagesDevHydrationScript({
|
|
999
1075
|
appModuleSource,
|
|
1000
1076
|
forceRouterReady: true,
|
|
1001
1077
|
normalizePageProps: false,
|
|
1002
1078
|
pageModuleSource: errorModuleSource,
|
|
1079
|
+
pageLoaders: context.pageLoaders,
|
|
1003
1080
|
reactStrictMode: reactStrictMode === true,
|
|
1004
1081
|
scriptNonce,
|
|
1005
1082
|
setPagePatternsFromNextData: true
|
|
1006
1083
|
})}`;
|
|
1007
1084
|
if (statusCode === 404) stripDevPagesNotFoundFramingHeaders(res);
|
|
1008
|
-
if (DocumentComponent) await streamPageToResponse(res, element, {
|
|
1085
|
+
if (DocumentComponent) await streamPageToResponse(errorPage, res, element, {
|
|
1009
1086
|
url,
|
|
1010
1087
|
server,
|
|
1011
1088
|
fontHeadHTML: "",
|
|
@@ -1035,7 +1112,7 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
|
|
|
1035
1112
|
preserveExistingContentType: statusCode === 404
|
|
1036
1113
|
});
|
|
1037
1114
|
else {
|
|
1038
|
-
const bodyHtml = await renderToStringAsync(element);
|
|
1115
|
+
const bodyHtml = await tracePagesDocument(errorPage, () => renderToStringAsync(element));
|
|
1039
1116
|
const traceMetaHTML = getClientTraceMetadataHTML(context.clientTraceMetadata);
|
|
1040
1117
|
const protectedAssetMarker = `data-vinext-document-asset-props-protected-${randomUUID()}`;
|
|
1041
1118
|
const protectAssetTags = (assetHtml) => markDocumentAssetPropsProtectedTags(assetHtml, protectedAssetMarker);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT } from "../utils/dev-stack-sourcemap-endpoint.js";
|
|
2
2
|
import { ViteDevServer } from "vite";
|
|
3
3
|
//#region src/server/dev-stack-sourcemap.d.ts
|
|
4
|
-
type SourceMapPayload = {
|
|
4
|
+
export type SourceMapPayload = {
|
|
5
5
|
version?: number;
|
|
6
6
|
sources: string[];
|
|
7
7
|
sourcesContent?: (string | null)[];
|
|
@@ -32,10 +32,10 @@ type MappedStackLine = {
|
|
|
32
32
|
ignored: boolean;
|
|
33
33
|
codeFrame?: StackCodeFramePayload;
|
|
34
34
|
};
|
|
35
|
-
declare function installDevStackSourcemapMiddleware(server: ViteDevServer): void;
|
|
36
|
-
declare function mapStackLineWithMetadata(server: ViteDevServer, line: string, requestHost: string | undefined, sourceMapCache: Map<string, Promise<SourceMapPayload | null>>): Promise<MappedStackLine>;
|
|
37
|
-
declare function originalPositionFor(sourceMap: SourceMapPayload, generatedLine: number, generatedColumn: number): SourceMapPosition | null;
|
|
38
|
-
declare function decodeVlqSegment(segment: string): number[];
|
|
39
|
-
declare function resolveSourceFile(source: string, sourceMap: SourceMapPayload, generatedUrl: URL): string;
|
|
35
|
+
export declare function installDevStackSourcemapMiddleware(server: ViteDevServer): void;
|
|
36
|
+
export declare function mapStackLineWithMetadata(server: ViteDevServer, line: string, requestHost: string | undefined, sourceMapCache: Map<string, Promise<SourceMapPayload | null>>): Promise<MappedStackLine>;
|
|
37
|
+
export declare function originalPositionFor(sourceMap: SourceMapPayload, generatedLine: number, generatedColumn: number): SourceMapPosition | null;
|
|
38
|
+
export declare function decodeVlqSegment(segment: string): number[];
|
|
39
|
+
export declare function resolveSourceFile(source: string, sourceMap: SourceMapPayload, generatedUrl: URL): string;
|
|
40
40
|
//#endregion
|
|
41
|
-
export {
|
|
41
|
+
export { VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT };
|
|
@@ -3,7 +3,7 @@ import { VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT } from "../utils/dev-stack-sourcem
|
|
|
3
3
|
import { readFile } from "node:fs/promises";
|
|
4
4
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
5
5
|
//#region src/server/dev-stack-sourcemap.ts
|
|
6
|
-
const MAX_ORIGINAL_STACK_TRACE_BODY_BYTES =
|
|
6
|
+
const MAX_ORIGINAL_STACK_TRACE_BODY_BYTES = 1048576;
|
|
7
7
|
const V8_PAREN_STACK_LINE = /^(\s*at\s+.*?\()(.+):(\d+):(\d+)(\)\s*)$/;
|
|
8
8
|
const V8_BARE_STACK_LINE = /^(\s*at\s+)(.+):(\d+):(\d+)(\s*)$/;
|
|
9
9
|
const MOZ_STACK_LINE = /^([^@\n]*@)(.+):(\d+):(\d+)(\s*)$/;
|
|
@@ -10,7 +10,6 @@ import React from "react";
|
|
|
10
10
|
* Callers use this to decide whether the render pipeline owes `_document` the
|
|
11
11
|
* full `getInitialProps` contract, since only an override can observe it.
|
|
12
12
|
*/
|
|
13
|
-
declare function hasUserDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined): boolean;
|
|
14
|
-
declare function callDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined, setDocumentInitialHead: ((head: React.ReactNode[]) => void) | undefined): Promise<void>;
|
|
15
|
-
//#endregion
|
|
16
|
-
export { callDocumentGetInitialProps, hasUserDocumentGetInitialProps };
|
|
13
|
+
export declare function hasUserDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined): boolean;
|
|
14
|
+
export declare function callDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined, setDocumentInitialHead: ((head: React.ReactNode[]) => void) | undefined): Promise<void>;
|
|
15
|
+
//#endregion
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//#region src/server/edge-api-runtime.d.ts
|
|
2
|
-
declare function isEdgeApiRuntime(runtime: string | undefined): boolean;
|
|
3
|
-
type EdgeApiExecutionRuntime = "node" | "worker";
|
|
2
|
+
export declare function isEdgeApiRuntime(runtime: string | undefined): boolean;
|
|
3
|
+
export type EdgeApiExecutionRuntime = "node" | "worker";
|
|
4
4
|
/**
|
|
5
5
|
* Remove wire-level body headers after Node's fetch implementation has decoded
|
|
6
6
|
* an Edge API response. Next.js applies the same boundary in its edge sandbox.
|
|
@@ -8,6 +8,5 @@ type EdgeApiExecutionRuntime = "node" | "worker";
|
|
|
8
8
|
* Workers keep the original response untouched: workerd preserves the encoded
|
|
9
9
|
* body/header pair and can stream it directly to the client.
|
|
10
10
|
*/
|
|
11
|
-
declare function finalizeEdgeApiResponse(response: Response, runtime: EdgeApiExecutionRuntime): Response;
|
|
12
|
-
//#endregion
|
|
13
|
-
export { EdgeApiExecutionRuntime, finalizeEdgeApiResponse, isEdgeApiRuntime };
|
|
11
|
+
export declare function finalizeEdgeApiResponse(response: Response, runtime: EdgeApiExecutionRuntime): Response;
|
|
12
|
+
//#endregion
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
export
|
|
1
|
+
import virtual_vinext_worker_entry_default from "virtual:vinext-worker-entry";
|
|
2
|
+
export * from "virtual:vinext-worker-entry";
|
|
3
|
+
export { virtual_vinext_worker_entry_default as default };
|
|
@@ -1,18 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* Default Cloudflare fetch handler for vinext.
|
|
5
|
-
*
|
|
6
|
-
* Use this directly in wrangler.jsonc:
|
|
7
|
-
* "main": "vinext/server/fetch-handler"
|
|
8
|
-
*
|
|
9
|
-
* Or import and delegate to it from a custom worker:
|
|
10
|
-
* import handler from "vinext/server/fetch-handler";
|
|
11
|
-
* return handler.fetch(request, env, ctx);
|
|
12
|
-
*
|
|
13
|
-
* The vinext plugin resolves this to the App Router or Pages Router handler
|
|
14
|
-
* for the current project at build time.
|
|
15
|
-
*/
|
|
16
|
-
var fetch_handler_default = handler;
|
|
17
|
-
//#endregion
|
|
18
|
-
export { fetch_handler_default as default };
|
|
1
|
+
import virtual_vinext_worker_entry_default from "virtual:vinext-worker-entry";
|
|
2
|
+
export * from "virtual:vinext-worker-entry";
|
|
3
|
+
export { virtual_vinext_worker_entry_default as default };
|
|
@@ -23,6 +23,5 @@ type FileBasedMetadataOptions = {
|
|
|
23
23
|
*/
|
|
24
24
|
basePath?: string;
|
|
25
25
|
};
|
|
26
|
-
declare function applyFileBasedMetadata(metadata: Metadata | null, routePath: string, params: AppPageParams, metadataRoutes: readonly MetadataFileRoute[] | null | undefined, options?: FileBasedMetadataOptions): Promise<Metadata | null>;
|
|
27
|
-
//#endregion
|
|
28
|
-
export { applyFileBasedMetadata };
|
|
26
|
+
export declare function applyFileBasedMetadata(metadata: Metadata | null, routePath: string, params: AppPageParams, metadataRoutes: readonly MetadataFileRoute[] | null | undefined, options?: FileBasedMetadataOptions): Promise<Metadata | null>;
|
|
27
|
+
//#endregion
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
//#region src/server/framework-tracer.d.ts
|
|
2
|
+
type FrameworkSpanAttributeValue = string | number | boolean;
|
|
3
|
+
type FrameworkSpanDescriptor = {
|
|
4
|
+
attributes?: Readonly<Record<string, FrameworkSpanAttributeValue | undefined>>;
|
|
5
|
+
kind?: "client" | "internal" | "server";
|
|
6
|
+
name?: string;
|
|
7
|
+
recordErrors?: boolean;
|
|
8
|
+
type: string;
|
|
9
|
+
};
|
|
10
|
+
export type ResolvedFrameworkSpanDescriptor = {
|
|
11
|
+
attributes: Readonly<Record<string, FrameworkSpanAttributeValue>>;
|
|
12
|
+
kind: "client" | "internal" | "server";
|
|
13
|
+
name: string;
|
|
14
|
+
type: string;
|
|
15
|
+
};
|
|
16
|
+
export type FrameworkTracingBackendSpan = {
|
|
17
|
+
recordException?(error: unknown): void;
|
|
18
|
+
setAttribute(key: string, value: FrameworkSpanAttributeValue): void;
|
|
19
|
+
setErrorStatus?(message?: string): void;
|
|
20
|
+
updateName?(name: string): void;
|
|
21
|
+
};
|
|
22
|
+
export type FrameworkTracingIntegration = {
|
|
23
|
+
captureActiveContext?(): <T>(callback: () => T) => T;
|
|
24
|
+
getActiveSpan?(): FrameworkTracingBackendSpan | undefined;
|
|
25
|
+
id: string;
|
|
26
|
+
enterSpan<T>(descriptor: ResolvedFrameworkSpanDescriptor, callback: (span: FrameworkTracingBackendSpan) => T): T;
|
|
27
|
+
runWithDetachedContext?<T>(callback: () => T): T;
|
|
28
|
+
withPropagatedContext?<T>(carrier: Headers, callback: () => T): T;
|
|
29
|
+
};
|
|
30
|
+
export type FrameworkSpan = {
|
|
31
|
+
recordException(error: unknown): void;
|
|
32
|
+
setAttribute(key: string, value: FrameworkSpanAttributeValue | undefined): void;
|
|
33
|
+
setAttributes(attributes: Readonly<Record<string, FrameworkSpanAttributeValue | undefined>>): void;
|
|
34
|
+
setErrorStatus(message?: string): void;
|
|
35
|
+
updateName(name: string): void;
|
|
36
|
+
};
|
|
37
|
+
export type FrameworkTracer = {
|
|
38
|
+
captureActiveContext(): <T>(callback: () => T) => T;
|
|
39
|
+
getActiveScopeSpan(): FrameworkSpan | undefined;
|
|
40
|
+
runWithDetachedContext<T>(callback: () => T): T;
|
|
41
|
+
trace<T>(descriptor: FrameworkSpanDescriptor, callback: (span: FrameworkSpan) => T): T;
|
|
42
|
+
withPropagatedContext<T>(carrier: Headers, callback: () => T): T;
|
|
43
|
+
};
|
|
44
|
+
export declare function recordFrameworkSpanError(span: FrameworkSpan, error: unknown): void;
|
|
45
|
+
export declare function createFrameworkTracer(integrations: readonly FrameworkTracingIntegration[]): FrameworkTracer;
|
|
46
|
+
//#endregion
|