@rangojs/router 0.0.0-experimental.tapabs3 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/rango.js +19 -41
- package/dist/types/__internal.d.ts +127 -0
- package/dist/types/bin/rango.d.ts +1 -0
- package/dist/types/browser/action-coordinator.d.ts +57 -0
- package/dist/types/browser/action-fence.d.ts +33 -0
- package/dist/types/browser/app-shell.d.ts +34 -0
- package/dist/types/browser/app-version.d.ts +6 -0
- package/dist/types/browser/connection-warmup.d.ts +31 -0
- package/dist/types/browser/cookie-name.d.ts +66 -0
- package/dist/types/browser/dev-discovery.d.ts +11 -0
- package/dist/types/browser/event-controller.d.ts +221 -0
- package/dist/types/browser/history-state.d.ts +26 -0
- package/dist/types/browser/index.d.ts +1 -0
- package/dist/types/browser/intercept-utils.d.ts +30 -0
- package/dist/types/browser/invalidate-client-cache.d.ts +17 -0
- package/dist/types/browser/link-interceptor.d.ts +43 -0
- package/dist/types/browser/logging.d.ts +33 -0
- package/dist/types/browser/merge-segment-loaders.d.ts +38 -0
- package/dist/types/browser/navigation-bridge.d.ts +27 -0
- package/dist/types/browser/navigation-client.d.ts +17 -0
- package/dist/types/browser/navigation-store-handle.d.ts +25 -0
- package/dist/types/browser/navigation-store.d.ts +85 -0
- package/dist/types/browser/navigation-transaction.d.ts +75 -0
- package/dist/types/browser/network-error-handler.d.ts +35 -0
- package/dist/types/browser/partial-update.d.ts +61 -0
- package/dist/types/browser/prefetch/cache.d.ts +183 -0
- package/dist/types/browser/prefetch/fetch.d.ts +52 -0
- package/dist/types/browser/prefetch/loader.d.ts +10 -0
- package/dist/types/browser/prefetch/observer.d.ts +27 -0
- package/dist/types/browser/prefetch/policy.d.ts +13 -0
- package/dist/types/browser/prefetch/queue.d.ts +48 -0
- package/dist/types/browser/prefetch/resource-ready.d.ts +28 -0
- package/dist/types/browser/prefetch/runtime.d.ts +3 -0
- package/dist/types/browser/rango-state.d.ts +52 -0
- package/dist/types/browser/react/Link.d.ts +140 -0
- package/dist/types/browser/react/NavigationProvider.d.ts +88 -0
- package/dist/types/browser/react/ScrollRestoration.d.ts +78 -0
- package/dist/types/browser/react/context.d.ts +54 -0
- package/dist/types/browser/react/filter-segment-order.d.ts +35 -0
- package/dist/types/browser/react/index.d.ts +1 -0
- package/dist/types/browser/react/location-state-shared.d.ts +162 -0
- package/dist/types/browser/react/location-state.d.ts +29 -0
- package/dist/types/browser/react/mount-context.d.ts +23 -0
- package/dist/types/browser/react/nonce-context.d.ts +14 -0
- package/dist/types/browser/react/shallow-equal.d.ts +5 -0
- package/dist/types/browser/react/use-action.d.ts +61 -0
- package/dist/types/browser/react/use-handle.d.ts +21 -0
- package/dist/types/browser/react/use-href.d.ts +32 -0
- package/dist/types/browser/react/use-link-status.d.ts +36 -0
- package/dist/types/browser/react/use-mount.d.ts +24 -0
- package/dist/types/browser/react/use-navigation.d.ts +15 -0
- package/dist/types/browser/react/use-params.d.ts +21 -0
- package/dist/types/browser/react/use-pathname.d.ts +13 -0
- package/dist/types/browser/react/use-reverse.d.ts +40 -0
- package/dist/types/browser/react/use-router.d.ts +23 -0
- package/dist/types/browser/react/use-search-params.d.ts +19 -0
- package/dist/types/browser/react/use-segments.d.ts +29 -0
- package/dist/types/browser/response-adapter.d.ts +58 -0
- package/dist/types/browser/rsc-router.d.ts +141 -0
- package/dist/types/browser/scroll-restoration.d.ts +103 -0
- package/dist/types/browser/segment-reconciler.d.ts +74 -0
- package/dist/types/browser/segment-structure-assert.d.ts +16 -0
- package/dist/types/browser/server-action-bridge.d.ts +29 -0
- package/dist/types/browser/types.d.ts +518 -0
- package/dist/types/browser/validate-redirect-origin.d.ts +28 -0
- package/dist/types/build/collect-fallback-refs.d.ts +5 -0
- package/dist/types/build/generate-manifest.d.ts +106 -0
- package/dist/types/build/generate-route-types.d.ts +8 -0
- package/dist/types/build/index.d.ts +21 -0
- package/dist/types/build/prefix-tree-utils.d.ts +56 -0
- package/dist/types/build/route-trie.d.ts +89 -0
- package/dist/types/build/route-types/ast-helpers.d.ts +3 -0
- package/dist/types/build/route-types/ast-route-extraction.d.ts +13 -0
- package/dist/types/build/route-types/codegen.d.ts +16 -0
- package/dist/types/build/route-types/include-resolution.d.ts +74 -0
- package/dist/types/build/route-types/param-extraction.d.ts +13 -0
- package/dist/types/build/route-types/per-module-writer.d.ts +18 -0
- package/dist/types/build/route-types/router-processing.d.ts +82 -0
- package/dist/types/build/route-types/scan-filter.d.ts +17 -0
- package/dist/types/build/route-types/source-scan.d.ts +13 -0
- package/dist/types/build/runtime-discovery.d.ts +24 -0
- package/dist/types/cache/background-task.d.ts +21 -0
- package/dist/types/cache/cache-error.d.ts +71 -0
- package/dist/types/cache/cache-key-utils.d.ts +35 -0
- package/dist/types/cache/cache-policy.d.ts +59 -0
- package/dist/types/cache/cache-runtime.d.ts +51 -0
- package/dist/types/cache/cache-scope.d.ts +136 -0
- package/dist/types/cache/cache-tag.d.ts +79 -0
- package/dist/types/cache/cf/cf-base64.d.ts +4 -0
- package/dist/types/cache/cf/cf-cache-constants.d.ts +105 -0
- package/dist/types/cache/cf/cf-cache-store.d.ts +589 -0
- package/dist/types/cache/cf/cf-cache-types.d.ts +363 -0
- package/dist/types/cache/cf/cf-kv-utils.d.ts +22 -0
- package/dist/types/cache/cf/cf-tag-marker-memo.d.ts +15 -0
- package/dist/types/cache/cf/cf-zone-purge.d.ts +31 -0
- package/dist/types/cache/cf/index.d.ts +4 -0
- package/dist/types/cache/document-cache.d.ts +69 -0
- package/dist/types/cache/handle-capture.d.ts +23 -0
- package/dist/types/cache/handle-snapshot.d.ts +39 -0
- package/dist/types/cache/index.d.ts +7 -0
- package/dist/types/cache/memory-segment-store.d.ts +163 -0
- package/dist/types/cache/profile-registry.d.ts +40 -0
- package/dist/types/cache/read-through-swr.d.ts +60 -0
- package/dist/types/cache/segment-codec.d.ts +78 -0
- package/dist/types/cache/shell-snapshot.d.ts +186 -0
- package/dist/types/cache/tag-invalidation.d.ts +74 -0
- package/dist/types/cache/taint.d.ts +71 -0
- package/dist/types/cache/types.d.ts +435 -0
- package/dist/types/cache/vercel/index.d.ts +1 -0
- package/dist/types/cache/vercel/vercel-cache-store.d.ts +268 -0
- package/dist/types/client.d.ts +184 -0
- package/dist/types/client.rsc.d.ts +39 -0
- package/dist/types/cloudflare/index.d.ts +7 -0
- package/dist/types/cloudflare/tracing.d.ts +53 -0
- package/dist/types/component-utils.d.ts +46 -0
- package/dist/types/components/DefaultDocument.d.ts +13 -0
- package/dist/types/context-var.d.ts +84 -0
- package/dist/types/debug.d.ts +57 -0
- package/dist/types/decode-loader-results.d.ts +5 -0
- package/dist/types/default-error-boundary.d.ts +10 -0
- package/dist/types/defer.d.ts +89 -0
- package/dist/types/deps/browser.d.ts +1 -0
- package/dist/types/deps/html-stream-client.d.ts +1 -0
- package/dist/types/deps/html-stream-server.d.ts +1 -0
- package/dist/types/deps/rsc.d.ts +1 -0
- package/dist/types/deps/ssr.d.ts +1 -0
- package/dist/types/dev-discovery-protocol.d.ts +5 -0
- package/dist/types/encode-kv.d.ts +35 -0
- package/dist/types/errors.d.ts +226 -0
- package/dist/types/escape-script.d.ts +44 -0
- package/dist/types/handle.d.ts +93 -0
- package/dist/types/handles/MetaTags.d.ts +17 -0
- package/dist/types/handles/Scripts.d.ts +38 -0
- package/dist/types/handles/breadcrumbs.d.ts +43 -0
- package/dist/types/handles/deferred-resolution.d.ts +53 -0
- package/dist/types/handles/is-thenable.d.ts +12 -0
- package/dist/types/handles/meta.d.ts +43 -0
- package/dist/types/handles/script.d.ts +139 -0
- package/dist/types/host/cookie-handler.d.ts +8 -0
- package/dist/types/host/errors.d.ts +40 -0
- package/dist/types/host/index.d.ts +33 -0
- package/dist/types/host/pattern-matcher.d.ts +30 -0
- package/dist/types/host/router.d.ts +12 -0
- package/dist/types/host/testing.d.ts +41 -0
- package/dist/types/host/types.d.ts +148 -0
- package/dist/types/host/utils.d.ts +20 -0
- package/dist/types/href-client.d.ts +214 -0
- package/dist/types/index.d.ts +112 -0
- package/dist/types/index.rsc.d.ts +51 -0
- package/dist/types/internal-debug.d.ts +1 -0
- package/dist/types/loader-store.d.ts +193 -0
- package/dist/types/loader.d.ts +18 -0
- package/dist/types/loader.rsc.d.ts +18 -0
- package/dist/types/missing-id-error.d.ts +1 -0
- package/dist/types/outlet-context.d.ts +12 -0
- package/dist/types/outlet-provider.d.ts +12 -0
- package/dist/types/prerender/build-shell-capture.d.ts +104 -0
- package/dist/types/prerender/param-hash.d.ts +6 -0
- package/dist/types/prerender/shell-manifest-key.d.ts +18 -0
- package/dist/types/prerender/store.d.ts +63 -0
- package/dist/types/prerender.d.ts +292 -0
- package/dist/types/redirect-origin.d.ts +67 -0
- package/dist/types/regex-escape.d.ts +6 -0
- package/dist/types/render-error-thrower.d.ts +13 -0
- package/dist/types/response-utils.d.ts +35 -0
- package/dist/types/reverse.d.ts +206 -0
- package/dist/types/root-error-boundary.d.ts +32 -0
- package/dist/types/route-content-wrapper.d.ts +40 -0
- package/dist/types/route-definition/dsl-helpers.d.ts +130 -0
- package/dist/types/route-definition/helper-factories.d.ts +22 -0
- package/dist/types/route-definition/helpers-types.d.ts +392 -0
- package/dist/types/route-definition/index.d.ts +7 -0
- package/dist/types/route-definition/redirect.d.ts +48 -0
- package/dist/types/route-definition/resolve-handler-use.d.ts +19 -0
- package/dist/types/route-definition/use-item-types.d.ts +1 -0
- package/dist/types/route-definition.d.ts +1 -0
- package/dist/types/route-map-builder.d.ts +102 -0
- package/dist/types/route-name.d.ts +27 -0
- package/dist/types/route-types.d.ts +172 -0
- package/dist/types/router/basename.d.ts +10 -0
- package/dist/types/router/content-negotiation.d.ts +91 -0
- package/dist/types/router/debug-manifest.d.ts +7 -0
- package/dist/types/router/error-handling.d.ts +76 -0
- package/dist/types/router/find-match.d.ts +19 -0
- package/dist/types/router/handler-context.d.ts +41 -0
- package/dist/types/router/instrument.d.ts +161 -0
- package/dist/types/router/intercept-resolution.d.ts +79 -0
- package/dist/types/router/lazy-includes.d.ts +26 -0
- package/dist/types/router/loader-resolution.d.ts +63 -0
- package/dist/types/router/logging.d.ts +41 -0
- package/dist/types/router/manifest.d.ts +8 -0
- package/dist/types/router/match-api.d.ts +19 -0
- package/dist/types/router/match-context.d.ts +184 -0
- package/dist/types/router/match-handlers.d.ts +49 -0
- package/dist/types/router/match-middleware/background-revalidation.d.ts +113 -0
- package/dist/types/router/match-middleware/cache-lookup.d.ts +113 -0
- package/dist/types/router/match-middleware/cache-store.d.ts +112 -0
- package/dist/types/router/match-middleware/index.d.ts +80 -0
- package/dist/types/router/match-middleware/intercept-resolution.d.ts +116 -0
- package/dist/types/router/match-middleware/segment-resolution.d.ts +94 -0
- package/dist/types/router/match-pipelines.d.ts +103 -0
- package/dist/types/router/match-result.d.ts +114 -0
- package/dist/types/router/metrics.d.ts +6 -0
- package/dist/types/router/middleware-types.d.ts +74 -0
- package/dist/types/router/middleware.d.ts +116 -0
- package/dist/types/router/navigation-snapshot.d.ts +22 -0
- package/dist/types/router/params-util.d.ts +8 -0
- package/dist/types/router/parse-pattern.d.ts +38 -0
- package/dist/types/router/pattern-matching.d.ts +169 -0
- package/dist/types/router/prefetch-cache-ttl.d.ts +27 -0
- package/dist/types/router/prefetch-limits.d.ts +20 -0
- package/dist/types/router/prerender-match.d.ts +53 -0
- package/dist/types/router/preview-match.d.ts +22 -0
- package/dist/types/router/request-classification.d.ts +104 -0
- package/dist/types/router/revalidation.d.ts +57 -0
- package/dist/types/router/route-snapshot.d.ts +112 -0
- package/dist/types/router/router-context.d.ts +137 -0
- package/dist/types/router/router-interfaces.d.ts +434 -0
- package/dist/types/router/router-options.d.ts +738 -0
- package/dist/types/router/router-registry.d.ts +15 -0
- package/dist/types/router/segment-resolution/fresh.d.ts +55 -0
- package/dist/types/router/segment-resolution/helpers.d.ts +93 -0
- package/dist/types/router/segment-resolution/loader-cache.d.ts +33 -0
- package/dist/types/router/segment-resolution/loader-mask.d.ts +44 -0
- package/dist/types/router/segment-resolution/loader-snapshot.d.ts +90 -0
- package/dist/types/router/segment-resolution/mask-nested.d.ts +53 -0
- package/dist/types/router/segment-resolution/revalidation.d.ts +85 -0
- package/dist/types/router/segment-resolution/static-store.d.ts +17 -0
- package/dist/types/router/segment-resolution/streamed-handler-telemetry.d.ts +16 -0
- package/dist/types/router/segment-resolution/view-transition-default.d.ts +28 -0
- package/dist/types/router/segment-resolution.d.ts +3 -0
- package/dist/types/router/segment-wrappers.d.ts +53 -0
- package/dist/types/router/state-cookie-name.d.ts +1 -0
- package/dist/types/router/substitute-pattern-params.d.ts +23 -0
- package/dist/types/router/telemetry-otel.d.ts +113 -0
- package/dist/types/router/telemetry.d.ts +216 -0
- package/dist/types/router/timeout.d.ts +96 -0
- package/dist/types/router/tracing.d.ts +125 -0
- package/dist/types/router/trie-matching.d.ts +32 -0
- package/dist/types/router/types.d.ts +98 -0
- package/dist/types/router/url-params.d.ts +26 -0
- package/dist/types/router.d.ts +7 -0
- package/dist/types/rsc/capture-queue.d.ts +6 -0
- package/dist/types/rsc/full-payload.d.ts +22 -0
- package/dist/types/rsc/handler-context.d.ts +32 -0
- package/dist/types/rsc/handler.d.ts +9 -0
- package/dist/types/rsc/helpers.d.ts +124 -0
- package/dist/types/rsc/index.d.ts +17 -0
- package/dist/types/rsc/json-route-result.d.ts +20 -0
- package/dist/types/rsc/loader-fetch.d.ts +14 -0
- package/dist/types/rsc/manifest-init.d.ts +18 -0
- package/dist/types/rsc/nonce.d.ts +28 -0
- package/dist/types/rsc/origin-guard.d.ts +50 -0
- package/dist/types/rsc/progressive-enhancement.d.ts +19 -0
- package/dist/types/rsc/redirect-guard.d.ts +37 -0
- package/dist/types/rsc/render-pipeline.d.ts +139 -0
- package/dist/types/rsc/response-cache-serve.d.ts +46 -0
- package/dist/types/rsc/response-error.d.ts +19 -0
- package/dist/types/rsc/response-route-handler.d.ts +29 -0
- package/dist/types/rsc/rsc-rendering.d.ts +18 -0
- package/dist/types/rsc/runtime-warnings.d.ts +22 -0
- package/dist/types/rsc/server-action.d.ts +68 -0
- package/dist/types/rsc/shell-build-manifest.d.ts +84 -0
- package/dist/types/rsc/shell-capture-constants.d.ts +27 -0
- package/dist/types/rsc/shell-capture.d.ts +370 -0
- package/dist/types/rsc/shell-serve.d.ts +174 -0
- package/dist/types/rsc/ssr-setup.d.ts +73 -0
- package/dist/types/rsc/transition-gate.d.ts +27 -0
- package/dist/types/rsc/types.d.ts +292 -0
- package/dist/types/runtime-env.d.ts +1 -0
- package/dist/types/search-params.d.ts +125 -0
- package/dist/types/segment-content-promise.d.ts +13 -0
- package/dist/types/segment-fragments.d.ts +56 -0
- package/dist/types/segment-loader-promise.d.ts +22 -0
- package/dist/types/segment-system.d.ts +84 -0
- package/dist/types/serialize.d.ts +164 -0
- package/dist/types/server/context.d.ts +510 -0
- package/dist/types/server/cookie-parse.d.ts +10 -0
- package/dist/types/server/cookie-store.d.ts +107 -0
- package/dist/types/server/fetchable-loader-store.d.ts +20 -0
- package/dist/types/server/handle-store.d.ts +100 -0
- package/dist/types/server/loader-registry.d.ts +32 -0
- package/dist/types/server/request-context.d.ts +628 -0
- package/dist/types/server/root-layout.d.ts +3 -0
- package/dist/types/server.d.ts +15 -0
- package/dist/types/ssr/index.d.ts +233 -0
- package/dist/types/ssr/inject-rsc-eager.d.ts +3 -0
- package/dist/types/ssr/preinit-client-references.d.ts +71 -0
- package/dist/types/ssr/ssr-root.d.ts +69 -0
- package/dist/types/static-handler.d.ts +57 -0
- package/dist/types/testing/cache-status.d.ts +63 -0
- package/dist/types/testing/collect-handle.d.ts +20 -0
- package/dist/types/testing/dispatch.d.ts +127 -0
- package/dist/types/testing/dom.entry.d.ts +15 -0
- package/dist/types/testing/e2e/fixture.d.ts +37 -0
- package/dist/types/testing/e2e/index.d.ts +31 -0
- package/dist/types/testing/e2e/matchers.d.ts +17 -0
- package/dist/types/testing/e2e/page-helpers.d.ts +62 -0
- package/dist/types/testing/e2e/parity.d.ts +111 -0
- package/dist/types/testing/e2e/server.d.ts +35 -0
- package/dist/types/testing/flight-matchers.d.ts +55 -0
- package/dist/types/testing/flight-normalize.d.ts +1 -0
- package/dist/types/testing/flight-tree.d.ts +192 -0
- package/dist/types/testing/flight.d.ts +115 -0
- package/dist/types/testing/flight.entry.d.ts +27 -0
- package/dist/types/testing/generated-routes.d.ts +66 -0
- package/dist/types/testing/index.d.ts +54 -0
- package/dist/types/testing/internal/context.d.ts +225 -0
- package/dist/types/testing/internal/flight-client-globals.d.ts +1 -0
- package/dist/types/testing/internal/seed-vars.d.ts +30 -0
- package/dist/types/testing/render-handler.d.ts +160 -0
- package/dist/types/testing/render-route.d.ts +246 -0
- package/dist/types/testing/run-loader.d.ts +186 -0
- package/dist/types/testing/run-middleware.d.ts +132 -0
- package/dist/types/testing/run-transition-when.d.ts +77 -0
- package/dist/types/testing/shell-status.d.ts +58 -0
- package/dist/types/testing/vitest-stubs/cloudflare-email.d.ts +6 -0
- package/dist/types/testing/vitest-stubs/cloudflare-workers.d.ts +13 -0
- package/dist/types/testing/vitest-stubs/plugin-rsc.d.ts +7 -0
- package/dist/types/testing/vitest-stubs/version.d.ts +1 -0
- package/dist/types/testing/vitest.d.ts +205 -0
- package/dist/types/theme/ThemeProvider.d.ts +13 -0
- package/dist/types/theme/ThemeScript.d.ts +45 -0
- package/dist/types/theme/constants.d.ts +39 -0
- package/dist/types/theme/index.d.ts +29 -0
- package/dist/types/theme/theme-context.d.ts +21 -0
- package/dist/types/theme/theme-script.d.ts +26 -0
- package/dist/types/theme/types.d.ts +162 -0
- package/dist/types/theme/use-theme.d.ts +8 -0
- package/dist/types/types/boundaries.d.ts +93 -0
- package/dist/types/types/cache-types.d.ts +191 -0
- package/dist/types/types/error-types.d.ts +114 -0
- package/dist/types/types/global-namespace.d.ts +90 -0
- package/dist/types/types/handler-context.d.ts +658 -0
- package/dist/types/types/index.d.ts +11 -0
- package/dist/types/types/loader-types.d.ts +182 -0
- package/dist/types/types/request-scope.d.ts +93 -0
- package/dist/types/types/route-config.d.ts +105 -0
- package/dist/types/types/route-entry.d.ts +98 -0
- package/dist/types/types/segments.d.ts +234 -0
- package/dist/types/types.d.ts +1 -0
- package/dist/types/urls/include-helper.d.ts +17 -0
- package/dist/types/urls/include-provider.d.ts +27 -0
- package/dist/types/urls/index.d.ts +6 -0
- package/dist/types/urls/path-helper-types.d.ts +197 -0
- package/dist/types/urls/path-helper.d.ts +12 -0
- package/dist/types/urls/pattern-types.d.ts +166 -0
- package/dist/types/urls/response-types.d.ts +67 -0
- package/dist/types/urls/type-extraction.d.ts +157 -0
- package/dist/types/urls/urls-function.d.ts +24 -0
- package/dist/types/urls.d.ts +1 -0
- package/dist/types/use-loader.d.ts +150 -0
- package/dist/types/vercel/index.d.ts +10 -0
- package/dist/types/vercel/tracing.d.ts +70 -0
- package/dist/types/vite/debug.d.ts +80 -0
- package/dist/types/vite/discovery/bundle-postprocess.d.ts +12 -0
- package/dist/types/vite/discovery/dev-prerender-cache.d.ts +65 -0
- package/dist/types/vite/discovery/discover-routers.d.ts +17 -0
- package/dist/types/vite/discovery/discovery-errors.d.ts +113 -0
- package/dist/types/vite/discovery/gate-state.d.ts +79 -0
- package/dist/types/vite/discovery/prerender-collection.d.ts +24 -0
- package/dist/types/vite/discovery/route-types-writer.d.ts +32 -0
- package/dist/types/vite/discovery/self-gen-tracking.d.ts +22 -0
- package/dist/types/vite/discovery/shell-prerender-phase.d.ts +40 -0
- package/dist/types/vite/discovery/state.d.ts +163 -0
- package/dist/types/vite/discovery/virtual-module-codegen.d.ts +15 -0
- package/dist/types/vite/index.d.ts +11 -0
- package/dist/types/vite/inject-client-debug.d.ts +56 -0
- package/dist/types/vite/plugin-types.d.ts +298 -0
- package/dist/types/vite/plugins/cjs-to-esm.d.ts +6 -0
- package/dist/types/vite/plugins/client-ref-dedup.d.ts +40 -0
- package/dist/types/vite/plugins/client-ref-hashing.d.ts +35 -0
- package/dist/types/vite/plugins/cloudflare-protocol-stub.d.ts +64 -0
- package/dist/types/vite/plugins/expose-action-id.d.ts +18 -0
- package/dist/types/vite/plugins/expose-id-utils.d.ts +37 -0
- package/dist/types/vite/plugins/expose-ids/export-analysis.d.ts +19 -0
- package/dist/types/vite/plugins/expose-ids/handler-transform.d.ts +10 -0
- package/dist/types/vite/plugins/expose-ids/loader-transform.d.ts +8 -0
- package/dist/types/vite/plugins/expose-ids/router-transform.d.ts +13 -0
- package/dist/types/vite/plugins/expose-ids/types.d.ts +29 -0
- package/dist/types/vite/plugins/expose-internal-ids.d.ts +6 -0
- package/dist/types/vite/plugins/performance-tracks.d.ts +25 -0
- package/dist/types/vite/plugins/refresh-cmd.d.ts +20 -0
- package/dist/types/vite/plugins/use-cache-transform.d.ts +20 -0
- package/dist/types/vite/plugins/vercel-output.d.ts +85 -0
- package/dist/types/vite/plugins/version-injector.d.ts +21 -0
- package/dist/types/vite/plugins/version-plugin.d.ts +19 -0
- package/dist/types/vite/plugins/virtual-entries.d.ts +36 -0
- package/dist/types/vite/plugins/virtual-stub-plugin.d.ts +7 -0
- package/dist/types/vite/rango.d.ts +29 -0
- package/dist/types/vite/router-discovery.d.ts +23 -0
- package/dist/types/vite/utils/ast-handler-extract.d.ts +64 -0
- package/dist/types/vite/utils/banner.d.ts +2 -0
- package/dist/types/vite/utils/bundle-analysis.d.ts +28 -0
- package/dist/types/vite/utils/client-chunks.d.ts +55 -0
- package/dist/types/vite/utils/directive-prologue.d.ts +16 -0
- package/dist/types/vite/utils/forward-user-plugins.d.ts +37 -0
- package/dist/types/vite/utils/manifest-utils.d.ts +7 -0
- package/dist/types/vite/utils/package-resolution.d.ts +6 -0
- package/dist/types/vite/utils/prerender-utils.d.ts +32 -0
- package/dist/types/vite/utils/shared-utils.d.ts +55 -0
- package/dist/vite/index.js +1208 -431
- package/package.json +45 -34
- package/skills/caching/SKILL.md +1 -1
- package/skills/catalog.json +6 -0
- package/skills/cloudflare/SKILL.md +149 -0
- package/skills/cloudflare/agents/openai.yaml +4 -0
- package/skills/cloudflare/references/d1-and-local-dev.md +131 -0
- package/skills/cloudflare/references/streaming-and-deploy.md +107 -0
- package/skills/cloudflare/references/webhooks-and-crypto.md +147 -0
- package/skills/composability/SKILL.md +14 -0
- package/skills/debug-manifest/SKILL.md +2 -10
- package/skills/links/SKILL.md +12 -0
- package/skills/middleware/SKILL.md +33 -0
- package/skills/migrate-nextjs/SKILL.md +65 -16
- package/skills/migrate-nextjs/backend-host-swap.md +120 -0
- package/skills/migrate-react-router/SKILL.md +6 -6
- package/skills/mime-routes/SKILL.md +25 -17
- package/skills/ppr/SKILL.md +148 -19
- package/skills/prerender/SKILL.md +44 -1
- package/skills/rango/SKILL.md +10 -10
- package/skills/response-routes/SKILL.md +41 -4
- package/skills/route/SKILL.md +6 -0
- package/skills/testing/SKILL.md +1 -0
- package/skills/testing/cache-prerender.md +43 -2
- package/skills/testing/response-routes.md +2 -2
- package/src/browser/dev-discovery.ts +66 -0
- package/src/browser/event-controller.ts +16 -2
- package/src/browser/navigation-client.ts +6 -0
- package/src/browser/navigation-store.ts +4 -271
- package/src/browser/partial-update.ts +7 -14
- package/src/browser/prefetch/cache.ts +1 -1
- package/src/browser/prefetch/loader.ts +110 -0
- package/src/browser/prefetch/runtime.ts +7 -0
- package/src/browser/react/Link.tsx +7 -10
- package/src/browser/react/NavigationProvider.tsx +1 -1
- package/src/browser/react/use-router.ts +1 -1
- package/src/browser/rsc-router.tsx +15 -2
- package/src/browser/types.ts +4 -27
- package/src/build/generate-manifest.ts +16 -36
- package/src/build/route-trie.ts +5 -50
- package/src/cache/cache-key-utils.ts +0 -1
- package/src/cache/cache-scope.ts +54 -5
- package/src/cache/cf/cf-cache-store.ts +522 -89
- package/src/cache/cf/cf-cache-types.ts +66 -0
- package/src/cache/cf/cf-tag-marker-memo.ts +5 -2
- package/src/cache/cf/cf-zone-purge.ts +101 -0
- package/src/cache/cf/index.ts +5 -0
- package/src/cache/handle-snapshot.ts +22 -1
- package/src/cache/index.ts +2 -0
- package/src/cache/memory-segment-store.ts +44 -1
- package/src/cache/segment-codec.ts +47 -0
- package/src/cache/shell-snapshot.ts +124 -29
- package/src/cache/types.ts +57 -2
- package/src/cache/vercel/vercel-cache-store.ts +113 -14
- package/src/deps/ssr.ts +4 -1
- package/src/dev-discovery-protocol.ts +11 -0
- package/src/index.rsc.ts +7 -0
- package/src/index.ts +1 -0
- package/src/prerender/build-shell-capture.ts +453 -0
- package/src/prerender/shell-manifest-key.ts +20 -0
- package/src/prerender/store.ts +15 -1
- package/src/prerender.ts +3 -3
- package/src/redirect-origin.ts +37 -8
- package/src/route-definition/dsl-helpers.ts +7 -2
- package/src/route-map-builder.ts +61 -54
- package/src/router/content-negotiation.ts +47 -5
- package/src/router/handler-context.ts +31 -15
- package/src/router/intercept-resolution.ts +30 -1
- package/src/router/lazy-includes.ts +1 -0
- package/src/router/loader-resolution.ts +16 -0
- package/src/router/match-api.ts +14 -3
- package/src/router/match-middleware/cache-lookup.ts +12 -1
- package/src/router/metrics.ts +17 -2
- package/src/router/middleware-types.ts +17 -0
- package/src/router/middleware.ts +4 -0
- package/src/router/prerender-match.ts +47 -2
- package/src/router/router-interfaces.ts +11 -6
- package/src/router/router-options.ts +13 -8
- package/src/router/segment-resolution/fresh.ts +21 -2
- package/src/router/segment-resolution/helpers.ts +1 -1
- package/src/router/segment-resolution/loader-cache.ts +38 -7
- package/src/router/segment-resolution/mask-nested.ts +19 -3
- package/src/router/segment-resolution/revalidation.ts +9 -0
- package/src/router/segment-resolution/static-store.ts +36 -10
- package/src/router/telemetry-otel.ts +11 -0
- package/src/router/telemetry.ts +1 -0
- package/src/router/timeout.ts +41 -1
- package/src/router.ts +39 -7
- package/src/rsc/capture-queue.ts +67 -0
- package/src/rsc/handler-context.ts +1 -0
- package/src/rsc/handler.ts +153 -77
- package/src/rsc/helpers.ts +67 -4
- package/src/rsc/loader-fetch.ts +2 -2
- package/src/rsc/manifest-init.ts +4 -11
- package/src/rsc/progressive-enhancement.ts +66 -54
- package/src/rsc/redirect-guard.ts +3 -1
- package/src/rsc/render-pipeline.ts +567 -0
- package/src/rsc/response-cache-serve.ts +39 -18
- package/src/rsc/response-route-handler.ts +9 -45
- package/src/rsc/rsc-rendering.ts +455 -194
- package/src/rsc/server-action.ts +50 -42
- package/src/rsc/shell-build-manifest.ts +316 -0
- package/src/rsc/shell-capture-constants.ts +27 -0
- package/src/rsc/shell-capture.ts +622 -73
- package/src/rsc/shell-serve.ts +133 -3
- package/src/rsc/ssr-setup.ts +102 -23
- package/src/rsc/types.ts +2 -0
- package/src/segment-fragments.ts +124 -0
- package/src/server/context.ts +212 -8
- package/src/server/request-context.ts +322 -48
- package/src/server.ts +0 -2
- package/src/ssr/index.tsx +167 -32
- package/src/ssr/preinit-client-references.ts +106 -0
- package/src/ssr/ssr-root.tsx +35 -2
- package/src/testing/dispatch.ts +133 -67
- package/src/testing/e2e/index.ts +8 -0
- package/src/testing/index.ts +9 -1
- package/src/testing/internal/context.ts +9 -0
- package/src/testing/render-handler.ts +15 -1
- package/src/testing/run-middleware.ts +14 -0
- package/src/testing/shell-status.ts +100 -0
- package/src/types/handler-context.ts +13 -2
- package/src/types/route-entry.ts +3 -0
- package/src/urls/include-helper.ts +1 -0
- package/src/urls/path-helper-types.ts +1 -1
- package/src/urls/path-helper.ts +8 -4
- package/src/urls/pattern-types.ts +29 -0
- package/src/vite/discovery/bundle-postprocess.ts +10 -7
- package/src/vite/discovery/discover-routers.ts +39 -79
- package/src/vite/discovery/prerender-collection.ts +29 -2
- package/src/vite/discovery/shell-prerender-phase.ts +397 -0
- package/src/vite/discovery/state.ts +48 -4
- package/src/vite/discovery/virtual-module-codegen.ts +201 -62
- package/src/vite/index.ts +1 -0
- package/src/vite/plugin-types.ts +33 -0
- package/src/vite/plugins/version-injector.ts +0 -1
- package/src/vite/plugins/version-plugin.ts +8 -0
- package/src/vite/plugins/virtual-entries.ts +48 -5
- package/src/vite/rango.ts +42 -2
- package/src/vite/router-discovery.ts +564 -43
- package/src/vite/utils/manifest-utils.ts +1 -4
- package/src/vite/utils/package-resolution.ts +1 -0
- package/src/vite/utils/prerender-utils.ts +25 -6
- package/src/vite/utils/shared-utils.ts +11 -2
- package/dist/__internal.d.ts +0 -83
- package/dist/__internal.d.ts.map +0 -1
- package/dist/__internal.js +0 -19
- package/dist/__internal.js.map +0 -1
- package/dist/__mocks__/version.d.ts +0 -7
- package/dist/__mocks__/version.d.ts.map +0 -1
- package/dist/__mocks__/version.js +0 -7
- package/dist/__mocks__/version.js.map +0 -1
- package/dist/__tests__/client-href.test.d.ts +0 -2
- package/dist/__tests__/client-href.test.d.ts.map +0 -1
- package/dist/__tests__/client-href.test.js +0 -74
- package/dist/__tests__/client-href.test.js.map +0 -1
- package/dist/__tests__/component-utils.test.d.ts +0 -2
- package/dist/__tests__/component-utils.test.d.ts.map +0 -1
- package/dist/__tests__/component-utils.test.js +0 -51
- package/dist/__tests__/component-utils.test.js.map +0 -1
- package/dist/__tests__/event-controller.test.d.ts +0 -2
- package/dist/__tests__/event-controller.test.d.ts.map +0 -1
- package/dist/__tests__/event-controller.test.js +0 -538
- package/dist/__tests__/event-controller.test.js.map +0 -1
- package/dist/__tests__/helpers/route-tree.d.ts +0 -118
- package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
- package/dist/__tests__/helpers/route-tree.js +0 -374
- package/dist/__tests__/helpers/route-tree.js.map +0 -1
- package/dist/__tests__/match-result.test.d.ts +0 -2
- package/dist/__tests__/match-result.test.d.ts.map +0 -1
- package/dist/__tests__/match-result.test.js +0 -154
- package/dist/__tests__/match-result.test.js.map +0 -1
- package/dist/__tests__/navigation-store.test.d.ts +0 -2
- package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
- package/dist/__tests__/navigation-store.test.js +0 -440
- package/dist/__tests__/navigation-store.test.js.map +0 -1
- package/dist/__tests__/partial-update.test.d.ts +0 -2
- package/dist/__tests__/partial-update.test.d.ts.map +0 -1
- package/dist/__tests__/partial-update.test.js +0 -1009
- package/dist/__tests__/partial-update.test.js.map +0 -1
- package/dist/__tests__/reverse-types.test.d.ts +0 -8
- package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
- package/dist/__tests__/reverse-types.test.js +0 -656
- package/dist/__tests__/reverse-types.test.js.map +0 -1
- package/dist/__tests__/route-definition.test.d.ts +0 -2
- package/dist/__tests__/route-definition.test.d.ts.map +0 -1
- package/dist/__tests__/route-definition.test.js +0 -55
- package/dist/__tests__/route-definition.test.js.map +0 -1
- package/dist/__tests__/router-helpers.test.d.ts +0 -2
- package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
- package/dist/__tests__/router-helpers.test.js +0 -377
- package/dist/__tests__/router-helpers.test.js.map +0 -1
- package/dist/__tests__/router-integration-2.test.d.ts +0 -2
- package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
- package/dist/__tests__/router-integration-2.test.js +0 -426
- package/dist/__tests__/router-integration-2.test.js.map +0 -1
- package/dist/__tests__/router-integration.test.d.ts +0 -2
- package/dist/__tests__/router-integration.test.d.ts.map +0 -1
- package/dist/__tests__/router-integration.test.js +0 -1051
- package/dist/__tests__/router-integration.test.js.map +0 -1
- package/dist/__tests__/search-params.test.d.ts +0 -5
- package/dist/__tests__/search-params.test.d.ts.map +0 -1
- package/dist/__tests__/search-params.test.js +0 -306
- package/dist/__tests__/search-params.test.js.map +0 -1
- package/dist/__tests__/segment-system.test.d.ts +0 -2
- package/dist/__tests__/segment-system.test.d.ts.map +0 -1
- package/dist/__tests__/segment-system.test.js +0 -627
- package/dist/__tests__/segment-system.test.js.map +0 -1
- package/dist/__tests__/static-handler-types.test.d.ts +0 -8
- package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
- package/dist/__tests__/static-handler-types.test.js +0 -63
- package/dist/__tests__/static-handler-types.test.js.map +0 -1
- package/dist/__tests__/urls.test.d.ts +0 -2
- package/dist/__tests__/urls.test.d.ts.map +0 -1
- package/dist/__tests__/urls.test.js +0 -421
- package/dist/__tests__/urls.test.js.map +0 -1
- package/dist/__tests__/use-mount.test.d.ts +0 -2
- package/dist/__tests__/use-mount.test.d.ts.map +0 -1
- package/dist/__tests__/use-mount.test.js +0 -35
- package/dist/__tests__/use-mount.test.js.map +0 -1
- package/dist/bin/rango.d.ts +0 -2
- package/dist/bin/rango.d.ts.map +0 -1
- package/dist/bin/rango.js.map +0 -1
- package/dist/browser/event-controller.d.ts +0 -191
- package/dist/browser/event-controller.d.ts.map +0 -1
- package/dist/browser/event-controller.js +0 -559
- package/dist/browser/event-controller.js.map +0 -1
- package/dist/browser/index.d.ts +0 -2
- package/dist/browser/index.d.ts.map +0 -1
- package/dist/browser/index.js +0 -14
- package/dist/browser/index.js.map +0 -1
- package/dist/browser/link-interceptor.d.ts +0 -38
- package/dist/browser/link-interceptor.d.ts.map +0 -1
- package/dist/browser/link-interceptor.js +0 -99
- package/dist/browser/link-interceptor.js.map +0 -1
- package/dist/browser/logging.d.ts +0 -10
- package/dist/browser/logging.d.ts.map +0 -1
- package/dist/browser/logging.js +0 -29
- package/dist/browser/logging.js.map +0 -1
- package/dist/browser/lru-cache.d.ts +0 -17
- package/dist/browser/lru-cache.d.ts.map +0 -1
- package/dist/browser/lru-cache.js +0 -50
- package/dist/browser/lru-cache.js.map +0 -1
- package/dist/browser/merge-segment-loaders.d.ts +0 -39
- package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
- package/dist/browser/merge-segment-loaders.js +0 -102
- package/dist/browser/merge-segment-loaders.js.map +0 -1
- package/dist/browser/navigation-bridge.d.ts +0 -102
- package/dist/browser/navigation-bridge.d.ts.map +0 -1
- package/dist/browser/navigation-bridge.js +0 -708
- package/dist/browser/navigation-bridge.js.map +0 -1
- package/dist/browser/navigation-client.d.ts +0 -25
- package/dist/browser/navigation-client.d.ts.map +0 -1
- package/dist/browser/navigation-client.js +0 -157
- package/dist/browser/navigation-client.js.map +0 -1
- package/dist/browser/navigation-store.d.ts +0 -101
- package/dist/browser/navigation-store.d.ts.map +0 -1
- package/dist/browser/navigation-store.js +0 -625
- package/dist/browser/navigation-store.js.map +0 -1
- package/dist/browser/partial-update.d.ts +0 -75
- package/dist/browser/partial-update.d.ts.map +0 -1
- package/dist/browser/partial-update.js +0 -426
- package/dist/browser/partial-update.js.map +0 -1
- package/dist/browser/react/Link.d.ts +0 -86
- package/dist/browser/react/Link.d.ts.map +0 -1
- package/dist/browser/react/Link.js +0 -128
- package/dist/browser/react/Link.js.map +0 -1
- package/dist/browser/react/NavigationProvider.d.ts +0 -63
- package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
- package/dist/browser/react/NavigationProvider.js +0 -216
- package/dist/browser/react/NavigationProvider.js.map +0 -1
- package/dist/browser/react/ScrollRestoration.d.ts +0 -75
- package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
- package/dist/browser/react/ScrollRestoration.js +0 -57
- package/dist/browser/react/ScrollRestoration.js.map +0 -1
- package/dist/browser/react/context.d.ts +0 -46
- package/dist/browser/react/context.d.ts.map +0 -1
- package/dist/browser/react/context.js +0 -10
- package/dist/browser/react/context.js.map +0 -1
- package/dist/browser/react/index.d.ts +0 -11
- package/dist/browser/react/index.d.ts.map +0 -1
- package/dist/browser/react/index.js +0 -22
- package/dist/browser/react/index.js.map +0 -1
- package/dist/browser/react/location-state-shared.d.ts +0 -63
- package/dist/browser/react/location-state-shared.d.ts.map +0 -1
- package/dist/browser/react/location-state-shared.js +0 -81
- package/dist/browser/react/location-state-shared.js.map +0 -1
- package/dist/browser/react/location-state.d.ts +0 -23
- package/dist/browser/react/location-state.d.ts.map +0 -1
- package/dist/browser/react/location-state.js +0 -29
- package/dist/browser/react/location-state.js.map +0 -1
- package/dist/browser/react/mount-context.d.ts +0 -24
- package/dist/browser/react/mount-context.d.ts.map +0 -1
- package/dist/browser/react/mount-context.js +0 -24
- package/dist/browser/react/mount-context.js.map +0 -1
- package/dist/browser/react/use-action.d.ts +0 -64
- package/dist/browser/react/use-action.d.ts.map +0 -1
- package/dist/browser/react/use-action.js +0 -134
- package/dist/browser/react/use-action.js.map +0 -1
- package/dist/browser/react/use-client-cache.d.ts +0 -41
- package/dist/browser/react/use-client-cache.d.ts.map +0 -1
- package/dist/browser/react/use-client-cache.js +0 -39
- package/dist/browser/react/use-client-cache.js.map +0 -1
- package/dist/browser/react/use-handle.d.ts +0 -31
- package/dist/browser/react/use-handle.d.ts.map +0 -1
- package/dist/browser/react/use-handle.js +0 -144
- package/dist/browser/react/use-handle.js.map +0 -1
- package/dist/browser/react/use-href.d.ts +0 -33
- package/dist/browser/react/use-href.d.ts.map +0 -1
- package/dist/browser/react/use-href.js +0 -39
- package/dist/browser/react/use-href.js.map +0 -1
- package/dist/browser/react/use-link-status.d.ts +0 -37
- package/dist/browser/react/use-link-status.d.ts.map +0 -1
- package/dist/browser/react/use-link-status.js +0 -99
- package/dist/browser/react/use-link-status.js.map +0 -1
- package/dist/browser/react/use-mount.d.ts +0 -25
- package/dist/browser/react/use-mount.d.ts.map +0 -1
- package/dist/browser/react/use-mount.js +0 -30
- package/dist/browser/react/use-mount.js.map +0 -1
- package/dist/browser/react/use-navigation.d.ts +0 -27
- package/dist/browser/react/use-navigation.d.ts.map +0 -1
- package/dist/browser/react/use-navigation.js +0 -87
- package/dist/browser/react/use-navigation.js.map +0 -1
- package/dist/browser/react/use-segments.d.ts +0 -38
- package/dist/browser/react/use-segments.d.ts.map +0 -1
- package/dist/browser/react/use-segments.js +0 -130
- package/dist/browser/react/use-segments.js.map +0 -1
- package/dist/browser/request-controller.d.ts +0 -26
- package/dist/browser/request-controller.d.ts.map +0 -1
- package/dist/browser/request-controller.js +0 -147
- package/dist/browser/request-controller.js.map +0 -1
- package/dist/browser/rsc-router.d.ts +0 -129
- package/dist/browser/rsc-router.d.ts.map +0 -1
- package/dist/browser/rsc-router.js +0 -195
- package/dist/browser/rsc-router.js.map +0 -1
- package/dist/browser/scroll-restoration.d.ts +0 -93
- package/dist/browser/scroll-restoration.d.ts.map +0 -1
- package/dist/browser/scroll-restoration.js +0 -321
- package/dist/browser/scroll-restoration.js.map +0 -1
- package/dist/browser/segment-structure-assert.d.ts +0 -17
- package/dist/browser/segment-structure-assert.d.ts.map +0 -1
- package/dist/browser/segment-structure-assert.js +0 -59
- package/dist/browser/segment-structure-assert.js.map +0 -1
- package/dist/browser/server-action-bridge.d.ts +0 -26
- package/dist/browser/server-action-bridge.d.ts.map +0 -1
- package/dist/browser/server-action-bridge.js +0 -668
- package/dist/browser/server-action-bridge.js.map +0 -1
- package/dist/browser/shallow.d.ts +0 -12
- package/dist/browser/shallow.d.ts.map +0 -1
- package/dist/browser/shallow.js +0 -34
- package/dist/browser/shallow.js.map +0 -1
- package/dist/browser/types.d.ts +0 -369
- package/dist/browser/types.d.ts.map +0 -1
- package/dist/browser/types.js +0 -2
- package/dist/browser/types.js.map +0 -1
- package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
- package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
- package/dist/build/__tests__/generate-cli.test.js +0 -237
- package/dist/build/__tests__/generate-cli.test.js.map +0 -1
- package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
- package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
- package/dist/build/__tests__/generate-manifest.test.js +0 -119
- package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
- package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
- package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
- package/dist/build/__tests__/generate-route-types.test.js +0 -620
- package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
- package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
- package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
- package/dist/build/__tests__/per-router-manifest.test.js +0 -308
- package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
- package/dist/build/generate-manifest.d.ts +0 -81
- package/dist/build/generate-manifest.d.ts.map +0 -1
- package/dist/build/generate-manifest.js +0 -276
- package/dist/build/generate-manifest.js.map +0 -1
- package/dist/build/generate-route-types.d.ts +0 -115
- package/dist/build/generate-route-types.d.ts.map +0 -1
- package/dist/build/generate-route-types.js +0 -740
- package/dist/build/generate-route-types.js.map +0 -1
- package/dist/build/index.d.ts +0 -21
- package/dist/build/index.d.ts.map +0 -1
- package/dist/build/index.js +0 -21
- package/dist/build/index.js.map +0 -1
- package/dist/build/route-trie.d.ts +0 -71
- package/dist/build/route-trie.d.ts.map +0 -1
- package/dist/build/route-trie.js +0 -175
- package/dist/build/route-trie.js.map +0 -1
- package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
- package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
- package/dist/cache/__tests__/cache-scope.test.js +0 -208
- package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
- package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
- package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
- package/dist/cache/__tests__/document-cache.test.js +0 -345
- package/dist/cache/__tests__/document-cache.test.js.map +0 -1
- package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
- package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
- package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
- package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
- package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
- package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
- package/dist/cache/__tests__/memory-store.test.js +0 -367
- package/dist/cache/__tests__/memory-store.test.js.map +0 -1
- package/dist/cache/cache-scope.d.ts +0 -102
- package/dist/cache/cache-scope.d.ts.map +0 -1
- package/dist/cache/cache-scope.js +0 -440
- package/dist/cache/cache-scope.js.map +0 -1
- package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
- package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
- package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
- package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
- package/dist/cache/cf/cf-cache-store.d.ts +0 -165
- package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
- package/dist/cache/cf/cf-cache-store.js +0 -242
- package/dist/cache/cf/cf-cache-store.js.map +0 -1
- package/dist/cache/cf/index.d.ts +0 -14
- package/dist/cache/cf/index.d.ts.map +0 -1
- package/dist/cache/cf/index.js +0 -17
- package/dist/cache/cf/index.js.map +0 -1
- package/dist/cache/document-cache.d.ts +0 -64
- package/dist/cache/document-cache.d.ts.map +0 -1
- package/dist/cache/document-cache.js +0 -228
- package/dist/cache/document-cache.js.map +0 -1
- package/dist/cache/index.d.ts +0 -19
- package/dist/cache/index.d.ts.map +0 -1
- package/dist/cache/index.js +0 -21
- package/dist/cache/index.js.map +0 -1
- package/dist/cache/memory-segment-store.d.ts +0 -110
- package/dist/cache/memory-segment-store.d.ts.map +0 -1
- package/dist/cache/memory-segment-store.js +0 -117
- package/dist/cache/memory-segment-store.js.map +0 -1
- package/dist/cache/memory-store.d.ts +0 -41
- package/dist/cache/memory-store.d.ts.map +0 -1
- package/dist/cache/memory-store.js +0 -191
- package/dist/cache/memory-store.js.map +0 -1
- package/dist/cache/types.d.ts +0 -317
- package/dist/cache/types.d.ts.map +0 -1
- package/dist/cache/types.js +0 -12
- package/dist/cache/types.js.map +0 -1
- package/dist/client.d.ts +0 -248
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -367
- package/dist/client.js.map +0 -1
- package/dist/client.rsc.d.ts +0 -26
- package/dist/client.rsc.d.ts.map +0 -1
- package/dist/client.rsc.js +0 -46
- package/dist/client.rsc.js.map +0 -1
- package/dist/component-utils.d.ts +0 -36
- package/dist/component-utils.d.ts.map +0 -1
- package/dist/component-utils.js +0 -61
- package/dist/component-utils.js.map +0 -1
- package/dist/components/DefaultDocument.d.ts +0 -13
- package/dist/components/DefaultDocument.d.ts.map +0 -1
- package/dist/components/DefaultDocument.js +0 -15
- package/dist/components/DefaultDocument.js.map +0 -1
- package/dist/debug.d.ts +0 -58
- package/dist/debug.d.ts.map +0 -1
- package/dist/debug.js +0 -157
- package/dist/debug.js.map +0 -1
- package/dist/default-error-boundary.d.ts +0 -11
- package/dist/default-error-boundary.d.ts.map +0 -1
- package/dist/default-error-boundary.js +0 -45
- package/dist/default-error-boundary.js.map +0 -1
- package/dist/deps/browser.d.ts +0 -2
- package/dist/deps/browser.d.ts.map +0 -1
- package/dist/deps/browser.js +0 -3
- package/dist/deps/browser.js.map +0 -1
- package/dist/deps/html-stream-client.d.ts +0 -2
- package/dist/deps/html-stream-client.d.ts.map +0 -1
- package/dist/deps/html-stream-client.js +0 -3
- package/dist/deps/html-stream-client.js.map +0 -1
- package/dist/deps/html-stream-server.d.ts +0 -2
- package/dist/deps/html-stream-server.d.ts.map +0 -1
- package/dist/deps/html-stream-server.js +0 -3
- package/dist/deps/html-stream-server.js.map +0 -1
- package/dist/deps/rsc.d.ts +0 -2
- package/dist/deps/rsc.d.ts.map +0 -1
- package/dist/deps/rsc.js +0 -4
- package/dist/deps/rsc.js.map +0 -1
- package/dist/deps/ssr.d.ts +0 -2
- package/dist/deps/ssr.d.ts.map +0 -1
- package/dist/deps/ssr.js +0 -3
- package/dist/deps/ssr.js.map +0 -1
- package/dist/errors.d.ts +0 -174
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -241
- package/dist/errors.js.map +0 -1
- package/dist/handle.d.ts +0 -78
- package/dist/handle.d.ts.map +0 -1
- package/dist/handle.js +0 -82
- package/dist/handle.js.map +0 -1
- package/dist/handles/MetaTags.d.ts +0 -14
- package/dist/handles/MetaTags.d.ts.map +0 -1
- package/dist/handles/MetaTags.js +0 -136
- package/dist/handles/MetaTags.js.map +0 -1
- package/dist/handles/index.d.ts +0 -6
- package/dist/handles/index.d.ts.map +0 -1
- package/dist/handles/index.js +0 -6
- package/dist/handles/index.js.map +0 -1
- package/dist/handles/meta.d.ts +0 -39
- package/dist/handles/meta.d.ts.map +0 -1
- package/dist/handles/meta.js +0 -202
- package/dist/handles/meta.js.map +0 -1
- package/dist/host/__tests__/errors.test.d.ts +0 -2
- package/dist/host/__tests__/errors.test.d.ts.map +0 -1
- package/dist/host/__tests__/errors.test.js +0 -76
- package/dist/host/__tests__/errors.test.js.map +0 -1
- package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
- package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
- package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
- package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
- package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
- package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
- package/dist/host/__tests__/pattern-matcher.test.js +0 -251
- package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
- package/dist/host/__tests__/router.test.d.ts +0 -2
- package/dist/host/__tests__/router.test.d.ts.map +0 -1
- package/dist/host/__tests__/router.test.js +0 -241
- package/dist/host/__tests__/router.test.js.map +0 -1
- package/dist/host/__tests__/testing.test.d.ts +0 -2
- package/dist/host/__tests__/testing.test.d.ts.map +0 -1
- package/dist/host/__tests__/testing.test.js +0 -64
- package/dist/host/__tests__/testing.test.js.map +0 -1
- package/dist/host/__tests__/utils.test.d.ts +0 -2
- package/dist/host/__tests__/utils.test.d.ts.map +0 -1
- package/dist/host/__tests__/utils.test.js +0 -29
- package/dist/host/__tests__/utils.test.js.map +0 -1
- package/dist/host/cookie-handler.d.ts +0 -34
- package/dist/host/cookie-handler.d.ts.map +0 -1
- package/dist/host/cookie-handler.js +0 -124
- package/dist/host/cookie-handler.js.map +0 -1
- package/dist/host/errors.d.ts +0 -56
- package/dist/host/errors.d.ts.map +0 -1
- package/dist/host/errors.js +0 -79
- package/dist/host/errors.js.map +0 -1
- package/dist/host/index.d.ts +0 -29
- package/dist/host/index.d.ts.map +0 -1
- package/dist/host/index.js +0 -32
- package/dist/host/index.js.map +0 -1
- package/dist/host/pattern-matcher.d.ts +0 -36
- package/dist/host/pattern-matcher.d.ts.map +0 -1
- package/dist/host/pattern-matcher.js +0 -172
- package/dist/host/pattern-matcher.js.map +0 -1
- package/dist/host/router.d.ts +0 -26
- package/dist/host/router.d.ts.map +0 -1
- package/dist/host/router.js +0 -218
- package/dist/host/router.js.map +0 -1
- package/dist/host/testing.d.ts +0 -36
- package/dist/host/testing.d.ts.map +0 -1
- package/dist/host/testing.js +0 -55
- package/dist/host/testing.js.map +0 -1
- package/dist/host/types.d.ts +0 -115
- package/dist/host/types.d.ts.map +0 -1
- package/dist/host/types.js +0 -7
- package/dist/host/types.js.map +0 -1
- package/dist/host/utils.d.ts +0 -21
- package/dist/host/utils.d.ts.map +0 -1
- package/dist/host/utils.js +0 -23
- package/dist/host/utils.js.map +0 -1
- package/dist/href-client.d.ts +0 -131
- package/dist/href-client.d.ts.map +0 -1
- package/dist/href-client.js +0 -64
- package/dist/href-client.js.map +0 -1
- package/dist/href-context.d.ts +0 -29
- package/dist/href-context.d.ts.map +0 -1
- package/dist/href-context.js +0 -21
- package/dist/href-context.js.map +0 -1
- package/dist/index.d.ts +0 -73
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -91
- package/dist/index.js.map +0 -1
- package/dist/index.rsc.d.ts +0 -32
- package/dist/index.rsc.d.ts.map +0 -1
- package/dist/index.rsc.js +0 -40
- package/dist/index.rsc.js.map +0 -1
- package/dist/internal-debug.d.ts +0 -2
- package/dist/internal-debug.d.ts.map +0 -1
- package/dist/internal-debug.js +0 -5
- package/dist/internal-debug.js.map +0 -1
- package/dist/loader.d.ts +0 -14
- package/dist/loader.d.ts.map +0 -1
- package/dist/loader.js +0 -20
- package/dist/loader.js.map +0 -1
- package/dist/loader.rsc.d.ts +0 -19
- package/dist/loader.rsc.d.ts.map +0 -1
- package/dist/loader.rsc.js +0 -99
- package/dist/loader.rsc.js.map +0 -1
- package/dist/network-error-thrower.d.ts +0 -17
- package/dist/network-error-thrower.d.ts.map +0 -1
- package/dist/network-error-thrower.js +0 -14
- package/dist/network-error-thrower.js.map +0 -1
- package/dist/outlet-context.d.ts +0 -13
- package/dist/outlet-context.d.ts.map +0 -1
- package/dist/outlet-context.js +0 -3
- package/dist/outlet-context.js.map +0 -1
- package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
- package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
- package/dist/prerender/__tests__/param-hash.test.js +0 -148
- package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
- package/dist/prerender/param-hash.d.ts +0 -16
- package/dist/prerender/param-hash.d.ts.map +0 -1
- package/dist/prerender/param-hash.js +0 -36
- package/dist/prerender/param-hash.js.map +0 -1
- package/dist/prerender/store.d.ts +0 -38
- package/dist/prerender/store.d.ts.map +0 -1
- package/dist/prerender/store.js +0 -61
- package/dist/prerender/store.js.map +0 -1
- package/dist/prerender.d.ts +0 -66
- package/dist/prerender.d.ts.map +0 -1
- package/dist/prerender.js +0 -57
- package/dist/prerender.js.map +0 -1
- package/dist/reverse.d.ts +0 -196
- package/dist/reverse.d.ts.map +0 -1
- package/dist/reverse.js +0 -78
- package/dist/reverse.js.map +0 -1
- package/dist/root-error-boundary.d.ts +0 -33
- package/dist/root-error-boundary.d.ts.map +0 -1
- package/dist/root-error-boundary.js +0 -165
- package/dist/root-error-boundary.js.map +0 -1
- package/dist/route-content-wrapper.d.ts +0 -46
- package/dist/route-content-wrapper.d.ts.map +0 -1
- package/dist/route-content-wrapper.js +0 -77
- package/dist/route-content-wrapper.js.map +0 -1
- package/dist/route-definition.d.ts +0 -421
- package/dist/route-definition.d.ts.map +0 -1
- package/dist/route-definition.js +0 -868
- package/dist/route-definition.js.map +0 -1
- package/dist/route-map-builder.d.ts +0 -155
- package/dist/route-map-builder.d.ts.map +0 -1
- package/dist/route-map-builder.js +0 -237
- package/dist/route-map-builder.js.map +0 -1
- package/dist/route-types.d.ts +0 -165
- package/dist/route-types.d.ts.map +0 -1
- package/dist/route-types.js +0 -7
- package/dist/route-types.js.map +0 -1
- package/dist/router/__tests__/handler-context.test.d.ts +0 -2
- package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
- package/dist/router/__tests__/handler-context.test.js +0 -65
- package/dist/router/__tests__/handler-context.test.js.map +0 -1
- package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
- package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
- package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
- package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
- package/dist/router/__tests__/match-context.test.d.ts +0 -2
- package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
- package/dist/router/__tests__/match-context.test.js +0 -92
- package/dist/router/__tests__/match-context.test.js.map +0 -1
- package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
- package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
- package/dist/router/__tests__/match-pipelines.test.js +0 -417
- package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
- package/dist/router/__tests__/match-result.test.d.ts +0 -2
- package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
- package/dist/router/__tests__/match-result.test.js +0 -457
- package/dist/router/__tests__/match-result.test.js.map +0 -1
- package/dist/router/__tests__/on-error.test.d.ts +0 -2
- package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
- package/dist/router/__tests__/on-error.test.js +0 -678
- package/dist/router/__tests__/on-error.test.js.map +0 -1
- package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
- package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
- package/dist/router/__tests__/pattern-matching.test.js +0 -629
- package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
- package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
- package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
- package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
- package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
- package/dist/router/error-handling.d.ts +0 -77
- package/dist/router/error-handling.d.ts.map +0 -1
- package/dist/router/error-handling.js +0 -202
- package/dist/router/error-handling.js.map +0 -1
- package/dist/router/handler-context.d.ts +0 -20
- package/dist/router/handler-context.d.ts.map +0 -1
- package/dist/router/handler-context.js +0 -198
- package/dist/router/handler-context.js.map +0 -1
- package/dist/router/intercept-resolution.d.ts +0 -66
- package/dist/router/intercept-resolution.d.ts.map +0 -1
- package/dist/router/intercept-resolution.js +0 -246
- package/dist/router/intercept-resolution.js.map +0 -1
- package/dist/router/loader-resolution.d.ts +0 -64
- package/dist/router/loader-resolution.d.ts.map +0 -1
- package/dist/router/loader-resolution.js +0 -284
- package/dist/router/loader-resolution.js.map +0 -1
- package/dist/router/logging.d.ts +0 -15
- package/dist/router/logging.d.ts.map +0 -1
- package/dist/router/logging.js +0 -99
- package/dist/router/logging.js.map +0 -1
- package/dist/router/manifest.d.ts +0 -22
- package/dist/router/manifest.d.ts.map +0 -1
- package/dist/router/manifest.js +0 -181
- package/dist/router/manifest.js.map +0 -1
- package/dist/router/match-api.d.ts +0 -35
- package/dist/router/match-api.d.ts.map +0 -1
- package/dist/router/match-api.js +0 -406
- package/dist/router/match-api.js.map +0 -1
- package/dist/router/match-context.d.ts +0 -206
- package/dist/router/match-context.d.ts.map +0 -1
- package/dist/router/match-context.js +0 -17
- package/dist/router/match-context.js.map +0 -1
- package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
- package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
- package/dist/router/match-middleware/background-revalidation.js +0 -75
- package/dist/router/match-middleware/background-revalidation.js.map +0 -1
- package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
- package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
- package/dist/router/match-middleware/cache-lookup.js +0 -257
- package/dist/router/match-middleware/cache-lookup.js.map +0 -1
- package/dist/router/match-middleware/cache-store.d.ts +0 -113
- package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
- package/dist/router/match-middleware/cache-store.js +0 -108
- package/dist/router/match-middleware/cache-store.js.map +0 -1
- package/dist/router/match-middleware/index.d.ts +0 -81
- package/dist/router/match-middleware/index.d.ts.map +0 -1
- package/dist/router/match-middleware/index.js +0 -80
- package/dist/router/match-middleware/index.js.map +0 -1
- package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
- package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
- package/dist/router/match-middleware/intercept-resolution.js +0 -134
- package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
- package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
- package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
- package/dist/router/match-middleware/segment-resolution.js +0 -53
- package/dist/router/match-middleware/segment-resolution.js.map +0 -1
- package/dist/router/match-pipelines.d.ts +0 -147
- package/dist/router/match-pipelines.d.ts.map +0 -1
- package/dist/router/match-pipelines.js +0 -82
- package/dist/router/match-pipelines.js.map +0 -1
- package/dist/router/match-result.d.ts +0 -126
- package/dist/router/match-result.d.ts.map +0 -1
- package/dist/router/match-result.js +0 -93
- package/dist/router/match-result.js.map +0 -1
- package/dist/router/metrics.d.ts +0 -20
- package/dist/router/metrics.d.ts.map +0 -1
- package/dist/router/metrics.js +0 -47
- package/dist/router/metrics.js.map +0 -1
- package/dist/router/middleware.d.ts +0 -249
- package/dist/router/middleware.d.ts.map +0 -1
- package/dist/router/middleware.js +0 -434
- package/dist/router/middleware.js.map +0 -1
- package/dist/router/middleware.test.d.ts +0 -2
- package/dist/router/middleware.test.d.ts.map +0 -1
- package/dist/router/middleware.test.js +0 -816
- package/dist/router/middleware.test.js.map +0 -1
- package/dist/router/pattern-matching.d.ts +0 -149
- package/dist/router/pattern-matching.d.ts.map +0 -1
- package/dist/router/pattern-matching.js +0 -349
- package/dist/router/pattern-matching.js.map +0 -1
- package/dist/router/revalidation.d.ts +0 -44
- package/dist/router/revalidation.d.ts.map +0 -1
- package/dist/router/revalidation.js +0 -147
- package/dist/router/revalidation.js.map +0 -1
- package/dist/router/router-context.d.ts +0 -135
- package/dist/router/router-context.d.ts.map +0 -1
- package/dist/router/router-context.js +0 -36
- package/dist/router/router-context.js.map +0 -1
- package/dist/router/segment-resolution.d.ts +0 -127
- package/dist/router/segment-resolution.d.ts.map +0 -1
- package/dist/router/segment-resolution.js +0 -919
- package/dist/router/segment-resolution.js.map +0 -1
- package/dist/router/trie-matching.d.ts +0 -40
- package/dist/router/trie-matching.d.ts.map +0 -1
- package/dist/router/trie-matching.js +0 -127
- package/dist/router/trie-matching.js.map +0 -1
- package/dist/router/types.d.ts +0 -136
- package/dist/router/types.d.ts.map +0 -1
- package/dist/router/types.js +0 -7
- package/dist/router/types.js.map +0 -1
- package/dist/router.d.ts +0 -753
- package/dist/router.d.ts.map +0 -1
- package/dist/router.gen.d.ts +0 -6
- package/dist/router.gen.d.ts.map +0 -1
- package/dist/router.gen.js +0 -6
- package/dist/router.gen.js.map +0 -1
- package/dist/router.js +0 -1304
- package/dist/router.js.map +0 -1
- package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
- package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
- package/dist/rsc/__tests__/helpers.test.js +0 -140
- package/dist/rsc/__tests__/helpers.test.js.map +0 -1
- package/dist/rsc/handler.d.ts +0 -45
- package/dist/rsc/handler.d.ts.map +0 -1
- package/dist/rsc/handler.js +0 -1172
- package/dist/rsc/handler.js.map +0 -1
- package/dist/rsc/helpers.d.ts +0 -16
- package/dist/rsc/helpers.d.ts.map +0 -1
- package/dist/rsc/helpers.js +0 -55
- package/dist/rsc/helpers.js.map +0 -1
- package/dist/rsc/index.d.ts +0 -22
- package/dist/rsc/index.d.ts.map +0 -1
- package/dist/rsc/index.js +0 -23
- package/dist/rsc/index.js.map +0 -1
- package/dist/rsc/nonce.d.ts +0 -9
- package/dist/rsc/nonce.d.ts.map +0 -1
- package/dist/rsc/nonce.js +0 -18
- package/dist/rsc/nonce.js.map +0 -1
- package/dist/rsc/types.d.ts +0 -206
- package/dist/rsc/types.d.ts.map +0 -1
- package/dist/rsc/types.js +0 -8
- package/dist/rsc/types.js.map +0 -1
- package/dist/search-params.d.ts +0 -103
- package/dist/search-params.d.ts.map +0 -1
- package/dist/search-params.js +0 -74
- package/dist/search-params.js.map +0 -1
- package/dist/segment-system.d.ts +0 -75
- package/dist/segment-system.d.ts.map +0 -1
- package/dist/segment-system.js +0 -336
- package/dist/segment-system.js.map +0 -1
- package/dist/server/context.d.ts +0 -245
- package/dist/server/context.d.ts.map +0 -1
- package/dist/server/context.js +0 -197
- package/dist/server/context.js.map +0 -1
- package/dist/server/fetchable-loader-store.d.ts +0 -18
- package/dist/server/fetchable-loader-store.d.ts.map +0 -1
- package/dist/server/fetchable-loader-store.js +0 -18
- package/dist/server/fetchable-loader-store.js.map +0 -1
- package/dist/server/handle-store.d.ts +0 -85
- package/dist/server/handle-store.d.ts.map +0 -1
- package/dist/server/handle-store.js +0 -142
- package/dist/server/handle-store.js.map +0 -1
- package/dist/server/loader-registry.d.ts +0 -55
- package/dist/server/loader-registry.d.ts.map +0 -1
- package/dist/server/loader-registry.js +0 -132
- package/dist/server/loader-registry.js.map +0 -1
- package/dist/server/request-context.d.ts +0 -226
- package/dist/server/request-context.d.ts.map +0 -1
- package/dist/server/request-context.js +0 -290
- package/dist/server/request-context.js.map +0 -1
- package/dist/server/root-layout.d.ts +0 -4
- package/dist/server/root-layout.d.ts.map +0 -1
- package/dist/server/root-layout.js +0 -5
- package/dist/server/root-layout.js.map +0 -1
- package/dist/server.d.ts +0 -15
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js +0 -20
- package/dist/server.js.map +0 -1
- package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
- package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
- package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
- package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
- package/dist/ssr/index.d.ts +0 -98
- package/dist/ssr/index.d.ts.map +0 -1
- package/dist/ssr/index.js +0 -158
- package/dist/ssr/index.js.map +0 -1
- package/dist/static-handler.d.ts +0 -50
- package/dist/static-handler.d.ts.map +0 -1
- package/dist/static-handler.gen.d.ts +0 -5
- package/dist/static-handler.gen.d.ts.map +0 -1
- package/dist/static-handler.gen.js +0 -5
- package/dist/static-handler.gen.js.map +0 -1
- package/dist/static-handler.js +0 -29
- package/dist/static-handler.js.map +0 -1
- package/dist/theme/ThemeProvider.d.ts +0 -20
- package/dist/theme/ThemeProvider.d.ts.map +0 -1
- package/dist/theme/ThemeProvider.js +0 -240
- package/dist/theme/ThemeProvider.js.map +0 -1
- package/dist/theme/ThemeScript.d.ts +0 -48
- package/dist/theme/ThemeScript.d.ts.map +0 -1
- package/dist/theme/ThemeScript.js +0 -13
- package/dist/theme/ThemeScript.js.map +0 -1
- package/dist/theme/__tests__/theme.test.d.ts +0 -2
- package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
- package/dist/theme/__tests__/theme.test.js +0 -103
- package/dist/theme/__tests__/theme.test.js.map +0 -1
- package/dist/theme/constants.d.ts +0 -29
- package/dist/theme/constants.d.ts.map +0 -1
- package/dist/theme/constants.js +0 -48
- package/dist/theme/constants.js.map +0 -1
- package/dist/theme/index.d.ts +0 -31
- package/dist/theme/index.d.ts.map +0 -1
- package/dist/theme/index.js +0 -36
- package/dist/theme/index.js.map +0 -1
- package/dist/theme/theme-context.d.ts +0 -40
- package/dist/theme/theme-context.d.ts.map +0 -1
- package/dist/theme/theme-context.js +0 -60
- package/dist/theme/theme-context.js.map +0 -1
- package/dist/theme/theme-script.d.ts +0 -27
- package/dist/theme/theme-script.d.ts.map +0 -1
- package/dist/theme/theme-script.js +0 -147
- package/dist/theme/theme-script.js.map +0 -1
- package/dist/theme/types.d.ts +0 -163
- package/dist/theme/types.d.ts.map +0 -1
- package/dist/theme/types.js +0 -11
- package/dist/theme/types.js.map +0 -1
- package/dist/theme/use-theme.d.ts +0 -12
- package/dist/theme/use-theme.d.ts.map +0 -1
- package/dist/theme/use-theme.js +0 -40
- package/dist/theme/use-theme.js.map +0 -1
- package/dist/types.d.ts +0 -1479
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -10
- package/dist/types.js.map +0 -1
- package/dist/urls.d.ts +0 -441
- package/dist/urls.d.ts.map +0 -1
- package/dist/urls.gen.d.ts +0 -8
- package/dist/urls.gen.d.ts.map +0 -1
- package/dist/urls.gen.js +0 -8
- package/dist/urls.gen.js.map +0 -1
- package/dist/urls.js +0 -443
- package/dist/urls.js.map +0 -1
- package/dist/use-loader.d.ts +0 -127
- package/dist/use-loader.d.ts.map +0 -1
- package/dist/use-loader.js +0 -237
- package/dist/use-loader.js.map +0 -1
- package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
- package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
- package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
- package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
- package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
- package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
- package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
- package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
- package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
- package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
- package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
- package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
- package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
- package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
- package/dist/vite/__tests__/expose-router-id.test.js +0 -39
- package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
- package/dist/vite/ast-handler-extract.d.ts +0 -49
- package/dist/vite/ast-handler-extract.d.ts.map +0 -1
- package/dist/vite/ast-handler-extract.js +0 -249
- package/dist/vite/ast-handler-extract.js.map +0 -1
- package/dist/vite/expose-action-id.d.ts +0 -19
- package/dist/vite/expose-action-id.d.ts.map +0 -1
- package/dist/vite/expose-action-id.js +0 -250
- package/dist/vite/expose-action-id.js.map +0 -1
- package/dist/vite/expose-id-utils.d.ts +0 -69
- package/dist/vite/expose-id-utils.d.ts.map +0 -1
- package/dist/vite/expose-id-utils.js +0 -289
- package/dist/vite/expose-id-utils.js.map +0 -1
- package/dist/vite/expose-internal-ids.d.ts +0 -22
- package/dist/vite/expose-internal-ids.d.ts.map +0 -1
- package/dist/vite/expose-internal-ids.js +0 -886
- package/dist/vite/expose-internal-ids.js.map +0 -1
- package/dist/vite/index.d.ts +0 -149
- package/dist/vite/index.d.ts.map +0 -1
- package/dist/vite/index.js.bak +0 -5448
- package/dist/vite/index.js.map +0 -1
- package/dist/vite/index.named-routes.gen.ts +0 -103
- package/dist/vite/package-resolution.d.ts +0 -43
- package/dist/vite/package-resolution.d.ts.map +0 -1
- package/dist/vite/package-resolution.js +0 -112
- package/dist/vite/package-resolution.js.map +0 -1
- package/dist/vite/virtual-entries.d.ts +0 -25
- package/dist/vite/virtual-entries.d.ts.map +0 -1
- package/dist/vite/virtual-entries.js +0 -110
- package/dist/vite/virtual-entries.js.map +0 -1
- package/skills/migrate-react-router/cloudflare-workers.md +0 -129
package/src/route-map-builder.ts
CHANGED
|
@@ -12,11 +12,6 @@ let globalRouteMap: Record<string, string> = {};
|
|
|
12
12
|
|
|
13
13
|
let cachedManifest: Record<string, string> | null = null;
|
|
14
14
|
|
|
15
|
-
let cachedPrecomputedEntries: Array<{
|
|
16
|
-
staticPrefix: string;
|
|
17
|
-
routes: Record<string, string>;
|
|
18
|
-
}> | null = null;
|
|
19
|
-
|
|
20
15
|
/**
|
|
21
16
|
* Register routes into the global route map.
|
|
22
17
|
* Routes are merged with any existing registered routes.
|
|
@@ -87,43 +82,6 @@ export function clearCachedManifest(): void {
|
|
|
87
82
|
cachedManifest = null;
|
|
88
83
|
}
|
|
89
84
|
|
|
90
|
-
/**
|
|
91
|
-
* Set pre-computed route entries from build-time data.
|
|
92
|
-
*
|
|
93
|
-
* Each entry corresponds to a leaf node in the prefix tree (no nested includes).
|
|
94
|
-
* evaluateLazyEntry() checks these before running the handler, avoiding the
|
|
95
|
-
* 5-50ms cost of handler evaluation for route matching on the first request.
|
|
96
|
-
*
|
|
97
|
-
* @param entries - Array of { staticPrefix, routes } from build-time prefix tree leaves
|
|
98
|
-
*/
|
|
99
|
-
export function setPrecomputedEntries(
|
|
100
|
-
entries: Array<{
|
|
101
|
-
staticPrefix: string;
|
|
102
|
-
routes: Record<string, string>;
|
|
103
|
-
}> | null,
|
|
104
|
-
): void {
|
|
105
|
-
cachedPrecomputedEntries = entries;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* Get pre-computed route entries (if available)
|
|
110
|
-
*/
|
|
111
|
-
export function getPrecomputedEntries(): typeof cachedPrecomputedEntries {
|
|
112
|
-
return cachedPrecomputedEntries;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
// Route trie for O(path_length) matching at runtime.
|
|
116
|
-
// Built at build time from the route manifest and serialized into the virtual module.
|
|
117
|
-
let cachedRouteTrie: import("./build/route-trie.js").TrieNode | null = null;
|
|
118
|
-
|
|
119
|
-
export function setRouteTrie(trie: typeof cachedRouteTrie): void {
|
|
120
|
-
cachedRouteTrie = trie;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
export function getRouteTrie(): typeof cachedRouteTrie {
|
|
124
|
-
return cachedRouteTrie;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
85
|
// Per-router isolated data: each router gets its own manifest, trie, and
|
|
128
86
|
// precomputed entries so multi-router setups (e.g. site + admin via
|
|
129
87
|
// createHostRouter()) don't see each other's routes.
|
|
@@ -146,14 +104,18 @@ const perRouterPrecomputedEntriesMap: Map<
|
|
|
146
104
|
export function clearAllRouterData(): void {
|
|
147
105
|
globalRouteMap = {};
|
|
148
106
|
cachedManifest = null;
|
|
149
|
-
cachedPrecomputedEntries = null;
|
|
150
|
-
cachedRouteTrie = null;
|
|
151
107
|
rootScopeRoutes.clear();
|
|
108
|
+
perRouterRootScopeRoutes.clear();
|
|
152
109
|
globalSearchSchemas.clear();
|
|
110
|
+
perRouterSearchSchemas.clear();
|
|
153
111
|
perRouterManifestMap.clear();
|
|
154
112
|
perRouterTrieMap.clear();
|
|
155
113
|
perRouterPrecomputedEntriesMap.clear();
|
|
156
114
|
authoritativeTrieRouters.clear();
|
|
115
|
+
// Clear the loader registry too: a loader that survives a clear closes over
|
|
116
|
+
// a module import whose data predates the clear, and re-running it would
|
|
117
|
+
// re-install that stale trie as authoritative.
|
|
118
|
+
routerManifestLoaders.clear();
|
|
157
119
|
}
|
|
158
120
|
|
|
159
121
|
export function setRouterManifest(
|
|
@@ -225,17 +187,17 @@ export function registerRouterManifestLoader(
|
|
|
225
187
|
}
|
|
226
188
|
|
|
227
189
|
export async function ensureRouterManifest(routerId: string): Promise<void> {
|
|
228
|
-
//
|
|
229
|
-
//
|
|
230
|
-
//
|
|
231
|
-
//
|
|
232
|
-
//
|
|
233
|
-
|
|
234
|
-
|
|
190
|
+
// Gate on the trie: it is the only data the lazy loader supplies (the
|
|
191
|
+
// name->path map is pre-set by the eager virtual module's
|
|
192
|
+
// setRouterManifest() and never comes from the loader). Gating on the
|
|
193
|
+
// manifest instead would let the loader be skipped while the per-router
|
|
194
|
+
// trie is missing, and findMatch would fall back to insertion-order regex
|
|
195
|
+
// matching — which mishandles wildcard priority (catch-alls match before
|
|
196
|
+
// specific routes).
|
|
197
|
+
if (perRouterTrieMap.has(routerId)) return;
|
|
235
198
|
const loader = routerManifestLoaders.get(routerId);
|
|
236
199
|
if (loader) {
|
|
237
200
|
const mod = await loader();
|
|
238
|
-
if (mod.manifest) perRouterManifestMap.set(routerId, mod.manifest);
|
|
239
201
|
if (mod.trie) {
|
|
240
202
|
perRouterTrieMap.set(routerId, mod.trie);
|
|
241
203
|
// A trie serialized into the build manifest comes from complete
|
|
@@ -265,7 +227,16 @@ export function waitForManifestReady(): Promise<void> | null {
|
|
|
265
227
|
// Tracks whether each route is at root scope (no named include boundary above).
|
|
266
228
|
// Used by dot-local reverse resolution to decide whether bare-name fallback
|
|
267
229
|
// is allowed after scoped lookups are exhausted.
|
|
230
|
+
//
|
|
231
|
+
// Both this and the search-schema registry below are keyed by route NAME and
|
|
232
|
+
// registered by path() at evaluation time. Two routers can legally declare the
|
|
233
|
+
// same route name (per-router manifests keep them apart), so each registry has
|
|
234
|
+
// a per-router tier consulted first; the global tier is the fallback for
|
|
235
|
+
// contexts with no router identity (single-router apps, unit tests, evaluation
|
|
236
|
+
// outside generateManifestFull). Without the per-router tier, the
|
|
237
|
+
// last-evaluated router silently won for BOTH routers.
|
|
268
238
|
const rootScopeRoutes: Map<string, boolean> = new Map();
|
|
239
|
+
const perRouterRootScopeRoutes: Map<string, Map<string, boolean>> = new Map();
|
|
269
240
|
|
|
270
241
|
/**
|
|
271
242
|
* Register whether a route is at root scope.
|
|
@@ -274,29 +245,65 @@ const rootScopeRoutes: Map<string, boolean> = new Map();
|
|
|
274
245
|
export function registerRouteRootScope(
|
|
275
246
|
routeName: string,
|
|
276
247
|
rootScoped: boolean,
|
|
248
|
+
routerId?: string,
|
|
277
249
|
): void {
|
|
278
250
|
rootScopeRoutes.set(routeName, rootScoped);
|
|
251
|
+
if (routerId) {
|
|
252
|
+
let perRouter = perRouterRootScopeRoutes.get(routerId);
|
|
253
|
+
if (!perRouter) {
|
|
254
|
+
perRouter = new Map();
|
|
255
|
+
perRouterRootScopeRoutes.set(routerId, perRouter);
|
|
256
|
+
}
|
|
257
|
+
perRouter.set(routeName, rootScoped);
|
|
258
|
+
}
|
|
279
259
|
}
|
|
280
260
|
|
|
281
261
|
/**
|
|
282
262
|
* Check if a route is at root scope.
|
|
283
263
|
* Returns undefined if the route has not been registered (e.g. in unit tests).
|
|
284
264
|
*/
|
|
285
|
-
export function isRouteRootScoped(
|
|
265
|
+
export function isRouteRootScoped(
|
|
266
|
+
routeName: string,
|
|
267
|
+
routerId?: string,
|
|
268
|
+
): boolean | undefined {
|
|
269
|
+
if (routerId) {
|
|
270
|
+
const scoped = perRouterRootScopeRoutes.get(routerId)?.get(routeName);
|
|
271
|
+
if (scoped !== undefined) return scoped;
|
|
272
|
+
}
|
|
286
273
|
return rootScopeRoutes.get(routeName);
|
|
287
274
|
}
|
|
288
275
|
|
|
289
276
|
import type { SearchSchema } from "./search-params.js";
|
|
290
277
|
|
|
291
278
|
const globalSearchSchemas: Map<string, SearchSchema> = new Map();
|
|
279
|
+
const perRouterSearchSchemas: Map<
|
|
280
|
+
string,
|
|
281
|
+
Map<string, SearchSchema>
|
|
282
|
+
> = new Map();
|
|
292
283
|
|
|
293
284
|
export function registerSearchSchema(
|
|
294
285
|
routeName: string,
|
|
295
286
|
schema: SearchSchema,
|
|
287
|
+
routerId?: string,
|
|
296
288
|
): void {
|
|
297
289
|
globalSearchSchemas.set(routeName, schema);
|
|
290
|
+
if (routerId) {
|
|
291
|
+
let perRouter = perRouterSearchSchemas.get(routerId);
|
|
292
|
+
if (!perRouter) {
|
|
293
|
+
perRouter = new Map();
|
|
294
|
+
perRouterSearchSchemas.set(routerId, perRouter);
|
|
295
|
+
}
|
|
296
|
+
perRouter.set(routeName, schema);
|
|
297
|
+
}
|
|
298
298
|
}
|
|
299
299
|
|
|
300
|
-
export function getSearchSchema(
|
|
300
|
+
export function getSearchSchema(
|
|
301
|
+
routeName: string,
|
|
302
|
+
routerId?: string,
|
|
303
|
+
): SearchSchema | undefined {
|
|
304
|
+
if (routerId) {
|
|
305
|
+
const schema = perRouterSearchSchemas.get(routerId)?.get(routeName);
|
|
306
|
+
if (schema !== undefined) return schema;
|
|
307
|
+
}
|
|
301
308
|
return globalSearchSchemas.get(routeName);
|
|
302
309
|
}
|
|
@@ -76,6 +76,46 @@ export function parseAcceptTypes(accept: string): AcceptEntry[] {
|
|
|
76
76
|
|
|
77
77
|
export const RSC_RESPONSE_TYPE = "__rsc__";
|
|
78
78
|
|
|
79
|
+
/** RSC wire-format MIME type; explicit-opt-in flight transport. */
|
|
80
|
+
export const RSC_WIRE_MIME = "text/x-component";
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* The two representations an RSC route serves, in canonical-first order:
|
|
84
|
+
* text/html (the document) and text/x-component (the flight wire format).
|
|
85
|
+
* Both register as negotiation candidates in pickNegotiateVariant; without
|
|
86
|
+
* the wire-format entry, an explicit Accept: text/x-component fell through
|
|
87
|
+
* to the definition-order fallback — a JSON-first route answered a
|
|
88
|
+
* wire-format request with JSON. Which representation an RSC win actually
|
|
89
|
+
* renders is decided by prefersFlightRepresentation below, from the same
|
|
90
|
+
* Accept header (wired in via isRscRequest, rsc/ssr-setup.ts).
|
|
91
|
+
*/
|
|
92
|
+
const RSC_MIMES: readonly string[] = ["text/html", RSC_WIRE_MIME];
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Rank the RSC route's two representations against a parsed Accept list:
|
|
96
|
+
* true when the flight wire format outranks the HTML document. Wildcard
|
|
97
|
+
* entries count for the HTML side — they express "anything", and the
|
|
98
|
+
* canonical representation of anything is the document. Co-located with
|
|
99
|
+
* RSC_MIMES so the candidate registration and the representation choice
|
|
100
|
+
* cannot drift.
|
|
101
|
+
*/
|
|
102
|
+
export function prefersFlightRepresentation(
|
|
103
|
+
acceptEntries: AcceptEntry[],
|
|
104
|
+
): boolean {
|
|
105
|
+
for (const entry of acceptEntries) {
|
|
106
|
+
if (entry.q === 0) continue;
|
|
107
|
+
if (entry.mime === RSC_WIRE_MIME) return true;
|
|
108
|
+
if (
|
|
109
|
+
entry.mime === "text/html" ||
|
|
110
|
+
entry.mime === "text/*" ||
|
|
111
|
+
entry.mime === "*/*"
|
|
112
|
+
) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
|
|
79
119
|
/**
|
|
80
120
|
* Pick the best negotiate variant by walking the client's sorted Accept list.
|
|
81
121
|
* For each accepted MIME type (in q-value/order priority), check if any
|
|
@@ -87,12 +127,14 @@ export function pickNegotiateVariant<
|
|
|
87
127
|
>(acceptEntries: AcceptEntry[], candidates: T[]): T {
|
|
88
128
|
const byCandidateMime = new Map<string, T>();
|
|
89
129
|
for (const c of candidates) {
|
|
90
|
-
const
|
|
130
|
+
const mimes =
|
|
91
131
|
c.responseType === RSC_RESPONSE_TYPE
|
|
92
|
-
?
|
|
93
|
-
: RESPONSE_TYPE_MIME[c.responseType];
|
|
94
|
-
|
|
95
|
-
byCandidateMime.
|
|
132
|
+
? RSC_MIMES
|
|
133
|
+
: [RESPONSE_TYPE_MIME[c.responseType]];
|
|
134
|
+
for (const mime of mimes) {
|
|
135
|
+
if (mime && !byCandidateMime.has(mime)) {
|
|
136
|
+
byCandidateMime.set(mime, c);
|
|
137
|
+
}
|
|
96
138
|
}
|
|
97
139
|
}
|
|
98
140
|
|
|
@@ -14,7 +14,10 @@ import {
|
|
|
14
14
|
isNonCacheable,
|
|
15
15
|
type ContextSetOptions,
|
|
16
16
|
} from "../context-var.js";
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
assertCachedHeaderWriteAllowed,
|
|
19
|
+
isInsideCacheScope,
|
|
20
|
+
} from "../server/context.js";
|
|
18
21
|
import { NOCACHE_SYMBOL, assertNotInsideCacheExec } from "../cache/taint.js";
|
|
19
22
|
import { isAutoGeneratedRouteName } from "../route-name.js";
|
|
20
23
|
import { PRERENDER_PASSTHROUGH } from "../prerender.js";
|
|
@@ -93,7 +96,7 @@ function resolveRouteName(
|
|
|
93
96
|
// Resolution order: explicit param > scope registry > heuristic.
|
|
94
97
|
const isRootScoped =
|
|
95
98
|
rootScoped ??
|
|
96
|
-
isRouteRootScoped(currentRoutePrefix) ??
|
|
99
|
+
isRouteRootScoped(currentRoutePrefix, _getRequestContext()?._routerId) ??
|
|
97
100
|
!currentRoutePrefix.includes(".");
|
|
98
101
|
if (isRootScoped) {
|
|
99
102
|
if (routeMap[lookupName] !== undefined) {
|
|
@@ -205,7 +208,9 @@ export function createHandlerContext<TEnv>(
|
|
|
205
208
|
const variables: any = requestContext?._variables ?? {};
|
|
206
209
|
|
|
207
210
|
// If route has a search schema, parse URLSearchParams into typed object
|
|
208
|
-
const searchSchema = routeName
|
|
211
|
+
const searchSchema = routeName
|
|
212
|
+
? getSearchSchema(routeName, requestContext?._routerId)
|
|
213
|
+
: undefined;
|
|
209
214
|
const resolvedSearchParams = searchSchema
|
|
210
215
|
? parseSearchParams(searchParams, searchSchema)
|
|
211
216
|
: searchParams;
|
|
@@ -214,7 +219,9 @@ export function createHandlerContext<TEnv>(
|
|
|
214
219
|
const stubResponse =
|
|
215
220
|
requestContext?.res ?? new Response(null, { status: 200 });
|
|
216
221
|
|
|
217
|
-
// Guard mutating Headers methods so they throw inside "use cache" or
|
|
222
|
+
// Guard mutating Headers methods so they throw inside "use cache" scope or
|
|
223
|
+
// cached header-write territory (cache() boundary / ppr route render —
|
|
224
|
+
// assertCachedHeaderWriteAllowed, the unified #713 guard).
|
|
218
225
|
// Uses lazy `ctx` reference (assigned below) — only the specific handler ctx
|
|
219
226
|
// is stamped by cache-runtime, not the shared request context.
|
|
220
227
|
// MUTATING_HEADERS_METHODS is hoisted to module scope (constant, read-only).
|
|
@@ -226,13 +233,7 @@ export function createHandlerContext<TEnv>(
|
|
|
226
233
|
if (MUTATING_HEADERS_METHODS.has(prop as string)) {
|
|
227
234
|
return (...args: any[]) => {
|
|
228
235
|
assertNotInsideCacheExec(ctx, "headers");
|
|
229
|
-
|
|
230
|
-
throw new Error(
|
|
231
|
-
`ctx.headers.${String(prop)}() cannot be called inside a cache() boundary. ` +
|
|
232
|
-
`On cache hit the handler is skipped, so this side effect would be lost. ` +
|
|
233
|
-
`Move header mutations to a middleware or layout outside the cache() scope.`,
|
|
234
|
-
);
|
|
235
|
-
}
|
|
236
|
+
assertCachedHeaderWriteAllowed("ctx.headers", prop);
|
|
236
237
|
return value.apply(target, args);
|
|
237
238
|
};
|
|
238
239
|
}
|
|
@@ -244,7 +245,10 @@ export function createHandlerContext<TEnv>(
|
|
|
244
245
|
|
|
245
246
|
ctx = {
|
|
246
247
|
params,
|
|
247
|
-
build: false,
|
|
248
|
+
build: requestContext?.build ?? false,
|
|
249
|
+
dynamic(): void {
|
|
250
|
+
requestContext?.dynamic();
|
|
251
|
+
},
|
|
248
252
|
dev: false,
|
|
249
253
|
request,
|
|
250
254
|
searchParams,
|
|
@@ -304,7 +308,9 @@ export function createHandlerContext<TEnv>(
|
|
|
304
308
|
routeMap,
|
|
305
309
|
routeName,
|
|
306
310
|
params,
|
|
307
|
-
routeName
|
|
311
|
+
routeName
|
|
312
|
+
? isRouteRootScoped(routeName, requestContext?._routerId)
|
|
313
|
+
: undefined,
|
|
308
314
|
),
|
|
309
315
|
passthrough: createPrerenderPassthroughFn(false, isPassthroughRoute),
|
|
310
316
|
_responseType: responseType,
|
|
@@ -345,6 +351,9 @@ export function createPrerenderContext<TEnv>(
|
|
|
345
351
|
return {
|
|
346
352
|
params,
|
|
347
353
|
build: true,
|
|
354
|
+
// Inert here: prerender/static contexts have no live PPR-shell decision to
|
|
355
|
+
// gate. dynamic() only reaches the shell axis on a live request or capture.
|
|
356
|
+
dynamic: () => {},
|
|
348
357
|
dev: devMode ?? false,
|
|
349
358
|
get request(): Request {
|
|
350
359
|
return throwUnavailable("request");
|
|
@@ -394,7 +403,9 @@ export function createPrerenderContext<TEnv>(
|
|
|
394
403
|
routeMap,
|
|
395
404
|
routeName,
|
|
396
405
|
params,
|
|
397
|
-
routeName
|
|
406
|
+
routeName
|
|
407
|
+
? isRouteRootScoped(routeName, _getRequestContext()?._routerId)
|
|
408
|
+
: undefined,
|
|
398
409
|
),
|
|
399
410
|
passthrough: createPrerenderPassthroughFn(
|
|
400
411
|
true,
|
|
@@ -430,6 +441,9 @@ export function createStaticContext<TEnv>(
|
|
|
430
441
|
return throwUnavailable("params");
|
|
431
442
|
},
|
|
432
443
|
build: true,
|
|
444
|
+
// Inert here: prerender/static contexts have no live PPR-shell decision to
|
|
445
|
+
// gate. dynamic() only reaches the shell axis on a live request or capture.
|
|
446
|
+
dynamic: () => {},
|
|
433
447
|
dev: devMode ?? false,
|
|
434
448
|
get request(): Request {
|
|
435
449
|
return throwUnavailable("request");
|
|
@@ -488,7 +502,9 @@ export function createStaticContext<TEnv>(
|
|
|
488
502
|
routeMap,
|
|
489
503
|
routeName,
|
|
490
504
|
undefined,
|
|
491
|
-
routeName
|
|
505
|
+
routeName
|
|
506
|
+
? isRouteRootScoped(routeName, _getRequestContext()?._routerId)
|
|
507
|
+
: undefined,
|
|
492
508
|
),
|
|
493
509
|
_routeName: routeName,
|
|
494
510
|
} as InternalHandlerContext<any, TEnv>;
|
|
@@ -28,7 +28,32 @@ import {
|
|
|
28
28
|
} from "./segment-resolution.js";
|
|
29
29
|
import type { SegmentResolutionDeps } from "./types.js";
|
|
30
30
|
import { debugLog } from "./logging.js";
|
|
31
|
-
import {
|
|
31
|
+
import {
|
|
32
|
+
RangoContext,
|
|
33
|
+
latchPprHeaderScopeForEntries,
|
|
34
|
+
runInsideLoaderScope,
|
|
35
|
+
} from "../server/context.js";
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Header-guard latch for the intercept funnels (issue #713). ppr and
|
|
39
|
+
* intercepts do not compose on the shell path — shells are captured/served
|
|
40
|
+
* only for document requests and withInterceptResolution skips intercepts on
|
|
41
|
+
* full matches — so this is defense in depth: a partial nav CAN render an
|
|
42
|
+
* intercept over a ppr-declared target route, in its own store scope where
|
|
43
|
+
* the main funnel's latch does not apply. Latch by declaration, off the
|
|
44
|
+
* target route's manifest entry (same leaf input as the segment funnels).
|
|
45
|
+
* Called AFTER intercept middleware runs — middleware stays the live lane.
|
|
46
|
+
*/
|
|
47
|
+
function latchPprHeaderScopeForInterceptTarget(
|
|
48
|
+
interceptEntry: InterceptEntry,
|
|
49
|
+
): void {
|
|
50
|
+
const targetEntry = RangoContext.getStore()?.manifest.get(
|
|
51
|
+
interceptEntry.routeName,
|
|
52
|
+
);
|
|
53
|
+
if (targetEntry) {
|
|
54
|
+
latchPprHeaderScopeForEntries([targetEntry], interceptEntry.routeName);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
32
57
|
|
|
33
58
|
/**
|
|
34
59
|
* Check if an intercept's when conditions are satisfied.
|
|
@@ -150,6 +175,8 @@ export async function resolveInterceptEntry<TEnv>(
|
|
|
150
175
|
if (middlewareResponse) throw middlewareResponse;
|
|
151
176
|
}
|
|
152
177
|
|
|
178
|
+
latchPprHeaderScopeForInterceptTarget(interceptEntry);
|
|
179
|
+
|
|
153
180
|
const loaderPromises: Promise<any>[] = [];
|
|
154
181
|
const loaderIds: string[] = [];
|
|
155
182
|
|
|
@@ -328,6 +355,8 @@ export async function resolveInterceptLoadersOnly<TEnv>(
|
|
|
328
355
|
return null;
|
|
329
356
|
}
|
|
330
357
|
|
|
358
|
+
latchPprHeaderScopeForInterceptTarget(interceptEntry);
|
|
359
|
+
|
|
331
360
|
const loaderPromises: Promise<any>[] = [];
|
|
332
361
|
const loaderIds: string[] = [];
|
|
333
362
|
|
|
@@ -430,6 +430,22 @@ function createLoaderExecutor<TEnv>(
|
|
|
430
430
|
// nested deps inherit isDslLoader=false only when the CHAIN started in a
|
|
431
431
|
// handler; a chain started by the segment funnel stays DSL (the loader
|
|
432
432
|
// scope ALS survives the body's awaits).
|
|
433
|
+
// Shell fast path eligibility: a HANDLER-invoked loader executing during a
|
|
434
|
+
// capture is handler-layer dynamism — on a handler-free (replayed) HIT it
|
|
435
|
+
// would never re-run, freezing its consumption-lane value (#672's "fresh
|
|
436
|
+
// per serve" slot shape). Mark the capture; the entry declines the fast
|
|
437
|
+
// path and keeps the full tail. DSL loaders re-run on every HIT and never
|
|
438
|
+
// set this.
|
|
439
|
+
if (!isDslLoader) {
|
|
440
|
+
const captureCtx = _getRequestContext();
|
|
441
|
+
if (
|
|
442
|
+
captureCtx?._shellCaptureRun &&
|
|
443
|
+
captureCtx._shellCaptureHandleLiveness
|
|
444
|
+
) {
|
|
445
|
+
captureCtx._shellCaptureHandleLiveness.handlerInvokedLoader = true;
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
|
|
433
449
|
const promise = observePhase(PHASES.loader(loader.$$id), () =>
|
|
434
450
|
Promise.resolve(
|
|
435
451
|
runInsideLoaderBodyScope(
|
package/src/router/match-api.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
CacheScope,
|
|
3
|
+
createCacheScope,
|
|
4
|
+
resolveShellImplicitCacheScope,
|
|
5
|
+
} from "../cache/cache-scope.js";
|
|
2
6
|
import { RouteNotFoundError } from "../errors";
|
|
3
7
|
import {
|
|
4
8
|
createErrorInfo,
|
|
@@ -180,7 +184,9 @@ export async function createMatchContextForFull<TEnv>(
|
|
|
180
184
|
},
|
|
181
185
|
isSameRouteNavigation: false,
|
|
182
186
|
interceptResult: null,
|
|
183
|
-
|
|
187
|
+
// Shell fast path: a capture or an eligible document/navigation HIT may
|
|
188
|
+
// substitute an implicit doc-level scope (a route-derived scope wins).
|
|
189
|
+
cacheScope: resolveShellImplicitCacheScope(snapshot.cacheScope),
|
|
184
190
|
isIntercept: false,
|
|
185
191
|
actionContext: undefined,
|
|
186
192
|
isAction: false,
|
|
@@ -419,7 +425,12 @@ export async function createMatchContextForPartial<TEnv>(
|
|
|
419
425
|
interceptSelectorContext,
|
|
420
426
|
isSameRouteNavigation: nav.isSameRouteNavigation,
|
|
421
427
|
interceptResult,
|
|
422
|
-
|
|
428
|
+
// A normal-route navigation may replay a PPR shell's canonical segment
|
|
429
|
+
// snapshot. Intercepts remain source-dependent and always use their normal
|
|
430
|
+
// cache path.
|
|
431
|
+
cacheScope: isIntercept
|
|
432
|
+
? snapshot.cacheScope
|
|
433
|
+
: resolveShellImplicitCacheScope(snapshot.cacheScope),
|
|
423
434
|
isIntercept,
|
|
424
435
|
actionContext,
|
|
425
436
|
isAction,
|
|
@@ -112,6 +112,9 @@ let prerenderStoreInstance: PrerenderStore | null | undefined;
|
|
|
112
112
|
let _deserializeSegments:
|
|
113
113
|
| typeof import("../../cache/segment-codec.js").deserializeSegments
|
|
114
114
|
| undefined;
|
|
115
|
+
let _fragmentSegments:
|
|
116
|
+
| typeof import("../../cache/segment-codec.js").fragmentSegments
|
|
117
|
+
| undefined;
|
|
115
118
|
let _restoreHandles:
|
|
116
119
|
| typeof import("../../cache/handle-snapshot.js").restoreHandles
|
|
117
120
|
| undefined;
|
|
@@ -135,6 +138,7 @@ async function ensurePrerenderDeps() {
|
|
|
135
138
|
import("../../prerender/store.js"),
|
|
136
139
|
]);
|
|
137
140
|
_deserializeSegments = codec.deserializeSegments;
|
|
141
|
+
_fragmentSegments = codec.fragmentSegments;
|
|
138
142
|
_restoreHandles = snapshot.restoreHandles;
|
|
139
143
|
_decodeHandles = snapshot.decodeHandles;
|
|
140
144
|
_hashParams = paramHash.hashParams;
|
|
@@ -237,6 +241,7 @@ async function* yieldFromStore<TEnv>(
|
|
|
237
241
|
|
|
238
242
|
if (
|
|
239
243
|
!_deserializeSegments ||
|
|
244
|
+
!_fragmentSegments ||
|
|
240
245
|
!_restoreHandles ||
|
|
241
246
|
!_decodeHandles ||
|
|
242
247
|
!_hashParams ||
|
|
@@ -245,7 +250,13 @@ async function* yieldFromStore<TEnv>(
|
|
|
245
250
|
throw new Error("yieldFromStore called before ensurePrerenderDeps");
|
|
246
251
|
}
|
|
247
252
|
|
|
248
|
-
|
|
253
|
+
// Shell-HIT tail (issue #700): a Prerender+ppr route's tail serves from THIS
|
|
254
|
+
// store (the prerender lookup runs before the cache scope), so the fragment
|
|
255
|
+
// splice must apply here too — otherwise producer B entries re-serialize the
|
|
256
|
+
// whole tree per request while producer A entries do not.
|
|
257
|
+
const segments = _getRequestContext()?._shellFragmentPayload
|
|
258
|
+
? await _fragmentSegments(entry.segments)
|
|
259
|
+
: await _deserializeSegments(entry.segments);
|
|
249
260
|
|
|
250
261
|
// Replay handle data (same as runtime cache hit path). entry.handles is a
|
|
251
262
|
// Flight-encoded string ("" when none) — decode before restore so
|
package/src/router/metrics.ts
CHANGED
|
@@ -79,6 +79,7 @@ export function appendMetric(
|
|
|
79
79
|
start: number,
|
|
80
80
|
duration: number,
|
|
81
81
|
depth?: number,
|
|
82
|
+
desc?: string,
|
|
82
83
|
): void {
|
|
83
84
|
if (!metricsStore) return;
|
|
84
85
|
metricsStore.metrics.push({
|
|
@@ -86,6 +87,7 @@ export function appendMetric(
|
|
|
86
87
|
duration,
|
|
87
88
|
startTime: start - metricsStore.requestStart,
|
|
88
89
|
depth,
|
|
90
|
+
desc,
|
|
89
91
|
});
|
|
90
92
|
}
|
|
91
93
|
|
|
@@ -104,6 +106,7 @@ interface DisplayRow {
|
|
|
104
106
|
startTime: number;
|
|
105
107
|
duration: number;
|
|
106
108
|
depth: number | undefined;
|
|
109
|
+
desc: string | undefined;
|
|
107
110
|
spans: Span[];
|
|
108
111
|
}
|
|
109
112
|
|
|
@@ -137,6 +140,7 @@ function buildDisplayRows(sorted: PerformanceMetric[]): DisplayRow[] {
|
|
|
137
140
|
startTime: m.startTime,
|
|
138
141
|
duration: m.duration + post.duration,
|
|
139
142
|
depth: m.depth,
|
|
143
|
+
desc: m.desc,
|
|
140
144
|
spans: [
|
|
141
145
|
{ startTime: m.startTime, duration: m.duration },
|
|
142
146
|
{ startTime: post.startTime, duration: post.duration },
|
|
@@ -151,6 +155,7 @@ function buildDisplayRows(sorted: PerformanceMetric[]): DisplayRow[] {
|
|
|
151
155
|
startTime: m.startTime,
|
|
152
156
|
duration: m.duration,
|
|
153
157
|
depth: m.depth,
|
|
158
|
+
desc: m.desc,
|
|
154
159
|
spans: [{ startTime: m.startTime, duration: m.duration }],
|
|
155
160
|
});
|
|
156
161
|
continue;
|
|
@@ -169,6 +174,7 @@ function buildDisplayRows(sorted: PerformanceMetric[]): DisplayRow[] {
|
|
|
169
174
|
startTime: m.startTime,
|
|
170
175
|
duration: m.duration,
|
|
171
176
|
depth: m.depth,
|
|
177
|
+
desc: m.desc,
|
|
172
178
|
spans: [{ startTime: m.startTime, duration: m.duration }],
|
|
173
179
|
});
|
|
174
180
|
continue;
|
|
@@ -180,6 +186,7 @@ function buildDisplayRows(sorted: PerformanceMetric[]): DisplayRow[] {
|
|
|
180
186
|
startTime: m.startTime,
|
|
181
187
|
duration: m.duration,
|
|
182
188
|
depth: m.depth,
|
|
189
|
+
desc: m.desc,
|
|
183
190
|
spans: [{ startTime: m.startTime, duration: m.duration }],
|
|
184
191
|
});
|
|
185
192
|
}
|
|
@@ -199,7 +206,9 @@ export function logMetrics(
|
|
|
199
206
|
|
|
200
207
|
const labels = displayRows.map(
|
|
201
208
|
(r) =>
|
|
202
|
-
`${" ".repeat(BASE_INDENT + (r.depth ?? 0) * DEPTH_INDENT)}${r.label}
|
|
209
|
+
`${" ".repeat(BASE_INDENT + (r.depth ?? 0) * DEPTH_INDENT)}${r.label}${
|
|
210
|
+
r.desc ? ` (${r.desc})` : ""
|
|
211
|
+
}`,
|
|
203
212
|
);
|
|
204
213
|
const startValues = displayRows.map((r) => formatMs(r.startTime));
|
|
205
214
|
const durationValues = displayRows.map((r) => formatMs(r.duration));
|
|
@@ -247,7 +256,13 @@ export function generateServerTiming(metricsStore: MetricsStore): string {
|
|
|
247
256
|
.replace(/[^a-zA-Z0-9-]/g, "")
|
|
248
257
|
.toLowerCase();
|
|
249
258
|
const name = m.depth ? `d${m.depth}-${base}` : base;
|
|
250
|
-
|
|
259
|
+
// desc is a quoted-string: backslash-escape the two delimiters; our
|
|
260
|
+
// producers emit plain printable text, so nothing else needs stripping.
|
|
261
|
+
const desc =
|
|
262
|
+
m.desc !== undefined
|
|
263
|
+
? `;desc="${m.desc.replace(/[\\"]/g, "\\$&")}"`
|
|
264
|
+
: "";
|
|
265
|
+
return `${name};dur=${m.duration.toFixed(2)}${desc}`;
|
|
251
266
|
})
|
|
252
267
|
.join(", ");
|
|
253
268
|
}
|
|
@@ -39,6 +39,23 @@ export interface MiddlewareContext<
|
|
|
39
39
|
> extends RequestScope<TEnv> {
|
|
40
40
|
params: TParams;
|
|
41
41
|
|
|
42
|
+
/**
|
|
43
|
+
* True for build-time render/capture requests. Live requests use false.
|
|
44
|
+
* Build-time PPR shell capture sets this while replaying middleware.
|
|
45
|
+
*/
|
|
46
|
+
readonly build: boolean;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Opt this request out of PPR shell serving/capture.
|
|
50
|
+
* During middleware this runs before the shell HIT commit point, so it can
|
|
51
|
+
* force the request onto the dynamic axis.
|
|
52
|
+
*
|
|
53
|
+
* Scope: the PPR SHELL axis only. It does NOT disable prerender B-segment
|
|
54
|
+
* (Prerender/Static) serving — a Prerender() route still replays its
|
|
55
|
+
* build-baked segments at runtime.
|
|
56
|
+
*/
|
|
57
|
+
dynamic(): void;
|
|
58
|
+
|
|
42
59
|
readonly headers: Headers;
|
|
43
60
|
|
|
44
61
|
get: GetVariableFn;
|
package/src/router/middleware.ts
CHANGED
|
@@ -238,6 +238,10 @@ export function createMiddlewareContext<TEnv>(
|
|
|
238
238
|
searchParams: url.searchParams,
|
|
239
239
|
env: env as MiddlewareContext<TEnv>["env"],
|
|
240
240
|
params,
|
|
241
|
+
build: reqCtx?.build ?? false,
|
|
242
|
+
dynamic(): void {
|
|
243
|
+
reqCtx?.dynamic();
|
|
244
|
+
},
|
|
241
245
|
executionContext: reqCtx?.executionContext,
|
|
242
246
|
waitUntil: reqCtx ? reqCtx.waitUntil.bind(reqCtx) : fireAndForgetWaitUntil,
|
|
243
247
|
// Getter: re-derives from request context on each access so that global
|