@rangojs/router 0.4.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -1
- package/dist/types/browser/event-controller.d.ts +4 -0
- package/dist/types/browser/link-interceptor.d.ts +17 -7
- package/dist/types/browser/navigation-bridge.d.ts +13 -1
- package/dist/types/browser/notify-listeners.d.ts +2 -0
- package/dist/types/browser/prefetch/cache.d.ts +1 -1
- package/dist/types/browser/prefetch/default-strategy.d.ts +12 -3
- package/dist/types/browser/prefetch/invalidation.d.ts +6 -0
- package/dist/types/browser/prefetch/loader.d.ts +3 -1
- package/dist/types/browser/prefetch/observer.d.ts +3 -6
- package/dist/types/browser/rango-state.d.ts +4 -0
- package/dist/types/browser/react/Link.d.ts +4 -9
- package/dist/types/browser/react/context.d.ts +3 -0
- package/dist/types/browser/rsc-router.d.ts +7 -2
- package/dist/types/browser/types.d.ts +1 -0
- package/dist/types/cache/cache-key-utils.d.ts +11 -3
- package/dist/types/cache/cache-scope.d.ts +82 -3
- package/dist/types/cache/cf/cf-cache-store.d.ts +2 -2
- package/dist/types/cache/index.d.ts +3 -1
- package/dist/types/cache/search-params-filter.d.ts +64 -0
- package/dist/types/cache/shell-snapshot.d.ts +4 -4
- package/dist/types/cache/types.d.ts +30 -2
- package/dist/types/cache/vercel/vercel-cache-store.d.ts +2 -2
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.rsc.d.ts +1 -0
- package/dist/types/router/match-middleware/cache-lookup.d.ts +13 -0
- package/dist/types/router/navigation-snapshot.d.ts +29 -0
- package/dist/types/router/router-options.d.ts +27 -3
- package/dist/types/rsc/shell-build-manifest.d.ts +7 -1
- package/dist/types/rsc/shell-serve.d.ts +7 -1
- package/dist/types/rsc/types.d.ts +17 -0
- package/dist/types/server/request-context.d.ts +57 -4
- package/dist/types/testing/render-route.d.ts +10 -1
- package/dist/types/testing/shell-status.d.ts +6 -3
- package/dist/types/vite/plugin-types.d.ts +1 -1
- package/dist/vite/index.js +5 -5
- package/package.json +23 -22
- package/skills/caching/SKILL.md +39 -0
- package/skills/comparison/references/framework-comparison.md +7 -1
- package/skills/links/SKILL.md +24 -0
- package/skills/ppr/SKILL.md +53 -4
- package/skills/router-setup/SKILL.md +7 -2
- package/skills/testing/client-components.md +15 -14
- package/skills/vercel/SKILL.md +1 -1
- package/src/browser/event-controller.ts +110 -11
- package/src/browser/link-interceptor.ts +469 -20
- package/src/browser/navigation-bridge.ts +71 -2
- package/src/browser/navigation-store.ts +24 -1
- package/src/browser/notify-listeners.ts +22 -0
- package/src/browser/prefetch/cache.ts +4 -2
- package/src/browser/prefetch/default-strategy.ts +43 -3
- package/src/browser/prefetch/invalidation.ts +30 -0
- package/src/browser/prefetch/loader.ts +19 -12
- package/src/browser/prefetch/observer.ts +50 -22
- package/src/browser/rango-state.ts +21 -0
- package/src/browser/react/Link.tsx +97 -88
- package/src/browser/react/NavigationProvider.tsx +1 -0
- package/src/browser/react/context.ts +4 -0
- package/src/browser/rsc-router.tsx +22 -9
- package/src/browser/types.ts +1 -0
- package/src/cache/cache-key-utils.ts +18 -4
- package/src/cache/cache-runtime.ts +7 -2
- package/src/cache/cache-scope.ts +152 -23
- package/src/cache/cf/cf-cache-store.ts +51 -16
- package/src/cache/document-cache.ts +7 -1
- package/src/cache/index.ts +7 -0
- package/src/cache/search-params-filter.ts +118 -0
- package/src/cache/shell-snapshot.ts +8 -4
- package/src/cache/types.ts +33 -2
- package/src/cache/vercel/vercel-cache-store.ts +17 -3
- package/src/index.rsc.ts +4 -0
- package/src/index.ts +6 -0
- package/src/router/match-middleware/cache-lookup.ts +146 -33
- package/src/router/match-middleware/cache-store.ts +70 -0
- package/src/router/navigation-snapshot.ts +46 -6
- package/src/router/router-options.ts +31 -4
- package/src/rsc/handler.ts +9 -0
- package/src/rsc/response-cache-serve.ts +1 -1
- package/src/rsc/rsc-rendering.ts +252 -27
- package/src/rsc/shell-build-manifest.ts +8 -1
- package/src/rsc/shell-capture.ts +5 -0
- package/src/rsc/shell-serve.ts +8 -2
- package/src/rsc/types.ts +17 -0
- package/src/server/request-context.ts +62 -3
- package/src/testing/dispatch.ts +21 -3
- package/src/testing/render-route.tsx +86 -17
- package/src/testing/shell-status.ts +20 -3
- package/src/vite/plugin-types.ts +1 -1
- package/src/vite/plugins/vercel-output.ts +2 -2
- package/dist/types.backup/__internal.d.ts +0 -127
- package/dist/types.backup/bin/rango.d.ts +0 -1
- package/dist/types.backup/browser/action-coordinator.d.ts +0 -57
- package/dist/types.backup/browser/action-fence.d.ts +0 -33
- package/dist/types.backup/browser/app-shell.d.ts +0 -34
- package/dist/types.backup/browser/app-version.d.ts +0 -6
- package/dist/types.backup/browser/connection-warmup.d.ts +0 -31
- package/dist/types.backup/browser/cookie-name.d.ts +0 -66
- package/dist/types.backup/browser/event-controller.d.ts +0 -221
- package/dist/types.backup/browser/history-state.d.ts +0 -26
- package/dist/types.backup/browser/index.d.ts +0 -1
- package/dist/types.backup/browser/intercept-utils.d.ts +0 -30
- package/dist/types.backup/browser/invalidate-client-cache.d.ts +0 -17
- package/dist/types.backup/browser/link-interceptor.d.ts +0 -43
- package/dist/types.backup/browser/logging.d.ts +0 -33
- package/dist/types.backup/browser/merge-segment-loaders.d.ts +0 -38
- package/dist/types.backup/browser/navigation-bridge.d.ts +0 -27
- package/dist/types.backup/browser/navigation-client.d.ts +0 -17
- package/dist/types.backup/browser/navigation-store-handle.d.ts +0 -25
- package/dist/types.backup/browser/navigation-store.d.ts +0 -95
- package/dist/types.backup/browser/navigation-transaction.d.ts +0 -75
- package/dist/types.backup/browser/network-error-handler.d.ts +0 -35
- package/dist/types.backup/browser/partial-update.d.ts +0 -61
- package/dist/types.backup/browser/prefetch/cache.d.ts +0 -183
- package/dist/types.backup/browser/prefetch/fetch.d.ts +0 -52
- package/dist/types.backup/browser/prefetch/observer.d.ts +0 -27
- package/dist/types.backup/browser/prefetch/policy.d.ts +0 -13
- package/dist/types.backup/browser/prefetch/queue.d.ts +0 -48
- package/dist/types.backup/browser/prefetch/resource-ready.d.ts +0 -28
- package/dist/types.backup/browser/rango-state.d.ts +0 -52
- package/dist/types.backup/browser/react/Link.d.ts +0 -140
- package/dist/types.backup/browser/react/NavigationProvider.d.ts +0 -88
- package/dist/types.backup/browser/react/ScrollRestoration.d.ts +0 -78
- package/dist/types.backup/browser/react/context.d.ts +0 -54
- package/dist/types.backup/browser/react/filter-segment-order.d.ts +0 -35
- package/dist/types.backup/browser/react/index.d.ts +0 -1
- package/dist/types.backup/browser/react/location-state-shared.d.ts +0 -162
- package/dist/types.backup/browser/react/location-state.d.ts +0 -29
- package/dist/types.backup/browser/react/mount-context.d.ts +0 -23
- package/dist/types.backup/browser/react/nonce-context.d.ts +0 -14
- package/dist/types.backup/browser/react/shallow-equal.d.ts +0 -5
- package/dist/types.backup/browser/react/use-action.d.ts +0 -61
- package/dist/types.backup/browser/react/use-handle.d.ts +0 -21
- package/dist/types.backup/browser/react/use-href.d.ts +0 -32
- package/dist/types.backup/browser/react/use-link-status.d.ts +0 -36
- package/dist/types.backup/browser/react/use-mount.d.ts +0 -24
- package/dist/types.backup/browser/react/use-navigation.d.ts +0 -15
- package/dist/types.backup/browser/react/use-params.d.ts +0 -21
- package/dist/types.backup/browser/react/use-pathname.d.ts +0 -13
- package/dist/types.backup/browser/react/use-reverse.d.ts +0 -40
- package/dist/types.backup/browser/react/use-router.d.ts +0 -23
- package/dist/types.backup/browser/react/use-search-params.d.ts +0 -19
- package/dist/types.backup/browser/react/use-segments.d.ts +0 -29
- package/dist/types.backup/browser/response-adapter.d.ts +0 -58
- package/dist/types.backup/browser/rsc-router.d.ts +0 -141
- package/dist/types.backup/browser/scroll-restoration.d.ts +0 -103
- package/dist/types.backup/browser/segment-reconciler.d.ts +0 -74
- package/dist/types.backup/browser/segment-structure-assert.d.ts +0 -16
- package/dist/types.backup/browser/server-action-bridge.d.ts +0 -29
- package/dist/types.backup/browser/types.d.ts +0 -530
- package/dist/types.backup/browser/validate-redirect-origin.d.ts +0 -28
- package/dist/types.backup/build/collect-fallback-refs.d.ts +0 -5
- package/dist/types.backup/build/generate-manifest.d.ts +0 -100
- package/dist/types.backup/build/generate-route-types.d.ts +0 -8
- package/dist/types.backup/build/index.d.ts +0 -21
- package/dist/types.backup/build/prefix-tree-utils.d.ts +0 -56
- package/dist/types.backup/build/route-trie.d.ts +0 -89
- package/dist/types.backup/build/route-types/ast-helpers.d.ts +0 -3
- package/dist/types.backup/build/route-types/ast-route-extraction.d.ts +0 -13
- package/dist/types.backup/build/route-types/codegen.d.ts +0 -16
- package/dist/types.backup/build/route-types/include-resolution.d.ts +0 -74
- package/dist/types.backup/build/route-types/param-extraction.d.ts +0 -13
- package/dist/types.backup/build/route-types/per-module-writer.d.ts +0 -18
- package/dist/types.backup/build/route-types/router-processing.d.ts +0 -82
- package/dist/types.backup/build/route-types/scan-filter.d.ts +0 -17
- package/dist/types.backup/build/route-types/source-scan.d.ts +0 -13
- package/dist/types.backup/build/runtime-discovery.d.ts +0 -24
- package/dist/types.backup/cache/background-task.d.ts +0 -21
- package/dist/types.backup/cache/cache-error.d.ts +0 -71
- package/dist/types.backup/cache/cache-key-utils.d.ts +0 -35
- package/dist/types.backup/cache/cache-policy.d.ts +0 -59
- package/dist/types.backup/cache/cache-runtime.d.ts +0 -51
- package/dist/types.backup/cache/cache-scope.d.ts +0 -134
- package/dist/types.backup/cache/cache-tag.d.ts +0 -79
- package/dist/types.backup/cache/cf/cf-base64.d.ts +0 -4
- package/dist/types.backup/cache/cf/cf-cache-constants.d.ts +0 -105
- package/dist/types.backup/cache/cf/cf-cache-store.d.ts +0 -481
- package/dist/types.backup/cache/cf/cf-cache-types.d.ts +0 -300
- package/dist/types.backup/cache/cf/cf-kv-utils.d.ts +0 -22
- package/dist/types.backup/cache/cf/cf-tag-marker-memo.d.ts +0 -15
- package/dist/types.backup/cache/cf/index.d.ts +0 -3
- package/dist/types.backup/cache/document-cache.d.ts +0 -69
- package/dist/types.backup/cache/handle-capture.d.ts +0 -23
- package/dist/types.backup/cache/handle-snapshot.d.ts +0 -39
- package/dist/types.backup/cache/index.d.ts +0 -7
- package/dist/types.backup/cache/memory-segment-store.d.ts +0 -163
- package/dist/types.backup/cache/profile-registry.d.ts +0 -40
- package/dist/types.backup/cache/read-through-swr.d.ts +0 -60
- package/dist/types.backup/cache/segment-codec.d.ts +0 -78
- package/dist/types.backup/cache/shell-snapshot.d.ts +0 -162
- package/dist/types.backup/cache/tag-invalidation.d.ts +0 -74
- package/dist/types.backup/cache/taint.d.ts +0 -71
- package/dist/types.backup/cache/types.d.ts +0 -407
- package/dist/types.backup/cache/vercel/index.d.ts +0 -1
- package/dist/types.backup/cache/vercel/vercel-cache-store.d.ts +0 -267
- package/dist/types.backup/client.d.ts +0 -184
- package/dist/types.backup/client.rsc.d.ts +0 -39
- package/dist/types.backup/cloudflare/index.d.ts +0 -7
- package/dist/types.backup/cloudflare/tracing.d.ts +0 -53
- package/dist/types.backup/component-utils.d.ts +0 -46
- package/dist/types.backup/components/DefaultDocument.d.ts +0 -13
- package/dist/types.backup/context-var.d.ts +0 -84
- package/dist/types.backup/debug.d.ts +0 -57
- package/dist/types.backup/decode-loader-results.d.ts +0 -5
- package/dist/types.backup/default-error-boundary.d.ts +0 -10
- package/dist/types.backup/defer.d.ts +0 -89
- package/dist/types.backup/deps/browser.d.ts +0 -1
- package/dist/types.backup/deps/html-stream-client.d.ts +0 -1
- package/dist/types.backup/deps/html-stream-server.d.ts +0 -1
- package/dist/types.backup/deps/rsc.d.ts +0 -1
- package/dist/types.backup/deps/ssr.d.ts +0 -1
- package/dist/types.backup/encode-kv.d.ts +0 -35
- package/dist/types.backup/errors.d.ts +0 -226
- package/dist/types.backup/escape-script.d.ts +0 -44
- package/dist/types.backup/handle.d.ts +0 -93
- package/dist/types.backup/handles/MetaTags.d.ts +0 -17
- package/dist/types.backup/handles/Scripts.d.ts +0 -38
- package/dist/types.backup/handles/breadcrumbs.d.ts +0 -43
- package/dist/types.backup/handles/deferred-resolution.d.ts +0 -53
- package/dist/types.backup/handles/is-thenable.d.ts +0 -12
- package/dist/types.backup/handles/meta.d.ts +0 -43
- package/dist/types.backup/handles/script.d.ts +0 -139
- package/dist/types.backup/host/cookie-handler.d.ts +0 -8
- package/dist/types.backup/host/errors.d.ts +0 -40
- package/dist/types.backup/host/index.d.ts +0 -33
- package/dist/types.backup/host/pattern-matcher.d.ts +0 -30
- package/dist/types.backup/host/router.d.ts +0 -12
- package/dist/types.backup/host/testing.d.ts +0 -41
- package/dist/types.backup/host/types.d.ts +0 -148
- package/dist/types.backup/host/utils.d.ts +0 -20
- package/dist/types.backup/href-client.d.ts +0 -214
- package/dist/types.backup/index.d.ts +0 -112
- package/dist/types.backup/index.rsc.d.ts +0 -51
- package/dist/types.backup/internal-debug.d.ts +0 -1
- package/dist/types.backup/loader-store.d.ts +0 -193
- package/dist/types.backup/loader.d.ts +0 -18
- package/dist/types.backup/loader.rsc.d.ts +0 -18
- package/dist/types.backup/missing-id-error.d.ts +0 -1
- package/dist/types.backup/outlet-context.d.ts +0 -12
- package/dist/types.backup/outlet-provider.d.ts +0 -12
- package/dist/types.backup/prerender/build-shell-capture.d.ts +0 -104
- package/dist/types.backup/prerender/param-hash.d.ts +0 -6
- package/dist/types.backup/prerender/shell-manifest-key.d.ts +0 -18
- package/dist/types.backup/prerender/store.d.ts +0 -62
- package/dist/types.backup/prerender.d.ts +0 -292
- package/dist/types.backup/redirect-origin.d.ts +0 -55
- package/dist/types.backup/regex-escape.d.ts +0 -6
- package/dist/types.backup/render-error-thrower.d.ts +0 -13
- package/dist/types.backup/response-utils.d.ts +0 -35
- package/dist/types.backup/reverse.d.ts +0 -206
- package/dist/types.backup/root-error-boundary.d.ts +0 -32
- package/dist/types.backup/route-content-wrapper.d.ts +0 -40
- package/dist/types.backup/route-definition/dsl-helpers.d.ts +0 -130
- package/dist/types.backup/route-definition/helper-factories.d.ts +0 -22
- package/dist/types.backup/route-definition/helpers-types.d.ts +0 -392
- package/dist/types.backup/route-definition/index.d.ts +0 -7
- package/dist/types.backup/route-definition/redirect.d.ts +0 -48
- package/dist/types.backup/route-definition/resolve-handler-use.d.ts +0 -19
- package/dist/types.backup/route-definition/use-item-types.d.ts +0 -1
- package/dist/types.backup/route-definition.d.ts +0 -1
- package/dist/types.backup/route-map-builder.d.ts +0 -127
- package/dist/types.backup/route-name.d.ts +0 -27
- package/dist/types.backup/route-types.d.ts +0 -172
- package/dist/types.backup/router/basename.d.ts +0 -10
- package/dist/types.backup/router/content-negotiation.d.ts +0 -91
- package/dist/types.backup/router/debug-manifest.d.ts +0 -7
- package/dist/types.backup/router/error-handling.d.ts +0 -76
- package/dist/types.backup/router/find-match.d.ts +0 -19
- package/dist/types.backup/router/handler-context.d.ts +0 -41
- package/dist/types.backup/router/instrument.d.ts +0 -161
- package/dist/types.backup/router/intercept-resolution.d.ts +0 -79
- package/dist/types.backup/router/lazy-includes.d.ts +0 -26
- package/dist/types.backup/router/loader-resolution.d.ts +0 -63
- package/dist/types.backup/router/logging.d.ts +0 -41
- package/dist/types.backup/router/manifest.d.ts +0 -8
- package/dist/types.backup/router/match-api.d.ts +0 -19
- package/dist/types.backup/router/match-context.d.ts +0 -184
- package/dist/types.backup/router/match-handlers.d.ts +0 -49
- package/dist/types.backup/router/match-middleware/background-revalidation.d.ts +0 -113
- package/dist/types.backup/router/match-middleware/cache-lookup.d.ts +0 -113
- package/dist/types.backup/router/match-middleware/cache-store.d.ts +0 -112
- package/dist/types.backup/router/match-middleware/index.d.ts +0 -80
- package/dist/types.backup/router/match-middleware/intercept-resolution.d.ts +0 -116
- package/dist/types.backup/router/match-middleware/segment-resolution.d.ts +0 -94
- package/dist/types.backup/router/match-pipelines.d.ts +0 -103
- package/dist/types.backup/router/match-result.d.ts +0 -114
- package/dist/types.backup/router/metrics.d.ts +0 -6
- package/dist/types.backup/router/middleware-types.d.ts +0 -74
- package/dist/types.backup/router/middleware.d.ts +0 -116
- package/dist/types.backup/router/navigation-snapshot.d.ts +0 -22
- package/dist/types.backup/router/params-util.d.ts +0 -8
- package/dist/types.backup/router/parse-pattern.d.ts +0 -38
- package/dist/types.backup/router/pattern-matching.d.ts +0 -169
- package/dist/types.backup/router/prefetch-cache-ttl.d.ts +0 -27
- package/dist/types.backup/router/prefetch-limits.d.ts +0 -20
- package/dist/types.backup/router/prerender-match.d.ts +0 -50
- package/dist/types.backup/router/preview-match.d.ts +0 -22
- package/dist/types.backup/router/request-classification.d.ts +0 -104
- package/dist/types.backup/router/revalidation.d.ts +0 -57
- package/dist/types.backup/router/route-snapshot.d.ts +0 -112
- package/dist/types.backup/router/router-context.d.ts +0 -137
- package/dist/types.backup/router/router-interfaces.d.ts +0 -432
- package/dist/types.backup/router/router-options.d.ts +0 -738
- package/dist/types.backup/router/router-registry.d.ts +0 -15
- package/dist/types.backup/router/segment-resolution/fresh.d.ts +0 -55
- package/dist/types.backup/router/segment-resolution/helpers.d.ts +0 -93
- package/dist/types.backup/router/segment-resolution/loader-cache.d.ts +0 -33
- package/dist/types.backup/router/segment-resolution/loader-mask.d.ts +0 -44
- package/dist/types.backup/router/segment-resolution/loader-snapshot.d.ts +0 -90
- package/dist/types.backup/router/segment-resolution/mask-nested.d.ts +0 -53
- package/dist/types.backup/router/segment-resolution/revalidation.d.ts +0 -85
- package/dist/types.backup/router/segment-resolution/static-store.d.ts +0 -17
- package/dist/types.backup/router/segment-resolution/streamed-handler-telemetry.d.ts +0 -16
- package/dist/types.backup/router/segment-resolution/view-transition-default.d.ts +0 -28
- package/dist/types.backup/router/segment-resolution.d.ts +0 -3
- package/dist/types.backup/router/segment-wrappers.d.ts +0 -53
- package/dist/types.backup/router/state-cookie-name.d.ts +0 -1
- package/dist/types.backup/router/substitute-pattern-params.d.ts +0 -23
- package/dist/types.backup/router/telemetry-otel.d.ts +0 -113
- package/dist/types.backup/router/telemetry.d.ts +0 -215
- package/dist/types.backup/router/timeout.d.ts +0 -68
- package/dist/types.backup/router/tracing.d.ts +0 -125
- package/dist/types.backup/router/trie-matching.d.ts +0 -32
- package/dist/types.backup/router/types.d.ts +0 -98
- package/dist/types.backup/router/url-params.d.ts +0 -26
- package/dist/types.backup/router.d.ts +0 -7
- package/dist/types.backup/rsc/capture-queue.d.ts +0 -6
- package/dist/types.backup/rsc/full-payload.d.ts +0 -22
- package/dist/types.backup/rsc/handler-context.d.ts +0 -31
- package/dist/types.backup/rsc/handler.d.ts +0 -9
- package/dist/types.backup/rsc/helpers.d.ts +0 -213
- package/dist/types.backup/rsc/index.d.ts +0 -17
- package/dist/types.backup/rsc/json-route-result.d.ts +0 -20
- package/dist/types.backup/rsc/loader-fetch.d.ts +0 -14
- package/dist/types.backup/rsc/manifest-init.d.ts +0 -18
- package/dist/types.backup/rsc/nonce.d.ts +0 -28
- package/dist/types.backup/rsc/origin-guard.d.ts +0 -50
- package/dist/types.backup/rsc/progressive-enhancement.d.ts +0 -19
- package/dist/types.backup/rsc/redirect-guard.d.ts +0 -35
- package/dist/types.backup/rsc/response-cache-serve.d.ts +0 -46
- package/dist/types.backup/rsc/response-error.d.ts +0 -19
- package/dist/types.backup/rsc/response-route-handler.d.ts +0 -29
- package/dist/types.backup/rsc/rsc-rendering.d.ts +0 -23
- package/dist/types.backup/rsc/runtime-warnings.d.ts +0 -22
- package/dist/types.backup/rsc/server-action.d.ts +0 -68
- package/dist/types.backup/rsc/shell-build-manifest.d.ts +0 -84
- package/dist/types.backup/rsc/shell-capture-constants.d.ts +0 -27
- package/dist/types.backup/rsc/shell-capture.d.ts +0 -374
- package/dist/types.backup/rsc/shell-serve.d.ts +0 -136
- package/dist/types.backup/rsc/ssr-setup.d.ts +0 -48
- package/dist/types.backup/rsc/transition-gate.d.ts +0 -27
- package/dist/types.backup/rsc/types.d.ts +0 -290
- package/dist/types.backup/runtime-env.d.ts +0 -1
- package/dist/types.backup/search-params.d.ts +0 -125
- package/dist/types.backup/segment-content-promise.d.ts +0 -13
- package/dist/types.backup/segment-fragments.d.ts +0 -56
- package/dist/types.backup/segment-loader-promise.d.ts +0 -22
- package/dist/types.backup/segment-system.d.ts +0 -84
- package/dist/types.backup/serialize.d.ts +0 -164
- package/dist/types.backup/server/context.d.ts +0 -494
- package/dist/types.backup/server/cookie-parse.d.ts +0 -10
- package/dist/types.backup/server/cookie-store.d.ts +0 -107
- package/dist/types.backup/server/fetchable-loader-store.d.ts +0 -20
- package/dist/types.backup/server/handle-store.d.ts +0 -100
- package/dist/types.backup/server/loader-registry.d.ts +0 -32
- package/dist/types.backup/server/request-context.d.ts +0 -596
- package/dist/types.backup/server/root-layout.d.ts +0 -3
- package/dist/types.backup/server.d.ts +0 -15
- package/dist/types.backup/ssr/index.d.ts +0 -233
- package/dist/types.backup/ssr/inject-rsc-eager.d.ts +0 -3
- package/dist/types.backup/ssr/preinit-client-references.d.ts +0 -71
- package/dist/types.backup/ssr/ssr-root.d.ts +0 -69
- package/dist/types.backup/static-handler.d.ts +0 -57
- package/dist/types.backup/testing/cache-status.d.ts +0 -63
- package/dist/types.backup/testing/collect-handle.d.ts +0 -20
- package/dist/types.backup/testing/dispatch.d.ts +0 -123
- package/dist/types.backup/testing/dom.entry.d.ts +0 -15
- package/dist/types.backup/testing/e2e/fixture.d.ts +0 -37
- package/dist/types.backup/testing/e2e/index.d.ts +0 -30
- package/dist/types.backup/testing/e2e/matchers.d.ts +0 -17
- package/dist/types.backup/testing/e2e/page-helpers.d.ts +0 -62
- package/dist/types.backup/testing/e2e/parity.d.ts +0 -111
- package/dist/types.backup/testing/e2e/server.d.ts +0 -35
- package/dist/types.backup/testing/flight-matchers.d.ts +0 -55
- package/dist/types.backup/testing/flight-normalize.d.ts +0 -1
- package/dist/types.backup/testing/flight-tree.d.ts +0 -192
- package/dist/types.backup/testing/flight.d.ts +0 -115
- package/dist/types.backup/testing/flight.entry.d.ts +0 -27
- package/dist/types.backup/testing/generated-routes.d.ts +0 -66
- package/dist/types.backup/testing/index.d.ts +0 -52
- package/dist/types.backup/testing/internal/context.d.ts +0 -225
- package/dist/types.backup/testing/internal/flight-client-globals.d.ts +0 -1
- package/dist/types.backup/testing/internal/seed-vars.d.ts +0 -30
- package/dist/types.backup/testing/render-handler.d.ts +0 -160
- package/dist/types.backup/testing/render-route.d.ts +0 -246
- package/dist/types.backup/testing/run-loader.d.ts +0 -186
- package/dist/types.backup/testing/run-middleware.d.ts +0 -132
- package/dist/types.backup/testing/run-transition-when.d.ts +0 -77
- package/dist/types.backup/testing/vitest-stubs/cloudflare-email.d.ts +0 -6
- package/dist/types.backup/testing/vitest-stubs/cloudflare-workers.d.ts +0 -13
- package/dist/types.backup/testing/vitest-stubs/plugin-rsc.d.ts +0 -7
- package/dist/types.backup/testing/vitest-stubs/version.d.ts +0 -1
- package/dist/types.backup/testing/vitest.d.ts +0 -205
- package/dist/types.backup/theme/ThemeProvider.d.ts +0 -13
- package/dist/types.backup/theme/ThemeScript.d.ts +0 -45
- package/dist/types.backup/theme/constants.d.ts +0 -39
- package/dist/types.backup/theme/index.d.ts +0 -29
- package/dist/types.backup/theme/theme-context.d.ts +0 -21
- package/dist/types.backup/theme/theme-script.d.ts +0 -26
- package/dist/types.backup/theme/types.d.ts +0 -162
- package/dist/types.backup/theme/use-theme.d.ts +0 -8
- package/dist/types.backup/types/boundaries.d.ts +0 -93
- package/dist/types.backup/types/cache-types.d.ts +0 -191
- package/dist/types.backup/types/error-types.d.ts +0 -114
- package/dist/types.backup/types/global-namespace.d.ts +0 -90
- package/dist/types.backup/types/handler-context.d.ts +0 -658
- package/dist/types.backup/types/index.d.ts +0 -11
- package/dist/types.backup/types/loader-types.d.ts +0 -182
- package/dist/types.backup/types/request-scope.d.ts +0 -93
- package/dist/types.backup/types/route-config.d.ts +0 -105
- package/dist/types.backup/types/route-entry.d.ts +0 -95
- package/dist/types.backup/types/segments.d.ts +0 -234
- package/dist/types.backup/types.d.ts +0 -1
- package/dist/types.backup/urls/include-helper.d.ts +0 -17
- package/dist/types.backup/urls/include-provider.d.ts +0 -27
- package/dist/types.backup/urls/index.d.ts +0 -6
- package/dist/types.backup/urls/path-helper-types.d.ts +0 -197
- package/dist/types.backup/urls/path-helper.d.ts +0 -12
- package/dist/types.backup/urls/pattern-types.d.ts +0 -166
- package/dist/types.backup/urls/response-types.d.ts +0 -67
- package/dist/types.backup/urls/type-extraction.d.ts +0 -157
- package/dist/types.backup/urls/urls-function.d.ts +0 -24
- package/dist/types.backup/urls.d.ts +0 -1
- package/dist/types.backup/use-loader.d.ts +0 -150
- package/dist/types.backup/vercel/index.d.ts +0 -10
- package/dist/types.backup/vercel/tracing.d.ts +0 -70
- package/dist/types.backup/vite/debug.d.ts +0 -80
- package/dist/types.backup/vite/discovery/bundle-postprocess.d.ts +0 -12
- package/dist/types.backup/vite/discovery/dev-prerender-cache.d.ts +0 -65
- package/dist/types.backup/vite/discovery/discover-routers.d.ts +0 -17
- package/dist/types.backup/vite/discovery/discovery-errors.d.ts +0 -113
- package/dist/types.backup/vite/discovery/gate-state.d.ts +0 -79
- package/dist/types.backup/vite/discovery/prerender-collection.d.ts +0 -24
- package/dist/types.backup/vite/discovery/route-types-writer.d.ts +0 -32
- package/dist/types.backup/vite/discovery/self-gen-tracking.d.ts +0 -22
- package/dist/types.backup/vite/discovery/shell-prerender-phase.d.ts +0 -40
- package/dist/types.backup/vite/discovery/state.d.ts +0 -162
- package/dist/types.backup/vite/discovery/virtual-module-codegen.d.ts +0 -15
- package/dist/types.backup/vite/index.d.ts +0 -11
- package/dist/types.backup/vite/inject-client-debug.d.ts +0 -56
- package/dist/types.backup/vite/plugin-types.d.ts +0 -298
- package/dist/types.backup/vite/plugins/cjs-to-esm.d.ts +0 -6
- package/dist/types.backup/vite/plugins/client-ref-dedup.d.ts +0 -40
- package/dist/types.backup/vite/plugins/client-ref-hashing.d.ts +0 -35
- package/dist/types.backup/vite/plugins/cloudflare-protocol-stub.d.ts +0 -64
- package/dist/types.backup/vite/plugins/expose-action-id.d.ts +0 -18
- package/dist/types.backup/vite/plugins/expose-id-utils.d.ts +0 -37
- package/dist/types.backup/vite/plugins/expose-ids/export-analysis.d.ts +0 -19
- package/dist/types.backup/vite/plugins/expose-ids/handler-transform.d.ts +0 -10
- package/dist/types.backup/vite/plugins/expose-ids/loader-transform.d.ts +0 -8
- package/dist/types.backup/vite/plugins/expose-ids/router-transform.d.ts +0 -13
- package/dist/types.backup/vite/plugins/expose-ids/types.d.ts +0 -29
- package/dist/types.backup/vite/plugins/expose-internal-ids.d.ts +0 -6
- package/dist/types.backup/vite/plugins/performance-tracks.d.ts +0 -25
- package/dist/types.backup/vite/plugins/refresh-cmd.d.ts +0 -20
- package/dist/types.backup/vite/plugins/use-cache-transform.d.ts +0 -20
- package/dist/types.backup/vite/plugins/vercel-output.d.ts +0 -85
- package/dist/types.backup/vite/plugins/version-injector.d.ts +0 -21
- package/dist/types.backup/vite/plugins/version-plugin.d.ts +0 -19
- package/dist/types.backup/vite/plugins/virtual-entries.d.ts +0 -36
- package/dist/types.backup/vite/plugins/virtual-stub-plugin.d.ts +0 -7
- package/dist/types.backup/vite/rango.d.ts +0 -29
- package/dist/types.backup/vite/router-discovery.d.ts +0 -23
- package/dist/types.backup/vite/utils/ast-handler-extract.d.ts +0 -64
- package/dist/types.backup/vite/utils/banner.d.ts +0 -2
- package/dist/types.backup/vite/utils/bundle-analysis.d.ts +0 -28
- package/dist/types.backup/vite/utils/client-chunks.d.ts +0 -55
- package/dist/types.backup/vite/utils/directive-prologue.d.ts +0 -16
- package/dist/types.backup/vite/utils/forward-user-plugins.d.ts +0 -37
- package/dist/types.backup/vite/utils/manifest-utils.d.ts +0 -7
- package/dist/types.backup/vite/utils/package-resolution.d.ts +0 -6
- package/dist/types.backup/vite/utils/prerender-utils.d.ts +0 -32
- package/dist/types.backup/vite/utils/shared-utils.d.ts +0 -55
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
import type { ExtractParams } from "./types.js";
|
|
2
|
-
import type { SearchSchema, ResolveSearchSchema } from "./search-params.js";
|
|
3
|
-
/**
|
|
4
|
-
* Sanitize prefix string by removing leading slash
|
|
5
|
-
* "/shop" -> "shop", "blog" -> "blog", "" -> ""
|
|
6
|
-
*/
|
|
7
|
-
export type SanitizePrefix<T extends string> = T extends `/${infer P}` ? P : T;
|
|
8
|
-
/**
|
|
9
|
-
* Helper type to merge multiple route definitions into a single accumulated type.
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```typescript
|
|
13
|
-
* type AppRoutes = MergeRoutes<[typeof siteRoutes, typeof apiRoutes]>;
|
|
14
|
-
* ```
|
|
15
|
-
*/
|
|
16
|
-
export type MergeRoutes<T extends unknown[]> = T extends [
|
|
17
|
-
infer First,
|
|
18
|
-
...infer Rest
|
|
19
|
-
] ? First & MergeRoutes<Rest> : {};
|
|
20
|
-
/**
|
|
21
|
-
* Helper to safely extract route patterns from a routes object
|
|
22
|
-
* Handles string values, { path, response } objects, and interface types (like RegisteredRoutes)
|
|
23
|
-
*/
|
|
24
|
-
type RoutePatternFor<TRoutes, TName extends keyof TRoutes> = TRoutes[TName] extends string ? TRoutes[TName] : TRoutes[TName] extends {
|
|
25
|
-
readonly path: infer P extends string;
|
|
26
|
-
} ? P : string;
|
|
27
|
-
/**
|
|
28
|
-
* Extract params type for a route
|
|
29
|
-
*/
|
|
30
|
-
export type ParamsFor<TRoutes, TName extends keyof TRoutes> = ExtractParams<RoutePatternFor<TRoutes, TName>>;
|
|
31
|
-
/**
|
|
32
|
-
* Check if an object type has any keys
|
|
33
|
-
*/
|
|
34
|
-
type IsEmptyObject<T> = keyof T extends never ? true : false;
|
|
35
|
-
/**
|
|
36
|
-
* Extract search schema from a route entry.
|
|
37
|
-
* Returns {} if no search schema is defined.
|
|
38
|
-
*/
|
|
39
|
-
type ExtractSearchSchema<TRoutes, TName extends keyof TRoutes> = TRoutes[TName] extends {
|
|
40
|
-
readonly search: infer S extends SearchSchema;
|
|
41
|
-
} ? S : {};
|
|
42
|
-
/**
|
|
43
|
-
* Type-safe reverse function signature (Django-style URL reversal)
|
|
44
|
-
*
|
|
45
|
-
* Validates route names and params at compile time.
|
|
46
|
-
* Use route names instead of raw paths for full type safety.
|
|
47
|
-
*
|
|
48
|
-
* @example
|
|
49
|
-
* ```typescript
|
|
50
|
-
* reverse("cart") // ✓ Validates route exists
|
|
51
|
-
* reverse("product.detail", { id: "123" }) // ✓ Validates route + params
|
|
52
|
-
* ```
|
|
53
|
-
*/
|
|
54
|
-
export type ReverseFunction<TRoutes> = {
|
|
55
|
-
/**
|
|
56
|
-
* Route without params - validates route name exists
|
|
57
|
-
*/
|
|
58
|
-
<TName extends keyof TRoutes & string>(name: IsEmptyObject<ExtractParams<RoutePatternFor<TRoutes, TName>>> extends true ? TName : never): string;
|
|
59
|
-
/**
|
|
60
|
-
* Route with params - validates both route name and params
|
|
61
|
-
*/
|
|
62
|
-
<TName extends keyof TRoutes & string>(name: TName, params: ExtractParams<RoutePatternFor<TRoutes, TName>>): string;
|
|
63
|
-
/**
|
|
64
|
-
* Route with params and search - validates route name, params, and search
|
|
65
|
-
*/
|
|
66
|
-
<TName extends keyof TRoutes & string>(name: TName, params: ExtractParams<RoutePatternFor<TRoutes, TName>>, search: ResolveSearchSchema<ExtractSearchSchema<TRoutes, TName>>): string;
|
|
67
|
-
/**
|
|
68
|
-
* Dot-prefixed route without params - strictly local resolution
|
|
69
|
-
*/
|
|
70
|
-
<TName extends keyof TRoutes & string>(name: IsEmptyObject<ExtractParams<RoutePatternFor<TRoutes, TName>>> extends true ? `.${TName}` : never): string;
|
|
71
|
-
/**
|
|
72
|
-
* Dot-prefixed route with params - strictly local resolution
|
|
73
|
-
*/
|
|
74
|
-
<TName extends keyof TRoutes & string>(name: `.${TName}`, params: ExtractParams<RoutePatternFor<TRoutes, TName>>): string;
|
|
75
|
-
/**
|
|
76
|
-
* Dot-prefixed route with params and search - strictly local resolution
|
|
77
|
-
*/
|
|
78
|
-
<TName extends keyof TRoutes & string>(name: `.${TName}`, params: ExtractParams<RoutePatternFor<TRoutes, TName>>, search: ResolveSearchSchema<ExtractSearchSchema<TRoutes, TName>>): string;
|
|
79
|
-
};
|
|
80
|
-
/**
|
|
81
|
-
* Type-safe scoped reverse function with separate local and global namespaces.
|
|
82
|
-
*
|
|
83
|
-
* - `.name` — local resolution within the current include() scope
|
|
84
|
-
* - `name` — global resolution against the named-routes definition
|
|
85
|
-
*
|
|
86
|
-
* @example
|
|
87
|
-
* ```typescript
|
|
88
|
-
* reverse(".article", { slug: "hello" }) // ✓ Local route (resolves with mount prefix)
|
|
89
|
-
* reverse(".index") // ✓ Local route (no params)
|
|
90
|
-
* reverse("magazine.index") // ✓ Global route (fully qualified)
|
|
91
|
-
* reverse("blog.post", { slug: "hello" }) // ✓ Global route + params
|
|
92
|
-
* reverse(".typo") // ✗ Compile error (not in local routes)
|
|
93
|
-
* reverse("typo") // ✗ Compile error (not in global routes)
|
|
94
|
-
* ```
|
|
95
|
-
*/
|
|
96
|
-
export type ScopedReverseFunction<TLocalRoutes, TGlobalRoutes = TLocalRoutes> = {
|
|
97
|
-
/**
|
|
98
|
-
* Global route without params
|
|
99
|
-
*/
|
|
100
|
-
<TName extends keyof TGlobalRoutes & string>(name: IsEmptyObject<ExtractParams<RoutePatternFor<TGlobalRoutes, TName>>> extends true ? TName : never): string;
|
|
101
|
-
/**
|
|
102
|
-
* Global route with params
|
|
103
|
-
*/
|
|
104
|
-
<TName extends keyof TGlobalRoutes & string>(name: TName, params: ExtractParams<RoutePatternFor<TGlobalRoutes, TName>>): string;
|
|
105
|
-
/**
|
|
106
|
-
* Global route with params and search
|
|
107
|
-
*/
|
|
108
|
-
<TName extends keyof TGlobalRoutes & string>(name: TName, params: ExtractParams<RoutePatternFor<TGlobalRoutes, TName>>, search: ResolveSearchSchema<ExtractSearchSchema<TGlobalRoutes, TName>>): string;
|
|
109
|
-
/**
|
|
110
|
-
* Dot-prefixed local route without params
|
|
111
|
-
*/
|
|
112
|
-
<TName extends keyof TLocalRoutes & string>(name: IsEmptyObject<ExtractParams<RoutePatternFor<TLocalRoutes, TName>>> extends true ? `.${TName}` : never): string;
|
|
113
|
-
/**
|
|
114
|
-
* Dot-prefixed local route with params
|
|
115
|
-
*/
|
|
116
|
-
<TName extends keyof TLocalRoutes & string>(name: `.${TName}`, params: ExtractParams<RoutePatternFor<TLocalRoutes, TName>>): string;
|
|
117
|
-
/**
|
|
118
|
-
* Dot-prefixed local route with params and search
|
|
119
|
-
*/
|
|
120
|
-
<TName extends keyof TLocalRoutes & string>(name: `.${TName}`, params: ExtractParams<RoutePatternFor<TLocalRoutes, TName>>, search: ResolveSearchSchema<ExtractSearchSchema<TLocalRoutes, TName>>): string;
|
|
121
|
-
};
|
|
122
|
-
/**
|
|
123
|
-
* Extract local routes type from UrlPatterns
|
|
124
|
-
* Used with scopedReverse() to get the routes type from patterns
|
|
125
|
-
*/
|
|
126
|
-
export type ExtractLocalRoutes<TPatterns> = TPatterns extends {
|
|
127
|
-
readonly _routes?: infer TRoutes;
|
|
128
|
-
} ? TRoutes : TPatterns extends Record<string, string> ? TPatterns : Record<string, string>;
|
|
129
|
-
/**
|
|
130
|
-
* Params accepted by `useReverse(routes)`. The route's own params are
|
|
131
|
-
* required, and additional string keys are permitted so callers can
|
|
132
|
-
* override values that would otherwise be auto-filled from the matched
|
|
133
|
-
* route's `useParams()` (e.g. an enclosing `:tenantId` mount segment).
|
|
134
|
-
*/
|
|
135
|
-
export type LocalReverseParams<TPattern extends string> = ExtractParams<TPattern> & {
|
|
136
|
-
readonly [extra: string]: string | undefined;
|
|
137
|
-
};
|
|
138
|
-
/**
|
|
139
|
-
* Type-safe local reverse function.
|
|
140
|
-
*
|
|
141
|
-
* Returned by `useReverse(routes)` on the client. The route map is the
|
|
142
|
-
* exposure boundary (a generated `routes` from a `urls()` module) and the
|
|
143
|
-
* scope is implicit from that import. Names may be written with or without a
|
|
144
|
-
* leading dot — `reverse("post")` and `reverse(".post")` are identical. The dot
|
|
145
|
-
* is a cosmetic readability convention (and parity with `ctx.reverse(".name")`);
|
|
146
|
-
* there is no separate global namespace here, so it carries no meaning.
|
|
147
|
-
*
|
|
148
|
-
* @example
|
|
149
|
-
* ```typescript
|
|
150
|
-
* const reverse = useReverse(blogRoutes);
|
|
151
|
-
* reverse("index"); // ✓ no params (dot optional)
|
|
152
|
-
* reverse(".index"); // ✓ identical to the above
|
|
153
|
-
* reverse("post", { postId: "hello" }); // ✓ with params
|
|
154
|
-
* reverse("search", {}, { q: "hi" }); // ✓ with search schema
|
|
155
|
-
* reverse("typo"); // ✗ compile error
|
|
156
|
-
* ```
|
|
157
|
-
*/
|
|
158
|
-
export type LocalReverseFunction<TLocalRoutes> = {
|
|
159
|
-
/**
|
|
160
|
-
* Route without params (leading dot optional)
|
|
161
|
-
*/
|
|
162
|
-
<TName extends keyof TLocalRoutes & string>(name: IsEmptyObject<ExtractParams<RoutePatternFor<TLocalRoutes, TName>>> extends true ? TName | `.${TName}` : never): string;
|
|
163
|
-
/**
|
|
164
|
-
* Route with params (leading dot optional)
|
|
165
|
-
*/
|
|
166
|
-
<TName extends keyof TLocalRoutes & string>(name: TName | `.${TName}`, params: LocalReverseParams<RoutePatternFor<TLocalRoutes, TName>>): string;
|
|
167
|
-
/**
|
|
168
|
-
* Route with params and search (leading dot optional)
|
|
169
|
-
*/
|
|
170
|
-
<TName extends keyof TLocalRoutes & string>(name: TName | `.${TName}`, params: LocalReverseParams<RoutePatternFor<TLocalRoutes, TName>>, search: ResolveSearchSchema<ExtractSearchSchema<TLocalRoutes, TName>>): string;
|
|
171
|
-
};
|
|
172
|
-
/**
|
|
173
|
-
* Extract the response data type for a named route from a UrlPatterns instance.
|
|
174
|
-
* Re-exported from urls.ts for consumer convenience.
|
|
175
|
-
*/
|
|
176
|
-
export type { RouteResponse } from "./urls.js";
|
|
177
|
-
/**
|
|
178
|
-
* Get a locally-typed reverse function from ctx.reverse for composable modules.
|
|
179
|
-
*
|
|
180
|
-
* This is a type-only cast - ctx.reverse already resolves names at runtime.
|
|
181
|
-
* Provides type safety: `.name` validates against local routes,
|
|
182
|
-
* `name` validates against global named-routes.
|
|
183
|
-
*
|
|
184
|
-
* @param reverse - The ctx.reverse function from HandlerContext
|
|
185
|
-
* @returns The same reverse function, typed with local + global routes
|
|
186
|
-
*
|
|
187
|
-
* @example
|
|
188
|
-
* ```typescript
|
|
189
|
-
* // urls/blog.tsx
|
|
190
|
-
* export const blogPatterns = urls(({ path }) => [
|
|
191
|
-
* path("/", (ctx) => {
|
|
192
|
-
* const reverse = scopedReverse<typeof blogPatterns>(ctx.reverse);
|
|
193
|
-
*
|
|
194
|
-
* reverse(".index"); // ✓ Local route
|
|
195
|
-
* reverse(".post", { slug: "x" }); // ✓ Local with params
|
|
196
|
-
* reverse("shop.cart"); // ✓ Global route
|
|
197
|
-
*
|
|
198
|
-
* return <BlogIndex />;
|
|
199
|
-
* }, { name: "index" }),
|
|
200
|
-
*
|
|
201
|
-
* path("/:slug", BlogPost, { name: "post" }),
|
|
202
|
-
* ]);
|
|
203
|
-
* ```
|
|
204
|
-
*/
|
|
205
|
-
export declare function scopedReverse<TPatterns>(reverse: (...args: any[]) => string): ScopedReverseFunction<ExtractLocalRoutes<TPatterns>>;
|
|
206
|
-
export declare function createReverse<TRoutes extends Record<string, string>>(routeMap: TRoutes): ReverseFunction<TRoutes & Record<string, string>>;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Component, type ReactNode } from "react";
|
|
2
|
-
interface RootErrorBoundaryState {
|
|
3
|
-
hasError: boolean;
|
|
4
|
-
error: Error | null;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Root error boundary component
|
|
8
|
-
*
|
|
9
|
-
* Wraps the entire segment tree to catch any unhandled errors that bubble up.
|
|
10
|
-
* This prevents the entire app from crashing with a white screen.
|
|
11
|
-
*
|
|
12
|
-
* This is a client component with an inline fallback to avoid the
|
|
13
|
-
* "Functions cannot be passed to Client Components" RSC error.
|
|
14
|
-
*/
|
|
15
|
-
export declare class RootErrorBoundary extends Component<{
|
|
16
|
-
children: ReactNode;
|
|
17
|
-
}, RootErrorBoundaryState> {
|
|
18
|
-
constructor(props: {
|
|
19
|
-
children: ReactNode;
|
|
20
|
-
});
|
|
21
|
-
static getDerivedStateFromError(error: Error): RootErrorBoundaryState;
|
|
22
|
-
componentDidMount(): void;
|
|
23
|
-
componentWillUnmount(): void;
|
|
24
|
-
componentDidCatch(error: Error, errorInfo: React.ErrorInfo): void;
|
|
25
|
-
componentDidUpdate(prevProps: {
|
|
26
|
-
children: ReactNode;
|
|
27
|
-
}): void;
|
|
28
|
-
handlePopState: () => void;
|
|
29
|
-
reset: () => void;
|
|
30
|
-
render(): ReactNode;
|
|
31
|
-
}
|
|
32
|
-
export {};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import type { ReactNode } from "react";
|
|
2
|
-
import type { ResolvedSegment } from "./types.js";
|
|
3
|
-
/**
|
|
4
|
-
* Stable async wrapper component for route content
|
|
5
|
-
* Using a module-level component ensures React sees the same component reference
|
|
6
|
-
* across renders, preventing unnecessary remounts during actions.
|
|
7
|
-
*
|
|
8
|
-
* When content is a pending promise, React suspends and shows the nearest
|
|
9
|
-
* Suspense fallback. When content is already resolved, it renders immediately
|
|
10
|
-
* without suspension.
|
|
11
|
-
*
|
|
12
|
-
* @param segmentId - Stable ID from segment, used for consistent keys across renders
|
|
13
|
-
*/
|
|
14
|
-
export declare function RouteContentWrapper({ content, fallback, segmentId, }: {
|
|
15
|
-
content: Promise<ReactNode> | ReactNode;
|
|
16
|
-
fallback?: ReactNode;
|
|
17
|
-
segmentId?: string;
|
|
18
|
-
}): ReactNode;
|
|
19
|
-
/**
|
|
20
|
-
* LoaderBoundary - Client component that resolves loader promises and renders OutletProvider
|
|
21
|
-
*
|
|
22
|
-
* This component enables streaming with loaders by:
|
|
23
|
-
* 1. Receiving loader promises (serializable across RSC boundary)
|
|
24
|
-
* 2. Using React's use() to resolve them (triggers Suspense)
|
|
25
|
-
* 3. Rendering OutletProvider with resolved data
|
|
26
|
-
*
|
|
27
|
-
* The callback logic lives inside this client component, avoiding the
|
|
28
|
-
* "Functions are not valid as a child of Client Components" error.
|
|
29
|
-
*/
|
|
30
|
-
export interface LoaderBoundaryProps {
|
|
31
|
-
loaderDataPromise: Promise<any[]> | any[];
|
|
32
|
-
loaderIds: string[];
|
|
33
|
-
fallback?: ReactNode;
|
|
34
|
-
outletKey: string;
|
|
35
|
-
outletContent: ReactNode;
|
|
36
|
-
segment: ResolvedSegment;
|
|
37
|
-
parallel?: ResolvedSegment[];
|
|
38
|
-
children: ReactNode;
|
|
39
|
-
}
|
|
40
|
-
export declare function LoaderBoundary({ loaderDataPromise, loaderIds, fallback, outletKey, outletContent, segment, parallel, children, }: LoaderBoundaryProps): ReactNode;
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import type { TransitionConfig } from "../types.js";
|
|
2
|
-
import { getContext, type EntryData, type EntryPropDatas, type EntryPropSegments, type InterceptConfig } from "../server/context";
|
|
3
|
-
import type { AllUseItems, InterceptItem, TransitionItem, UseItems } from "../route-types.js";
|
|
4
|
-
import type { RouteHelpers } from "./helpers-types.js";
|
|
5
|
-
/**
|
|
6
|
-
* Fresh empty collections shared by every from-scratch segment entry. Returns
|
|
7
|
-
* new arrays/objects per call so no two entries share mutable references.
|
|
8
|
-
* mountPath is intentionally NOT included here — each call site adds it from
|
|
9
|
-
* getUrlPrefix() where applicable: the route() and transition() helpers add
|
|
10
|
-
* none, while path() (which also builds a `type: "route"` entry) and the
|
|
11
|
-
* structural helpers (layout/cache/middleware/parallel) do.
|
|
12
|
-
*/
|
|
13
|
-
declare const emptySegmentBase: () => EntryPropDatas & EntryPropSegments & {
|
|
14
|
-
loading: undefined;
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Run a children/use callback as a nested scope, flatten the result, and assert
|
|
18
|
-
* every item is a valid use item. `kind` preserves the existing error wording
|
|
19
|
-
* ("use()" vs "children" callback).
|
|
20
|
-
*/
|
|
21
|
-
declare function runAndValidateUseItems(store: ReturnType<typeof getContext>, namespace: string, entry: EntryData, cb: () => any, label: string, kind: "use" | "children"): AllUseItems[];
|
|
22
|
-
declare const revalidate: RouteHelpers<any, any>["revalidate"];
|
|
23
|
-
/**
|
|
24
|
-
* Error boundary helper - attaches an error fallback to the current entry
|
|
25
|
-
*
|
|
26
|
-
* When an error occurs during rendering of this segment or its children,
|
|
27
|
-
* the fallback will be rendered instead. The fallback can be:
|
|
28
|
-
* - A static ReactNode (e.g., <ErrorPage />)
|
|
29
|
-
* - A handler function that receives error info and reset function
|
|
30
|
-
*
|
|
31
|
-
* Error boundaries catch errors from:
|
|
32
|
-
* - Middleware execution
|
|
33
|
-
* - Loader execution
|
|
34
|
-
* - Handler/component rendering
|
|
35
|
-
*
|
|
36
|
-
* @example
|
|
37
|
-
* ```typescript
|
|
38
|
-
* layout(<ShopLayout />, () => [
|
|
39
|
-
* errorBoundary(<ShopErrorFallback />),
|
|
40
|
-
* route("products.detail", ProductDetail),
|
|
41
|
-
* ])
|
|
42
|
-
*
|
|
43
|
-
* // Or with handler for dynamic error UI:
|
|
44
|
-
* route("products.detail", ProductDetail, () => [
|
|
45
|
-
* errorBoundary(({ error, reset }) => (
|
|
46
|
-
* <div>
|
|
47
|
-
* <h2>Product failed to load</h2>
|
|
48
|
-
* <p>{error.message}</p>
|
|
49
|
-
* <button onClick={reset}>Retry</button>
|
|
50
|
-
* </div>
|
|
51
|
-
* )),
|
|
52
|
-
* ])
|
|
53
|
-
* ```
|
|
54
|
-
*/
|
|
55
|
-
declare const errorBoundary: RouteHelpers<any, any>["errorBoundary"];
|
|
56
|
-
/**
|
|
57
|
-
* NotFound boundary helper - attaches a not-found fallback to the current entry
|
|
58
|
-
*
|
|
59
|
-
* When a DataNotFoundError is thrown (via notFound()) during rendering of this
|
|
60
|
-
* segment or its children, the fallback will be rendered instead. The fallback can be:
|
|
61
|
-
* - A static ReactNode (e.g., <ProductNotFound />)
|
|
62
|
-
* - A handler function that receives not found info
|
|
63
|
-
*
|
|
64
|
-
* NotFound boundaries catch DataNotFoundError from:
|
|
65
|
-
* - Loader execution
|
|
66
|
-
* - Handler/component rendering
|
|
67
|
-
*
|
|
68
|
-
* @example
|
|
69
|
-
* ```typescript
|
|
70
|
-
* layout(<ShopLayout />, () => [
|
|
71
|
-
* notFoundBoundary(<ProductNotFound />),
|
|
72
|
-
* route("products.detail", ProductDetail),
|
|
73
|
-
* ])
|
|
74
|
-
*
|
|
75
|
-
* // Or with handler for dynamic not found UI:
|
|
76
|
-
* route("products.detail", ProductDetail, () => [
|
|
77
|
-
* notFoundBoundary(({ notFound }) => (
|
|
78
|
-
* <div>
|
|
79
|
-
* <h2>Product not found</h2>
|
|
80
|
-
* <p>{notFound.message}</p>
|
|
81
|
-
* <a href="/products">Browse all products</a>
|
|
82
|
-
* </div>
|
|
83
|
-
* )),
|
|
84
|
-
* ])
|
|
85
|
-
* ```
|
|
86
|
-
*/
|
|
87
|
-
declare const notFoundBoundary: RouteHelpers<any, any>["notFoundBoundary"];
|
|
88
|
-
/**
|
|
89
|
-
* Cache helper - defines caching configuration for segments
|
|
90
|
-
*
|
|
91
|
-
* Creates a cache boundary that applies to all children unless overridden.
|
|
92
|
-
* When used without children, attaches cache config to the parent entry
|
|
93
|
-
* (e.g., for loader-specific caching).
|
|
94
|
-
*
|
|
95
|
-
* Supports these call signatures:
|
|
96
|
-
* - cache() - no args, uses app-level defaults (for loader caching)
|
|
97
|
-
* - cache(() => [...]) - wraps children with app-level defaults
|
|
98
|
-
* - cache({ ttl: 60 }, () => [...]) - with explicit options
|
|
99
|
-
*
|
|
100
|
-
* Named cache profiles are applied via the `"use cache: <profile>"` directive,
|
|
101
|
-
* not a `cache("profileName")` form in the route tree.
|
|
102
|
-
*/
|
|
103
|
-
declare const cache: RouteHelpers<any, any>["cache"];
|
|
104
|
-
declare const middleware: RouteHelpers<any, any>["middleware"];
|
|
105
|
-
declare const parallel: RouteHelpers<any, any>["parallel"];
|
|
106
|
-
/**
|
|
107
|
-
* Intercept helper - defines an intercepting route for soft navigation
|
|
108
|
-
*/
|
|
109
|
-
declare const intercept: (slotName: `@${string}`, routeName: string, handler: any, configOrUse?: InterceptConfig | (() => any[]), use?: () => any[]) => InterceptItem;
|
|
110
|
-
/**
|
|
111
|
-
* Loader helper - attaches a loader to the current entry
|
|
112
|
-
*/
|
|
113
|
-
declare const loader: RouteHelpers<any, any>["loader"];
|
|
114
|
-
/**
|
|
115
|
-
* Loading helper - attaches a loading component to the current entry
|
|
116
|
-
* Loading components are static (no context) and shown during navigation
|
|
117
|
-
*/
|
|
118
|
-
declare const loading: RouteHelpers<any, any>["loading"];
|
|
119
|
-
/**
|
|
120
|
-
* Transition helper - opts the entry (or a wrapped group of routes) into
|
|
121
|
-
* transition-driven navigation by attaching a TransitionConfig. This drives the
|
|
122
|
-
* commit through startTransition (content hold on all React versions) and, on
|
|
123
|
-
* experimental React, places a `<ViewTransition>` boundary unless
|
|
124
|
-
* `viewTransition: false`. See skills/view-transitions for the matrix.
|
|
125
|
-
*/
|
|
126
|
-
declare const transition: (configOrChildren?: TransitionConfig | (() => UseItems<AllUseItems>), maybeChildren?: () => UseItems<AllUseItems>) => TransitionItem;
|
|
127
|
-
declare const route: RouteHelpers<any, any>["route"];
|
|
128
|
-
declare const layout: RouteHelpers<any, any>["layout"];
|
|
129
|
-
declare const isValidUseItem: (item: any) => item is AllUseItems | undefined | null;
|
|
130
|
-
export { layout, cache, middleware, revalidate, parallel, intercept, errorBoundary, notFoundBoundary, route, loader, loading, transition, isValidUseItem, emptySegmentBase, runAndValidateUseItems, };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { RouteDefinition, DefaultEnv } from "../types.js";
|
|
2
|
-
import type { AllUseItems } from "../route-types.js";
|
|
3
|
-
import type { RouteHelpers } from "./helpers-types.js";
|
|
4
|
-
/**
|
|
5
|
-
* Branded type for route handlers that carries the route type info.
|
|
6
|
-
* This enables type-safe verification that imported handlers match route definitions.
|
|
7
|
-
*/
|
|
8
|
-
export interface RouteHandlers<T extends RouteDefinition> {
|
|
9
|
-
(): Array<AllUseItems>;
|
|
10
|
-
/** Brand to carry route type info for type checking */
|
|
11
|
-
readonly __routes: T;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Type-safe handler definition helper
|
|
15
|
-
*
|
|
16
|
-
*/
|
|
17
|
-
export declare function map<const T extends RouteDefinition, TEnv = DefaultEnv>(builder: (helpers: RouteHelpers<T, TEnv>) => Array<AllUseItems>): RouteHandlers<T>;
|
|
18
|
-
/**
|
|
19
|
-
* Create RouteHelpers for inline route definitions
|
|
20
|
-
* Used internally by router.map() for inline handler syntax
|
|
21
|
-
*/
|
|
22
|
-
export declare function createRouteHelpers<T extends RouteDefinition, TEnv>(): RouteHelpers<T, TEnv>;
|