vinext 1.0.0-beta.8 → 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 +158 -84
- 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 +82 -8
- package/dist/build/prerender-paths.js +814 -99
- 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 +67 -15
- package/dist/build/prerender.js +177 -64
- 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 +38 -19
- package/dist/build/report.js +73 -4
- 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 +7 -8
- package/dist/cache/cache-adapters-virtual.d.ts +95 -9
- package/dist/cache/cache-adapters-virtual.js +58 -6
- 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 -435
- 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 -8
- package/dist/client/window-next.d.ts +4 -5
- package/dist/config/config-matchers.d.ts +16 -16
- package/dist/config/config-matchers.js +10 -7
- 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 +5 -6
- package/dist/entries/app-browser-entry.js +3 -2
- package/dist/entries/app-rsc-entry.d.ts +12 -3
- package/dist/entries/app-rsc-entry.js +530 -55
- package/dist/entries/app-rsc-manifest.d.ts +4 -3
- package/dist/entries/app-rsc-manifest.js +27 -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 +237 -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 +832 -199
- package/dist/init-cloudflare.d.ts +27 -16
- package/dist/init-cloudflare.js +754 -113
- 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 +20 -5
- package/dist/routing/app-router.js +28 -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 +121 -40
- 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 +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 +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-browser-visible-commit.js +1 -1
- 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 +15 -7
- package/dist/server/app-middleware.js +30 -5
- 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 +14 -10
- package/dist/server/app-optimistic-routing.js +16 -3
- 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 +2 -1
- package/dist/server/app-page-cache-finalizer.d.ts +32 -8
- package/dist/server/app-page-cache-finalizer.js +118 -14
- 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 +96 -25
- package/dist/server/app-page-dispatch.d.ts +36 -12
- package/dist/server/app-page-dispatch.js +188 -63
- 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 +12 -8
- 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 +42 -6
- package/dist/server/app-page-render.js +192 -28
- 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 +31 -13
- 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 +35 -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 +19 -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 +26 -12
- package/dist/server/app-prerender-static-params.d.ts +15 -7
- package/dist/server/app-prerender-static-params.js +33 -11
- 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 +75 -57
- package/dist/server/app-route-handler-execution.d.ts +18 -13
- package/dist/server/app-route-handler-execution.js +189 -25
- 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 +22 -10
- package/dist/server/app-route-handler-policy.js +19 -4
- 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 +76 -12
- package/dist/server/app-rsc-cache-busting.d.ts +47 -22
- package/dist/server/app-rsc-cache-busting.js +80 -18
- 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 +33 -6
- package/dist/server/app-rsc-handler.js +498 -83
- 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 +24 -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 +4 -4
- package/dist/server/app-rsc-route-matching.js +4 -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 +120 -6
- package/dist/server/app-segment-config.js +264 -12
- package/dist/server/app-server-action-execution.d.ts +16 -12
- package/dist/server/app-server-action-execution.js +88 -35
- package/dist/server/app-ssr-entry.d.ts +14 -4
- package/dist/server/app-ssr-entry.js +64 -17
- 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 +39 -11
- package/dist/server/cache-control.js +104 -7
- 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 +8 -0
- package/dist/server/cacheability-limits.js +9 -0
- package/dist/server/cacheability-manifest.d.ts +68 -0
- package/dist/server/cacheability-manifest.js +241 -0
- package/dist/server/cacheability-request.d.ts +49 -0
- package/dist/server/cacheability-request.js +559 -0
- 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 +39 -5
- 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 +62 -56
- package/dist/server/headers.js +33 -20
- 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 +13 -6
- package/dist/server/middleware-matcher.js +22 -1
- 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 +13 -8
- package/dist/server/middleware-runtime.js +54 -10
- 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/normalize-path.js +1 -1
- 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 +21 -8
- 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-i18n.js +3 -2
- 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 +98 -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 +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 +16 -12
- package/dist/server/pages-request-pipeline.js +69 -28
- 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 +48 -114
- 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 -2
- package/dist/server/prerender-work-unit-setup.d.ts +4 -4
- package/dist/server/prerender-work-unit-setup.js +37 -14
- package/dist/server/prod-server.d.ts +12 -9
- package/dist/server/prod-server.js +129 -36
- 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 +17 -21
- package/dist/server/request-pipeline.js +8 -10
- 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 +2 -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/server-globals.js +13 -0
- 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 +16 -0
- package/dist/server/static-file-signal.js +82 -0
- 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 +18 -0
- package/dist/server/worker-prerender-discovery.js +55 -0
- 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 +4 -4
- 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 +239 -121
- package/dist/shims/cache.d.ts +15 -15
- package/dist/shims/cache.js +25 -13
- package/dist/shims/cacheability-classification.d.ts +106 -0
- package/dist/shims/cacheability-classification.js +161 -0
- 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 +76 -18
- package/dist/shims/cdn-cache.js +40 -39
- 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.js +1 -1
- 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 +50 -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 +68 -32
- package/dist/shims/headers.js +101 -10
- 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 +13 -0
- package/dist/shims/internal/app-prefetch-rsc-request.js +12 -0
- package/dist/shims/internal/app-route-detection.d.ts +2 -2
- package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -6
- package/dist/shims/internal/app-route-prefetch-policy.js +1 -0
- 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-direct.js +29 -11
- package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
- package/dist/shims/internal/hybrid-client-route-owner.js +5 -4
- 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 +8 -3
- package/dist/shims/internal/make-hanging-promise.js +13 -2
- 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 +12 -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 +67 -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 +45 -17
- package/dist/shims/navigation.react-server.d.ts +9 -9
- package/dist/shims/navigation.react-server.js +1 -1
- 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 +7 -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 +18 -12
- package/dist/shims/url-utils.js +10 -1
- 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 +9 -10
- package/dist/utils/prerender-output-paths.js +16 -9
- 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 +55 -6
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
//#region src/server/app-hydration-cache-publication.d.ts
|
|
2
|
-
type HydrationCachePublication = {
|
|
2
|
+
export type HydrationCachePublication = {
|
|
3
3
|
commit(): void;
|
|
4
4
|
complete(): void;
|
|
5
5
|
fail(): void;
|
|
6
6
|
invalidate(): void;
|
|
7
7
|
publish(publishCandidate: () => () => void): void;
|
|
8
8
|
};
|
|
9
|
-
declare function createHydrationCachePublication(): HydrationCachePublication;
|
|
10
|
-
//#endregion
|
|
11
|
-
export { HydrationCachePublication, createHydrationCachePublication };
|
|
9
|
+
export declare function createHydrationCachePublication(): HydrationCachePublication;
|
|
10
|
+
//#endregion
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
//#region src/server/app-inline-css-client.d.ts
|
|
2
2
|
type InlineCssStylesheetLinkElement = Pick<HTMLLinkElement, "getAttribute" | "hasAttribute">;
|
|
3
|
-
declare function isInlineCssStylesheetLinkElement(link: InlineCssStylesheetLinkElement): boolean;
|
|
4
|
-
declare function removeStylesheetLinksCoveredByInlineCss(): void;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { isInlineCssStylesheetLinkElement, removeStylesheetLinksCoveredByInlineCss };
|
|
3
|
+
export declare function isInlineCssStylesheetLinkElement(link: InlineCssStylesheetLinkElement): boolean;
|
|
4
|
+
export declare function removeStylesheetLinksCoveredByInlineCss(): void;
|
|
5
|
+
//#endregion
|
|
@@ -27,6 +27,5 @@
|
|
|
27
27
|
* an absent header. This is intentionally more permissive than rejecting the
|
|
28
28
|
* whole request — interception is a progressive enhancement.
|
|
29
29
|
*/
|
|
30
|
-
declare function normalizeInterceptionContextHeader(raw: string | null | undefined): string | null;
|
|
31
|
-
//#endregion
|
|
32
|
-
export { normalizeInterceptionContextHeader };
|
|
30
|
+
export declare function normalizeInterceptionContextHeader(raw: string | null | undefined): string | null;
|
|
31
|
+
//#endregion
|
|
@@ -3,7 +3,7 @@ import { ClientReuseManifestRejectionCode, ClientReuseManifestTraceFields } from
|
|
|
3
3
|
import { ThenableParamsObserver } from "../shims/thenable-params.js";
|
|
4
4
|
import { UnstableCacheObservation } from "../shims/cache-request-state.js";
|
|
5
5
|
//#region src/server/app-layout-param-observation.d.ts
|
|
6
|
-
type AppLayoutParamAccessObservation = Readonly<{
|
|
6
|
+
export type AppLayoutParamAccessObservation = Readonly<{
|
|
7
7
|
cacheLifeObserved: boolean;
|
|
8
8
|
cacheTags: readonly string[];
|
|
9
9
|
cacheableFetchCount: number;
|
|
@@ -23,7 +23,7 @@ type AppLayoutParamAccessObservation = Readonly<{
|
|
|
23
23
|
requestApis: readonly RenderRequestApiKind[];
|
|
24
24
|
unstableCaches: readonly UnstableCacheObservation[];
|
|
25
25
|
}>;
|
|
26
|
-
type AppLayoutParamAccessTracker = Readonly<{
|
|
26
|
+
export type AppLayoutParamAccessTracker = Readonly<{
|
|
27
27
|
createThenableParamsObserver: (layoutId: string) => ThenableParamsObserver;
|
|
28
28
|
getLayoutObservation: (layoutId: string) => AppLayoutParamAccessObservation;
|
|
29
29
|
recordLayoutFiniteRevalidate: (layoutId: string, revalidateSeconds: number) => void;
|
|
@@ -31,12 +31,11 @@ type AppLayoutParamAccessTracker = Readonly<{
|
|
|
31
31
|
runLayoutProbe: (layoutId: string, probe: () => unknown) => unknown;
|
|
32
32
|
}>;
|
|
33
33
|
type StaticLayoutObservationSkipCode = Extract<ClientReuseManifestRejectionCode, `SKIP_LAYOUT_${string}`>;
|
|
34
|
-
type StaticLayoutObservationSkipRejection = Readonly<{
|
|
34
|
+
export type StaticLayoutObservationSkipRejection = Readonly<{
|
|
35
35
|
code: StaticLayoutObservationSkipCode;
|
|
36
36
|
fields: ClientReuseManifestTraceFields;
|
|
37
37
|
}>;
|
|
38
|
-
declare function getStaticLayoutObservationSkipRejection(observation: AppLayoutParamAccessObservation): StaticLayoutObservationSkipRejection | null;
|
|
39
|
-
declare function isAppLayoutObservationUnsafeForStaticReuse(observation: AppLayoutParamAccessObservation): boolean;
|
|
40
|
-
declare function createAppLayoutParamAccessTracker(): AppLayoutParamAccessTracker;
|
|
41
|
-
//#endregion
|
|
42
|
-
export { AppLayoutParamAccessObservation, AppLayoutParamAccessTracker, StaticLayoutObservationSkipRejection, createAppLayoutParamAccessTracker, getStaticLayoutObservationSkipRejection, isAppLayoutObservationUnsafeForStaticReuse };
|
|
38
|
+
export declare function getStaticLayoutObservationSkipRejection(observation: AppLayoutParamAccessObservation): StaticLayoutObservationSkipRejection | null;
|
|
39
|
+
export declare function isAppLayoutObservationUnsafeForStaticReuse(observation: AppLayoutParamAccessObservation): boolean;
|
|
40
|
+
export declare function createAppLayoutParamAccessTracker(): AppLayoutParamAccessTracker;
|
|
41
|
+
//#endregion
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region src/server/app-metadata-tracing.d.ts
|
|
2
|
+
type AppMetadataModuleType = "forbidden" | "layout" | "not-found" | "page" | "unauthorized";
|
|
3
|
+
export declare function createAppMetadataModuleRoute(routeSegments: readonly string[], moduleType: AppMetadataModuleType): string;
|
|
4
|
+
export declare function traceGenerateMetadata<T>(moduleRoute: string, callback: () => T): T;
|
|
5
|
+
export declare function createGenerateMetadataSpanDescriptor(moduleRoute: string): {
|
|
6
|
+
readonly attributes: {
|
|
7
|
+
readonly "next.page": string;
|
|
8
|
+
};
|
|
9
|
+
readonly name: `generateMetadata ${string}`;
|
|
10
|
+
readonly type: "ResolveMetadata.generateMetadata";
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { frameworkTracer } from "./tracer.js";
|
|
2
|
+
//#region src/server/app-metadata-tracing.ts
|
|
3
|
+
function createAppMetadataModuleRoute(routeSegments, moduleType) {
|
|
4
|
+
return `/${[...routeSegments.filter((segment) => !segment.startsWith("@")), moduleType].join("/")}`;
|
|
5
|
+
}
|
|
6
|
+
function traceGenerateMetadata(moduleRoute, callback) {
|
|
7
|
+
return frameworkTracer.trace(createGenerateMetadataSpanDescriptor(moduleRoute), callback);
|
|
8
|
+
}
|
|
9
|
+
function createGenerateMetadataSpanDescriptor(moduleRoute) {
|
|
10
|
+
return {
|
|
11
|
+
attributes: { "next.page": moduleRoute },
|
|
12
|
+
name: `generateMetadata ${moduleRoute}`,
|
|
13
|
+
type: "ResolveMetadata.generateMetadata"
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { createAppMetadataModuleRoute, createGenerateMetadataSpanDescriptor, traceGenerateMetadata };
|
|
@@ -2,12 +2,12 @@ import { NextI18nConfig } from "../config/next-config.js";
|
|
|
2
2
|
import { MiddlewareModule } from "./middleware-runtime.js";
|
|
3
3
|
import { FLIGHT_HEADERS } from "./headers.js";
|
|
4
4
|
//#region src/server/app-middleware.d.ts
|
|
5
|
-
type AppMiddlewareContext = {
|
|
5
|
+
export type AppMiddlewareContext = {
|
|
6
6
|
headers: Headers | null;
|
|
7
7
|
requestHeaders: Headers | null;
|
|
8
8
|
status: number | null;
|
|
9
9
|
};
|
|
10
|
-
type ApplyAppMiddlewareOptions = {
|
|
10
|
+
export type ApplyAppMiddlewareOptions = {
|
|
11
11
|
basePath?: string;
|
|
12
12
|
cleanPathname: string;
|
|
13
13
|
context: AppMiddlewareContext;
|
|
@@ -35,17 +35,25 @@ type ApplyAppMiddlewareOptions = {
|
|
|
35
35
|
*/
|
|
36
36
|
trailingSlash?: boolean;
|
|
37
37
|
};
|
|
38
|
-
type ApplyAppMiddlewareResult = {
|
|
38
|
+
export type ApplyAppMiddlewareResult = {
|
|
39
39
|
kind: "continue";
|
|
40
40
|
cleanPathname: string;
|
|
41
|
+
/** Present on real middleware results; optional for older generated callers. */
|
|
42
|
+
matched?: boolean;
|
|
43
|
+
/** True when this pathname can match middleware for some request context. */
|
|
44
|
+
pathnameEligible?: boolean;
|
|
41
45
|
rewritten: boolean;
|
|
42
46
|
search: string | null;
|
|
43
47
|
} | {
|
|
44
48
|
kind: "response";
|
|
49
|
+
/** Present on real middleware results; optional for older generated callers. */
|
|
50
|
+
matched?: boolean;
|
|
51
|
+
/** True when this pathname can match middleware for some request context. */
|
|
52
|
+
pathnameEligible?: boolean;
|
|
45
53
|
response: Response;
|
|
46
54
|
};
|
|
47
|
-
declare function isExternalMiddlewareRewrite(rewriteUrl: string, request: Request): boolean;
|
|
48
|
-
declare function proxyExternalMiddlewareRewrite(request: Request, rewriteUrl: string, context: AppMiddlewareContext): Promise<Response>;
|
|
49
|
-
declare function applyAppMiddleware(options: ApplyAppMiddlewareOptions): Promise<ApplyAppMiddlewareResult>;
|
|
55
|
+
export declare function isExternalMiddlewareRewrite(rewriteUrl: string, request: Request): boolean;
|
|
56
|
+
export declare function proxyExternalMiddlewareRewrite(request: Request, rewriteUrl: string, context: AppMiddlewareContext): Promise<Response>;
|
|
57
|
+
export declare function applyAppMiddleware(options: ApplyAppMiddlewareOptions): Promise<ApplyAppMiddlewareResult>;
|
|
50
58
|
//#endregion
|
|
51
|
-
export {
|
|
59
|
+
export { FLIGHT_HEADERS };
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { VINEXT_MW_CTX_HEADER } from "../utils/protocol-headers.js";
|
|
2
|
-
import { FLIGHT_HEADERS } from "./headers.js";
|
|
3
2
|
import { buildRequestHeadersFromMiddlewareResponse } from "../utils/middleware-request-headers.js";
|
|
4
3
|
import { isExternalUrl } from "../utils/external-url.js";
|
|
4
|
+
import { FLIGHT_HEADERS } from "./headers.js";
|
|
5
5
|
import { internalServerErrorResponse } from "./http-error-responses.js";
|
|
6
6
|
import { cloneRequestWithHeaders, processMiddlewareHeaders } from "./request-pipeline.js";
|
|
7
7
|
import { executeMiddleware } from "./middleware-runtime.js";
|
|
8
8
|
import { applyMiddlewareRequestHeaders, setHeadersContext } from "../shims/headers.js";
|
|
9
|
-
import { setNavigationContext } from "../shims/navigation-context-state.js";
|
|
10
9
|
import { mergeMiddlewareResponseHeaders } from "./middleware-response-headers.js";
|
|
11
|
-
import "../shims/navigation.js";
|
|
10
|
+
import { setNavigationContext } from "../shims/navigation-context-accessors.js";
|
|
12
11
|
//#region src/server/app-middleware.ts
|
|
13
12
|
const FLIGHT_HEADER_SET = new Set(FLIGHT_HEADERS);
|
|
14
13
|
function isForwardedMiddlewareContext(value) {
|
|
@@ -139,6 +138,8 @@ function applyForwardedMiddlewareContext(request, context) {
|
|
|
139
138
|
}
|
|
140
139
|
async function applyAppMiddleware(options) {
|
|
141
140
|
const forwarded = applyForwardedMiddlewareContext(options.request, options.context);
|
|
141
|
+
let matched = forwarded.applied;
|
|
142
|
+
let pathnameEligible = forwarded.applied;
|
|
142
143
|
let cleanPathname = options.cleanPathname;
|
|
143
144
|
let rewritten = false;
|
|
144
145
|
let search = null;
|
|
@@ -149,13 +150,18 @@ async function applyAppMiddleware(options) {
|
|
|
149
150
|
if (options.middlewareRequest) cancelRequestBody(options.middlewareRequest);
|
|
150
151
|
return {
|
|
151
152
|
kind: "response",
|
|
153
|
+
matched,
|
|
154
|
+
pathnameEligible,
|
|
152
155
|
response: validationResponseWithMiddlewareHeaders(validationResponse, options.context)
|
|
153
156
|
};
|
|
154
157
|
}
|
|
155
158
|
if (options.middlewareRequest) cancelRequestBody(options.middlewareRequest);
|
|
159
|
+
const externalRequest = options.externalRewriteRequest ?? options.request;
|
|
156
160
|
return {
|
|
157
161
|
kind: "response",
|
|
158
|
-
|
|
162
|
+
matched,
|
|
163
|
+
pathnameEligible,
|
|
164
|
+
response: await proxyExternalMiddlewareRewrite(externalRequest, forwarded.rewriteUrl, options.context)
|
|
159
165
|
};
|
|
160
166
|
}
|
|
161
167
|
const rewriteParsed = new URL(forwarded.rewriteUrl, options.request.url);
|
|
@@ -179,6 +185,12 @@ async function applyAppMiddleware(options) {
|
|
|
179
185
|
isProxy: options.isProxy,
|
|
180
186
|
module: options.module,
|
|
181
187
|
normalizedPathname: cleanPathname,
|
|
188
|
+
onMatch() {
|
|
189
|
+
matched = true;
|
|
190
|
+
},
|
|
191
|
+
onPathMatch() {
|
|
192
|
+
pathnameEligible = true;
|
|
193
|
+
},
|
|
182
194
|
requestBodyAlreadyIsolated: true,
|
|
183
195
|
request: middlewareRequest,
|
|
184
196
|
trailingSlash: options.trailingSlash
|
|
@@ -190,14 +202,20 @@ async function applyAppMiddleware(options) {
|
|
|
190
202
|
cancelRequestBody(options.request);
|
|
191
203
|
if (result.redirectUrl) return {
|
|
192
204
|
kind: "response",
|
|
205
|
+
matched,
|
|
206
|
+
pathnameEligible,
|
|
193
207
|
response: responseFromMiddlewareRedirect(result)
|
|
194
208
|
};
|
|
195
209
|
if (result.response) return {
|
|
196
210
|
kind: "response",
|
|
211
|
+
matched,
|
|
212
|
+
pathnameEligible,
|
|
197
213
|
response: result.response
|
|
198
214
|
};
|
|
199
215
|
return {
|
|
200
216
|
kind: "response",
|
|
217
|
+
matched,
|
|
218
|
+
pathnameEligible,
|
|
201
219
|
response: internalServerErrorResponse()
|
|
202
220
|
};
|
|
203
221
|
}
|
|
@@ -209,11 +227,16 @@ async function applyAppMiddleware(options) {
|
|
|
209
227
|
const validationResponse = await options.validateExternalRewriteRequest?.();
|
|
210
228
|
if (validationResponse) return {
|
|
211
229
|
kind: "response",
|
|
230
|
+
matched,
|
|
231
|
+
pathnameEligible,
|
|
212
232
|
response: validationResponseWithMiddlewareHeaders(validationResponse, options.context)
|
|
213
233
|
};
|
|
234
|
+
const externalRequest = options.externalRewriteRequest ?? options.request;
|
|
214
235
|
return {
|
|
215
236
|
kind: "response",
|
|
216
|
-
|
|
237
|
+
matched,
|
|
238
|
+
pathnameEligible,
|
|
239
|
+
response: await proxyExternalMiddlewareRewrite(externalRequest, result.rewriteUrl, options.context)
|
|
217
240
|
};
|
|
218
241
|
}
|
|
219
242
|
const rewriteParsed = new URL(result.rewriteUrl, middlewareRequest.url);
|
|
@@ -231,6 +254,8 @@ async function applyAppMiddleware(options) {
|
|
|
231
254
|
return {
|
|
232
255
|
kind: "continue",
|
|
233
256
|
cleanPathname,
|
|
257
|
+
matched,
|
|
258
|
+
pathnameEligible,
|
|
234
259
|
rewritten,
|
|
235
260
|
search
|
|
236
261
|
};
|
|
@@ -30,6 +30,5 @@
|
|
|
30
30
|
* - app-elements (outgoing x-vinext-mounted-slots construction)
|
|
31
31
|
* - isr-cache (RSC cache key generation)
|
|
32
32
|
*/
|
|
33
|
-
declare function normalizeMountedSlotsHeader(raw: string | null | undefined): string | null;
|
|
34
|
-
//#endregion
|
|
35
|
-
export { normalizeMountedSlotsHeader };
|
|
33
|
+
export declare function normalizeMountedSlotsHeader(raw: string | null | undefined): string | null;
|
|
34
|
+
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isAppElementsWireSlotId } from "./app-elements-wire-key.js";
|
|
2
2
|
//#region src/server/app-mounted-slots-header.ts
|
|
3
3
|
/**
|
|
4
4
|
* Normalize the `x-vinext-mounted-slots` header for request handling and cache keying.
|
|
@@ -45,7 +45,7 @@ const MAX_SLOT_TOKENS = 16;
|
|
|
45
45
|
*/
|
|
46
46
|
function isValidSlotToken(token) {
|
|
47
47
|
if (token.length === 0 || token.length > MAX_TOKEN_LENGTH) return false;
|
|
48
|
-
return
|
|
48
|
+
return isAppElementsWireSlotId(token);
|
|
49
49
|
}
|
|
50
50
|
function normalizeMountedSlotsHeader(raw) {
|
|
51
51
|
if (!raw) return null;
|
|
@@ -6,7 +6,7 @@ type OptimisticRouteMatch = {
|
|
|
6
6
|
params: Record<string, string | string[]>;
|
|
7
7
|
route: RouteManifestRoute;
|
|
8
8
|
};
|
|
9
|
-
type OptimisticRouteTemplate = {
|
|
9
|
+
export type OptimisticRouteTemplate = {
|
|
10
10
|
elements: AppElements;
|
|
11
11
|
mountedSlotsHeader: string | null;
|
|
12
12
|
omittedBfcacheSegmentIds: readonly string[];
|
|
@@ -21,22 +21,27 @@ type OptimisticNavigationPayload = {
|
|
|
21
21
|
template: OptimisticRouteTemplate;
|
|
22
22
|
urlParts: readonly string[];
|
|
23
23
|
};
|
|
24
|
-
declare function getOptimisticRouteTemplateKey(options: {
|
|
24
|
+
export declare function getOptimisticRouteTemplateKey(options: {
|
|
25
25
|
interceptionContext: string | null;
|
|
26
26
|
mountedSlotsHeader: string | null;
|
|
27
27
|
routeId: string;
|
|
28
28
|
}): string;
|
|
29
|
-
declare function getOptimisticPrefetchSourceKey(options: {
|
|
29
|
+
export declare function getOptimisticPrefetchSourceKey(options: {
|
|
30
30
|
cacheKey: string;
|
|
31
31
|
interceptionContext: string | null;
|
|
32
32
|
mountedSlotsHeader: string | null;
|
|
33
33
|
}): string;
|
|
34
|
-
declare function matchOptimisticRouteManifestRoute(options: {
|
|
34
|
+
export declare function matchOptimisticRouteManifestRoute(options: {
|
|
35
35
|
basePath: string;
|
|
36
36
|
href: string;
|
|
37
37
|
routeManifest: RouteManifest;
|
|
38
38
|
}): OptimisticRouteMatch | null;
|
|
39
|
-
declare function
|
|
39
|
+
export declare function resolveOptimisticNavigationParamsForHref(options: {
|
|
40
|
+
basePath: string;
|
|
41
|
+
href: string;
|
|
42
|
+
routeManifest: RouteManifest;
|
|
43
|
+
}): Record<string, string | string[]> | null;
|
|
44
|
+
export declare function createOptimisticRouteTemplate(options: {
|
|
40
45
|
allowLoadingShell?: boolean;
|
|
41
46
|
basePath: string;
|
|
42
47
|
elements: AppElements;
|
|
@@ -45,7 +50,7 @@ declare function createOptimisticRouteTemplate(options: {
|
|
|
45
50
|
mountedSlotsHeader: string | null;
|
|
46
51
|
routeManifest: RouteManifest;
|
|
47
52
|
}): OptimisticRouteTemplate | null;
|
|
48
|
-
declare function createOptimisticRouteElements(template: OptimisticRouteTemplate): AppElements;
|
|
53
|
+
export declare function createOptimisticRouteElements(template: OptimisticRouteTemplate): AppElements;
|
|
49
54
|
/**
|
|
50
55
|
* A loading-shell prefetch stops at the first loading boundary, so layouts
|
|
51
56
|
* below that boundary are present in the route metadata but absent from the
|
|
@@ -54,7 +59,7 @@ declare function createOptimisticRouteElements(template: OptimisticRouteTemplate
|
|
|
54
59
|
* keeps the shared segment active in this case, which also means the ancestor
|
|
55
60
|
* loading boundary does not re-trigger.
|
|
56
61
|
*/
|
|
57
|
-
declare function canCommitOptimisticRouteTemplate(options: {
|
|
62
|
+
export declare function canCommitOptimisticRouteTemplate(options: {
|
|
58
63
|
currentElements: AppElements;
|
|
59
64
|
currentLayoutIds: readonly string[];
|
|
60
65
|
currentParams: Readonly<Record<string, string | string[]>>;
|
|
@@ -63,7 +68,7 @@ declare function canCommitOptimisticRouteTemplate(options: {
|
|
|
63
68
|
targetUrlParts: readonly string[];
|
|
64
69
|
template: OptimisticRouteTemplate;
|
|
65
70
|
}): boolean;
|
|
66
|
-
declare function resolveOptimisticNavigationPayload(options: {
|
|
71
|
+
export declare function resolveOptimisticNavigationPayload(options: {
|
|
67
72
|
basePath: string;
|
|
68
73
|
href: string;
|
|
69
74
|
interceptionContext: string | null;
|
|
@@ -71,5 +76,4 @@ declare function resolveOptimisticNavigationPayload(options: {
|
|
|
71
76
|
routeManifest: RouteManifest;
|
|
72
77
|
templates: ReadonlyMap<string, OptimisticRouteTemplate>;
|
|
73
78
|
}): OptimisticNavigationPayload | null;
|
|
74
|
-
//#endregion
|
|
75
|
-
export { OptimisticRouteTemplate, canCommitOptimisticRouteTemplate, createOptimisticRouteElements, createOptimisticRouteTemplate, getOptimisticPrefetchSourceKey, getOptimisticRouteTemplateKey, matchOptimisticRouteManifestRoute, resolveOptimisticNavigationPayload };
|
|
79
|
+
//#endregion
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { isUnknownRecord } from "../utils/record.js";
|
|
1
2
|
import { buildParams, decodeMatchedParams, splitPathnameForRouteMatch } from "../routing/utils.js";
|
|
2
3
|
import { stripBasePath } from "../utils/base-path.js";
|
|
3
|
-
import { isUnknownRecord } from "../utils/record.js";
|
|
4
4
|
import { AppElementsWire } from "./app-elements-wire.js";
|
|
5
5
|
import "./app-elements.js";
|
|
6
6
|
import { extractRawRoutePatternParams, matchRoutePattern } from "../routing/route-pattern.js";
|
|
@@ -127,7 +127,8 @@ function hrefToRouteParts(href, basePath) {
|
|
|
127
127
|
return null;
|
|
128
128
|
}
|
|
129
129
|
stripRscCacheBustingSearchParam(url);
|
|
130
|
-
const
|
|
130
|
+
const withoutRscSuffix = stripRscSuffix(url.pathname);
|
|
131
|
+
const appPathname = stripBasePath(withoutRscSuffix, basePath);
|
|
131
132
|
const pathname = appPathname === "" ? "/" : appPathname;
|
|
132
133
|
return {
|
|
133
134
|
normalized: splitPathnameForRouteMatch(pathname),
|
|
@@ -163,6 +164,18 @@ function resolveOptimisticNavigationParams(options) {
|
|
|
163
164
|
routeParams
|
|
164
165
|
};
|
|
165
166
|
}
|
|
167
|
+
function resolveOptimisticNavigationParamsForHref(options) {
|
|
168
|
+
const urlParts = hrefToRouteParts(options.href, options.basePath);
|
|
169
|
+
if (urlParts === null) return null;
|
|
170
|
+
const match = matchOptimisticRouteManifestRoute(options);
|
|
171
|
+
if (match === null) return null;
|
|
172
|
+
return resolveOptimisticNavigationParams({
|
|
173
|
+
match,
|
|
174
|
+
rawUrlParts: urlParts.raw,
|
|
175
|
+
routeManifest: options.routeManifest,
|
|
176
|
+
urlParts: urlParts.normalized
|
|
177
|
+
}).navigationParams;
|
|
178
|
+
}
|
|
166
179
|
function collectRenderedBfcacheSegmentIds(value, candidates, rendered, depth = 0) {
|
|
167
180
|
if (depth > 100) return;
|
|
168
181
|
if (Array.isArray(value)) {
|
|
@@ -356,4 +369,4 @@ function resolveOptimisticNavigationPayload(options) {
|
|
|
356
369
|
};
|
|
357
370
|
}
|
|
358
371
|
//#endregion
|
|
359
|
-
export { canCommitOptimisticRouteTemplate, createOptimisticRouteElements, createOptimisticRouteTemplate, getOptimisticPrefetchSourceKey, getOptimisticRouteTemplateKey, matchOptimisticRouteManifestRoute, resolveOptimisticNavigationPayload };
|
|
372
|
+
export { canCommitOptimisticRouteTemplate, createOptimisticRouteElements, createOptimisticRouteTemplate, getOptimisticPrefetchSourceKey, getOptimisticRouteTemplateKey, matchOptimisticRouteManifestRoute, resolveOptimisticNavigationParamsForHref, resolveOptimisticNavigationPayload };
|
|
@@ -10,6 +10,7 @@ import { ApplyAppPageFileBasedMetadata } from "./app-page-head.js";
|
|
|
10
10
|
import { AppPageRouteWiringRoute } from "./app-page-route-wiring.js";
|
|
11
11
|
import { AppPageInterceptOptions } from "./app-page-element-builder.js";
|
|
12
12
|
import { AppPageSsrHandler } from "./app-page-stream.js";
|
|
13
|
+
import { AppRenderErrorContextOverrides } from "./app-rsc-error-handler.js";
|
|
13
14
|
import { ComponentType, ReactNode } from "react";
|
|
14
15
|
//#region src/server/app-page-boundary-render.d.ts
|
|
15
16
|
type AppPageComponent = ComponentType<any>;
|
|
@@ -17,7 +18,7 @@ type AppPageModule = Record<string, unknown> & {
|
|
|
17
18
|
default?: AppPageComponent | null | undefined;
|
|
18
19
|
};
|
|
19
20
|
type AppPageBoundaryOnError = (error: unknown, requestInfo: unknown, errorContext: unknown) => unknown;
|
|
20
|
-
type AppPageBoundaryRoute<TModule extends AppPageModule = AppPageModule> = {
|
|
21
|
+
export type AppPageBoundaryRoute<TModule extends AppPageModule = AppPageModule> = {
|
|
21
22
|
error?: TModule | null;
|
|
22
23
|
errorPaths?: readonly TModule[] | null;
|
|
23
24
|
errors?: readonly (TModule | null | undefined)[] | null;
|
|
@@ -41,7 +42,7 @@ type AppPageBoundaryRenderCommonOptions<TModule extends AppPageModule = AppPageM
|
|
|
41
42
|
applyFileBasedMetadata?: ApplyAppPageFileBasedMetadata;
|
|
42
43
|
buildFontLinkHeader: (preloads: readonly AppPageFontPreload[] | null | undefined) => string;
|
|
43
44
|
clearRequestContext: () => void;
|
|
44
|
-
createRscOnErrorHandler: (pathname: string, routePath: string) => AppPageBoundaryOnError;
|
|
45
|
+
createRscOnErrorHandler: (pathname: string, routePath: string, overrides?: AppRenderErrorContextOverrides) => AppPageBoundaryOnError;
|
|
45
46
|
getAndClearPendingCookies?: () => string[];
|
|
46
47
|
getFontLinks: () => string[];
|
|
47
48
|
getFontPreloads: () => AppPageFontPreload[];
|
|
@@ -108,7 +109,6 @@ type RenderAppPageErrorBoundaryOptions<TModule extends AppPageModule = AppPageMo
|
|
|
108
109
|
route?: AppPageBoundaryRoute<TModule> | null;
|
|
109
110
|
sanitizeErrorForClient: (error: Error) => Error;
|
|
110
111
|
} & AppPageBoundaryRenderCommonOptions<TModule>;
|
|
111
|
-
declare function renderAppPageHttpAccessFallback<TModule extends AppPageModule>(options: RenderAppPageHttpAccessFallbackOptions<TModule>): Promise<Response | null>;
|
|
112
|
-
declare function renderAppPageErrorBoundary<TModule extends AppPageModule>(options: RenderAppPageErrorBoundaryOptions<TModule>): Promise<Response | null>;
|
|
113
|
-
//#endregion
|
|
114
|
-
export { AppPageBoundaryRoute, renderAppPageErrorBoundary, renderAppPageHttpAccessFallback };
|
|
112
|
+
export declare function renderAppPageHttpAccessFallback<TModule extends AppPageModule>(options: RenderAppPageHttpAccessFallbackOptions<TModule>): Promise<Response | null>;
|
|
113
|
+
export declare function renderAppPageErrorBoundary<TModule extends AppPageModule>(options: RenderAppPageErrorBoundaryOptions<TModule>): Promise<Response | null>;
|
|
114
|
+
//#endregion
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { stripBasePath } from "../utils/base-path.js";
|
|
2
|
+
import { isNavigationSignalError } from "../utils/navigation-signal.js";
|
|
2
3
|
import { NEVER_CACHE_CONTROL, applyCdnResponseHeaders } from "./cache-control.js";
|
|
3
4
|
import { AppElementsWire } from "./app-elements-wire.js";
|
|
4
5
|
import "./app-elements.js";
|
|
5
6
|
import DefaultGlobalError from "../shims/default-global-error.js";
|
|
6
|
-
import { isNavigationSignalError } from "../utils/navigation-signal.js";
|
|
7
7
|
import { ErrorBoundary, GlobalErrorBoundary, SerializedErrorBoundary } from "../shims/error-boundary.js";
|
|
8
8
|
import { LayoutSegmentProvider } from "../shims/layout-segment-context.js";
|
|
9
9
|
import { MetadataHead, ViewportHead } from "../shims/metadata.js";
|
|
@@ -18,7 +18,7 @@ import { resolveHttpAccessFallbackMetadata, resolveHttpAccessFallbackViewport }
|
|
|
18
18
|
import "./app-rsc-route-matching.js";
|
|
19
19
|
import { renderAppPageBoundaryResponse, resolveAppPageErrorBoundary, resolveAppPageHttpAccessBoundaryModule, wrapAppPageBoundaryElement } from "./app-page-boundary.js";
|
|
20
20
|
import { resolveSlotParamOverrides } from "./app-page-element-builder.js";
|
|
21
|
-
import { createAppPageFontData, createAppPageRscErrorTracker, renderAppPageHtmlResponse } from "./app-page-stream.js";
|
|
21
|
+
import { createAppPageFontData, createAppPageRscErrorTracker, createAppPageSsrErrorHandler, renderAppPageHtmlResponse } from "./app-page-stream.js";
|
|
22
22
|
import { Fragment, createElement } from "react";
|
|
23
23
|
//#region src/server/app-page-boundary-render.ts
|
|
24
24
|
const DEFAULT_GLOBAL_ERROR_COMPONENT = DefaultGlobalError;
|
|
@@ -133,7 +133,8 @@ async function renderAppPageBoundaryElementResponse(options) {
|
|
|
133
133
|
route: options.route,
|
|
134
134
|
sourcePageSegments: options.sourcePageSegments
|
|
135
135
|
});
|
|
136
|
-
const
|
|
136
|
+
const baseRscOnErrorHandler = options.createRscOnErrorHandler(pathname, options.routePattern ?? pathname);
|
|
137
|
+
const rscErrorTracker = createAppPageRscErrorTracker(baseRscOnErrorHandler);
|
|
137
138
|
const resolveCapturedSpecialError = (error) => resolveAppPageSpecialError(error) ?? resolveAppPageSpecialError(rscErrorTracker.getCapturedSpecialError());
|
|
138
139
|
const renderSpecialErrorResponse = (specialError) => renderBoundarySpecialErrorResponse(options, specialError);
|
|
139
140
|
const handleSpecialErrors = options.handleSpecialErrors === true;
|
|
@@ -147,6 +148,7 @@ async function renderAppPageBoundaryElementResponse(options) {
|
|
|
147
148
|
getStyles: options.getFontStyles
|
|
148
149
|
});
|
|
149
150
|
const ssrHandler = await options.loadSsrHandler();
|
|
151
|
+
const onSsrError = options.createRscOnErrorHandler(pathname, options.routePattern ?? pathname, { renderSource: "server-rendering" });
|
|
150
152
|
return renderAppPageHtmlResponse({
|
|
151
153
|
clearRequestContext: options.clearRequestContext,
|
|
152
154
|
fontData,
|
|
@@ -163,7 +165,8 @@ async function renderAppPageBoundaryElementResponse(options) {
|
|
|
163
165
|
scriptNonce: options.scriptNonce,
|
|
164
166
|
ssrHandler,
|
|
165
167
|
status: responseStatus,
|
|
166
|
-
initialDevServerError: options.initialDevServerError
|
|
168
|
+
initialDevServerError: options.initialDevServerError,
|
|
169
|
+
onSsrError: createAppPageSsrErrorHandler(onSsrError, rscErrorTracker.isCapturedError)
|
|
167
170
|
});
|
|
168
171
|
},
|
|
169
172
|
createRscOnErrorHandler() {
|
|
@@ -254,6 +257,7 @@ async function renderAppPageHttpAccessFallback(options) {
|
|
|
254
257
|
},
|
|
255
258
|
...intercept?.interceptNotFound ? {
|
|
256
259
|
notFoundModule: intercept.interceptNotFound,
|
|
260
|
+
notFoundModuleRouteSegments: (intercept.interceptNotFoundBranchSegments ?? intercept.interceptSourcePageSegments ?? fallbackRouteSegments).slice(0, intercept.interceptNotFoundTreePosition ?? 0),
|
|
257
261
|
notFoundParams: resolveAppPageBranchParams(intercept.interceptNotFoundBranchSegments ?? intercept.interceptBranchSegments ?? fallbackRouteSegments, intercept.interceptNotFoundTreePosition ?? 0, effectiveParams)
|
|
258
262
|
} : {},
|
|
259
263
|
ownerTreePosition: fallbackRouteSegments.length
|
|
@@ -261,7 +265,9 @@ async function renderAppPageHttpAccessFallback(options) {
|
|
|
261
265
|
const fallbackHeadOptions = {
|
|
262
266
|
boundaryModule,
|
|
263
267
|
boundaryParams,
|
|
268
|
+
boundaryRouteSegments: fallbackRouteSegments.slice(0, boundaryTreePosition ?? 0),
|
|
264
269
|
branchNotFoundConventions: options.statusCode === 404,
|
|
270
|
+
errorConvention: options.statusCode === 403 ? "forbidden" : options.statusCode === 401 ? "unauthorized" : "not-found",
|
|
265
271
|
layoutModules,
|
|
266
272
|
layoutTreePositions: resolveHttpAccessFallbackHeadLayoutTreePositions(options.route, layoutModules),
|
|
267
273
|
parallelBranches,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region src/server/app-page-boundary.d.ts
|
|
2
|
-
type AppPageParams = Record<string, string | string[]>;
|
|
2
|
+
export type AppPageParams = Record<string, string | string[]>;
|
|
3
3
|
type ResolveAppPageHttpAccessBoundaryComponentOptions<TModule, TComponent> = {
|
|
4
4
|
getDefaultExport: (module: TModule | null | undefined) => TComponent | null | undefined;
|
|
5
5
|
rootForbiddenModule?: TModule | null;
|
|
@@ -72,9 +72,9 @@ type RenderAppPageBoundaryResponseOptions<TElement> = {
|
|
|
72
72
|
}) => ReadableStream<Uint8Array>;
|
|
73
73
|
status: number;
|
|
74
74
|
};
|
|
75
|
-
declare function resolveAppPageHttpAccessBoundaryComponent<TModule, TComponent>(options: ResolveAppPageHttpAccessBoundaryComponentOptions<TModule, TComponent>): TComponent | null;
|
|
76
|
-
declare function resolveAppPageHttpAccessBoundaryModule<TModule>(options: ResolveAppPageHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
77
|
-
declare function resolveAppPageParentHttpAccessBoundaryModule<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
75
|
+
export declare function resolveAppPageHttpAccessBoundaryComponent<TModule, TComponent>(options: ResolveAppPageHttpAccessBoundaryComponentOptions<TModule, TComponent>): TComponent | null;
|
|
76
|
+
export declare function resolveAppPageHttpAccessBoundaryModule<TModule>(options: ResolveAppPageHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
77
|
+
export declare function resolveAppPageParentHttpAccessBoundaryModule<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): TModule | null;
|
|
78
78
|
/**
|
|
79
79
|
* Like {@link resolveAppPageParentHttpAccessBoundaryModule}, but also returns
|
|
80
80
|
* the layout index that owns the resolved boundary so callers can slice the
|
|
@@ -91,12 +91,11 @@ declare function resolveAppPageParentHttpAccessBoundaryModule<TModule>(options:
|
|
|
91
91
|
*
|
|
92
92
|
* @see https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/create-component-tree.tsx
|
|
93
93
|
*/
|
|
94
|
-
declare function resolveAppPageParentHttpAccessBoundary<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): {
|
|
94
|
+
export declare function resolveAppPageParentHttpAccessBoundary<TModule>(options: ResolveAppPageParentHttpAccessBoundaryModuleOptions<TModule>): {
|
|
95
95
|
module: TModule | null;
|
|
96
96
|
layoutIndex: number | null;
|
|
97
97
|
};
|
|
98
|
-
declare function resolveAppPageErrorBoundary<TModule, TComponent>(options: ResolveAppPageErrorBoundaryOptions<TModule, TComponent>): ResolveAppPageErrorBoundaryResult<TComponent>;
|
|
99
|
-
declare function wrapAppPageBoundaryElement<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>(options: WrapAppPageBoundaryElementOptions<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>): TElement;
|
|
100
|
-
declare function renderAppPageBoundaryResponse<TElement>(options: RenderAppPageBoundaryResponseOptions<TElement>): Promise<Response>;
|
|
101
|
-
//#endregion
|
|
102
|
-
export { AppPageParams, renderAppPageBoundaryResponse, resolveAppPageErrorBoundary, resolveAppPageHttpAccessBoundaryComponent, resolveAppPageHttpAccessBoundaryModule, resolveAppPageParentHttpAccessBoundary, resolveAppPageParentHttpAccessBoundaryModule, wrapAppPageBoundaryElement };
|
|
98
|
+
export declare function resolveAppPageErrorBoundary<TModule, TComponent>(options: ResolveAppPageErrorBoundaryOptions<TModule, TComponent>): ResolveAppPageErrorBoundaryResult<TComponent>;
|
|
99
|
+
export declare function wrapAppPageBoundaryElement<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>(options: WrapAppPageBoundaryElementOptions<TElement, TLayoutModule, TLayoutComponent, TChildSegments, TGlobalErrorComponent>): TElement;
|
|
100
|
+
export declare function renderAppPageBoundaryResponse<TElement>(options: RenderAppPageBoundaryResponseOptions<TElement>): Promise<Response>;
|
|
101
|
+
//#endregion
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
|
|
1
2
|
import { runWithFetchDedupe } from "../shims/fetch-cache.js";
|
|
2
3
|
import { resolveAppPageSegmentParams } from "./app-page-params.js";
|
|
3
|
-
import { VINEXT_RSC_CONTENT_TYPE,
|
|
4
|
+
import { VINEXT_RSC_CONTENT_TYPE, applyRscCompatibilityIdHeader, applyRscDeploymentIdHeader } from "./app-rsc-cache-busting.js";
|
|
4
5
|
import { mergeMiddlewareResponseHeaders } from "./middleware-response-headers.js";
|
|
5
6
|
import { applyEdgeRuntimeHeader } from "./app-page-response.js";
|
|
6
7
|
//#region src/server/app-page-boundary.ts
|
|
@@ -14,14 +14,31 @@ type BuildAppPageCacheRenderObservation = (input: {
|
|
|
14
14
|
cacheTags: readonly string[];
|
|
15
15
|
state: AppPageRenderObservationState;
|
|
16
16
|
}) => RenderObservation;
|
|
17
|
+
type FinalizeAppPageCacheabilityEvaluationOptions = {
|
|
18
|
+
capturedDynamicUsageBeforeContextCleanup?: () => boolean;
|
|
19
|
+
consumeDynamicUsage: () => boolean;
|
|
20
|
+
consumeRenderObservationState?: () => AppPageRenderObservationState;
|
|
21
|
+
getPageTags: () => string[];
|
|
22
|
+
getRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
23
|
+
expireSeconds?: number;
|
|
24
|
+
/**
|
|
25
|
+
* `false` for routes Next.js classifies as dynamic (ƒ), which are never
|
|
26
|
+
* cacheable even when a cacheLife resolves during the render.
|
|
27
|
+
*/
|
|
28
|
+
isStaticEligible: boolean;
|
|
29
|
+
revalidateSeconds: number | null;
|
|
30
|
+
};
|
|
17
31
|
type FinalizeAppPageHtmlCacheResponseOptions = {
|
|
32
|
+
bypassInterceptionContextCache?: boolean;
|
|
18
33
|
capturedDynamicUsageBeforeContextCleanup?: () => boolean;
|
|
19
34
|
capturedRscDataPromise: Promise<ArrayBuffer> | null;
|
|
20
35
|
cleanPathname: string;
|
|
36
|
+
/** Private marker surrounding this render's injected client trace metadata. */
|
|
37
|
+
clientTraceMetadataMarker?: string;
|
|
21
38
|
consumeDynamicUsage: () => boolean;
|
|
22
39
|
consumeRenderObservationState?: () => AppPageRenderObservationState;
|
|
23
|
-
createHtmlRenderObservation
|
|
24
|
-
createRscRenderObservation
|
|
40
|
+
createHtmlRenderObservation: BuildAppPageCacheRenderObservation;
|
|
41
|
+
createRscRenderObservation: BuildAppPageCacheRenderObservation;
|
|
25
42
|
getPageTags: () => string[];
|
|
26
43
|
getRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
27
44
|
isrDebug?: AppPageDebugLogger;
|
|
@@ -33,16 +50,18 @@ type FinalizeAppPageHtmlCacheResponseOptions = {
|
|
|
33
50
|
omitPendingDynamicCacheState?: boolean;
|
|
34
51
|
preserveClientResponseHeaders?: boolean;
|
|
35
52
|
expireSeconds?: number;
|
|
53
|
+
isStaticEligible: boolean;
|
|
36
54
|
revalidateSeconds: number | null;
|
|
37
55
|
linkHeader: string | null;
|
|
38
56
|
waitUntil?: (promise: Promise<void>) => void;
|
|
39
57
|
};
|
|
40
58
|
type ScheduleAppPageRscCacheWriteOptions = {
|
|
59
|
+
bypassInterceptionContextCache?: boolean;
|
|
41
60
|
capturedRscDataPromise: Promise<ArrayBuffer> | null;
|
|
42
61
|
cleanPathname: string;
|
|
43
62
|
consumeDynamicUsage: () => boolean;
|
|
44
63
|
consumeRenderObservationState?: () => AppPageRenderObservationState;
|
|
45
|
-
createRscRenderObservation
|
|
64
|
+
createRscRenderObservation: BuildAppPageCacheRenderObservation;
|
|
46
65
|
dynamicUsedDuringBuild: boolean;
|
|
47
66
|
getPageTags: () => string[];
|
|
48
67
|
getRequestCacheLife?: () => AppPageRequestCacheLife | null;
|
|
@@ -56,11 +75,16 @@ type ScheduleAppPageRscCacheWriteOptions = {
|
|
|
56
75
|
renderMode?: AppRscRenderMode;
|
|
57
76
|
preserveClientResponseHeaders?: boolean;
|
|
58
77
|
expireSeconds?: number;
|
|
78
|
+
isStaticEligible: boolean;
|
|
59
79
|
revalidateSeconds: number | null;
|
|
60
80
|
waitUntil?: (promise: Promise<void>) => void;
|
|
61
81
|
};
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
export
|
|
82
|
+
/**
|
|
83
|
+
* Complete probe/admission classification for an App Page response that does
|
|
84
|
+
* not enter the ISR cache-write path. Ordinary requests pass through unchanged.
|
|
85
|
+
*/
|
|
86
|
+
export declare function finalizeAppPageCacheabilityEvaluationResponse(response: Response, options: FinalizeAppPageCacheabilityEvaluationOptions): Response;
|
|
87
|
+
export declare function finalizeAppPageHtmlCacheResponse(response: Response, options: FinalizeAppPageHtmlCacheResponseOptions): Response;
|
|
88
|
+
export declare function finalizeAppPageRscCacheResponse(response: Response, options: ScheduleAppPageRscCacheWriteOptions): Response;
|
|
89
|
+
export declare function scheduleAppPageRscCacheWrite(options: ScheduleAppPageRscCacheWriteOptions): boolean;
|
|
90
|
+
//#endregion
|