vinext 1.0.0-beta.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +150 -92
- package/THIRD_PARTY_LICENSES.md +25 -0
- package/dist/_virtual/_rolldown/runtime.js +25 -0
- package/dist/build/action-owner-manifest.d.ts +8 -9
- package/dist/build/action-owner-manifest.js +23 -5
- package/dist/build/assets-ignore.d.ts +3 -4
- package/dist/build/clean-output.d.ts +2 -3
- package/dist/build/client-build-config.d.ts +40 -12
- package/dist/build/client-build-config.js +76 -6
- package/dist/build/css-url-assets.d.ts +4 -5
- package/dist/build/css-url-assets.js +5 -2
- package/dist/build/google-fonts/build-url.d.ts +3 -4
- package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
- package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
- package/dist/build/google-fonts/font-metadata.d.ts +2 -3
- package/dist/build/google-fonts/get-axes.d.ts +2 -3
- package/dist/build/google-fonts/sort-variants.d.ts +2 -3
- package/dist/build/google-fonts/validate.d.ts +2 -3
- package/dist/build/google-fonts/validate.js +8 -4
- package/dist/build/inject-pregenerated-paths.d.ts +2 -3
- package/dist/build/inject-pregenerated-paths.js +16 -14
- package/dist/build/inline-css.d.ts +3 -4
- package/dist/build/layout-classification-types.d.ts +4 -5
- package/dist/build/layout-classification.d.ts +7 -8
- package/dist/build/lifecycle.d.ts +42 -0
- package/dist/build/lifecycle.js +253 -0
- package/dist/build/module-dependency-cache.d.ts +2 -3
- package/dist/build/next-client-runtime-manifests.d.ts +4 -5
- package/dist/build/nitro-route-rules.d.ts +6 -7
- package/dist/build/nitro-route-rules.js +1 -1
- package/dist/build/pages-client-assets-module.d.ts +4 -8
- package/dist/build/pages-client-assets-module.js +1 -13
- package/dist/build/precompress.d.ts +2 -3
- package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
- package/dist/build/prerender-cloudflare-loader.js +49 -0
- package/dist/build/prerender-paths.d.ts +36 -11
- package/dist/build/prerender-paths.js +273 -97
- package/dist/build/prerender-phase.d.ts +2 -3
- package/dist/build/prerender-server-entry.js +11 -3
- package/dist/build/prerender-server-pool.d.ts +9 -6
- package/dist/build/prerender-server-pool.js +8 -5
- package/dist/build/prerender.d.ts +65 -15
- package/dist/build/prerender.js +139 -43
- package/dist/build/preview-credentials.d.ts +5 -6
- package/dist/build/preview-credentials.js +2 -2
- package/dist/build/public-dir-conflict.d.ts +5 -6
- package/dist/build/public-dir-conflict.js +2 -1
- package/dist/build/report.d.ts +24 -20
- package/dist/build/report.js +10 -2
- package/dist/build/route-classification-injector.d.ts +2 -3
- package/dist/build/route-classification-manifest.d.ts +5 -6
- package/dist/build/run-prerender.d.ts +11 -9
- package/dist/build/run-prerender.js +25 -16
- package/dist/build/server-entry.d.ts +4 -0
- package/dist/build/server-entry.js +28 -0
- package/dist/build/server-manifest.d.ts +8 -3
- package/dist/build/server-manifest.js +14 -2
- package/dist/build/ssr-manifest.d.ts +5 -6
- package/dist/build/standalone.d.ts +2 -3
- package/dist/build/standalone.js +2 -2
- package/dist/build/static-export.d.ts +6 -7
- package/dist/cache/cache-adapters-virtual.d.ts +60 -20
- package/dist/cache/cache-adapters-virtual.js +50 -7
- package/dist/check.d.ts +11 -10
- package/dist/check.js +467 -176
- package/dist/cli-args.d.ts +7 -16
- package/dist/cli-args.js +2 -45
- package/dist/cli-dev-config.d.ts +10 -7
- package/dist/cli-dev-config.js +160 -3
- package/dist/cli.js +124 -442
- package/dist/client/app-nav-failure-handler.d.ts +6 -7
- package/dist/client/client-rewrite-matcher.d.ts +2 -3
- package/dist/client/client-rewrites.d.ts +4 -5
- package/dist/client/dev-error-overlay-store.d.ts +13 -14
- package/dist/client/dev-error-overlay.d.ts +15 -15
- package/dist/client/dev-error-overlay.js +8 -5
- package/dist/client/instrumentation-client-inject.d.ts +3 -4
- package/dist/client/instrumentation-client-state.d.ts +5 -6
- package/dist/client/instrumentation-client.d.ts +3 -4
- package/dist/client/navigation-runtime.d.ts +21 -17
- package/dist/client/navigation-runtime.js +2 -1
- package/dist/client/pages-router-link-navigation.d.ts +4 -5
- package/dist/client/react-instance.d.ts +2 -3
- package/dist/client/validate-module-path.d.ts +2 -3
- package/dist/client/vinext-next-data.d.ts +7 -10
- package/dist/client/window-next.d.ts +4 -5
- package/dist/config/config-matchers.d.ts +16 -16
- package/dist/config/config-matchers.js +2 -4
- package/dist/config/dotenv.d.ts +3 -4
- package/dist/config/dotenv.js +2 -1
- package/dist/config/next-config.d.ts +31 -27
- package/dist/config/next-config.js +163 -16
- package/dist/config/prerender.d.ts +20 -16
- package/dist/config/prerender.js +10 -4
- package/dist/config/request-context.d.ts +5 -6
- package/dist/config/server-external-packages.d.ts +14 -3
- package/dist/config/server-external-packages.js +37 -3
- package/dist/config/tsconfig-paths.d.ts +3 -4
- package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
- package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
- package/dist/entries/app-browser-entry.d.ts +4 -5
- package/dist/entries/app-browser-entry.js +1 -3
- package/dist/entries/app-rsc-entry.d.ts +10 -3
- package/dist/entries/app-rsc-entry.js +502 -51
- package/dist/entries/app-rsc-manifest.d.ts +4 -3
- package/dist/entries/app-rsc-manifest.js +26 -8
- package/dist/entries/app-ssr-entry.d.ts +2 -3
- package/dist/entries/app-ssr-entry.js +8 -1
- package/dist/entries/pages-client-entry.d.ts +3 -3
- package/dist/entries/pages-client-entry.js +17 -2
- package/dist/entries/pages-server-entry.d.ts +13 -3
- package/dist/entries/pages-server-entry.js +234 -33
- package/dist/entries/runtime-entry-module.d.ts +4 -5
- package/dist/image/image-adapters-virtual.d.ts +4 -5
- package/dist/index.d.ts +10 -11
- package/dist/index.js +711 -189
- package/dist/init-cloudflare.d.ts +26 -17
- package/dist/init-cloudflare.js +710 -102
- package/dist/init-platform.d.ts +26 -22
- package/dist/init-platform.js +85 -29
- package/dist/init.d.ts +19 -13
- package/dist/init.js +123 -41
- package/dist/plugins/action-owner-manifest.d.ts +3 -4
- package/dist/plugins/action-owner-manifest.js +10 -3
- package/dist/plugins/ast-scope.d.ts +10 -11
- package/dist/plugins/ast-scope.js +10 -22
- package/dist/plugins/ast-utils.d.ts +16 -29
- package/dist/plugins/ast-utils.js +27 -71
- package/dist/plugins/async-hooks-stub.d.ts +2 -3
- package/dist/plugins/client-reference-dedup.d.ts +4 -5
- package/dist/plugins/css-data-url.d.ts +2 -3
- package/dist/plugins/css-module-imports.d.ts +3 -4
- package/dist/plugins/css-module-imports.js +1 -1
- package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
- package/dist/plugins/dynamic-preload-metadata.js +55 -154
- package/dist/plugins/environment.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
- package/dist/plugins/extensionless-dynamic-import.js +6 -10
- package/dist/plugins/fonts.d.ts +10 -11
- package/dist/plugins/fonts.js +4 -3
- package/dist/plugins/ignore-dynamic-requests.d.ts +3 -4
- package/dist/plugins/ignore-dynamic-requests.js +60 -89
- package/dist/plugins/import-meta-url.d.ts +6 -7
- package/dist/plugins/import-meta-url.js +31 -43
- package/dist/plugins/instrumentation-client.d.ts +3 -3
- package/dist/plugins/instrumentation-client.js +46 -10
- package/dist/plugins/middleware-export-validation.d.ts +3 -4
- package/dist/plugins/middleware-export-validation.js +3 -3
- package/dist/plugins/middleware-server-only.d.ts +2 -3
- package/dist/plugins/og-asset-ownership.d.ts +3 -4
- package/dist/plugins/og-assets.d.ts +4 -5
- package/dist/plugins/og-assets.js +32 -13
- package/dist/plugins/og-harfbuzz.d.ts +24 -0
- package/dist/plugins/og-harfbuzz.js +260 -0
- package/dist/plugins/optimize-imports.d.ts +7 -7
- package/dist/plugins/optimize-imports.js +32 -44
- package/dist/plugins/pages-node-externals.d.ts +2 -3
- package/dist/plugins/pages-node-externals.js +6 -11
- package/dist/plugins/postcss.d.ts +8 -4
- package/dist/plugins/postcss.js +1 -1
- package/dist/plugins/remove-console.d.ts +2 -3
- package/dist/plugins/remove-console.js +0 -1
- package/dist/plugins/require-condition-resolution.d.ts +3 -4
- package/dist/plugins/require-condition-resolution.js +17 -18
- package/dist/plugins/require-context.d.ts +2 -3
- package/dist/plugins/require-context.js +13 -21
- package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
- package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
- package/dist/plugins/rsc-client-shim-excludes.js +1 -0
- package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
- package/dist/plugins/sass.d.ts +7 -8
- package/dist/plugins/sass.js +7 -4
- package/dist/plugins/server-externals-manifest.d.ts +2 -3
- package/dist/plugins/strip-server-exports.d.ts +5 -6
- package/dist/plugins/strip-server-exports.js +1 -1
- package/dist/plugins/styled-jsx.d.ts +2 -3
- package/dist/plugins/styled-jsx.js +7 -7
- package/dist/plugins/transform-cache.d.ts +2 -3
- package/dist/plugins/transform-result.d.ts +3 -4
- package/dist/plugins/transitive-externals.d.ts +2 -3
- package/dist/plugins/typeof-window.d.ts +6 -7
- package/dist/plugins/typeof-window.js +30 -31
- package/dist/plugins/use-cache-callable.d.ts +2 -5
- package/dist/plugins/use-cache-callable.js +43 -22
- package/dist/plugins/wasm-module-import.d.ts +2 -3
- package/dist/plugins/worker-image-imports.d.ts +2 -3
- package/dist/plugins/worker-image-imports.js +6 -8
- package/dist/routing/app-route-graph.d.ts +19 -19
- package/dist/routing/app-route-graph.js +3 -2
- package/dist/routing/app-router.d.ts +19 -6
- package/dist/routing/app-router.js +24 -2
- package/dist/routing/file-matcher.d.ts +9 -10
- package/dist/routing/pages-router.d.ts +6 -6
- package/dist/routing/pages-router.js +1 -1
- package/dist/routing/route-matching.d.ts +4 -5
- package/dist/routing/route-matching.js +4 -2
- package/dist/routing/route-pattern.d.ts +13 -14
- package/dist/routing/route-trie.d.ts +5 -6
- package/dist/routing/route-validation.d.ts +3 -4
- package/dist/routing/route-validation.js +12 -11
- package/dist/routing/utils.d.ts +13 -14
- package/dist/server/accept-encoding.d.ts +9 -10
- package/dist/server/api-handler.d.ts +2 -3
- package/dist/server/api-handler.js +9 -6
- package/dist/server/app-action-forwarding.d.ts +3 -4
- package/dist/server/app-action-forwarding.js +1 -1
- package/dist/server/app-action-request.d.ts +2 -3
- package/dist/server/app-bfcache-id.d.ts +3 -4
- package/dist/server/app-bfcache-identity.d.ts +8 -9
- package/dist/server/app-browser-action-result.d.ts +15 -16
- package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
- package/dist/server/app-browser-entry.js +87 -34
- package/dist/server/app-browser-error.d.ts +5 -6
- package/dist/server/app-browser-error.js +9 -3
- package/dist/server/app-browser-history-controller.d.ts +4 -5
- package/dist/server/app-browser-hydration.d.ts +16 -6
- package/dist/server/app-browser-hydration.js +14 -1
- package/dist/server/app-browser-interception-context.d.ts +3 -4
- package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
- package/dist/server/app-browser-navigation-abort.d.ts +3 -4
- package/dist/server/app-browser-navigation-controller.d.ts +8 -8
- package/dist/server/app-browser-navigation-controller.js +8 -4
- package/dist/server/app-browser-navigation-response.d.ts +2 -3
- package/dist/server/app-browser-popstate.d.ts +4 -5
- package/dist/server/app-browser-prefetch-response.d.ts +5 -6
- package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
- package/dist/server/app-browser-server-action-client.d.ts +7 -6
- package/dist/server/app-browser-server-action-client.js +9 -5
- package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
- package/dist/server/app-browser-state.d.ts +17 -17
- package/dist/server/app-browser-state.js +6 -2
- package/dist/server/app-browser-stream.d.ts +4 -5
- package/dist/server/app-browser-stream.js +8 -6
- package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
- package/dist/server/app-browser-visible-commit.d.ts +6 -7
- package/dist/server/app-client-reference-preloader.d.ts +2 -3
- package/dist/server/app-elements-wire-key.d.ts +25 -0
- package/dist/server/app-elements-wire-key.js +69 -0
- package/dist/server/app-elements-wire.d.ts +34 -53
- package/dist/server/app-elements-wire.js +4 -75
- package/dist/server/app-elements.d.ts +5 -5
- package/dist/server/app-elements.js +1 -1
- package/dist/server/app-fallback-renderer.d.ts +4 -4
- package/dist/server/app-fallback-renderer.js +6 -6
- package/dist/server/app-fetch-tracing.d.ts +15 -0
- package/dist/server/app-fetch-tracing.js +38 -0
- package/dist/server/app-history-state.d.ts +26 -27
- package/dist/server/app-history-state.js +19 -11
- package/dist/server/app-hook-warning-suppression.d.ts +2 -3
- package/dist/server/app-hydration-cache-publication.d.ts +3 -4
- package/dist/server/app-inline-css-client.d.ts +3 -4
- package/dist/server/app-interception-context-header.d.ts +2 -3
- package/dist/server/app-layout-param-observation.d.ts +7 -8
- package/dist/server/app-metadata-tracing.d.ts +12 -0
- package/dist/server/app-metadata-tracing.js +17 -0
- package/dist/server/app-middleware.d.ts +7 -7
- package/dist/server/app-middleware.js +2 -3
- package/dist/server/app-mounted-slots-header.d.ts +2 -3
- package/dist/server/app-mounted-slots-header.js +2 -2
- package/dist/server/app-optimistic-routing.d.ts +10 -11
- package/dist/server/app-optimistic-routing.js +3 -2
- package/dist/server/app-page-boundary-render.d.ts +6 -6
- package/dist/server/app-page-boundary-render.js +10 -4
- package/dist/server/app-page-boundary.d.ts +9 -10
- package/dist/server/app-page-boundary.js +1 -1
- package/dist/server/app-page-cache-finalizer.d.ts +18 -9
- package/dist/server/app-page-cache-finalizer.js +51 -16
- package/dist/server/app-page-cache-render.d.ts +8 -5
- package/dist/server/app-page-cache-render.js +22 -5
- package/dist/server/app-page-cache.d.ts +28 -9
- package/dist/server/app-page-cache.js +95 -24
- package/dist/server/app-page-dispatch.d.ts +34 -12
- package/dist/server/app-page-dispatch.js +181 -64
- package/dist/server/app-page-element-builder.d.ts +13 -11
- package/dist/server/app-page-element-builder.js +104 -61
- package/dist/server/app-page-execution.d.ts +14 -14
- package/dist/server/app-page-execution.js +11 -7
- package/dist/server/app-page-head.d.ts +19 -16
- package/dist/server/app-page-head.js +25 -25
- package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
- package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
- package/dist/server/app-page-method.d.ts +5 -11
- package/dist/server/app-page-method.js +2 -9
- package/dist/server/app-page-params.d.ts +5 -6
- package/dist/server/app-page-ppr-runtime.d.ts +2 -2
- package/dist/server/app-page-probe.d.ts +5 -6
- package/dist/server/app-page-probe.js +5 -4
- package/dist/server/app-page-render-identity.d.ts +4 -5
- package/dist/server/app-page-render-observation.d.ts +8 -9
- package/dist/server/app-page-render-observation.js +1 -1
- package/dist/server/app-page-render.d.ts +41 -6
- package/dist/server/app-page-render.js +171 -25
- package/dist/server/app-page-request.d.ts +10 -9
- package/dist/server/app-page-request.js +16 -12
- package/dist/server/app-page-response.d.ts +20 -9
- package/dist/server/app-page-response.js +30 -12
- package/dist/server/app-page-route-wiring.d.ts +15 -15
- package/dist/server/app-page-route-wiring.js +31 -24
- package/dist/server/app-page-search-params-observation.d.ts +26 -5
- package/dist/server/app-page-search-params-observation.js +42 -6
- package/dist/server/app-page-segment-plan.d.ts +2 -3
- package/dist/server/app-page-segment-state.d.ts +11 -12
- package/dist/server/app-page-stream.d.ts +27 -11
- package/dist/server/app-page-stream.js +34 -6
- package/dist/server/app-page-tracing.d.ts +33 -0
- package/dist/server/app-page-tracing.js +49 -0
- package/dist/server/app-pages-bridge.d.ts +6 -6
- package/dist/server/app-pages-bridge.js +17 -4
- package/dist/server/app-post-middleware-context.d.ts +2 -3
- package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
- package/dist/server/app-ppr-fallback-shell-render.js +3 -2
- package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
- package/dist/server/app-prerender-endpoints.d.ts +5 -5
- package/dist/server/app-prerender-endpoints.js +3 -1
- package/dist/server/app-prerender-static-params.d.ts +15 -7
- package/dist/server/app-prerender-static-params.js +24 -9
- package/dist/server/app-render-dependency.d.ts +14 -13
- package/dist/server/app-render-dependency.js +5 -1
- package/dist/server/app-request-context.d.ts +3 -4
- package/dist/server/app-request-stage-context.d.ts +5 -0
- package/dist/server/app-request-stage-context.js +11 -0
- package/dist/server/app-request-stage-dispatch.d.ts +25 -0
- package/dist/server/app-request-stage-dispatch.js +54 -0
- package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
- package/dist/server/app-request-stage-independent-entry.js +115 -0
- package/dist/server/app-response-header-provenance.d.ts +13 -7
- package/dist/server/app-response-header-provenance.js +34 -1
- package/dist/server/app-response-stage-entry.d.ts +9 -0
- package/dist/server/app-response-stage-entry.js +87 -0
- package/dist/server/app-route-handler-cache.d.ts +2 -3
- package/dist/server/app-route-handler-cache.js +46 -34
- package/dist/server/app-route-handler-dispatch.d.ts +3 -3
- package/dist/server/app-route-handler-dispatch.js +68 -54
- package/dist/server/app-route-handler-execution.d.ts +17 -13
- package/dist/server/app-route-handler-execution.js +69 -18
- package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
- package/dist/server/app-route-handler-middleware-context.js +15 -0
- package/dist/server/app-route-handler-policy.d.ts +11 -11
- package/dist/server/app-route-handler-response.d.ts +9 -10
- package/dist/server/app-route-handler-response.js +2 -0
- package/dist/server/app-route-handler-runtime.d.ts +9 -10
- package/dist/server/app-route-handler-runtime.js +20 -16
- package/dist/server/app-route-module-loader.d.ts +6 -7
- package/dist/server/app-route-request-built-ins.d.ts +3 -4
- package/dist/server/app-route-tree-prefetch.d.ts +6 -7
- package/dist/server/app-route-tree-prefetch.js +2 -1
- package/dist/server/app-router-entry.d.ts +2 -0
- package/dist/server/app-router-entry.js +28 -8
- package/dist/server/app-rsc-cache-busting.d.ts +34 -27
- package/dist/server/app-rsc-cache-busting.js +14 -2
- package/dist/server/app-rsc-combined-handler.d.ts +9 -0
- package/dist/server/app-rsc-combined-handler.js +11 -0
- package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
- package/dist/server/app-rsc-error-handler.d.ts +12 -6
- package/dist/server/app-rsc-error-handler.js +15 -6
- package/dist/server/app-rsc-errors.d.ts +12 -9
- package/dist/server/app-rsc-errors.js +15 -13
- package/dist/server/app-rsc-handler.d.ts +31 -6
- package/dist/server/app-rsc-handler.js +411 -61
- package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
- package/dist/server/app-rsc-render-mode.d.ts +8 -9
- package/dist/server/app-rsc-request-normalization.d.ts +3 -3
- package/dist/server/app-rsc-request-normalization.js +2 -1
- package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
- package/dist/server/app-rsc-response-finalizer.js +6 -6
- package/dist/server/app-rsc-response-stage.d.ts +6 -0
- package/dist/server/app-rsc-response-stage.js +251 -0
- package/dist/server/app-rsc-route-matching.d.ts +3 -4
- package/dist/server/app-rsc-route-matching.js +3 -2
- package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
- package/dist/server/app-rsc-vary.d.ts +16 -0
- package/dist/server/app-rsc-vary.js +31 -0
- package/dist/server/app-segment-config.d.ts +119 -7
- package/dist/server/app-segment-config.js +242 -2
- package/dist/server/app-server-action-execution.d.ts +16 -12
- package/dist/server/app-server-action-execution.js +86 -33
- package/dist/server/app-ssr-entry.d.ts +14 -4
- package/dist/server/app-ssr-entry.js +61 -14
- package/dist/server/app-ssr-error-meta.d.ts +3 -4
- package/dist/server/app-ssr-error-meta.js +2 -1
- package/dist/server/app-ssr-router-instance.d.ts +2 -3
- package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
- package/dist/server/app-ssr-search-params-gate.js +54 -0
- package/dist/server/app-ssr-stream.d.ts +13 -9
- package/dist/server/app-ssr-stream.js +33 -7
- package/dist/server/app-static-generation.d.ts +4 -5
- package/dist/server/app-visited-response-cache.d.ts +11 -12
- package/dist/server/app-visited-response-cache.js +2 -2
- package/dist/server/app-worker-stages.d.ts +112 -0
- package/dist/server/app-worker-stages.js +105 -0
- package/dist/server/artifact-compatibility.d.ts +11 -12
- package/dist/server/before-interactive-head.d.ts +2 -3
- package/dist/server/bfcache-identity.d.ts +7 -8
- package/dist/server/cache-control.d.ts +35 -13
- package/dist/server/cache-control.js +71 -5
- package/dist/server/cache-headers.d.ts +3 -4
- package/dist/server/cache-proof.d.ts +75 -70
- package/dist/server/cache-proof.js +9 -1
- package/dist/server/cacheability-limits.d.ts +4 -5
- package/dist/server/cacheability-limits.js +2 -2
- package/dist/server/cacheability-manifest.d.ts +42 -16
- package/dist/server/cacheability-manifest.js +60 -10
- package/dist/server/cacheability-request.d.ts +37 -8
- package/dist/server/cacheability-request.js +159 -57
- package/dist/server/client-reuse-manifest.d.ts +17 -18
- package/dist/server/client-reuse-manifest.js +2 -2
- package/dist/server/client-trace-metadata.d.ts +9 -6
- package/dist/server/client-trace-metadata.js +27 -15
- package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
- package/dist/server/cloudflare-workers-tracing.js +8 -0
- package/dist/server/config-headers.d.ts +19 -5
- package/dist/server/config-headers.js +25 -11
- package/dist/server/cookie-utils.d.ts +2 -3
- package/dist/server/csp.d.ts +5 -6
- package/dist/server/default-global-error-module.d.ts +2 -3
- package/dist/server/default-global-not-found-module.d.ts +2 -3
- package/dist/server/default-not-found-module.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.d.ts +2 -3
- package/dist/server/defer-until-stream-consumed.js +2 -1
- package/dist/server/dev-initial-server-error.d.ts +3 -4
- package/dist/server/dev-initial-server-error.js +2 -1
- package/dist/server/dev-lockfile.d.ts +7 -8
- package/dist/server/dev-lockfile.js +4 -1
- package/dist/server/dev-module-runner.d.ts +2 -3
- package/dist/server/dev-origin-check.d.ts +5 -6
- package/dist/server/dev-route-files.d.ts +2 -3
- package/dist/server/dev-server.d.ts +4 -5
- package/dist/server/dev-server.js +130 -61
- package/dist/server/dev-stack-sourcemap.d.ts +7 -7
- package/dist/server/dev-stack-sourcemap.js +1 -1
- package/dist/server/document-initial-head.d.ts +3 -4
- package/dist/server/edge-api-runtime.d.ts +4 -5
- package/dist/server/fetch-handler.d.ts +3 -2
- package/dist/server/fetch-handler.js +3 -18
- package/dist/server/file-based-metadata.d.ts +2 -3
- package/dist/server/framework-tracer.d.ts +46 -0
- package/dist/server/framework-tracer.js +125 -0
- package/dist/server/fully-buffered-response.d.ts +11 -0
- package/dist/server/fully-buffered-response.js +19 -0
- package/dist/server/headers.d.ts +54 -61
- package/dist/server/headers.js +18 -31
- package/dist/server/html.d.ts +6 -27
- package/dist/server/html.js +16 -1
- package/dist/server/http-conditional.d.ts +5 -6
- package/dist/server/http-date.d.ts +2 -3
- package/dist/server/http-error-responses.d.ts +9 -10
- package/dist/server/http-range.d.ts +4 -5
- package/dist/server/hybrid-route-priority.d.ts +4 -5
- package/dist/server/image-optimization.d.ts +20 -21
- package/dist/server/implicit-tags.d.ts +3 -4
- package/dist/server/instrumentation-runtime.d.ts +17 -21
- package/dist/server/instrumentation-runtime.js +26 -8
- package/dist/server/instrumentation.d.ts +26 -30
- package/dist/server/instrumentation.js +18 -23
- package/dist/server/isr-cache.d.ts +28 -27
- package/dist/server/isr-cache.js +18 -70
- package/dist/server/isr-decision.d.ts +4 -4
- package/dist/server/metadata-route-build-data.d.ts +4 -5
- package/dist/server/metadata-route-cache-policy.d.ts +2 -3
- package/dist/server/metadata-route-response.d.ts +7 -7
- package/dist/server/metadata-route-response.js +68 -2
- package/dist/server/metadata-routes.d.ts +18 -19
- package/dist/server/middleware-matcher-pattern.d.ts +6 -7
- package/dist/server/middleware-matcher.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.d.ts +6 -7
- package/dist/server/middleware-path-to-regexp.js +11 -9
- package/dist/server/middleware-response-headers.d.ts +3 -4
- package/dist/server/middleware-runtime.d.ts +7 -8
- package/dist/server/middleware-runtime.js +36 -7
- package/dist/server/middleware.d.ts +5 -5
- package/dist/server/multi-stage.d.ts +141 -0
- package/dist/server/multi-stage.js +8 -0
- package/dist/server/navigation-planner.d.ts +26 -26
- package/dist/server/navigation-trace.d.ts +11 -12
- package/dist/server/next-error-digest.d.ts +4 -5
- package/dist/server/normalize-path.d.ts +5 -6
- package/dist/server/open-redirect.d.ts +2 -3
- package/dist/server/opentelemetry-api.d.ts +59 -0
- package/dist/server/opentelemetry-api.js +53 -0
- package/dist/server/opentelemetry-tracing.d.ts +5 -0
- package/dist/server/opentelemetry-tracing.js +83 -0
- package/dist/server/operation-token.d.ts +11 -12
- package/dist/server/otel-tracer-extension.d.ts +7 -9
- package/dist/server/otel-tracer-extension.js +37 -36
- package/dist/server/pages-api-route.d.ts +5 -4
- package/dist/server/pages-api-route.js +20 -7
- package/dist/server/pages-asset-tags.d.ts +6 -6
- package/dist/server/pages-asset-tags.js +37 -2
- package/dist/server/pages-body-parser-config.d.ts +4 -5
- package/dist/server/pages-body-parser-config.js +4 -4
- package/dist/server/pages-client-assets.d.ts +11 -5
- package/dist/server/pages-data-route.d.ts +11 -12
- package/dist/server/pages-data-route.js +1 -1
- package/dist/server/pages-default-404.d.ts +3 -4
- package/dist/server/pages-dev-hydration.d.ts +9 -4
- package/dist/server/pages-dev-hydration.js +19 -7
- package/dist/server/pages-dev-module-url.d.ts +3 -4
- package/dist/server/pages-dev-stylesheets.d.ts +5 -6
- package/dist/server/pages-document-asset-props.d.ts +6 -7
- package/dist/server/pages-document-initial-props.d.ts +5 -5
- package/dist/server/pages-document-initial-props.js +4 -2
- package/dist/server/pages-execution-tracing.d.ts +40 -0
- package/dist/server/pages-execution-tracing.js +80 -0
- package/dist/server/pages-get-initial-props.d.ts +9 -10
- package/dist/server/pages-i18n.d.ts +8 -8
- package/dist/server/pages-media-type.d.ts +4 -5
- package/dist/server/pages-node-compat.d.ts +11 -10
- package/dist/server/pages-node-compat.js +12 -4
- package/dist/server/pages-page-data.d.ts +18 -19
- package/dist/server/pages-page-data.js +11 -10
- package/dist/server/pages-page-handler.d.ts +7 -6
- package/dist/server/pages-page-handler.js +77 -39
- package/dist/server/pages-page-method.d.ts +2 -3
- package/dist/server/pages-page-response.d.ts +14 -10
- package/dist/server/pages-page-response.js +49 -31
- package/dist/server/pages-preview.d.ts +10 -11
- package/dist/server/pages-readiness.d.ts +2 -3
- package/dist/server/pages-request-pipeline.d.ts +14 -12
- package/dist/server/pages-request-pipeline.js +60 -30
- package/dist/server/pages-request-stage-entry.d.ts +23 -0
- package/dist/server/pages-request-stage-entry.js +314 -0
- package/dist/server/pages-response-stage-entry.d.ts +11 -0
- package/dist/server/pages-response-stage-entry.js +106 -0
- package/dist/server/pages-response-stage.d.ts +31 -0
- package/dist/server/pages-response-stage.js +49 -0
- package/dist/server/pages-revalidate.d.ts +3 -4
- package/dist/server/pages-revalidate.js +9 -4
- package/dist/server/pages-route-data-kind.d.ts +18 -0
- package/dist/server/pages-route-data-kind.js +11 -0
- package/dist/server/pages-router-entry.d.ts +1 -25
- package/dist/server/pages-router-entry.js +35 -148
- package/dist/server/pages-serializable-props.d.ts +3 -4
- package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
- package/dist/server/pregenerated-concrete-paths.js +12 -6
- package/dist/server/prerender-cache-life-header.d.ts +3 -4
- package/dist/server/prerender-manifest.d.ts +11 -11
- package/dist/server/prerender-manifest.js +6 -3
- package/dist/server/prerender-route-params.d.ts +16 -9
- package/dist/server/prerender-route-params.js +18 -3
- package/dist/server/prerender-work-unit-setup.d.ts +2 -3
- package/dist/server/prerender-work-unit-setup.js +5 -5
- package/dist/server/prod-server.d.ts +12 -9
- package/dist/server/prod-server.js +124 -31
- package/dist/server/proxy-trust.d.ts +5 -6
- package/dist/server/request-log.d.ts +3 -4
- package/dist/server/request-pipeline.d.ts +16 -16
- package/dist/server/request-pipeline.js +7 -2
- package/dist/server/request-stage.d.ts +5 -0
- package/dist/server/request-stage.js +7 -0
- package/dist/server/request-tracing.d.ts +22 -0
- package/dist/server/request-tracing.js +180 -0
- package/dist/server/response-stage-cacheability.d.ts +37 -0
- package/dist/server/response-stage-cacheability.js +55 -0
- package/dist/server/response-stage-policy.d.ts +23 -0
- package/dist/server/response-stage-policy.js +89 -0
- package/dist/server/response-stage.d.ts +5 -0
- package/dist/server/response-stage.js +7 -0
- package/dist/server/response-start-tracing.d.ts +14 -0
- package/dist/server/response-start-tracing.js +80 -0
- package/dist/server/revalidation-host.d.ts +2 -3
- package/dist/server/revalidation-host.js +1 -1
- package/dist/server/revalidation-request.d.ts +8 -0
- package/dist/server/revalidation-request.js +37 -0
- package/dist/server/rsc-completion-metadata.d.ts +6 -7
- package/dist/server/rsc-stream-hints.d.ts +18 -7
- package/dist/server/rsc-stream-hints.js +70 -35
- package/dist/server/seed-cache.d.ts +2 -3
- package/dist/server/seed-cache.js +8 -7
- package/dist/server/server-action-not-found.d.ts +5 -6
- package/dist/server/server-globals.d.ts +2 -3
- package/dist/server/skip-cache-proof.d.ts +4 -4
- package/dist/server/socket-error-backstop.d.ts +5 -6
- package/dist/server/socket-error-backstop.js +1 -1
- package/dist/server/static-file-cache.d.ts +5 -6
- package/dist/server/static-file-cache.js +9 -7
- package/dist/server/static-file-signal.d.ts +9 -6
- package/dist/server/static-file-signal.js +51 -2
- package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
- package/dist/server/streaming-metadata.d.ts +2 -3
- package/dist/server/tracer.d.ts +5 -0
- package/dist/server/tracer.js +13 -0
- package/dist/server/worker-prerender-discovery.d.ts +5 -6
- package/dist/server/worker-revalidation-context.d.ts +2 -3
- package/dist/server/worker-revalidation-context.js +5 -5
- package/dist/server/worker-stages.d.ts +43 -0
- package/dist/server/worker-stages.js +25 -0
- package/dist/server/worker-utils.d.ts +5 -6
- package/dist/server/worker-utils.js +2 -1
- package/dist/server/workers-tracing.d.ts +17 -0
- package/dist/server/workers-tracing.js +27 -0
- package/dist/shims/amp.d.ts +3 -4
- package/dist/shims/app-router-scroll-state.d.ts +9 -10
- package/dist/shims/app-router-scroll.d.ts +4 -5
- package/dist/shims/app-router-scroll.js +2 -1
- package/dist/shims/app.d.ts +5 -6
- package/dist/shims/before-interactive-context.d.ts +5 -6
- package/dist/shims/cache-callable-runtime.d.ts +44 -4
- package/dist/shims/cache-callable-runtime.js +168 -8
- package/dist/shims/cache-for-request.d.ts +2 -3
- package/dist/shims/cache-handler.d.ts +33 -20
- package/dist/shims/cache-handler.js +61 -2
- package/dist/shims/cache-request-state.d.ts +28 -29
- package/dist/shims/cache-runtime.d.ts +23 -21
- package/dist/shims/cache-runtime.js +107 -27
- package/dist/shims/cache.d.ts +15 -15
- package/dist/shims/cache.js +15 -13
- package/dist/shims/cacheability-classification.d.ts +49 -28
- package/dist/shims/cacheability-classification.js +27 -12
- package/dist/shims/cdn-cache-state.d.ts +13 -0
- package/dist/shims/cdn-cache-state.js +23 -0
- package/dist/shims/cdn-cache.d.ts +50 -21
- package/dist/shims/cdn-cache.js +15 -38
- package/dist/shims/client-hook-error.d.ts +3 -4
- package/dist/shims/client-locale.d.ts +2 -3
- package/dist/shims/client-page-root.d.ts +24 -0
- package/dist/shims/client-page-root.js +121 -0
- package/dist/shims/compat-router.d.ts +2 -3
- package/dist/shims/config.d.ts +3 -4
- package/dist/shims/constants.d.ts +73 -74
- package/dist/shims/constants.js +1 -1
- package/dist/shims/default-not-found.d.ts +2 -3
- package/dist/shims/document.d.ts +9 -9
- package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
- package/dist/shims/dynamic-preload-chunks.js +17 -13
- package/dist/shims/dynamic.d.ts +3 -3
- package/dist/shims/error-boundary-navigation.d.ts +3 -4
- package/dist/shims/error-boundary.d.ts +17 -18
- package/dist/shims/error-boundary.js +17 -11
- package/dist/shims/error.d.ts +4 -4
- package/dist/shims/error.react-server.d.ts +3 -4
- package/dist/shims/fetch-cache.d.ts +22 -22
- package/dist/shims/fetch-cache.js +42 -17
- package/dist/shims/font-google-base.d.ts +9 -9
- package/dist/shims/font-google-base.js +2 -1
- package/dist/shims/font-local.d.ts +3 -3
- package/dist/shims/font-local.js +1 -1
- package/dist/shims/font-utils.d.ts +14 -15
- package/dist/shims/form.d.ts +2 -2
- package/dist/shims/form.js +10 -7
- package/dist/shims/hash-scroll.d.ts +5 -6
- package/dist/shims/head-state.d.ts +4 -5
- package/dist/shims/head.d.ts +16 -16
- package/dist/shims/head.js +5 -4
- package/dist/shims/headers.d.ts +67 -33
- package/dist/shims/headers.js +93 -6
- package/dist/shims/i18n-context.d.ts +5 -6
- package/dist/shims/i18n-state.d.ts +4 -5
- package/dist/shims/image-config.d.ts +5 -6
- package/dist/shims/image-config.js +2 -0
- package/dist/shims/image.d.ts +5 -5
- package/dist/shims/image.js +12 -8
- package/dist/shims/internal/als-registry.d.ts +4 -5
- package/dist/shims/internal/api-utils.d.ts +3 -4
- package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
- package/dist/shims/internal/app-page-props-cache-key.js +53 -1
- package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
- package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
- package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
- package/dist/shims/internal/app-route-detection.d.ts +2 -2
- package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
- package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
- package/dist/shims/internal/app-router-context.d.ts +9 -10
- package/dist/shims/internal/cookie-serialize.d.ts +4 -5
- package/dist/shims/internal/format-url-object.d.ts +7 -0
- package/dist/shims/internal/format-url-object.js +53 -0
- package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
- package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
- package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
- package/dist/shims/internal/interpolate-as.d.ts +5 -6
- package/dist/shims/internal/interpolate-as.js +4 -2
- package/dist/shims/internal/link-status-registry.d.ts +5 -6
- package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
- package/dist/shims/internal/navigation-untracked.d.ts +2 -3
- package/dist/shims/internal/normalize-router-href.d.ts +15 -0
- package/dist/shims/internal/normalize-router-href.js +41 -0
- package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
- package/dist/shims/internal/pages-data-target.d.ts +8 -6
- package/dist/shims/internal/pages-data-target.js +32 -36
- package/dist/shims/internal/pages-data-url.d.ts +4 -5
- package/dist/shims/internal/pages-data-url.js +2 -1
- package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
- package/dist/shims/internal/pages-router-components.d.ts +3 -4
- package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
- package/dist/shims/internal/route-pattern-for-warning.js +3 -3
- package/dist/shims/internal/router-context.d.ts +2 -3
- package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
- package/dist/shims/internal/thenable-well-known-properties.js +33 -0
- package/dist/shims/internal/utils.d.ts +7 -8
- package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
- package/dist/shims/layout-segment-context.d.ts +3 -4
- package/dist/shims/link-prefetch.d.ts +9 -10
- package/dist/shims/link.d.ts +4 -4
- package/dist/shims/link.js +56 -116
- package/dist/shims/metadata.d.ts +15 -16
- package/dist/shims/metadata.js +40 -36
- package/dist/shims/navigation-context-accessors.d.ts +9 -0
- package/dist/shims/navigation-context-accessors.js +19 -0
- package/dist/shims/navigation-context-state.d.ts +27 -18
- package/dist/shims/navigation-errors.d.ts +18 -19
- package/dist/shims/navigation-state.d.ts +6 -7
- package/dist/shims/navigation.d.ts +80 -68
- package/dist/shims/navigation.js +24 -16
- package/dist/shims/navigation.react-server.d.ts +9 -9
- package/dist/shims/offline.d.ts +2 -3
- package/dist/shims/og.d.ts +2 -2
- package/dist/shims/pages-router-runtime.d.ts +4 -5
- package/dist/shims/ppr-fallback-shell.d.ts +13 -14
- package/dist/shims/readonly-url-search-params.d.ts +2 -3
- package/dist/shims/request-context.d.ts +5 -6
- package/dist/shims/root-params.d.ts +14 -15
- package/dist/shims/router-state.d.ts +5 -6
- package/dist/shims/router-state.js +1 -1
- package/dist/shims/router.d.ts +22 -21
- package/dist/shims/router.js +339 -164
- package/dist/shims/script-nonce-context.d.ts +8 -6
- package/dist/shims/script-nonce-context.js +15 -6
- package/dist/shims/script.d.ts +4 -4
- package/dist/shims/script.js +9 -7
- package/dist/shims/search-params-gate.d.ts +35 -0
- package/dist/shims/search-params-gate.js +32 -0
- package/dist/shims/server.d.ts +19 -51
- package/dist/shims/server.js +14 -28
- package/dist/shims/slot.d.ts +33 -15
- package/dist/shims/slot.js +41 -9
- package/dist/shims/streamed-icons.d.ts +3 -4
- package/dist/shims/thenable-params.d.ts +5 -7
- package/dist/shims/thenable-params.js +3 -24
- package/dist/shims/unified-request-context.d.ts +34 -31
- package/dist/shims/unified-request-context.js +34 -24
- package/dist/shims/unrecognized-action-error.d.ts +3 -4
- package/dist/shims/url-safety.d.ts +5 -6
- package/dist/shims/url-utils.d.ts +12 -13
- package/dist/shims/use-merged-ref.d.ts +2 -3
- package/dist/shims/user-agent.d.ts +31 -0
- package/dist/shims/user-agent.js +16 -0
- package/dist/shims/web-vitals.d.ts +2 -2
- package/dist/typegen.d.ts +3 -4
- package/dist/utils/asset-prefix.d.ts +7 -8
- package/dist/utils/base-path.d.ts +5 -6
- package/dist/utils/built-asset-url.d.ts +2 -3
- package/dist/utils/built-asset-url.js +1 -1
- package/dist/utils/cache-control-metadata.d.ts +4 -5
- package/dist/utils/client-build-manifest.d.ts +6 -7
- package/dist/utils/client-build-manifest.js +2 -1
- package/dist/utils/client-entry-manifest.d.ts +6 -7
- package/dist/utils/client-runtime-metadata.d.ts +8 -3
- package/dist/utils/client-runtime-metadata.js +18 -1
- package/dist/utils/commonjs-loader.d.ts +4 -5
- package/dist/utils/compare.d.ts +2 -3
- package/dist/utils/deployment-id.d.ts +6 -7
- package/dist/utils/dev-error-recovery-event.d.ts +2 -3
- package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
- package/dist/utils/domain-locale.d.ts +7 -8
- package/dist/utils/encode-cache-tag.d.ts +3 -4
- package/dist/utils/error-cause.d.ts +2 -3
- package/dist/utils/external-url.d.ts +2 -3
- package/dist/utils/has-trailing-comma.d.ts +3 -4
- package/dist/utils/hash.d.ts +3 -4
- package/dist/utils/html-limited-bots.d.ts +3 -4
- package/dist/utils/lazy-chunks.d.ts +8 -9
- package/dist/utils/lazy-chunks.js +4 -4
- package/dist/utils/manifest-paths.d.ts +5 -6
- package/dist/utils/mdx-scan.d.ts +11 -4
- package/dist/utils/mdx-scan.js +27 -1
- package/dist/utils/middleware-request-headers.d.ts +7 -6
- package/dist/utils/middleware-request-headers.js +6 -1
- package/dist/utils/navigation-signal.d.ts +3 -3
- package/dist/utils/navigation-signal.js +16 -1
- package/dist/utils/number.d.ts +2 -3
- package/dist/utils/package-name.d.ts +3 -4
- package/dist/utils/parse-cookie.d.ts +4 -5
- package/dist/utils/path.d.ts +8 -9
- package/dist/utils/plugin-options.d.ts +2 -3
- package/dist/utils/precompressed-variant.d.ts +3 -4
- package/dist/utils/prerender-output-paths.d.ts +4 -5
- package/dist/utils/project.d.ts +19 -30
- package/dist/utils/project.js +20 -29
- package/dist/utils/promise.d.ts +2 -3
- package/dist/utils/protocol-headers.d.ts +14 -15
- package/dist/utils/public-file-path.d.ts +2 -3
- package/dist/utils/public-routes.d.ts +2 -3
- package/dist/utils/query.d.ts +14 -9
- package/dist/utils/query.js +22 -1
- package/dist/utils/react-compiler-support.d.ts +6 -7
- package/dist/utils/react-version.d.ts +4 -3
- package/dist/utils/react-version.js +19 -1
- package/dist/utils/record.d.ts +2 -3
- package/dist/utils/redirect-digest.d.ts +3 -4
- package/dist/utils/regex-safety.d.ts +4 -5
- package/dist/utils/regex.d.ts +2 -3
- package/dist/utils/safe-json-file.d.ts +2 -3
- package/dist/utils/sorted-array.d.ts +2 -3
- package/dist/utils/text-stream.d.ts +3 -4
- package/dist/utils/vinext-root.d.ts +2 -3
- package/dist/utils/virtual-module.d.ts +3 -4
- package/dist/utils/vite-cli-invocation.d.ts +21 -0
- package/dist/utils/vite-cli-invocation.js +144 -0
- package/dist/utils/vite-version.d.ts +5 -6
- package/next-package.json +4 -0
- package/package.json +47 -6
package/dist/plugins/fonts.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Plugin } from "vite";
|
|
2
2
|
//#region src/plugins/fonts.d.ts
|
|
3
|
-
declare const VIRTUAL_GOOGLE_FONTS = "virtual:vinext-google-fonts";
|
|
4
|
-
declare const RESOLVED_VIRTUAL_GOOGLE_FONTS: string;
|
|
3
|
+
export declare const VIRTUAL_GOOGLE_FONTS = "virtual:vinext-google-fonts";
|
|
4
|
+
export declare const RESOLVED_VIRTUAL_GOOGLE_FONTS: string;
|
|
5
5
|
/**
|
|
6
6
|
* Rewrite absolute filesystem paths in cached Google Fonts CSS so the
|
|
7
7
|
* `@font-face { src: url(...) }` references point at the served URL the
|
|
@@ -31,7 +31,7 @@ declare const RESOLVED_VIRTUAL_GOOGLE_FONTS: string;
|
|
|
31
31
|
* filesystem path that may contain regex metacharacters on unusual
|
|
32
32
|
* filesystems.
|
|
33
33
|
*/
|
|
34
|
-
declare function _rewriteCachedFontCssToServedUrls(css: string, cacheDir: string, assetsDir?: string): string;
|
|
34
|
+
export declare function _rewriteCachedFontCssToServedUrls(css: string, cacheDir: string, assetsDir?: string): string;
|
|
35
35
|
/**
|
|
36
36
|
* Safely parse a static JS object literal string into a plain object.
|
|
37
37
|
* Uses Vite's parseAst (Rollup/acorn) so no code is ever evaluated.
|
|
@@ -41,8 +41,8 @@ declare function _rewriteCachedFontCssToServedUrls(css: string, cacheDir: string
|
|
|
41
41
|
* Supports: string literals, numeric literals, boolean literals,
|
|
42
42
|
* arrays of the above, and nested object literals.
|
|
43
43
|
*/
|
|
44
|
-
declare function parseStaticObjectLiteral(objectStr: string): Record<string, unknown> | null;
|
|
45
|
-
declare function generateGoogleFontsVirtualModule(id: string, fontGoogleShimPath: string): string | null;
|
|
44
|
+
export declare function parseStaticObjectLiteral(objectStr: string): Record<string, unknown> | null;
|
|
45
|
+
export declare function generateGoogleFontsVirtualModule(id: string, fontGoogleShimPath: string): string | null;
|
|
46
46
|
/**
|
|
47
47
|
* Create the `vinext:google-fonts` Vite plugin.
|
|
48
48
|
*
|
|
@@ -63,14 +63,14 @@ declare function generateGoogleFontsVirtualModule(id: string, fontGoogleShimPath
|
|
|
63
63
|
* literals including `${...}` interpolations) are fully skipped so that brace
|
|
64
64
|
* characters inside string values do not affect the depth count.
|
|
65
65
|
*/
|
|
66
|
-
declare function _findBalancedObject(code: string, searchStart: number): [number, number] | null;
|
|
66
|
+
export declare function _findBalancedObject(code: string, searchStart: number): [number, number] | null;
|
|
67
67
|
/**
|
|
68
68
|
* Given the index just past the closing `}` of an options object, skip
|
|
69
69
|
* optional whitespace and return the index after the closing `)`.
|
|
70
70
|
* Returns `null` if the next non-whitespace character is not `)`.
|
|
71
71
|
*/
|
|
72
|
-
declare function _findCallEnd(code: string, objEnd: number): number | null;
|
|
73
|
-
declare function createGoogleFontsPlugin(fontGoogleShimPath: string, shimsDir: string): Plugin;
|
|
72
|
+
export declare function _findCallEnd(code: string, objEnd: number): number | null;
|
|
73
|
+
export declare function createGoogleFontsPlugin(fontGoogleShimPath: string, shimsDir: string): Plugin;
|
|
74
74
|
/**
|
|
75
75
|
* Create the `vinext:local-fonts` Vite plugin.
|
|
76
76
|
*
|
|
@@ -89,6 +89,5 @@ declare function createGoogleFontsPlugin(fontGoogleShimPath: string, shimsDir: s
|
|
|
89
89
|
* mirrors `createGoogleFontsPlugin`, which takes `shimsDir` for the same
|
|
90
90
|
* reason.
|
|
91
91
|
*/
|
|
92
|
-
declare function createLocalFontsPlugin(shimsDir: string): Plugin;
|
|
93
|
-
//#endregion
|
|
94
|
-
export { RESOLVED_VIRTUAL_GOOGLE_FONTS, VIRTUAL_GOOGLE_FONTS, _findBalancedObject, _findCallEnd, _rewriteCachedFontCssToServedUrls, createGoogleFontsPlugin, createLocalFontsPlugin, generateGoogleFontsVirtualModule, parseStaticObjectLiteral };
|
|
92
|
+
export declare function createLocalFontsPlugin(shimsDir: string): Plugin;
|
|
93
|
+
//#endregion
|
package/dist/plugins/fonts.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import path, { toSlash } from "../deps/.pnpm/pathslash@0.1.0/deps/pathslash/dist/index.js";
|
|
2
2
|
import { escapeRegExp } from "../utils/regex.js";
|
|
3
|
-
import { ASSET_PREFIX_URL_DIR } from "../utils/asset-prefix.js";
|
|
4
3
|
import { lastSignificantChar } from "../utils/has-trailing-comma.js";
|
|
5
4
|
import { magicStringTransformResult } from "./transform-result.js";
|
|
6
5
|
import { buildFallbackFontFace, getFallbackFontOverrideMetrics } from "../build/google-fonts/fallback-metrics.js";
|
|
@@ -8,6 +7,7 @@ import { validateGoogleFontOptions } from "../build/google-fonts/validate.js";
|
|
|
8
7
|
import { getFontAxes } from "../build/google-fonts/get-axes.js";
|
|
9
8
|
import { buildGoogleFontsUrl } from "../build/google-fonts/build-url.js";
|
|
10
9
|
import { findFontFilesInCss } from "../build/google-fonts/find-font-files-in-css.js";
|
|
10
|
+
import { ASSET_PREFIX_URL_DIR } from "../utils/asset-prefix.js";
|
|
11
11
|
import { CONTENT_TYPES } from "../server/static-file-cache.js";
|
|
12
12
|
import fs from "node:fs";
|
|
13
13
|
import { parseAst } from "vite";
|
|
@@ -32,7 +32,7 @@ var GoogleFontsHttpError = class extends Error {
|
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
34
|
const VIRTUAL_GOOGLE_FONTS = "virtual:vinext-google-fonts";
|
|
35
|
-
const RESOLVED_VIRTUAL_GOOGLE_FONTS = "\
|
|
35
|
+
const RESOLVED_VIRTUAL_GOOGLE_FONTS = "\0" + VIRTUAL_GOOGLE_FONTS;
|
|
36
36
|
const GOOGLE_FONT_UTILITY_EXPORTS = /* @__PURE__ */ new Set([
|
|
37
37
|
"buildGoogleFontsUrl",
|
|
38
38
|
"getSSRFontLinks",
|
|
@@ -536,7 +536,8 @@ function createGoogleFontsPlugin(fontGoogleShimPath, shimsDir) {
|
|
|
536
536
|
const message = err instanceof Error ? err.message : String(err);
|
|
537
537
|
throw new Error(`[vinext:google-fonts] ${id}: ${message}`);
|
|
538
538
|
}
|
|
539
|
-
const
|
|
539
|
+
const axes = getFontAxes(family, validated.weights, validated.styles, validated.selectedVariableAxes);
|
|
540
|
+
const cssUrl = buildGoogleFontsUrl(family, axes, validated.display);
|
|
540
541
|
let localCSS = fontCache.get(cssUrl);
|
|
541
542
|
if (!localCSS) try {
|
|
542
543
|
localCSS = await fetchAndCacheFont(cssUrl, family, cacheDir);
|
|
@@ -2,7 +2,6 @@ import { MagicStringTransformResult } from "./transform-result.js";
|
|
|
2
2
|
import { Plugin } from "vite";
|
|
3
3
|
//#region src/plugins/ignore-dynamic-requests.d.ts
|
|
4
4
|
declare function transformVeryDynamicRequests(code: string, id: string): MagicStringTransformResult | null;
|
|
5
|
-
declare function createIgnoreDynamicRequestsPlugin(getTranspiledPackages?: () => readonly string[]): Plugin;
|
|
6
|
-
declare const _transformVeryDynamicRequests: typeof transformVeryDynamicRequests;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { _transformVeryDynamicRequests, createIgnoreDynamicRequestsPlugin };
|
|
5
|
+
export declare function createIgnoreDynamicRequestsPlugin(getTranspiledPackages?: () => readonly string[]): Plugin;
|
|
6
|
+
export declare const _transformVeryDynamicRequests: typeof transformVeryDynamicRequests;
|
|
7
|
+
//#endregion
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import path, { toSlash } from "../deps/.pnpm/pathslash@0.1.0/deps/pathslash/dist/index.js";
|
|
2
|
-
import {
|
|
2
|
+
import { DYNAMIC_IMPORT_PRESCAN, SCRIPT_MODULE_ID_RE, collectBindingNames, forEachAstChild, isIdentifierNamed, mayContainDynamicImport, scriptParserLanguage, stringLiteralValue, unwrapExpression } from "./ast-utils.js";
|
|
3
3
|
import { magicStringTransformResult } from "./transform-result.js";
|
|
4
|
-
import {
|
|
4
|
+
import { stripViteModuleQuery } from "../utils/path.js";
|
|
5
5
|
import { collectDirectScopeBindings, collectLoopScopeBindings, collectSwitchScopeBindings, collectVarScopeBindings, hasAstBinding, isFunctionNode } from "./ast-scope.js";
|
|
6
6
|
import { createTransformCache } from "./transform-cache.js";
|
|
7
|
-
import { parseAst } from "vite";
|
|
8
7
|
import { fileURLToPath } from "node:url";
|
|
8
|
+
import { parseAst } from "vite";
|
|
9
9
|
import MagicString from "magic-string";
|
|
10
10
|
//#region src/plugins/ignore-dynamic-requests.ts
|
|
11
11
|
const DYNAMIC_REQUEST_ERROR = "Cannot find module as expression is too dynamic";
|
|
@@ -14,9 +14,6 @@ const DYNAMIC_REQUEST_PRESCAN = new RegExp(String.raw`(?:${REQUIRE_PRESCAN.sourc
|
|
|
14
14
|
const MAX_CONSTANT_BINDING_DEPTH = 1500;
|
|
15
15
|
const VINEXT_SOURCE_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
16
16
|
const PLUGIN_RSC_PATH = /[\\/]node_modules[\\/](?:\.pnpm[\\/][^/\\]+[\\/]node_modules[\\/])?@vitejs[\\/]plugin-rsc[\\/]/;
|
|
17
|
-
function astNode(value) {
|
|
18
|
-
return isAstRecord(value) ? value : null;
|
|
19
|
-
}
|
|
20
17
|
function stringFromCharCodeValue(value, scope) {
|
|
21
18
|
const node = unwrapExpression(value);
|
|
22
19
|
if (node?.type !== "CallExpression") return null;
|
|
@@ -25,7 +22,7 @@ function stringFromCharCodeValue(value, scope) {
|
|
|
25
22
|
const property = callee?.type === "MemberExpression" ? unwrapExpression(callee.property) : null;
|
|
26
23
|
if (callee?.type !== "MemberExpression" || callee.computed === true || !isIdentifierNamed(object, "String") || hasAstBinding(scope, "String") || !isIdentifierNamed(property, "fromCharCode")) return null;
|
|
27
24
|
let resolved = "";
|
|
28
|
-
for (const argument of
|
|
25
|
+
for (const argument of node.arguments) {
|
|
29
26
|
const argumentNode = unwrapExpression(argument);
|
|
30
27
|
if (argumentNode?.type !== "Literal" || typeof argumentNode.value !== "number" || !Number.isInteger(argumentNode.value) || argumentNode.value < 0 || argumentNode.value > 65535) return null;
|
|
31
28
|
resolved += String.fromCharCode(argumentNode.value);
|
|
@@ -33,17 +30,15 @@ function stringFromCharCodeValue(value, scope) {
|
|
|
33
30
|
return resolved;
|
|
34
31
|
}
|
|
35
32
|
function isUnboundNumericGlobal(node, scope) {
|
|
36
|
-
return node.type === "Identifier" &&
|
|
33
|
+
return node.type === "Identifier" && !hasAstBinding(scope, node.name) && (isIdentifierNamed(node, "NaN") || isIdentifierNamed(node, "Infinity"));
|
|
37
34
|
}
|
|
38
35
|
function evaluateStaticString(value, scope, resolution) {
|
|
39
36
|
const node = unwrapExpression(value);
|
|
40
37
|
if (!node) return null;
|
|
41
38
|
const valueString = stringLiteralValue(node);
|
|
42
39
|
if (valueString !== null) return valueString;
|
|
43
|
-
if (node.type === "TemplateLiteral" &&
|
|
44
|
-
const
|
|
45
|
-
const cooked = typeof quasiValue === "object" && quasiValue !== null ? Reflect.get(quasiValue, "cooked") : null;
|
|
46
|
-
const raw = typeof quasiValue === "object" && quasiValue !== null ? Reflect.get(quasiValue, "raw") : null;
|
|
40
|
+
if (node.type === "TemplateLiteral" && node.expressions.length === 0) {
|
|
41
|
+
const { cooked, raw } = node.quasis[0]?.value ?? {};
|
|
47
42
|
return typeof cooked === "string" ? cooked : typeof raw === "string" ? raw : null;
|
|
48
43
|
}
|
|
49
44
|
if (node.type === "BinaryExpression" && node.operator === "+") {
|
|
@@ -58,8 +53,8 @@ function evaluateStaticString(value, scope, resolution) {
|
|
|
58
53
|
const alternate = evaluateStaticString(node.alternate, scope, resolution);
|
|
59
54
|
return consequent !== null && consequent === alternate ? consequent : null;
|
|
60
55
|
}
|
|
61
|
-
if (node.type === "SequenceExpression") return evaluateStaticString(
|
|
62
|
-
if (node.type === "Identifier"
|
|
56
|
+
if (node.type === "SequenceExpression") return evaluateStaticString(node.expressions.at(-1), scope, resolution);
|
|
57
|
+
if (node.type === "Identifier") return resolveConstantBinding(scope, node.name, resolution, null, evaluateStaticString);
|
|
63
58
|
return null;
|
|
64
59
|
}
|
|
65
60
|
function hasSignificantPathPart(value) {
|
|
@@ -79,10 +74,9 @@ function isUnboundStringRawTag(value, scope) {
|
|
|
79
74
|
return tag?.type === "MemberExpression" && tag.computed !== true && isIdentifierNamed(object, "String") && !hasAstBinding(scope, "String") && isIdentifierNamed(property, "raw");
|
|
80
75
|
}
|
|
81
76
|
function hasDynamicRequestIgnoreDirective(code, requestNode, argumentNode) {
|
|
82
|
-
if (!hasRange(requestNode) || !hasRange(argumentNode)) return false;
|
|
83
77
|
const comments = [];
|
|
84
|
-
const callee =
|
|
85
|
-
let index = callee
|
|
78
|
+
const callee = requestNode.type === "CallExpression" ? requestNode.callee : null;
|
|
79
|
+
let index = callee ? callee.end : requestNode.type === "ImportExpression" ? requestNode.start + 6 : requestNode.start;
|
|
86
80
|
while (index < argumentNode.start) {
|
|
87
81
|
if (/\s/.test(code[index])) {
|
|
88
82
|
index++;
|
|
@@ -141,10 +135,10 @@ function hasDynamicRequestIgnoreDirective(code, requestNode, argumentNode) {
|
|
|
141
135
|
return ignore === true;
|
|
142
136
|
}
|
|
143
137
|
function templateHasStaticPart(node, scope, resolution, useRaw = false) {
|
|
144
|
-
const quasis =
|
|
145
|
-
if (
|
|
138
|
+
const quasis = node.quasis;
|
|
139
|
+
if (node.expressions.length === 0) return templateElementValue(quasis[0], useRaw).replaceAll("\\", "/") !== "/";
|
|
146
140
|
if (quasis.some((quasi) => hasSignificantPathPart(templateElementValue(quasi, useRaw)))) return true;
|
|
147
|
-
return
|
|
141
|
+
return node.expressions.some((expression) => {
|
|
148
142
|
const expressionNode = unwrapExpression(expression);
|
|
149
143
|
if (!expressionNode) return false;
|
|
150
144
|
return requestHasStaticPart(expressionNode, scope, resolution);
|
|
@@ -153,12 +147,10 @@ function templateHasStaticPart(node, scope, resolution, useRaw = false) {
|
|
|
153
147
|
function stringRawTemplateHasStaticPart(node, scope, resolution) {
|
|
154
148
|
if (node.type !== "TaggedTemplateExpression") return null;
|
|
155
149
|
if (!isUnboundStringRawTag(node.tag, scope)) return null;
|
|
156
|
-
|
|
157
|
-
return quasi?.type === "TemplateLiteral" ? templateHasStaticPart(quasi, scope, resolution, true) : null;
|
|
150
|
+
return templateHasStaticPart(node.quasi, scope, resolution, true);
|
|
158
151
|
}
|
|
159
152
|
function isLiteralExpression(value) {
|
|
160
|
-
|
|
161
|
-
return node?.type === "Literal" || node?.type === "StringLiteral";
|
|
153
|
+
return unwrapExpression(value)?.type === "Literal";
|
|
162
154
|
}
|
|
163
155
|
function isNegativeNumericLiteral(value) {
|
|
164
156
|
const node = unwrapExpression(value);
|
|
@@ -167,9 +159,9 @@ function isNegativeNumericLiteral(value) {
|
|
|
167
159
|
return argument?.type === "Literal" && typeof argument.value === "number";
|
|
168
160
|
}
|
|
169
161
|
function templateTruthiness(node, scope, resolution, useRaw = false) {
|
|
170
|
-
if (
|
|
162
|
+
if (node.quasis.some((quasi) => templateElementValue(quasi, useRaw) !== "")) return true;
|
|
171
163
|
let hasUnknownExpression = false;
|
|
172
|
-
for (const expression of
|
|
164
|
+
for (const expression of node.expressions) {
|
|
173
165
|
const string = evaluateStaticString(expression, scope, resolution);
|
|
174
166
|
if (string !== null) {
|
|
175
167
|
if (string !== "") return true;
|
|
@@ -184,19 +176,16 @@ function templateTruthiness(node, scope, resolution, useRaw = false) {
|
|
|
184
176
|
function staticTruthiness(value, scope, resolution = createConstantResolution()) {
|
|
185
177
|
const node = unwrapExpression(value);
|
|
186
178
|
if (!node) return null;
|
|
187
|
-
if (node.type === "Literal"
|
|
179
|
+
if (node.type === "Literal") return Boolean(node.value);
|
|
188
180
|
if (isUnboundNumericGlobal(node, scope)) return true;
|
|
189
181
|
if (node.type === "TemplateLiteral") return templateTruthiness(node, scope, resolution);
|
|
190
|
-
if (node.type === "TaggedTemplateExpression" && isUnboundStringRawTag(node.tag, scope))
|
|
191
|
-
const quasi = astNode(node.quasi);
|
|
192
|
-
return quasi?.type === "TemplateLiteral" ? templateTruthiness(quasi, scope, resolution, true) : null;
|
|
193
|
-
}
|
|
182
|
+
if (node.type === "TaggedTemplateExpression" && isUnboundStringRawTag(node.tag, scope)) return templateTruthiness(node.quasi, scope, resolution, true);
|
|
194
183
|
if (node.type === "BinaryExpression" && node.operator === "+") {
|
|
195
184
|
const string = evaluateStaticString(node, scope, resolution);
|
|
196
185
|
return string === null ? null : Boolean(string);
|
|
197
186
|
}
|
|
198
187
|
if (isIdentifierNamed(node, "undefined") && !hasAstBinding(scope, "undefined")) return false;
|
|
199
|
-
if (node.type === "Identifier"
|
|
188
|
+
if (node.type === "Identifier") return resolveConstantBinding(scope, node.name, resolution, null, staticTruthiness);
|
|
200
189
|
if (node.type === "UnaryExpression") {
|
|
201
190
|
if (node.operator === "void") return isLiteralExpression(node.argument) ? false : null;
|
|
202
191
|
if (node.operator === "!") {
|
|
@@ -210,10 +199,10 @@ function staticTruthiness(value, scope, resolution = createConstantResolution())
|
|
|
210
199
|
function staticNullishness(value, scope, resolution = createConstantResolution()) {
|
|
211
200
|
const node = unwrapExpression(value);
|
|
212
201
|
if (!node) return null;
|
|
213
|
-
if (node.type === "Literal"
|
|
202
|
+
if (node.type === "Literal") return node.value === null;
|
|
214
203
|
if (isUnboundNumericGlobal(node, scope)) return false;
|
|
215
204
|
if (isIdentifierNamed(node, "undefined") && !hasAstBinding(scope, "undefined")) return true;
|
|
216
|
-
if (node.type === "Identifier"
|
|
205
|
+
if (node.type === "Identifier") return resolveConstantBinding(scope, node.name, resolution, null, staticNullishness);
|
|
217
206
|
if (node.type === "UnaryExpression") return node.operator === "void" && isLiteralExpression(node.argument) ? true : null;
|
|
218
207
|
if (node.type === "ArrayExpression" || node.type === "ObjectExpression" || node.type === "FunctionExpression" || node.type === "ArrowFunctionExpression" || node.type === "ClassExpression" || node.type === "TemplateLiteral") return false;
|
|
219
208
|
return null;
|
|
@@ -250,7 +239,7 @@ function stringConcatHasStaticPart(node, scope, resolution) {
|
|
|
250
239
|
const receiver = unwrapExpression(callee.object);
|
|
251
240
|
if (!receiver || !isStaticStringExpression(receiver, scope, resolution)) return null;
|
|
252
241
|
if (requestHasStaticPart(receiver, scope, resolution)) return true;
|
|
253
|
-
return
|
|
242
|
+
return node.arguments.some((argument) => {
|
|
254
243
|
const argumentNode = unwrapExpression(argument);
|
|
255
244
|
return argumentNode ? requestHasStaticPart(argumentNode, scope, resolution) : false;
|
|
256
245
|
});
|
|
@@ -259,10 +248,10 @@ function isStaticStringExpression(value, scope, resolution) {
|
|
|
259
248
|
const node = unwrapExpression(value);
|
|
260
249
|
if (!node) return false;
|
|
261
250
|
if (stringLiteralValue(node) !== null || node.type === "TemplateLiteral") return true;
|
|
262
|
-
if (node.type === "Identifier"
|
|
251
|
+
if (node.type === "Identifier") return resolveConstantBinding(scope, node.name, resolution, false, isStaticStringExpression);
|
|
263
252
|
if (node.type === "BinaryExpression" && node.operator === "+") return additionContainsString(node, scope, resolution);
|
|
264
253
|
if (node.type === "ConditionalExpression") return isStaticStringExpression(node.consequent, scope, resolution) && isStaticStringExpression(node.alternate, scope, resolution);
|
|
265
|
-
if (node.type === "SequenceExpression") return isStaticStringExpression(
|
|
254
|
+
if (node.type === "SequenceExpression") return isStaticStringExpression(node.expressions.at(-1), scope, resolution);
|
|
266
255
|
if (node.type === "CallExpression") return stringConcatHasStaticPart(node, scope, resolution) !== null;
|
|
267
256
|
return false;
|
|
268
257
|
}
|
|
@@ -270,10 +259,10 @@ function additionContainsString(value, scope, resolution) {
|
|
|
270
259
|
const node = unwrapExpression(value);
|
|
271
260
|
if (!node) return false;
|
|
272
261
|
if (stringLiteralValue(node) !== null || node.type === "TemplateLiteral") return true;
|
|
273
|
-
if (node.type === "Identifier"
|
|
262
|
+
if (node.type === "Identifier") return resolveConstantBinding(scope, node.name, resolution, false, additionContainsString);
|
|
274
263
|
if (node.type === "BinaryExpression" && node.operator === "+") return additionContainsString(node.left, scope, resolution) || additionContainsString(node.right, scope, resolution);
|
|
275
264
|
if (node.type === "ConditionalExpression") return additionContainsString(node.consequent, scope, resolution) && additionContainsString(node.alternate, scope, resolution);
|
|
276
|
-
if (node.type === "SequenceExpression") return additionContainsString(
|
|
265
|
+
if (node.type === "SequenceExpression") return additionContainsString(node.expressions.at(-1), scope, resolution);
|
|
277
266
|
return stringConcatHasStaticPart(node, scope, resolution) !== null;
|
|
278
267
|
}
|
|
279
268
|
function requestHasStaticPart(value, scope, resolution = createConstantResolution()) {
|
|
@@ -284,12 +273,12 @@ function requestHasStaticPart(value, scope, resolution = createConstantResolutio
|
|
|
284
273
|
if (node.type === "Literal") return true;
|
|
285
274
|
if (isUnboundNumericGlobal(node, scope)) return true;
|
|
286
275
|
if (node.type === "TemplateLiteral") return templateHasStaticPart(node, scope, resolution);
|
|
287
|
-
const stringRawHasStaticPart = stringRawTemplateHasStaticPart(node, scope, resolution);
|
|
276
|
+
const stringRawHasStaticPart = node.type === "TaggedTemplateExpression" ? stringRawTemplateHasStaticPart(node, scope, resolution) : null;
|
|
288
277
|
if (stringRawHasStaticPart !== null) return stringRawHasStaticPart;
|
|
289
278
|
const concatHasStaticPart = stringConcatHasStaticPart(node, scope, resolution);
|
|
290
279
|
if (concatHasStaticPart !== null) return concatHasStaticPart;
|
|
291
280
|
if (isIdentifierNamed(node, "undefined") && !hasAstBinding(scope, "undefined")) return true;
|
|
292
|
-
if (node.type === "Identifier"
|
|
281
|
+
if (node.type === "Identifier") return resolveConstantBinding(scope, node.name, resolution, false, requestHasStaticPart);
|
|
293
282
|
if (node.type === "UnaryExpression") {
|
|
294
283
|
if (node.operator === "void") return isLiteralExpression(node.argument);
|
|
295
284
|
if (isNegativeNumericLiteral(node)) return true;
|
|
@@ -318,7 +307,7 @@ function requestHasStaticPart(value, scope, resolution = createConstantResolutio
|
|
|
318
307
|
return requestHasStaticPart(node.left, scope, resolution) || requestHasStaticPart(node.right, scope, resolution);
|
|
319
308
|
}
|
|
320
309
|
if (node.type === "SequenceExpression") {
|
|
321
|
-
const expressions =
|
|
310
|
+
const expressions = node.expressions;
|
|
322
311
|
if (expressions.length === 0) return false;
|
|
323
312
|
return expressions.slice(0, -1).every((expression) => !expressionMayHaveSideEffects(expression, scope)) && requestHasStaticPart(expressions.at(-1), scope, resolution);
|
|
324
313
|
}
|
|
@@ -327,38 +316,31 @@ function requestHasStaticPart(value, scope, resolution = createConstantResolutio
|
|
|
327
316
|
function expressionMayHaveSideEffects(value, scope) {
|
|
328
317
|
const node = unwrapExpression(value);
|
|
329
318
|
if (!node) return false;
|
|
330
|
-
if (node.type === "Literal" || node.type === "
|
|
331
|
-
if (node.type === "TemplateLiteral") return
|
|
319
|
+
if (node.type === "Literal" || node.type === "Identifier" || node.type === "FunctionExpression" || node.type === "ArrowFunctionExpression") return false;
|
|
320
|
+
if (node.type === "TemplateLiteral") return node.expressions.some((expression) => expressionMayHaveSideEffects(expression, scope));
|
|
332
321
|
if (node.type === "UnaryExpression") return node.operator === "delete" || expressionMayHaveSideEffects(node.argument, scope);
|
|
333
322
|
if (node.type === "AwaitExpression") return expressionMayHaveSideEffects(node.argument, scope);
|
|
334
323
|
if (node.type === "BinaryExpression" || node.type === "LogicalExpression") return expressionMayHaveSideEffects(node.left, scope) || expressionMayHaveSideEffects(node.right, scope);
|
|
335
324
|
if (node.type === "ConditionalExpression") return expressionMayHaveSideEffects(node.test, scope) || expressionMayHaveSideEffects(node.consequent, scope) || expressionMayHaveSideEffects(node.alternate, scope);
|
|
336
|
-
if (node.type === "SequenceExpression") return
|
|
337
|
-
if (node.type === "ArrayExpression") return
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
const propertyNode = astNode(property);
|
|
343
|
-
if (propertyNode?.type === "SpreadElement") return expressionMayHaveSideEffects(propertyNode.argument, scope);
|
|
344
|
-
if (propertyNode?.type !== "Property" || propertyNode.kind !== "init" || propertyNode.method === true) return true;
|
|
345
|
-
return expressionMayHaveSideEffects(propertyNode.computed ? propertyNode.key : null, scope) || expressionMayHaveSideEffects(propertyNode.value, scope);
|
|
325
|
+
if (node.type === "SequenceExpression") return node.expressions.some((expression) => expressionMayHaveSideEffects(expression, scope));
|
|
326
|
+
if (node.type === "ArrayExpression") return node.elements.some((element) => element?.type === "SpreadElement" || expressionMayHaveSideEffects(element, scope));
|
|
327
|
+
if (node.type === "ObjectExpression") return node.properties.some((property) => {
|
|
328
|
+
if (property.type === "SpreadElement") return expressionMayHaveSideEffects(property.argument, scope);
|
|
329
|
+
if (property.type !== "Property" || property.kind !== "init" || property.method === true) return true;
|
|
330
|
+
return expressionMayHaveSideEffects(property.computed ? property.key : null, scope) || expressionMayHaveSideEffects(property.value, scope);
|
|
346
331
|
});
|
|
347
332
|
if (node.type === "MemberExpression") return expressionMayHaveSideEffects(node.object, scope) || expressionMayHaveSideEffects(node.computed ? node.property : null, scope);
|
|
348
333
|
if (node.type === "TaggedTemplateExpression") {
|
|
349
|
-
if (isUnboundStringRawTag(node.tag, scope))
|
|
350
|
-
const quasi = astNode(node.quasi);
|
|
351
|
-
return quasi?.type !== "TemplateLiteral" || nodeArray(quasi.expressions).some((expression) => expressionMayHaveSideEffects(expression, scope));
|
|
352
|
-
}
|
|
334
|
+
if (isUnboundStringRawTag(node.tag, scope)) return node.quasi.expressions.some((expression) => expressionMayHaveSideEffects(expression, scope));
|
|
353
335
|
return true;
|
|
354
336
|
}
|
|
355
337
|
if (node.type === "MetaProperty") return false;
|
|
356
338
|
return true;
|
|
357
339
|
}
|
|
358
340
|
function collectConstantBinding(declaration, declarator, scope) {
|
|
359
|
-
const identifier =
|
|
360
|
-
const initializer =
|
|
361
|
-
if (declaration.kind === "const" && identifier?.type === "Identifier" &&
|
|
341
|
+
const identifier = declarator.id;
|
|
342
|
+
const initializer = declarator.init;
|
|
343
|
+
if (declaration.kind === "const" && identifier?.type === "Identifier" && initializer) scope.constants.set(identifier.name, {
|
|
362
344
|
initializer,
|
|
363
345
|
scope
|
|
364
346
|
});
|
|
@@ -384,8 +366,7 @@ function transformVeryDynamicRequests(code, id) {
|
|
|
384
366
|
}
|
|
385
367
|
const output = new MagicString(code);
|
|
386
368
|
let changed = false;
|
|
387
|
-
const root =
|
|
388
|
-
if (!root) return null;
|
|
369
|
+
const root = ast;
|
|
389
370
|
const rootScope = {
|
|
390
371
|
parent: null,
|
|
391
372
|
bindings: /* @__PURE__ */ new Set(),
|
|
@@ -402,12 +383,9 @@ function transformVeryDynamicRequests(code, id) {
|
|
|
402
383
|
constants: /* @__PURE__ */ new Map()
|
|
403
384
|
};
|
|
404
385
|
collectBindingNames(node.id, parameterScope.bindings);
|
|
405
|
-
for (const parameter of
|
|
406
|
-
for (const parameter of
|
|
407
|
-
|
|
408
|
-
if (parameterNode) visit(parameterNode, parameterScope);
|
|
409
|
-
}
|
|
410
|
-
const body = astNode(node.body);
|
|
386
|
+
for (const parameter of node.params) collectBindingNames(parameter, parameterScope.bindings);
|
|
387
|
+
for (const parameter of node.params) visit(parameter, parameterScope);
|
|
388
|
+
const body = node.body;
|
|
411
389
|
if (body) {
|
|
412
390
|
const bodyScope = {
|
|
413
391
|
parent: parameterScope,
|
|
@@ -416,28 +394,21 @@ function transformVeryDynamicRequests(code, id) {
|
|
|
416
394
|
};
|
|
417
395
|
collectDirectBindings(body, bodyScope);
|
|
418
396
|
collectVarScopeBindings(body, bodyScope);
|
|
419
|
-
if (body.type === "BlockStatement") for (const statement of
|
|
420
|
-
const statementNode = astNode(statement);
|
|
421
|
-
if (statementNode) visit(statementNode, bodyScope);
|
|
422
|
-
}
|
|
397
|
+
if (body.type === "BlockStatement") for (const statement of body.body) visit(statement, bodyScope);
|
|
423
398
|
else visit(body, bodyScope);
|
|
424
399
|
}
|
|
425
400
|
return;
|
|
426
401
|
} else if (node.type === "SwitchStatement") {
|
|
427
|
-
|
|
428
|
-
if (discriminant) visit(discriminant, parentScope);
|
|
402
|
+
visit(node.discriminant, parentScope);
|
|
429
403
|
const switchScope = {
|
|
430
404
|
parent: parentScope,
|
|
431
405
|
bindings: /* @__PURE__ */ new Set(),
|
|
432
406
|
constants: /* @__PURE__ */ new Map()
|
|
433
407
|
};
|
|
434
408
|
collectDirectBindings(node, switchScope);
|
|
435
|
-
for (const switchCase of
|
|
436
|
-
const switchCaseNode = astNode(switchCase);
|
|
437
|
-
if (switchCaseNode) visit(switchCaseNode, switchScope);
|
|
438
|
-
}
|
|
409
|
+
for (const switchCase of node.cases) visit(switchCase, switchScope);
|
|
439
410
|
return;
|
|
440
|
-
} else if (node.type === "BlockStatement"
|
|
411
|
+
} else if (node.type === "BlockStatement" || node.type === "StaticBlock" || node.type === "TSModuleBlock") {
|
|
441
412
|
scope = {
|
|
442
413
|
parent: parentScope,
|
|
443
414
|
bindings: /* @__PURE__ */ new Set(),
|
|
@@ -467,32 +438,32 @@ function transformVeryDynamicRequests(code, id) {
|
|
|
467
438
|
};
|
|
468
439
|
collectBindingNames(node.id, scope.bindings);
|
|
469
440
|
}
|
|
470
|
-
if (node.type === "CallExpression"
|
|
441
|
+
if (node.type === "CallExpression") {
|
|
471
442
|
const callee = unwrapExpression(node.callee);
|
|
472
|
-
const argumentsList =
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
const
|
|
476
|
-
if (resolvedRequest !== null && resolvedRequest.replaceAll("\\", "/") !== "/"
|
|
443
|
+
const argumentsList = node.arguments;
|
|
444
|
+
const argument = argumentsList[0];
|
|
445
|
+
if (isIdentifierNamed(callee, "require") && !hasAstBinding(scope, "require") && argumentsList.length === 1 && argument && argument.type !== "SpreadElement" && !hasDynamicRequestIgnoreDirective(code, node, argument)) {
|
|
446
|
+
const resolvedRequest = stringFromCharCodeValue(argument, scope);
|
|
447
|
+
if (resolvedRequest !== null && resolvedRequest.replaceAll("\\", "/") !== "/") {
|
|
477
448
|
output.overwrite(argument.start, argument.end, JSON.stringify(resolvedRequest));
|
|
478
449
|
changed = true;
|
|
479
450
|
return;
|
|
480
451
|
}
|
|
481
|
-
if (!requestHasStaticPart(
|
|
452
|
+
if (!requestHasStaticPart(argument, scope)) {
|
|
482
453
|
output.overwrite(node.start, node.end, dynamicRequireReplacement());
|
|
483
454
|
changed = true;
|
|
484
455
|
return;
|
|
485
456
|
}
|
|
486
457
|
}
|
|
487
458
|
}
|
|
488
|
-
if (node.type === "ImportExpression" &&
|
|
459
|
+
if (node.type === "ImportExpression" && !hasDynamicRequestIgnoreDirective(code, node, node.source) && !requestHasStaticPart(node.source, scope)) {
|
|
489
460
|
output.overwrite(node.start, node.end, dynamicImportReplacement());
|
|
490
461
|
changed = true;
|
|
491
462
|
return;
|
|
492
463
|
}
|
|
493
464
|
forEachAstChild(node, (child) => visit(child, scope));
|
|
494
465
|
}
|
|
495
|
-
for (const statement of
|
|
466
|
+
for (const statement of root.body) visit(statement, rootScope);
|
|
496
467
|
if (!changed) return null;
|
|
497
468
|
return magicStringTransformResult(output, {
|
|
498
469
|
hires: "boundary",
|
|
@@ -2,7 +2,7 @@ import { MagicStringTransformResult } from "./transform-result.js";
|
|
|
2
2
|
import { Plugin, ResolvedConfig } from "vite";
|
|
3
3
|
//#region src/plugins/import-meta-url.d.ts
|
|
4
4
|
type ImportMetaUrlEnvironment = "client" | "server";
|
|
5
|
-
type ImportMetaUrlCapability = {
|
|
5
|
+
export type ImportMetaUrlCapability = {
|
|
6
6
|
/** The Vite app plugin. Owns project, dependency, and emitted-chunk identity. */
|
|
7
7
|
vitePlugin: Plugin;
|
|
8
8
|
/** Thin adapter for Vite's independent dependency-optimizer Rolldown pipeline. */
|
|
@@ -10,12 +10,11 @@ type ImportMetaUrlCapability = {
|
|
|
10
10
|
/** Cached dependency identity/format classifier shared by both plugin pipelines. */
|
|
11
11
|
isBundledCommonJsDependencyId: (id: string) => boolean;
|
|
12
12
|
};
|
|
13
|
-
type EmittedModuleFileNameResolver = (environmentName: string | undefined, fileName: string) => string;
|
|
14
|
-
declare function createImportMetaUrlPlugin(options: {
|
|
13
|
+
export type EmittedModuleFileNameResolver = (environmentName: string | undefined, fileName: string) => string;
|
|
14
|
+
export declare function createImportMetaUrlPlugin(options: {
|
|
15
15
|
getRoot: () => string | undefined;
|
|
16
16
|
createEmittedModuleFileNameResolver?: (config: ResolvedConfig) => EmittedModuleFileNameResolver | undefined;
|
|
17
17
|
}): ImportMetaUrlCapability;
|
|
18
|
-
declare function rewriteImportMetaUrl(code: string, id: string, root: string, environment: ImportMetaUrlEnvironment): MagicStringTransformResult | null;
|
|
19
|
-
declare function rewriteServerCjsGlobals(code: string, id: string, root: string): MagicStringTransformResult | null;
|
|
20
|
-
//#endregion
|
|
21
|
-
export { EmittedModuleFileNameResolver, ImportMetaUrlCapability, createImportMetaUrlPlugin, rewriteImportMetaUrl, rewriteServerCjsGlobals };
|
|
18
|
+
export declare function rewriteImportMetaUrl(code: string, id: string, root: string, environment: ImportMetaUrlEnvironment): MagicStringTransformResult | null;
|
|
19
|
+
export declare function rewriteServerCjsGlobals(code: string, id: string, root: string): MagicStringTransformResult | null;
|
|
20
|
+
//#endregion
|