vinext 0.0.55 → 0.1.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 +51 -15
- package/dist/build/assets-ignore.d.ts +32 -0
- package/dist/build/assets-ignore.js +48 -0
- package/dist/build/clean-output.d.ts +1 -2
- package/dist/build/clean-output.js +0 -2
- package/dist/build/client-build-config.d.ts +42 -3
- package/dist/build/client-build-config.js +86 -4
- package/dist/build/css-url-assets.d.ts +29 -0
- package/dist/build/css-url-assets.js +211 -0
- package/dist/build/google-fonts/build-url.d.ts +1 -2
- package/dist/build/google-fonts/build-url.js +0 -2
- package/dist/build/google-fonts/fallback-metrics-data.js +0 -2
- package/dist/build/google-fonts/fallback-metrics.d.ts +1 -2
- package/dist/build/google-fonts/fallback-metrics.js +0 -2
- package/dist/build/google-fonts/font-data.js +0 -2
- package/dist/build/google-fonts/font-metadata.d.ts +1 -2
- package/dist/build/google-fonts/font-metadata.js +0 -2
- package/dist/build/google-fonts/get-axes.d.ts +1 -2
- package/dist/build/google-fonts/get-axes.js +0 -2
- package/dist/build/google-fonts/sort-variants.d.ts +1 -2
- package/dist/build/google-fonts/sort-variants.js +0 -2
- package/dist/build/google-fonts/validate.d.ts +1 -2
- package/dist/build/google-fonts/validate.js +0 -2
- package/dist/build/inline-css.d.ts +1 -2
- package/dist/build/inline-css.js +0 -2
- package/dist/build/layout-classification-types.d.ts +1 -2
- package/dist/build/layout-classification.d.ts +2 -3
- package/dist/build/layout-classification.js +1 -3
- package/dist/build/next-client-runtime-manifests.d.ts +14 -0
- package/dist/build/next-client-runtime-manifests.js +39 -0
- package/dist/build/nitro-route-rules.d.ts +1 -2
- package/dist/build/nitro-route-rules.js +0 -2
- package/dist/build/precompress.d.ts +1 -2
- package/dist/build/precompress.js +0 -2
- package/dist/build/prerender.d.ts +2 -3
- package/dist/build/prerender.js +14 -2
- package/dist/build/report.d.ts +1 -2
- package/dist/build/report.js +0 -2
- package/dist/build/route-classification-injector.d.ts +1 -2
- package/dist/build/route-classification-injector.js +4 -6
- package/dist/build/route-classification-manifest.d.ts +5 -6
- package/dist/build/route-classification-manifest.js +5 -7
- package/dist/build/run-prerender.d.ts +1 -2
- package/dist/build/run-prerender.js +15 -7
- package/dist/build/server-manifest.d.ts +1 -2
- package/dist/build/server-manifest.js +0 -2
- package/dist/build/ssr-manifest.d.ts +1 -2
- package/dist/build/ssr-manifest.js +2 -4
- package/dist/build/standalone.d.ts +1 -2
- package/dist/build/standalone.js +0 -2
- package/dist/build/static-export.d.ts +2 -3
- package/dist/build/static-export.js +0 -2
- package/dist/cache/cache-adapters-virtual.d.ts +50 -0
- package/dist/cache/cache-adapters-virtual.js +45 -0
- package/dist/check.d.ts +33 -2
- package/dist/check.js +306 -24
- package/dist/cli-args.d.ts +1 -2
- package/dist/cli-args.js +0 -2
- package/dist/cli.js +9 -13
- package/dist/client/instrumentation-client-inject.d.ts +1 -2
- package/dist/client/instrumentation-client-inject.js +0 -2
- package/dist/client/instrumentation-client-state.d.ts +1 -2
- package/dist/client/instrumentation-client-state.js +0 -2
- package/dist/client/instrumentation-client.d.ts +1 -2
- package/dist/client/instrumentation-client.js +0 -2
- package/dist/client/navigation-runtime.d.ts +9 -2
- package/dist/client/navigation-runtime.js +1 -3
- package/dist/client/pages-router-link-navigation.d.ts +1 -2
- package/dist/client/pages-router-link-navigation.js +0 -2
- package/dist/client/validate-module-path.d.ts +1 -2
- package/dist/client/validate-module-path.js +0 -2
- package/dist/client/vinext-next-data.d.ts +3 -3
- package/dist/client/vinext-next-data.js +0 -2
- package/dist/client/window-next.d.ts +1 -2
- package/dist/client/window-next.js +0 -2
- package/dist/cloudflare/index.d.ts +1 -1
- package/dist/cloudflare/index.js +1 -1
- package/dist/cloudflare/src/cache/cdn-adapter.runtime.js +97 -0
- package/dist/cloudflare/{kv-cache-handler.d.ts → src/cache/kv-data-adapter.runtime.d.ts} +25 -6
- package/dist/cloudflare/{kv-cache-handler.js → src/cache/kv-data-adapter.runtime.js} +36 -28
- package/dist/cloudflare/src/utils/cache-control-metadata.js +20 -0
- package/dist/cloudflare/tpr.d.ts +2 -3
- package/dist/cloudflare/tpr.js +8 -8
- package/dist/config/config-matchers.d.ts +20 -2
- package/dist/config/config-matchers.js +35 -3
- package/dist/config/dotenv.d.ts +1 -2
- package/dist/config/dotenv.js +0 -2
- package/dist/config/next-config.d.ts +32 -5
- package/dist/config/next-config.js +53 -6
- package/dist/config/tsconfig-paths.d.ts +1 -2
- package/dist/config/tsconfig-paths.js +3 -7
- package/dist/deploy.d.ts +48 -3
- package/dist/deploy.js +180 -415
- package/dist/entries/app-browser-entry.d.ts +1 -2
- package/dist/entries/app-browser-entry.js +0 -2
- package/dist/entries/app-rsc-entry.d.ts +12 -6
- package/dist/entries/app-rsc-entry.js +101 -62
- package/dist/entries/app-rsc-manifest.d.ts +1 -2
- package/dist/entries/app-rsc-manifest.js +40 -9
- package/dist/entries/app-ssr-entry.d.ts +1 -2
- package/dist/entries/app-ssr-entry.js +0 -2
- package/dist/entries/pages-client-entry.d.ts +3 -3
- package/dist/entries/pages-client-entry.js +16 -5
- package/dist/entries/pages-entry-helpers.d.ts +2 -11
- package/dist/entries/pages-entry-helpers.js +1 -20
- package/dist/entries/pages-server-entry.d.ts +2 -3
- package/dist/entries/pages-server-entry.js +98 -703
- package/dist/entries/runtime-entry-module.d.ts +1 -2
- package/dist/entries/runtime-entry-module.js +0 -2
- package/dist/index.d.ts +22 -2
- package/dist/index.js +376 -316
- package/dist/init.d.ts +1 -2
- package/dist/init.js +1 -3
- package/dist/plugins/ast-utils.d.ts +20 -0
- package/dist/plugins/ast-utils.js +78 -0
- package/dist/plugins/async-hooks-stub.d.ts +1 -2
- package/dist/plugins/async-hooks-stub.js +0 -2
- package/dist/plugins/client-reference-dedup.d.ts +1 -2
- package/dist/plugins/client-reference-dedup.js +4 -8
- package/dist/plugins/css-data-url.d.ts +1 -2
- package/dist/plugins/css-data-url.js +0 -2
- package/dist/plugins/fonts.d.ts +13 -3
- package/dist/plugins/fonts.js +19 -13
- package/dist/plugins/import-meta-url.d.ts +2 -2
- package/dist/plugins/import-meta-url.js +187 -33
- package/dist/plugins/instrumentation-client.d.ts +1 -2
- package/dist/plugins/instrumentation-client.js +0 -2
- package/dist/plugins/middleware-server-only.d.ts +1 -2
- package/dist/plugins/middleware-server-only.js +0 -2
- package/dist/plugins/og-assets.d.ts +32 -8
- package/dist/plugins/og-assets.js +126 -34
- package/dist/plugins/optimize-imports.d.ts +1 -2
- package/dist/plugins/optimize-imports.js +9 -17
- package/dist/plugins/postcss.d.ts +1 -2
- package/dist/plugins/postcss.js +18 -16
- package/dist/plugins/remove-console.d.ts +1 -2
- package/dist/plugins/remove-console.js +0 -2
- package/dist/plugins/require-context.d.ts +6 -0
- package/dist/plugins/require-context.js +184 -0
- package/dist/plugins/rsc-client-reference-loaders.d.ts +1 -2
- package/dist/plugins/rsc-client-reference-loaders.js +0 -2
- package/dist/plugins/rsc-client-shim-excludes.d.ts +1 -2
- package/dist/plugins/rsc-client-shim-excludes.js +0 -2
- package/dist/plugins/sass.d.ts +1 -2
- package/dist/plugins/sass.js +0 -2
- package/dist/plugins/server-externals-manifest.d.ts +1 -2
- package/dist/plugins/server-externals-manifest.js +0 -2
- package/dist/plugins/strip-server-exports.d.ts +1 -2
- package/dist/plugins/strip-server-exports.js +0 -2
- package/dist/routing/app-route-graph.d.ts +14 -10
- package/dist/routing/app-route-graph.js +146 -35
- package/dist/routing/app-router.d.ts +1 -2
- package/dist/routing/app-router.js +0 -2
- package/dist/routing/file-matcher.d.ts +6 -2
- package/dist/routing/file-matcher.js +15 -7
- package/dist/routing/pages-router.d.ts +1 -2
- package/dist/routing/pages-router.js +0 -2
- package/dist/routing/route-matching.d.ts +1 -2
- package/dist/routing/route-matching.js +0 -2
- package/dist/routing/route-pattern.d.ts +2 -2
- package/dist/routing/route-pattern.js +16 -3
- package/dist/routing/route-trie.d.ts +1 -2
- package/dist/routing/route-trie.js +0 -2
- package/dist/routing/route-validation.d.ts +1 -2
- package/dist/routing/route-validation.js +0 -2
- package/dist/routing/utils.d.ts +44 -2
- package/dist/routing/utils.js +62 -3
- package/dist/server/api-handler.d.ts +1 -2
- package/dist/server/api-handler.js +4 -2
- package/dist/server/app-bfcache-id.d.ts +5 -0
- package/dist/server/app-bfcache-id.js +5 -0
- package/dist/server/app-browser-action-result.d.ts +1 -2
- package/dist/server/app-browser-action-result.js +0 -2
- package/dist/server/app-browser-client-reuse-manifest.d.ts +12 -0
- package/dist/server/app-browser-client-reuse-manifest.js +101 -0
- package/dist/server/app-browser-entry.js +244 -88
- package/dist/server/app-browser-error.d.ts +1 -2
- package/dist/server/app-browser-error.js +0 -2
- package/dist/server/app-browser-hydration.d.ts +1 -2
- package/dist/server/app-browser-hydration.js +0 -2
- package/dist/server/app-browser-interception-context.d.ts +2 -2
- package/dist/server/app-browser-interception-context.js +15 -4
- package/dist/server/app-browser-mpa-navigation.d.ts +2 -2
- package/dist/server/app-browser-mpa-navigation.js +9 -3
- package/dist/server/app-browser-navigation-controller.d.ts +15 -4
- package/dist/server/app-browser-navigation-controller.js +80 -4
- package/dist/server/app-browser-popstate.d.ts +12 -4
- package/dist/server/app-browser-popstate.js +19 -6
- package/dist/server/app-browser-rsc-redirect.d.ts +1 -2
- package/dist/server/app-browser-rsc-redirect.js +0 -2
- package/dist/server/app-browser-state.d.ts +31 -4
- package/dist/server/app-browser-state.js +196 -10
- package/dist/server/app-browser-stream.d.ts +1 -2
- package/dist/server/app-browser-stream.js +0 -2
- package/dist/server/app-browser-visible-commit.d.ts +2 -3
- package/dist/server/app-browser-visible-commit.js +30 -21
- package/dist/server/app-client-reference-preloader.d.ts +1 -2
- package/dist/server/app-client-reference-preloader.js +0 -2
- package/dist/server/app-elements-wire.d.ts +14 -8
- package/dist/server/app-elements-wire.js +45 -24
- package/dist/server/app-elements.d.ts +2 -3
- package/dist/server/app-elements.js +2 -4
- package/dist/server/app-fallback-renderer.d.ts +5 -5
- package/dist/server/app-fallback-renderer.js +4 -3
- package/dist/server/app-history-state.d.ts +62 -2
- package/dist/server/app-history-state.js +176 -10
- package/dist/server/app-hook-warning-suppression.d.ts +1 -2
- package/dist/server/app-hook-warning-suppression.js +0 -2
- package/dist/server/app-inline-css-client.d.ts +1 -2
- package/dist/server/app-inline-css-client.js +0 -2
- package/dist/server/app-interception-context-header.d.ts +1 -2
- package/dist/server/app-interception-context-header.js +0 -2
- package/dist/server/app-layout-param-observation.d.ts +15 -2
- package/dist/server/app-layout-param-observation.js +46 -8
- package/dist/server/app-middleware.d.ts +1 -2
- package/dist/server/app-middleware.js +0 -2
- package/dist/server/app-mounted-slots-header.d.ts +1 -2
- package/dist/server/app-mounted-slots-header.js +0 -2
- package/dist/server/app-optimistic-routing.d.ts +1 -2
- package/dist/server/app-optimistic-routing.js +0 -2
- package/dist/server/app-page-boundary-render.d.ts +4 -3
- package/dist/server/app-page-boundary-render.js +59 -28
- package/dist/server/app-page-boundary.d.ts +11 -2
- package/dist/server/app-page-boundary.js +13 -4
- package/dist/server/app-page-cache.d.ts +3 -3
- package/dist/server/app-page-cache.js +36 -11
- package/dist/server/app-page-dispatch.d.ts +25 -5
- package/dist/server/app-page-dispatch.js +122 -25
- package/dist/server/app-page-element-builder.d.ts +4 -2
- package/dist/server/app-page-element-builder.js +31 -21
- package/dist/server/app-page-execution.d.ts +8 -3
- package/dist/server/app-page-execution.js +55 -24
- package/dist/server/app-page-head.d.ts +1 -2
- package/dist/server/app-page-head.js +6 -6
- package/dist/server/app-page-method.d.ts +1 -2
- package/dist/server/app-page-method.js +0 -2
- package/dist/server/app-page-params.d.ts +1 -2
- package/dist/server/app-page-params.js +0 -2
- package/dist/server/app-page-probe.d.ts +79 -2
- package/dist/server/app-page-probe.js +89 -9
- package/dist/server/app-page-render-identity.d.ts +1 -2
- package/dist/server/app-page-render-identity.js +0 -2
- package/dist/server/app-page-render-observation.d.ts +1 -2
- package/dist/server/app-page-render-observation.js +0 -2
- package/dist/server/app-page-render.d.ts +15 -3
- package/dist/server/app-page-render.js +171 -12
- package/dist/server/app-page-request.d.ts +12 -9
- package/dist/server/app-page-request.js +12 -11
- package/dist/server/app-page-response.d.ts +4 -4
- package/dist/server/app-page-response.js +6 -4
- package/dist/server/app-page-route-wiring.d.ts +14 -3
- package/dist/server/app-page-route-wiring.js +65 -12
- package/dist/server/app-page-search-params-observation.d.ts +10 -0
- package/dist/server/app-page-search-params-observation.js +20 -0
- package/dist/server/app-page-segment-state.d.ts +1 -2
- package/dist/server/app-page-segment-state.js +1 -8
- package/dist/server/app-page-stream.d.ts +54 -9
- package/dist/server/app-page-stream.js +61 -10
- package/dist/server/app-pages-bridge.d.ts +41 -0
- package/dist/server/app-pages-bridge.js +54 -0
- package/dist/server/app-post-middleware-context.d.ts +1 -2
- package/dist/server/app-post-middleware-context.js +0 -2
- package/dist/server/app-ppr-fallback-shell.d.ts +21 -0
- package/dist/server/app-ppr-fallback-shell.js +82 -0
- package/dist/server/app-prerender-endpoints.d.ts +1 -2
- package/dist/server/app-prerender-endpoints.js +0 -2
- package/dist/server/app-prerender-static-params.d.ts +15 -2
- package/dist/server/app-prerender-static-params.js +44 -13
- package/dist/server/app-render-dependency.d.ts +3 -2
- package/dist/server/app-render-dependency.js +9 -3
- package/dist/server/app-request-context.d.ts +1 -2
- package/dist/server/app-request-context.js +0 -2
- package/dist/server/app-route-handler-cache.d.ts +2 -2
- package/dist/server/app-route-handler-cache.js +1 -2
- package/dist/server/app-route-handler-dispatch.d.ts +2 -2
- package/dist/server/app-route-handler-dispatch.js +2 -2
- package/dist/server/app-route-handler-execution.d.ts +2 -2
- package/dist/server/app-route-handler-execution.js +3 -4
- package/dist/server/app-route-handler-policy.d.ts +1 -2
- package/dist/server/app-route-handler-policy.js +0 -2
- package/dist/server/app-route-handler-response.d.ts +2 -3
- package/dist/server/app-route-handler-response.js +7 -6
- package/dist/server/app-route-handler-runtime.d.ts +2 -2
- package/dist/server/app-route-handler-runtime.js +3 -4
- package/dist/server/app-route-module-loader.d.ts +43 -0
- package/dist/server/app-route-module-loader.js +32 -0
- package/dist/server/app-router-entry.d.ts +1 -2
- package/dist/server/app-router-entry.js +2 -2
- package/dist/server/app-rsc-cache-busting.d.ts +10 -2
- package/dist/server/app-rsc-cache-busting.js +13 -4
- package/dist/server/app-rsc-embedded-chunks.d.ts +1 -2
- package/dist/server/app-rsc-embedded-chunks.js +0 -2
- package/dist/server/app-rsc-error-handler.d.ts +1 -2
- package/dist/server/app-rsc-error-handler.js +0 -2
- package/dist/server/app-rsc-errors.d.ts +1 -2
- package/dist/server/app-rsc-errors.js +0 -2
- package/dist/server/app-rsc-handler.d.ts +17 -2
- package/dist/server/app-rsc-handler.js +24 -15
- package/dist/server/app-rsc-render-mode.d.ts +1 -2
- package/dist/server/app-rsc-render-mode.js +0 -2
- package/dist/server/app-rsc-request-normalization.d.ts +4 -5
- package/dist/server/app-rsc-request-normalization.js +2 -4
- package/dist/server/app-rsc-response-finalizer.d.ts +1 -2
- package/dist/server/app-rsc-response-finalizer.js +2 -2
- package/dist/server/app-rsc-route-matching.d.ts +20 -2
- package/dist/server/app-rsc-route-matching.js +29 -6
- package/dist/server/app-segment-config.d.ts +4 -2
- package/dist/server/app-segment-config.js +8 -2
- package/dist/server/app-server-action-execution.d.ts +18 -3
- package/dist/server/app-server-action-execution.js +75 -18
- package/dist/server/app-ssr-entry.d.ts +11 -4
- package/dist/server/app-ssr-entry.js +47 -15
- package/dist/server/app-ssr-error-meta.d.ts +1 -2
- package/dist/server/app-ssr-error-meta.js +0 -2
- package/dist/server/app-ssr-stream.d.ts +1 -2
- package/dist/server/app-ssr-stream.js +31 -3
- package/dist/server/app-static-generation.d.ts +1 -2
- package/dist/server/app-static-generation.js +0 -2
- package/dist/server/app-visited-response-cache.d.ts +23 -0
- package/dist/server/app-visited-response-cache.js +19 -0
- package/dist/server/artifact-compatibility.d.ts +1 -2
- package/dist/server/artifact-compatibility.js +2 -6
- package/dist/server/cache-control.d.ts +15 -2
- package/dist/server/cache-control.js +21 -3
- package/dist/server/cache-headers.d.ts +1 -2
- package/dist/server/cache-headers.js +0 -2
- package/dist/server/cache-proof.d.ts +1 -2
- package/dist/server/cache-proof.js +0 -2
- package/dist/server/client-reuse-manifest.d.ts +3 -3
- package/dist/server/client-reuse-manifest.js +6 -10
- package/dist/server/client-trace-metadata.d.ts +1 -2
- package/dist/server/client-trace-metadata.js +0 -2
- package/dist/server/cookie-utils.d.ts +1 -2
- package/dist/server/cookie-utils.js +0 -2
- package/dist/server/csp.d.ts +1 -2
- package/dist/server/csp.js +0 -2
- package/dist/server/default-global-error-module.d.ts +1 -2
- package/dist/server/default-global-error-module.js +0 -2
- package/dist/server/default-not-found-module.d.ts +1 -2
- package/dist/server/default-not-found-module.js +0 -2
- package/dist/server/dev-error-overlay-store.d.ts +20 -4
- package/dist/server/dev-error-overlay-store.js +23 -4
- package/dist/server/dev-error-overlay.d.ts +39 -3
- package/dist/server/dev-error-overlay.js +952 -164
- package/dist/server/dev-initial-server-error.d.ts +9 -0
- package/dist/server/dev-initial-server-error.js +26 -0
- package/dist/server/dev-lockfile.d.ts +1 -2
- package/dist/server/dev-lockfile.js +0 -2
- package/dist/server/dev-module-runner.d.ts +1 -2
- package/dist/server/dev-module-runner.js +0 -2
- package/dist/server/dev-origin-check.d.ts +1 -2
- package/dist/server/dev-origin-check.js +0 -2
- package/dist/server/dev-route-files.d.ts +1 -2
- package/dist/server/dev-route-files.js +0 -2
- package/dist/server/dev-server.d.ts +3 -4
- package/dist/server/dev-server.js +129 -49
- package/dist/server/dev-stack-sourcemap-endpoint.d.ts +4 -0
- package/dist/server/dev-stack-sourcemap-endpoint.js +4 -0
- package/dist/server/dev-stack-sourcemap.d.ts +43 -0
- package/dist/server/dev-stack-sourcemap.js +443 -0
- package/dist/server/document-initial-head.d.ts +1 -2
- package/dist/server/document-initial-head.js +0 -2
- package/dist/server/edge-api-runtime.d.ts +1 -2
- package/dist/server/edge-api-runtime.js +0 -2
- package/dist/server/file-based-metadata.d.ts +1 -2
- package/dist/server/file-based-metadata.js +0 -2
- package/dist/server/headers.d.ts +3 -2
- package/dist/server/headers.js +3 -3
- package/dist/server/html.d.ts +1 -2
- package/dist/server/html.js +0 -2
- package/dist/server/http-error-responses.d.ts +1 -2
- package/dist/server/http-error-responses.js +0 -2
- package/dist/server/image-optimization.d.ts +1 -2
- package/dist/server/image-optimization.js +0 -2
- package/dist/server/implicit-tags.d.ts +1 -2
- package/dist/server/implicit-tags.js +0 -2
- package/dist/server/instrumentation-runtime.d.ts +1 -2
- package/dist/server/instrumentation-runtime.js +0 -2
- package/dist/server/instrumentation.d.ts +1 -2
- package/dist/server/instrumentation.js +0 -2
- package/dist/server/isr-cache.d.ts +46 -3
- package/dist/server/isr-cache.js +93 -24
- package/dist/server/metadata-route-build-data.d.ts +1 -2
- package/dist/server/metadata-route-build-data.js +0 -2
- package/dist/server/metadata-route-response.d.ts +1 -2
- package/dist/server/metadata-route-response.js +0 -2
- package/dist/server/metadata-routes.d.ts +1 -2
- package/dist/server/metadata-routes.js +0 -2
- package/dist/server/middleware-matcher.d.ts +1 -2
- package/dist/server/middleware-matcher.js +0 -2
- package/dist/server/middleware-request-headers.d.ts +1 -2
- package/dist/server/middleware-request-headers.js +0 -2
- package/dist/server/middleware-response-headers.d.ts +1 -2
- package/dist/server/middleware-response-headers.js +0 -2
- package/dist/server/middleware-runtime.d.ts +1 -2
- package/dist/server/middleware-runtime.js +14 -5
- package/dist/server/middleware.d.ts +2 -3
- package/dist/server/middleware.js +0 -2
- package/dist/server/navigation-planner.d.ts +16 -2
- package/dist/server/navigation-planner.js +6 -6
- package/dist/server/navigation-trace.d.ts +1 -2
- package/dist/server/navigation-trace.js +0 -2
- package/dist/server/next-error-digest.d.ts +1 -2
- package/dist/server/next-error-digest.js +0 -2
- package/dist/server/normalize-path.d.ts +1 -2
- package/dist/server/normalize-path.js +0 -2
- package/dist/server/pages-api-route.d.ts +1 -2
- package/dist/server/pages-api-route.js +1 -3
- package/dist/server/pages-asset-tags.d.ts +66 -0
- package/dist/server/pages-asset-tags.js +116 -0
- package/dist/server/pages-body-parser-config.d.ts +1 -2
- package/dist/server/pages-body-parser-config.js +0 -2
- package/dist/server/pages-data-route.d.ts +39 -2
- package/dist/server/pages-data-route.js +46 -3
- package/dist/server/pages-default-404.d.ts +1 -2
- package/dist/server/pages-default-404.js +0 -2
- package/dist/server/pages-document-initial-props.d.ts +1 -2
- package/dist/server/pages-document-initial-props.js +0 -2
- package/dist/server/pages-get-initial-props.d.ts +17 -0
- package/dist/server/pages-get-initial-props.js +50 -0
- package/dist/server/pages-i18n.d.ts +1 -2
- package/dist/server/pages-i18n.js +0 -2
- package/dist/server/pages-media-type.d.ts +1 -2
- package/dist/server/pages-media-type.js +1 -2
- package/dist/server/pages-node-compat.d.ts +11 -2
- package/dist/server/pages-node-compat.js +38 -3
- package/dist/server/pages-page-data.d.ts +17 -10
- package/dist/server/pages-page-data.js +79 -35
- package/dist/server/pages-page-handler.d.ts +97 -0
- package/dist/server/pages-page-handler.js +348 -0
- package/dist/server/pages-page-method.d.ts +1 -2
- package/dist/server/pages-page-method.js +0 -2
- package/dist/server/pages-page-response.d.ts +11 -3
- package/dist/server/pages-page-response.js +16 -5
- package/dist/server/pages-readiness.d.ts +36 -0
- package/dist/server/pages-readiness.js +21 -0
- package/dist/server/pages-request-pipeline.d.ts +99 -0
- package/dist/server/pages-request-pipeline.js +209 -0
- package/dist/server/pages-revalidate.d.ts +15 -0
- package/dist/server/pages-revalidate.js +19 -0
- package/dist/server/pages-serializable-props.d.ts +1 -2
- package/dist/server/pages-serializable-props.js +0 -2
- package/dist/server/pregenerated-concrete-paths.d.ts +32 -0
- package/dist/server/pregenerated-concrete-paths.js +78 -0
- package/dist/server/prerender-route-params.d.ts +13 -3
- package/dist/server/prerender-route-params.js +30 -11
- package/dist/server/prerender-work-unit-setup.d.ts +1 -2
- package/dist/server/prerender-work-unit-setup.js +0 -2
- package/dist/server/prod-server.d.ts +8 -6
- package/dist/server/prod-server.js +101 -219
- package/dist/server/proxy-trust.d.ts +1 -2
- package/dist/server/proxy-trust.js +0 -2
- package/dist/server/request-log.d.ts +1 -2
- package/dist/server/request-log.js +0 -2
- package/dist/server/request-pipeline.d.ts +14 -2
- package/dist/server/request-pipeline.js +42 -3
- package/dist/server/rsc-stream-hints.d.ts +1 -2
- package/dist/server/rsc-stream-hints.js +0 -2
- package/dist/server/seed-cache.d.ts +6 -2
- package/dist/server/seed-cache.js +10 -8
- package/dist/server/server-action-not-found.d.ts +1 -2
- package/dist/server/server-action-not-found.js +0 -2
- package/dist/server/server-globals.d.ts +1 -2
- package/dist/server/server-globals.js +0 -2
- package/dist/server/skip-cache-proof.d.ts +1 -2
- package/dist/server/skip-cache-proof.js +0 -2
- package/dist/server/socket-error-backstop.d.ts +19 -2
- package/dist/server/socket-error-backstop.js +77 -6
- package/dist/server/static-file-cache.d.ts +1 -2
- package/dist/server/static-file-cache.js +0 -2
- package/dist/server/static-layout-client-reuse-proof.d.ts +1 -2
- package/dist/server/static-layout-client-reuse-proof.js +0 -2
- package/dist/server/streaming-metadata.d.ts +1 -2
- package/dist/server/streaming-metadata.js +0 -2
- package/dist/server/worker-utils.d.ts +1 -2
- package/dist/server/worker-utils.js +3 -6
- package/dist/shims/amp.d.ts +1 -2
- package/dist/shims/amp.js +0 -2
- package/dist/shims/app-router-scroll-state.d.ts +1 -2
- package/dist/shims/app-router-scroll-state.js +0 -2
- package/dist/shims/app-router-scroll.d.ts +3 -5
- package/dist/shims/app-router-scroll.js +22 -6
- package/dist/shims/app.d.ts +1 -2
- package/dist/shims/app.js +0 -2
- package/dist/shims/before-interactive-context.d.ts +1 -2
- package/dist/shims/before-interactive-context.js +0 -2
- package/dist/shims/cache-for-request.d.ts +1 -2
- package/dist/shims/cache-for-request.js +0 -2
- package/dist/shims/cache-runtime.d.ts +20 -5
- package/dist/shims/cache-runtime.js +66 -31
- package/dist/shims/cache.d.ts +48 -7
- package/dist/shims/cache.js +79 -20
- package/dist/shims/cdn-cache.d.ts +125 -0
- package/dist/shims/cdn-cache.js +100 -0
- package/dist/shims/client-hook-error.d.ts +1 -2
- package/dist/shims/client-hook-error.js +0 -2
- package/dist/shims/client-locale.d.ts +1 -2
- package/dist/shims/client-locale.js +1 -3
- package/dist/shims/compat-router.d.ts +1 -2
- package/dist/shims/compat-router.js +0 -2
- package/dist/shims/config.d.ts +1 -2
- package/dist/shims/config.js +0 -2
- package/dist/shims/constants.d.ts +1 -2
- package/dist/shims/constants.js +0 -2
- package/dist/shims/default-global-error.d.ts +3 -4
- package/dist/shims/default-global-error.js +0 -2
- package/dist/shims/default-not-found.d.ts +1 -2
- package/dist/shims/default-not-found.js +0 -2
- package/dist/shims/document.d.ts +5 -7
- package/dist/shims/document.js +0 -2
- package/dist/shims/dynamic.d.ts +1 -2
- package/dist/shims/dynamic.js +0 -2
- package/dist/shims/error-boundary.d.ts +32 -18
- package/dist/shims/error-boundary.js +43 -3
- package/dist/shims/error.d.ts +1 -2
- package/dist/shims/error.js +0 -2
- package/dist/shims/fetch-cache.d.ts +14 -2
- package/dist/shims/fetch-cache.js +20 -5
- package/dist/shims/font-google-base.d.ts +1 -2
- package/dist/shims/font-google-base.js +1 -13
- package/dist/shims/font-local.d.ts +1 -2
- package/dist/shims/font-local.js +1 -15
- package/dist/shims/font-utils.d.ts +7 -2
- package/dist/shims/font-utils.js +13 -3
- package/dist/shims/form.d.ts +12 -5
- package/dist/shims/form.js +98 -21
- package/dist/shims/hash-scroll.d.ts +2 -2
- package/dist/shims/hash-scroll.js +3 -3
- package/dist/shims/head-state.d.ts +1 -2
- package/dist/shims/head-state.js +0 -2
- package/dist/shims/head.d.ts +1 -2
- package/dist/shims/head.js +0 -2
- package/dist/shims/headers.d.ts +9 -2
- package/dist/shims/headers.js +13 -3
- package/dist/shims/i18n-context.d.ts +1 -2
- package/dist/shims/i18n-context.js +0 -2
- package/dist/shims/i18n-state.d.ts +1 -2
- package/dist/shims/i18n-state.js +0 -2
- package/dist/shims/image-config.d.ts +1 -2
- package/dist/shims/image-config.js +0 -2
- package/dist/shims/image.d.ts +1 -2
- package/dist/shims/image.js +1 -3
- package/dist/shims/internal/als-registry.d.ts +1 -2
- package/dist/shims/internal/als-registry.js +0 -2
- package/dist/shims/internal/api-utils.d.ts +1 -2
- package/dist/shims/internal/app-route-detection.d.ts +1 -2
- package/dist/shims/internal/app-route-detection.js +0 -2
- package/dist/shims/internal/app-router-context.d.ts +1 -2
- package/dist/shims/internal/app-router-context.js +0 -2
- package/dist/shims/internal/cookie-serialize.d.ts +1 -2
- package/dist/shims/internal/cookie-serialize.js +0 -2
- package/dist/shims/internal/link-status-registry.d.ts +43 -0
- package/dist/shims/internal/link-status-registry.js +42 -0
- package/dist/shims/internal/make-hanging-promise.d.ts +1 -2
- package/dist/shims/internal/make-hanging-promise.js +0 -2
- package/dist/shims/internal/pages-data-fetch-dedup.d.ts +1 -2
- package/dist/shims/internal/pages-data-fetch-dedup.js +0 -2
- package/dist/shims/internal/pages-data-target.d.ts +1 -2
- package/dist/shims/internal/pages-data-target.js +0 -2
- package/dist/shims/internal/pages-data-url.d.ts +1 -2
- package/dist/shims/internal/pages-data-url.js +0 -2
- package/dist/shims/internal/parse-cookie-header.d.ts +1 -2
- package/dist/shims/internal/parse-cookie-header.js +0 -2
- package/dist/shims/internal/route-pattern-for-warning.d.ts +27 -0
- package/dist/shims/internal/route-pattern-for-warning.js +40 -0
- package/dist/shims/internal/router-context.d.ts +2 -4
- package/dist/shims/internal/router-context.js +0 -2
- package/dist/shims/internal/utils.d.ts +2 -2
- package/dist/shims/internal/utils.js +0 -2
- package/dist/shims/internal/work-unit-async-storage.d.ts +1 -2
- package/dist/shims/internal/work-unit-async-storage.js +0 -2
- package/dist/shims/layout-segment-context.d.ts +2 -4
- package/dist/shims/layout-segment-context.js +0 -2
- package/dist/shims/legacy-image.d.ts +1 -2
- package/dist/shims/legacy-image.js +0 -2
- package/dist/shims/link-prefetch.d.ts +1 -2
- package/dist/shims/link-prefetch.js +0 -2
- package/dist/shims/link.d.ts +2 -2
- package/dist/shims/link.js +40 -20
- package/dist/shims/metadata.d.ts +4 -5
- package/dist/shims/metadata.js +1 -3
- package/dist/shims/navigation-state.d.ts +1 -2
- package/dist/shims/navigation-state.js +0 -2
- package/dist/shims/navigation.d.ts +25 -9
- package/dist/shims/navigation.js +251 -46
- package/dist/shims/navigation.react-server.d.ts +1 -2
- package/dist/shims/navigation.react-server.js +0 -2
- package/dist/shims/offline.d.ts +1 -2
- package/dist/shims/offline.js +0 -2
- package/dist/shims/og.d.ts +1 -2
- package/dist/shims/og.js +2 -4
- package/dist/shims/pages-router-runtime.d.ts +7 -2
- package/dist/shims/pages-router-runtime.js +11 -3
- package/dist/shims/ppr-fallback-shell.d.ts +29 -0
- package/dist/shims/ppr-fallback-shell.js +149 -0
- package/dist/shims/readonly-url-search-params.d.ts +1 -2
- package/dist/shims/readonly-url-search-params.js +0 -2
- package/dist/shims/request-context.d.ts +9 -5
- package/dist/shims/request-context.js +0 -2
- package/dist/shims/request-state-types.d.ts +1 -1
- package/dist/shims/root-params.d.ts +1 -2
- package/dist/shims/root-params.js +0 -2
- package/dist/shims/router-state.d.ts +2 -2
- package/dist/shims/router-state.js +2 -2
- package/dist/shims/router.d.ts +6 -4
- package/dist/shims/router.js +262 -40
- package/dist/shims/script-nonce-context.d.ts +1 -2
- package/dist/shims/script-nonce-context.js +0 -2
- package/dist/shims/script.d.ts +1 -2
- package/dist/shims/script.js +0 -2
- package/dist/shims/server.d.ts +1 -2
- package/dist/shims/server.js +0 -2
- package/dist/shims/slot.d.ts +11 -4
- package/dist/shims/slot.js +121 -9
- package/dist/shims/thenable-params.d.ts +2 -2
- package/dist/shims/thenable-params.js +107 -12
- package/dist/shims/unified-request-context.d.ts +1 -2
- package/dist/shims/unified-request-context.js +0 -2
- package/dist/shims/unrecognized-action-error.d.ts +1 -2
- package/dist/shims/unrecognized-action-error.js +0 -2
- package/dist/shims/url-safety.d.ts +1 -2
- package/dist/shims/url-safety.js +0 -2
- package/dist/shims/url-utils.d.ts +1 -2
- package/dist/shims/url-utils.js +0 -2
- package/dist/shims/use-merged-ref.d.ts +1 -2
- package/dist/shims/use-merged-ref.js +0 -2
- package/dist/shims/web-vitals.d.ts +1 -2
- package/dist/shims/web-vitals.js +0 -2
- package/dist/typegen.d.ts +1 -2
- package/dist/typegen.js +2 -9
- package/dist/utils/asset-prefix.d.ts +1 -2
- package/dist/utils/asset-prefix.js +0 -2
- package/dist/utils/base-path.d.ts +1 -2
- package/dist/utils/base-path.js +0 -2
- package/dist/utils/cache-control-metadata.d.ts +1 -4
- package/dist/utils/cache-control-metadata.js +1 -3
- package/dist/utils/client-build-manifest.d.ts +8 -2
- package/dist/utils/client-build-manifest.js +30 -7
- package/dist/utils/client-entry-manifest.d.ts +11 -0
- package/dist/utils/client-entry-manifest.js +29 -0
- package/dist/utils/compare.d.ts +4 -0
- package/dist/utils/compare.js +8 -0
- package/dist/utils/dev-error-recovery-event.d.ts +4 -0
- package/dist/utils/dev-error-recovery-event.js +4 -0
- package/dist/utils/domain-locale.d.ts +1 -2
- package/dist/utils/domain-locale.js +2 -4
- package/dist/utils/encode-cache-tag.d.ts +1 -2
- package/dist/utils/encode-cache-tag.js +0 -2
- package/dist/utils/error-cause.d.ts +1 -2
- package/dist/utils/error-cause.js +0 -2
- package/dist/utils/hash.d.ts +1 -2
- package/dist/utils/hash.js +0 -2
- package/dist/utils/html-limited-bots.d.ts +1 -2
- package/dist/utils/html-limited-bots.js +0 -2
- package/dist/utils/lazy-chunks.d.ts +1 -2
- package/dist/utils/lazy-chunks.js +0 -2
- package/dist/utils/manifest-paths.d.ts +8 -3
- package/dist/utils/manifest-paths.js +15 -3
- package/dist/utils/mdx-scan.d.ts +1 -2
- package/dist/utils/mdx-scan.js +0 -2
- package/dist/utils/navigation-signal.d.ts +1 -2
- package/dist/utils/navigation-signal.js +0 -2
- package/dist/utils/number.d.ts +4 -0
- package/dist/utils/number.js +6 -0
- package/dist/utils/path.d.ts +4 -2
- package/dist/utils/path.js +5 -3
- package/dist/utils/prerender-output-paths.d.ts +1 -2
- package/dist/utils/prerender-output-paths.js +0 -2
- package/dist/utils/project.d.ts +1 -2
- package/dist/utils/project.js +0 -2
- package/dist/utils/promise.d.ts +4 -0
- package/dist/utils/promise.js +6 -0
- package/dist/utils/public-routes.d.ts +1 -2
- package/dist/utils/public-routes.js +0 -2
- package/dist/utils/query.d.ts +1 -2
- package/dist/utils/query.js +0 -2
- package/dist/utils/record.d.ts +1 -2
- package/dist/utils/record.js +0 -2
- package/dist/utils/regex.d.ts +4 -0
- package/dist/utils/regex.js +6 -0
- package/dist/utils/safe-json-file.d.ts +1 -2
- package/dist/utils/safe-json-file.js +0 -2
- package/dist/utils/sorted-array.d.ts +1 -2
- package/dist/utils/sorted-array.js +0 -2
- package/dist/utils/text-stream.d.ts +1 -2
- package/dist/utils/text-stream.js +0 -2
- package/dist/utils/vinext-root.d.ts +1 -2
- package/dist/utils/vinext-root.js +0 -2
- package/dist/utils/vite-version.d.ts +1 -2
- package/dist/utils/vite-version.js +0 -2
- package/package.json +23 -6
- package/dist/build/clean-output.js.map +0 -1
- package/dist/build/client-build-config.js.map +0 -1
- package/dist/build/google-fonts/build-url.js.map +0 -1
- package/dist/build/google-fonts/fallback-metrics-data.js.map +0 -1
- package/dist/build/google-fonts/fallback-metrics.js.map +0 -1
- package/dist/build/google-fonts/font-data.js.map +0 -1
- package/dist/build/google-fonts/font-metadata.js.map +0 -1
- package/dist/build/google-fonts/get-axes.js.map +0 -1
- package/dist/build/google-fonts/sort-variants.js.map +0 -1
- package/dist/build/google-fonts/validate.js.map +0 -1
- package/dist/build/inline-css.js.map +0 -1
- package/dist/build/layout-classification.js.map +0 -1
- package/dist/build/nitro-route-rules.js.map +0 -1
- package/dist/build/precompress.js.map +0 -1
- package/dist/build/prerender.js.map +0 -1
- package/dist/build/report.js.map +0 -1
- package/dist/build/route-classification-injector.js.map +0 -1
- package/dist/build/route-classification-manifest.js.map +0 -1
- package/dist/build/run-prerender.js.map +0 -1
- package/dist/build/server-manifest.js.map +0 -1
- package/dist/build/ssr-manifest.js.map +0 -1
- package/dist/build/standalone.js.map +0 -1
- package/dist/build/static-export.js.map +0 -1
- package/dist/check.js.map +0 -1
- package/dist/cli-args.js.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/client/instrumentation-client-inject.js.map +0 -1
- package/dist/client/instrumentation-client-state.js.map +0 -1
- package/dist/client/instrumentation-client.js.map +0 -1
- package/dist/client/navigation-runtime.js.map +0 -1
- package/dist/client/pages-router-link-navigation.js.map +0 -1
- package/dist/client/validate-module-path.js.map +0 -1
- package/dist/client/vinext-next-data.js.map +0 -1
- package/dist/client/window-next.js.map +0 -1
- package/dist/cloudflare/kv-cache-handler.js.map +0 -1
- package/dist/cloudflare/tpr.js.map +0 -1
- package/dist/config/config-matchers.js.map +0 -1
- package/dist/config/dotenv.js.map +0 -1
- package/dist/config/next-config.js.map +0 -1
- package/dist/config/tsconfig-paths.js.map +0 -1
- package/dist/deploy.js.map +0 -1
- package/dist/entries/app-browser-entry.js.map +0 -1
- package/dist/entries/app-rsc-entry.js.map +0 -1
- package/dist/entries/app-rsc-manifest.js.map +0 -1
- package/dist/entries/app-ssr-entry.js.map +0 -1
- package/dist/entries/pages-client-entry.js.map +0 -1
- package/dist/entries/pages-entry-helpers.js.map +0 -1
- package/dist/entries/pages-server-entry.js.map +0 -1
- package/dist/entries/runtime-entry-module.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/init.js.map +0 -1
- package/dist/plugins/async-hooks-stub.js.map +0 -1
- package/dist/plugins/client-reference-dedup.js.map +0 -1
- package/dist/plugins/css-data-url.js.map +0 -1
- package/dist/plugins/fonts.js.map +0 -1
- package/dist/plugins/import-meta-url.js.map +0 -1
- package/dist/plugins/instrumentation-client.js.map +0 -1
- package/dist/plugins/middleware-server-only.js.map +0 -1
- package/dist/plugins/og-assets.js.map +0 -1
- package/dist/plugins/optimize-imports.js.map +0 -1
- package/dist/plugins/postcss.js.map +0 -1
- package/dist/plugins/remove-console.js.map +0 -1
- package/dist/plugins/rsc-client-reference-loaders.js.map +0 -1
- package/dist/plugins/rsc-client-shim-excludes.js.map +0 -1
- package/dist/plugins/sass.js.map +0 -1
- package/dist/plugins/server-externals-manifest.js.map +0 -1
- package/dist/plugins/strip-server-exports.js.map +0 -1
- package/dist/routing/app-route-graph.js.map +0 -1
- package/dist/routing/app-router.js.map +0 -1
- package/dist/routing/file-matcher.js.map +0 -1
- package/dist/routing/pages-router.js.map +0 -1
- package/dist/routing/route-matching.js.map +0 -1
- package/dist/routing/route-pattern.js.map +0 -1
- package/dist/routing/route-trie.js.map +0 -1
- package/dist/routing/route-validation.js.map +0 -1
- package/dist/routing/utils.js.map +0 -1
- package/dist/server/api-handler.js.map +0 -1
- package/dist/server/app-browser-action-result.js.map +0 -1
- package/dist/server/app-browser-entry.js.map +0 -1
- package/dist/server/app-browser-error.js.map +0 -1
- package/dist/server/app-browser-hydration.js.map +0 -1
- package/dist/server/app-browser-interception-context.js.map +0 -1
- package/dist/server/app-browser-mpa-navigation.js.map +0 -1
- package/dist/server/app-browser-navigation-controller.js.map +0 -1
- package/dist/server/app-browser-popstate.js.map +0 -1
- package/dist/server/app-browser-rsc-redirect.js.map +0 -1
- package/dist/server/app-browser-state.js.map +0 -1
- package/dist/server/app-browser-stream.js.map +0 -1
- package/dist/server/app-browser-visible-commit.js.map +0 -1
- package/dist/server/app-client-reference-preloader.js.map +0 -1
- package/dist/server/app-elements-wire.js.map +0 -1
- package/dist/server/app-elements.js.map +0 -1
- package/dist/server/app-fallback-renderer.js.map +0 -1
- package/dist/server/app-history-state.js.map +0 -1
- package/dist/server/app-hook-warning-suppression.js.map +0 -1
- package/dist/server/app-inline-css-client.js.map +0 -1
- package/dist/server/app-interception-context-header.js.map +0 -1
- package/dist/server/app-layout-param-observation.js.map +0 -1
- package/dist/server/app-middleware.js.map +0 -1
- package/dist/server/app-mounted-slots-header.js.map +0 -1
- package/dist/server/app-optimistic-routing.js.map +0 -1
- package/dist/server/app-page-boundary-render.js.map +0 -1
- package/dist/server/app-page-boundary.js.map +0 -1
- package/dist/server/app-page-cache.js.map +0 -1
- package/dist/server/app-page-dispatch.js.map +0 -1
- package/dist/server/app-page-element-builder.js.map +0 -1
- package/dist/server/app-page-execution.js.map +0 -1
- package/dist/server/app-page-head.js.map +0 -1
- package/dist/server/app-page-method.js.map +0 -1
- package/dist/server/app-page-params.js.map +0 -1
- package/dist/server/app-page-probe.js.map +0 -1
- package/dist/server/app-page-render-identity.js.map +0 -1
- package/dist/server/app-page-render-observation.js.map +0 -1
- package/dist/server/app-page-render.js.map +0 -1
- package/dist/server/app-page-request.js.map +0 -1
- package/dist/server/app-page-response.js.map +0 -1
- package/dist/server/app-page-route-wiring.js.map +0 -1
- package/dist/server/app-page-segment-state.js.map +0 -1
- package/dist/server/app-page-stream.js.map +0 -1
- package/dist/server/app-post-middleware-context.js.map +0 -1
- package/dist/server/app-prerender-endpoints.js.map +0 -1
- package/dist/server/app-prerender-static-params.js.map +0 -1
- package/dist/server/app-render-dependency.js.map +0 -1
- package/dist/server/app-request-context.js.map +0 -1
- package/dist/server/app-route-handler-cache.js.map +0 -1
- package/dist/server/app-route-handler-dispatch.js.map +0 -1
- package/dist/server/app-route-handler-execution.js.map +0 -1
- package/dist/server/app-route-handler-policy.js.map +0 -1
- package/dist/server/app-route-handler-response.js.map +0 -1
- package/dist/server/app-route-handler-runtime.js.map +0 -1
- package/dist/server/app-router-entry.js.map +0 -1
- package/dist/server/app-rsc-cache-busting.js.map +0 -1
- package/dist/server/app-rsc-embedded-chunks.js.map +0 -1
- package/dist/server/app-rsc-error-handler.js.map +0 -1
- package/dist/server/app-rsc-errors.js.map +0 -1
- package/dist/server/app-rsc-handler.js.map +0 -1
- package/dist/server/app-rsc-render-mode.js.map +0 -1
- package/dist/server/app-rsc-request-normalization.js.map +0 -1
- package/dist/server/app-rsc-response-finalizer.js.map +0 -1
- package/dist/server/app-rsc-route-matching.js.map +0 -1
- package/dist/server/app-segment-config.js.map +0 -1
- package/dist/server/app-server-action-execution.js.map +0 -1
- package/dist/server/app-ssr-entry.js.map +0 -1
- package/dist/server/app-ssr-error-meta.js.map +0 -1
- package/dist/server/app-ssr-stream.js.map +0 -1
- package/dist/server/app-static-generation.js.map +0 -1
- package/dist/server/artifact-compatibility.js.map +0 -1
- package/dist/server/cache-control.js.map +0 -1
- package/dist/server/cache-headers.js.map +0 -1
- package/dist/server/cache-proof.js.map +0 -1
- package/dist/server/client-reuse-manifest.js.map +0 -1
- package/dist/server/client-trace-metadata.js.map +0 -1
- package/dist/server/cookie-utils.js.map +0 -1
- package/dist/server/csp.js.map +0 -1
- package/dist/server/default-global-error-module.js.map +0 -1
- package/dist/server/default-not-found-module.js.map +0 -1
- package/dist/server/dev-error-overlay-store.js.map +0 -1
- package/dist/server/dev-error-overlay.js.map +0 -1
- package/dist/server/dev-lockfile.js.map +0 -1
- package/dist/server/dev-module-runner.js.map +0 -1
- package/dist/server/dev-origin-check.js.map +0 -1
- package/dist/server/dev-route-files.js.map +0 -1
- package/dist/server/dev-server.js.map +0 -1
- package/dist/server/document-initial-head.js.map +0 -1
- package/dist/server/edge-api-runtime.js.map +0 -1
- package/dist/server/file-based-metadata.js.map +0 -1
- package/dist/server/headers.js.map +0 -1
- package/dist/server/html.js.map +0 -1
- package/dist/server/http-error-responses.js.map +0 -1
- package/dist/server/image-optimization.js.map +0 -1
- package/dist/server/implicit-tags.js.map +0 -1
- package/dist/server/instrumentation-runtime.js.map +0 -1
- package/dist/server/instrumentation.js.map +0 -1
- package/dist/server/isr-cache.js.map +0 -1
- package/dist/server/metadata-route-build-data.js.map +0 -1
- package/dist/server/metadata-route-response.js.map +0 -1
- package/dist/server/metadata-routes.js.map +0 -1
- package/dist/server/middleware-matcher.js.map +0 -1
- package/dist/server/middleware-request-headers.js.map +0 -1
- package/dist/server/middleware-response-headers.js.map +0 -1
- package/dist/server/middleware-runtime.js.map +0 -1
- package/dist/server/middleware.js.map +0 -1
- package/dist/server/navigation-planner.js.map +0 -1
- package/dist/server/navigation-trace.js.map +0 -1
- package/dist/server/next-error-digest.js.map +0 -1
- package/dist/server/normalize-path.js.map +0 -1
- package/dist/server/pages-api-route.js.map +0 -1
- package/dist/server/pages-body-parser-config.js.map +0 -1
- package/dist/server/pages-data-route.js.map +0 -1
- package/dist/server/pages-default-404.js.map +0 -1
- package/dist/server/pages-document-initial-props.js.map +0 -1
- package/dist/server/pages-i18n.js.map +0 -1
- package/dist/server/pages-media-type.js.map +0 -1
- package/dist/server/pages-node-compat.js.map +0 -1
- package/dist/server/pages-page-data.js.map +0 -1
- package/dist/server/pages-page-method.js.map +0 -1
- package/dist/server/pages-page-response.js.map +0 -1
- package/dist/server/pages-serializable-props.js.map +0 -1
- package/dist/server/prerender-route-params.js.map +0 -1
- package/dist/server/prerender-work-unit-setup.js.map +0 -1
- package/dist/server/prod-server.js.map +0 -1
- package/dist/server/proxy-trust.js.map +0 -1
- package/dist/server/request-log.js.map +0 -1
- package/dist/server/request-pipeline.js.map +0 -1
- package/dist/server/rsc-stream-hints.js.map +0 -1
- package/dist/server/seed-cache.js.map +0 -1
- package/dist/server/server-action-not-found.js.map +0 -1
- package/dist/server/server-globals.js.map +0 -1
- package/dist/server/skip-cache-proof.js.map +0 -1
- package/dist/server/socket-error-backstop.js.map +0 -1
- package/dist/server/static-file-cache.js.map +0 -1
- package/dist/server/static-layout-client-reuse-proof.js.map +0 -1
- package/dist/server/streaming-metadata.js.map +0 -1
- package/dist/server/worker-utils.js.map +0 -1
- package/dist/shims/amp.js.map +0 -1
- package/dist/shims/app-router-scroll-state.js.map +0 -1
- package/dist/shims/app-router-scroll.js.map +0 -1
- package/dist/shims/app.js.map +0 -1
- package/dist/shims/before-interactive-context.js.map +0 -1
- package/dist/shims/cache-for-request.js.map +0 -1
- package/dist/shims/cache-runtime.js.map +0 -1
- package/dist/shims/cache.js.map +0 -1
- package/dist/shims/client-hook-error.js.map +0 -1
- package/dist/shims/client-locale.js.map +0 -1
- package/dist/shims/compat-router.js.map +0 -1
- package/dist/shims/config.js.map +0 -1
- package/dist/shims/constants.js.map +0 -1
- package/dist/shims/default-global-error.js.map +0 -1
- package/dist/shims/default-not-found.js.map +0 -1
- package/dist/shims/document.js.map +0 -1
- package/dist/shims/dynamic.js.map +0 -1
- package/dist/shims/error-boundary.js.map +0 -1
- package/dist/shims/error.js.map +0 -1
- package/dist/shims/fetch-cache.js.map +0 -1
- package/dist/shims/font-google-base.js.map +0 -1
- package/dist/shims/font-local.js.map +0 -1
- package/dist/shims/font-utils.js.map +0 -1
- package/dist/shims/form.js.map +0 -1
- package/dist/shims/hash-scroll.js.map +0 -1
- package/dist/shims/head-state.js.map +0 -1
- package/dist/shims/head.js.map +0 -1
- package/dist/shims/headers.js.map +0 -1
- package/dist/shims/i18n-context.js.map +0 -1
- package/dist/shims/i18n-state.js.map +0 -1
- package/dist/shims/image-config.js.map +0 -1
- package/dist/shims/image.js.map +0 -1
- package/dist/shims/internal/als-registry.js.map +0 -1
- package/dist/shims/internal/app-route-detection.js.map +0 -1
- package/dist/shims/internal/app-router-context.js.map +0 -1
- package/dist/shims/internal/cookie-serialize.js.map +0 -1
- package/dist/shims/internal/make-hanging-promise.js.map +0 -1
- package/dist/shims/internal/pages-data-fetch-dedup.js.map +0 -1
- package/dist/shims/internal/pages-data-target.js.map +0 -1
- package/dist/shims/internal/pages-data-url.js.map +0 -1
- package/dist/shims/internal/parse-cookie-header.js.map +0 -1
- package/dist/shims/internal/router-context.js.map +0 -1
- package/dist/shims/internal/utils.js.map +0 -1
- package/dist/shims/internal/work-unit-async-storage.js.map +0 -1
- package/dist/shims/layout-segment-context.js.map +0 -1
- package/dist/shims/legacy-image.js.map +0 -1
- package/dist/shims/link-prefetch.js.map +0 -1
- package/dist/shims/link.js.map +0 -1
- package/dist/shims/metadata.js.map +0 -1
- package/dist/shims/navigation-state.js.map +0 -1
- package/dist/shims/navigation.js.map +0 -1
- package/dist/shims/navigation.react-server.js.map +0 -1
- package/dist/shims/offline.js.map +0 -1
- package/dist/shims/og.js.map +0 -1
- package/dist/shims/pages-router-runtime.js.map +0 -1
- package/dist/shims/readonly-url-search-params.js.map +0 -1
- package/dist/shims/request-context.js.map +0 -1
- package/dist/shims/root-params.js.map +0 -1
- package/dist/shims/router-state.js.map +0 -1
- package/dist/shims/router.js.map +0 -1
- package/dist/shims/script-nonce-context.js.map +0 -1
- package/dist/shims/script.js.map +0 -1
- package/dist/shims/server.js.map +0 -1
- package/dist/shims/slot.js.map +0 -1
- package/dist/shims/thenable-params.js.map +0 -1
- package/dist/shims/unified-request-context.js.map +0 -1
- package/dist/shims/unrecognized-action-error.js.map +0 -1
- package/dist/shims/url-safety.js.map +0 -1
- package/dist/shims/url-utils.js.map +0 -1
- package/dist/shims/use-merged-ref.js.map +0 -1
- package/dist/shims/web-vitals.js.map +0 -1
- package/dist/typegen.js.map +0 -1
- package/dist/utils/asset-prefix.js.map +0 -1
- package/dist/utils/base-path.js.map +0 -1
- package/dist/utils/cache-control-metadata.js.map +0 -1
- package/dist/utils/client-build-manifest.js.map +0 -1
- package/dist/utils/domain-locale.js.map +0 -1
- package/dist/utils/encode-cache-tag.js.map +0 -1
- package/dist/utils/error-cause.js.map +0 -1
- package/dist/utils/hash.js.map +0 -1
- package/dist/utils/html-limited-bots.js.map +0 -1
- package/dist/utils/lazy-chunks.js.map +0 -1
- package/dist/utils/manifest-paths.js.map +0 -1
- package/dist/utils/mdx-scan.js.map +0 -1
- package/dist/utils/navigation-signal.js.map +0 -1
- package/dist/utils/path.js.map +0 -1
- package/dist/utils/prerender-output-paths.js.map +0 -1
- package/dist/utils/project.js.map +0 -1
- package/dist/utils/public-routes.js.map +0 -1
- package/dist/utils/query.js.map +0 -1
- package/dist/utils/record.js.map +0 -1
- package/dist/utils/safe-json-file.js.map +0 -1
- package/dist/utils/sorted-array.js.map +0 -1
- package/dist/utils/text-stream.js.map +0 -1
- package/dist/utils/vinext-root.js.map +0 -1
- package/dist/utils/vite-version.js.map +0 -1
|
@@ -162,5 +162,4 @@ type WindowNext = {
|
|
|
162
162
|
*/
|
|
163
163
|
declare function installWindowNext(fields: Partial<WindowNext>): void;
|
|
164
164
|
//#endregion
|
|
165
|
-
export { PagesRouterPublicInstance, installWindowNext };
|
|
166
|
-
//# sourceMappingURL=window-next.d.ts.map
|
|
165
|
+
export { PagesRouterPublicInstance, installWindowNext };
|
package/dist/cloudflare/index.js
CHANGED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { getRequestExecutionContext } from "../../../shims/request-context.js";
|
|
2
|
+
//#region ../cloudflare/src/cache/cdn-adapter.runtime.ts
|
|
3
|
+
function getWorkersCache() {
|
|
4
|
+
const cache = getRequestExecutionContext()?.cache;
|
|
5
|
+
if (cache && typeof cache.purge === "function") return cache;
|
|
6
|
+
return null;
|
|
7
|
+
}
|
|
8
|
+
/** Non-cacheable responses: nobody (edge or browser) stores them. */
|
|
9
|
+
const NO_STORE = "no-store";
|
|
10
|
+
/**
|
|
11
|
+
* Browser-facing policy for cacheable responses. `public` allows shared caches
|
|
12
|
+
* to participate, but `max-age=0, must-revalidate` forces every reuse to
|
|
13
|
+
* revalidate (against the edge) rather than serving a stored copy — so the user
|
|
14
|
+
* always sees edge-fresh content while still permitting conditional 304s.
|
|
15
|
+
*/
|
|
16
|
+
const BROWSER_REVALIDATE = "public, max-age=0, must-revalidate";
|
|
17
|
+
/**
|
|
18
|
+
* A concrete stale window (1 year) substituted for a value-less
|
|
19
|
+
* `stale-while-revalidate`. The framework emits a bare `stale-while-revalidate`
|
|
20
|
+
* (no `=seconds`) to mean an unbounded stale window — a Vercel CDN extension.
|
|
21
|
+
* Cloudflare follows RFC 5861, which requires `stale-while-revalidate=<seconds>`,
|
|
22
|
+
* and treats the value-less form as a zero-width window (no stale serving →
|
|
23
|
+
* hard expiry at `max-age`, so the next request is a MISS instead of UPDATING).
|
|
24
|
+
* Stamping a large finite value preserves the "serve stale ~indefinitely while
|
|
25
|
+
* revalidating" intent in a form the edge honors.
|
|
26
|
+
*/
|
|
27
|
+
const UNBOUNDED_SWR_SECONDS = 31536e3;
|
|
28
|
+
/**
|
|
29
|
+
* Convert the framework's shared-cache policy into a CDN-scoped one:
|
|
30
|
+
* `s-maxage=…` → `max-age=…` (the edge honors `max-age` inside
|
|
31
|
+
* `CDN-Cache-Control`), give a value-less `stale-while-revalidate` an explicit
|
|
32
|
+
* seconds value (Cloudflare ignores the bare directive), and ensure a leading
|
|
33
|
+
* `public`.
|
|
34
|
+
*/
|
|
35
|
+
function toEdgeCacheControl(cacheControl) {
|
|
36
|
+
const withMaxAge = cacheControl.replace(/\bs-maxage=/g, "max-age=").replace(/\bstale-while-revalidate\b(?!=)/g, `stale-while-revalidate=${UNBOUNDED_SWR_SECONDS}`);
|
|
37
|
+
return /\bpublic\b/.test(withMaxAge) ? withMaxAge : `public, ${withMaxAge}`;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Cloudflare's `Cache-Tag` header budget is 16 KB total with each tag capped at
|
|
41
|
+
* 1024 bytes. Keep a conservative ceiling so a page with a large tag set never
|
|
42
|
+
* produces an oversized (silently-dropped) header.
|
|
43
|
+
*/
|
|
44
|
+
const MAX_CACHE_TAG_BYTES = 8 * 1024;
|
|
45
|
+
const MAX_SINGLE_TAG_BYTES = 1024;
|
|
46
|
+
/**
|
|
47
|
+
* Build a `Cache-Tag` header value from canonicalised tags. Tags containing a
|
|
48
|
+
* comma (the header separator) or exceeding the per-tag size are skipped, and
|
|
49
|
+
* the whole value is bounded to stay within Cloudflare's limit.
|
|
50
|
+
*/
|
|
51
|
+
function formatCacheTag(tags) {
|
|
52
|
+
const parts = [];
|
|
53
|
+
let total = 0;
|
|
54
|
+
for (const tag of tags) {
|
|
55
|
+
if (!tag || tag.includes(",") || tag.length > MAX_SINGLE_TAG_BYTES) continue;
|
|
56
|
+
const next = total + tag.length + (parts.length > 0 ? 1 : 0);
|
|
57
|
+
if (next > MAX_CACHE_TAG_BYTES) break;
|
|
58
|
+
parts.push(tag);
|
|
59
|
+
total = next;
|
|
60
|
+
}
|
|
61
|
+
return parts.length > 0 ? parts.join(",") : null;
|
|
62
|
+
}
|
|
63
|
+
var CloudflareCdnCacheAdapter = class {
|
|
64
|
+
ownsBackgroundRevalidation = false;
|
|
65
|
+
/**
|
|
66
|
+
* The origin keeps no page store — return null so the request renders fresh.
|
|
67
|
+
* The edge serves cached HIT/STALE responses without reaching the origin.
|
|
68
|
+
*/
|
|
69
|
+
async get() {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
/** No-op: the platform caches the response via its headers, not an origin store. */
|
|
73
|
+
async set(_key, _data, _ctx) {}
|
|
74
|
+
buildResponseHeaders(input) {
|
|
75
|
+
if (!input.cacheControl) return { "Cache-Control": NO_STORE };
|
|
76
|
+
if (/\b(?:no-store|no-cache|private)\b/.test(input.cacheControl)) return { "Cache-Control": input.cacheControl };
|
|
77
|
+
const headers = {
|
|
78
|
+
"Cache-Control": BROWSER_REVALIDATE,
|
|
79
|
+
"CDN-Cache-Control": toEdgeCacheControl(input.cacheControl)
|
|
80
|
+
};
|
|
81
|
+
if (input.tags && input.tags.length > 0) {
|
|
82
|
+
const cacheTag = formatCacheTag(input.tags);
|
|
83
|
+
if (cacheTag) headers["Cache-Tag"] = cacheTag;
|
|
84
|
+
}
|
|
85
|
+
return headers;
|
|
86
|
+
}
|
|
87
|
+
/** Purge edge-cached responses by tag via the request context's `cache.purge`. */
|
|
88
|
+
async revalidateTag(tags, _durations) {
|
|
89
|
+
const cache = getWorkersCache();
|
|
90
|
+
if (!cache) return;
|
|
91
|
+
const tagList = (Array.isArray(tags) ? tags : [tags]).filter((t) => typeof t === "string" && t.length > 0);
|
|
92
|
+
if (tagList.length === 0) return;
|
|
93
|
+
await cache.purge({ tags: tagList });
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
//#endregion
|
|
97
|
+
export { CloudflareCdnCacheAdapter };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ExecutionContextLike } from "
|
|
2
|
-
import { CacheHandler, CacheHandlerValue, IncrementalCacheValue } from "
|
|
1
|
+
import { ExecutionContextLike } from "../../../shims/request-context.js";
|
|
2
|
+
import { CacheHandler, CacheHandlerValue, IncrementalCacheValue } from "../../../shims/cache.js";
|
|
3
3
|
|
|
4
|
-
//#region src/
|
|
4
|
+
//#region ../cloudflare/src/cache/kv-data-adapter.runtime.d.ts
|
|
5
5
|
type KVNamespace = {
|
|
6
6
|
get(key: string, options?: {
|
|
7
7
|
type?: string;
|
|
@@ -28,7 +28,27 @@ type KVNamespace = {
|
|
|
28
28
|
}>;
|
|
29
29
|
};
|
|
30
30
|
/** Key prefix for cache entries. */
|
|
31
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Cloudflare KV data cache handler.
|
|
33
|
+
*
|
|
34
|
+
* @deprecated Consumers should not instantiate or register this handler by
|
|
35
|
+
* hand. Configure it declaratively via the `cache.data` option on the
|
|
36
|
+
* `vinext()` plugin, using the {@link kvDataAdapter} builder:
|
|
37
|
+
*
|
|
38
|
+
* ```ts
|
|
39
|
+
* import { vinext } from "vinext";
|
|
40
|
+
* import { kvDataAdapter } from "@vinext/cloudflare/cache/kv-data-adapter";
|
|
41
|
+
*
|
|
42
|
+
* export default defineConfig({
|
|
43
|
+
* plugins: [vinext({ cache: { data: kvDataAdapter({ binding: "VINEXT_KV_CACHE" }) } })],
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* `kvDataAdapter()` is safe to call from `vite.config.ts` — it never touches
|
|
48
|
+
* the Workers runtime — and the plugin defers instantiation of this handler to
|
|
49
|
+
* the first request. This class stays exported for the runtime factory and for
|
|
50
|
+
* backwards compatibility, but is not the recommended consumer API.
|
|
51
|
+
*/
|
|
32
52
|
declare class KVCacheHandler implements CacheHandler {
|
|
33
53
|
private kv;
|
|
34
54
|
private prefix;
|
|
@@ -103,5 +123,4 @@ declare class KVCacheHandler implements CacheHandler {
|
|
|
103
123
|
private _put;
|
|
104
124
|
}
|
|
105
125
|
//#endregion
|
|
106
|
-
export {
|
|
107
|
-
//# sourceMappingURL=kv-cache-handler.d.ts.map
|
|
126
|
+
export { KVCacheHandler };
|
|
@@ -1,36 +1,25 @@
|
|
|
1
|
-
import { getRequestExecutionContext } from "
|
|
2
|
-
import { isUnknownRecord } from "../utils/
|
|
3
|
-
import { readCacheControlNumberField } from "../utils/cache-control-metadata.js";
|
|
1
|
+
import { getRequestExecutionContext } from "../../../shims/request-context.js";
|
|
2
|
+
import { isUnknownRecord, readCacheControlNumberField } from "../utils/cache-control-metadata.js";
|
|
4
3
|
import { Buffer } from "node:buffer";
|
|
5
|
-
//#region src/
|
|
4
|
+
//#region ../cloudflare/src/cache/kv-data-adapter.runtime.ts
|
|
6
5
|
/**
|
|
7
|
-
* Cloudflare KV
|
|
6
|
+
* Cloudflare KV data cache — implementation + runtime factory.
|
|
8
7
|
*
|
|
9
|
-
*
|
|
10
|
-
* storage backend
|
|
11
|
-
*
|
|
8
|
+
* `KVCacheHandler` provides persistent ISR caching on Cloudflare Workers using
|
|
9
|
+
* KV as the storage backend (time-based expiry / stale-while-revalidate and
|
|
10
|
+
* tag-based invalidation). The default export is the adapter factory the
|
|
11
|
+
* generated `virtual:vinext-cache-adapters` registration imports: it reads the
|
|
12
|
+
* KV namespace from `env[binding]` at request time and constructs the handler.
|
|
12
13
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* export default {
|
|
19
|
-
* async fetch(request: Request, env: Env, ctx: ExecutionContext) {
|
|
20
|
-
* setCacheHandler(new KVCacheHandler(env.VINEXT_CACHE));
|
|
21
|
-
* // ctx is propagated automatically via runWithExecutionContext in
|
|
22
|
-
* // the vinext handler — no need to pass it to KVCacheHandler.
|
|
23
|
-
* // ... rest of worker handler
|
|
24
|
-
* }
|
|
25
|
-
* };
|
|
14
|
+
* Configure it from vite.config via the {@link kvDataAdapter} builder in
|
|
15
|
+
* `./kv-data-adapter.ts` (which `require.resolve`s this file). The legacy
|
|
16
|
+
* imperative path (constructing `KVCacheHandler` and calling
|
|
17
|
+
* `setDataCacheHandler` from a worker entry) is deprecated — prefer the
|
|
18
|
+
* `cache.data` plugin option.
|
|
26
19
|
*
|
|
27
20
|
* Wrangler config (wrangler.jsonc):
|
|
28
21
|
*
|
|
29
|
-
* {
|
|
30
|
-
* "kv_namespaces": [
|
|
31
|
-
* { "binding": "VINEXT_CACHE", "id": "<your-kv-namespace-id>" }
|
|
32
|
-
* ]
|
|
33
|
-
* }
|
|
22
|
+
* { "kv_namespaces": [{ "binding": "VINEXT_KV_CACHE", "id": "<your-kv-namespace-id>" }] }
|
|
34
23
|
*/
|
|
35
24
|
/** Key prefix for tag invalidation timestamps. */
|
|
36
25
|
const TAG_PREFIX = "__tag:";
|
|
@@ -78,6 +67,27 @@ function isPathChildOf(path, prefix) {
|
|
|
78
67
|
if (path === prefix) return true;
|
|
79
68
|
return path.startsWith(prefix + "/");
|
|
80
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Cloudflare KV data cache handler.
|
|
72
|
+
*
|
|
73
|
+
* @deprecated Consumers should not instantiate or register this handler by
|
|
74
|
+
* hand. Configure it declaratively via the `cache.data` option on the
|
|
75
|
+
* `vinext()` plugin, using the {@link kvDataAdapter} builder:
|
|
76
|
+
*
|
|
77
|
+
* ```ts
|
|
78
|
+
* import { vinext } from "vinext";
|
|
79
|
+
* import { kvDataAdapter } from "@vinext/cloudflare/cache/kv-data-adapter";
|
|
80
|
+
*
|
|
81
|
+
* export default defineConfig({
|
|
82
|
+
* plugins: [vinext({ cache: { data: kvDataAdapter({ binding: "VINEXT_KV_CACHE" }) } })],
|
|
83
|
+
* });
|
|
84
|
+
* ```
|
|
85
|
+
*
|
|
86
|
+
* `kvDataAdapter()` is safe to call from `vite.config.ts` — it never touches
|
|
87
|
+
* the Workers runtime — and the plugin defers instantiation of this handler to
|
|
88
|
+
* the first request. This class stays exported for the runtime factory and for
|
|
89
|
+
* backwards compatibility, but is not the recommended consumer API.
|
|
90
|
+
*/
|
|
81
91
|
var KVCacheHandler = class {
|
|
82
92
|
kv;
|
|
83
93
|
prefix;
|
|
@@ -423,5 +433,3 @@ function safeBase64ToArrayBuffer(base64) {
|
|
|
423
433
|
}
|
|
424
434
|
//#endregion
|
|
425
435
|
export { ENTRY_PREFIX, KVCacheHandler };
|
|
426
|
-
|
|
427
|
-
//# sourceMappingURL=kv-cache-handler.js.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region ../cloudflare/src/utils/cache-control-metadata.ts
|
|
2
|
+
/**
|
|
3
|
+
* Small internal helpers for reading cache-control metadata off the loosely
|
|
4
|
+
* typed `ctx` object the cache layer passes around. Kept local to this package
|
|
5
|
+
* so the Cloudflare adapters stay self-contained (these mirror the equivalent
|
|
6
|
+
* helpers in the vinext core).
|
|
7
|
+
*/
|
|
8
|
+
function isUnknownRecord(value) {
|
|
9
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
10
|
+
}
|
|
11
|
+
function readRecordField(ctx, field) {
|
|
12
|
+
const value = ctx?.[field];
|
|
13
|
+
return isUnknownRecord(value) ? value : void 0;
|
|
14
|
+
}
|
|
15
|
+
function readCacheControlNumberField(ctx, field) {
|
|
16
|
+
const value = readRecordField(ctx, "cacheControl")?.[field] ?? ctx?.[field];
|
|
17
|
+
return typeof value === "number" ? value : void 0;
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { isUnknownRecord, readCacheControlNumberField };
|
package/dist/cloudflare/tpr.d.ts
CHANGED
|
@@ -45,7 +45,7 @@ type WranglerConfig = {
|
|
|
45
45
|
};
|
|
46
46
|
/**
|
|
47
47
|
* Parse wrangler config (JSONC or TOML) to extract the fields TPR needs:
|
|
48
|
-
* account_id,
|
|
48
|
+
* account_id, VINEXT_KV_CACHE KV namespace ID, and custom domain.
|
|
49
49
|
*/
|
|
50
50
|
declare function parseWranglerConfig(root: string): WranglerConfig | null;
|
|
51
51
|
/**
|
|
@@ -79,5 +79,4 @@ declare function buildTprKVPairs(entries: Map<string, PrerenderResult>, buildId:
|
|
|
79
79
|
*/
|
|
80
80
|
declare function runTPR(options: TPROptions): Promise<TPRResult>;
|
|
81
81
|
//#endregion
|
|
82
|
-
export { TPROptions, TPRResult, buildTprKVPairs, domainCandidates, parseWranglerConfig, runTPR };
|
|
83
|
-
//# sourceMappingURL=tpr.d.ts.map
|
|
82
|
+
export { TPROptions, TPRResult, buildTprKVPairs, domainCandidates, parseWranglerConfig, runTPR };
|
package/dist/cloudflare/tpr.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { VINEXT_REVALIDATE_HEADER } from "../server/headers.js";
|
|
2
2
|
import { isrCacheKey } from "../server/isr-cache.js";
|
|
3
|
-
import {
|
|
3
|
+
import { buildAppPageCacheTags } from "../server/app-page-cache.js";
|
|
4
|
+
import { ENTRY_PREFIX } from "./src/cache/kv-data-adapter.runtime.js";
|
|
4
5
|
import fs from "node:fs";
|
|
5
6
|
import path from "node:path";
|
|
6
7
|
import { spawn } from "node:child_process";
|
|
@@ -28,7 +29,7 @@ import { spawn } from "node:child_process";
|
|
|
28
29
|
*/
|
|
29
30
|
/**
|
|
30
31
|
* Parse wrangler config (JSONC or TOML) to extract the fields TPR needs:
|
|
31
|
-
* account_id,
|
|
32
|
+
* account_id, VINEXT_KV_CACHE KV namespace ID, and custom domain.
|
|
32
33
|
*/
|
|
33
34
|
function parseWranglerConfig(root) {
|
|
34
35
|
for (const filename of ["wrangler.jsonc", "wrangler.json"]) {
|
|
@@ -111,7 +112,7 @@ function extractFromJSON(config) {
|
|
|
111
112
|
const result = {};
|
|
112
113
|
if (typeof config.account_id === "string") result.accountId = config.account_id;
|
|
113
114
|
if (Array.isArray(config.kv_namespaces)) {
|
|
114
|
-
const vinextKV = config.kv_namespaces.find((ns) => ns && typeof ns === "object" && ns.binding === "VINEXT_CACHE");
|
|
115
|
+
const vinextKV = config.kv_namespaces.find((ns) => ns && typeof ns === "object" && (ns.binding === "VINEXT_KV_CACHE" || ns.binding === "VINEXT_CACHE"));
|
|
115
116
|
if (vinextKV && typeof vinextKV.id === "string" && vinextKV.id !== "<your-kv-namespace-id>") result.kvNamespaceId = vinextKV.id;
|
|
116
117
|
}
|
|
117
118
|
const domain = extractDomainFromRoutes(config.routes) ?? extractDomainFromCustomDomains(config);
|
|
@@ -156,7 +157,7 @@ function extractFromTOML(content) {
|
|
|
156
157
|
const block = kvBlocks[i].split(/\[\[/)[0];
|
|
157
158
|
const bindingMatch = block.match(/binding\s*=\s*"([^"]+)"/);
|
|
158
159
|
const idMatch = block.match(/\bid\s*=\s*"([^"]+)"/);
|
|
159
|
-
if (bindingMatch?.[1] === "VINEXT_CACHE" && idMatch?.[1] && idMatch[1] !== "<your-kv-namespace-id>") result.kvNamespaceId = idMatch[1];
|
|
160
|
+
if ((bindingMatch?.[1] === "VINEXT_KV_CACHE" || bindingMatch?.[1] === "VINEXT_CACHE") && idMatch?.[1] && idMatch[1] !== "<your-kv-namespace-id>") result.kvNamespaceId = idMatch[1];
|
|
160
161
|
}
|
|
161
162
|
const routeMatch = content.match(/^route\s*=\s*"([^"]+)"/m);
|
|
162
163
|
if (routeMatch) {
|
|
@@ -427,6 +428,7 @@ function buildTprKVPairs(entries, buildId, defaultRevalidateSeconds) {
|
|
|
427
428
|
const revalidateSeconds = revalidateHeader && !isNaN(Number(revalidateHeader)) ? Number(revalidateHeader) : defaultRevalidateSeconds;
|
|
428
429
|
const revalidateAt = revalidateSeconds > 0 ? now + revalidateSeconds * 1e3 : null;
|
|
429
430
|
const kvTtl = revalidateSeconds > 0 ? MAX_KV_TTL_SECONDS : 24 * 3600;
|
|
431
|
+
const tags = buildAppPageCacheTags(routePath, []);
|
|
430
432
|
const entry = {
|
|
431
433
|
value: {
|
|
432
434
|
kind: "APP_PAGE",
|
|
@@ -434,7 +436,7 @@ function buildTprKVPairs(entries, buildId, defaultRevalidateSeconds) {
|
|
|
434
436
|
headers: result.headers,
|
|
435
437
|
status: result.status
|
|
436
438
|
},
|
|
437
|
-
tags
|
|
439
|
+
tags,
|
|
438
440
|
lastModified: now,
|
|
439
441
|
revalidateAt
|
|
440
442
|
};
|
|
@@ -494,7 +496,7 @@ async function runTPR(options) {
|
|
|
494
496
|
const wranglerConfig = parseWranglerConfig(root);
|
|
495
497
|
if (!wranglerConfig) return skip("could not parse wrangler config");
|
|
496
498
|
if (!wranglerConfig.customDomain) return skip("no custom domain — zone analytics unavailable");
|
|
497
|
-
if (!wranglerConfig.kvNamespaceId) return skip("no
|
|
499
|
+
if (!wranglerConfig.kvNamespaceId) return skip("no VINEXT_KV_CACHE KV namespace configured");
|
|
498
500
|
const accountId = wranglerConfig.accountId ?? await resolveAccountId(apiToken);
|
|
499
501
|
if (!accountId) return skip("could not resolve Cloudflare account ID");
|
|
500
502
|
console.log(` TPR: Analyzing traffic for ${wranglerConfig.customDomain} (last ${windowHours}h)`);
|
|
@@ -554,5 +556,3 @@ async function runTPR(options) {
|
|
|
554
556
|
}
|
|
555
557
|
//#endregion
|
|
556
558
|
export { buildTprKVPairs, domainCandidates, parseWranglerConfig, runTPR };
|
|
557
|
-
|
|
558
|
-
//# sourceMappingURL=tpr.js.map
|
|
@@ -159,6 +159,25 @@ declare function sanitizeDestination(dest: string): string;
|
|
|
159
159
|
* per RFC 3986, plus protocol-relative URLs (//).
|
|
160
160
|
*/
|
|
161
161
|
declare function isExternalUrl(url: string): boolean;
|
|
162
|
+
/**
|
|
163
|
+
* Merge the original request's query params into a config-redirect
|
|
164
|
+
* destination, preserving them on the resulting `Location`.
|
|
165
|
+
*
|
|
166
|
+
* Next.js carries the original request query across config redirects
|
|
167
|
+
* (`prepareDestination({ query: parsedUrl.query })` →
|
|
168
|
+
* `stringifyQuery(...)` in resolve-routes.ts). This matters for App Router
|
|
169
|
+
* RSC client navigations: the cache-busting `_rsc` query must survive the
|
|
170
|
+
* redirect so the browser's auto-followed request to the destination is
|
|
171
|
+
* still treated as an RSC fetch. Dropping it breaks RSC fetch semantics
|
|
172
|
+
* (issue #1529).
|
|
173
|
+
*
|
|
174
|
+
* Destination query params win — a request param is only carried over when
|
|
175
|
+
* the destination does not already specify that key. Mirrors the merge
|
|
176
|
+
* semantics in `proxyExternalRequest`. External destinations are returned
|
|
177
|
+
* untouched (a config redirect to another origin should not leak the
|
|
178
|
+
* original request's query).
|
|
179
|
+
*/
|
|
180
|
+
declare function preserveRedirectDestinationQuery(destination: string, requestSearch: string): string;
|
|
162
181
|
/**
|
|
163
182
|
* Proxy an incoming request to an external URL and return the upstream response.
|
|
164
183
|
*
|
|
@@ -218,5 +237,4 @@ declare function applyLocaleToRoutes<T extends NextRedirect | NextRewrite>(route
|
|
|
218
237
|
trailingSlash?: boolean;
|
|
219
238
|
}): T[];
|
|
220
239
|
//#endregion
|
|
221
|
-
export { BasePathMatchState, RequestContext, applyLocaleToRoutes, applyMiddlewareRequestHeaders, checkHasConditions, escapeHeaderSource, isExternalUrl, isSafeRegex, matchConfigPattern, matchHeaders, matchRedirect, matchRewrite, normalizeHost, parseCookies, proxyExternalRequest, requestContextFromRequest, safeRegExp, sanitizeDestination };
|
|
222
|
-
//# sourceMappingURL=config-matchers.d.ts.map
|
|
240
|
+
export { BasePathMatchState, RequestContext, applyLocaleToRoutes, applyMiddlewareRequestHeaders, checkHasConditions, escapeHeaderSource, isExternalUrl, isSafeRegex, matchConfigPattern, matchHeaders, matchRedirect, matchRewrite, normalizeHost, parseCookies, preserveRedirectDestinationQuery, proxyExternalRequest, requestContextFromRequest, safeRegExp, sanitizeDestination };
|
|
@@ -764,6 +764,40 @@ function isExternalUrl(url) {
|
|
|
764
764
|
return /^[a-z][a-z0-9+.-]*:/i.test(url) || url.startsWith("//");
|
|
765
765
|
}
|
|
766
766
|
/**
|
|
767
|
+
* Merge the original request's query params into a config-redirect
|
|
768
|
+
* destination, preserving them on the resulting `Location`.
|
|
769
|
+
*
|
|
770
|
+
* Next.js carries the original request query across config redirects
|
|
771
|
+
* (`prepareDestination({ query: parsedUrl.query })` →
|
|
772
|
+
* `stringifyQuery(...)` in resolve-routes.ts). This matters for App Router
|
|
773
|
+
* RSC client navigations: the cache-busting `_rsc` query must survive the
|
|
774
|
+
* redirect so the browser's auto-followed request to the destination is
|
|
775
|
+
* still treated as an RSC fetch. Dropping it breaks RSC fetch semantics
|
|
776
|
+
* (issue #1529).
|
|
777
|
+
*
|
|
778
|
+
* Destination query params win — a request param is only carried over when
|
|
779
|
+
* the destination does not already specify that key. Mirrors the merge
|
|
780
|
+
* semantics in `proxyExternalRequest`. External destinations are returned
|
|
781
|
+
* untouched (a config redirect to another origin should not leak the
|
|
782
|
+
* original request's query).
|
|
783
|
+
*/
|
|
784
|
+
function preserveRedirectDestinationQuery(destination, requestSearch) {
|
|
785
|
+
if (requestSearch === "" || requestSearch === "?" || isExternalUrl(destination)) return destination;
|
|
786
|
+
const requestParams = new URLSearchParams(requestSearch);
|
|
787
|
+
if ([...requestParams.keys()].length === 0) return destination;
|
|
788
|
+
const hashIndex = destination.indexOf("#");
|
|
789
|
+
const hash = hashIndex === -1 ? "" : destination.slice(hashIndex);
|
|
790
|
+
const beforeHash = hashIndex === -1 ? destination : destination.slice(0, hashIndex);
|
|
791
|
+
const queryIndex = beforeHash.indexOf("?");
|
|
792
|
+
const pathPart = queryIndex === -1 ? beforeHash : beforeHash.slice(0, queryIndex);
|
|
793
|
+
const destQuery = queryIndex === -1 ? "" : beforeHash.slice(queryIndex + 1);
|
|
794
|
+
const merged = new URLSearchParams(destQuery);
|
|
795
|
+
const destKeys = new Set(merged.keys());
|
|
796
|
+
for (const [key, value] of requestParams) if (!destKeys.has(key)) merged.append(key, value);
|
|
797
|
+
const mergedQuery = merged.toString();
|
|
798
|
+
return mergedQuery === "" ? `${pathPart}${hash}` : `${pathPart}?${mergedQuery}${hash}`;
|
|
799
|
+
}
|
|
800
|
+
/**
|
|
767
801
|
* Proxy an incoming request to an external URL and return the upstream response.
|
|
768
802
|
*
|
|
769
803
|
* Used for external rewrites (e.g. `/ph/:path*` → `https://us.i.posthog.com/:path*`).
|
|
@@ -925,6 +959,4 @@ function applyLocaleToRoutes(routes, i18n, type, options = {}) {
|
|
|
925
959
|
return out;
|
|
926
960
|
}
|
|
927
961
|
//#endregion
|
|
928
|
-
export { applyLocaleToRoutes, applyMiddlewareRequestHeaders, checkHasConditions, escapeHeaderSource, isExternalUrl, isSafeRegex, matchConfigPattern, matchHeaders, matchRedirect, matchRewrite, normalizeHost, parseCookies, proxyExternalRequest, requestContextFromRequest, safeRegExp, sanitizeDestination };
|
|
929
|
-
|
|
930
|
-
//# sourceMappingURL=config-matchers.js.map
|
|
962
|
+
export { applyLocaleToRoutes, applyMiddlewareRequestHeaders, checkHasConditions, escapeHeaderSource, isExternalUrl, isSafeRegex, matchConfigPattern, matchHeaders, matchRedirect, matchRewrite, normalizeHost, parseCookies, preserveRedirectDestinationQuery, proxyExternalRequest, requestContextFromRequest, safeRegExp, sanitizeDestination };
|
package/dist/config/dotenv.d.ts
CHANGED
package/dist/config/dotenv.js
CHANGED
|
@@ -132,7 +132,14 @@ type NextConfig = {
|
|
|
132
132
|
*/
|
|
133
133
|
instrumentationClientInject?: string[]; /** Extra origins allowed to access the dev server. */
|
|
134
134
|
allowedDevOrigins?: string[]; /** Maximum age in seconds for stale ISR entries before blocking regeneration. */
|
|
135
|
-
expireTime?: number;
|
|
135
|
+
expireTime?: number;
|
|
136
|
+
/**
|
|
137
|
+
* Maximum total length (in characters) of the preload `Link` header emitted
|
|
138
|
+
* during App Router SSR. React drops whole entries once the limit is
|
|
139
|
+
* exceeded; `0` disables emission entirely. Defaults to 6000.
|
|
140
|
+
* @see https://nextjs.org/docs/app/api-reference/config/next-config-js/reactMaxHeadersLength
|
|
141
|
+
*/
|
|
142
|
+
reactMaxHeadersLength?: number; /** User agents that require blocking metadata in the initial head. */
|
|
136
143
|
htmlLimitedBots?: RegExp | string;
|
|
137
144
|
/**
|
|
138
145
|
* Enable Cache Components (Next.js 16).
|
|
@@ -244,8 +251,14 @@ type ResolvedNextConfig = {
|
|
|
244
251
|
serverActionsAllowedOrigins: string[]; /** Packages whose barrel imports should be optimized (from experimental.optimizePackageImports). */
|
|
245
252
|
optimizePackageImports: string[]; /** Inline app CSS into production HTML (from experimental.inlineCss). */
|
|
246
253
|
inlineCss: boolean; /** Parsed body size limit for server actions in bytes (from experimental.serverActions.bodySizeLimit). Defaults to 1MB. */
|
|
247
|
-
serverActionsBodySizeLimit: number; /**
|
|
248
|
-
|
|
254
|
+
serverActionsBodySizeLimit: number; /** Verbatim body size limit config value (e.g. "2mb") for the "Body exceeded {limit} limit" error. Defaults to "1 MB". */
|
|
255
|
+
serverActionsBodySizeLimitLabel: string; /** Route-level expire fallback in seconds for ISR entries with numeric revalidate. */
|
|
256
|
+
expireTime: number;
|
|
257
|
+
/**
|
|
258
|
+
* Maximum total length (in characters) of the preload `Link` header emitted
|
|
259
|
+
* during App Router SSR. `0` disables emission. Defaults to 6000.
|
|
260
|
+
*/
|
|
261
|
+
reactMaxHeadersLength: number; /** Serialized htmlLimitedBots regexp source from next.config. */
|
|
249
262
|
htmlLimitedBots: string | undefined;
|
|
250
263
|
/**
|
|
251
264
|
* Packages that should be treated as server-external (not bundled by Vite).
|
|
@@ -416,6 +429,21 @@ declare function loadNextConfig(root: string, phase?: string): Promise<NextConfi
|
|
|
416
429
|
* @see https://nextjs.org/docs/app/api-reference/config/next-config-js/assetPrefix
|
|
417
430
|
*/
|
|
418
431
|
declare function normalizeAssetPrefix(value: unknown): string;
|
|
432
|
+
/**
|
|
433
|
+
* Resolve the App Router RSC compatibility identity for a build.
|
|
434
|
+
*
|
|
435
|
+
* This token is baked into the client bundle and echoed by the server in the
|
|
436
|
+
* `X-Vinext-RSC-Compatibility-Id` response header; browser navigation rejects
|
|
437
|
+
* RSC payloads whose token differs (deploy skew) without exposing the raw
|
|
438
|
+
* build ID. When the user pins a `deploymentId` we reuse it (already stable
|
|
439
|
+
* across plugin instances); otherwise we mint a random UUID.
|
|
440
|
+
*
|
|
441
|
+
* NOTE: like `resolveBuildId`, this is non-deterministic in the no-deploymentId
|
|
442
|
+
* case, so a single `vinext build` that instantiates the plugin more than once
|
|
443
|
+
* (App Router `buildApp()` + the hybrid Pages Router `vite.build()`) must
|
|
444
|
+
* resolve it once and share it — see `__VINEXT_SHARED_RSC_COMPATIBILITY_ID`.
|
|
445
|
+
*/
|
|
446
|
+
declare function createRscCompatibilityId(nextConfig: Pick<ResolvedNextConfig, "deploymentId">): string;
|
|
419
447
|
/**
|
|
420
448
|
* Resolve a NextConfig into a fully-resolved ResolvedNextConfig.
|
|
421
449
|
* Awaits async functions for redirects/rewrites/headers.
|
|
@@ -448,5 +476,4 @@ declare function extractMdxOptions(config: NextConfig, root?: string): Promise<M
|
|
|
448
476
|
*/
|
|
449
477
|
declare function detectNextIntlConfig(root: string, resolved: ResolvedNextConfig): void;
|
|
450
478
|
//#endregion
|
|
451
|
-
export { HasCondition, MdxOptions, NextConfig,
|
|
452
|
-
//# sourceMappingURL=next-config.d.ts.map
|
|
479
|
+
export { HasCondition, MdxOptions, NextConfig, NextConfigInput, NextHeader, NextI18nConfig, NextRedirect, NextRewrite, PHASE_PRODUCTION_BUILD, ResolvedNextConfig, createRscCompatibilityId, detectNextIntlConfig, extractMdxOptions, findNextConfigPath, loadNextConfig, normalizeAssetPrefix, parseBodySizeLimit, reassignsModuleExports, referencesCjsGlobals, resolveNextConfig, resolveNextConfigInput };
|
|
@@ -72,6 +72,12 @@ const CONFIG_FILES = [
|
|
|
72
72
|
];
|
|
73
73
|
const DEFAULT_EXPIRE_TIME = 31536e3;
|
|
74
74
|
/**
|
|
75
|
+
* Default cap for the App Router preload `Link` header length, matching the
|
|
76
|
+
* Next.js `defaultConfig.reactMaxHeadersLength`.
|
|
77
|
+
* @see https://nextjs.org/docs/app/api-reference/config/next-config-js/reactMaxHeadersLength
|
|
78
|
+
*/
|
|
79
|
+
const DEFAULT_REACT_MAX_HEADERS_LENGTH = 6e3;
|
|
80
|
+
/**
|
|
75
81
|
* Check whether an error indicates a CJS module was loaded in an ESM context
|
|
76
82
|
* (i.e. the file uses `require()` which is not available in ESM).
|
|
77
83
|
*/
|
|
@@ -224,12 +230,15 @@ function cjsGlobalsInjectorPlugin(configPath) {
|
|
|
224
230
|
const filenameLiteral = JSON.stringify(normalizedTarget);
|
|
225
231
|
const dirnameLiteral = JSON.stringify(dirname);
|
|
226
232
|
const requireBaseLiteral = JSON.stringify(path.join(dirname, "package.json"));
|
|
233
|
+
const hasOwnDirname = /\b(?:const|let|var)\s+__dirname\b/.test(code);
|
|
234
|
+
const hasOwnFilename = /\b(?:const|let|var)\s+__filename\b/.test(code);
|
|
235
|
+
const hasOwnRequire = /\b(?:const|let|var)\s+require\b/.test(code);
|
|
227
236
|
const moduleLines = reassignsModuleExports(code) ? `const __vinextInitialExports = {};
|
|
228
237
|
const module = { exports: __vinextInitialExports };
|
|
229
238
|
const exports = module.exports;
|
|
230
239
|
export const ${VINEXT_CJS_EXPORTS_KEY} = module;\nexport const ${VINEXT_CJS_INITIAL_KEY} = __vinextInitialExports;\n` : "";
|
|
231
240
|
return {
|
|
232
|
-
code: `import { createRequire as __vinextCreateRequire } from "node:module";\
|
|
241
|
+
code: (hasOwnRequire ? "" : `import { createRequire as __vinextCreateRequire } from "node:module";\n`) + (hasOwnFilename ? "" : `const __filename = ${filenameLiteral};\n`) + (hasOwnDirname ? "" : `const __dirname = ${dirnameLiteral};\n`) + (hasOwnRequire ? "" : `const require = __vinextCreateRequire(${requireBaseLiteral});\n`) + moduleLines + code,
|
|
233
242
|
map: null
|
|
234
243
|
};
|
|
235
244
|
}
|
|
@@ -394,6 +403,24 @@ function resolveDeploymentId(configDeploymentId) {
|
|
|
394
403
|
return deploymentId;
|
|
395
404
|
}
|
|
396
405
|
/**
|
|
406
|
+
* Resolve the App Router RSC compatibility identity for a build.
|
|
407
|
+
*
|
|
408
|
+
* This token is baked into the client bundle and echoed by the server in the
|
|
409
|
+
* `X-Vinext-RSC-Compatibility-Id` response header; browser navigation rejects
|
|
410
|
+
* RSC payloads whose token differs (deploy skew) without exposing the raw
|
|
411
|
+
* build ID. When the user pins a `deploymentId` we reuse it (already stable
|
|
412
|
+
* across plugin instances); otherwise we mint a random UUID.
|
|
413
|
+
*
|
|
414
|
+
* NOTE: like `resolveBuildId`, this is non-deterministic in the no-deploymentId
|
|
415
|
+
* case, so a single `vinext build` that instantiates the plugin more than once
|
|
416
|
+
* (App Router `buildApp()` + the hybrid Pages Router `vite.build()`) must
|
|
417
|
+
* resolve it once and share it — see `__VINEXT_SHARED_RSC_COMPATIBILITY_ID`.
|
|
418
|
+
*/
|
|
419
|
+
function createRscCompatibilityId(nextConfig) {
|
|
420
|
+
if (nextConfig.deploymentId) return nextConfig.deploymentId;
|
|
421
|
+
return randomUUID();
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
397
424
|
* Converts a cache handler path to a filesystem path.
|
|
398
425
|
* ESM's import.meta.resolve() returns file:// URLs which break when concatenated
|
|
399
426
|
* with path operations like path.join or path.relative.
|
|
@@ -502,7 +529,9 @@ async function resolveNextConfig(config, root = process.cwd()) {
|
|
|
502
529
|
optimizePackageImports: [],
|
|
503
530
|
inlineCss: false,
|
|
504
531
|
serverActionsBodySizeLimit: 1 * 1024 * 1024,
|
|
532
|
+
serverActionsBodySizeLimitLabel: "1 MB",
|
|
505
533
|
expireTime: DEFAULT_EXPIRE_TIME,
|
|
534
|
+
reactMaxHeadersLength: DEFAULT_REACT_MAX_HEADERS_LENGTH,
|
|
506
535
|
htmlLimitedBots: void 0,
|
|
507
536
|
serverExternalPackages: [],
|
|
508
537
|
cacheHandler: void 0,
|
|
@@ -567,7 +596,9 @@ async function resolveNextConfig(config, root = process.cwd()) {
|
|
|
567
596
|
const experimental = readOptionalRecord(config.experimental);
|
|
568
597
|
const serverActionsConfig = readOptionalRecord(experimental?.serverActions);
|
|
569
598
|
const serverActionsAllowedOrigins = readStringArray(serverActionsConfig?.allowedOrigins);
|
|
570
|
-
const
|
|
599
|
+
const serverActionsBodySizeLimitConfig = readOptionalBodySizeLimit(serverActionsConfig?.bodySizeLimit);
|
|
600
|
+
const serverActionsBodySizeLimit = parseBodySizeLimit(serverActionsBodySizeLimitConfig);
|
|
601
|
+
const serverActionsBodySizeLimitLabel = serverActionsBodySizeLimitConfig === void 0 ? "1 MB" : String(serverActionsBodySizeLimitConfig);
|
|
571
602
|
const hashSalt = (readOptionalString(experimental?.outputHashSalt) ?? "") + (process.env.NEXT_HASH_SALT ?? "");
|
|
572
603
|
const htmlLimitedBots = resolveHtmlLimitedBots(config.htmlLimitedBots);
|
|
573
604
|
const rawOptimize = experimental?.optimizePackageImports;
|
|
@@ -637,7 +668,9 @@ async function resolveNextConfig(config, root = process.cwd()) {
|
|
|
637
668
|
optimizePackageImports,
|
|
638
669
|
inlineCss,
|
|
639
670
|
serverActionsBodySizeLimit,
|
|
671
|
+
serverActionsBodySizeLimitLabel,
|
|
640
672
|
expireTime: typeof config.expireTime === "number" ? config.expireTime : DEFAULT_EXPIRE_TIME,
|
|
673
|
+
reactMaxHeadersLength: typeof config.reactMaxHeadersLength === "number" ? config.reactMaxHeadersLength : DEFAULT_REACT_MAX_HEADERS_LENGTH,
|
|
641
674
|
htmlLimitedBots,
|
|
642
675
|
serverExternalPackages,
|
|
643
676
|
cacheHandler,
|
|
@@ -659,12 +692,28 @@ async function resolveNextConfig(config, root = process.cwd()) {
|
|
|
659
692
|
if (resolved.basePath !== "" && resolved.basePath !== "/" && resolved.assetPrefix === "") resolved.assetPrefix = resolved.basePath;
|
|
660
693
|
return resolved;
|
|
661
694
|
}
|
|
695
|
+
/**
|
|
696
|
+
* Whether an alias target is a relative filesystem path (`./foo`, `../foo`,
|
|
697
|
+
* or a bare `.`/`..`) that should be resolved against the project root.
|
|
698
|
+
*
|
|
699
|
+
* Both Next.js Turbopack `resolveAlias` and webpack `resolve.alias` accept two
|
|
700
|
+
* kinds of values: relative/absolute file paths AND bare package specifiers
|
|
701
|
+
* (e.g. `react`, `preact/compat`, `@scope/pkg`). Bare specifiers must be left
|
|
702
|
+
* verbatim so Vite/Rolldown re-resolves them through node_modules — resolving
|
|
703
|
+
* them against `root` mangles them into bogus `<root>/react` paths and breaks
|
|
704
|
+
* the build with "No such file or directory". See cloudflare/vinext#1507.
|
|
705
|
+
*/
|
|
706
|
+
function isRelativeAliasTarget(value) {
|
|
707
|
+
return value === "." || value === ".." || value.startsWith("./") || value.startsWith("../");
|
|
708
|
+
}
|
|
662
709
|
function normalizeAliasEntries(aliases, root) {
|
|
663
710
|
if (!aliases) return {};
|
|
664
711
|
const normalized = {};
|
|
665
712
|
for (const [key, value] of Object.entries(aliases)) {
|
|
666
713
|
if (typeof value !== "string") continue;
|
|
667
|
-
|
|
714
|
+
if (path.isAbsolute(value)) normalized[key] = value;
|
|
715
|
+
else if (isRelativeAliasTarget(value)) normalized[key] = path.resolve(root, value);
|
|
716
|
+
else normalized[key] = value;
|
|
668
717
|
}
|
|
669
718
|
return normalized;
|
|
670
719
|
}
|
|
@@ -881,6 +930,4 @@ function extractPluginsFromOptions(opts) {
|
|
|
881
930
|
return null;
|
|
882
931
|
}
|
|
883
932
|
//#endregion
|
|
884
|
-
export { PHASE_PRODUCTION_BUILD, detectNextIntlConfig, extractMdxOptions, findNextConfigPath, loadNextConfig, normalizeAssetPrefix, parseBodySizeLimit, reassignsModuleExports, referencesCjsGlobals, resolveNextConfig, resolveNextConfigInput };
|
|
885
|
-
|
|
886
|
-
//# sourceMappingURL=next-config.js.map
|
|
933
|
+
export { PHASE_PRODUCTION_BUILD, createRscCompatibilityId, detectNextIntlConfig, extractMdxOptions, findNextConfigPath, loadNextConfig, normalizeAssetPrefix, parseBodySizeLimit, reassignsModuleExports, referencesCjsGlobals, resolveNextConfig, resolveNextConfigInput };
|