vinext 1.0.0-beta.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +150 -92
- package/THIRD_PARTY_LICENSES.md +25 -0
- package/dist/_virtual/_rolldown/runtime.js +25 -0
- package/dist/build/action-owner-manifest.d.ts +8 -9
- package/dist/build/action-owner-manifest.js +23 -5
- package/dist/build/assets-ignore.d.ts +3 -4
- package/dist/build/clean-output.d.ts +2 -3
- package/dist/build/client-build-config.d.ts +40 -12
- package/dist/build/client-build-config.js +76 -6
- package/dist/build/css-url-assets.d.ts +4 -5
- package/dist/build/css-url-assets.js +5 -2
- package/dist/build/google-fonts/build-url.d.ts +3 -4
- package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
- package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
- package/dist/build/google-fonts/font-metadata.d.ts +2 -3
- package/dist/build/google-fonts/get-axes.d.ts +2 -3
- package/dist/build/google-fonts/sort-variants.d.ts +2 -3
- package/dist/build/google-fonts/validate.d.ts +2 -3
- package/dist/build/google-fonts/validate.js +8 -4
- package/dist/build/inject-pregenerated-paths.d.ts +2 -3
- package/dist/build/inject-pregenerated-paths.js +16 -14
- package/dist/build/inline-css.d.ts +3 -4
- package/dist/build/layout-classification-types.d.ts +4 -5
- package/dist/build/layout-classification.d.ts +7 -8
- package/dist/build/lifecycle.d.ts +42 -0
- package/dist/build/lifecycle.js +253 -0
- package/dist/build/module-dependency-cache.d.ts +2 -3
- package/dist/build/next-client-runtime-manifests.d.ts +4 -5
- package/dist/build/nitro-route-rules.d.ts +6 -7
- package/dist/build/nitro-route-rules.js +1 -1
- package/dist/build/pages-client-assets-module.d.ts +4 -8
- package/dist/build/pages-client-assets-module.js +1 -13
- package/dist/build/precompress.d.ts +2 -3
- package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
- package/dist/build/prerender-cloudflare-loader.js +49 -0
- package/dist/build/prerender-paths.d.ts +36 -11
- package/dist/build/prerender-paths.js +273 -97
- package/dist/build/prerender-phase.d.ts +2 -3
- package/dist/build/prerender-server-entry.js +11 -3
- package/dist/build/prerender-server-pool.d.ts +9 -6
- package/dist/build/prerender-server-pool.js +8 -5
- package/dist/build/prerender.d.ts +65 -15
- package/dist/build/prerender.js +139 -43
- package/dist/build/preview-credentials.d.ts +5 -6
- package/dist/build/preview-credentials.js +2 -2
- package/dist/build/public-dir-conflict.d.ts +5 -6
- package/dist/build/public-dir-conflict.js +2 -1
- package/dist/build/report.d.ts +24 -20
- package/dist/build/report.js +10 -2
- package/dist/build/route-classification-injector.d.ts +2 -3
- package/dist/build/route-classification-manifest.d.ts +5 -6
- package/dist/build/run-prerender.d.ts +11 -9
- package/dist/build/run-prerender.js +25 -16
- package/dist/build/server-entry.d.ts +4 -0
- package/dist/build/server-entry.js +28 -0
- package/dist/build/server-manifest.d.ts +8 -3
- package/dist/build/server-manifest.js +14 -2
- package/dist/build/ssr-manifest.d.ts +5 -6
- package/dist/build/standalone.d.ts +2 -3
- package/dist/build/standalone.js +2 -2
- package/dist/build/static-export.d.ts +6 -7
- package/dist/cache/cache-adapters-virtual.d.ts +60 -20
- package/dist/cache/cache-adapters-virtual.js +50 -7
- package/dist/check.d.ts +11 -10
- package/dist/check.js +467 -176
- package/dist/cli-args.d.ts +7 -16
- package/dist/cli-args.js +2 -45
- package/dist/cli-dev-config.d.ts +10 -7
- package/dist/cli-dev-config.js +160 -3
- package/dist/cli.js +124 -442
- package/dist/client/app-nav-failure-handler.d.ts +6 -7
- package/dist/client/client-rewrite-matcher.d.ts +2 -3
- package/dist/client/client-rewrites.d.ts +4 -5
- package/dist/client/dev-error-overlay-store.d.ts +13 -14
- package/dist/client/dev-error-overlay.d.ts +15 -15
- package/dist/client/dev-error-overlay.js +8 -5
- package/dist/client/instrumentation-client-inject.d.ts +3 -4
- package/dist/client/instrumentation-client-state.d.ts +5 -6
- package/dist/client/instrumentation-client.d.ts +3 -4
- package/dist/client/navigation-runtime.d.ts +21 -17
- package/dist/client/navigation-runtime.js +2 -1
- package/dist/client/pages-router-link-navigation.d.ts +4 -5
- package/dist/client/react-instance.d.ts +2 -3
- package/dist/client/validate-module-path.d.ts +2 -3
- package/dist/client/vinext-next-data.d.ts +7 -10
- package/dist/client/window-next.d.ts +4 -5
- package/dist/config/config-matchers.d.ts +16 -16
- package/dist/config/config-matchers.js +2 -4
- package/dist/config/dotenv.d.ts +3 -4
- package/dist/config/dotenv.js +2 -1
- package/dist/config/next-config.d.ts +31 -27
- package/dist/config/next-config.js +163 -16
- package/dist/config/prerender.d.ts +20 -16
- package/dist/config/prerender.js +10 -4
- package/dist/config/request-context.d.ts +5 -6
- package/dist/config/server-external-packages.d.ts +14 -3
- package/dist/config/server-external-packages.js +37 -3
- package/dist/config/tsconfig-paths.d.ts +3 -4
- package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
- package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
- package/dist/entries/app-browser-entry.d.ts +4 -5
- package/dist/entries/app-browser-entry.js +1 -3
- package/dist/entries/app-rsc-entry.d.ts +10 -3
- package/dist/entries/app-rsc-entry.js +502 -51
- package/dist/entries/app-rsc-manifest.d.ts +4 -3
- package/dist/entries/app-rsc-manifest.js +26 -8
- package/dist/entries/app-ssr-entry.d.ts +2 -3
- package/dist/entries/app-ssr-entry.js +8 -1
- package/dist/entries/pages-client-entry.d.ts +3 -3
- package/dist/entries/pages-client-entry.js +17 -2
- package/dist/entries/pages-server-entry.d.ts +13 -3
- package/dist/entries/pages-server-entry.js +234 -33
- package/dist/entries/runtime-entry-module.d.ts +4 -5
- package/dist/image/image-adapters-virtual.d.ts +4 -5
- package/dist/index.d.ts +10 -11
- package/dist/index.js +711 -189
- package/dist/init-cloudflare.d.ts +26 -17
- package/dist/init-cloudflare.js +710 -102
- package/dist/init-platform.d.ts +26 -22
- package/dist/init-platform.js +85 -29
- package/dist/init.d.ts +19 -13
- package/dist/init.js +123 -41
- package/dist/plugins/action-owner-manifest.d.ts +3 -4
- package/dist/plugins/action-owner-manifest.js +10 -3
- package/dist/plugins/ast-scope.d.ts +10 -11
- package/dist/plugins/ast-scope.js +10 -22
- package/dist/plugins/ast-utils.d.ts +16 -29
- package/dist/plugins/ast-utils.js +27 -71
- package/dist/plugins/async-hooks-stub.d.ts +2 -3
- package/dist/plugins/client-reference-dedup.d.ts +4 -5
- package/dist/plugins/css-data-url.d.ts +2 -3
- package/dist/plugins/css-module-imports.d.ts +3 -4
- package/dist/plugins/css-module-imports.js +1 -1
- package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
- package/dist/plugins/dynamic-preload-metadata.js +55 -154
- package/dist/plugins/environment.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.js +6 -10
- package/dist/plugins/fonts.d.ts +10 -11
- package/dist/plugins/fonts.js +4 -3
- package/dist/plugins/ignore-dynamic-requests.d.ts +3 -4
- package/dist/plugins/ignore-dynamic-requests.js +60 -89
- package/dist/plugins/import-meta-url.d.ts +6 -7
- package/dist/plugins/import-meta-url.js +31 -43
- package/dist/plugins/instrumentation-client.d.ts +3 -3
- package/dist/plugins/instrumentation-client.js +46 -10
- package/dist/plugins/middleware-export-validation.d.ts +3 -4
- package/dist/plugins/middleware-export-validation.js +3 -3
- package/dist/plugins/middleware-server-only.d.ts +2 -3
- package/dist/plugins/og-asset-ownership.d.ts +3 -4
- package/dist/plugins/og-assets.d.ts +4 -5
- package/dist/plugins/og-assets.js +32 -13
- package/dist/plugins/og-harfbuzz.d.ts +24 -0
- package/dist/plugins/og-harfbuzz.js +260 -0
- package/dist/plugins/optimize-imports.d.ts +7 -7
- package/dist/plugins/optimize-imports.js +32 -44
- package/dist/plugins/pages-node-externals.d.ts +2 -3
- package/dist/plugins/pages-node-externals.js +6 -11
- package/dist/plugins/postcss.d.ts +8 -4
- package/dist/plugins/postcss.js +1 -1
- package/dist/plugins/remove-console.d.ts +2 -3
- package/dist/plugins/remove-console.js +0 -1
- package/dist/plugins/require-condition-resolution.d.ts +3 -4
- package/dist/plugins/require-condition-resolution.js +17 -18
- package/dist/plugins/require-context.d.ts +2 -3
- package/dist/plugins/require-context.js +13 -21
- package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
- package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
- package/dist/plugins/rsc-client-shim-excludes.js +1 -0
- package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
- package/dist/plugins/sass.d.ts +7 -8
- package/dist/plugins/sass.js +7 -4
- package/dist/plugins/server-externals-manifest.d.ts +2 -3
- package/dist/plugins/strip-server-exports.d.ts +5 -6
- package/dist/plugins/strip-server-exports.js +1 -1
- package/dist/plugins/styled-jsx.d.ts +2 -3
- package/dist/plugins/styled-jsx.js +7 -7
- package/dist/plugins/transform-cache.d.ts +2 -3
- package/dist/plugins/transform-result.d.ts +3 -4
- package/dist/plugins/transitive-externals.d.ts +2 -3
- package/dist/plugins/typeof-window.d.ts +6 -7
- package/dist/plugins/typeof-window.js +30 -31
- package/dist/plugins/use-cache-callable.d.ts +2 -5
- package/dist/plugins/use-cache-callable.js +43 -22
- package/dist/plugins/wasm-module-import.d.ts +2 -3
- package/dist/plugins/worker-image-imports.d.ts +2 -3
- package/dist/plugins/worker-image-imports.js +6 -8
- package/dist/routing/app-route-graph.d.ts +19 -19
- package/dist/routing/app-route-graph.js +3 -2
- package/dist/routing/app-router.d.ts +19 -6
- package/dist/routing/app-router.js +24 -2
- package/dist/routing/file-matcher.d.ts +9 -10
- package/dist/routing/pages-router.d.ts +6 -6
- package/dist/routing/pages-router.js +1 -1
- package/dist/routing/route-matching.d.ts +4 -5
- package/dist/routing/route-matching.js +4 -2
- package/dist/routing/route-pattern.d.ts +13 -14
- package/dist/routing/route-trie.d.ts +5 -6
- package/dist/routing/route-validation.d.ts +3 -4
- package/dist/routing/route-validation.js +12 -11
- package/dist/routing/utils.d.ts +13 -14
- package/dist/server/accept-encoding.d.ts +9 -10
- package/dist/server/api-handler.d.ts +2 -3
- package/dist/server/api-handler.js +9 -6
- package/dist/server/app-action-forwarding.d.ts +3 -4
- package/dist/server/app-action-forwarding.js +1 -1
- package/dist/server/app-action-request.d.ts +2 -3
- package/dist/server/app-bfcache-id.d.ts +3 -4
- package/dist/server/app-bfcache-identity.d.ts +8 -9
- package/dist/server/app-browser-action-result.d.ts +15 -16
- package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
- package/dist/server/app-browser-entry.js +87 -34
- package/dist/server/app-browser-error.d.ts +5 -6
- package/dist/server/app-browser-error.js +9 -3
- package/dist/server/app-browser-history-controller.d.ts +4 -5
- package/dist/server/app-browser-hydration.d.ts +16 -6
- package/dist/server/app-browser-hydration.js +14 -1
- package/dist/server/app-browser-interception-context.d.ts +3 -4
- package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
- package/dist/server/app-browser-navigation-abort.d.ts +3 -4
- package/dist/server/app-browser-navigation-controller.d.ts +8 -8
- package/dist/server/app-browser-navigation-controller.js +8 -4
- package/dist/server/app-browser-navigation-response.d.ts +2 -3
- package/dist/server/app-browser-popstate.d.ts +4 -5
- package/dist/server/app-browser-prefetch-response.d.ts +5 -6
- package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
- package/dist/server/app-browser-server-action-client.d.ts +7 -6
- package/dist/server/app-browser-server-action-client.js +9 -5
- package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
- package/dist/server/app-browser-state.d.ts +17 -17
- package/dist/server/app-browser-state.js +6 -2
- package/dist/server/app-browser-stream.d.ts +4 -5
- package/dist/server/app-browser-stream.js +8 -6
- package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
- package/dist/server/app-browser-visible-commit.d.ts +6 -7
- package/dist/server/app-client-reference-preloader.d.ts +2 -3
- package/dist/server/app-elements-wire-key.d.ts +25 -0
- package/dist/server/app-elements-wire-key.js +69 -0
- package/dist/server/app-elements-wire.d.ts +34 -53
- package/dist/server/app-elements-wire.js +4 -75
- package/dist/server/app-elements.d.ts +5 -5
- package/dist/server/app-elements.js +1 -1
- package/dist/server/app-fallback-renderer.d.ts +4 -4
- package/dist/server/app-fallback-renderer.js +6 -6
- package/dist/server/app-fetch-tracing.d.ts +15 -0
- package/dist/server/app-fetch-tracing.js +38 -0
- package/dist/server/app-history-state.d.ts +26 -27
- package/dist/server/app-history-state.js +19 -11
- package/dist/server/app-hook-warning-suppression.d.ts +2 -3
- package/dist/server/app-hydration-cache-publication.d.ts +3 -4
- package/dist/server/app-inline-css-client.d.ts +3 -4
- package/dist/server/app-interception-context-header.d.ts +2 -3
- package/dist/server/app-layout-param-observation.d.ts +7 -8
- package/dist/server/app-metadata-tracing.d.ts +12 -0
- package/dist/server/app-metadata-tracing.js +17 -0
- package/dist/server/app-middleware.d.ts +7 -7
- package/dist/server/app-middleware.js +2 -3
- package/dist/server/app-mounted-slots-header.d.ts +2 -3
- package/dist/server/app-mounted-slots-header.js +2 -2
- package/dist/server/app-optimistic-routing.d.ts +10 -11
- package/dist/server/app-optimistic-routing.js +3 -2
- package/dist/server/app-page-boundary-render.d.ts +6 -6
- package/dist/server/app-page-boundary-render.js +10 -4
- package/dist/server/app-page-boundary.d.ts +9 -10
- package/dist/server/app-page-boundary.js +1 -1
- package/dist/server/app-page-cache-finalizer.d.ts +18 -9
- package/dist/server/app-page-cache-finalizer.js +51 -16
- package/dist/server/app-page-cache-render.d.ts +8 -5
- package/dist/server/app-page-cache-render.js +22 -5
- package/dist/server/app-page-cache.d.ts +28 -9
- package/dist/server/app-page-cache.js +95 -24
- package/dist/server/app-page-dispatch.d.ts +34 -12
- package/dist/server/app-page-dispatch.js +181 -64
- package/dist/server/app-page-element-builder.d.ts +13 -11
- package/dist/server/app-page-element-builder.js +104 -61
- package/dist/server/app-page-execution.d.ts +14 -14
- package/dist/server/app-page-execution.js +11 -7
- package/dist/server/app-page-head.d.ts +19 -16
- package/dist/server/app-page-head.js +25 -25
- package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
- package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
- package/dist/server/app-page-method.d.ts +5 -11
- package/dist/server/app-page-method.js +2 -9
- package/dist/server/app-page-params.d.ts +5 -6
- package/dist/server/app-page-ppr-runtime.d.ts +2 -2
- package/dist/server/app-page-probe.d.ts +5 -6
- package/dist/server/app-page-probe.js +5 -4
- package/dist/server/app-page-render-identity.d.ts +4 -5
- package/dist/server/app-page-render-observation.d.ts +8 -9
- package/dist/server/app-page-render-observation.js +1 -1
- package/dist/server/app-page-render.d.ts +41 -6
- package/dist/server/app-page-render.js +171 -25
- package/dist/server/app-page-request.d.ts +10 -9
- package/dist/server/app-page-request.js +16 -12
- package/dist/server/app-page-response.d.ts +20 -9
- package/dist/server/app-page-response.js +30 -12
- package/dist/server/app-page-route-wiring.d.ts +15 -15
- package/dist/server/app-page-route-wiring.js +31 -24
- package/dist/server/app-page-search-params-observation.d.ts +26 -5
- package/dist/server/app-page-search-params-observation.js +42 -6
- package/dist/server/app-page-segment-plan.d.ts +2 -3
- package/dist/server/app-page-segment-state.d.ts +11 -12
- package/dist/server/app-page-stream.d.ts +27 -11
- package/dist/server/app-page-stream.js +34 -6
- package/dist/server/app-page-tracing.d.ts +33 -0
- package/dist/server/app-page-tracing.js +49 -0
- package/dist/server/app-pages-bridge.d.ts +6 -6
- package/dist/server/app-pages-bridge.js +17 -4
- package/dist/server/app-post-middleware-context.d.ts +2 -3
- package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
- package/dist/server/app-ppr-fallback-shell-render.js +3 -2
- package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
- package/dist/server/app-prerender-endpoints.d.ts +5 -5
- package/dist/server/app-prerender-endpoints.js +3 -1
- package/dist/server/app-prerender-static-params.d.ts +15 -7
- package/dist/server/app-prerender-static-params.js +24 -9
- package/dist/server/app-render-dependency.d.ts +14 -13
- package/dist/server/app-render-dependency.js +5 -1
- package/dist/server/app-request-context.d.ts +3 -4
- package/dist/server/app-request-stage-context.d.ts +5 -0
- package/dist/server/app-request-stage-context.js +11 -0
- package/dist/server/app-request-stage-dispatch.d.ts +25 -0
- package/dist/server/app-request-stage-dispatch.js +54 -0
- package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
- package/dist/server/app-request-stage-independent-entry.js +115 -0
- package/dist/server/app-response-header-provenance.d.ts +13 -7
- package/dist/server/app-response-header-provenance.js +34 -1
- package/dist/server/app-response-stage-entry.d.ts +9 -0
- package/dist/server/app-response-stage-entry.js +87 -0
- package/dist/server/app-route-handler-cache.d.ts +2 -3
- package/dist/server/app-route-handler-cache.js +46 -34
- package/dist/server/app-route-handler-dispatch.d.ts +3 -3
- package/dist/server/app-route-handler-dispatch.js +68 -54
- package/dist/server/app-route-handler-execution.d.ts +17 -13
- package/dist/server/app-route-handler-execution.js +69 -18
- package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
- package/dist/server/app-route-handler-middleware-context.js +15 -0
- package/dist/server/app-route-handler-policy.d.ts +11 -11
- package/dist/server/app-route-handler-response.d.ts +9 -10
- package/dist/server/app-route-handler-response.js +2 -0
- package/dist/server/app-route-handler-runtime.d.ts +9 -10
- package/dist/server/app-route-handler-runtime.js +20 -16
- package/dist/server/app-route-module-loader.d.ts +6 -7
- package/dist/server/app-route-request-built-ins.d.ts +3 -4
- package/dist/server/app-route-tree-prefetch.d.ts +6 -7
- package/dist/server/app-route-tree-prefetch.js +2 -1
- package/dist/server/app-router-entry.d.ts +2 -0
- package/dist/server/app-router-entry.js +28 -8
- package/dist/server/app-rsc-cache-busting.d.ts +34 -27
- package/dist/server/app-rsc-cache-busting.js +14 -2
- package/dist/server/app-rsc-combined-handler.d.ts +9 -0
- package/dist/server/app-rsc-combined-handler.js +11 -0
- package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
- package/dist/server/app-rsc-error-handler.d.ts +12 -6
- package/dist/server/app-rsc-error-handler.js +15 -6
- package/dist/server/app-rsc-errors.d.ts +12 -9
- package/dist/server/app-rsc-errors.js +15 -13
- package/dist/server/app-rsc-handler.d.ts +31 -6
- package/dist/server/app-rsc-handler.js +411 -61
- package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
- package/dist/server/app-rsc-render-mode.d.ts +8 -9
- package/dist/server/app-rsc-request-normalization.d.ts +3 -3
- package/dist/server/app-rsc-request-normalization.js +2 -1
- package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
- package/dist/server/app-rsc-response-finalizer.js +6 -6
- package/dist/server/app-rsc-response-stage.d.ts +6 -0
- package/dist/server/app-rsc-response-stage.js +251 -0
- package/dist/server/app-rsc-route-matching.d.ts +3 -4
- package/dist/server/app-rsc-route-matching.js +3 -2
- package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
- package/dist/server/app-rsc-vary.d.ts +16 -0
- package/dist/server/app-rsc-vary.js +31 -0
- package/dist/server/app-segment-config.d.ts +119 -7
- package/dist/server/app-segment-config.js +242 -2
- package/dist/server/app-server-action-execution.d.ts +16 -12
- package/dist/server/app-server-action-execution.js +86 -33
- package/dist/server/app-ssr-entry.d.ts +14 -4
- package/dist/server/app-ssr-entry.js +61 -14
- package/dist/server/app-ssr-error-meta.d.ts +3 -4
- package/dist/server/app-ssr-error-meta.js +2 -1
- package/dist/server/app-ssr-router-instance.d.ts +2 -3
- package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
- package/dist/server/app-ssr-search-params-gate.js +54 -0
- package/dist/server/app-ssr-stream.d.ts +13 -9
- package/dist/server/app-ssr-stream.js +33 -7
- package/dist/server/app-static-generation.d.ts +4 -5
- package/dist/server/app-visited-response-cache.d.ts +11 -12
- package/dist/server/app-visited-response-cache.js +2 -2
- package/dist/server/app-worker-stages.d.ts +112 -0
- package/dist/server/app-worker-stages.js +105 -0
- package/dist/server/artifact-compatibility.d.ts +11 -12
- package/dist/server/before-interactive-head.d.ts +2 -3
- package/dist/server/bfcache-identity.d.ts +7 -8
- package/dist/server/cache-control.d.ts +35 -13
- package/dist/server/cache-control.js +71 -5
- package/dist/server/cache-headers.d.ts +3 -4
- package/dist/server/cache-proof.d.ts +75 -70
- package/dist/server/cache-proof.js +9 -1
- package/dist/server/cacheability-limits.d.ts +4 -5
- package/dist/server/cacheability-limits.js +2 -2
- package/dist/server/cacheability-manifest.d.ts +42 -16
- package/dist/server/cacheability-manifest.js +60 -10
- package/dist/server/cacheability-request.d.ts +37 -8
- package/dist/server/cacheability-request.js +159 -57
- package/dist/server/client-reuse-manifest.d.ts +17 -18
- package/dist/server/client-reuse-manifest.js +2 -2
- package/dist/server/client-trace-metadata.d.ts +9 -6
- package/dist/server/client-trace-metadata.js +27 -15
- package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
- package/dist/server/cloudflare-workers-tracing.js +8 -0
- package/dist/server/config-headers.d.ts +19 -5
- package/dist/server/config-headers.js +25 -11
- package/dist/server/cookie-utils.d.ts +2 -3
- package/dist/server/csp.d.ts +5 -6
- package/dist/server/default-global-error-module.d.ts +2 -3
- package/dist/server/default-global-not-found-module.d.ts +2 -3
- package/dist/server/default-not-found-module.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.js +2 -1
- package/dist/server/dev-initial-server-error.d.ts +3 -4
- package/dist/server/dev-initial-server-error.js +2 -1
- package/dist/server/dev-lockfile.d.ts +7 -8
- package/dist/server/dev-lockfile.js +4 -1
- package/dist/server/dev-module-runner.d.ts +2 -3
- package/dist/server/dev-origin-check.d.ts +5 -6
- package/dist/server/dev-route-files.d.ts +2 -3
- package/dist/server/dev-server.d.ts +4 -5
- package/dist/server/dev-server.js +130 -61
- package/dist/server/dev-stack-sourcemap.d.ts +7 -7
- package/dist/server/dev-stack-sourcemap.js +1 -1
- package/dist/server/document-initial-head.d.ts +3 -4
- package/dist/server/edge-api-runtime.d.ts +4 -5
- package/dist/server/fetch-handler.d.ts +3 -2
- package/dist/server/fetch-handler.js +3 -18
- package/dist/server/file-based-metadata.d.ts +2 -3
- package/dist/server/framework-tracer.d.ts +46 -0
- package/dist/server/framework-tracer.js +125 -0
- package/dist/server/fully-buffered-response.d.ts +11 -0
- package/dist/server/fully-buffered-response.js +19 -0
- package/dist/server/headers.d.ts +54 -61
- package/dist/server/headers.js +18 -31
- package/dist/server/html.d.ts +6 -27
- package/dist/server/html.js +16 -1
- package/dist/server/http-conditional.d.ts +5 -6
- package/dist/server/http-date.d.ts +2 -3
- package/dist/server/http-error-responses.d.ts +9 -10
- package/dist/server/http-range.d.ts +4 -5
- package/dist/server/hybrid-route-priority.d.ts +4 -5
- package/dist/server/image-optimization.d.ts +20 -21
- package/dist/server/implicit-tags.d.ts +3 -4
- package/dist/server/instrumentation-runtime.d.ts +17 -21
- package/dist/server/instrumentation-runtime.js +26 -8
- package/dist/server/instrumentation.d.ts +26 -30
- package/dist/server/instrumentation.js +18 -23
- package/dist/server/isr-cache.d.ts +28 -27
- package/dist/server/isr-cache.js +18 -70
- package/dist/server/isr-decision.d.ts +4 -4
- package/dist/server/metadata-route-build-data.d.ts +4 -5
- package/dist/server/metadata-route-cache-policy.d.ts +2 -3
- package/dist/server/metadata-route-response.d.ts +7 -7
- package/dist/server/metadata-route-response.js +68 -2
- package/dist/server/metadata-routes.d.ts +18 -19
- package/dist/server/middleware-matcher-pattern.d.ts +6 -7
- package/dist/server/middleware-matcher.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.js +11 -9
- package/dist/server/middleware-response-headers.d.ts +3 -4
- package/dist/server/middleware-runtime.d.ts +7 -8
- package/dist/server/middleware-runtime.js +36 -7
- package/dist/server/middleware.d.ts +5 -5
- package/dist/server/multi-stage.d.ts +141 -0
- package/dist/server/multi-stage.js +8 -0
- package/dist/server/navigation-planner.d.ts +26 -26
- package/dist/server/navigation-trace.d.ts +11 -12
- package/dist/server/next-error-digest.d.ts +4 -5
- package/dist/server/normalize-path.d.ts +5 -6
- package/dist/server/open-redirect.d.ts +2 -3
- package/dist/server/opentelemetry-api.d.ts +59 -0
- package/dist/server/opentelemetry-api.js +53 -0
- package/dist/server/opentelemetry-tracing.d.ts +5 -0
- package/dist/server/opentelemetry-tracing.js +83 -0
- package/dist/server/operation-token.d.ts +11 -12
- package/dist/server/otel-tracer-extension.d.ts +7 -9
- package/dist/server/otel-tracer-extension.js +37 -36
- package/dist/server/pages-api-route.d.ts +5 -4
- package/dist/server/pages-api-route.js +20 -7
- package/dist/server/pages-asset-tags.d.ts +6 -6
- package/dist/server/pages-asset-tags.js +37 -2
- package/dist/server/pages-body-parser-config.d.ts +4 -5
- package/dist/server/pages-body-parser-config.js +4 -4
- package/dist/server/pages-client-assets.d.ts +11 -5
- package/dist/server/pages-data-route.d.ts +11 -12
- package/dist/server/pages-data-route.js +1 -1
- package/dist/server/pages-default-404.d.ts +3 -4
- package/dist/server/pages-dev-hydration.d.ts +9 -4
- package/dist/server/pages-dev-hydration.js +19 -7
- package/dist/server/pages-dev-module-url.d.ts +3 -4
- package/dist/server/pages-dev-stylesheets.d.ts +5 -6
- package/dist/server/pages-document-asset-props.d.ts +6 -7
- package/dist/server/pages-document-initial-props.d.ts +5 -5
- package/dist/server/pages-document-initial-props.js +4 -2
- package/dist/server/pages-execution-tracing.d.ts +40 -0
- package/dist/server/pages-execution-tracing.js +80 -0
- package/dist/server/pages-get-initial-props.d.ts +9 -10
- package/dist/server/pages-i18n.d.ts +8 -8
- package/dist/server/pages-media-type.d.ts +4 -5
- package/dist/server/pages-node-compat.d.ts +11 -10
- package/dist/server/pages-node-compat.js +12 -4
- package/dist/server/pages-page-data.d.ts +18 -19
- package/dist/server/pages-page-data.js +11 -10
- package/dist/server/pages-page-handler.d.ts +7 -6
- package/dist/server/pages-page-handler.js +77 -39
- package/dist/server/pages-page-method.d.ts +2 -3
- package/dist/server/pages-page-response.d.ts +14 -10
- package/dist/server/pages-page-response.js +49 -31
- package/dist/server/pages-preview.d.ts +10 -11
- package/dist/server/pages-readiness.d.ts +2 -3
- package/dist/server/pages-request-pipeline.d.ts +14 -12
- package/dist/server/pages-request-pipeline.js +60 -30
- package/dist/server/pages-request-stage-entry.d.ts +23 -0
- package/dist/server/pages-request-stage-entry.js +314 -0
- package/dist/server/pages-response-stage-entry.d.ts +11 -0
- package/dist/server/pages-response-stage-entry.js +106 -0
- package/dist/server/pages-response-stage.d.ts +31 -0
- package/dist/server/pages-response-stage.js +49 -0
- package/dist/server/pages-revalidate.d.ts +3 -4
- package/dist/server/pages-revalidate.js +9 -4
- package/dist/server/pages-route-data-kind.d.ts +18 -0
- package/dist/server/pages-route-data-kind.js +11 -0
- package/dist/server/pages-router-entry.d.ts +1 -25
- package/dist/server/pages-router-entry.js +35 -148
- package/dist/server/pages-serializable-props.d.ts +3 -4
- package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
- package/dist/server/pregenerated-concrete-paths.js +12 -6
- package/dist/server/prerender-cache-life-header.d.ts +3 -4
- package/dist/server/prerender-manifest.d.ts +11 -11
- package/dist/server/prerender-manifest.js +6 -3
- package/dist/server/prerender-route-params.d.ts +16 -9
- package/dist/server/prerender-route-params.js +18 -3
- package/dist/server/prerender-work-unit-setup.d.ts +2 -3
- package/dist/server/prerender-work-unit-setup.js +5 -5
- package/dist/server/prod-server.d.ts +12 -9
- package/dist/server/prod-server.js +124 -31
- package/dist/server/proxy-trust.d.ts +5 -6
- package/dist/server/request-log.d.ts +3 -4
- package/dist/server/request-pipeline.d.ts +16 -16
- package/dist/server/request-pipeline.js +7 -2
- package/dist/server/request-stage.d.ts +5 -0
- package/dist/server/request-stage.js +7 -0
- package/dist/server/request-tracing.d.ts +22 -0
- package/dist/server/request-tracing.js +180 -0
- package/dist/server/response-stage-cacheability.d.ts +37 -0
- package/dist/server/response-stage-cacheability.js +55 -0
- package/dist/server/response-stage-policy.d.ts +23 -0
- package/dist/server/response-stage-policy.js +89 -0
- package/dist/server/response-stage.d.ts +5 -0
- package/dist/server/response-stage.js +7 -0
- package/dist/server/response-start-tracing.d.ts +14 -0
- package/dist/server/response-start-tracing.js +80 -0
- package/dist/server/revalidation-host.d.ts +2 -3
- package/dist/server/revalidation-host.js +1 -1
- package/dist/server/revalidation-request.d.ts +8 -0
- package/dist/server/revalidation-request.js +37 -0
- package/dist/server/rsc-completion-metadata.d.ts +6 -7
- package/dist/server/rsc-stream-hints.d.ts +18 -7
- package/dist/server/rsc-stream-hints.js +70 -35
- package/dist/server/seed-cache.d.ts +2 -3
- package/dist/server/seed-cache.js +8 -7
- package/dist/server/server-action-not-found.d.ts +5 -6
- package/dist/server/server-globals.d.ts +2 -3
- package/dist/server/skip-cache-proof.d.ts +4 -4
- package/dist/server/socket-error-backstop.d.ts +5 -6
- package/dist/server/socket-error-backstop.js +1 -1
- package/dist/server/static-file-cache.d.ts +5 -6
- package/dist/server/static-file-cache.js +9 -7
- package/dist/server/static-file-signal.d.ts +9 -6
- package/dist/server/static-file-signal.js +51 -2
- package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
- package/dist/server/streaming-metadata.d.ts +2 -3
- package/dist/server/tracer.d.ts +5 -0
- package/dist/server/tracer.js +13 -0
- package/dist/server/worker-prerender-discovery.d.ts +5 -6
- package/dist/server/worker-revalidation-context.d.ts +2 -3
- package/dist/server/worker-revalidation-context.js +5 -5
- package/dist/server/worker-stages.d.ts +43 -0
- package/dist/server/worker-stages.js +25 -0
- package/dist/server/worker-utils.d.ts +5 -6
- package/dist/server/worker-utils.js +2 -1
- package/dist/server/workers-tracing.d.ts +17 -0
- package/dist/server/workers-tracing.js +27 -0
- package/dist/shims/amp.d.ts +3 -4
- package/dist/shims/app-router-scroll-state.d.ts +9 -10
- package/dist/shims/app-router-scroll.d.ts +4 -5
- package/dist/shims/app-router-scroll.js +2 -1
- package/dist/shims/app.d.ts +5 -6
- package/dist/shims/before-interactive-context.d.ts +5 -6
- package/dist/shims/cache-callable-runtime.d.ts +44 -4
- package/dist/shims/cache-callable-runtime.js +168 -8
- package/dist/shims/cache-for-request.d.ts +2 -3
- package/dist/shims/cache-handler.d.ts +33 -20
- package/dist/shims/cache-handler.js +61 -2
- package/dist/shims/cache-request-state.d.ts +28 -29
- package/dist/shims/cache-runtime.d.ts +23 -21
- package/dist/shims/cache-runtime.js +107 -27
- package/dist/shims/cache.d.ts +15 -15
- package/dist/shims/cache.js +15 -13
- package/dist/shims/cacheability-classification.d.ts +49 -28
- package/dist/shims/cacheability-classification.js +27 -12
- package/dist/shims/cdn-cache-state.d.ts +13 -0
- package/dist/shims/cdn-cache-state.js +23 -0
- package/dist/shims/cdn-cache.d.ts +50 -21
- package/dist/shims/cdn-cache.js +15 -38
- package/dist/shims/client-hook-error.d.ts +3 -4
- package/dist/shims/client-locale.d.ts +2 -3
- package/dist/shims/client-page-root.d.ts +24 -0
- package/dist/shims/client-page-root.js +121 -0
- package/dist/shims/compat-router.d.ts +2 -3
- package/dist/shims/config.d.ts +3 -4
- package/dist/shims/constants.d.ts +73 -74
- package/dist/shims/constants.js +1 -1
- package/dist/shims/default-not-found.d.ts +2 -3
- package/dist/shims/document.d.ts +9 -9
- package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
- package/dist/shims/dynamic-preload-chunks.js +17 -13
- package/dist/shims/dynamic.d.ts +3 -3
- package/dist/shims/error-boundary-navigation.d.ts +3 -4
- package/dist/shims/error-boundary.d.ts +17 -18
- package/dist/shims/error-boundary.js +17 -11
- package/dist/shims/error.d.ts +4 -4
- package/dist/shims/error.react-server.d.ts +3 -4
- package/dist/shims/fetch-cache.d.ts +22 -22
- package/dist/shims/fetch-cache.js +42 -17
- package/dist/shims/font-google-base.d.ts +9 -9
- package/dist/shims/font-google-base.js +2 -1
- package/dist/shims/font-local.d.ts +3 -3
- package/dist/shims/font-local.js +1 -1
- package/dist/shims/font-utils.d.ts +14 -15
- package/dist/shims/form.d.ts +2 -2
- package/dist/shims/form.js +10 -7
- package/dist/shims/hash-scroll.d.ts +5 -6
- package/dist/shims/head-state.d.ts +4 -5
- package/dist/shims/head.d.ts +16 -16
- package/dist/shims/head.js +5 -4
- package/dist/shims/headers.d.ts +67 -33
- package/dist/shims/headers.js +93 -6
- package/dist/shims/i18n-context.d.ts +5 -6
- package/dist/shims/i18n-state.d.ts +4 -5
- package/dist/shims/image-config.d.ts +5 -6
- package/dist/shims/image-config.js +2 -0
- package/dist/shims/image.d.ts +5 -5
- package/dist/shims/image.js +12 -8
- package/dist/shims/internal/als-registry.d.ts +4 -5
- package/dist/shims/internal/api-utils.d.ts +3 -4
- package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
- package/dist/shims/internal/app-page-props-cache-key.js +53 -1
- package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
- package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
- package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
- package/dist/shims/internal/app-route-detection.d.ts +2 -2
- package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
- package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
- package/dist/shims/internal/app-router-context.d.ts +9 -10
- package/dist/shims/internal/cookie-serialize.d.ts +4 -5
- package/dist/shims/internal/format-url-object.d.ts +7 -0
- package/dist/shims/internal/format-url-object.js +53 -0
- package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
- package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
- package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
- package/dist/shims/internal/interpolate-as.d.ts +5 -6
- package/dist/shims/internal/interpolate-as.js +4 -2
- package/dist/shims/internal/link-status-registry.d.ts +5 -6
- package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
- package/dist/shims/internal/navigation-untracked.d.ts +2 -3
- package/dist/shims/internal/normalize-router-href.d.ts +15 -0
- package/dist/shims/internal/normalize-router-href.js +41 -0
- package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
- package/dist/shims/internal/pages-data-target.d.ts +8 -6
- package/dist/shims/internal/pages-data-target.js +32 -36
- package/dist/shims/internal/pages-data-url.d.ts +4 -5
- package/dist/shims/internal/pages-data-url.js +2 -1
- package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
- package/dist/shims/internal/pages-router-components.d.ts +3 -4
- package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
- package/dist/shims/internal/route-pattern-for-warning.js +3 -3
- package/dist/shims/internal/router-context.d.ts +2 -3
- package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
- package/dist/shims/internal/thenable-well-known-properties.js +33 -0
- package/dist/shims/internal/utils.d.ts +7 -8
- package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
- package/dist/shims/layout-segment-context.d.ts +3 -4
- package/dist/shims/link-prefetch.d.ts +9 -10
- package/dist/shims/link.d.ts +4 -4
- package/dist/shims/link.js +56 -116
- package/dist/shims/metadata.d.ts +15 -16
- package/dist/shims/metadata.js +40 -36
- package/dist/shims/navigation-context-accessors.d.ts +9 -0
- package/dist/shims/navigation-context-accessors.js +19 -0
- package/dist/shims/navigation-context-state.d.ts +27 -18
- package/dist/shims/navigation-errors.d.ts +18 -19
- package/dist/shims/navigation-state.d.ts +6 -7
- package/dist/shims/navigation.d.ts +80 -68
- package/dist/shims/navigation.js +24 -16
- package/dist/shims/navigation.react-server.d.ts +9 -9
- package/dist/shims/offline.d.ts +2 -3
- package/dist/shims/og.d.ts +2 -2
- package/dist/shims/pages-router-runtime.d.ts +4 -5
- package/dist/shims/ppr-fallback-shell.d.ts +13 -14
- package/dist/shims/readonly-url-search-params.d.ts +2 -3
- package/dist/shims/request-context.d.ts +5 -6
- package/dist/shims/root-params.d.ts +14 -15
- package/dist/shims/router-state.d.ts +5 -6
- package/dist/shims/router-state.js +1 -1
- package/dist/shims/router.d.ts +22 -21
- package/dist/shims/router.js +339 -164
- package/dist/shims/script-nonce-context.d.ts +8 -6
- package/dist/shims/script-nonce-context.js +15 -6
- package/dist/shims/script.d.ts +4 -4
- package/dist/shims/script.js +9 -7
- package/dist/shims/search-params-gate.d.ts +35 -0
- package/dist/shims/search-params-gate.js +32 -0
- package/dist/shims/server.d.ts +19 -51
- package/dist/shims/server.js +14 -28
- package/dist/shims/slot.d.ts +33 -15
- package/dist/shims/slot.js +41 -9
- package/dist/shims/streamed-icons.d.ts +3 -4
- package/dist/shims/thenable-params.d.ts +5 -7
- package/dist/shims/thenable-params.js +3 -24
- package/dist/shims/unified-request-context.d.ts +34 -31
- package/dist/shims/unified-request-context.js +34 -24
- package/dist/shims/unrecognized-action-error.d.ts +3 -4
- package/dist/shims/url-safety.d.ts +5 -6
- package/dist/shims/url-utils.d.ts +12 -13
- package/dist/shims/use-merged-ref.d.ts +2 -3
- package/dist/shims/user-agent.d.ts +31 -0
- package/dist/shims/user-agent.js +16 -0
- package/dist/shims/web-vitals.d.ts +2 -2
- package/dist/typegen.d.ts +3 -4
- package/dist/utils/asset-prefix.d.ts +7 -8
- package/dist/utils/base-path.d.ts +5 -6
- package/dist/utils/built-asset-url.d.ts +2 -3
- package/dist/utils/built-asset-url.js +1 -1
- package/dist/utils/cache-control-metadata.d.ts +4 -5
- package/dist/utils/client-build-manifest.d.ts +6 -7
- package/dist/utils/client-build-manifest.js +2 -1
- package/dist/utils/client-entry-manifest.d.ts +6 -7
- package/dist/utils/client-runtime-metadata.d.ts +8 -3
- package/dist/utils/client-runtime-metadata.js +18 -1
- package/dist/utils/commonjs-loader.d.ts +4 -5
- package/dist/utils/compare.d.ts +2 -3
- package/dist/utils/deployment-id.d.ts +6 -7
- package/dist/utils/dev-error-recovery-event.d.ts +2 -3
- package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
- package/dist/utils/domain-locale.d.ts +7 -8
- package/dist/utils/encode-cache-tag.d.ts +3 -4
- package/dist/utils/error-cause.d.ts +2 -3
- package/dist/utils/external-url.d.ts +2 -3
- package/dist/utils/has-trailing-comma.d.ts +3 -4
- package/dist/utils/hash.d.ts +3 -4
- package/dist/utils/html-limited-bots.d.ts +3 -4
- package/dist/utils/lazy-chunks.d.ts +8 -9
- package/dist/utils/lazy-chunks.js +4 -4
- package/dist/utils/manifest-paths.d.ts +5 -6
- package/dist/utils/mdx-scan.d.ts +11 -4
- package/dist/utils/mdx-scan.js +27 -1
- package/dist/utils/middleware-request-headers.d.ts +7 -6
- package/dist/utils/middleware-request-headers.js +6 -1
- package/dist/utils/navigation-signal.d.ts +3 -3
- package/dist/utils/navigation-signal.js +16 -1
- package/dist/utils/number.d.ts +2 -3
- package/dist/utils/package-name.d.ts +3 -4
- package/dist/utils/parse-cookie.d.ts +4 -5
- package/dist/utils/path.d.ts +8 -9
- package/dist/utils/plugin-options.d.ts +2 -3
- package/dist/utils/precompressed-variant.d.ts +3 -4
- package/dist/utils/prerender-output-paths.d.ts +4 -5
- package/dist/utils/project.d.ts +19 -30
- package/dist/utils/project.js +20 -29
- package/dist/utils/promise.d.ts +2 -3
- package/dist/utils/protocol-headers.d.ts +14 -15
- package/dist/utils/public-file-path.d.ts +2 -3
- package/dist/utils/public-routes.d.ts +2 -3
- package/dist/utils/query.d.ts +14 -9
- package/dist/utils/query.js +22 -1
- package/dist/utils/react-compiler-support.d.ts +6 -7
- package/dist/utils/react-version.d.ts +4 -3
- package/dist/utils/react-version.js +19 -1
- package/dist/utils/record.d.ts +2 -3
- package/dist/utils/redirect-digest.d.ts +3 -4
- package/dist/utils/regex-safety.d.ts +4 -5
- package/dist/utils/regex.d.ts +2 -3
- package/dist/utils/safe-json-file.d.ts +2 -3
- package/dist/utils/sorted-array.d.ts +2 -3
- package/dist/utils/text-stream.d.ts +3 -4
- package/dist/utils/vinext-root.d.ts +2 -3
- package/dist/utils/virtual-module.d.ts +3 -4
- package/dist/utils/vite-cli-invocation.d.ts +21 -0
- package/dist/utils/vite-cli-invocation.js +144 -0
- package/dist/utils/vite-version.d.ts +5 -6
- package/next-package.json +4 -0
- package/package.json +47 -6
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { FrameworkSpan } from "./framework-tracer.js";
|
|
2
|
+
//#region src/server/app-page-tracing.d.ts
|
|
3
|
+
export declare function traceAppPageRender<T>(routePattern: string, operation: "prerender" | "render", callback: (span: FrameworkSpan) => T): T;
|
|
4
|
+
export declare function createAppPageRenderSpanDescriptor(routePattern: string, operation: "prerender" | "render"): {
|
|
5
|
+
readonly attributes: {
|
|
6
|
+
readonly "next.route": string;
|
|
7
|
+
};
|
|
8
|
+
readonly name: `prerender route (app) ${string}` | `render route (app) ${string}`;
|
|
9
|
+
readonly type: "AppRender.getBodyResult";
|
|
10
|
+
};
|
|
11
|
+
export declare function createGetLayoutOrPageModuleSpanDescriptor(segment: string): {
|
|
12
|
+
readonly attributes: {
|
|
13
|
+
readonly "next.segment": string;
|
|
14
|
+
};
|
|
15
|
+
readonly name: "resolve segment modules";
|
|
16
|
+
readonly type: "NextNodeServer.getLayoutOrPageModule";
|
|
17
|
+
};
|
|
18
|
+
export declare function createComponentTreeSpanDescriptor(): {
|
|
19
|
+
readonly name: "build component tree";
|
|
20
|
+
readonly type: "NextNodeServer.createComponentTree";
|
|
21
|
+
};
|
|
22
|
+
export declare function traceCreateComponentTree<T>(callback: () => T): T;
|
|
23
|
+
export declare function traceGetLayoutOrPageModule<T>(segment: string, callback: () => T): T;
|
|
24
|
+
export declare function resolveAppPageModuleTraceSegment(routeSegments: readonly string[], treePosition: number): string;
|
|
25
|
+
export declare function recordAppPageRenderError(span: FrameworkSpan, error: unknown): void;
|
|
26
|
+
export declare function resolveAppPageTraceOperation(options: {
|
|
27
|
+
hasRequestSearchParams: boolean;
|
|
28
|
+
isDynamicError: boolean;
|
|
29
|
+
isForceStatic: boolean;
|
|
30
|
+
isKnownPrerenderedRoute: boolean;
|
|
31
|
+
isPrerender: boolean;
|
|
32
|
+
}): "prerender" | "render";
|
|
33
|
+
//#endregion
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { patternToNextFormat } from "../routing/route-validation.js";
|
|
2
|
+
import { recordFrameworkSpanError } from "./framework-tracer.js";
|
|
3
|
+
import { frameworkTracer } from "./tracer.js";
|
|
4
|
+
import { getDigestForWellKnownError, isAppRenderAbortError } from "./app-rsc-errors.js";
|
|
5
|
+
//#region src/server/app-page-tracing.ts
|
|
6
|
+
function traceAppPageRender(routePattern, operation, callback) {
|
|
7
|
+
return frameworkTracer.trace(createAppPageRenderSpanDescriptor(routePattern, operation), callback);
|
|
8
|
+
}
|
|
9
|
+
function createAppPageRenderSpanDescriptor(routePattern, operation) {
|
|
10
|
+
const route = patternToNextFormat(routePattern);
|
|
11
|
+
return {
|
|
12
|
+
attributes: { "next.route": route },
|
|
13
|
+
name: `${operation} route (app) ${route}`,
|
|
14
|
+
type: "AppRender.getBodyResult"
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function createGetLayoutOrPageModuleSpanDescriptor(segment) {
|
|
18
|
+
return {
|
|
19
|
+
attributes: { "next.segment": segment },
|
|
20
|
+
name: "resolve segment modules",
|
|
21
|
+
type: "NextNodeServer.getLayoutOrPageModule"
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function createComponentTreeSpanDescriptor() {
|
|
25
|
+
return {
|
|
26
|
+
name: "build component tree",
|
|
27
|
+
type: "NextNodeServer.createComponentTree"
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
function traceCreateComponentTree(callback) {
|
|
31
|
+
return frameworkTracer.trace(createComponentTreeSpanDescriptor(), callback);
|
|
32
|
+
}
|
|
33
|
+
function traceGetLayoutOrPageModule(segment, callback) {
|
|
34
|
+
return frameworkTracer.trace(createGetLayoutOrPageModuleSpanDescriptor(segment), callback);
|
|
35
|
+
}
|
|
36
|
+
function resolveAppPageModuleTraceSegment(routeSegments, treePosition) {
|
|
37
|
+
return treePosition === 0 ? "" : routeSegments[treePosition - 1] ?? "";
|
|
38
|
+
}
|
|
39
|
+
function recordAppPageRenderError(span, error) {
|
|
40
|
+
if (isAppRenderAbortError(error) || getDigestForWellKnownError(error) !== void 0) return;
|
|
41
|
+
recordFrameworkSpanError(span, error);
|
|
42
|
+
}
|
|
43
|
+
function resolveAppPageTraceOperation(options) {
|
|
44
|
+
if (options.isPrerender || options.isForceStatic || options.isDynamicError) return "prerender";
|
|
45
|
+
if (options.hasRequestSearchParams) return "render";
|
|
46
|
+
return options.isKnownPrerenderedRoute ? "prerender" : "render";
|
|
47
|
+
}
|
|
48
|
+
//#endregion
|
|
49
|
+
export { createAppPageRenderSpanDescriptor, createComponentTreeSpanDescriptor, createGetLayoutOrPageModuleSpanDescriptor, recordAppPageRenderError, resolveAppPageModuleTraceSegment, resolveAppPageTraceOperation, traceAppPageRender, traceCreateComponentTree, traceGetLayoutOrPageModule };
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { AppMiddlewareContext } from "./app-middleware.js";
|
|
2
2
|
import { EdgeApiExecutionRuntime } from "./edge-api-runtime.js";
|
|
3
3
|
//#region src/server/app-pages-bridge.d.ts
|
|
4
|
-
type PagesEntry = {
|
|
5
|
-
handleApiRoute?: (request: Request, url: string, ctx: unknown, trustedRevalidateOrigin: string | undefined, edgeRuntime: EdgeApiExecutionRuntime) => Promise<Response> | Response;
|
|
4
|
+
export type PagesEntry = {
|
|
5
|
+
handleApiRoute?: (request: Request, url: string, ctx: unknown, trustedRevalidateOrigin: string | undefined, edgeRuntime: EdgeApiExecutionRuntime, initialResponseHeaders?: Headers) => Promise<Response> | Response;
|
|
6
6
|
matchApiRoute?: (url: string, request: Request) => PagesRouteMatch | null;
|
|
7
7
|
matchPageRoute?: (url: string, request: Request) => PagesRouteMatch | null;
|
|
8
8
|
renderPage?: (request: Request, url: string, query: Record<string, unknown>, parsedUrl: unknown, middlewareRequestHeaders?: Headers | null, options?: {
|
|
9
9
|
isDataReq?: boolean;
|
|
10
|
-
}) => Promise<Response> | Response;
|
|
10
|
+
}, initialResponseHeaders?: Headers) => Promise<Response> | Response;
|
|
11
11
|
};
|
|
12
12
|
type PagesRouteMatch = {
|
|
13
13
|
route: {
|
|
@@ -48,6 +48,7 @@ type RenderPagesFallbackOptions = {
|
|
|
48
48
|
appRouteMatch?: AppRouteMatch | null;
|
|
49
49
|
isDataRequest?: boolean;
|
|
50
50
|
isRscRequest: boolean;
|
|
51
|
+
initialResponseHeaders?: Headers;
|
|
51
52
|
matchKind?: "dynamic" | "static";
|
|
52
53
|
middlewareContext: AppMiddlewareContext;
|
|
53
54
|
pathname?: string;
|
|
@@ -58,6 +59,5 @@ type RenderPagesFallbackOptions = {
|
|
|
58
59
|
/**
|
|
59
60
|
* Fallback handler to route App Router requests to the Pages Router when no App Router route matches.
|
|
60
61
|
*/
|
|
61
|
-
declare function renderPagesFallback(options: RenderPagesFallbackOptions, dependencies: RenderPagesFallbackDependencies): Promise<Response | null>;
|
|
62
|
-
//#endregion
|
|
63
|
-
export { PagesEntry, renderPagesFallback };
|
|
62
|
+
export declare function renderPagesFallback(options: RenderPagesFallbackOptions, dependencies: RenderPagesFallbackDependencies): Promise<Response | null>;
|
|
63
|
+
//#endregion
|
|
@@ -18,7 +18,7 @@ function applyPagesMiddlewareContext(response, middlewareContext) {
|
|
|
18
18
|
* Fallback handler to route App Router requests to the Pages Router when no App Router route matches.
|
|
19
19
|
*/
|
|
20
20
|
async function renderPagesFallback(options, dependencies) {
|
|
21
|
-
const { allowRscDocumentFallback = false, appRouteMatch = null, isDataRequest = false, isRscRequest, matchKind, middlewareContext, pathname = options.url.pathname, pagesDataRequest = null, request, url } = options;
|
|
21
|
+
const { allowRscDocumentFallback = false, appRouteMatch = null, isDataRequest = false, isRscRequest, initialResponseHeaders, matchKind, middlewareContext, pathname = options.url.pathname, pagesDataRequest = null, request, url } = options;
|
|
22
22
|
const { loadPagesEntry, buildRequestHeaders, decodePathParams, applyRouteHandlerMiddlewareContext, getDraftModeCookieHeader } = dependencies;
|
|
23
23
|
if (isRscRequest && !allowRscDocumentFallback) return null;
|
|
24
24
|
const pagesEntry = await loadPagesEntry();
|
|
@@ -40,7 +40,14 @@ async function renderPagesFallback(options, dependencies) {
|
|
|
40
40
|
if (apiMatch === null || !pagesRouteHasPriorityOverAppRoute(apiMatch.route, appRouteMatch.route)) return null;
|
|
41
41
|
}
|
|
42
42
|
const executionContext = getRequestExecutionContext();
|
|
43
|
-
const
|
|
43
|
+
const apiArgs = [
|
|
44
|
+
pagesRequest,
|
|
45
|
+
pagesUrl,
|
|
46
|
+
void 0,
|
|
47
|
+
executionContext?.trustedRevalidateOrigin ?? new URL(pagesRequest.url).origin,
|
|
48
|
+
executionContext?.hostRuntime ?? "node"
|
|
49
|
+
];
|
|
50
|
+
const pagesApiResponse = await (initialResponseHeaders ? pagesEntry.handleApiRoute(...apiArgs, initialResponseHeaders) : pagesEntry.handleApiRoute(...apiArgs));
|
|
44
51
|
const draftCookie = getDraftModeCookieHeader();
|
|
45
52
|
return applyDraftModeCookie(applyRouteHandlerMiddlewareContext(pagesApiResponse, middlewareContext), draftCookie);
|
|
46
53
|
}
|
|
@@ -52,8 +59,14 @@ async function renderPagesFallback(options, dependencies) {
|
|
|
52
59
|
if (pageMatch !== null && matchKind === "dynamic" && !pageMatch.route.isDynamic) return null;
|
|
53
60
|
if (appRouteMatch !== null && (pageMatch === null || !pagesRouteHasPriorityOverAppRoute(pageMatch.route, appRouteMatch.route))) return null;
|
|
54
61
|
if (pageMatch !== null) beginRouteCacheability("pages-page", pageMatch.route.pattern);
|
|
55
|
-
const
|
|
56
|
-
|
|
62
|
+
const renderArgs = [
|
|
63
|
+
pagesDataRequest ? cloneRequestWithUrl(pagesRequest, pagesDataRequest.url) : pagesRequest,
|
|
64
|
+
pagesUrl,
|
|
65
|
+
{},
|
|
66
|
+
void 0,
|
|
67
|
+
middlewareContext.requestHeaders
|
|
68
|
+
];
|
|
69
|
+
const pagesRes = isDataRequest ? await (initialResponseHeaders ? pagesEntry.renderPage(...renderArgs, { isDataReq: true }, initialResponseHeaders) : pagesEntry.renderPage(...renderArgs, { isDataReq: true })) : await (initialResponseHeaders ? pagesEntry.renderPage(...renderArgs, void 0, initialResponseHeaders) : pagesEntry.renderPage(...renderArgs));
|
|
57
70
|
if (pagesRes.status === 404 && pageMatch === null) return null;
|
|
58
71
|
return applyDraftModeCookie(applyPagesMiddlewareContext(pagesRes, middlewareContext), getDraftModeCookieHeader());
|
|
59
72
|
}
|
|
@@ -9,6 +9,5 @@ import { RequestContext } from "../config/request-context.js";
|
|
|
9
9
|
* Falls back to `requestContextFromRequest(request)` when no HeadersContext
|
|
10
10
|
* is set (no middleware ran, or middleware didn't set request headers).
|
|
11
11
|
*/
|
|
12
|
-
declare function buildPostMwRequestContext(request: Request): RequestContext;
|
|
13
|
-
//#endregion
|
|
14
|
-
export { buildPostMwRequestContext };
|
|
12
|
+
export declare function buildPostMwRequestContext(request: Request): RequestContext;
|
|
13
|
+
//#endregion
|
|
@@ -3,7 +3,7 @@ import { ReactNode } from "react";
|
|
|
3
3
|
//#region src/server/app-ppr-fallback-shell-render.d.ts
|
|
4
4
|
type AppPageBoundaryOnError = (error: unknown, requestInfo: unknown, errorContext: unknown) => unknown;
|
|
5
5
|
type AppPageRenderableElement = ReactNode | Record<string, ReactNode>;
|
|
6
|
-
type WarmPprFallbackShellCachesOptions = {
|
|
6
|
+
export type WarmPprFallbackShellCachesOptions = {
|
|
7
7
|
element: AppPageRenderableElement;
|
|
8
8
|
onError: AppPageBoundaryOnError;
|
|
9
9
|
renderToReadableStream: (element: AppPageRenderableElement, options: {
|
|
@@ -12,6 +12,5 @@ type WarmPprFallbackShellCachesOptions = {
|
|
|
12
12
|
}) => ReadableStream<Uint8Array>;
|
|
13
13
|
state: PprFallbackShellState;
|
|
14
14
|
};
|
|
15
|
-
declare function warmPprFallbackShellCaches(options: WarmPprFallbackShellCachesOptions): Promise<void>;
|
|
16
|
-
//#endregion
|
|
17
|
-
export { WarmPprFallbackShellCachesOptions, warmPprFallbackShellCaches };
|
|
15
|
+
export declare function warmPprFallbackShellCaches(options: WarmPprFallbackShellCachesOptions): Promise<void>;
|
|
16
|
+
//#endregion
|
|
@@ -3,13 +3,14 @@ import { readAppPageBinaryStream } from "./app-page-execution.js";
|
|
|
3
3
|
//#region src/server/app-ppr-fallback-shell-render.ts
|
|
4
4
|
async function warmPprFallbackShellCaches(options) {
|
|
5
5
|
let warmupError = null;
|
|
6
|
-
const
|
|
6
|
+
const warmupStream = options.renderToReadableStream(options.element, {
|
|
7
7
|
signal: options.state.abortController.signal,
|
|
8
8
|
onError(error, requestInfo, errorContext) {
|
|
9
9
|
if (options.state.abortController.signal.aborted || isPprFallbackShellAbortError(error)) return;
|
|
10
10
|
return options.onError(error, requestInfo, errorContext);
|
|
11
11
|
}
|
|
12
|
-
})
|
|
12
|
+
});
|
|
13
|
+
const warmupDrain = readAppPageBinaryStream(warmupStream).catch((error) => {
|
|
13
14
|
if (options.state.abortController.signal.aborted || isPprFallbackShellAbortError(error)) return;
|
|
14
15
|
warmupError = error;
|
|
15
16
|
});
|
|
@@ -14,20 +14,19 @@ type AppPprFallbackShell = {
|
|
|
14
14
|
* Produced at build time by the PPR prerender and served at request time
|
|
15
15
|
* when the exact cache entry for a dynamic child param is missing.
|
|
16
16
|
*/
|
|
17
|
-
type AppPagePprFallbackCacheShell = {
|
|
17
|
+
export type AppPagePprFallbackCacheShell = {
|
|
18
18
|
fallbackParamNames: readonly string[];
|
|
19
19
|
params: Record<string, string | string[]>;
|
|
20
20
|
pathname: string;
|
|
21
21
|
};
|
|
22
|
-
declare function markAppPprDynamicFallbackShellHtml(html: string): string;
|
|
23
|
-
declare function isAppPprDynamicFallbackShellHtml(html: string): boolean;
|
|
24
|
-
declare function createAppPprFallbackShells(route: AppPprFallbackShellRoute, matchedParams: Record<string, string | string[]>): AppPprFallbackShell[];
|
|
25
|
-
declare function rewriteAppPprFallbackShellHtmlNavigation(options: {
|
|
22
|
+
export declare function markAppPprDynamicFallbackShellHtml(html: string): string;
|
|
23
|
+
export declare function isAppPprDynamicFallbackShellHtml(html: string): boolean;
|
|
24
|
+
export declare function createAppPprFallbackShells(route: AppPprFallbackShellRoute, matchedParams: Record<string, string | string[]>): AppPprFallbackShell[];
|
|
25
|
+
export declare function rewriteAppPprFallbackShellHtmlNavigation(options: {
|
|
26
26
|
html: string;
|
|
27
27
|
isForceStatic?: boolean;
|
|
28
28
|
params: Record<string, string | string[]>;
|
|
29
29
|
pathname: string;
|
|
30
30
|
searchParams: URLSearchParams;
|
|
31
31
|
}): string;
|
|
32
|
-
//#endregion
|
|
33
|
-
export { AppPagePprFallbackCacheShell, createAppPprFallbackShells, isAppPprDynamicFallbackShellHtml, markAppPprDynamicFallbackShellHtml, rewriteAppPprFallbackShellHtmlNavigation };
|
|
32
|
+
//#endregion
|
|
@@ -2,9 +2,10 @@ import { RootParams } from "../shims/root-params.js";
|
|
|
2
2
|
//#region src/server/app-prerender-endpoints.d.ts
|
|
3
3
|
type GenerateStaticParams = (args: {
|
|
4
4
|
params: RootParams;
|
|
5
|
+
rejectEmptyResults?: boolean;
|
|
5
6
|
}) => unknown;
|
|
6
|
-
type AppPrerenderStaticParamsMap = Record<string, GenerateStaticParams | null | undefined>;
|
|
7
|
-
type AppPrerenderRootParamNamesMap = Record<string, readonly string[] | undefined>;
|
|
7
|
+
export type AppPrerenderStaticParamsMap = Record<string, GenerateStaticParams | null | undefined>;
|
|
8
|
+
export type AppPrerenderRootParamNamesMap = Record<string, readonly string[] | undefined>;
|
|
8
9
|
type HandleAppPrerenderEndpointOptions = {
|
|
9
10
|
isPrerenderEnabled?: () => boolean;
|
|
10
11
|
getMetadataRoutePaths?: () => Promise<unknown>;
|
|
@@ -13,6 +14,5 @@ type HandleAppPrerenderEndpointOptions = {
|
|
|
13
14
|
rootParamNamesByPattern?: AppPrerenderRootParamNamesMap;
|
|
14
15
|
staticParamsMap: AppPrerenderStaticParamsMap;
|
|
15
16
|
};
|
|
16
|
-
declare function handleAppPrerenderEndpoint(request: Request, options: HandleAppPrerenderEndpointOptions): Promise<Response | null>;
|
|
17
|
-
//#endregion
|
|
18
|
-
export { AppPrerenderRootParamNamesMap, AppPrerenderStaticParamsMap, handleAppPrerenderEndpoint };
|
|
17
|
+
export declare function handleAppPrerenderEndpoint(request: Request, options: HandleAppPrerenderEndpointOptions): Promise<Response | null>;
|
|
18
|
+
//#endregion
|
|
@@ -38,10 +38,12 @@ async function handleStaticParamsEndpoint(request, options) {
|
|
|
38
38
|
const generateStaticParams = options.staticParamsMap[pattern];
|
|
39
39
|
if (typeof generateStaticParams !== "function") return jsonNullResponse();
|
|
40
40
|
try {
|
|
41
|
+
const params = parseParentParams(url.searchParams.get("parentParams"));
|
|
41
42
|
const result = await callAppPrerenderStaticParams({
|
|
42
43
|
fn: generateStaticParams,
|
|
43
|
-
params
|
|
44
|
+
params,
|
|
44
45
|
pattern,
|
|
46
|
+
rejectEmptyResults: url.searchParams.get("rejectEmptyResults") === "1",
|
|
45
47
|
rootParamNamesByPattern: options.rootParamNamesByPattern ?? {}
|
|
46
48
|
});
|
|
47
49
|
if (result === null) return jsonNullResponse();
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { RootParams } from "../shims/root-params.js";
|
|
2
2
|
//#region src/server/app-prerender-static-params.d.ts
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* A prerender resolver's input. `rejectEmptyResults` is set where Next.js
|
|
5
|
+
* fails the build on any generateStaticParams that returns no params
|
|
6
|
+
* (`output: "export"`, Cache Components), so the resolver hands the empty
|
|
7
|
+
* result back for the caller to reject instead of passing parents through.
|
|
8
|
+
*/
|
|
9
|
+
type AppPrerenderStaticParamsResolverInput = {
|
|
4
10
|
params: RootParams;
|
|
5
|
-
|
|
11
|
+
rejectEmptyResults?: boolean;
|
|
12
|
+
};
|
|
13
|
+
type AppPrerenderStaticParamsResolver = (input: AppPrerenderStaticParamsResolverInput) => unknown;
|
|
6
14
|
/**
|
|
7
15
|
* Build a prerender `generateStaticParams` resolver for one route pattern.
|
|
8
16
|
*
|
|
@@ -17,13 +25,13 @@ type GenerateStaticParamsFunction = (input: {
|
|
|
17
25
|
*
|
|
18
26
|
* Returns `null` (no resolver) only when the pattern has zero sources at all.
|
|
19
27
|
*/
|
|
20
|
-
declare function createAppPrerenderStaticParamsResolver(sources: readonly unknown[], rootParamNames?: readonly string[]):
|
|
28
|
+
export declare function createAppPrerenderStaticParamsResolver(sources: readonly unknown[], rootParamNames?: readonly string[]): AppPrerenderStaticParamsResolver | null;
|
|
21
29
|
type CallAppPrerenderStaticParamsOptions = {
|
|
22
|
-
fn:
|
|
30
|
+
fn: AppPrerenderStaticParamsResolver;
|
|
23
31
|
params: RootParams;
|
|
24
32
|
pattern: string;
|
|
33
|
+
rejectEmptyResults?: boolean;
|
|
25
34
|
rootParamNamesByPattern: Record<string, readonly string[] | undefined>;
|
|
26
35
|
};
|
|
27
|
-
declare function callAppPrerenderStaticParams(options: CallAppPrerenderStaticParamsOptions): Promise<unknown>;
|
|
28
|
-
//#endregion
|
|
29
|
-
export { callAppPrerenderStaticParams, createAppPrerenderStaticParamsResolver };
|
|
36
|
+
export declare function callAppPrerenderStaticParams(options: CallAppPrerenderStaticParamsOptions): Promise<unknown>;
|
|
37
|
+
//#endregion
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { isUnknownRecord } from "../utils/record.js";
|
|
2
2
|
import { pickRootParams, runWithRootParamsScope } from "../shims/root-params.js";
|
|
3
3
|
//#region src/server/app-prerender-static-params.ts
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Next.js rejects malformed generateStaticParams output in every mode
|
|
6
|
+
* (build/static-paths/app.ts callGenerateStaticParams), so it must never read
|
|
7
|
+
* as an empty result that later providers continue from.
|
|
8
|
+
*/
|
|
5
9
|
function invalidGenerateStaticParamsResult(message) {
|
|
6
|
-
|
|
7
|
-
return [];
|
|
10
|
+
throw new Error(message);
|
|
8
11
|
}
|
|
9
12
|
function isGenerateStaticParamsFunction(value) {
|
|
10
13
|
return typeof value === "function";
|
|
@@ -55,19 +58,27 @@ function createAppPrerenderStaticParamsResolver(sources, rootParamNames) {
|
|
|
55
58
|
if (fns.length === 0) return null;
|
|
56
59
|
if (fns.length === 1) {
|
|
57
60
|
const single = fns[0];
|
|
58
|
-
|
|
59
|
-
|
|
61
|
+
const picked = filterRootParams(input.params);
|
|
62
|
+
return runWithRootParamsScope(picked, async () => {
|
|
63
|
+
const result = await single({ params: input.params });
|
|
60
64
|
if (!Array.isArray(result)) return invalidGenerateStaticParamsResult("generateStaticParams must return an array");
|
|
61
65
|
for (const item of result) if (!isRootParams(item)) return invalidGenerateStaticParamsResult("generateStaticParams must return an array of objects");
|
|
62
66
|
return result;
|
|
63
67
|
});
|
|
64
68
|
}
|
|
65
|
-
let paramSets = [input.params];
|
|
69
|
+
let paramSets = Object.keys(input.params).length > 0 ? [input.params] : [];
|
|
66
70
|
for (const generateStaticParams of fns) {
|
|
67
71
|
const nextParamSets = [];
|
|
68
|
-
|
|
69
|
-
|
|
72
|
+
const hasParentSets = paramSets.length > 0;
|
|
73
|
+
for (const parentParams of hasParentSets ? paramSets : [{}]) {
|
|
74
|
+
const rootScope = filterRootParams(parentParams);
|
|
75
|
+
const result = await runWithRootParamsScope(rootScope, async () => generateStaticParams({ params: parentParams }));
|
|
70
76
|
if (!Array.isArray(result)) return invalidGenerateStaticParamsResult("generateStaticParams must return an array");
|
|
77
|
+
if (result.length === 0) {
|
|
78
|
+
if (input.rejectEmptyResults) return [];
|
|
79
|
+
if (hasParentSets) nextParamSets.push(parentParams);
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
71
82
|
for (const item of result) {
|
|
72
83
|
if (!isRootParams(item)) return invalidGenerateStaticParamsResult("generateStaticParams must return an array of objects");
|
|
73
84
|
nextParamSets.push({
|
|
@@ -82,7 +93,11 @@ function createAppPrerenderStaticParamsResolver(sources, rootParamNames) {
|
|
|
82
93
|
};
|
|
83
94
|
}
|
|
84
95
|
async function callAppPrerenderStaticParams(options) {
|
|
85
|
-
|
|
96
|
+
const picked = pickRootParams(options.params, options.rootParamNamesByPattern[options.pattern]);
|
|
97
|
+
return runWithRootParamsScope(picked, () => options.fn(options.rejectEmptyResults ? {
|
|
98
|
+
params: options.params,
|
|
99
|
+
rejectEmptyResults: true
|
|
100
|
+
} : { params: options.params }));
|
|
86
101
|
}
|
|
87
102
|
//#endregion
|
|
88
103
|
export { callAppPrerenderStaticParams, createAppPrerenderStaticParamsResolver };
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
import { ComponentType, ReactNode } from "react";
|
|
2
2
|
//#region src/server/app-render-dependency.d.ts
|
|
3
|
-
type AppRenderDependency = {
|
|
3
|
+
export type AppRenderDependency = {
|
|
4
4
|
promise: Promise<void>;
|
|
5
5
|
release: () => void;
|
|
6
6
|
};
|
|
7
|
-
type AppPageRenderDependency = AppRenderDependency & {
|
|
7
|
+
export type AppPageRenderDependency = AppRenderDependency & {
|
|
8
8
|
resultDependencies: readonly AppRenderDependency[];
|
|
9
9
|
setResultDependencies: (dependencies: readonly AppRenderDependency[]) => void;
|
|
10
10
|
};
|
|
11
|
-
|
|
12
|
-
declare function
|
|
13
|
-
declare function
|
|
14
|
-
declare function
|
|
15
|
-
declare function
|
|
16
|
-
declare function
|
|
17
|
-
declare function
|
|
18
|
-
declare function
|
|
19
|
-
declare function
|
|
20
|
-
|
|
21
|
-
export
|
|
11
|
+
/** Whether `component` is a "use client" export seen from the RSC environment. */
|
|
12
|
+
export declare function isAppClientReference(component: unknown): boolean;
|
|
13
|
+
export declare function isReactOwnedAppComponent(component: unknown): boolean;
|
|
14
|
+
export declare function invokeAppComponent(component: ComponentType<Record<string, unknown>>, props: Readonly<Record<string, unknown>>): ReactNode | Promise<ReactNode>;
|
|
15
|
+
export declare function registerAppElementRenderDependencies(elements: Readonly<Record<string, unknown>>, dependenciesByElementId: ReadonlyMap<string, AppRenderDependency>): void;
|
|
16
|
+
export declare function releaseAppElementRenderDependency(elements: Readonly<Record<string, unknown>>, elementId: string): void;
|
|
17
|
+
export declare function createAppRenderDependency(): AppRenderDependency;
|
|
18
|
+
export declare function createAppPageRenderDependency(): AppPageRenderDependency;
|
|
19
|
+
export declare function isAppRenderSuspension(error: unknown): boolean;
|
|
20
|
+
export declare function renderAfterAppDependencies(children: ReactNode, dependencies: readonly AppRenderDependency[]): ReactNode;
|
|
21
|
+
export declare function renderAppComponentWithDependencyBarrier(component: ComponentType<Record<string, unknown>>, props: Readonly<Record<string, unknown>>, dependency: AppRenderDependency): ReactNode;
|
|
22
|
+
//#endregion
|
|
@@ -6,6 +6,10 @@ const REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference");
|
|
|
6
6
|
const REACT_FORWARD_REF = Symbol.for("react.forward_ref");
|
|
7
7
|
const REACT_LAZY = Symbol.for("react.lazy");
|
|
8
8
|
const REACT_MEMO = Symbol.for("react.memo");
|
|
9
|
+
/** Whether `component` is a "use client" export seen from the RSC environment. */
|
|
10
|
+
function isAppClientReference(component) {
|
|
11
|
+
return component?.$$typeof === REACT_CLIENT_REFERENCE;
|
|
12
|
+
}
|
|
9
13
|
function isReactOwnedAppComponent(component) {
|
|
10
14
|
const candidate = component;
|
|
11
15
|
if (candidate?.$$typeof === REACT_MEMO || candidate?.$$typeof === REACT_LAZY || candidate?.$$typeof === REACT_FORWARD_REF) return false;
|
|
@@ -88,4 +92,4 @@ function renderAppComponentWithDependencyBarrier(component, props, dependency) {
|
|
|
88
92
|
return createElement(AppComponentDependencyBarrier);
|
|
89
93
|
}
|
|
90
94
|
//#endregion
|
|
91
|
-
export { createAppPageRenderDependency, createAppRenderDependency, invokeAppComponent, isAppRenderSuspension, isReactOwnedAppComponent, registerAppElementRenderDependencies, releaseAppElementRenderDependency, renderAfterAppDependencies, renderAppComponentWithDependencyBarrier };
|
|
95
|
+
export { createAppPageRenderDependency, createAppRenderDependency, invokeAppComponent, isAppClientReference, isAppRenderSuspension, isReactOwnedAppComponent, registerAppElementRenderDependencies, releaseAppElementRenderDependency, renderAfterAppDependencies, renderAppComponentWithDependencyBarrier };
|
|
@@ -8,7 +8,7 @@ import "../shims/navigation-server.js";
|
|
|
8
8
|
*
|
|
9
9
|
* Clearing nav context (ctx === null) also clears root params.
|
|
10
10
|
*/
|
|
11
|
-
declare function setAppNavigationContext(ctx: NavigationContext | null): void;
|
|
11
|
+
export declare function setAppNavigationContext(ctx: NavigationContext | null): void;
|
|
12
12
|
/**
|
|
13
13
|
* Clear all per-request ALS state owned by the App Router handler.
|
|
14
14
|
* Must be called before returning a non-page response (redirect, public
|
|
@@ -16,6 +16,5 @@ declare function setAppNavigationContext(ctx: NavigationContext | null): void;
|
|
|
16
16
|
*
|
|
17
17
|
* Clears: headers, navigation context, root params.
|
|
18
18
|
*/
|
|
19
|
-
declare function clearAppRequestContext(): void;
|
|
20
|
-
//#endregion
|
|
21
|
-
export { clearAppRequestContext, setAppNavigationContext };
|
|
19
|
+
export declare function clearAppRequestContext(): void;
|
|
20
|
+
//#endregion
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
//#region src/server/app-request-stage-context.d.ts
|
|
2
|
+
/** The request stage does not render user code, so it owns no navigation context. */
|
|
3
|
+
export declare function setAppRequestStageNavigationContext(): void;
|
|
4
|
+
export declare function clearAppRequestStageContext(): void;
|
|
5
|
+
//#endregion
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { setHeadersContext } from "../shims/headers.js";
|
|
2
|
+
import { setRootParams } from "../shims/root-params.js";
|
|
3
|
+
//#region src/server/app-request-stage-context.ts
|
|
4
|
+
/** The request stage does not render user code, so it owns no navigation context. */
|
|
5
|
+
function setAppRequestStageNavigationContext() {}
|
|
6
|
+
function clearAppRequestStageContext() {
|
|
7
|
+
setHeadersContext(null);
|
|
8
|
+
setRootParams(null);
|
|
9
|
+
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { clearAppRequestStageContext, setAppRequestStageNavigationContext };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { VinextCacheabilityProbeMode } from "./multi-stage.js";
|
|
2
|
+
import { TrustedPrerenderState } from "./prerender-route-params.js";
|
|
3
|
+
import { DispatchAppWorkerResponseStage } from "./app-worker-stages.js";
|
|
4
|
+
import { AppRscRequestHandler } from "./app-rsc-handler.js";
|
|
5
|
+
//#region src/server/app-request-stage-dispatch.d.ts
|
|
6
|
+
export type AppRequestStageDispatchOptions = {
|
|
7
|
+
basePath: string;
|
|
8
|
+
buildId: string | null;
|
|
9
|
+
draftModeSecret: string;
|
|
10
|
+
handleRequest: AppRscRequestHandler;
|
|
11
|
+
prerenderDiscovery: boolean;
|
|
12
|
+
probeMode: VinextCacheabilityProbeMode | null;
|
|
13
|
+
trustedPrerenderState?: TrustedPrerenderState | null;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Whether this request needs the complete App response graph before ordinary
|
|
17
|
+
* request-stage routing can safely classify it.
|
|
18
|
+
*/
|
|
19
|
+
export declare function appRequestUsesFullResponseGraph(request: Request, options: Pick<AppRequestStageDispatchOptions, "basePath" | "draftModeSecret" | "probeMode" | "trustedPrerenderState">): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Select the request-only or complete App graph and perform the transport
|
|
22
|
+
* bookkeeping needed by a full-stage dispatch.
|
|
23
|
+
*/
|
|
24
|
+
export declare function dispatchAppRequestStage(request: Request, ctx: unknown, dispatchResponseStage: DispatchAppWorkerResponseStage | null | undefined, options: AppRequestStageDispatchOptions): Promise<Response>;
|
|
25
|
+
//#endregion
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import "../utils/protocol-headers.js";
|
|
2
|
+
import "./headers.js";
|
|
3
|
+
import { restoreStaticFileSignalFromTransport } from "./static-file-signal.js";
|
|
4
|
+
import { isDraftModeRequest } from "../shims/headers.js";
|
|
5
|
+
import { getScriptNonceFromHeaderSources } from "./csp.js";
|
|
6
|
+
import { isRouteTreePrefetchRequest } from "./app-route-tree-prefetch.js";
|
|
7
|
+
import "./app-worker-stages.js";
|
|
8
|
+
//#region src/server/app-request-stage-dispatch.ts
|
|
9
|
+
/**
|
|
10
|
+
* Whether this request needs the complete App response graph before ordinary
|
|
11
|
+
* request-stage routing can safely classify it.
|
|
12
|
+
*/
|
|
13
|
+
function appRequestUsesFullResponseGraph(request, options) {
|
|
14
|
+
if (request.method !== "GET" && request.method !== "HEAD") return true;
|
|
15
|
+
if (request.headers.get("upgrade")?.split(",").some((value) => value.trim().toLowerCase() === "websocket")) return true;
|
|
16
|
+
if (process.env.VINEXT_PRERENDER === "1") return true;
|
|
17
|
+
if (options.trustedPrerenderState) return true;
|
|
18
|
+
if (isDraftModeRequest(request, options.draftModeSecret)) return true;
|
|
19
|
+
if (request.headers.has("x-vinext-prerender-route-params")) return true;
|
|
20
|
+
if (getScriptNonceFromHeaderSources(request.headers) !== void 0 || isRouteTreePrefetchRequest(request)) return true;
|
|
21
|
+
const url = new URL(request.url);
|
|
22
|
+
return (options.basePath && url.pathname.startsWith(options.basePath + "/") ? url.pathname.slice(options.basePath.length) : url.pathname).startsWith("/__vinext/");
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Select the request-only or complete App graph and perform the transport
|
|
26
|
+
* bookkeeping needed by a full-stage dispatch.
|
|
27
|
+
*/
|
|
28
|
+
async function dispatchAppRequestStage(request, ctx, dispatchResponseStage, options) {
|
|
29
|
+
if (!dispatchResponseStage) throw new Error("App request stage requires a response-stage dispatcher");
|
|
30
|
+
if (appRequestUsesFullResponseGraph(request, options)) {
|
|
31
|
+
const staticFileSignalToken = crypto.randomUUID();
|
|
32
|
+
const response = await dispatchResponseStage(request, {
|
|
33
|
+
kind: "app-full-request",
|
|
34
|
+
buildId: options.buildId,
|
|
35
|
+
cacheability: {
|
|
36
|
+
policyHeaders: null,
|
|
37
|
+
probeMode: options.probeMode,
|
|
38
|
+
resolvedRoutePathname: new URL(request.url).pathname
|
|
39
|
+
},
|
|
40
|
+
draftModeCookie: null,
|
|
41
|
+
middlewareCookieOverlay: null,
|
|
42
|
+
prerenderDiscovery: options.prerenderDiscovery,
|
|
43
|
+
protocolVersion: 10,
|
|
44
|
+
requestOrigin: new URL(request.url).origin,
|
|
45
|
+
scriptNonce: null,
|
|
46
|
+
staticFileSignalToken,
|
|
47
|
+
trustedPrerenderState: options.trustedPrerenderState ?? null
|
|
48
|
+
}, { cache: "bypass" });
|
|
49
|
+
return restoreStaticFileSignalFromTransport(response, staticFileSignalToken);
|
|
50
|
+
}
|
|
51
|
+
return options.handleRequest(request, ctx, false, dispatchResponseStage, options.probeMode);
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { appRequestUsesFullResponseGraph, dispatchAppRequestStage };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { VinextRequestStageContext } from "./multi-stage.js";
|
|
2
|
+
import { ExecutionContextLike } from "../shims/request-context.js";
|
|
3
|
+
import { DispatchAppWorkerResponseStage } from "./app-worker-stages.js";
|
|
4
|
+
//#region src/server/app-request-stage-independent-entry.d.ts
|
|
5
|
+
export type AppRequestStageEnv = Record<string, unknown>;
|
|
6
|
+
type AppRequestStageContext = ExecutionContextLike & VinextRequestStageContext;
|
|
7
|
+
export declare function handleRequestStage(request: Request, env: AppRequestStageEnv | undefined, ctx: AppRequestStageContext | undefined, dispatchResponseStage: DispatchAppWorkerResponseStage): Promise<Response>;
|
|
8
|
+
//#endregion
|