vinext 1.0.0-beta.9 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +150 -92
- package/THIRD_PARTY_LICENSES.md +51 -0
- package/dist/_virtual/_rolldown/runtime.js +25 -0
- package/dist/build/action-owner-manifest.d.ts +8 -9
- package/dist/build/action-owner-manifest.js +23 -5
- package/dist/build/assets-ignore.d.ts +3 -4
- package/dist/build/clean-output.d.ts +2 -3
- package/dist/build/client-build-config.d.ts +40 -12
- package/dist/build/client-build-config.js +76 -6
- package/dist/build/css-url-assets.d.ts +4 -5
- package/dist/build/css-url-assets.js +5 -2
- package/dist/build/google-fonts/build-url.d.ts +3 -4
- package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
- package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
- package/dist/build/google-fonts/font-metadata.d.ts +2 -3
- package/dist/build/google-fonts/get-axes.d.ts +2 -3
- package/dist/build/google-fonts/sort-variants.d.ts +2 -3
- package/dist/build/google-fonts/validate.d.ts +2 -3
- package/dist/build/google-fonts/validate.js +8 -4
- package/dist/build/inject-pregenerated-paths.d.ts +2 -3
- package/dist/build/inject-pregenerated-paths.js +16 -14
- package/dist/build/inline-css.d.ts +3 -4
- package/dist/build/layout-classification-types.d.ts +4 -5
- package/dist/build/layout-classification.d.ts +7 -8
- package/dist/build/lifecycle.d.ts +42 -0
- package/dist/build/lifecycle.js +253 -0
- package/dist/build/module-dependency-cache.d.ts +2 -3
- package/dist/build/next-client-runtime-manifests.d.ts +4 -5
- package/dist/build/nitro-route-rules.d.ts +6 -7
- package/dist/build/nitro-route-rules.js +1 -1
- package/dist/build/pages-client-assets-module.d.ts +4 -8
- package/dist/build/pages-client-assets-module.js +7 -14
- package/dist/build/precompress.d.ts +2 -3
- package/dist/build/precompress.js +1 -1
- package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
- package/dist/build/prerender-cloudflare-loader.js +49 -0
- package/dist/build/prerender-paths.d.ts +36 -11
- package/dist/build/prerender-paths.js +274 -102
- package/dist/build/prerender-phase.d.ts +2 -3
- package/dist/build/prerender-server-entry.js +11 -3
- package/dist/build/prerender-server-pool.d.ts +9 -6
- package/dist/build/prerender-server-pool.js +8 -5
- package/dist/build/prerender.d.ts +73 -16
- package/dist/build/prerender.js +272 -80
- package/dist/build/preview-credentials.d.ts +5 -6
- package/dist/build/preview-credentials.js +2 -2
- package/dist/build/public-dir-conflict.d.ts +5 -6
- package/dist/build/public-dir-conflict.js +2 -1
- package/dist/build/report.d.ts +24 -20
- package/dist/build/report.js +10 -2
- package/dist/build/route-classification-injector.d.ts +2 -3
- package/dist/build/route-classification-manifest.d.ts +5 -6
- package/dist/build/run-prerender.d.ts +11 -9
- package/dist/build/run-prerender.js +26 -16
- package/dist/build/server-entry.d.ts +6 -0
- package/dist/build/server-entry.js +34 -0
- package/dist/build/server-manifest.d.ts +8 -3
- package/dist/build/server-manifest.js +14 -2
- package/dist/build/ssr-manifest.d.ts +5 -6
- package/dist/build/standalone.d.ts +2 -3
- package/dist/build/standalone.js +2 -2
- package/dist/build/static-export.d.ts +6 -7
- package/dist/cache/cache-adapters-virtual.d.ts +60 -20
- package/dist/cache/cache-adapters-virtual.js +50 -7
- package/dist/check.d.ts +11 -10
- package/dist/check.js +467 -176
- package/dist/cli-args.d.ts +7 -16
- package/dist/cli-args.js +2 -45
- package/dist/cli-dev-config.d.ts +10 -7
- package/dist/cli-dev-config.js +160 -3
- package/dist/cli.js +124 -442
- package/dist/client/app-nav-failure-handler.d.ts +6 -7
- package/dist/client/browser-globals.d.ts +4 -0
- package/dist/client/browser-globals.js +5 -0
- package/dist/client/client-rewrite-matcher.d.ts +2 -3
- package/dist/client/client-rewrites.d.ts +4 -5
- package/dist/client/dev-error-overlay-store.d.ts +13 -14
- package/dist/client/dev-error-overlay.d.ts +15 -15
- package/dist/client/dev-error-overlay.js +8 -5
- package/dist/client/instrumentation-client-inject.d.ts +3 -4
- package/dist/client/instrumentation-client-state.d.ts +5 -6
- package/dist/client/instrumentation-client.d.ts +3 -4
- package/dist/client/navigation-runtime.d.ts +20 -17
- package/dist/client/navigation-runtime.js +4 -3
- package/dist/client/pages-router-link-navigation.d.ts +4 -5
- package/dist/client/react-instance.d.ts +2 -3
- package/dist/client/validate-module-path.d.ts +2 -3
- package/dist/client/vinext-next-data.d.ts +7 -10
- package/dist/client/window-next.d.ts +4 -5
- package/dist/config/config-matchers.d.ts +16 -16
- package/dist/config/config-matchers.js +2 -4
- package/dist/config/dotenv.d.ts +3 -4
- package/dist/config/dotenv.js +14 -2
- package/dist/config/next-config.d.ts +31 -27
- package/dist/config/next-config.js +163 -16
- package/dist/config/prerender.d.ts +20 -16
- package/dist/config/prerender.js +10 -4
- package/dist/config/request-context.d.ts +5 -6
- package/dist/config/server-external-packages.d.ts +14 -3
- package/dist/config/server-external-packages.js +37 -3
- package/dist/config/tsconfig-paths.d.ts +3 -4
- package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
- package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
- package/dist/entries/app-browser-entry.d.ts +4 -5
- package/dist/entries/app-browser-entry.js +1 -3
- package/dist/entries/app-rsc-entry.d.ts +10 -3
- package/dist/entries/app-rsc-entry.js +503 -51
- package/dist/entries/app-rsc-manifest.d.ts +4 -3
- package/dist/entries/app-rsc-manifest.js +26 -8
- package/dist/entries/app-ssr-entry.d.ts +2 -3
- package/dist/entries/app-ssr-entry.js +8 -1
- package/dist/entries/pages-client-entry.d.ts +3 -3
- package/dist/entries/pages-client-entry.js +17 -2
- package/dist/entries/pages-server-entry.d.ts +13 -3
- package/dist/entries/pages-server-entry.js +234 -33
- package/dist/entries/runtime-entry-module.d.ts +4 -5
- package/dist/image/image-adapters-virtual.d.ts +4 -5
- package/dist/index.d.ts +10 -11
- package/dist/index.js +848 -255
- package/dist/init-cloudflare.d.ts +26 -17
- package/dist/init-cloudflare.js +711 -103
- package/dist/init-platform.d.ts +26 -22
- package/dist/init-platform.js +85 -29
- package/dist/init.d.ts +19 -13
- package/dist/init.js +126 -42
- package/dist/plugins/action-owner-manifest.d.ts +3 -4
- package/dist/plugins/action-owner-manifest.js +10 -3
- package/dist/plugins/ast-scope.d.ts +10 -11
- package/dist/plugins/ast-scope.js +10 -22
- package/dist/plugins/ast-utils.d.ts +16 -29
- package/dist/plugins/ast-utils.js +27 -71
- package/dist/plugins/async-hooks-stub.d.ts +2 -3
- package/dist/plugins/client-reference-dedup.d.ts +4 -5
- package/dist/plugins/commonjs-syntax.d.ts +16 -0
- package/dist/plugins/commonjs-syntax.js +22 -0
- package/dist/plugins/css-data-url.d.ts +2 -3
- package/dist/plugins/css-module-imports.d.ts +3 -4
- package/dist/plugins/css-module-imports.js +1 -1
- package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
- package/dist/plugins/dynamic-preload-metadata.js +55 -154
- package/dist/plugins/environment.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.js +6 -10
- package/dist/plugins/fonts.d.ts +10 -11
- package/dist/plugins/fonts.js +4 -3
- package/dist/plugins/ignore-dynamic-requests.d.ts +14 -4
- package/dist/plugins/ignore-dynamic-requests.js +113 -91
- package/dist/plugins/import-meta-url.d.ts +6 -7
- package/dist/plugins/import-meta-url.js +36 -48
- package/dist/plugins/instrumentation-client.d.ts +3 -3
- package/dist/plugins/instrumentation-client.js +46 -10
- package/dist/plugins/middleware-export-validation.d.ts +3 -4
- package/dist/plugins/middleware-export-validation.js +3 -3
- package/dist/plugins/middleware-server-only.d.ts +2 -3
- package/dist/plugins/og-asset-ownership.d.ts +5 -4
- package/dist/plugins/og-asset-ownership.js +24 -13
- package/dist/plugins/og-assets.d.ts +22 -5
- package/dist/plugins/og-assets.js +82 -21
- package/dist/plugins/og-harfbuzz.d.ts +24 -0
- package/dist/plugins/og-harfbuzz.js +271 -0
- package/dist/plugins/optimize-imports.d.ts +7 -7
- package/dist/plugins/optimize-imports.js +34 -45
- package/dist/plugins/pages-node-externals.d.ts +2 -3
- package/dist/plugins/pages-node-externals.js +6 -11
- package/dist/plugins/postcss.d.ts +8 -4
- package/dist/plugins/postcss.js +1 -1
- package/dist/plugins/remove-console.d.ts +2 -3
- package/dist/plugins/remove-console.js +0 -1
- package/dist/plugins/require-condition-resolution.d.ts +3 -4
- package/dist/plugins/require-condition-resolution.js +17 -18
- package/dist/plugins/require-context.d.ts +3 -3
- package/dist/plugins/require-context.js +41 -22
- package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
- package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
- package/dist/plugins/rsc-client-shim-excludes.js +1 -0
- package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
- package/dist/plugins/sass.d.ts +7 -8
- package/dist/plugins/sass.js +7 -4
- package/dist/plugins/scan-build-css.d.ts +12 -0
- package/dist/plugins/scan-build-css.js +39 -0
- package/dist/plugins/server-externals-manifest.d.ts +2 -3
- package/dist/plugins/strip-server-exports.d.ts +7 -6
- package/dist/plugins/strip-server-exports.js +4 -2
- package/dist/plugins/styled-jsx.d.ts +2 -3
- package/dist/plugins/styled-jsx.js +7 -7
- package/dist/plugins/transform-cache.d.ts +2 -3
- package/dist/plugins/transform-result.d.ts +21 -4
- package/dist/plugins/transform-result.js +23 -2
- package/dist/plugins/transitive-externals.d.ts +2 -3
- package/dist/plugins/typeof-window.d.ts +16 -7
- package/dist/plugins/typeof-window.js +62 -39
- package/dist/plugins/use-cache-callable.d.ts +2 -5
- package/dist/plugins/use-cache-callable.js +43 -22
- package/dist/plugins/wasm-module-import.d.ts +2 -3
- package/dist/plugins/worker-image-imports.d.ts +2 -3
- package/dist/plugins/worker-image-imports.js +6 -8
- package/dist/routing/app-route-graph.d.ts +18 -19
- package/dist/routing/app-route-graph.js +5 -6
- package/dist/routing/app-route-ids.d.ts +3 -0
- package/dist/routing/app-route-ids.js +6 -0
- package/dist/routing/app-router.d.ts +19 -6
- package/dist/routing/app-router.js +24 -2
- package/dist/routing/file-matcher.d.ts +9 -10
- package/dist/routing/pages-router.d.ts +6 -6
- package/dist/routing/pages-router.js +1 -1
- package/dist/routing/route-matching.d.ts +4 -5
- package/dist/routing/route-matching.js +4 -2
- package/dist/routing/route-pattern.d.ts +13 -14
- package/dist/routing/route-trie.d.ts +5 -6
- package/dist/routing/route-validation.d.ts +3 -4
- package/dist/routing/route-validation.js +12 -11
- package/dist/routing/utils.d.ts +13 -14
- package/dist/server/accept-encoding.d.ts +9 -10
- package/dist/server/api-handler.d.ts +2 -3
- package/dist/server/api-handler.js +9 -6
- package/dist/server/app-action-forwarding.d.ts +3 -4
- package/dist/server/app-action-forwarding.js +1 -1
- package/dist/server/app-action-request.d.ts +2 -3
- package/dist/server/app-bfcache-id.d.ts +4 -4
- package/dist/server/app-bfcache-id.js +7 -1
- package/dist/server/app-bfcache-identity.d.ts +8 -9
- package/dist/server/app-bfcache-identity.js +1 -2
- package/dist/server/app-browser-action-result.d.ts +15 -16
- package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
- package/dist/server/app-browser-entry.js +91 -36
- package/dist/server/app-browser-error.d.ts +5 -6
- package/dist/server/app-browser-error.js +9 -3
- package/dist/server/app-browser-history-controller.d.ts +4 -5
- package/dist/server/app-browser-hydration.d.ts +16 -6
- package/dist/server/app-browser-hydration.js +15 -2
- package/dist/server/app-browser-interception-context.d.ts +3 -4
- package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
- package/dist/server/app-browser-navigation-abort.d.ts +3 -4
- package/dist/server/app-browser-navigation-controller.d.ts +8 -8
- package/dist/server/app-browser-navigation-controller.js +9 -5
- package/dist/server/app-browser-navigation-response.d.ts +2 -3
- package/dist/server/app-browser-popstate.d.ts +4 -5
- package/dist/server/app-browser-prefetch-response.d.ts +5 -6
- package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
- package/dist/server/app-browser-server-action-client.d.ts +7 -6
- package/dist/server/app-browser-server-action-client.js +9 -5
- package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
- package/dist/server/app-browser-state.d.ts +17 -17
- package/dist/server/app-browser-state.js +7 -3
- package/dist/server/app-browser-stream.d.ts +5 -6
- package/dist/server/app-browser-stream.js +8 -6
- package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
- package/dist/server/app-browser-visible-commit.d.ts +6 -7
- package/dist/server/app-client-reference-preloader.d.ts +2 -3
- package/dist/server/app-elements-wire-key.d.ts +25 -0
- package/dist/server/app-elements-wire-key.js +69 -0
- package/dist/server/app-elements-wire.d.ts +34 -53
- package/dist/server/app-elements-wire.js +4 -75
- package/dist/server/app-elements.d.ts +5 -5
- package/dist/server/app-elements.js +1 -1
- package/dist/server/app-fallback-renderer.d.ts +4 -4
- package/dist/server/app-fallback-renderer.js +6 -6
- package/dist/server/app-fetch-tracing.d.ts +15 -0
- package/dist/server/app-fetch-tracing.js +38 -0
- package/dist/server/app-history-state.d.ts +25 -27
- package/dist/server/app-history-state.js +21 -16
- package/dist/server/app-hook-warning-suppression.d.ts +2 -3
- package/dist/server/app-hydration-cache-publication.d.ts +3 -4
- package/dist/server/app-inline-css-client.d.ts +3 -4
- package/dist/server/app-interception-context-header.d.ts +2 -3
- package/dist/server/app-layout-param-observation.d.ts +7 -8
- package/dist/server/app-metadata-tracing.d.ts +12 -0
- package/dist/server/app-metadata-tracing.js +17 -0
- package/dist/server/app-middleware.d.ts +7 -7
- package/dist/server/app-middleware.js +2 -3
- package/dist/server/app-mounted-slots-header.d.ts +2 -3
- package/dist/server/app-mounted-slots-header.js +2 -2
- package/dist/server/app-optimistic-routing.d.ts +10 -11
- package/dist/server/app-optimistic-routing.js +3 -2
- package/dist/server/app-page-boundary-render.d.ts +6 -6
- package/dist/server/app-page-boundary-render.js +10 -4
- package/dist/server/app-page-boundary.d.ts +9 -10
- package/dist/server/app-page-boundary.js +1 -1
- package/dist/server/app-page-cache-finalizer.d.ts +18 -9
- package/dist/server/app-page-cache-finalizer.js +51 -16
- package/dist/server/app-page-cache-render.d.ts +8 -5
- package/dist/server/app-page-cache-render.js +22 -4
- package/dist/server/app-page-cache.d.ts +28 -9
- package/dist/server/app-page-cache.js +95 -24
- package/dist/server/app-page-dispatch.d.ts +34 -12
- package/dist/server/app-page-dispatch.js +181 -64
- package/dist/server/app-page-element-builder.d.ts +13 -11
- package/dist/server/app-page-element-builder.js +104 -61
- package/dist/server/app-page-execution.d.ts +14 -14
- package/dist/server/app-page-execution.js +11 -7
- package/dist/server/app-page-head.d.ts +19 -16
- package/dist/server/app-page-head.js +25 -25
- package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
- package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
- package/dist/server/app-page-method.d.ts +5 -11
- package/dist/server/app-page-method.js +2 -9
- package/dist/server/app-page-params.d.ts +5 -6
- package/dist/server/app-page-ppr-runtime.d.ts +2 -2
- package/dist/server/app-page-probe.d.ts +5 -6
- package/dist/server/app-page-probe.js +5 -4
- package/dist/server/app-page-render-identity.d.ts +4 -5
- package/dist/server/app-page-render-observation.d.ts +8 -9
- package/dist/server/app-page-render-observation.js +1 -1
- package/dist/server/app-page-render.d.ts +41 -6
- package/dist/server/app-page-render.js +171 -24
- package/dist/server/app-page-request.d.ts +10 -9
- package/dist/server/app-page-request.js +16 -12
- package/dist/server/app-page-response.d.ts +20 -9
- package/dist/server/app-page-response.js +30 -12
- package/dist/server/app-page-route-wiring.d.ts +15 -15
- package/dist/server/app-page-route-wiring.js +31 -24
- package/dist/server/app-page-search-params-observation.d.ts +26 -5
- package/dist/server/app-page-search-params-observation.js +43 -7
- package/dist/server/app-page-segment-plan.d.ts +2 -3
- package/dist/server/app-page-segment-state.d.ts +11 -12
- package/dist/server/app-page-stream.d.ts +27 -11
- package/dist/server/app-page-stream.js +34 -6
- package/dist/server/app-page-tracing.d.ts +33 -0
- package/dist/server/app-page-tracing.js +50 -0
- package/dist/server/app-pages-bridge.d.ts +6 -6
- package/dist/server/app-pages-bridge.js +18 -4
- package/dist/server/app-post-middleware-context.d.ts +2 -3
- package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
- package/dist/server/app-ppr-fallback-shell-render.js +3 -2
- package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
- package/dist/server/app-prerender-endpoints.d.ts +5 -5
- package/dist/server/app-prerender-endpoints.js +3 -1
- package/dist/server/app-prerender-static-params.d.ts +15 -7
- package/dist/server/app-prerender-static-params.js +24 -9
- package/dist/server/app-render-abort-error.d.ts +3 -0
- package/dist/server/app-render-abort-error.js +8 -0
- package/dist/server/app-render-dependency.d.ts +14 -13
- package/dist/server/app-render-dependency.js +5 -1
- package/dist/server/app-request-context.d.ts +3 -4
- package/dist/server/app-request-stage-context.d.ts +5 -0
- package/dist/server/app-request-stage-context.js +11 -0
- package/dist/server/app-request-stage-dispatch.d.ts +25 -0
- package/dist/server/app-request-stage-dispatch.js +54 -0
- package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
- package/dist/server/app-request-stage-independent-entry.js +112 -0
- package/dist/server/app-response-header-provenance.d.ts +13 -7
- package/dist/server/app-response-header-provenance.js +34 -1
- package/dist/server/app-response-stage-entry.d.ts +9 -0
- package/dist/server/app-response-stage-entry.js +87 -0
- package/dist/server/app-route-handler-cache.d.ts +4 -4
- package/dist/server/app-route-handler-cache.js +51 -35
- package/dist/server/app-route-handler-dispatch.d.ts +3 -3
- package/dist/server/app-route-handler-dispatch.js +77 -56
- package/dist/server/app-route-handler-execution.d.ts +26 -14
- package/dist/server/app-route-handler-execution.js +94 -28
- package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
- package/dist/server/app-route-handler-middleware-context.js +15 -0
- package/dist/server/app-route-handler-policy.d.ts +11 -11
- package/dist/server/app-route-handler-policy.js +2 -2
- package/dist/server/app-route-handler-response.d.ts +9 -10
- package/dist/server/app-route-handler-response.js +14 -3
- package/dist/server/app-route-handler-runtime.d.ts +9 -10
- package/dist/server/app-route-handler-runtime.js +20 -16
- package/dist/server/app-route-module-loader.d.ts +6 -7
- package/dist/server/app-route-request-built-ins.d.ts +3 -4
- package/dist/server/app-route-tree-prefetch.d.ts +6 -7
- package/dist/server/app-route-tree-prefetch.js +2 -1
- package/dist/server/app-router-entry.d.ts +4 -1
- package/dist/server/app-router-entry.js +33 -17
- package/dist/server/app-rsc-cache-busting.d.ts +34 -27
- package/dist/server/app-rsc-cache-busting.js +14 -2
- package/dist/server/app-rsc-combined-handler.d.ts +9 -0
- package/dist/server/app-rsc-combined-handler.js +11 -0
- package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
- package/dist/server/app-rsc-error-handler.d.ts +12 -6
- package/dist/server/app-rsc-error-handler.js +15 -6
- package/dist/server/app-rsc-errors.d.ts +11 -9
- package/dist/server/app-rsc-errors.js +14 -16
- package/dist/server/app-rsc-handler.d.ts +32 -6
- package/dist/server/app-rsc-handler.js +425 -64
- package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
- package/dist/server/app-rsc-render-mode.d.ts +8 -9
- package/dist/server/app-rsc-request-normalization.d.ts +3 -3
- package/dist/server/app-rsc-request-normalization.js +5 -3
- package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
- package/dist/server/app-rsc-response-finalizer.js +10 -7
- package/dist/server/app-rsc-response-stage.d.ts +6 -0
- package/dist/server/app-rsc-response-stage.js +251 -0
- package/dist/server/app-rsc-route-matching.d.ts +3 -4
- package/dist/server/app-rsc-route-matching.js +3 -2
- package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
- package/dist/server/app-rsc-vary.d.ts +16 -0
- package/dist/server/app-rsc-vary.js +31 -0
- package/dist/server/app-segment-config.d.ts +119 -7
- package/dist/server/app-segment-config.js +242 -2
- package/dist/server/app-server-action-execution.d.ts +18 -13
- package/dist/server/app-server-action-execution.js +86 -33
- package/dist/server/app-ssr-entry.d.ts +14 -4
- package/dist/server/app-ssr-entry.js +62 -15
- package/dist/server/app-ssr-error-meta.d.ts +3 -4
- package/dist/server/app-ssr-error-meta.js +2 -1
- package/dist/server/app-ssr-router-instance.d.ts +2 -3
- package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
- package/dist/server/app-ssr-search-params-gate.js +54 -0
- package/dist/server/app-ssr-stream.d.ts +13 -9
- package/dist/server/app-ssr-stream.js +34 -8
- package/dist/server/app-static-generation.d.ts +4 -5
- package/dist/server/app-visited-response-cache.d.ts +11 -12
- package/dist/server/app-visited-response-cache.js +2 -2
- package/dist/server/app-worker-stages.d.ts +112 -0
- package/dist/server/app-worker-stages.js +105 -0
- package/dist/server/artifact-compatibility.d.ts +11 -12
- package/dist/server/before-interactive-head.d.ts +2 -3
- package/dist/server/bfcache-identity.d.ts +7 -8
- package/dist/server/cache-control.d.ts +35 -13
- package/dist/server/cache-control.js +64 -6
- package/dist/server/cache-headers.d.ts +3 -4
- package/dist/server/cache-proof.d.ts +75 -70
- package/dist/server/cache-proof.js +9 -1
- package/dist/server/cacheability-limits.d.ts +4 -5
- package/dist/server/cacheability-limits.js +2 -2
- package/dist/server/cacheability-manifest.d.ts +42 -16
- package/dist/server/cacheability-manifest.js +60 -10
- package/dist/server/cacheability-request.d.ts +37 -8
- package/dist/server/cacheability-request.js +192 -90
- package/dist/server/client-reuse-manifest.d.ts +17 -18
- package/dist/server/client-reuse-manifest.js +2 -2
- package/dist/server/client-trace-metadata.d.ts +9 -6
- package/dist/server/client-trace-metadata.js +27 -15
- package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
- package/dist/server/cloudflare-workers-tracing.js +8 -0
- package/dist/server/config-headers.d.ts +19 -5
- package/dist/server/config-headers.js +25 -11
- package/dist/server/cookie-utils.d.ts +2 -3
- package/dist/server/csp.d.ts +5 -6
- package/dist/server/default-global-error-module.d.ts +2 -3
- package/dist/server/default-global-not-found-module.d.ts +2 -3
- package/dist/server/default-not-found-module.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.js +2 -1
- package/dist/server/dev-initial-server-error.d.ts +3 -4
- package/dist/server/dev-initial-server-error.js +2 -1
- package/dist/server/dev-lockfile.d.ts +7 -8
- package/dist/server/dev-lockfile.js +4 -1
- package/dist/server/dev-module-runner.d.ts +2 -3
- package/dist/server/dev-origin-check.d.ts +5 -6
- package/dist/server/dev-route-files.d.ts +2 -3
- package/dist/server/dev-server.d.ts +4 -5
- package/dist/server/dev-server.js +141 -64
- package/dist/server/dev-stack-sourcemap.d.ts +7 -7
- package/dist/server/dev-stack-sourcemap.js +1 -1
- package/dist/server/document-initial-head.d.ts +3 -4
- package/dist/server/edge-api-runtime.d.ts +4 -5
- package/dist/server/fetch-handler.d.ts +3 -2
- package/dist/server/fetch-handler.js +3 -18
- package/dist/server/file-based-metadata.d.ts +2 -3
- package/dist/server/framework-tracer.d.ts +46 -0
- package/dist/server/framework-tracer.js +125 -0
- package/dist/server/fully-buffered-response.d.ts +11 -0
- package/dist/server/fully-buffered-response.js +19 -0
- package/dist/server/headers.d.ts +56 -61
- package/dist/server/headers.js +22 -31
- package/dist/server/html.d.ts +6 -27
- package/dist/server/html.js +16 -1
- package/dist/server/http-conditional.d.ts +5 -6
- package/dist/server/http-date.d.ts +2 -3
- package/dist/server/http-error-responses.d.ts +9 -10
- package/dist/server/http-error-responses.js +1 -0
- package/dist/server/http-range.d.ts +4 -5
- package/dist/server/hybrid-route-priority.d.ts +4 -5
- package/dist/server/image-optimization.d.ts +20 -21
- package/dist/server/implicit-tags.d.ts +3 -4
- package/dist/server/instrumentation-runtime.d.ts +17 -21
- package/dist/server/instrumentation-runtime.js +26 -8
- package/dist/server/instrumentation.d.ts +26 -30
- package/dist/server/instrumentation.js +18 -23
- package/dist/server/isr-cache.d.ts +30 -27
- package/dist/server/isr-cache.js +23 -70
- package/dist/server/isr-decision.d.ts +4 -4
- package/dist/server/metadata-route-build-data.d.ts +4 -5
- package/dist/server/metadata-route-response.d.ts +7 -7
- package/dist/server/metadata-route-response.js +158 -35
- package/dist/server/metadata-routes.d.ts +18 -19
- package/dist/server/middleware-matcher-pattern.d.ts +6 -7
- package/dist/server/middleware-matcher.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.js +11 -9
- package/dist/server/middleware-response-headers.d.ts +3 -4
- package/dist/server/middleware-runtime.d.ts +7 -8
- package/dist/server/middleware-runtime.js +36 -7
- package/dist/server/middleware.d.ts +5 -5
- package/dist/server/multi-stage.d.ts +141 -0
- package/dist/server/multi-stage.js +8 -0
- package/dist/server/navigation-planner.d.ts +26 -26
- package/dist/server/navigation-trace.d.ts +11 -12
- package/dist/server/next-error-digest.d.ts +4 -5
- package/dist/server/normalize-path.d.ts +5 -6
- package/dist/server/open-redirect.d.ts +2 -3
- package/dist/server/opentelemetry-api.d.ts +59 -0
- package/dist/server/opentelemetry-api.js +53 -0
- package/dist/server/opentelemetry-tracing.d.ts +5 -0
- package/dist/server/opentelemetry-tracing.js +83 -0
- package/dist/server/operation-token.d.ts +11 -12
- package/dist/server/otel-tracer-extension.d.ts +7 -9
- package/dist/server/otel-tracer-extension.js +37 -36
- package/dist/server/pages-api-route.d.ts +5 -4
- package/dist/server/pages-api-route.js +28 -9
- package/dist/server/pages-asset-tags.d.ts +7 -6
- package/dist/server/pages-asset-tags.js +104 -18
- package/dist/server/pages-body-parser-config.d.ts +4 -5
- package/dist/server/pages-body-parser-config.js +4 -4
- package/dist/server/pages-client-assets.d.ts +13 -5
- package/dist/server/pages-data-route.d.ts +11 -12
- package/dist/server/pages-data-route.js +1 -1
- package/dist/server/pages-default-404.d.ts +3 -4
- package/dist/server/pages-dev-hydration.d.ts +9 -4
- package/dist/server/pages-dev-hydration.js +19 -7
- package/dist/server/pages-dev-module-url.d.ts +3 -4
- package/dist/server/pages-dev-stylesheets.d.ts +5 -6
- package/dist/server/pages-document-asset-props.d.ts +6 -7
- package/dist/server/pages-document-initial-props.d.ts +5 -5
- package/dist/server/pages-document-initial-props.js +4 -2
- package/dist/server/pages-execution-tracing.d.ts +40 -0
- package/dist/server/pages-execution-tracing.js +80 -0
- package/dist/server/pages-get-initial-props.d.ts +9 -10
- package/dist/server/pages-i18n.d.ts +8 -8
- package/dist/server/pages-media-type.d.ts +4 -5
- package/dist/server/pages-node-compat.d.ts +11 -10
- package/dist/server/pages-node-compat.js +12 -4
- package/dist/server/pages-page-data.d.ts +23 -19
- package/dist/server/pages-page-data.js +82 -75
- package/dist/server/pages-page-handler.d.ts +7 -6
- package/dist/server/pages-page-handler.js +103 -47
- package/dist/server/pages-page-method.d.ts +2 -3
- package/dist/server/pages-page-response.d.ts +14 -10
- package/dist/server/pages-page-response.js +52 -32
- package/dist/server/pages-preview.d.ts +10 -11
- package/dist/server/pages-readiness.d.ts +2 -3
- package/dist/server/pages-request-pipeline.d.ts +15 -12
- package/dist/server/pages-request-pipeline.js +80 -35
- package/dist/server/pages-request-stage-entry.d.ts +23 -0
- package/dist/server/pages-request-stage-entry.js +316 -0
- package/dist/server/pages-response-stage-entry.d.ts +11 -0
- package/dist/server/pages-response-stage-entry.js +106 -0
- package/dist/server/pages-response-stage.d.ts +31 -0
- package/dist/server/pages-response-stage.js +49 -0
- package/dist/server/pages-revalidate.d.ts +3 -4
- package/dist/server/pages-revalidate.js +9 -4
- package/dist/server/pages-route-data-kind.d.ts +18 -0
- package/dist/server/pages-route-data-kind.js +11 -0
- package/dist/server/pages-router-entry.d.ts +1 -25
- package/dist/server/pages-router-entry.js +35 -148
- package/dist/server/pages-serializable-props.d.ts +3 -4
- package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
- package/dist/server/pregenerated-concrete-paths.js +12 -6
- package/dist/server/prerender-cache-life-header.d.ts +3 -4
- package/dist/server/prerender-manifest.d.ts +17 -11
- package/dist/server/prerender-manifest.js +7 -4
- package/dist/server/prerender-route-params.d.ts +16 -9
- package/dist/server/prerender-route-params.js +18 -3
- package/dist/server/prerender-work-unit-setup.d.ts +2 -3
- package/dist/server/prerender-work-unit-setup.js +5 -5
- package/dist/server/prod-server.d.ts +12 -9
- package/dist/server/prod-server.js +127 -44
- package/dist/server/proxy-trust.d.ts +5 -6
- package/dist/server/request-log.d.ts +3 -4
- package/dist/server/request-pipeline.d.ts +16 -16
- package/dist/server/request-pipeline.js +7 -2
- package/dist/server/request-stage.d.ts +5 -0
- package/dist/server/request-stage.js +7 -0
- package/dist/server/request-tracing.d.ts +22 -0
- package/dist/server/request-tracing.js +180 -0
- package/dist/server/response-stage-cacheability.d.ts +37 -0
- package/dist/server/response-stage-cacheability.js +55 -0
- package/dist/server/response-stage-policy.d.ts +23 -0
- package/dist/server/response-stage-policy.js +89 -0
- package/dist/server/response-stage.d.ts +5 -0
- package/dist/server/response-stage.js +7 -0
- package/dist/server/response-start-tracing.d.ts +14 -0
- package/dist/server/response-start-tracing.js +80 -0
- package/dist/server/revalidation-host.d.ts +2 -3
- package/dist/server/revalidation-host.js +1 -1
- package/dist/server/revalidation-request.d.ts +8 -0
- package/dist/server/revalidation-request.js +37 -0
- package/dist/server/rsc-completion-metadata.d.ts +6 -7
- package/dist/server/rsc-stream-hints.d.ts +18 -7
- package/dist/server/rsc-stream-hints.js +70 -35
- package/dist/server/seed-cache.d.ts +2 -3
- package/dist/server/seed-cache.js +8 -7
- package/dist/server/server-action-not-found.d.ts +5 -6
- package/dist/server/server-globals.d.ts +2 -3
- package/dist/server/skip-cache-proof.d.ts +4 -4
- package/dist/server/socket-error-backstop.d.ts +5 -6
- package/dist/server/socket-error-backstop.js +1 -1
- package/dist/server/static-file-cache.d.ts +5 -6
- package/dist/server/static-file-cache.js +9 -7
- package/dist/server/static-file-signal.d.ts +9 -6
- package/dist/server/static-file-signal.js +51 -2
- package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
- package/dist/server/streaming-metadata.d.ts +2 -3
- package/dist/server/tracer.d.ts +5 -0
- package/dist/server/tracer.js +13 -0
- package/dist/server/worker-prerender-discovery.d.ts +5 -6
- package/dist/server/worker-revalidation-context.d.ts +4 -4
- package/dist/server/worker-revalidation-context.js +6 -5
- package/dist/server/worker-stages.d.ts +43 -0
- package/dist/server/worker-stages.js +25 -0
- package/dist/server/worker-utils.d.ts +5 -6
- package/dist/server/worker-utils.js +2 -1
- package/dist/server/workers-tracing.d.ts +34 -0
- package/dist/server/workers-tracing.js +67 -0
- package/dist/shims/amp.d.ts +3 -4
- package/dist/shims/app-router-scroll-state.d.ts +9 -10
- package/dist/shims/app-router-scroll.d.ts +4 -5
- package/dist/shims/app-router-scroll.js +2 -1
- package/dist/shims/app.d.ts +5 -6
- package/dist/shims/before-interactive-context.d.ts +5 -6
- package/dist/shims/cache-callable-runtime.d.ts +44 -4
- package/dist/shims/cache-callable-runtime.js +168 -8
- package/dist/shims/cache-for-request.d.ts +2 -3
- package/dist/shims/cache-handler.d.ts +33 -20
- package/dist/shims/cache-handler.js +61 -2
- package/dist/shims/cache-request-state.d.ts +26 -38
- package/dist/shims/cache-request-state.js +2 -13
- package/dist/shims/cache-runtime.d.ts +23 -21
- package/dist/shims/cache-runtime.js +110 -28
- package/dist/shims/cache.d.ts +17 -16
- package/dist/shims/cache.js +19 -15
- package/dist/shims/cacheability-classification.d.ts +50 -29
- package/dist/shims/cacheability-classification.js +29 -14
- package/dist/shims/cdn-cache-state.d.ts +13 -0
- package/dist/shims/cdn-cache-state.js +23 -0
- package/dist/shims/cdn-cache.d.ts +59 -21
- package/dist/shims/cdn-cache.js +31 -47
- package/dist/shims/client-hook-error.d.ts +3 -4
- package/dist/shims/client-locale.d.ts +2 -3
- package/dist/shims/client-page-root.d.ts +24 -0
- package/dist/shims/client-page-root.js +121 -0
- package/dist/shims/compat-router.d.ts +2 -3
- package/dist/shims/config.d.ts +3 -4
- package/dist/shims/constants.d.ts +73 -74
- package/dist/shims/constants.js +1 -1
- package/dist/shims/default-not-found.d.ts +2 -3
- package/dist/shims/document.d.ts +9 -9
- package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
- package/dist/shims/dynamic-preload-chunks.js +17 -13
- package/dist/shims/dynamic.d.ts +3 -3
- package/dist/shims/error-boundary-navigation.d.ts +3 -4
- package/dist/shims/error-boundary.d.ts +17 -18
- package/dist/shims/error-boundary.js +17 -11
- package/dist/shims/error.d.ts +5 -19
- package/dist/shims/error.js +17 -10
- package/dist/shims/error.react-server.d.ts +4 -7
- package/dist/shims/error.react-server.js +4 -1
- package/dist/shims/fetch-cache.d.ts +22 -22
- package/dist/shims/fetch-cache.js +46 -20
- package/dist/shims/font-google-base.d.ts +9 -9
- package/dist/shims/font-google-base.js +2 -1
- package/dist/shims/font-local.d.ts +3 -3
- package/dist/shims/font-local.js +1 -1
- package/dist/shims/font-utils.d.ts +14 -15
- package/dist/shims/form.d.ts +2 -2
- package/dist/shims/form.js +10 -7
- package/dist/shims/hash-scroll.d.ts +5 -6
- package/dist/shims/head-state.d.ts +4 -5
- package/dist/shims/head.d.ts +16 -16
- package/dist/shims/head.js +5 -4
- package/dist/shims/headers.d.ts +44 -73
- package/dist/shims/headers.js +87 -144
- package/dist/shims/i18n-context.d.ts +5 -6
- package/dist/shims/i18n-state.d.ts +4 -5
- package/dist/shims/image-config.d.ts +5 -6
- package/dist/shims/image-config.js +2 -0
- package/dist/shims/image.d.ts +5 -5
- package/dist/shims/image.js +12 -8
- package/dist/shims/internal/als-registry.d.ts +4 -5
- package/dist/shims/internal/api-utils.d.ts +3 -4
- package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
- package/dist/shims/internal/app-page-props-cache-key.js +53 -1
- package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
- package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
- package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
- package/dist/shims/internal/app-route-detection.d.ts +2 -2
- package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
- package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
- package/dist/shims/internal/app-router-context.d.ts +9 -10
- package/dist/shims/internal/cache-context-accessor.d.ts +16 -0
- package/dist/shims/internal/cache-context-accessor.js +15 -0
- package/dist/shims/internal/cookie-serialize.d.ts +4 -5
- package/dist/shims/internal/format-url-object.d.ts +7 -0
- package/dist/shims/internal/format-url-object.js +53 -0
- package/dist/shims/internal/headers-state.d.ts +74 -0
- package/dist/shims/internal/headers-state.js +157 -0
- package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
- package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
- package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
- package/dist/shims/internal/interpolate-as.d.ts +5 -6
- package/dist/shims/internal/interpolate-as.js +4 -2
- package/dist/shims/internal/link-status-registry.d.ts +5 -6
- package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
- package/dist/shims/internal/navigation-untracked.d.ts +2 -3
- package/dist/shims/internal/normalize-router-href.d.ts +15 -0
- package/dist/shims/internal/normalize-router-href.js +41 -0
- package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
- package/dist/shims/internal/pages-data-target.d.ts +8 -6
- package/dist/shims/internal/pages-data-target.js +32 -36
- package/dist/shims/internal/pages-data-url.d.ts +4 -5
- package/dist/shims/internal/pages-data-url.js +2 -1
- package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
- package/dist/shims/internal/pages-router-components.d.ts +3 -4
- package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
- package/dist/shims/internal/route-pattern-for-warning.js +3 -3
- package/dist/shims/internal/router-context.d.ts +2 -3
- package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
- package/dist/shims/internal/thenable-well-known-properties.js +33 -0
- package/dist/shims/internal/utils.d.ts +7 -8
- package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
- package/dist/shims/layout-segment-context.d.ts +3 -4
- package/dist/shims/link-prefetch.d.ts +9 -10
- package/dist/shims/link.d.ts +4 -4
- package/dist/shims/link.js +56 -116
- package/dist/shims/metadata.d.ts +15 -16
- package/dist/shims/metadata.js +40 -36
- package/dist/shims/navigation-context-accessors.d.ts +9 -0
- package/dist/shims/navigation-context-accessors.js +19 -0
- package/dist/shims/navigation-context-state.d.ts +27 -18
- package/dist/shims/navigation-errors.d.ts +18 -19
- package/dist/shims/navigation-state.d.ts +6 -7
- package/dist/shims/navigation.d.ts +80 -68
- package/dist/shims/navigation.js +26 -18
- package/dist/shims/navigation.react-server.d.ts +9 -9
- package/dist/shims/offline.d.ts +2 -3
- package/dist/shims/og.d.ts +2 -2
- package/dist/shims/pages-router-runtime.d.ts +4 -5
- package/dist/shims/ppr-fallback-shell.d.ts +13 -14
- package/dist/shims/readonly-url-search-params.d.ts +2 -3
- package/dist/shims/request-context.d.ts +5 -6
- package/dist/shims/request-state-types.d.ts +2 -1
- package/dist/shims/root-params.d.ts +14 -15
- package/dist/shims/root-params.js +1 -1
- package/dist/shims/router-state.d.ts +5 -6
- package/dist/shims/router-state.js +1 -1
- package/dist/shims/router.d.ts +22 -21
- package/dist/shims/router.js +339 -164
- package/dist/shims/script-nonce-context.d.ts +8 -6
- package/dist/shims/script-nonce-context.js +15 -6
- package/dist/shims/script.d.ts +4 -4
- package/dist/shims/script.js +9 -7
- package/dist/shims/search-params-gate.d.ts +35 -0
- package/dist/shims/search-params-gate.js +32 -0
- package/dist/shims/server.d.ts +19 -51
- package/dist/shims/server.js +66 -30
- package/dist/shims/slot.d.ts +33 -15
- package/dist/shims/slot.js +41 -9
- package/dist/shims/streamed-icons.d.ts +3 -4
- package/dist/shims/thenable-params.d.ts +5 -7
- package/dist/shims/thenable-params.js +3 -24
- package/dist/shims/unified-request-context.d.ts +35 -32
- package/dist/shims/unified-request-context.js +34 -24
- package/dist/shims/unrecognized-action-error.d.ts +3 -4
- package/dist/shims/url-safety.d.ts +5 -6
- package/dist/shims/url-utils.d.ts +12 -13
- package/dist/shims/use-merged-ref.d.ts +2 -3
- package/dist/shims/user-agent.d.ts +31 -0
- package/dist/shims/user-agent.js +16 -0
- package/dist/shims/web-vitals.d.ts +2 -2
- package/dist/typegen.d.ts +3 -4
- package/dist/utils/asset-prefix.d.ts +7 -8
- package/dist/utils/base-path.d.ts +5 -6
- package/dist/utils/built-asset-url.d.ts +2 -3
- package/dist/utils/built-asset-url.js +1 -1
- package/dist/utils/cache-control-metadata.d.ts +4 -5
- package/dist/utils/client-build-manifest.d.ts +6 -7
- package/dist/utils/client-build-manifest.js +2 -1
- package/dist/utils/client-entry-manifest.d.ts +6 -7
- package/dist/utils/client-runtime-metadata.d.ts +8 -3
- package/dist/utils/client-runtime-metadata.js +18 -1
- package/dist/utils/commonjs-loader.d.ts +4 -5
- package/dist/utils/compare.d.ts +2 -3
- package/dist/utils/deployment-id.d.ts +6 -7
- package/dist/utils/dev-error-recovery-event.d.ts +2 -3
- package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
- package/dist/utils/domain-locale.d.ts +7 -8
- package/dist/utils/encode-cache-tag.d.ts +4 -4
- package/dist/utils/encode-cache-tag.js +11 -1
- package/dist/utils/error-cause.d.ts +2 -3
- package/dist/utils/external-url.d.ts +2 -3
- package/dist/utils/has-trailing-comma.d.ts +3 -4
- package/dist/utils/hash.d.ts +3 -4
- package/dist/utils/html-limited-bots.d.ts +3 -4
- package/dist/utils/lazy-chunks.d.ts +8 -9
- package/dist/utils/lazy-chunks.js +4 -4
- package/dist/utils/manifest-paths.d.ts +5 -6
- package/dist/utils/mdx-scan.d.ts +11 -4
- package/dist/utils/mdx-scan.js +27 -1
- package/dist/utils/middleware-request-headers.d.ts +7 -6
- package/dist/utils/middleware-request-headers.js +6 -1
- package/dist/utils/navigation-signal.d.ts +3 -3
- package/dist/utils/navigation-signal.js +16 -1
- package/dist/utils/number.d.ts +2 -3
- package/dist/utils/package-name.d.ts +3 -4
- package/dist/utils/parse-cookie.d.ts +4 -5
- package/dist/utils/path.d.ts +8 -9
- package/dist/utils/plugin-options.d.ts +2 -3
- package/dist/utils/precompressed-variant.d.ts +3 -4
- package/dist/utils/prerender-output-paths.d.ts +4 -5
- package/dist/utils/project.d.ts +19 -30
- package/dist/utils/project.js +20 -29
- package/dist/utils/promise.d.ts +2 -3
- package/dist/utils/protocol-headers.d.ts +14 -15
- package/dist/utils/public-file-path.d.ts +2 -3
- package/dist/utils/public-routes.d.ts +2 -3
- package/dist/utils/query.d.ts +14 -9
- package/dist/utils/query.js +22 -1
- package/dist/utils/react-compiler-support.d.ts +6 -7
- package/dist/utils/react-version.d.ts +4 -3
- package/dist/utils/react-version.js +19 -1
- package/dist/utils/record.d.ts +2 -3
- package/dist/utils/redirect-digest.d.ts +3 -4
- package/dist/utils/regex-safety.d.ts +4 -5
- package/dist/utils/regex.d.ts +2 -3
- package/dist/utils/safe-json-file.d.ts +2 -3
- package/dist/utils/sorted-array.d.ts +2 -3
- package/dist/utils/text-stream.d.ts +3 -4
- package/dist/utils/vinext-root.d.ts +2 -3
- package/dist/utils/virtual-module.d.ts +3 -4
- package/dist/utils/vite-cli-invocation.d.ts +21 -0
- package/dist/utils/vite-cli-invocation.js +151 -0
- package/dist/utils/vite-version.d.ts +5 -6
- package/next-package.json +4 -0
- package/package.json +51 -6
- package/dist/server/metadata-route-cache-policy.d.ts +0 -6
- package/dist/server/metadata-route-cache-policy.js +0 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HasCondition } from "../config/next-config.js";
|
|
2
2
|
//#region src/server/middleware-matcher-pattern.d.ts
|
|
3
|
-
type CompiledMiddlewareMatcherPattern = {
|
|
3
|
+
export type CompiledMiddlewareMatcherPattern = {
|
|
4
4
|
regexp: RegExp;
|
|
5
5
|
error?: never;
|
|
6
6
|
} | {
|
|
@@ -8,14 +8,13 @@ type CompiledMiddlewareMatcherPattern = {
|
|
|
8
8
|
error: string;
|
|
9
9
|
kind: "invalid" | "unsafe";
|
|
10
10
|
};
|
|
11
|
-
type MiddlewareMatcherObject = {
|
|
11
|
+
export type MiddlewareMatcherObject = {
|
|
12
12
|
source: string;
|
|
13
13
|
locale?: false;
|
|
14
14
|
has?: HasCondition[];
|
|
15
15
|
missing?: HasCondition[];
|
|
16
16
|
};
|
|
17
|
-
declare function isValidMiddlewareMatcherObjectConfig(value: unknown): value is MiddlewareMatcherObject;
|
|
18
|
-
declare function compileMiddlewareMatcherPattern(source: string): CompiledMiddlewareMatcherPattern;
|
|
19
|
-
declare function validateMiddlewareMatcherPatterns(value: unknown): void;
|
|
20
|
-
//#endregion
|
|
21
|
-
export { CompiledMiddlewareMatcherPattern, MiddlewareMatcherObject, compileMiddlewareMatcherPattern, isValidMiddlewareMatcherObjectConfig, validateMiddlewareMatcherPatterns };
|
|
17
|
+
export declare function isValidMiddlewareMatcherObjectConfig(value: unknown): value is MiddlewareMatcherObject;
|
|
18
|
+
export declare function compileMiddlewareMatcherPattern(source: string): CompiledMiddlewareMatcherPattern;
|
|
19
|
+
export declare function validateMiddlewareMatcherPatterns(value: unknown): void;
|
|
20
|
+
//#endregion
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { NextI18nConfig } from "../config/next-config.js";
|
|
2
2
|
import { MiddlewareMatcherObject } from "./middleware-matcher-pattern.js";
|
|
3
3
|
//#region src/server/middleware-matcher.d.ts
|
|
4
|
-
type MatcherConfig = string | Array<string | MiddlewareMatcherObject>;
|
|
5
|
-
type MiddlewareLocaleMatchContext = {
|
|
4
|
+
export type MatcherConfig = string | Array<string | MiddlewareMatcherObject>;
|
|
5
|
+
export type MiddlewareLocaleMatchContext = {
|
|
6
6
|
kind: "defaulted";
|
|
7
7
|
defaultLocale: string;
|
|
8
8
|
} | {
|
|
9
9
|
kind: "internal" | "literal";
|
|
10
10
|
};
|
|
11
|
-
declare function matchesMiddleware(pathname: string, matcher: MatcherConfig | undefined, request?: Request, i18nConfig?: NextI18nConfig | null, localeContext?: MiddlewareLocaleMatchContext): boolean;
|
|
11
|
+
export declare function matchesMiddleware(pathname: string, matcher: MatcherConfig | undefined, request?: Request, i18nConfig?: NextI18nConfig | null, localeContext?: MiddlewareLocaleMatchContext): boolean;
|
|
12
12
|
/**
|
|
13
13
|
* Whether a pathname can reach middleware, ignoring request-specific
|
|
14
14
|
* `has`/`missing` conditions. This is deliberately separate from
|
|
@@ -16,7 +16,6 @@ declare function matchesMiddleware(pathname: string, matcher: MatcherConfig | un
|
|
|
16
16
|
* full request, while cacheability certification needs a stable answer for
|
|
17
17
|
* every request that can share the pathname's cache entry.
|
|
18
18
|
*/
|
|
19
|
-
declare function matchesMiddlewarePathname(pathname: string, matcher: MatcherConfig | undefined, i18nConfig?: NextI18nConfig | null, localeContext?: MiddlewareLocaleMatchContext): boolean;
|
|
20
|
-
declare function matchPattern(pathname: string, pattern: string): boolean;
|
|
21
|
-
//#endregion
|
|
22
|
-
export { MatcherConfig, MiddlewareLocaleMatchContext, matchPattern, matchesMiddleware, matchesMiddlewarePathname };
|
|
19
|
+
export declare function matchesMiddlewarePathname(pathname: string, matcher: MatcherConfig | undefined, i18nConfig?: NextI18nConfig | null, localeContext?: MiddlewareLocaleMatchContext): boolean;
|
|
20
|
+
export declare function matchPattern(pathname: string, pattern: string): boolean;
|
|
21
|
+
//#endregion
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
//#region src/server/middleware-path-to-regexp.d.ts
|
|
2
|
-
type MiddlewarePathToken = string | MiddlewarePathKey;
|
|
3
|
-
type MiddlewarePathKey = {
|
|
2
|
+
export type MiddlewarePathToken = string | MiddlewarePathKey;
|
|
3
|
+
export type MiddlewarePathKey = {
|
|
4
4
|
name: string | number;
|
|
5
5
|
prefix: string;
|
|
6
6
|
suffix: string;
|
|
7
7
|
pattern: string;
|
|
8
8
|
modifier: string;
|
|
9
9
|
};
|
|
10
|
-
declare function parseMiddlewarePath(value: string): MiddlewarePathToken[];
|
|
11
|
-
declare function normalizeMiddlewarePathTokens(tokens: MiddlewarePathToken[]): MiddlewarePathToken[];
|
|
12
|
-
declare function middlewarePathTokensToRegExp(tokens: MiddlewarePathToken[]): RegExp;
|
|
13
|
-
//#endregion
|
|
14
|
-
export { MiddlewarePathKey, MiddlewarePathToken, middlewarePathTokensToRegExp, normalizeMiddlewarePathTokens, parseMiddlewarePath };
|
|
10
|
+
export declare function parseMiddlewarePath(value: string): MiddlewarePathToken[];
|
|
11
|
+
export declare function normalizeMiddlewarePathTokens(tokens: MiddlewarePathToken[]): MiddlewarePathToken[];
|
|
12
|
+
export declare function middlewarePathTokensToRegExp(tokens: MiddlewarePathToken[]): RegExp;
|
|
13
|
+
//#endregion
|
|
@@ -211,15 +211,17 @@ function middlewarePathTokensToRegExp(tokens) {
|
|
|
211
211
|
}
|
|
212
212
|
const prefix = escapeRegex(token.prefix);
|
|
213
213
|
const suffix = escapeRegex(token.suffix);
|
|
214
|
-
if (token.pattern)
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
214
|
+
if (token.pattern) {
|
|
215
|
+
if (prefix || suffix) {
|
|
216
|
+
if (token.modifier === "+" || token.modifier === "*") {
|
|
217
|
+
const optional = token.modifier === "*" ? "?" : "";
|
|
218
|
+
route += `(?:${prefix}((?:${token.pattern})(?:${suffix}${prefix}(?:${token.pattern}))*)${suffix})${optional}`;
|
|
219
|
+
} else route += `(?:${prefix}(${token.pattern})${suffix})${token.modifier}`;
|
|
220
|
+
} else {
|
|
221
|
+
if (token.modifier === "+" || token.modifier === "*") throw new TypeError(`Can not repeat "${token.name}" without a prefix and suffix`);
|
|
222
|
+
route += `(${token.pattern})${token.modifier}`;
|
|
223
|
+
}
|
|
224
|
+
} else route += `(?:${prefix}${suffix})${token.modifier}`;
|
|
223
225
|
}
|
|
224
226
|
route += `${delimiterRegex}?$`;
|
|
225
227
|
return new RegExp(route, "i");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region src/server/middleware-response-headers.d.ts
|
|
2
|
-
declare function mergeVaryHeader(target: Headers, value: string): void;
|
|
2
|
+
export declare function mergeVaryHeader(target: Headers, value: string): void;
|
|
3
3
|
/**
|
|
4
4
|
* Merge middleware response headers into a target Headers object.
|
|
5
5
|
*
|
|
@@ -7,6 +7,5 @@ declare function mergeVaryHeader(target: Headers, value: string): void;
|
|
|
7
7
|
* contribute values. All other headers use set() so middleware owns singular
|
|
8
8
|
* response headers like Cache-Control.
|
|
9
9
|
*/
|
|
10
|
-
declare function mergeMiddlewareResponseHeaders(target: Headers, middlewareHeaders: Headers | null): void;
|
|
11
|
-
//#endregion
|
|
12
|
-
export { mergeMiddlewareResponseHeaders, mergeVaryHeader };
|
|
10
|
+
export declare function mergeMiddlewareResponseHeaders(target: Headers, middlewareHeaders: Headers | null): void;
|
|
11
|
+
//#endregion
|
|
@@ -2,8 +2,8 @@ import { NextI18nConfig } from "../config/next-config.js";
|
|
|
2
2
|
import { ExecutionContextLike } from "../shims/request-context.js";
|
|
3
3
|
import { NextFetchEvent, NextRequest } from "../shims/server.js";
|
|
4
4
|
//#region src/server/middleware-runtime.d.ts
|
|
5
|
-
type MiddlewareModule = Record<string, unknown>;
|
|
6
|
-
type MiddlewareResult = {
|
|
5
|
+
export type MiddlewareModule = Record<string, unknown>;
|
|
6
|
+
export type MiddlewareResult = {
|
|
7
7
|
continue: boolean;
|
|
8
8
|
/** True when this pathname can match middleware for some request context. */
|
|
9
9
|
pathnameEligible?: boolean;
|
|
@@ -67,12 +67,11 @@ type ExecuteMiddlewareOptions = {
|
|
|
67
67
|
type RunGeneratedMiddlewareOptions = ExecuteMiddlewareOptions & {
|
|
68
68
|
ctx?: ExecutionContextLike;
|
|
69
69
|
};
|
|
70
|
-
declare function createMiddlewareMissingExportError(filePath: string | undefined, isProxy: boolean): Error;
|
|
71
|
-
declare function resolveMiddlewareModuleHandler(mod: MiddlewareModule, options: {
|
|
70
|
+
export declare function createMiddlewareMissingExportError(filePath: string | undefined, isProxy: boolean): Error;
|
|
71
|
+
export declare function resolveMiddlewareModuleHandler(mod: MiddlewareModule, options: {
|
|
72
72
|
filePath?: string;
|
|
73
73
|
isProxy: boolean;
|
|
74
74
|
}): MiddlewareHandler;
|
|
75
|
-
declare function executeMiddleware(options: ExecuteMiddlewareOptions): Promise<MiddlewareResult>;
|
|
76
|
-
declare function runGeneratedMiddleware(options: RunGeneratedMiddlewareOptions): Promise<MiddlewareResult>;
|
|
77
|
-
//#endregion
|
|
78
|
-
export { MiddlewareModule, MiddlewareResult, createMiddlewareMissingExportError, executeMiddleware, resolveMiddlewareModuleHandler, runGeneratedMiddleware };
|
|
75
|
+
export declare function executeMiddleware(options: ExecuteMiddlewareOptions): Promise<MiddlewareResult>;
|
|
76
|
+
export declare function runGeneratedMiddleware(options: RunGeneratedMiddlewareOptions): Promise<MiddlewareResult>;
|
|
77
|
+
//#endregion
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import path from "../deps/.pnpm/pathslash@0.1.0/deps/pathslash/dist/index.js";
|
|
2
|
+
import "../utils/protocol-headers.js";
|
|
3
|
+
import { shouldKeepMiddlewareHeader } from "../utils/middleware-request-headers.js";
|
|
4
|
+
import { normalizeHost } from "../config/request-context.js";
|
|
2
5
|
import { normalizePathnameForRouteMatchStrict } from "../routing/utils.js";
|
|
3
6
|
import { addBasePathToPathname, hasBasePath, removeTrailingSlash, stripBasePath } from "../utils/base-path.js";
|
|
4
7
|
import { getRequestExecutionContext, runWithExecutionContext } from "../shims/request-context.js";
|
|
5
8
|
import "./server-globals.js";
|
|
6
|
-
import { normalizeHost } from "../config/request-context.js";
|
|
7
|
-
import "../utils/protocol-headers.js";
|
|
8
9
|
import { MIDDLEWARE_REWRITE_HEADER } from "./headers.js";
|
|
9
|
-
import { shouldKeepMiddlewareHeader } from "../utils/middleware-request-headers.js";
|
|
10
10
|
import { NextFetchEvent, NextRequest } from "../shims/server.js";
|
|
11
11
|
import { normalizePath } from "./normalize-path.js";
|
|
12
12
|
import { matchesMiddleware, matchesMiddlewarePathname } from "./middleware-matcher.js";
|
|
@@ -14,7 +14,23 @@ import { badRequestResponse, internalServerErrorResponse } from "./http-error-re
|
|
|
14
14
|
import { isOpenRedirectShaped } from "./open-redirect.js";
|
|
15
15
|
import { processMiddlewareHeaders } from "./request-pipeline.js";
|
|
16
16
|
import { normalizeDefaultLocalePathname } from "./pages-i18n.js";
|
|
17
|
+
import { reportRequestError } from "./instrumentation.js";
|
|
18
|
+
import { isValidNavigationSignalError } from "../utils/navigation-signal.js";
|
|
19
|
+
import { frameworkTracer } from "./tracer.js";
|
|
17
20
|
//#region src/server/middleware-runtime.ts
|
|
21
|
+
function reportProxyError(options, error) {
|
|
22
|
+
const url = new URL(options.request.url);
|
|
23
|
+
return reportRequestError(error, {
|
|
24
|
+
path: url.pathname + url.search,
|
|
25
|
+
method: options.request.method,
|
|
26
|
+
headers: Object.fromEntries(options.request.headers.entries())
|
|
27
|
+
}, {
|
|
28
|
+
routerKind: "Pages Router",
|
|
29
|
+
routePath: "/proxy",
|
|
30
|
+
routeType: "proxy",
|
|
31
|
+
revalidateReason: void 0
|
|
32
|
+
});
|
|
33
|
+
}
|
|
18
34
|
function isMiddlewareHandler(value) {
|
|
19
35
|
return typeof value === "function";
|
|
20
36
|
}
|
|
@@ -202,14 +218,25 @@ async function executeMiddleware(options) {
|
|
|
202
218
|
const fetchEvent = new NextFetchEvent({ page: removeTrailingSlash(matchPathname) });
|
|
203
219
|
let response;
|
|
204
220
|
try {
|
|
205
|
-
response = await
|
|
221
|
+
response = await frameworkTracer.runWithDetachedContext(() => frameworkTracer.withPropagatedContext(options.request.headers, () => frameworkTracer.trace({
|
|
222
|
+
attributes: {
|
|
223
|
+
"http.method": options.request.method,
|
|
224
|
+
"http.target": nextRequest.nextUrl.pathname
|
|
225
|
+
},
|
|
226
|
+
name: `middleware ${options.request.method}`,
|
|
227
|
+
type: "Middleware.execute"
|
|
228
|
+
}, () => middlewareFn(nextRequest, fetchEvent))));
|
|
206
229
|
} catch (e) {
|
|
230
|
+
const isDevelopmentNavigationSignal = process.env.NODE_ENV !== "production" && isValidNavigationSignalError(e);
|
|
231
|
+
if (isDevelopmentNavigationSignal && e instanceof Error) e.message = `Next.js navigation API is not allowed to be used in ${options.isProxy ? "Proxy" : "Middleware"}.`;
|
|
207
232
|
console.error("[vinext] Middleware error:", e);
|
|
233
|
+
if (!isDevelopmentNavigationSignal) await reportProxyError(options, e);
|
|
208
234
|
const waitUntilPromises = drainFetchEvent(fetchEvent);
|
|
209
235
|
releaseMiddlewareRequestBody(nextRequest, waitUntilPromises);
|
|
236
|
+
const message = options.includeErrorDetails ? "Middleware Error: " + (e instanceof Error ? e.message : String(e)) : "Internal Server Error";
|
|
210
237
|
return {
|
|
211
238
|
continue: false,
|
|
212
|
-
response: internalServerErrorResponse(
|
|
239
|
+
response: internalServerErrorResponse(message),
|
|
213
240
|
waitUntilPromises
|
|
214
241
|
};
|
|
215
242
|
}
|
|
@@ -240,8 +267,10 @@ async function executeMiddleware(options) {
|
|
|
240
267
|
if (loc.origin === new URL(options.request.url).origin) {
|
|
241
268
|
const p = loc.pathname;
|
|
242
269
|
let normalized = null;
|
|
243
|
-
if (p !== "" && p !== "/")
|
|
244
|
-
|
|
270
|
+
if (p !== "" && p !== "/") {
|
|
271
|
+
if (options.trailingSlash) normalized = p.endsWith("/") ? null : p + "/";
|
|
272
|
+
else normalized = p.endsWith("/") ? p.slice(0, -1) : null;
|
|
273
|
+
}
|
|
245
274
|
if (normalized !== null) {
|
|
246
275
|
loc.pathname = normalized;
|
|
247
276
|
normalizedLocation = relativizeLocation(loc.toString(), options.request.url);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ValidFileMatcher } from "../routing/file-matcher.js";
|
|
2
2
|
import { NextI18nConfig } from "../config/next-config.js";
|
|
3
|
-
import { MiddlewareResult } from "./middleware-runtime.js";
|
|
4
3
|
import { matchPattern, matchesMiddleware } from "./middleware-matcher.js";
|
|
4
|
+
import { MiddlewareResult } from "./middleware-runtime.js";
|
|
5
5
|
import { ModuleRunner } from "vite/module-runner";
|
|
6
6
|
//#region src/server/middleware.d.ts
|
|
7
7
|
/**
|
|
@@ -13,7 +13,7 @@ import { ModuleRunner } from "vite/module-runner";
|
|
|
13
13
|
* named export or a default export:
|
|
14
14
|
* https://github.com/vercel/next.js/blob/canary/packages/next/src/build/templates/middleware.ts
|
|
15
15
|
*/
|
|
16
|
-
declare function isProxyFile(filePath: string): boolean;
|
|
16
|
+
export declare function isProxyFile(filePath: string): boolean;
|
|
17
17
|
/**
|
|
18
18
|
* Find the proxy or middleware file at the selected app/pages convention level.
|
|
19
19
|
* Checks for proxy.ts (Next.js 16) first, then falls back to middleware.ts.
|
|
@@ -31,7 +31,7 @@ declare function isProxyFile(filePath: string): boolean;
|
|
|
31
31
|
* @see https://github.com/vercel/next.js/blob/canary/packages/next/src/build/index.ts
|
|
32
32
|
* (search for "MIDDLEWARE_FILENAME" + "file convention is deprecated")
|
|
33
33
|
*/
|
|
34
|
-
declare function findMiddlewareFile(root: string, fileMatcher: ValidFileMatcher, conventionDir?: string): string | null;
|
|
34
|
+
export declare function findMiddlewareFile(root: string, fileMatcher: ValidFileMatcher, conventionDir?: string): string | null;
|
|
35
35
|
/**
|
|
36
36
|
* Load and execute middleware for a given request.
|
|
37
37
|
*
|
|
@@ -44,6 +44,6 @@ declare function findMiddlewareFile(root: string, fileMatcher: ValidFileMatcher,
|
|
|
44
44
|
* @param request - The incoming Request object
|
|
45
45
|
* @returns Middleware result describing what action to take
|
|
46
46
|
*/
|
|
47
|
-
declare function runMiddleware(runner: ModuleRunner, middlewarePath: string, request: Request, i18nConfig?: NextI18nConfig | null, basePath?: string, trailingSlash?: boolean, isDataRequest?: boolean, normalizedPathname?: string): Promise<MiddlewareResult>;
|
|
47
|
+
export declare function runMiddleware(runner: ModuleRunner, middlewarePath: string, request: Request, i18nConfig?: NextI18nConfig | null, basePath?: string, trailingSlash?: boolean, isDataRequest?: boolean, normalizedPathname?: string): Promise<MiddlewareResult>;
|
|
48
48
|
//#endregion
|
|
49
|
-
export {
|
|
49
|
+
export { matchPattern, matchesMiddleware };
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { CacheabilityRepresentation } from "./cacheability-manifest.js";
|
|
2
|
+
//#region src/server/multi-stage.d.ts
|
|
3
|
+
/** Whether a response-stage cache must reject a field it did not key itself by. */
|
|
4
|
+
export declare function hasUnsupportedResponseStageVary(headers: Headers, keyedRequestHeaders?: Iterable<string>): boolean;
|
|
5
|
+
/**
|
|
6
|
+
* Transport-neutral cache intent passed from the request stage to an
|
|
7
|
+
* adapter-owned response-stage transport.
|
|
8
|
+
*/
|
|
9
|
+
export type VinextResponseStageDispatchOptions = {
|
|
10
|
+
/**
|
|
11
|
+
* Whether the adapter may use its shared response transport. Bypassed work
|
|
12
|
+
* still uses the same response stage, but must not pass through a host cache.
|
|
13
|
+
* Without a `cacheIdentity`, a shared transport must partition its baseline
|
|
14
|
+
* lookup by the request method, complete request URL (including scheme,
|
|
15
|
+
* authority, exact path, and query), plus the complete serialized stage
|
|
16
|
+
* props; each can affect handler selection or response bytes.
|
|
17
|
+
* Framework-managed selectors are already represented by that URL and the
|
|
18
|
+
* serialized props. A verbatim-capable transport must partition stored
|
|
19
|
+
* variants by every named `Vary` request header and never store `Vary: *`.
|
|
20
|
+
* Other transports must reject application-defined variance themselves or
|
|
21
|
+
* opt into completed-response admission and honor core's `no-store` policy.
|
|
22
|
+
*/
|
|
23
|
+
cache: "shared" | "bypass";
|
|
24
|
+
/**
|
|
25
|
+
* Query-free identity of a shared App page GET/HEAD dispatch, supplied only
|
|
26
|
+
* to adapters that declare `responseStageCacheIdentity: "query-free"` and
|
|
27
|
+
* require completed-response admission. A transport given one partitions
|
|
28
|
+
* its baseline lookup and stored entry by this request's method and complete
|
|
29
|
+
* URL plus these complete serialized props, instead of the dispatched request
|
|
30
|
+
* and props, and replays this identity for background regeneration.
|
|
31
|
+
* Everything else in the contract above still applies.
|
|
32
|
+
*
|
|
33
|
+
* The identity drops the user query from the URL and `resolvedUrl`, keeping
|
|
34
|
+
* framework representation selectors: the `.rsc` suffix, the render mode,
|
|
35
|
+
* and, for RSC requests only, the one validated `_rsc` value. That is safe only because completed-response
|
|
36
|
+
* admission refuses a cacheable App page response unless its render proved
|
|
37
|
+
* it never read `searchParams`. The dispatched request still carries the real
|
|
38
|
+
* query for the render itself. Core omits the identity when a `next.config`
|
|
39
|
+
* public cache policy applies (cached per full URL, as Next.js CDN caching
|
|
40
|
+
* is), and for bypassed, interception, and mounted-slot dispatches.
|
|
41
|
+
*/
|
|
42
|
+
cacheIdentity?: {
|
|
43
|
+
props: unknown;
|
|
44
|
+
request: Request;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
export type VinextCacheabilityProbeMode = "probe" | "identity";
|
|
48
|
+
/** A durably replayable invocation of a transformed public `"use cache"` function. */
|
|
49
|
+
export type VinextCacheFunctionInvocation = {
|
|
50
|
+
encryptedArgs: string;
|
|
51
|
+
referenceId: string;
|
|
52
|
+
rootParams: Record<string, string | string[]>;
|
|
53
|
+
softTags: string[];
|
|
54
|
+
};
|
|
55
|
+
/** Trusted route/admission metadata transported independently of user headers. */
|
|
56
|
+
export type VinextResponseStageCacheability = {
|
|
57
|
+
/** Safe positive next.config policy needed for CDN-level Next.js parity. */
|
|
58
|
+
policyHeaders: Array<[string, string]> | null;
|
|
59
|
+
/** Present only after the request stage authenticates an internal probe. */
|
|
60
|
+
probeMode: VinextCacheabilityProbeMode | null;
|
|
61
|
+
/** Resolved route pathname used for manifest authorization after outer rewrites. */
|
|
62
|
+
resolvedRoutePathname: string;
|
|
63
|
+
/** Trusted representation retained when request-stage normalization changes the URL shape. */
|
|
64
|
+
representation?: CacheabilityRepresentation;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Adapter-owned transport from the request stage to the response stage.
|
|
68
|
+
*
|
|
69
|
+
* The props and options are serializable stage metadata. An adapter may carry
|
|
70
|
+
* them over in-process dispatch, platform RPC, a service binding, or HTTP. If
|
|
71
|
+
* it caches shared dispatches, its baseline identity must include the request
|
|
72
|
+
* method, complete request URL (including scheme, authority, exact path, and
|
|
73
|
+
* query), plus the complete serialized props, or the equivalent fields of
|
|
74
|
+
* `options.cacheIdentity` when core supplies one. An adapter that advertises
|
|
75
|
+
* `responseVary: "verbatim"` must also partition stored variants by every
|
|
76
|
+
* request header named in the returned `Vary` fields and reject `Vary: *` from
|
|
77
|
+
* storage. Adapters without that capability must reject application-defined
|
|
78
|
+
* variance themselves, or opt into completed-response admission and honor
|
|
79
|
+
* core's resulting `no-store` policy.
|
|
80
|
+
*
|
|
81
|
+
* The transport is also the trust boundary for this metadata. It must
|
|
82
|
+
* authenticate both directions and integrity-protect the serialized props,
|
|
83
|
+
* dispatch options, and response so public callers cannot forge trusted route
|
|
84
|
+
* or cache-admission state. Platform bindings can provide that boundary
|
|
85
|
+
* directly; HTTP transports need equivalent authenticated, confidential
|
|
86
|
+
* transport for both request-stage and response-stage endpoints.
|
|
87
|
+
*/
|
|
88
|
+
export type VinextResponseStageTransport<Props = unknown> = (request: Request, props: Props, options: VinextResponseStageDispatchOptions) => Promise<Response>;
|
|
89
|
+
/** Adapter-selected server output for an adapter-owned staged runtime. */
|
|
90
|
+
export type VinextMultiStageOutput = {
|
|
91
|
+
/** Adapter-owned module that becomes the deployment entry when selected. */
|
|
92
|
+
entry: string;
|
|
93
|
+
/** Complete adapter-owned host entries for independently deployable stages. */
|
|
94
|
+
entries?: {
|
|
95
|
+
request: string;
|
|
96
|
+
response: string;
|
|
97
|
+
};
|
|
98
|
+
type: "multi-stage";
|
|
99
|
+
/** Decide whether the current build host supports this adapter's transport. */
|
|
100
|
+
matchesBuild?: (build: {
|
|
101
|
+
plugins: readonly {
|
|
102
|
+
name?: string;
|
|
103
|
+
}[];
|
|
104
|
+
}) => boolean;
|
|
105
|
+
/** Decorate a host entry without exposing transport-specific exports to core. */
|
|
106
|
+
transformHostEntry?: (module: {
|
|
107
|
+
code: string;
|
|
108
|
+
id: string;
|
|
109
|
+
}) => string | null;
|
|
110
|
+
/**
|
|
111
|
+
* Let the adapter finalize host-owned deployment output after it is written.
|
|
112
|
+
* Core supplies paths only; the adapter owns every platform-specific detail.
|
|
113
|
+
*/
|
|
114
|
+
finalizeBuildOutput?: (output: {
|
|
115
|
+
outDir: string;
|
|
116
|
+
root: string;
|
|
117
|
+
isPrimaryServerOutput: boolean;
|
|
118
|
+
}) => Promise<void> | void;
|
|
119
|
+
};
|
|
120
|
+
/** Platform-neutral request-stage handler exposed to deployment adapters. */
|
|
121
|
+
export type VinextRequestStageHandler<Env = unknown, Context = unknown> = (request: Request, env: Env, context: Context, dispatchResponseStage: VinextResponseStageTransport) => Promise<Response>;
|
|
122
|
+
/** Adapter-owned reverse transport from a response stage back through request routing. */
|
|
123
|
+
export type VinextRequestStageTransport = (request: Request) => Promise<Response>;
|
|
124
|
+
/** Adapter-supplied host capability for serving deployment assets. */
|
|
125
|
+
export type VinextAssetFetcher = {
|
|
126
|
+
fetch(request: Request): Promise<Response> | Response;
|
|
127
|
+
};
|
|
128
|
+
/** Optional host capabilities consumed by a platform-neutral request stage. */
|
|
129
|
+
export type VinextRequestStageContext = {
|
|
130
|
+
assets?: VinextAssetFetcher;
|
|
131
|
+
};
|
|
132
|
+
/** Platform-neutral response-stage handler exposed to deployment adapters. */
|
|
133
|
+
export type VinextResponseStageHandler<Env = unknown, Context = unknown> = (request: Request, env: Env, context: Context, props: unknown, dispatchRequestStage: VinextRequestStageTransport, options: VinextResponseStageDispatchOptions) => Promise<Response>;
|
|
134
|
+
export type VinextRequestStageModule<Env = unknown, Context = unknown> = {
|
|
135
|
+
handleRequestStage: VinextRequestStageHandler<Env, Context>;
|
|
136
|
+
};
|
|
137
|
+
export type VinextResponseStageModule<Env = unknown, Context = unknown> = {
|
|
138
|
+
handleResponseStage: VinextResponseStageHandler<Env, Context>;
|
|
139
|
+
invokeCacheFunction?: (invocation: VinextCacheFunctionInvocation, env: Env, context: Context, dispatchRequestStage: VinextRequestStageTransport) => Promise<void>;
|
|
140
|
+
};
|
|
141
|
+
//#endregion
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/server/multi-stage.ts
|
|
2
|
+
/** Whether a response-stage cache must reject a field it did not key itself by. */
|
|
3
|
+
function hasUnsupportedResponseStageVary(headers, keyedRequestHeaders = []) {
|
|
4
|
+
const keyedFields = new Set([...keyedRequestHeaders].map((name) => name.trim().toLowerCase()).filter(Boolean));
|
|
5
|
+
return (headers.get("Vary") ?? "").split(",").map((name) => name.trim().toLowerCase()).filter(Boolean).some((name) => name === "*" || !keyedFields.has(name));
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { hasUnsupportedResponseStageVary };
|
|
@@ -5,7 +5,7 @@ import "./app-elements.js";
|
|
|
5
5
|
import { NavigationTrace, NavigationTraceFields } from "./navigation-trace.js";
|
|
6
6
|
import { OperationLane, OperationToken } from "./operation-token.js";
|
|
7
7
|
//#region src/server/navigation-planner.d.ts
|
|
8
|
-
type RouteSnapshot = {
|
|
8
|
+
export type RouteSnapshot = {
|
|
9
9
|
interception: InterceptionSnapshot | null;
|
|
10
10
|
interceptionContext: string | null;
|
|
11
11
|
routeId: string;
|
|
@@ -16,27 +16,27 @@ type RouteSnapshot = {
|
|
|
16
16
|
matchedUrl: string;
|
|
17
17
|
slotBindings: readonly ParallelSlotBindingSnapshot[];
|
|
18
18
|
};
|
|
19
|
-
type InterceptionSnapshot = {
|
|
19
|
+
export type InterceptionSnapshot = {
|
|
20
20
|
sourceMatchedUrl: string;
|
|
21
21
|
sourceRouteId: string;
|
|
22
22
|
slotId: string;
|
|
23
23
|
targetMatchedUrl: string;
|
|
24
24
|
targetRouteId: string;
|
|
25
25
|
};
|
|
26
|
-
type MountedParallelSlotSnapshot = {
|
|
26
|
+
export type MountedParallelSlotSnapshot = {
|
|
27
27
|
slotId: string;
|
|
28
28
|
ownerLayoutId: string | null;
|
|
29
29
|
};
|
|
30
|
-
type ParallelSlotBindingSnapshot = AppElementsSlotBinding;
|
|
31
|
-
type NavigationPlannerState = {
|
|
30
|
+
export type ParallelSlotBindingSnapshot = AppElementsSlotBinding;
|
|
31
|
+
export type NavigationPlannerState = {
|
|
32
32
|
nextOperationToken: OperationToken;
|
|
33
33
|
traceFields?: NavigationTraceFields;
|
|
34
34
|
visibleCommitVersion: number;
|
|
35
35
|
visibleSnapshot: RouteSnapshot;
|
|
36
36
|
};
|
|
37
|
-
type RefreshScope = "visible";
|
|
38
|
-
type TraverseDirection = "back" | "forward" | "unknown";
|
|
39
|
-
type NavigationEvent = {
|
|
37
|
+
export type RefreshScope = "visible";
|
|
38
|
+
export type TraverseDirection = "back" | "forward" | "unknown";
|
|
39
|
+
export type NavigationEvent = {
|
|
40
40
|
kind: "navigate";
|
|
41
41
|
href: string;
|
|
42
42
|
mode: "push" | "replace";
|
|
@@ -77,8 +77,8 @@ type CommitProposal = {
|
|
|
77
77
|
};
|
|
78
78
|
type NoCommitReason = "prefetchOnly";
|
|
79
79
|
type HardNavigationReason = "cacheProofRejected" | "cacheReuseTokenRejected" | "interceptionProofRejected" | "rootBoundaryChanged";
|
|
80
|
-
type RootBoundaryTransition = "currentRootBoundary" | "rootBoundaryChanged" | "rootBoundaryUnknown";
|
|
81
|
-
type NavigationDecision = {
|
|
80
|
+
export type RootBoundaryTransition = "currentRootBoundary" | "rootBoundaryChanged" | "rootBoundaryUnknown";
|
|
81
|
+
export type NavigationDecision = {
|
|
82
82
|
kind: "requestWork";
|
|
83
83
|
token: OperationToken;
|
|
84
84
|
work: RequestedWork;
|
|
@@ -100,14 +100,14 @@ type NavigationDecision = {
|
|
|
100
100
|
reason: HardNavigationReason;
|
|
101
101
|
trace: NavigationTrace;
|
|
102
102
|
};
|
|
103
|
-
type FlightResult = {
|
|
103
|
+
export type FlightResult = {
|
|
104
104
|
cacheEntryReuseProof?: CacheEntryReuseProof;
|
|
105
105
|
href: string;
|
|
106
106
|
restoredHistorySnapshot?: boolean;
|
|
107
107
|
targetSnapshot: RouteSnapshot;
|
|
108
108
|
};
|
|
109
109
|
type RscFetchResultSource = "cached" | "live";
|
|
110
|
-
type RscFetchResultFacts = {
|
|
110
|
+
export type RscFetchResultFacts = {
|
|
111
111
|
source: RscFetchResultSource;
|
|
112
112
|
currentHref: string;
|
|
113
113
|
origin: string;
|
|
@@ -130,7 +130,7 @@ type RscRedirectFollow = {
|
|
|
130
130
|
redirectDepth: number;
|
|
131
131
|
};
|
|
132
132
|
type RscFetchResultHardNavReason = "invalidRscPayload" | "rscCompatibilityMismatch" | "externalRedirectTarget" | "redirectDepthExhausted" | "streamedRedirectLoop";
|
|
133
|
-
type RscFetchResultDecision = {
|
|
133
|
+
export type RscFetchResultDecision = {
|
|
134
134
|
kind: "proceedToCommit";
|
|
135
135
|
discardBody: false;
|
|
136
136
|
trace: NavigationTrace;
|
|
@@ -147,7 +147,7 @@ type RscFetchResultDecision = {
|
|
|
147
147
|
reason: RscFetchResultHardNavReason;
|
|
148
148
|
trace: NavigationTrace;
|
|
149
149
|
};
|
|
150
|
-
type EarlyNavigationIntentFacts = {
|
|
150
|
+
export type EarlyNavigationIntentFacts = {
|
|
151
151
|
basePath: string;
|
|
152
152
|
currentUrlSpace: "appRelativeSnapshot" | "browser";
|
|
153
153
|
currentHref: string;
|
|
@@ -155,7 +155,7 @@ type EarlyNavigationIntentFacts = {
|
|
|
155
155
|
scroll: boolean;
|
|
156
156
|
targetHref: string;
|
|
157
157
|
};
|
|
158
|
-
type EarlyNavigationIntentDecision = {
|
|
158
|
+
export type EarlyNavigationIntentDecision = {
|
|
159
159
|
kind: "sameDocumentScroll";
|
|
160
160
|
hash: string;
|
|
161
161
|
mode: "push" | "replace";
|
|
@@ -167,7 +167,7 @@ type EarlyNavigationIntentDecision = {
|
|
|
167
167
|
trace: NavigationTrace;
|
|
168
168
|
};
|
|
169
169
|
type NavigationReuseNavigationKind = "navigate" | "refresh" | "traverse";
|
|
170
|
-
type VisitedResponseCacheCandidateFacts = {
|
|
170
|
+
export type VisitedResponseCacheCandidateFacts = {
|
|
171
171
|
candidate: "missing";
|
|
172
172
|
navigationKind: NavigationReuseNavigationKind;
|
|
173
173
|
} | {
|
|
@@ -195,7 +195,7 @@ type OptimisticRouteShellCandidateAvailability = {
|
|
|
195
195
|
status: "unavailable";
|
|
196
196
|
reason: "routeManifestMissing";
|
|
197
197
|
};
|
|
198
|
-
type NavigationReuseFacts = {
|
|
198
|
+
export type NavigationReuseFacts = {
|
|
199
199
|
bypassNavigationCache: boolean;
|
|
200
200
|
navigationKind: NavigationReuseNavigationKind;
|
|
201
201
|
optimisticRouteShell: OptimisticRouteShellCandidateAvailability;
|
|
@@ -204,7 +204,7 @@ type NavigationReuseFacts = {
|
|
|
204
204
|
visitedResponse: NavigationReuseCandidateAvailability;
|
|
205
205
|
};
|
|
206
206
|
type FreshFetchReason = "cacheBypassed" | "cacheMiss" | "refresh" | "routeManifestMissing";
|
|
207
|
-
type NavigationReuseDecision = {
|
|
207
|
+
export type NavigationReuseDecision = {
|
|
208
208
|
kind: "reuseVisitedResponse";
|
|
209
209
|
trace: NavigationTrace;
|
|
210
210
|
} | {
|
|
@@ -229,7 +229,7 @@ type NavigationPrefetchProbeDecision = {
|
|
|
229
229
|
kind: "skip";
|
|
230
230
|
reason: "cacheBypassed" | "refresh" | "visitedResponseAvailable";
|
|
231
231
|
};
|
|
232
|
-
type NavigationPlannerInput = {
|
|
232
|
+
export type NavigationPlannerInput = {
|
|
233
233
|
routeManifest: RouteManifest | null;
|
|
234
234
|
state: NavigationPlannerState;
|
|
235
235
|
event: NavigationEvent;
|
|
@@ -256,13 +256,13 @@ declare function resolveCurrentRootBoundaryElementPersistence(currentSnapshot: R
|
|
|
256
256
|
*
|
|
257
257
|
* Wire absence and UNMATCHED_SLOT markers are not semantic proof.
|
|
258
258
|
*/
|
|
259
|
-
declare function resolveDefaultOrUnmatchedSlotPersistenceForLayouts(options: {
|
|
259
|
+
export declare function resolveDefaultOrUnmatchedSlotPersistenceForLayouts(options: {
|
|
260
260
|
currentSlotBindings: readonly ParallelSlotBindingSnapshot[];
|
|
261
261
|
preservedLayoutIds: readonly string[];
|
|
262
262
|
targetSlotBindings: readonly ParallelSlotBindingSnapshot[];
|
|
263
263
|
}): readonly string[];
|
|
264
264
|
declare function planNavigation(input: NavigationPlannerInput): NavigationDecision;
|
|
265
|
-
type ServerActionResultFacts = {
|
|
265
|
+
export type ServerActionResultFacts = {
|
|
266
266
|
actionRedirectHref: string | null;
|
|
267
267
|
actionRedirectType: "push" | "replace";
|
|
268
268
|
clientCompatibilityId: string | null;
|
|
@@ -272,7 +272,7 @@ type ServerActionResultFacts = {
|
|
|
272
272
|
origin: string;
|
|
273
273
|
responseUrl: string | null;
|
|
274
274
|
};
|
|
275
|
-
type ServerActionResultDecision = {
|
|
275
|
+
export type ServerActionResultDecision = {
|
|
276
276
|
kind: "proceed";
|
|
277
277
|
trace: NavigationTrace;
|
|
278
278
|
} | {
|
|
@@ -283,10 +283,10 @@ type ServerActionResultDecision = {
|
|
|
283
283
|
reason: "serverActionRedirectCompatibilityMismatch" | "serverActionRscCompatibilityMismatch";
|
|
284
284
|
trace: NavigationTrace;
|
|
285
285
|
};
|
|
286
|
-
type RscNavigationErrorFacts = {
|
|
286
|
+
export type RscNavigationErrorFacts = {
|
|
287
287
|
currentHref: string;
|
|
288
288
|
};
|
|
289
|
-
type RscNavigationErrorDecision = {
|
|
289
|
+
export type RscNavigationErrorDecision = {
|
|
290
290
|
kind: "hardNavigate";
|
|
291
291
|
url: string;
|
|
292
292
|
reason: "rscNavigationError";
|
|
@@ -294,7 +294,7 @@ type RscNavigationErrorDecision = {
|
|
|
294
294
|
};
|
|
295
295
|
declare function classifyServerActionResult(facts: ServerActionResultFacts): ServerActionResultDecision;
|
|
296
296
|
declare function classifyRscNavigationError(facts: RscNavigationErrorFacts): RscNavigationErrorDecision;
|
|
297
|
-
declare const navigationPlanner: {
|
|
297
|
+
export declare const navigationPlanner: {
|
|
298
298
|
classifyEarlyNavigationIntent: typeof classifyEarlyNavigationIntent;
|
|
299
299
|
classifyNavigationPrefetchProbe: typeof classifyNavigationPrefetchProbe;
|
|
300
300
|
classifyNavigationReuse: typeof classifyNavigationReuse;
|
|
@@ -309,4 +309,4 @@ declare const navigationPlanner: {
|
|
|
309
309
|
resolveSameLayoutAncestorPersistence: typeof resolveSameLayoutAncestorPersistence;
|
|
310
310
|
};
|
|
311
311
|
//#endregion
|
|
312
|
-
export {
|
|
312
|
+
export type { OperationLane, OperationToken };
|