vinext 1.3.0 → 1.3.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/dist/_virtual/_rolldown/runtime.js +1 -1
- package/dist/build/action-owner-manifest.d.ts +3 -2
- package/dist/build/action-owner-manifest.js +18 -2
- package/dist/build/app-page-static-eligibility.d.ts +17 -1
- package/dist/build/app-page-static-eligibility.js +80 -13
- package/dist/build/clean-output.d.ts +2 -1
- package/dist/build/client-build-config.d.ts +13 -3
- package/dist/build/client-build-config.js +46 -9
- package/dist/build/client-reference-async.d.ts +48 -0
- package/dist/build/client-reference-async.js +123 -0
- package/dist/build/client-reference-chunks.d.ts +32 -0
- package/dist/build/client-reference-chunks.js +111 -0
- package/dist/build/client-reference-groups.d.ts +9 -1
- package/dist/build/client-reference-groups.js +40 -2
- package/dist/build/css-url-assets.d.ts +2 -1
- package/dist/build/google-fonts/fallback-metrics.d.ts +2 -1
- package/dist/build/google-fonts/find-font-files-in-css.d.ts +1 -0
- package/dist/build/google-fonts/find-font-files-in-css.js +17 -4
- package/dist/build/google-fonts/font-metadata.d.ts +2 -1
- package/dist/build/google-fonts/validate.d.ts +2 -1
- package/dist/build/inline-css.d.ts +2 -1
- package/dist/build/layout-classification.d.ts +2 -1
- package/dist/build/module-dependency-cache.d.ts +2 -1
- package/dist/build/next-client-runtime-manifests.d.ts +2 -1
- package/dist/build/precompress.d.ts +2 -1
- package/dist/build/precompress.js +1 -1
- package/dist/build/prerender-paths.d.ts +2 -1
- package/dist/build/prerender-phase.d.ts +2 -1
- package/dist/build/prerender-server-pool.js +1 -1
- package/dist/build/prerender.d.ts +3 -2
- package/dist/build/prerender.js +5 -4
- package/dist/build/report.d.ts +2 -1
- package/dist/build/route-classification-injector.d.ts +2 -1
- package/dist/build/route-classification-manifest.d.ts +2 -1
- package/dist/build/run-prerender.d.ts +2 -1
- package/dist/build/server-actions-encryption-key.d.ts +2 -1
- package/dist/build/ssr-manifest.js +25 -2
- package/dist/build/standalone.d.ts +2 -1
- package/dist/cache/cache-adapters-virtual.d.ts +2 -1
- package/dist/cache.js +1 -2
- package/dist/check.d.ts +2 -1
- package/dist/check.js +4 -0
- package/dist/cli-args.d.ts +2 -1
- package/dist/cli.js +2 -0
- package/dist/client/client-redirect-matcher.js +2 -1
- package/dist/client/client-redirects.d.ts +4 -3
- package/dist/client/client-redirects.js +2 -1
- package/dist/client/client-rewrites.d.ts +2 -1
- package/dist/client/dev-error-overlay-store.d.ts +2 -1
- package/dist/client/index.js +1 -2
- package/dist/client/instrumentation-client-state.js +5 -5
- package/dist/client/navigation-runtime.d.ts +3 -1
- package/dist/client/navigation-runtime.js +1 -1
- package/dist/client/pages-router-link-navigation.d.ts +2 -1
- package/dist/client/vinext-next-data.d.ts +25 -1
- package/dist/client/window-next.d.ts +2 -1
- package/dist/config/config-matchers.d.ts +12 -1
- package/dist/config/config-matchers.js +111 -16
- package/dist/config/dotenv.d.ts +2 -1
- package/dist/config/next-config.d.ts +13 -1
- package/dist/config/next-config.js +29 -4
- package/dist/config/tsconfig-paths.d.ts +2 -1
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/detector.js +23 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/index.js +2 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/lookup.js +25 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/bmp.js +11 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/cur.js +15 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/dds.js +11 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/gif.js +12 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/heif.js +55 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/icns.js +76 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/ico.js +39 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/index.js +46 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/j2c.js +11 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/jp2.js +21 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/jpg.js +71 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/jxl-stream.js +42 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/jxl.js +46 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/ktx.js +19 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/png.js +28 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/pnm.js +54 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/psd.js +11 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/svg.js +79 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/tga.js +15 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/tiff.js +96 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/utils.js +53 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/types/webp.js +45 -0
- package/dist/deps/.pnpm/image-size@2.0.4/deps/image-size/dist/esm/utils/bit-reader.js +38 -0
- package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +2 -2
- package/dist/entries/app-browser-entry.d.ts +20 -5
- package/dist/entries/app-browser-entry.js +79 -6
- package/dist/entries/app-rsc-entry.d.ts +2 -1
- package/dist/entries/app-rsc-entry.js +42 -12
- package/dist/entries/app-rsc-manifest.d.ts +2 -1
- package/dist/entries/app-rsc-manifest.js +53 -0
- package/dist/entries/pages-entry-helpers.js +1 -2
- package/dist/entries/pages-server-entry.d.ts +2 -1
- package/dist/entries/pages-server-entry.js +1 -1
- package/dist/entries/runtime-entry-module.d.ts +1 -0
- package/dist/entries/runtime-entry-module.js +4 -1
- package/dist/image/image-adapters-virtual.d.ts +2 -1
- package/dist/index.js +102 -34
- package/dist/plugins/client-compile-hints.d.ts +30 -0
- package/dist/plugins/client-compile-hints.js +88 -0
- package/dist/plugins/client-reference-dedup.d.ts +2 -1
- package/dist/plugins/cloudflare-dev-module-urls.d.ts +2 -1
- package/dist/plugins/dynamic-preload-metadata.d.ts +3 -1
- package/dist/plugins/dynamic-preload-metadata.js +1 -1
- package/dist/plugins/environment.d.ts +2 -1
- package/dist/plugins/fonts.js +9 -12
- package/dist/plugins/ignore-dynamic-requests.d.ts +2 -1
- package/dist/plugins/import-meta-url.d.ts +2 -1
- package/dist/plugins/og-assets.d.ts +2 -1
- package/dist/plugins/og-assets.js +2 -3
- package/dist/plugins/optimize-imports.d.ts +2 -1
- package/dist/plugins/pages-node-externals.d.ts +2 -1
- package/dist/plugins/remove-console.d.ts +2 -1
- package/dist/plugins/require-condition-resolution.d.ts +2 -1
- package/dist/plugins/rsc-client-reference-loaders.d.ts +8 -0
- package/dist/plugins/rsc-client-reference-loaders.js +170 -68
- package/dist/plugins/rsc-client-shim-excludes.js +2 -0
- package/dist/plugins/sass.d.ts +2 -1
- package/dist/plugins/strip-server-exports.d.ts +2 -1
- package/dist/plugins/styled-jsx.d.ts +2 -1
- package/dist/plugins/transform-result.d.ts +2 -1
- package/dist/plugins/typeof-window.d.ts +2 -1
- package/dist/plugins/worker-image-imports.js +1 -1
- package/dist/plugins/worker-use-server.d.ts +2 -1
- package/dist/routing/app-route-graph.d.ts +40 -0
- package/dist/routing/app-route-graph.js +122 -50
- package/dist/routing/browser-route-manifest.d.ts +2 -1
- package/dist/routing/optimistic-route-trie.d.ts +2 -1
- package/dist/routing/route-matching.d.ts +2 -1
- package/dist/routing/route-pattern.d.ts +2 -1
- package/dist/server/accept-encoding.d.ts +2 -1
- package/dist/server/app-action-forwarding.d.ts +2 -1
- package/dist/server/app-bfcache-identity.d.ts +2 -1
- package/dist/server/app-browser-action-result.d.ts +2 -1
- package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -1
- package/dist/server/app-browser-entry.js +30 -6
- package/dist/server/app-browser-error.d.ts +2 -1
- package/dist/server/app-browser-history-controller.d.ts +2 -1
- package/dist/server/app-browser-hydration.d.ts +2 -1
- package/dist/server/app-browser-interception-context.d.ts +2 -1
- package/dist/server/app-browser-navigation-controller.js +15 -10
- package/dist/server/app-browser-popstate.d.ts +2 -1
- package/dist/server/app-browser-rsc-redirect.d.ts +2 -1
- package/dist/server/app-browser-server-action-client.d.ts +2 -1
- package/dist/server/app-browser-state.js +1 -1
- package/dist/server/app-browser-stream.d.ts +2 -1
- package/dist/server/app-browser-visible-commit.d.ts +2 -1
- package/dist/server/app-client-reference-manifest.d.ts +31 -0
- package/dist/server/app-client-reference-manifest.js +46 -0
- package/dist/server/app-client-reference-preloader.d.ts +25 -5
- package/dist/server/app-client-reference-preloader.js +22 -7
- package/dist/server/app-elements-wire.d.ts +2 -1
- package/dist/server/app-elements.d.ts +2 -0
- package/dist/server/app-elements.js +3 -1
- package/dist/server/app-fallback-renderer.d.ts +9 -2
- package/dist/server/app-fallback-renderer.js +4 -1
- package/dist/server/app-history-state.d.ts +2 -1
- package/dist/server/app-inline-css-client.d.ts +2 -1
- package/dist/server/app-layout-param-observation.d.ts +2 -1
- package/dist/server/app-metadata-tracing.d.ts +2 -1
- package/dist/server/app-optimistic-routing.d.ts +18 -1
- package/dist/server/app-optimistic-routing.js +34 -1
- package/dist/server/app-page-boundary-render.d.ts +20 -2
- package/dist/server/app-page-boundary-render.js +221 -38
- package/dist/server/app-page-boundary.d.ts +34 -5
- package/dist/server/app-page-boundary.js +40 -7
- package/dist/server/app-page-cache-finalizer.d.ts +2 -1
- package/dist/server/app-page-cache-finalizer.js +1 -1
- package/dist/server/app-page-cache-render.d.ts +10 -2
- package/dist/server/app-page-cache-render.js +14 -2
- package/dist/server/app-page-cache.js +2 -2
- package/dist/server/app-page-dispatch.d.ts +34 -1
- package/dist/server/app-page-dispatch.js +163 -34
- package/dist/server/app-page-element-builder.d.ts +17 -1
- package/dist/server/app-page-element-builder.js +187 -66
- package/dist/server/app-page-execution.d.ts +28 -1
- package/dist/server/app-page-execution.js +114 -5
- package/dist/server/app-page-head.d.ts +95 -3
- package/dist/server/app-page-head.js +307 -152
- package/dist/server/app-page-http-access-fallback-metadata.d.ts +48 -2
- package/dist/server/app-page-http-access-fallback-metadata.js +76 -1
- package/dist/server/app-page-method.d.ts +2 -1
- package/dist/server/app-page-probe.d.ts +2 -1
- package/dist/server/app-page-render-identity.d.ts +2 -1
- package/dist/server/app-page-render.d.ts +7 -1
- package/dist/server/app-page-render.js +35 -10
- package/dist/server/app-page-request.d.ts +14 -1
- package/dist/server/app-page-request.js +1 -1
- package/dist/server/app-page-route-wiring.d.ts +52 -2
- package/dist/server/app-page-route-wiring.js +197 -47
- package/dist/server/app-page-rsc-render-status.d.ts +2 -1
- package/dist/server/app-page-search-params-observation.d.ts +7 -2
- package/dist/server/app-page-search-params-observation.js +8 -1
- package/dist/server/app-page-segment-plan.d.ts +2 -1
- package/dist/server/app-page-stream.d.ts +31 -1
- package/dist/server/app-page-stream.js +23 -4
- package/dist/server/app-pages-bridge.d.ts +2 -1
- package/dist/server/app-ppr-fallback-shell-render.d.ts +2 -1
- package/dist/server/app-ppr-fallback-shell.d.ts +2 -1
- package/dist/server/app-prerender-endpoints.d.ts +2 -1
- package/dist/server/app-prerender-static-params.d.ts +2 -1
- package/dist/server/app-render-dependency.d.ts +11 -1
- package/dist/server/app-render-dependency.js +26 -7
- package/dist/server/app-request-stage-independent-entry.d.ts +2 -1
- package/dist/server/app-response-stage-entry.d.ts +2 -1
- package/dist/server/app-route-handler-cache.d.ts +2 -1
- package/dist/server/app-route-handler-dispatch.d.ts +2 -1
- package/dist/server/app-route-handler-dispatch.js +1 -1
- package/dist/server/app-route-handler-execution.d.ts +2 -1
- package/dist/server/app-route-handler-response.d.ts +2 -1
- package/dist/server/app-route-handler-runtime.d.ts +2 -1
- package/dist/server/app-route-module-loader.d.ts +18 -1
- package/dist/server/app-route-module-loader.js +8 -0
- package/dist/server/app-route-tree-prefetch.d.ts +2 -1
- package/dist/server/app-rsc-error-handler.d.ts +2 -1
- package/dist/server/app-rsc-errors.d.ts +2 -1
- package/dist/server/app-rsc-handler.d.ts +2 -1
- package/dist/server/app-rsc-handler.js +6 -10
- package/dist/server/app-rsc-response-finalizer.d.ts +2 -1
- package/dist/server/app-rsc-route-matching.d.ts +38 -1
- package/dist/server/app-rsc-route-matching.js +24 -0
- package/dist/server/app-segment-config.d.ts +2 -1
- package/dist/server/app-segment-config.js +1 -14
- package/dist/server/app-server-action-execution.d.ts +2 -1
- package/dist/server/app-server-action-execution.js +3 -3
- package/dist/server/app-ssr-entry.d.ts +6 -0
- package/dist/server/app-ssr-entry.js +91 -44
- package/dist/server/app-ssr-error-meta.d.ts +2 -1
- package/dist/server/app-ssr-search-params-gate.d.ts +2 -1
- package/dist/server/app-ssr-stream.d.ts +22 -10
- package/dist/server/app-ssr-stream.js +299 -67
- package/dist/server/app-static-generation.d.ts +2 -1
- package/dist/server/app-streamed-client-references.d.ts +39 -0
- package/dist/server/app-streamed-client-references.js +156 -0
- package/dist/server/app-visited-response-cache.d.ts +2 -1
- package/dist/server/app-worker-stages.d.ts +2 -1
- package/dist/server/artifact-compatibility.d.ts +2 -1
- package/dist/server/bfcache-identity.d.ts +2 -1
- package/dist/server/cache-headers.d.ts +2 -1
- package/dist/server/cacheability-request.d.ts +2 -1
- package/dist/server/client-reuse-manifest.d.ts +2 -1
- package/dist/server/config-headers.d.ts +2 -1
- package/dist/server/csp.d.ts +2 -1
- package/dist/server/default-global-not-found-module.d.ts +2 -1
- package/dist/server/default-http-access-fallback-modules.d.ts +33 -0
- package/dist/server/default-http-access-fallback-modules.js +31 -0
- package/dist/server/defer-until-stream-consumed.d.ts +34 -0
- package/dist/server/defer-until-stream-consumed.js +154 -21
- package/dist/server/dev-lockfile.d.ts +32 -2
- package/dist/server/dev-lockfile.js +46 -2
- package/dist/server/dev-module-runner.d.ts +2 -1
- package/dist/server/dev-server.js +10 -3
- package/dist/server/fetch-handler.js +1 -2
- package/dist/server/file-based-metadata.d.ts +2 -1
- package/dist/server/framework-tracer.d.ts +2 -1
- package/dist/server/html.d.ts +1 -0
- package/dist/server/html.js +19 -1
- package/dist/server/http-conditional.d.ts +2 -1
- package/dist/server/http-error-responses.d.ts +2 -1
- package/dist/server/implicit-tags.d.ts +2 -1
- package/dist/server/metadata-route-build-data.d.ts +2 -1
- package/dist/server/metadata-route-build-data.js +1 -1
- package/dist/server/metadata-route-response.d.ts +2 -1
- package/dist/server/metadata-route-response.js +1 -1
- package/dist/server/metadata-routes.d.ts +2 -1
- package/dist/server/middleware-runtime.d.ts +2 -1
- package/dist/server/navigation-trace.d.ts +2 -1
- package/dist/server/next-error-digest.d.ts +2 -1
- package/dist/server/nitro-public-files-plugin.d.ts +2 -1
- package/dist/server/nitro-public-files.d.ts +2 -1
- package/dist/server/opentelemetry-api.d.ts +2 -1
- package/dist/server/operation-token.d.ts +2 -1
- package/dist/server/pages-api-route.d.ts +2 -1
- package/dist/server/pages-asset-tags.d.ts +2 -1
- package/dist/server/pages-body-parser-config.d.ts +2 -1
- package/dist/server/pages-client-assets.d.ts +4 -0
- package/dist/server/pages-data-route.d.ts +2 -1
- package/dist/server/pages-document-asset-props.d.ts +2 -1
- package/dist/server/pages-document-initial-props.d.ts +2 -1
- package/dist/server/pages-execution-tracing.d.ts +2 -1
- package/dist/server/pages-execution-tracing.js +1 -1
- package/dist/server/pages-get-initial-props.d.ts +2 -1
- package/dist/server/pages-page-data.d.ts +7 -1
- package/dist/server/pages-page-data.js +35 -12
- package/dist/server/pages-page-handler.d.ts +3 -2
- package/dist/server/pages-page-handler.js +16 -7
- package/dist/server/pages-page-method.d.ts +2 -1
- package/dist/server/pages-page-response.d.ts +2 -1
- package/dist/server/pages-preview.d.ts +2 -1
- package/dist/server/pages-readiness.d.ts +2 -1
- package/dist/server/pages-request-pipeline.d.ts +2 -1
- package/dist/server/pages-request-pipeline.js +4 -5
- package/dist/server/pages-request-stage-entry.d.ts +2 -1
- package/dist/server/pages-response-stage-entry.d.ts +2 -1
- package/dist/server/pages-route-data-kind.d.ts +2 -1
- package/dist/server/prerender-cache-life-header.d.ts +2 -1
- package/dist/server/prerender-route-params.d.ts +2 -1
- package/dist/server/prod-server.js +9 -3
- package/dist/server/request-log.d.ts +2 -1
- package/dist/server/request-tracing.d.ts +2 -1
- package/dist/server/request-tracing.js +1 -1
- package/dist/server/response-start-tracing.js +7 -29
- package/dist/server/rsc-render-stream.d.ts +4 -0
- package/dist/server/rsc-render-stream.js +25 -0
- package/dist/server/seed-cache.d.ts +2 -1
- package/dist/server/seed-cache.js +1 -1
- package/dist/server/static-file-cache.d.ts +2 -1
- package/dist/server/static-file-cache.js +1 -0
- package/dist/server/static-layout-client-reuse-proof.d.ts +2 -1
- package/dist/server/worker-revalidation-context.d.ts +2 -1
- package/dist/server/worker-stages.d.ts +2 -1
- package/dist/shims/app.d.ts +2 -1
- package/dist/shims/cache-callable-runtime.d.ts +2 -1
- package/dist/shims/cache-handler.d.ts +8 -3
- package/dist/shims/cache-handler.js +29 -9
- package/dist/shims/caught-not-found-boundaries.d.ts +15 -0
- package/dist/shims/caught-not-found-boundaries.js +48 -0
- package/dist/shims/cdn-purge-routes.d.ts +2 -1
- package/dist/shims/client-locale.js +2 -1
- package/dist/shims/client-page-root.d.ts +2 -1
- package/dist/shims/config.d.ts +2 -1
- package/dist/shims/default-forbidden.d.ts +4 -0
- package/dist/shims/default-forbidden.js +18 -0
- package/dist/shims/default-not-found.d.ts +0 -5
- package/dist/shims/default-not-found.js +5 -41
- package/dist/shims/default-unauthorized.d.ts +4 -0
- package/dist/shims/default-unauthorized.js +18 -0
- package/dist/shims/error-boundary.d.ts +39 -3
- package/dist/shims/error-boundary.js +31 -16
- package/dist/shims/font-google.js +1 -2
- package/dist/shims/font-utils.d.ts +3 -2
- package/dist/shims/font-utils.js +5 -3
- package/dist/shims/form.js +1 -1
- package/dist/shims/http-access-error-fallback.d.ts +7 -0
- package/dist/shims/http-access-error-fallback.js +47 -0
- package/dist/shims/image.d.ts +1 -22
- package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +22 -2
- package/dist/shims/internal/app-prefetch-fetch-queue.js +71 -18
- package/dist/shims/internal/app-route-prefetch-policy.d.ts +14 -3
- package/dist/shims/internal/app-route-prefetch-policy.js +29 -4
- package/dist/shims/internal/cache-context-accessor.d.ts +2 -1
- package/dist/shims/internal/client-reference-loader.d.ts +7 -0
- package/dist/shims/internal/client-reference-loader.js +91 -0
- package/dist/shims/internal/cookie-serialize.d.ts +2 -1
- package/dist/shims/internal/cookies.js +1 -2
- package/dist/shims/internal/headers-state.d.ts +2 -0
- package/dist/shims/internal/headers-state.js +6 -1
- package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +2 -1
- package/dist/shims/internal/interpolate-as.d.ts +2 -1
- package/dist/shims/internal/pages-data-target.d.ts +2 -1
- package/dist/shims/internal/pages-data-url.d.ts +2 -1
- package/dist/shims/internal/thenable-well-known-properties.d.ts +2 -1
- package/dist/shims/link.js +195 -52
- package/dist/shims/metadata.d.ts +32 -11
- package/dist/shims/metadata.js +88 -26
- package/dist/shims/navigation-errors.d.ts +2 -1
- package/dist/shims/navigation.d.ts +22 -2
- package/dist/shims/navigation.js +74 -20
- package/dist/shims/pages-router-runtime.d.ts +2 -1
- package/dist/shims/ppr-fallback-shell.d.ts +2 -1
- package/dist/shims/router.js +14 -3
- package/dist/shims/unified-request-context.js +3 -3
- package/dist/typegen.d.ts +2 -1
- package/dist/utils/client-build-manifest.d.ts +4 -1
- package/dist/utils/client-build-manifest.js +9 -2
- package/dist/utils/client-entry-manifest.d.ts +13 -0
- package/dist/utils/client-entry-manifest.js +20 -1
- package/dist/utils/client-reference-chunks.d.ts +45 -0
- package/dist/utils/client-reference-chunks.js +30 -0
- package/dist/utils/client-runtime-metadata.d.ts +9 -1
- package/dist/utils/client-runtime-metadata.js +40 -9
- package/dist/utils/compare.d.ts +9 -0
- package/dist/utils/compare.js +15 -1
- package/dist/utils/lazy-chunks.d.ts +14 -0
- package/dist/utils/lazy-chunks.js +27 -1
- package/dist/utils/middleware-request-headers.d.ts +2 -1
- package/dist/utils/project.d.ts +2 -1
- package/dist/utils/project.js +9 -1
- package/dist/utils/query.d.ts +2 -1
- package/dist/utils/sorted-array.d.ts +2 -1
- package/dist/utils/vite-cli-invocation.d.ts +2 -1
- package/package.json +5 -5
- package/dist/deps/.pnpm/image-size@2.0.2/deps/image-size/dist/index.js +0 -808
- package/dist/server/default-not-found-module.d.ts +0 -19
- package/dist/server/default-not-found-module.js +0 -18
- package/dist/server/rsc-stream-hints.d.ts +0 -21
- package/dist/server/rsc-stream-hints.js +0 -227
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { readInt16LE, readUInt24LE, toHexString, toUTF8String } from "./utils.js";
|
|
2
|
+
//#region ../../node_modules/.pnpm/image-size@2.0.4/node_modules/image-size/dist/esm/types/webp.js
|
|
3
|
+
function calculateExtended(input) {
|
|
4
|
+
return {
|
|
5
|
+
height: 1 + readUInt24LE(input, 7),
|
|
6
|
+
width: 1 + readUInt24LE(input, 4)
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
function calculateLossless(input) {
|
|
10
|
+
return {
|
|
11
|
+
height: 1 + ((input[4] & 15) << 10 | input[3] << 2 | (input[2] & 192) >> 6),
|
|
12
|
+
width: 1 + ((input[2] & 63) << 8 | input[1])
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function calculateLossy(input) {
|
|
16
|
+
return {
|
|
17
|
+
height: readInt16LE(input, 8) & 16383,
|
|
18
|
+
width: readInt16LE(input, 6) & 16383
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const WEBP = {
|
|
22
|
+
validate(input) {
|
|
23
|
+
const riffHeader = "RIFF" === toUTF8String(input, 0, 4);
|
|
24
|
+
const webpHeader = "WEBP" === toUTF8String(input, 8, 12);
|
|
25
|
+
const vp8Header = "VP8" === toUTF8String(input, 12, 15);
|
|
26
|
+
return riffHeader && webpHeader && vp8Header;
|
|
27
|
+
},
|
|
28
|
+
calculate(_input) {
|
|
29
|
+
const chunkHeader = toUTF8String(_input, 12, 16);
|
|
30
|
+
const input = _input.slice(20, 30);
|
|
31
|
+
if (chunkHeader === "VP8X") {
|
|
32
|
+
const extendedHeader = input[0];
|
|
33
|
+
const validStart = (extendedHeader & 192) === 0;
|
|
34
|
+
const validEnd = (extendedHeader & 1) === 0;
|
|
35
|
+
if (validStart && validEnd) return calculateExtended(input);
|
|
36
|
+
throw new TypeError("Invalid WebP");
|
|
37
|
+
}
|
|
38
|
+
if (chunkHeader === "VP8 " && input[0] !== 47) return calculateLossy(input);
|
|
39
|
+
const signature = toHexString(input, 3, 6);
|
|
40
|
+
if (chunkHeader === "VP8L" && signature !== "9d012a") return calculateLossless(input);
|
|
41
|
+
throw new TypeError("Invalid WebP");
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
//#endregion
|
|
45
|
+
export { WEBP };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
//#region ../../node_modules/.pnpm/image-size@2.0.4/node_modules/image-size/dist/esm/utils/bit-reader.js
|
|
2
|
+
var BitReader = class {
|
|
3
|
+
input;
|
|
4
|
+
endianness;
|
|
5
|
+
byteOffset = 2;
|
|
6
|
+
bitOffset = 0;
|
|
7
|
+
constructor(input, endianness) {
|
|
8
|
+
this.input = input;
|
|
9
|
+
this.endianness = endianness;
|
|
10
|
+
}
|
|
11
|
+
getBits(length = 1) {
|
|
12
|
+
let result = 0;
|
|
13
|
+
let bitsRead = 0;
|
|
14
|
+
while (bitsRead < length) {
|
|
15
|
+
if (this.byteOffset >= this.input.length) throw new Error("Reached end of input");
|
|
16
|
+
const currentByte = this.input[this.byteOffset];
|
|
17
|
+
const bitsLeft = 8 - this.bitOffset;
|
|
18
|
+
const bitsToRead = Math.min(length - bitsRead, bitsLeft);
|
|
19
|
+
if (this.endianness === "little-endian") {
|
|
20
|
+
const mask = (1 << bitsToRead) - 1;
|
|
21
|
+
const bits = currentByte >> this.bitOffset & mask;
|
|
22
|
+
result |= bits << bitsRead;
|
|
23
|
+
} else {
|
|
24
|
+
const bits = (currentByte & (1 << bitsToRead) - 1 << 8 - this.bitOffset - bitsToRead) >> 8 - this.bitOffset - bitsToRead;
|
|
25
|
+
result = result << bitsToRead | bits;
|
|
26
|
+
}
|
|
27
|
+
bitsRead += bitsToRead;
|
|
28
|
+
this.bitOffset += bitsToRead;
|
|
29
|
+
if (this.bitOffset === 8) {
|
|
30
|
+
this.byteOffset++;
|
|
31
|
+
this.bitOffset = 0;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return result;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
//#endregion
|
|
38
|
+
export { BitReader };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __commonJSMin } from "../../../../../../_virtual/_rolldown/runtime.js";
|
|
2
2
|
//#region ../../node_modules/.pnpm/ua-parser-js@1.0.35/node_modules/ua-parser-js/src/ua-parser.js
|
|
3
|
-
var require_ua_parser = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
3
|
+
var require_ua_parser = /* @__PURE__ */ __commonJSMin(((exports, module, this$1) => {
|
|
4
4
|
(function(window, undefined) {
|
|
5
5
|
"use strict";
|
|
6
6
|
var LIBVERSION = "1.0.35", EMPTY = "", UNKNOWN = "?", FUNC_TYPE = "function", UNDEF_TYPE = "undefined", OBJ_TYPE = "object", STR_TYPE = "string", MAJOR = "major", MODEL = "model", NAME = "name", TYPE = "type", VENDOR = "vendor", VERSION = "version", ARCHITECTURE = "architecture", CONSOLE = "console", MOBILE = "mobile", TABLET = "tablet", SMARTTV = "smarttv", WEARABLE = "wearable", EMBEDDED = "embedded", UA_MAX_LENGTH = 350, AMAZON = "Amazon", APPLE = "Apple", ASUS = "ASUS", BLACKBERRY = "BlackBerry", BROWSER = "Browser", CHROME = "Chrome", EDGE = "Edge", FIREFOX = "Firefox", GOOGLE = "Google", HUAWEI = "Huawei", LG = "LG", MICROSOFT = "Microsoft", MOTOROLA = "Motorola", OPERA = "Opera", SAMSUNG = "Samsung", SHARP = "Sharp", SONY = "Sony", XIAOMI = "Xiaomi", ZEBRA = "Zebra", FACEBOOK = "Facebook", CHROMIUM_OS = "Chromium OS", MAC_OS = "Mac OS";
|
|
@@ -1050,7 +1050,7 @@ var require_ua_parser = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1050
1050
|
for (var prop in result) $.ua[prop] = result[prop];
|
|
1051
1051
|
};
|
|
1052
1052
|
}
|
|
1053
|
-
})(typeof window === "object" ? window :
|
|
1053
|
+
})(typeof window === "object" ? window : this$1);
|
|
1054
1054
|
}));
|
|
1055
1055
|
//#endregion
|
|
1056
1056
|
export default require_ua_parser();
|
|
@@ -13,16 +13,30 @@ export declare function generateBrowserEntry(routes?: readonly AppRoute[], pages
|
|
|
13
13
|
afterFiles: NextRewrite[];
|
|
14
14
|
beforeFiles: NextRewrite[];
|
|
15
15
|
fallback: NextRewrite[];
|
|
16
|
-
}, locales?: readonly string[]): string;
|
|
16
|
+
}, locales?: readonly string[], classifier?: AppRouteDynamicRenderClassifier): string;
|
|
17
17
|
/**
|
|
18
18
|
* App route handlers for hybrid App/Pages ownership, with their static
|
|
19
19
|
* segments hashed so the client never receives their paths in plain text.
|
|
20
20
|
*/
|
|
21
21
|
export declare function toHashedRouteHandlerRoutes(routes: readonly AppRoute[]): VinextLinkPrefetchRoute[];
|
|
22
|
+
type AppRouteIntercept = AppRoute["siblingIntercepts"][number];
|
|
23
|
+
/** Reads, at build time, which App pages Next.js renders on every request. */
|
|
24
|
+
export type AppRouteDynamicRenderClassifier = {
|
|
25
|
+
route(route: AppRoute): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* `layoutPaths` holds the layouts above the intercepting page outside its
|
|
28
|
+
* own branch: the source route's, and the slot's.
|
|
29
|
+
*/
|
|
30
|
+
intercept(intercept: AppRouteIntercept, layoutPaths: readonly string[]): boolean;
|
|
31
|
+
};
|
|
22
32
|
/** Project an `AppRoute` down to the public `VinextLinkPrefetchRoute` shape. */
|
|
23
|
-
export declare function toLinkPrefetchRoute(route: AppRoute, hasSiblingInterceptLoading?: boolean): VinextLinkPrefetchRoute;
|
|
24
|
-
/**
|
|
25
|
-
|
|
33
|
+
export declare function toLinkPrefetchRoute(route: AppRoute, hasSiblingInterceptLoading?: boolean, rendersDynamically?: boolean): VinextLinkPrefetchRoute;
|
|
34
|
+
/**
|
|
35
|
+
* Project App routes together so sibling-intercept loading is applied to its
|
|
36
|
+
* target route. `classifier` reads each route's segment config, and each
|
|
37
|
+
* intercepting page's, which applies to its target route.
|
|
38
|
+
*/
|
|
39
|
+
export declare function toLinkPrefetchRoutes(routes: readonly AppRoute[], classifier?: AppRouteDynamicRenderClassifier): VinextLinkPrefetchRoute[];
|
|
26
40
|
/**
|
|
27
41
|
* Generate the virtual module that holds the browser RouteManifest.
|
|
28
42
|
*
|
|
@@ -31,4 +45,5 @@ export declare function toLinkPrefetchRoutes(routes: readonly AppRoute[]): Vinex
|
|
|
31
45
|
* JSON string keeps the parse on V8's fast JSON path.
|
|
32
46
|
*/
|
|
33
47
|
export declare function generateBrowserRouteManifestModule(routeManifest: RouteManifest | null): string;
|
|
34
|
-
//#endregion
|
|
48
|
+
//#endregion
|
|
49
|
+
export {};
|
|
@@ -15,10 +15,10 @@ function generateBrowserEntry(routes = [], pagesPrefetchRoutes = [], rewrites =
|
|
|
15
15
|
afterFiles: [],
|
|
16
16
|
beforeFiles: [],
|
|
17
17
|
fallback: []
|
|
18
|
-
}, locales = []) {
|
|
18
|
+
}, locales = [], classifier) {
|
|
19
19
|
const entryPath = resolveRuntimeEntryModule("app-browser-entry");
|
|
20
20
|
const reactInstanceBootstrapPath = resolveClientRuntimeModule("react-instance-bootstrap");
|
|
21
|
-
const prefetchRoutes = toLinkPrefetchRoutes(routes);
|
|
21
|
+
const prefetchRoutes = toLinkPrefetchRoutes(routes, classifier);
|
|
22
22
|
const routeHandlers = pagesPrefetchRoutes.length > 0 ? toHashedRouteHandlerRoutes(routes) : [];
|
|
23
23
|
const clientRewrites = toClientRewrites(rewrites);
|
|
24
24
|
return `import ${JSON.stringify(reactInstanceBootstrapPath)};
|
|
@@ -69,20 +69,93 @@ function hasLoadingBoundary(route, hasSiblingInterceptLoading) {
|
|
|
69
69
|
return route.loadingPath !== null || (route.loadingPaths?.some((_, index) => (route.loadingTreePositions?.[index] ?? 0) > 0) ?? false) || route.parallelSlots.some((slot) => slot.loadingPath !== null || (slot.loadingPaths?.length ?? 0) > 0 || slot.interceptingRoutes.some((intercept) => interceptTargetsRoute(intercept.targetPattern, route) && (intercept.loadingPaths?.length ?? 0) > 0)) || hasSiblingInterceptLoading;
|
|
70
70
|
}
|
|
71
71
|
/** Project an `AppRoute` down to the public `VinextLinkPrefetchRoute` shape. */
|
|
72
|
-
function toLinkPrefetchRoute(route, hasSiblingInterceptLoading = route.siblingIntercepts.some((intercept) => interceptTargetsRoute(intercept.targetPattern, route) && (intercept.loadingPaths?.length ?? 0) > 0)) {
|
|
72
|
+
function toLinkPrefetchRoute(route, hasSiblingInterceptLoading = route.siblingIntercepts.some((intercept) => interceptTargetsRoute(intercept.targetPattern, route) && (intercept.loadingPaths?.length ?? 0) > 0), rendersDynamically = false) {
|
|
73
73
|
return {
|
|
74
74
|
canPrefetchLoadingShell: hasLoadingBoundary(route, hasSiblingInterceptLoading),
|
|
75
75
|
patternParts: [...route.patternParts],
|
|
76
76
|
isDynamic: route.isDynamic,
|
|
77
|
+
...rendersDynamically ? { rendersDynamically: true } : {},
|
|
77
78
|
...requiresDynamicNavigationRequest(route) ? { requiresDynamicNavigationRequest: true } : {},
|
|
78
79
|
...(route.rootParamNames?.length ?? 0) > 0 ? { hasRootParams: true } : {}
|
|
79
80
|
};
|
|
80
81
|
}
|
|
81
|
-
/**
|
|
82
|
-
|
|
82
|
+
/**
|
|
83
|
+
* Project App routes together so sibling-intercept loading is applied to its
|
|
84
|
+
* target route. `classifier` reads each route's segment config, and each
|
|
85
|
+
* intercepting page's, which applies to its target route.
|
|
86
|
+
*/
|
|
87
|
+
function toLinkPrefetchRoutes(routes, classifier) {
|
|
83
88
|
const siblingInterceptLoadingTargets = [];
|
|
84
89
|
for (const route of routes) for (const intercept of route.siblingIntercepts) if ((intercept.loadingPaths?.length ?? 0) > 0) siblingInterceptLoadingTargets.push(splitPatternParts(intercept.targetPattern));
|
|
85
|
-
|
|
90
|
+
const intercepts = classifier ? collectClassifiedIntercepts(routes, classifier) : [];
|
|
91
|
+
return routes.filter(isLinkPrefetchRoute).map((route) => {
|
|
92
|
+
const prefetchRoute = toLinkPrefetchRoute(route, siblingInterceptLoadingTargets.some((targetParts) => patternsStructurallyEquivalent(targetParts, route.patternParts)), classifier?.route(route) ?? false);
|
|
93
|
+
const routeIntercepts = intercepts.filter(({ targetPatternParts }) => interceptTargetMayMatchRoute(targetPatternParts, route.patternParts)).map(({ intercept }) => intercept);
|
|
94
|
+
return routeIntercepts.length > 0 ? {
|
|
95
|
+
...prefetchRoute,
|
|
96
|
+
intercepts: routeIntercepts
|
|
97
|
+
} : prefetchRoute;
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Whether some URL matches both the intercept's target and the route:
|
|
102
|
+
* `/foo/:id` also intercepts a static `/foo/static` route, and `/:name/static`
|
|
103
|
+
* crosses `/foo/:id` at `/foo/static`. A catch-all counts as overlapping; the
|
|
104
|
+
* client checks the URL against the intercept's own target pattern anyway.
|
|
105
|
+
*/
|
|
106
|
+
function interceptTargetMayMatchRoute(targetPatternParts, routePatternParts) {
|
|
107
|
+
const isParam = (part) => part.startsWith(":");
|
|
108
|
+
const isCatchAll = (part) => isParam(part) && (part.endsWith("+") || part.endsWith("*"));
|
|
109
|
+
for (let index = 0;; index++) {
|
|
110
|
+
const target = targetPatternParts[index];
|
|
111
|
+
const route = routePatternParts[index];
|
|
112
|
+
if (target === void 0 || route === void 0) {
|
|
113
|
+
const rest = target ?? route;
|
|
114
|
+
return rest === void 0 || isCatchAll(rest) && rest.endsWith("*");
|
|
115
|
+
}
|
|
116
|
+
if (isCatchAll(target) || isCatchAll(route)) return true;
|
|
117
|
+
if (!isParam(target) && !isParam(route) && target !== route) return false;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Every intercepting page once, with its classification. A slot's intercepts
|
|
122
|
+
* are listed on each route that shares the slot. The intercepted response also
|
|
123
|
+
* renders branches of its source route that the intercepting page's tree
|
|
124
|
+
* doesn't cover, such as other slots, so a source route that renders
|
|
125
|
+
* dynamically makes the intercept dynamic too. The client also counts the
|
|
126
|
+
* descendant route an interception context resolves to.
|
|
127
|
+
*/
|
|
128
|
+
function collectClassifiedIntercepts(routes, classifier) {
|
|
129
|
+
const sources = /* @__PURE__ */ new Map();
|
|
130
|
+
const add = (intercept, layoutPaths, route) => {
|
|
131
|
+
const key = `${intercept.sourceMatchPattern}\0${intercept.pagePath}`;
|
|
132
|
+
const seen = sources.get(key);
|
|
133
|
+
if (seen && (seen.route.pattern === intercept.sourceMatchPattern || route.pattern !== intercept.sourceMatchPattern)) return;
|
|
134
|
+
sources.set(key, {
|
|
135
|
+
intercept,
|
|
136
|
+
layoutPaths,
|
|
137
|
+
route
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
for (const route of routes) {
|
|
141
|
+
for (const slot of route.parallelSlots) {
|
|
142
|
+
const slotLayoutPaths = slot.layoutPath ? [...route.layouts, slot.layoutPath] : route.layouts;
|
|
143
|
+
for (const intercept of slot.interceptingRoutes) add(intercept, slotLayoutPaths, route);
|
|
144
|
+
}
|
|
145
|
+
for (const intercept of route.siblingIntercepts) add(intercept, route.layouts, route);
|
|
146
|
+
}
|
|
147
|
+
return [...sources.values()].map(({ intercept, layoutPaths, route }) => {
|
|
148
|
+
const rendersDynamically = classifier.intercept(intercept, [...layoutPaths, ...intercept.layoutPaths]) || classifier.route(route);
|
|
149
|
+
const targetPatternParts = splitPatternParts(intercept.targetPattern);
|
|
150
|
+
return {
|
|
151
|
+
intercept: {
|
|
152
|
+
sourcePatternParts: splitPatternParts(intercept.sourceMatchPattern),
|
|
153
|
+
targetPatternParts,
|
|
154
|
+
...rendersDynamically ? { rendersDynamically: true } : {}
|
|
155
|
+
},
|
|
156
|
+
targetPatternParts
|
|
157
|
+
};
|
|
158
|
+
});
|
|
86
159
|
}
|
|
87
160
|
/**
|
|
88
161
|
* Generate the virtual module that holds the browser RouteManifest.
|
|
@@ -112,4 +112,5 @@ export declare function generateAppRequestRscEntry(appDir: string, routes: AppRo
|
|
|
112
112
|
export declare function generateRscEntry(appDir: string, routes: AppRoute[], middlewarePath?: string | null, metadataRoutes?: MetadataFileRoute[], globalErrorPath?: string | null, basePath?: string, trailingSlash?: boolean, config?: AppRouterConfig, instrumentationPath?: string | null, responseStageOnly?: boolean): string;
|
|
113
113
|
/** Generate the response-only App RSC graph used by the named cache stage. */
|
|
114
114
|
export declare function generateAppResponseRscEntry(appDir: string, routes: AppRoute[], _middlewarePath?: string | null, metadataRoutes?: MetadataFileRoute[], globalErrorPath?: string | null, basePath?: string, trailingSlash?: boolean, config?: AppRouterConfig, instrumentationPath?: string | null): string;
|
|
115
|
-
//#endregion
|
|
115
|
+
//#endregion
|
|
116
|
+
export {};
|
|
@@ -6,8 +6,8 @@ import { extractExportConstString, getAppRouteRenderEntryPath } from "../build/r
|
|
|
6
6
|
import { routePatternParts } from "../routing/route-pattern.js";
|
|
7
7
|
import { safeJsonStringify } from "../server/html.js";
|
|
8
8
|
import { DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES } from "../server/image-optimization.js";
|
|
9
|
-
import { buildAppRscManifestCode } from "./app-rsc-manifest.js";
|
|
10
9
|
import { classifyAppPageRouteStaticEligibility } from "../build/app-page-static-eligibility.js";
|
|
10
|
+
import { buildAppRscManifestCode } from "./app-rsc-manifest.js";
|
|
11
11
|
import { generateDevOriginCheckCode } from "../server/dev-origin-check.js";
|
|
12
12
|
import { ACTION_OWNER_MANIFEST_ID } from "../plugins/action-owner-manifest.js";
|
|
13
13
|
import fs from "node:fs";
|
|
@@ -46,7 +46,8 @@ const appPageRequestPath = resolveEntryPath("../server/app-page-request.js", imp
|
|
|
46
46
|
const appSegmentConfigPath = resolveEntryPath("../server/app-segment-config.js", import.meta.url);
|
|
47
47
|
const appRscRouteMatchingPath = resolveEntryPath("../server/app-rsc-route-matching.js", import.meta.url);
|
|
48
48
|
const appRscResponseStagePath = resolveEntryPath("../server/app-rsc-response-stage.js", import.meta.url);
|
|
49
|
-
const
|
|
49
|
+
const rscRenderStreamPath = resolveEntryPath("../server/rsc-render-stream.js", import.meta.url);
|
|
50
|
+
const appClientReferenceManifestPath = resolveEntryPath("../server/app-client-reference-manifest.js", import.meta.url);
|
|
50
51
|
const isrCachePath = resolveEntryPath("../server/isr-cache.js", import.meta.url);
|
|
51
52
|
const thenableParamsShimPath = resolveEntryPath("../shims/thenable-params.js", import.meta.url);
|
|
52
53
|
const appPageElementBuilderPath = resolveEntryPath("../server/app-page-element-builder.js", import.meta.url);
|
|
@@ -157,10 +158,18 @@ function buildAppRequestRouteMetadata(routes) {
|
|
|
157
158
|
interceptBranchSegments: intercept.branchSegments ?? [],
|
|
158
159
|
interceptLoadings: [],
|
|
159
160
|
interceptLoadingTreePositions: intercept.loadingTreePositions ?? [],
|
|
161
|
+
interceptNotFounds: [],
|
|
162
|
+
interceptNotFoundTreePositions: intercept.notFoundTreePositions ?? [],
|
|
160
163
|
interceptNotFoundBranchSegments: intercept.notFoundBranchSegments ?? intercept.branchSegments ?? [],
|
|
161
164
|
page: null,
|
|
162
165
|
notFound: null,
|
|
163
166
|
notFoundTreePosition: intercept.notFoundTreePosition ?? null,
|
|
167
|
+
interceptForbiddens: [],
|
|
168
|
+
interceptForbiddenTreePositions: intercept.forbiddenTreePositions ?? [],
|
|
169
|
+
interceptUnauthorizeds: [],
|
|
170
|
+
interceptUnauthorizedTreePositions: intercept.unauthorizedTreePositions ?? [],
|
|
171
|
+
interceptErrors: [],
|
|
172
|
+
interceptErrorTreePositions: intercept.errorTreePositions ?? [],
|
|
164
173
|
params: intercept.params
|
|
165
174
|
}))
|
|
166
175
|
}])),
|
|
@@ -175,10 +184,18 @@ function buildAppRequestRouteMetadata(routes) {
|
|
|
175
184
|
interceptBranchSegments: intercept.branchSegments ?? [],
|
|
176
185
|
interceptLoadings: [],
|
|
177
186
|
interceptLoadingTreePositions: intercept.loadingTreePositions ?? [],
|
|
187
|
+
interceptNotFounds: [],
|
|
188
|
+
interceptNotFoundTreePositions: intercept.notFoundTreePositions ?? [],
|
|
178
189
|
interceptNotFoundBranchSegments: intercept.notFoundBranchSegments ?? intercept.branchSegments ?? [],
|
|
179
190
|
page: null,
|
|
180
191
|
notFound: null,
|
|
181
192
|
notFoundTreePosition: intercept.notFoundTreePosition ?? null,
|
|
193
|
+
interceptForbiddens: [],
|
|
194
|
+
interceptForbiddenTreePositions: intercept.forbiddenTreePositions ?? [],
|
|
195
|
+
interceptUnauthorizeds: [],
|
|
196
|
+
interceptUnauthorizedTreePositions: intercept.unauthorizedTreePositions ?? [],
|
|
197
|
+
interceptErrors: [],
|
|
198
|
+
interceptErrorTreePositions: intercept.errorTreePositions ?? [],
|
|
182
199
|
params: intercept.params
|
|
183
200
|
}))
|
|
184
201
|
}));
|
|
@@ -515,16 +532,13 @@ import ${JSON.stringify(appRouteRequestBuiltInsPath)};` : ""}
|
|
|
515
532
|
import ${JSON.stringify(serverGlobalsPath)};
|
|
516
533
|
import __cacheabilityManifest from "virtual:vinext-cacheability-manifest";
|
|
517
534
|
export { __cacheabilityManifest };
|
|
518
|
-
import {
|
|
519
|
-
renderToReadableStream as _renderToReadableStream,
|
|
520
|
-
${hasServerActions ? `loadServerAction,
|
|
521
|
-
createTemporaryReferenceSet,` : ""}
|
|
522
|
-
} from ${JSON.stringify(hasServerActions ? "@vitejs/plugin-rsc/rsc" : "@vitejs/plugin-rsc/react/rsc")};
|
|
523
|
-
import {
|
|
535
|
+
${hasServerActions ? `import { loadServerAction, createTemporaryReferenceSet } from "@vitejs/plugin-rsc/rsc";\n` : ""}import {
|
|
524
536
|
createClientManifest as _createClientManifest,${hasServerActions ? `
|
|
525
537
|
createServerManifest as _createServerManifest,` : ""}
|
|
526
538
|
} from "@vitejs/plugin-rsc/core/rsc";
|
|
539
|
+
import { renderToReadableStream as _renderToReadableStream } from "@vitejs/plugin-rsc/vendor/react-server-dom/server.edge";
|
|
527
540
|
import { prerender as _prerender } from "@vitejs/plugin-rsc/vendor/react-server-dom/static.edge";
|
|
541
|
+
import { createClientReferenceChunksManifest } from ${JSON.stringify(appClientReferenceManifestPath)};
|
|
528
542
|
${hasServerActions ? `// plugin-rsc's decoders fix an unscoped server manifest; React's own take the
|
|
529
543
|
// manifest, so actions can scope the server references they decode per route.
|
|
530
544
|
import {
|
|
@@ -532,12 +546,18 @@ import {
|
|
|
532
546
|
decodeFormState as _decodeFormState,
|
|
533
547
|
decodeReply as _decodeReply,
|
|
534
548
|
} from "@vitejs/plugin-rsc/vendor/react-server-dom/server.edge";
|
|
535
|
-
` : ""}import {
|
|
549
|
+
` : ""}import { createRscRenderer } from ${JSON.stringify(rscRenderStreamPath)};
|
|
536
550
|
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
551
|
+
// Each render takes a fresh client manifest: in development, its references
|
|
552
|
+
// carry a new cache tag.
|
|
553
|
+
const __withClientReferenceChunks = createClientReferenceChunksManifest(
|
|
554
|
+
__pagesClientAssets.appClientReferenceChunks,
|
|
555
|
+
);
|
|
556
|
+
const renderToReadableStream = createRscRenderer((model, options) =>
|
|
557
|
+
_renderToReadableStream(model, __withClientReferenceChunks(_createClientManifest()), options),
|
|
540
558
|
);
|
|
559
|
+
const prerenderToReadableStream = (model, options) =>
|
|
560
|
+
_prerender(model, __withClientReferenceChunks(_createClientManifest()), options);
|
|
541
561
|
import { createElement } from "react";
|
|
542
562
|
import { getNavigationContext as _getNavigationContext } from "next/navigation";
|
|
543
563
|
import { configureMemoryCacheHandler as __configureMemoryCacheHandler } from "vinext/shims/cache-handler";
|
|
@@ -1133,9 +1153,11 @@ ${responseStageOnly ? "const __responseStageOptions = {" : "const __appRscHandle
|
|
|
1133
1153
|
observeMetadataSearchParamsAccess: buildOptions?.observeMetadataSearchParamsAccess === true,
|
|
1134
1154
|
observePageSearchParamsAccess: buildOptions?.observePageSearchParamsAccess === true,
|
|
1135
1155
|
isForceStatic: buildOptions?.isForceStatic === true,
|
|
1156
|
+
isUncacheableRender: buildOptions?.isUncacheableRender === true,
|
|
1136
1157
|
serveStreamingMetadata: buildOptions?.serveStreamingMetadata,
|
|
1137
1158
|
placeStreamedMetadataInHead: buildOptions?.placeStreamedMetadataInHead === true,
|
|
1138
1159
|
isProduction: process.env.NODE_ENV === "production",
|
|
1160
|
+
onHeadPrepared: buildOptions?.onHeadPrepared,
|
|
1139
1161
|
}, layoutParamAccess, displayPathname, scriptNonce);
|
|
1140
1162
|
},
|
|
1141
1163
|
clientReuseManifest,
|
|
@@ -1590,6 +1612,14 @@ ${responseStageOnly ? "const __responseStageOptions = {" : "const __appRscHandle
|
|
|
1590
1612
|
interceptNotFoundBranchSegments: intercept.interceptNotFoundBranchSegments,
|
|
1591
1613
|
interceptNotFound: intercept.notFound,
|
|
1592
1614
|
interceptNotFoundTreePosition: intercept.notFoundTreePosition,
|
|
1615
|
+
interceptForbiddens: intercept.interceptForbiddens,
|
|
1616
|
+
interceptForbiddenTreePositions: intercept.interceptForbiddenTreePositions,
|
|
1617
|
+
interceptUnauthorizeds: intercept.interceptUnauthorizeds,
|
|
1618
|
+
interceptUnauthorizedTreePositions: intercept.interceptUnauthorizedTreePositions,
|
|
1619
|
+
interceptErrors: intercept.interceptErrors,
|
|
1620
|
+
interceptErrorTreePositions: intercept.interceptErrorTreePositions,
|
|
1621
|
+
interceptNotFounds: intercept.interceptNotFounds,
|
|
1622
|
+
interceptNotFoundTreePositions: intercept.interceptNotFoundTreePositions,
|
|
1593
1623
|
interceptSlotId: intercept.slotId,
|
|
1594
1624
|
interceptSlotKey: intercept.slotKey,
|
|
1595
1625
|
interceptSourceMatchedUrl: interceptionContext,
|
|
@@ -60,4 +60,5 @@ export declare function rootBoundaryFiles(routes: readonly AppRoute[]): string[]
|
|
|
60
60
|
*/
|
|
61
61
|
export declare function rootBoundaryRouteFiles(routes: readonly AppRoute[]): string[];
|
|
62
62
|
export declare function buildAppRscManifestCode(options: BuildAppRscManifestCodeOptions): AppRscManifestCode;
|
|
63
|
-
//#endregion
|
|
63
|
+
//#endregion
|
|
64
|
+
export {};
|
|
@@ -95,6 +95,11 @@ function registerRouteModules(routes, imports) {
|
|
|
95
95
|
if (route.unauthorizedPaths) {
|
|
96
96
|
for (const up of route.unauthorizedPaths) if (up) imports.getLazyLoaderVar(up);
|
|
97
97
|
}
|
|
98
|
+
for (const boundaryPath of [
|
|
99
|
+
...route.segmentNotFoundPaths ?? [],
|
|
100
|
+
...route.segmentForbiddenPaths ?? [],
|
|
101
|
+
...route.segmentUnauthorizedPaths ?? []
|
|
102
|
+
]) imports.getLazyLoaderVar(boundaryPath);
|
|
98
103
|
for (const slot of route.parallelSlots) {
|
|
99
104
|
if (slot.pagePath) imports.getLazyLoaderVar(slot.pagePath);
|
|
100
105
|
if (slot.defaultPath) imports.getLazyLoaderVar(slot.defaultPath);
|
|
@@ -104,9 +109,14 @@ function registerRouteModules(routes, imports) {
|
|
|
104
109
|
for (const loadingPath of slot.loadingPaths ?? []) imports.getLazyLoaderVar(loadingPath);
|
|
105
110
|
if (slot.errorPath) imports.getLazyLoaderVar(slot.errorPath);
|
|
106
111
|
if (slot.notFoundPath) imports.getLazyLoaderVar(slot.notFoundPath);
|
|
112
|
+
for (const notFoundPath of slot.notFoundPaths ?? []) imports.getLazyLoaderVar(notFoundPath);
|
|
107
113
|
for (const ir of slot.interceptingRoutes) {
|
|
108
114
|
imports.getLazyLoaderVar(ir.pagePath);
|
|
109
115
|
if (ir.notFoundPath) imports.getLazyLoaderVar(ir.notFoundPath);
|
|
116
|
+
for (const forbiddenPath of ir.forbiddenPaths ?? []) imports.getLazyLoaderVar(forbiddenPath);
|
|
117
|
+
for (const unauthorizedPath of ir.unauthorizedPaths ?? []) imports.getLazyLoaderVar(unauthorizedPath);
|
|
118
|
+
for (const errorPath of ir.errorPaths ?? []) imports.getLazyLoaderVar(errorPath);
|
|
119
|
+
for (const notFoundPath of ir.notFoundPaths ?? []) imports.getLazyLoaderVar(notFoundPath);
|
|
110
120
|
for (const layoutPath of ir.layoutPaths) imports.getLazyLoaderVar(layoutPath);
|
|
111
121
|
for (const loadingPath of ir.loadingPaths ?? []) imports.getLazyLoaderVar(loadingPath);
|
|
112
122
|
}
|
|
@@ -114,6 +124,10 @@ function registerRouteModules(routes, imports) {
|
|
|
114
124
|
for (const ir of route.siblingIntercepts ?? []) {
|
|
115
125
|
imports.getLazyLoaderVar(ir.pagePath);
|
|
116
126
|
if (ir.notFoundPath) imports.getLazyLoaderVar(ir.notFoundPath);
|
|
127
|
+
for (const forbiddenPath of ir.forbiddenPaths ?? []) imports.getLazyLoaderVar(forbiddenPath);
|
|
128
|
+
for (const unauthorizedPath of ir.unauthorizedPaths ?? []) imports.getLazyLoaderVar(unauthorizedPath);
|
|
129
|
+
for (const errorPath of ir.errorPaths ?? []) imports.getLazyLoaderVar(errorPath);
|
|
130
|
+
for (const notFoundPath of ir.notFoundPaths ?? []) imports.getLazyLoaderVar(notFoundPath);
|
|
117
131
|
for (const layoutPath of ir.layoutPaths) imports.getLazyLoaderVar(layoutPath);
|
|
118
132
|
for (const loadingPath of ir.loadingPaths ?? []) imports.getLazyLoaderVar(loadingPath);
|
|
119
133
|
}
|
|
@@ -153,11 +167,23 @@ function buildRouteEntries(routes, imports) {
|
|
|
153
167
|
__loadInterceptLoadings: ${lazyLoaderArray(ir.loadingPaths ?? [], imports)},
|
|
154
168
|
interceptLoadingTreePositions: ${JSON.stringify(ir.loadingTreePositions ?? [])},
|
|
155
169
|
interceptNotFoundBranchSegments: ${JSON.stringify(ir.notFoundBranchSegments ?? ir.branchSegments ?? [])},
|
|
170
|
+
interceptNotFounds: ${moduleArray(ir.notFoundPaths?.length ?? 0)},
|
|
171
|
+
__loadInterceptNotFounds: ${lazyLoaderArray(ir.notFoundPaths ?? [], imports)},
|
|
172
|
+
interceptNotFoundTreePositions: ${JSON.stringify(ir.notFoundTreePositions ?? [])},
|
|
156
173
|
page: null,
|
|
157
174
|
__pageLoader: ${imports.getLazyLoaderVar(ir.pagePath)},
|
|
158
175
|
notFound: null,
|
|
159
176
|
__loadNotFound: ${ir.notFoundPath ? imports.getLazyLoaderVar(ir.notFoundPath) : "null"},
|
|
160
177
|
notFoundTreePosition: ${ir.notFoundTreePosition ?? "null"},
|
|
178
|
+
interceptForbiddens: ${moduleArray(ir.forbiddenPaths?.length ?? 0)},
|
|
179
|
+
__loadInterceptForbiddens: ${lazyLoaderArray(ir.forbiddenPaths ?? [], imports)},
|
|
180
|
+
interceptForbiddenTreePositions: ${JSON.stringify(ir.forbiddenTreePositions ?? [])},
|
|
181
|
+
interceptUnauthorizeds: ${moduleArray(ir.unauthorizedPaths?.length ?? 0)},
|
|
182
|
+
__loadInterceptUnauthorizeds: ${lazyLoaderArray(ir.unauthorizedPaths ?? [], imports)},
|
|
183
|
+
interceptUnauthorizedTreePositions: ${JSON.stringify(ir.unauthorizedTreePositions ?? [])},
|
|
184
|
+
interceptErrors: ${moduleArray(ir.errorPaths?.length ?? 0)},
|
|
185
|
+
__loadInterceptErrors: ${lazyLoaderArray(ir.errorPaths ?? [], imports)},
|
|
186
|
+
interceptErrorTreePositions: ${JSON.stringify(ir.errorTreePositions ?? [])},
|
|
161
187
|
params: ${JSON.stringify(ir.params)},
|
|
162
188
|
}`);
|
|
163
189
|
const slotEntries = route.parallelSlots.map((slot) => {
|
|
@@ -174,11 +200,23 @@ function buildRouteEntries(routes, imports) {
|
|
|
174
200
|
__loadInterceptLoadings: ${lazyLoaderArray(ir.loadingPaths ?? [], imports)},
|
|
175
201
|
interceptLoadingTreePositions: ${JSON.stringify(ir.loadingTreePositions ?? [])},
|
|
176
202
|
interceptNotFoundBranchSegments: ${JSON.stringify(ir.notFoundBranchSegments ?? ir.branchSegments ?? [])},
|
|
203
|
+
interceptNotFounds: ${moduleArray(ir.notFoundPaths?.length ?? 0)},
|
|
204
|
+
__loadInterceptNotFounds: ${lazyLoaderArray(ir.notFoundPaths ?? [], imports)},
|
|
205
|
+
interceptNotFoundTreePositions: ${JSON.stringify(ir.notFoundTreePositions ?? [])},
|
|
177
206
|
page: null,
|
|
178
207
|
__pageLoader: ${imports.getLazyLoaderVar(ir.pagePath)},
|
|
179
208
|
notFound: null,
|
|
180
209
|
__loadNotFound: ${ir.notFoundPath ? imports.getLazyLoaderVar(ir.notFoundPath) : "null"},
|
|
181
210
|
notFoundTreePosition: ${ir.notFoundTreePosition ?? "null"},
|
|
211
|
+
interceptForbiddens: ${moduleArray(ir.forbiddenPaths?.length ?? 0)},
|
|
212
|
+
__loadInterceptForbiddens: ${lazyLoaderArray(ir.forbiddenPaths ?? [], imports)},
|
|
213
|
+
interceptForbiddenTreePositions: ${JSON.stringify(ir.forbiddenTreePositions ?? [])},
|
|
214
|
+
interceptUnauthorizeds: ${moduleArray(ir.unauthorizedPaths?.length ?? 0)},
|
|
215
|
+
__loadInterceptUnauthorizeds: ${lazyLoaderArray(ir.unauthorizedPaths ?? [], imports)},
|
|
216
|
+
interceptUnauthorizedTreePositions: ${JSON.stringify(ir.unauthorizedTreePositions ?? [])},
|
|
217
|
+
interceptErrors: ${moduleArray(ir.errorPaths?.length ?? 0)},
|
|
218
|
+
__loadInterceptErrors: ${lazyLoaderArray(ir.errorPaths ?? [], imports)},
|
|
219
|
+
interceptErrorTreePositions: ${JSON.stringify(ir.errorTreePositions ?? [])},
|
|
182
220
|
params: ${JSON.stringify(ir.params)},
|
|
183
221
|
}`);
|
|
184
222
|
return ` ${JSON.stringify(slot.key)}: {
|
|
@@ -204,6 +242,9 @@ function buildRouteEntries(routes, imports) {
|
|
|
204
242
|
notFound: null,
|
|
205
243
|
__loadNotFound: ${slot.notFoundPath ? imports.getLazyLoaderVar(slot.notFoundPath) : "null"},
|
|
206
244
|
notFoundTreePosition: ${slot.notFoundTreePosition ?? "null"},
|
|
245
|
+
notFounds: ${moduleArray(slot.notFoundPaths?.length ?? 0)},
|
|
246
|
+
__loadNotFounds: ${lazyLoaderArray(slot.notFoundPaths ?? [], imports)},
|
|
247
|
+
notFoundTreePositions: ${JSON.stringify(slot.notFoundTreePositions ?? [])},
|
|
207
248
|
layoutIndex: ${slot.layoutIndex},
|
|
208
249
|
routeSegments: ${JSON.stringify(slot.routeSegments)},
|
|
209
250
|
slotPatternParts: ${slot.slotPatternParts ? JSON.stringify(slot.slotPatternParts) : "null"},
|
|
@@ -214,6 +255,9 @@ ${interceptEntries.join(",\n")}
|
|
|
214
255
|
}`;
|
|
215
256
|
});
|
|
216
257
|
const layoutErrorPaths = route.layoutErrorPaths ?? [];
|
|
258
|
+
const segmentNotFoundPaths = route.segmentNotFoundPaths ?? [];
|
|
259
|
+
const segmentForbiddenPaths = route.segmentForbiddenPaths ?? [];
|
|
260
|
+
const segmentUnauthorizedPaths = route.segmentUnauthorizedPaths ?? [];
|
|
217
261
|
const errorPaths = route.errorPaths ?? [];
|
|
218
262
|
const layoutErrorLoaders = lazyLoaderArray(layoutErrorPaths, imports);
|
|
219
263
|
const errorLoaders = lazyLoaderArray(errorPaths, imports);
|
|
@@ -276,6 +320,15 @@ ${siblingInterceptEntries.join(",\n")}
|
|
|
276
320
|
unauthorizedTreePosition: ${route.unauthorizedTreePosition ?? "null"},
|
|
277
321
|
unauthorizeds: ${moduleArray(unauthorizedPaths.length)},
|
|
278
322
|
__loadUnauthorizeds: ${unauthorizedLoaders},
|
|
323
|
+
segmentNotFounds: ${moduleArray(segmentNotFoundPaths.length)},
|
|
324
|
+
__loadSegmentNotFounds: ${lazyLoaderArray(segmentNotFoundPaths, imports)},
|
|
325
|
+
segmentNotFoundTreePositions: ${JSON.stringify(route.segmentNotFoundTreePositions ?? [])},
|
|
326
|
+
segmentForbiddens: ${moduleArray(segmentForbiddenPaths.length)},
|
|
327
|
+
__loadSegmentForbiddens: ${lazyLoaderArray(segmentForbiddenPaths, imports)},
|
|
328
|
+
segmentForbiddenTreePositions: ${JSON.stringify(route.segmentForbiddenTreePositions ?? [])},
|
|
329
|
+
segmentUnauthorizeds: ${moduleArray(segmentUnauthorizedPaths.length)},
|
|
330
|
+
__loadSegmentUnauthorizeds: ${lazyLoaderArray(segmentUnauthorizedPaths, imports)},
|
|
331
|
+
segmentUnauthorizedTreePositions: ${JSON.stringify(route.segmentUnauthorizedTreePositions ?? [])},
|
|
279
332
|
}`;
|
|
280
333
|
});
|
|
281
334
|
}
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { findFileWithExts };
|
|
1
|
+
export { findFileWithExts } from "../routing/file-matcher.js";
|
|
@@ -17,4 +17,5 @@ export declare function generatePagesRequestEntry(pagesDir: string, nextConfig:
|
|
|
17
17
|
*/
|
|
18
18
|
export declare function generatePagesResponseEntry(pagesDir: string, nextConfig: ResolvedNextConfig, fileMatcher: ReturnType<typeof createValidFileMatcher>, middlewarePath: string | null, instrumentationPath: string | null, prerenderSecret?: string): Promise<string>;
|
|
19
19
|
export declare function generateServerEntry(pagesDir: string, nextConfig: ResolvedNextConfig, fileMatcher: ReturnType<typeof createValidFileMatcher>, middlewarePath: string | null, instrumentationPath: string | null, publicFiles?: string[], options?: GeneratePagesServerEntryOptions): Promise<string>;
|
|
20
|
-
//#endregion
|
|
20
|
+
//#endregion
|
|
21
|
+
export {};
|
|
@@ -318,7 +318,7 @@ export async function runMiddleware(request, ctx) {
|
|
|
318
318
|
return `
|
|
319
319
|
import ${JSON.stringify(_serverGlobalsPath)};
|
|
320
320
|
import React from "react";
|
|
321
|
-
import { renderToReadableStream } from "react-dom/server
|
|
321
|
+
import { renderToReadableStream } from "react-dom/server";
|
|
322
322
|
import { resetSSRHead, getSSRHeadHTML, setDocumentInitialHead } from "next/head";
|
|
323
323
|
import { flushPreloads } from "next/dynamic";
|
|
324
324
|
import Router, { setSSRContext, wrapWithRouterContext, getPagesNavigationIsReadyFromSerializedState } from "next/router";
|
|
@@ -21,4 +21,5 @@ export declare function resolveEntryPath(rel: string, base: string): string;
|
|
|
21
21
|
*/
|
|
22
22
|
export declare function resolveRuntimeEntryModule(name: string): string;
|
|
23
23
|
export declare function resolveClientRuntimeModule(name: string): string;
|
|
24
|
+
export declare function resolveShimRuntimeModule(name: string): string;
|
|
24
25
|
//#endregion
|
|
@@ -30,6 +30,9 @@ function resolveRuntimeEntryModule(name) {
|
|
|
30
30
|
function resolveClientRuntimeModule(name) {
|
|
31
31
|
return resolveRuntimeModulePath("client", name);
|
|
32
32
|
}
|
|
33
|
+
function resolveShimRuntimeModule(name) {
|
|
34
|
+
return resolveRuntimeModulePath("shims", name);
|
|
35
|
+
}
|
|
33
36
|
function resolveRuntimeModulePath(directory, name) {
|
|
34
37
|
for (const ext of [
|
|
35
38
|
".ts",
|
|
@@ -43,4 +46,4 @@ function resolveRuntimeModulePath(directory, name) {
|
|
|
43
46
|
return resolveEntryPath(`../${directory}/${name}.js`, import.meta.url);
|
|
44
47
|
}
|
|
45
48
|
//#endregion
|
|
46
|
-
export { resolveClientRuntimeModule, resolveEntryPath, resolveRuntimeEntryModule };
|
|
49
|
+
export { resolveClientRuntimeModule, resolveEntryPath, resolveRuntimeEntryModule, resolveShimRuntimeModule };
|
|
@@ -57,4 +57,5 @@ export declare const VIRTUAL_IMAGE_ADAPTERS = "virtual:vinext-image-adapters";
|
|
|
57
57
|
* given config. Always exports `registerConfiguredImageOptimizer(env)`.
|
|
58
58
|
*/
|
|
59
59
|
export declare function generateImageAdaptersModule(images?: VinextImageConfig): string;
|
|
60
|
-
//#endregion
|
|
60
|
+
//#endregion
|
|
61
|
+
export {};
|