@timber-js/app 0.2.0-alpha.208 → 0.2.0-alpha.209
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/_chunks/{primitives-DLAnvsrk.js → actions-BerlqoXA.js} +640 -410
- package/dist/_chunks/actions-BerlqoXA.js.map +1 -0
- package/dist/_chunks/{als-registry-C6kcfprT.js → als-registry-DaxkVjt5.js} +6 -2
- package/dist/_chunks/als-registry-DaxkVjt5.js.map +1 -0
- package/dist/_chunks/{build-manifest-DTmSGLRz.js → build-manifest-DWppEdLB.js} +2 -51
- package/dist/_chunks/build-manifest-DWppEdLB.js.map +1 -0
- package/dist/_chunks/{build-output-helper-9dqCv1pZ.js → build-output-helper-RV_BRcF1.js} +50 -53
- package/dist/_chunks/build-output-helper-RV_BRcF1.js.map +1 -0
- package/dist/_chunks/{cache-api-CUD9Ezaq.js → cache-api-CR23J_NC.js} +64 -32
- package/dist/_chunks/cache-api-CR23J_NC.js.map +1 -0
- package/dist/_chunks/{chains-B4bgOl2g.js → chains-CpFg56UB.js} +2 -2
- package/dist/_chunks/{chains-B4bgOl2g.js.map → chains-CpFg56UB.js.map} +1 -1
- package/dist/_chunks/{cli-check-G8o30ldg.js → cli-check-C6Ev6wBO.js} +11 -52
- package/dist/_chunks/cli-check-C6Ev6wBO.js.map +1 -0
- package/dist/_chunks/cli-context-By7k2xVo.js +70 -0
- package/dist/_chunks/cli-context-By7k2xVo.js.map +1 -0
- package/dist/_chunks/{cli-schema-sync--LZKs8Zn.js → cli-schema-sync-CbT2AUUI.js} +3 -3
- package/dist/_chunks/{cli-schema-sync--LZKs8Zn.js.map → cli-schema-sync-CbT2AUUI.js.map} +1 -1
- package/dist/_chunks/{cloudflare-BFb__LYG.js → cloudflare-Byxl8FWP.js} +96 -53
- package/dist/_chunks/{cloudflare-BFb__LYG.js.map → cloudflare-Byxl8FWP.js.map} +1 -1
- package/dist/_chunks/{convention-lint-5KzoMg_A.js → convention-lint-jKTwKwPe.js} +21 -6
- package/dist/_chunks/convention-lint-jKTwKwPe.js.map +1 -0
- package/dist/_chunks/{dev-server-BzBxgYAV.js → dev-server-C4WZdB7L.js} +15 -167
- package/dist/_chunks/dev-server-C4WZdB7L.js.map +1 -0
- package/dist/_chunks/{error-boundary-BrHmG-2X.js → error-boundary-tA7kVfs4.js} +84 -104
- package/dist/_chunks/error-boundary-tA7kVfs4.js.map +1 -0
- package/dist/_chunks/{fs-identity-D7vb6GdI.js → fs-identity-BRKuL215.js} +3 -4
- package/dist/_chunks/fs-identity-BRKuL215.js.map +1 -0
- package/dist/_chunks/{graph-cache-CP4GEmf9.js → graph-cache-CYiUS2aS.js} +4 -5
- package/dist/_chunks/graph-cache-CYiUS2aS.js.map +1 -0
- package/dist/_chunks/{json-lossy-check-ClNvBM_3.js → json-lossy-check-ip0Qi0MT.js} +6 -3
- package/dist/_chunks/json-lossy-check-ip0Qi0MT.js.map +1 -0
- package/dist/_chunks/{live-graph-Bm5WTvcr.js → live-graph-Dv-JJCZw.js} +3 -3
- package/dist/_chunks/{live-graph-Bm5WTvcr.js.map → live-graph-Dv-JJCZw.js.map} +1 -1
- package/dist/_chunks/{logger-k2DQ4EUf.js → logger-DiDt5ppH.js} +192 -51
- package/dist/_chunks/logger-DiDt5ppH.js.map +1 -0
- package/dist/_chunks/{navigation-root-mHSK9psY.js → navigation-root-BQfo1-kG.js} +2 -2
- package/dist/_chunks/{navigation-root-mHSK9psY.js.map → navigation-root-BQfo1-kG.js.map} +1 -1
- package/dist/_chunks/{plugin-context-8idfR3UZ.js → plugin-context-BPBPc3lL.js} +28 -4
- package/dist/_chunks/plugin-context-BPBPc3lL.js.map +1 -0
- package/dist/_chunks/{poison-scan-DG5eI2_z.js → poison-scan-CpeT6_OJ.js} +2 -2
- package/dist/_chunks/{poison-scan-DG5eI2_z.js.map → poison-scan-CpeT6_OJ.js.map} +1 -1
- package/dist/_chunks/render-timeout-DOf_BBcO.js +46 -0
- package/dist/_chunks/render-timeout-DOf_BBcO.js.map +1 -0
- package/dist/_chunks/{rsc-payload-path-B_LBodc2.js → rsc-payload-path-dffcs4jp.js} +9 -3
- package/dist/_chunks/{rsc-payload-path-B_LBodc2.js.map → rsc-payload-path-dffcs4jp.js.map} +1 -1
- package/dist/_chunks/{scanner-BQ5sPIJ7.js → scanner-Bw0oq1HB.js} +2 -2
- package/dist/_chunks/{scanner-BQ5sPIJ7.js.map → scanner-Bw0oq1HB.js.map} +1 -1
- package/dist/_chunks/{navigation-context-D0TU0Jog.js → segment-context-xtPUGfdq.js} +36 -34
- package/dist/_chunks/segment-context-xtPUGfdq.js.map +1 -0
- package/dist/_chunks/{singleflight-2lUWfcAk.js → singleflight-BeVMMKi0.js} +4 -3
- package/dist/_chunks/{singleflight-2lUWfcAk.js.map → singleflight-BeVMMKi0.js.map} +1 -1
- package/dist/_chunks/{sizeof-lXffQ1Vr.js → sizeof-UwzwB1uM.js} +3 -2
- package/dist/_chunks/sizeof-UwzwB1uM.js.map +1 -0
- package/dist/_chunks/ssr-data-nA3I70_n.js +49 -0
- package/dist/_chunks/ssr-data-nA3I70_n.js.map +1 -0
- package/dist/_chunks/{state-FippDgxN.js → state-BhNGPsdi.js} +6 -8
- package/dist/_chunks/state-BhNGPsdi.js.map +1 -0
- package/dist/_chunks/{status-page-marker-CNbpUOPB.js → status-page-marker-gaihi0KZ.js} +53 -20
- package/dist/_chunks/status-page-marker-gaihi0KZ.js.map +1 -0
- package/dist/_chunks/{walkers-CN2N_bA-.js → walkers-BXExhzzk.js} +2 -2
- package/dist/_chunks/{walkers-CN2N_bA-.js.map → walkers-BXExhzzk.js.map} +1 -1
- package/dist/_chunks/write-file-atomic-D1qWqHb4.js +32 -0
- package/dist/_chunks/write-file-atomic-D1qWqHb4.js.map +1 -0
- package/dist/adapters/build-output-helper.d.ts +7 -7
- package/dist/adapters/build-output-helper.d.ts.map +1 -1
- package/dist/adapters/canonicalize-module.d.ts +8 -0
- package/dist/adapters/canonicalize-module.d.ts.map +1 -0
- package/dist/adapters/cloudflare-dev.js +1 -1
- package/dist/adapters/cloudflare-kv-cache.js +2 -2
- package/dist/adapters/cloudflare.d.ts +30 -8
- package/dist/adapters/cloudflare.d.ts.map +1 -1
- package/dist/adapters/cloudflare.js +2 -2
- package/dist/adapters/compress-module.d.ts +8 -0
- package/dist/adapters/compress-module.d.ts.map +1 -1
- package/dist/adapters/fs-identity.d.ts +2 -3
- package/dist/adapters/fs-identity.d.ts.map +1 -1
- package/dist/adapters/nitro-presets.d.ts +0 -6
- package/dist/adapters/nitro-presets.d.ts.map +1 -1
- package/dist/adapters/nitro-preview.d.ts +43 -11
- package/dist/adapters/nitro-preview.d.ts.map +1 -1
- package/dist/adapters/nitro.d.ts +1 -13
- package/dist/adapters/nitro.d.ts.map +1 -1
- package/dist/adapters/nitro.js +291 -176
- package/dist/adapters/nitro.js.map +1 -1
- package/dist/adapters/shared.d.ts +7 -2
- package/dist/adapters/shared.d.ts.map +1 -1
- package/dist/adapters/types.d.ts +105 -21
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/adapters/types.js +0 -0
- package/dist/analyze/crawl-entry.js +3 -3
- package/dist/analyze/graph-cache.d.ts.map +1 -1
- package/dist/analyze/graph-command.js +4 -4
- package/dist/cache/index.js +2 -2
- package/dist/cache/json-lossy-check.d.ts.map +1 -1
- package/dist/cache/singleflight.d.ts.map +1 -1
- package/dist/cache/sizeof.d.ts.map +1 -1
- package/dist/cache/stores/memory.js +1 -1
- package/dist/cache/tag-aware-handler.d.ts.map +1 -1
- package/dist/cdn/workers-cache-purge.js +1 -1
- package/dist/cli-check.d.ts +7 -37
- package/dist/cli-check.d.ts.map +1 -1
- package/dist/cli-context.d.ts +54 -0
- package/dist/cli-context.d.ts.map +1 -0
- package/dist/cli.d.ts +9 -9
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +20 -24
- package/dist/cli.js.map +1 -1
- package/dist/client/browser-dev.d.ts +1 -1
- package/dist/client/browser-entry/action-dispatch.d.ts.map +1 -1
- package/dist/client/browser-entry/hydrate.d.ts +19 -29
- package/dist/client/browser-entry/hydrate.d.ts.map +1 -1
- package/dist/client/browser-entry/index.d.ts +7 -7
- package/dist/client/browser-entry/post-hydration.d.ts +6 -9
- package/dist/client/browser-entry/post-hydration.d.ts.map +1 -1
- package/dist/client/browser-entry/router-init.d.ts +6 -11
- package/dist/client/browser-entry/router-init.d.ts.map +1 -1
- package/dist/client/error-boundary.d.ts +4 -3
- package/dist/client/error-boundary.d.ts.map +1 -1
- package/dist/client/error-boundary.js +1 -1
- package/dist/client/error-reconstituter.d.ts +3 -9
- package/dist/client/error-reconstituter.d.ts.map +1 -1
- package/dist/client/history.d.ts +12 -11
- package/dist/client/history.d.ts.map +1 -1
- package/dist/client/index.d.ts +0 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +5 -6
- package/dist/client/index.js.map +1 -1
- package/dist/client/internal.d.ts +3 -3
- package/dist/client/internal.d.ts.map +1 -1
- package/dist/client/internal.js +68 -104
- package/dist/client/internal.js.map +1 -1
- package/dist/client/navigation-commit.d.ts +16 -7
- package/dist/client/navigation-commit.d.ts.map +1 -1
- package/dist/client/navigation-context.d.ts +3 -5
- package/dist/client/navigation-context.d.ts.map +1 -1
- package/dist/client/react-root.d.ts +3 -2
- package/dist/client/react-root.d.ts.map +1 -1
- package/dist/client/router-pipeline.d.ts +1 -6
- package/dist/client/router-pipeline.d.ts.map +1 -1
- package/dist/client/router-types.d.ts +45 -39
- package/dist/client/router-types.d.ts.map +1 -1
- package/dist/client/router-url.d.ts +24 -0
- package/dist/client/router-url.d.ts.map +1 -0
- package/dist/client/router.d.ts.map +1 -1
- package/dist/client/rsc-fetch.d.ts +8 -4
- package/dist/client/rsc-fetch.d.ts.map +1 -1
- package/dist/client/ssr-data.d.ts +18 -64
- package/dist/client/ssr-data.d.ts.map +1 -1
- package/dist/client/state.d.ts +2 -5
- package/dist/client/state.d.ts.map +1 -1
- package/dist/client/use-pathname.d.ts +1 -1
- package/dist/config-types.d.ts +2 -1
- package/dist/config-types.d.ts.map +1 -1
- package/dist/config-validation.d.ts.map +1 -1
- package/dist/cookies/index.js +1 -1
- package/dist/dev-tools/dev-page-shell.d.ts +17 -0
- package/dist/dev-tools/dev-page-shell.d.ts.map +1 -1
- package/dist/dev-tools/index.d.ts +1 -1
- package/dist/dev-tools/index.d.ts.map +1 -1
- package/dist/dev-tools/instrumentation.d.ts +17 -2
- package/dist/dev-tools/instrumentation.d.ts.map +1 -1
- package/dist/dev-tools/overlay.d.ts +6 -27
- package/dist/dev-tools/overlay.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +531 -373
- package/dist/index.js.map +1 -1
- package/dist/plugin-context.d.ts +26 -40
- package/dist/plugin-context.d.ts.map +1 -1
- package/dist/plugins/build-manifest.d.ts.map +1 -1
- package/dist/plugins/build-report.d.ts +15 -2
- package/dist/plugins/build-report.d.ts.map +1 -1
- package/dist/plugins/dev-server.d.ts.map +1 -1
- package/dist/plugins/entries.d.ts.map +1 -1
- package/dist/plugins/fonts.d.ts +19 -1
- package/dist/plugins/fonts.d.ts.map +1 -1
- package/dist/plugins/post-build.d.ts +110 -0
- package/dist/plugins/post-build.d.ts.map +1 -0
- package/dist/plugins/prebuilt-capture.d.ts +11 -4
- package/dist/plugins/prebuilt-capture.d.ts.map +1 -1
- package/dist/plugins/prebuilt.d.ts +17 -1
- package/dist/plugins/prebuilt.d.ts.map +1 -1
- package/dist/plugins/prerender-sugar.d.ts.map +1 -1
- package/dist/plugins/rsc-assets-manifest.d.ts +33 -0
- package/dist/plugins/rsc-assets-manifest.d.ts.map +1 -0
- package/dist/plugins/shims.d.ts.map +1 -1
- package/dist/plugins/static-build.d.ts +32 -9
- package/dist/plugins/static-build.d.ts.map +1 -1
- package/dist/routing/codegen-write.d.ts +0 -9
- package/dist/routing/codegen-write.d.ts.map +1 -1
- package/dist/routing/index.js +2 -2
- package/dist/routing/segment-codegen.d.ts.map +1 -1
- package/dist/server/access-gate.d.ts.map +1 -1
- package/dist/server/action-handler.d.ts +5 -4
- package/dist/server/action-handler.d.ts.map +1 -1
- package/dist/server/actions.d.ts +46 -7
- package/dist/server/actions.d.ts.map +1 -1
- package/dist/server/als-registry.d.ts +58 -5
- package/dist/server/als-registry.d.ts.map +1 -1
- package/dist/server/children-interception.d.ts.map +1 -1
- package/dist/server/cookie-context.d.ts +2 -23
- package/dist/server/cookie-context.d.ts.map +1 -1
- package/dist/server/csp-nonce.d.ts +0 -9
- package/dist/server/csp-nonce.d.ts.map +1 -1
- package/dist/server/csrf.d.ts +27 -4
- package/dist/server/csrf.d.ts.map +1 -1
- package/dist/server/debug.d.ts +0 -1
- package/dist/server/debug.d.ts.map +1 -1
- package/dist/server/default-logger.d.ts +2 -1
- package/dist/server/default-logger.d.ts.map +1 -1
- package/dist/server/deny-boundary.d.ts +12 -6
- package/dist/server/deny-boundary.d.ts.map +1 -1
- package/dist/server/deny-renderer.d.ts +2 -2
- package/dist/server/deny-renderer.d.ts.map +1 -1
- package/dist/server/error-boundary-wrapper.d.ts +7 -3
- package/dist/server/error-boundary-wrapper.d.ts.map +1 -1
- package/dist/server/fallback-error.d.ts +9 -2
- package/dist/server/fallback-error.d.ts.map +1 -1
- package/dist/server/head-response.d.ts +4 -4
- package/dist/server/html-injectors.d.ts.map +1 -1
- package/dist/server/index.d.ts +0 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +3 -4
- package/dist/server/index.js.map +1 -1
- package/dist/server/instrumentation.d.ts +10 -3
- package/dist/server/instrumentation.d.ts.map +1 -1
- package/dist/server/internal.d.ts +1 -4
- package/dist/server/internal.d.ts.map +1 -1
- package/dist/server/internal.js +961 -581
- package/dist/server/internal.js.map +1 -1
- package/dist/server/json-status-response.d.ts +34 -0
- package/dist/server/json-status-response.d.ts.map +1 -0
- package/dist/server/logger.d.ts +26 -0
- package/dist/server/logger.d.ts.map +1 -1
- package/dist/server/param-coercion.d.ts +11 -6
- package/dist/server/param-coercion.d.ts.map +1 -1
- package/dist/server/pipeline-helpers.d.ts +95 -7
- package/dist/server/pipeline-helpers.d.ts.map +1 -1
- package/dist/server/pipeline-interception.d.ts +11 -0
- package/dist/server/pipeline-interception.d.ts.map +1 -1
- package/dist/server/pipeline-outcome.d.ts +11 -1
- package/dist/server/pipeline-outcome.d.ts.map +1 -1
- package/dist/server/pipeline-phases.d.ts +2 -2
- package/dist/server/pipeline-phases.d.ts.map +1 -1
- package/dist/server/pipeline.d.ts +23 -35
- package/dist/server/pipeline.d.ts.map +1 -1
- package/dist/server/prebuilt/capture-render.d.ts +25 -0
- package/dist/server/prebuilt/capture-render.d.ts.map +1 -0
- package/dist/server/prebuilt/capture-routes.d.ts +37 -0
- package/dist/server/prebuilt/capture-routes.d.ts.map +1 -0
- package/dist/server/prebuilt/capture-state.d.ts +79 -35
- package/dist/server/prebuilt/capture-state.d.ts.map +1 -1
- package/dist/server/prebuilt/lifetime.d.ts +38 -0
- package/dist/server/prebuilt/lifetime.d.ts.map +1 -0
- package/dist/server/prebuilt/slots.d.ts +7 -0
- package/dist/server/prebuilt/slots.d.ts.map +1 -1
- package/dist/server/prebuilt/synthetic-store.d.ts.map +1 -1
- package/dist/server/prebuilt-builder.d.ts.map +1 -1
- package/dist/server/prebuilt-runtime.d.ts.map +1 -1
- package/dist/server/primitives.d.ts +6 -81
- package/dist/server/primitives.d.ts.map +1 -1
- package/dist/server/react-cache-bridge.d.ts +59 -0
- package/dist/server/react-cache-bridge.d.ts.map +1 -0
- package/dist/server/react-cache-scope.d.ts +49 -0
- package/dist/server/react-cache-scope.d.ts.map +1 -0
- package/dist/server/render-timeout.d.ts +15 -0
- package/dist/server/render-timeout.d.ts.map +1 -1
- package/dist/server/render-utils.d.ts +9 -0
- package/dist/server/render-utils.d.ts.map +1 -1
- package/dist/server/request-context.d.ts +26 -5
- package/dist/server/request-context.d.ts.map +1 -1
- package/dist/server/route-element-builder.d.ts.map +1 -1
- package/dist/server/route-handler.d.ts.map +1 -1
- package/dist/server/route-matcher.d.ts +7 -0
- package/dist/server/route-matcher.d.ts.map +1 -1
- package/dist/server/rsc-entry/action-middleware-runner.d.ts +22 -22
- package/dist/server/rsc-entry/action-middleware-runner.d.ts.map +1 -1
- package/dist/server/rsc-entry/api-handler.d.ts +7 -0
- package/dist/server/rsc-entry/api-handler.d.ts.map +1 -1
- package/dist/server/rsc-entry/deny-fallback.d.ts +32 -6
- package/dist/server/rsc-entry/deny-fallback.d.ts.map +1 -1
- package/dist/server/rsc-entry/error-renderer.d.ts +11 -18
- package/dist/server/rsc-entry/error-renderer.d.ts.map +1 -1
- package/dist/server/rsc-entry/helpers.d.ts +0 -1
- package/dist/server/rsc-entry/helpers.d.ts.map +1 -1
- package/dist/server/rsc-entry/index.d.ts +5 -15
- package/dist/server/rsc-entry/index.d.ts.map +1 -1
- package/dist/server/rsc-entry/render-route.d.ts +5 -6
- package/dist/server/rsc-entry/render-route.d.ts.map +1 -1
- package/dist/server/rsc-entry/render-signals.d.ts +65 -0
- package/dist/server/rsc-entry/render-signals.d.ts.map +1 -0
- package/dist/server/rsc-entry/revalidate-renderer.d.ts +6 -16
- package/dist/server/rsc-entry/revalidate-renderer.d.ts.map +1 -1
- package/dist/server/rsc-entry/rsc-payload.d.ts +7 -3
- package/dist/server/rsc-entry/rsc-payload.d.ts.map +1 -1
- package/dist/server/rsc-entry/rsc-stream.d.ts +8 -53
- package/dist/server/rsc-entry/rsc-stream.d.ts.map +1 -1
- package/dist/server/rsc-entry/ssr-bridge.d.ts +2 -2
- package/dist/server/rsc-entry/ssr-bridge.d.ts.map +1 -1
- package/dist/server/rsc-entry/ssr-renderer.d.ts +9 -4
- package/dist/server/rsc-entry/ssr-renderer.d.ts.map +1 -1
- package/dist/server/rsc-entry/wrap-action-dispatch.d.ts +1 -1
- package/dist/server/rsc-entry/wrap-action-dispatch.d.ts.map +1 -1
- package/dist/server/signal-identity.d.ts +43 -0
- package/dist/server/signal-identity.d.ts.map +1 -0
- package/dist/server/slot-resolver.d.ts +4 -3
- package/dist/server/slot-resolver.d.ts.map +1 -1
- package/dist/server/slot-subtree-contain.d.ts.map +1 -1
- package/dist/server/ssr-bridge-types.d.ts +91 -53
- package/dist/server/ssr-bridge-types.d.ts.map +1 -1
- package/dist/server/ssr-entry.d.ts +8 -5
- package/dist/server/ssr-entry.d.ts.map +1 -1
- package/dist/server/ssr-render.d.ts +26 -40
- package/dist/server/ssr-render.d.ts.map +1 -1
- package/dist/server/ssr-wrappers.d.ts +1 -1
- package/dist/server/static-generator.d.ts.map +1 -1
- package/dist/server/stream-utils.d.ts +12 -0
- package/dist/server/stream-utils.d.ts.map +1 -1
- package/dist/server/tracing.d.ts +12 -16
- package/dist/server/tracing.d.ts.map +1 -1
- package/dist/server/types.d.ts +1 -1
- package/dist/server/version-skew.d.ts +3 -3
- package/dist/shared/csrf-reject.d.ts +16 -0
- package/dist/shared/csrf-reject.d.ts.map +1 -0
- package/dist/shared/error-digest.d.ts +28 -0
- package/dist/shared/error-digest.d.ts.map +1 -0
- package/dist/shared/payload-root.d.ts +11 -10
- package/dist/shared/payload-root.d.ts.map +1 -1
- package/dist/shared/rsc-payload-path.d.ts +6 -0
- package/dist/shared/rsc-payload-path.d.ts.map +1 -1
- package/dist/utils/write-file-atomic.d.ts +17 -0
- package/dist/utils/write-file-atomic.d.ts.map +1 -0
- package/docs/api/30-api-server.mdx +17 -14
- package/docs/api/32-api-cache.mdx +51 -23
- package/docs/api/34-api-config.mdx +34 -6
- package/docs/api/36-cli.mdx +11 -1
- package/docs/learn/03-fetching-data.mdx +17 -1
- package/docs/learn/04-access-control.mdx +1 -1
- package/docs/learn/10-caching.mdx +29 -11
- package/docs/learn/11-middleware.mdx +8 -2
- package/docs/learn/12-error-handling.mdx +6 -1
- package/package.json +5 -1
- package/src/adapters/build-output-helper.ts +55 -53
- package/src/adapters/canonicalize-module.ts +29 -0
- package/src/adapters/cloudflare.ts +105 -63
- package/src/adapters/compress-module.ts +16 -5
- package/src/adapters/fs-identity.ts +2 -3
- package/src/adapters/nitro-presets.ts +0 -15
- package/src/adapters/nitro-preview.ts +272 -136
- package/src/adapters/nitro.ts +119 -82
- package/src/adapters/shared.ts +23 -14
- package/src/adapters/types.ts +110 -21
- package/src/analyze/graph-cache.ts +3 -4
- package/src/cache/json-lossy-check.ts +3 -9
- package/src/cache/singleflight.ts +5 -2
- package/src/cache/sizeof.ts +3 -1
- package/src/cache/tag-aware-handler.ts +43 -26
- package/src/cli-check.ts +8 -98
- package/src/cli-context.ts +119 -0
- package/src/cli.ts +19 -28
- package/src/client/browser-dev.ts +1 -1
- package/src/client/browser-entry/action-dispatch.ts +26 -4
- package/src/client/browser-entry/hydrate.ts +53 -58
- package/src/client/browser-entry/index.ts +16 -27
- package/src/client/browser-entry/post-hydration.ts +6 -40
- package/src/client/browser-entry/router-init.ts +66 -84
- package/src/client/error-boundary.tsx +9 -41
- package/src/client/error-reconstituter.tsx +10 -5
- package/src/client/history.ts +18 -21
- package/src/client/index.ts +0 -1
- package/src/client/internal.ts +2 -7
- package/src/client/navigation-commit.ts +35 -18
- package/src/client/navigation-context.ts +3 -39
- package/src/client/react-root.ts +3 -2
- package/src/client/router-pipeline.ts +65 -128
- package/src/client/router-types.ts +46 -44
- package/src/client/router-url.ts +32 -0
- package/src/client/router.ts +43 -22
- package/src/client/rsc-fetch.ts +117 -155
- package/src/client/ssr-data.ts +19 -80
- package/src/client/state.ts +2 -9
- package/src/client/use-pathname.ts +1 -1
- package/src/config-types.ts +2 -1
- package/src/config-validation.ts +2 -1
- package/src/dev-tools/dev-page-shell.ts +18 -0
- package/src/dev-tools/index.ts +0 -2
- package/src/dev-tools/instrumentation.ts +50 -2
- package/src/dev-tools/overlay.ts +8 -238
- package/src/index.ts +24 -14
- package/src/plugin-context.ts +39 -40
- package/src/plugins/build-manifest.ts +4 -11
- package/src/plugins/build-report.ts +70 -70
- package/src/plugins/dev-server.ts +24 -44
- package/src/plugins/entries.ts +2 -1
- package/src/plugins/fonts.ts +35 -7
- package/src/plugins/post-build.ts +327 -0
- package/src/plugins/prebuilt-capture.ts +28 -32
- package/src/plugins/prebuilt.ts +54 -39
- package/src/plugins/prerender-sugar.ts +0 -4
- package/src/plugins/{adapter-build.ts → rsc-assets-manifest.ts} +20 -109
- package/src/plugins/shims.ts +1 -0
- package/src/plugins/static-build.ts +42 -74
- package/src/routing/codegen-write.ts +25 -3
- package/src/routing/segment-codegen.ts +3 -2
- package/src/rsc-runtime/vendor-types.d.ts +8 -0
- package/src/server/access-gate.tsx +2 -1
- package/src/server/action-client.ts +1 -1
- package/src/server/action-handler.ts +253 -110
- package/src/server/actions.ts +73 -25
- package/src/server/als-registry.ts +73 -5
- package/src/server/chain-url-parts.ts +1 -1
- package/src/server/children-interception.ts +2 -1
- package/src/server/cookie-context.ts +18 -48
- package/src/server/csp-nonce.ts +0 -12
- package/src/server/csrf.ts +140 -8
- package/src/server/debug.ts +0 -1
- package/src/server/default-logger.ts +2 -1
- package/src/server/deny-boundary.ts +25 -13
- package/src/server/deny-renderer.ts +30 -97
- package/src/server/error-boundary-wrapper.ts +7 -3
- package/src/server/fallback-error.ts +26 -11
- package/src/server/flight-scripts.ts +1 -1
- package/src/server/head-response.ts +4 -4
- package/src/server/html-injector-core.ts +2 -2
- package/src/server/html-injectors.ts +2 -4
- package/src/server/index.ts +0 -4
- package/src/server/instrumentation.ts +10 -3
- package/src/server/internal.ts +1 -6
- package/src/server/json-status-response.ts +105 -0
- package/src/server/logger.ts +39 -3
- package/src/server/param-coercion.ts +15 -12
- package/src/server/pipeline-helpers.ts +257 -12
- package/src/server/pipeline-interception.ts +133 -0
- package/src/server/pipeline-outcome.ts +103 -31
- package/src/server/pipeline-phases.ts +127 -237
- package/src/server/pipeline.ts +204 -207
- package/src/server/prebuilt/capture-render.ts +118 -0
- package/src/server/prebuilt/capture-routes.ts +104 -0
- package/src/server/prebuilt/capture-state.ts +155 -48
- package/src/server/prebuilt/lifetime.ts +151 -0
- package/src/server/prebuilt/slots.ts +14 -2
- package/src/server/prebuilt/synthetic-store.ts +3 -0
- package/src/server/prebuilt-builder.ts +30 -320
- package/src/server/prebuilt-runtime.ts +125 -129
- package/src/server/primitives.ts +8 -168
- package/src/server/react-cache-bridge.ts +124 -0
- package/src/server/react-cache-scope.ts +104 -0
- package/src/server/render-timeout.ts +20 -0
- package/src/server/render-utils.ts +11 -1
- package/src/server/request-context.ts +36 -9
- package/src/server/route-element-builder.ts +11 -6
- package/src/server/route-handler.ts +36 -23
- package/src/server/route-matcher.ts +15 -1
- package/src/server/rsc-entry/action-middleware-runner.ts +79 -123
- package/src/server/rsc-entry/api-handler.ts +27 -103
- package/src/server/rsc-entry/deny-fallback.ts +93 -26
- package/src/server/rsc-entry/error-renderer.ts +39 -91
- package/src/server/rsc-entry/helpers.ts +2 -4
- package/src/server/rsc-entry/index.ts +64 -58
- package/src/server/rsc-entry/render-route.ts +15 -80
- package/src/server/rsc-entry/render-signals.ts +108 -0
- package/src/server/rsc-entry/revalidate-renderer.ts +56 -57
- package/src/server/rsc-entry/rsc-payload.ts +28 -61
- package/src/server/rsc-entry/rsc-stream.ts +113 -213
- package/src/server/rsc-entry/ssr-bridge.ts +2 -2
- package/src/server/rsc-entry/ssr-renderer.ts +182 -263
- package/src/server/rsc-entry/wrap-action-dispatch.ts +12 -14
- package/src/server/signal-identity.ts +112 -0
- package/src/server/slot-resolver.ts +18 -18
- package/src/server/slot-subtree-contain.ts +2 -1
- package/src/server/ssr-bridge-types.ts +92 -56
- package/src/server/ssr-entry.ts +87 -111
- package/src/server/ssr-render.ts +55 -64
- package/src/server/ssr-wrappers.tsx +2 -2
- package/src/server/static-generator.ts +7 -42
- package/src/server/static-not-found.ts +3 -3
- package/src/server/stream-utils.ts +51 -0
- package/src/server/tracing.ts +58 -75
- package/src/server/types.ts +1 -1
- package/src/server/version-skew.ts +5 -5
- package/src/shared/csrf-reject.ts +15 -0
- package/src/shared/error-digest.ts +46 -0
- package/src/shared/payload-root.ts +11 -10
- package/src/shared/rsc-payload-path.ts +8 -1
- package/src/utils/write-file-atomic.ts +32 -0
- package/dist/_chunks/actions-jNrXdzgs.js +0 -346
- package/dist/_chunks/actions-jNrXdzgs.js.map +0 -1
- package/dist/_chunks/als-registry-C6kcfprT.js.map +0 -1
- package/dist/_chunks/build-manifest-DTmSGLRz.js.map +0 -1
- package/dist/_chunks/build-output-helper-9dqCv1pZ.js.map +0 -1
- package/dist/_chunks/cache-api-CUD9Ezaq.js.map +0 -1
- package/dist/_chunks/cli-check-G8o30ldg.js.map +0 -1
- package/dist/_chunks/convention-lint-5KzoMg_A.js.map +0 -1
- package/dist/_chunks/dev-server-BzBxgYAV.js.map +0 -1
- package/dist/_chunks/error-boundary-BrHmG-2X.js.map +0 -1
- package/dist/_chunks/fs-identity-D7vb6GdI.js.map +0 -1
- package/dist/_chunks/graph-cache-CP4GEmf9.js.map +0 -1
- package/dist/_chunks/json-lossy-check-ClNvBM_3.js.map +0 -1
- package/dist/_chunks/logger-k2DQ4EUf.js.map +0 -1
- package/dist/_chunks/navigation-context-D0TU0Jog.js.map +0 -1
- package/dist/_chunks/plugin-context-8idfR3UZ.js.map +0 -1
- package/dist/_chunks/primitives-DLAnvsrk.js.map +0 -1
- package/dist/_chunks/segment-context-D9_89u34.js +0 -34
- package/dist/_chunks/segment-context-D9_89u34.js.map +0 -1
- package/dist/_chunks/sizeof-lXffQ1Vr.js.map +0 -1
- package/dist/_chunks/ssr-data-D6T6Y3ef.js +0 -60
- package/dist/_chunks/ssr-data-D6T6Y3ef.js.map +0 -1
- package/dist/_chunks/state-FippDgxN.js.map +0 -1
- package/dist/_chunks/status-page-marker-CNbpUOPB.js.map +0 -1
- package/dist/client/types.d.ts +0 -14
- package/dist/client/types.d.ts.map +0 -1
- package/dist/plugins/adapter-build.d.ts +0 -38
- package/dist/plugins/adapter-build.d.ts.map +0 -1
- package/dist/server/asset-headers.d.ts +0 -32
- package/dist/server/asset-headers.d.ts.map +0 -1
- package/dist/server/dev-source-map.d.ts +0 -22
- package/dist/server/dev-source-map.d.ts.map +0 -1
- package/src/client/types.ts +0 -21
- package/src/server/asset-headers.ts +0 -59
- package/src/server/dev-source-map.ts +0 -31
package/dist/client/internal.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { t as SingleflightTimeoutError } from "../_chunks/singleflight-
|
|
2
|
-
import { a as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { n as
|
|
7
|
-
import { n as
|
|
8
|
-
import { a as createSpaExits, c as NonRscResponse, d as readPublishedParams, i as createScrollEffects, l as fetchRscPayload, n as TimberErrorBoundary, o as recordSkew, r as createNavigationRecovery, s as isClientStale, u as readPayloadTree } from "../_chunks/error-boundary-BrHmG-2X.js";
|
|
1
|
+
import { t as SingleflightTimeoutError } from "../_chunks/singleflight-BeVMMKi0.js";
|
|
2
|
+
import { a as routerUrlKey, c as prefetchScopeOf, i as parseRouterUrl, n as createNavigationCommitter, o as PrefetchCache, r as isPartialNavigation, s as SegmentCache } from "../_chunks/status-page-marker-gaihi0KZ.js";
|
|
3
|
+
import { c as cachedSearchParams, s as cachedSearch, t as _setCachedSearch } from "../_chunks/state-BhNGPsdi.js";
|
|
4
|
+
import { a as setGlobalRouter, i as getRouterOrNull, r as getRouter } from "../_chunks/navigation-root-BQfo1-kG.js";
|
|
5
|
+
import { n as registerSsrDataProvider, t as getSsrData } from "../_chunks/ssr-data-nA3I70_n.js";
|
|
6
|
+
import { i as useNavigationContext, n as useSegmentContext, r as NavigationProvider, t as SegmentProvider } from "../_chunks/segment-context-xtPUGfdq.js";
|
|
7
|
+
import { a as createSpaExits, c as NonRscResponse, d as readPublishedParams, i as createScrollEffects, l as fetchRscPayload, n as TimberErrorBoundary, o as recordSkew, r as createNavigationRecovery, s as isClientStale, u as readPayloadTree } from "../_chunks/error-boundary-tA7kVfs4.js";
|
|
9
8
|
import { t as bindUseQueryStates } from "../_chunks/use-query-states-I3JMng6J.js";
|
|
10
9
|
//#region src/client/history.ts
|
|
11
10
|
/**
|
|
@@ -15,7 +14,10 @@ import { t as bindUseQueryStates } from "../_chunks/use-query-states-I3JMng6J.js
|
|
|
15
14
|
* On forward navigation, the new page's payload is pushed onto the stack.
|
|
16
15
|
* On popstate, the cached payload is replayed instantly.
|
|
17
16
|
*
|
|
18
|
-
* Entries are keyed by pathname + search
|
|
17
|
+
* Entries are keyed by pathname + search in the browser's own spelling
|
|
18
|
+
* (`routerUrlKey`), whatever spelling a caller passes: an entry stored by
|
|
19
|
+
* `navigate('/café')` is found by a traversal that reads `/caf%C3%A9` off
|
|
20
|
+
* the address bar, and `/a?` is `/a` (TIM-1541). Used with the History API
|
|
19
21
|
* fallback and the Navigation API.
|
|
20
22
|
*
|
|
21
23
|
* Scroll positions are stored in history.state or Navigation API entry
|
|
@@ -32,6 +34,7 @@ var HistoryStack = class {
|
|
|
32
34
|
this.maxEntries = maxEntries;
|
|
33
35
|
}
|
|
34
36
|
push(url, entry) {
|
|
37
|
+
url = routerUrlKey(url);
|
|
35
38
|
this.entries.delete(url);
|
|
36
39
|
this.entries.set(url, entry);
|
|
37
40
|
if (this.entries.size > this.maxEntries) {
|
|
@@ -40,6 +43,7 @@ var HistoryStack = class {
|
|
|
40
43
|
}
|
|
41
44
|
}
|
|
42
45
|
get(url) {
|
|
46
|
+
url = routerUrlKey(url);
|
|
43
47
|
const entry = this.entries.get(url);
|
|
44
48
|
if (entry) {
|
|
45
49
|
this.entries.delete(url);
|
|
@@ -49,10 +53,10 @@ var HistoryStack = class {
|
|
|
49
53
|
}
|
|
50
54
|
/** Presence checks (such as hover prefetch probes) do not promote entries. */
|
|
51
55
|
has(url) {
|
|
52
|
-
return this.entries.has(url);
|
|
56
|
+
return this.entries.has(routerUrlKey(url));
|
|
53
57
|
}
|
|
54
58
|
delete(url) {
|
|
55
|
-
return this.entries.delete(url);
|
|
59
|
+
return this.entries.delete(routerUrlKey(url));
|
|
56
60
|
}
|
|
57
61
|
/**
|
|
58
62
|
* Delete all entries whose pathname matches `pathname` (TIM-1465).
|
|
@@ -62,31 +66,24 @@ var HistoryStack = class {
|
|
|
62
66
|
* query.
|
|
63
67
|
*/
|
|
64
68
|
deleteByPathname(pathname) {
|
|
69
|
+
pathname = routerUrlKey(pathname);
|
|
65
70
|
for (const url of this.entries.keys()) {
|
|
66
71
|
const qIndex = url.indexOf("?");
|
|
67
72
|
if ((qIndex === -1 ? url : url.slice(0, qIndex)) === pathname) this.entries.delete(url);
|
|
68
73
|
}
|
|
69
74
|
}
|
|
70
75
|
/**
|
|
71
|
-
* Evict
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
76
|
+
* Evict every entry (TIM-1476). Called after a server action that
|
|
77
|
+
* revalidated data — history entries are equally stale since they replay
|
|
78
|
+
* on back/forward without a server check. Clearing forces a fresh fetch on
|
|
79
|
+
* the next traversal.
|
|
75
80
|
*
|
|
76
|
-
* The current
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* only, redirect) do not call `applyActionResult`, so their entries
|
|
80
|
-
* are fully removed (codex on #1131 round 2).
|
|
81
|
+
* The current page's entry goes too. Nothing reads it for anything but a
|
|
82
|
+
* replay: the segment metadata a revalidation needs is the committer's
|
|
83
|
+
* record of the current page, not this stack's (TIM-1541).
|
|
81
84
|
*/
|
|
82
|
-
|
|
83
|
-
const currentEntry = this.entries.get(currentUrl);
|
|
85
|
+
clear() {
|
|
84
86
|
this.entries.clear();
|
|
85
|
-
if (currentEntry) this.entries.set(currentUrl, {
|
|
86
|
-
payload: null,
|
|
87
|
-
params: currentEntry.params,
|
|
88
|
-
segmentInfo: currentEntry.segmentInfo
|
|
89
|
-
});
|
|
90
87
|
}
|
|
91
88
|
};
|
|
92
89
|
//#endregion
|
|
@@ -337,7 +334,7 @@ function raceAbort(promise, signal) {
|
|
|
337
334
|
* both `location.href` and a bare pathname.
|
|
338
335
|
*/
|
|
339
336
|
function departingPathname(raw) {
|
|
340
|
-
return
|
|
337
|
+
return parseRouterUrl(raw).pathname;
|
|
341
338
|
}
|
|
342
339
|
/**
|
|
343
340
|
* The prefetch cache key for a destination.
|
|
@@ -365,13 +362,13 @@ function prefetchKeyFor(url, departingUrl, stateTree) {
|
|
|
365
362
|
* Build a segment updates map for partial navigation. Identifies the
|
|
366
363
|
* first non-skipped segment and maps it to the payload content.
|
|
367
364
|
*/
|
|
368
|
-
function buildSegmentUpdates(result) {
|
|
365
|
+
function buildSegmentUpdates(result, payload) {
|
|
369
366
|
const skipped = new Set(result.skippedSegments);
|
|
370
367
|
const segmentInfo = result.segmentInfo;
|
|
371
368
|
const updates = /* @__PURE__ */ new Map();
|
|
372
369
|
if (segmentInfo) {
|
|
373
370
|
for (const info of segmentInfo) if (!skipped.has(info.segmentId ?? info.path)) {
|
|
374
|
-
updates.set(info.segmentId ?? info.path,
|
|
371
|
+
updates.set(info.segmentId ?? info.path, payload);
|
|
375
372
|
break;
|
|
376
373
|
}
|
|
377
374
|
}
|
|
@@ -393,33 +390,13 @@ function observeSkew(decodePromise) {
|
|
|
393
390
|
}
|
|
394
391
|
function createNavigationPipeline({ deps, prefetchCache, currentStateTree, prepareNavigation, isSegmentReuseSuppressed, restoreSegmentReuse, markHandedOff, forgetOlderHandoffs }) {
|
|
395
392
|
/**
|
|
396
|
-
*
|
|
397
|
-
* tree is current. The renderer owns that moment (see `RootRenderer`);
|
|
398
|
-
* with no renderer there is no tree to wait for, so it publishes now.
|
|
399
|
-
*/
|
|
400
|
-
function renderPayload(payload, navState, params, commit) {
|
|
401
|
-
if (deps.renderRoot) deps.renderRoot(payload, navState, params, commit);
|
|
402
|
-
else commit();
|
|
403
|
-
}
|
|
404
|
-
/**
|
|
405
|
-
* Resolve thenable payloads in the test/fallback path (no navigateTransition).
|
|
406
|
-
* In production, React handles thenables from createFromFetch directly via
|
|
407
|
-
* Suspense. In tests, renderRoot is a plain mock that expects resolved values.
|
|
408
|
-
*/
|
|
409
|
-
async function resolveForFallback(payload) {
|
|
410
|
-
if (!deps.navigateTransition && payload != null && typeof payload === "object" && "then" in payload) return await payload;
|
|
411
|
-
return payload;
|
|
412
|
-
}
|
|
413
|
-
/**
|
|
414
|
-
* Render a payload via navigateTransition (production) or renderRoot (tests).
|
|
415
|
-
* The perform callback should fetch data, prepare the commit, and return the
|
|
393
|
+
* Hand a payload to React via navigateTransition. The perform callback should fetch data, prepare the commit, and return the
|
|
416
394
|
* FetchResult plus the NavigationState and the commit thunk.
|
|
417
395
|
*
|
|
418
396
|
* The thunk is handed *through* to NavigationRoot rather than called here:
|
|
419
|
-
* state management (
|
|
397
|
+
* state management (segment cache, history stack, address bar) has to happen on
|
|
420
398
|
* the far side of the supersession check, which only NavigationRoot can
|
|
421
|
-
* make (TIM-1301).
|
|
422
|
-
* superseded by, so it commits directly.
|
|
399
|
+
* make (TIM-1301).
|
|
423
400
|
*/
|
|
424
401
|
async function renderViaTransition(url, owner, perform, onCommit) {
|
|
425
402
|
const handOff = () => markHandedOff(owner);
|
|
@@ -427,47 +404,32 @@ function createNavigationPipeline({ deps, prefetchCache, currentStateTree, prepa
|
|
|
427
404
|
forgetOlderHandoffs(owner);
|
|
428
405
|
commit();
|
|
429
406
|
};
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
handOff();
|
|
438
|
-
return {
|
|
439
|
-
element,
|
|
440
|
-
decodePromise: observeSkew(result.decodePromise),
|
|
441
|
-
commit: commitAndForget(result.commit)
|
|
442
|
-
};
|
|
443
|
-
}
|
|
444
|
-
const element = wrapPayload(result.payload, result.navState, params);
|
|
407
|
+
await deps.navigateTransition(url, owner, async (wrapPayload) => {
|
|
408
|
+
const result = await perform();
|
|
409
|
+
const params = await result.params;
|
|
410
|
+
const payload = await result.payload;
|
|
411
|
+
if (isPartialNavigation(result.skippedSegments)) {
|
|
412
|
+
const segmentUpdates = buildSegmentUpdates(result, payload);
|
|
413
|
+
const element = wrapPayload(deps._getCurrentPayload?.() ?? payload, result.navState, params, segmentUpdates);
|
|
445
414
|
handOff();
|
|
446
415
|
return {
|
|
447
416
|
element,
|
|
448
417
|
decodePromise: observeSkew(result.decodePromise),
|
|
449
418
|
commit: commitAndForget(result.commit)
|
|
450
419
|
};
|
|
451
|
-
}
|
|
452
|
-
|
|
453
|
-
}
|
|
454
|
-
let fallbackOutcome = "committed";
|
|
455
|
-
try {
|
|
456
|
-
const result = await perform();
|
|
420
|
+
}
|
|
421
|
+
const element = wrapPayload(payload, result.navState, params);
|
|
457
422
|
handOff();
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
} finally {
|
|
465
|
-
onCommit?.(fallbackOutcome);
|
|
466
|
-
}
|
|
423
|
+
return {
|
|
424
|
+
element,
|
|
425
|
+
decodePromise: observeSkew(result.decodePromise),
|
|
426
|
+
commit: commitAndForget(result.commit)
|
|
427
|
+
};
|
|
428
|
+
}, onCommit);
|
|
467
429
|
}
|
|
468
430
|
/**
|
|
469
|
-
*
|
|
470
|
-
*
|
|
431
|
+
* Fetch (or take from the prefetch cache) a navigation's payload and
|
|
432
|
+
* prepare — without publishing — the commit that makes it current.
|
|
471
433
|
*/
|
|
472
434
|
async function performNavigationFetch(url, options) {
|
|
473
435
|
const stateTree = currentStateTree();
|
|
@@ -529,10 +491,9 @@ function createNavigationPipeline({ deps, prefetchCache, currentStateTree, prepa
|
|
|
529
491
|
}, "", commitUrl);
|
|
530
492
|
deps.setRouterNavigating?.(false);
|
|
531
493
|
};
|
|
532
|
-
const payload = await resolveForFallback(result.payload);
|
|
533
494
|
const params = await result.params;
|
|
534
495
|
const { navState, commit } = prepareNavigation(url, {
|
|
535
|
-
payload,
|
|
496
|
+
payload: result.payload,
|
|
536
497
|
params,
|
|
537
498
|
segmentInfo: result.segmentInfo,
|
|
538
499
|
skippedSegments: result.skippedSegments
|
|
@@ -540,7 +501,6 @@ function createNavigationPipeline({ deps, prefetchCache, currentStateTree, prepa
|
|
|
540
501
|
if (reuseSuppressedAtFetch) restoreSegmentReuse();
|
|
541
502
|
return {
|
|
542
503
|
...result,
|
|
543
|
-
payload,
|
|
544
504
|
params,
|
|
545
505
|
navState,
|
|
546
506
|
commit: () => {
|
|
@@ -552,9 +512,7 @@ function createNavigationPipeline({ deps, prefetchCache, currentStateTree, prepa
|
|
|
552
512
|
}
|
|
553
513
|
return {
|
|
554
514
|
performNavigationFetch,
|
|
555
|
-
renderViaTransition
|
|
556
|
-
renderPayload,
|
|
557
|
-
resolveForFallback
|
|
515
|
+
renderViaTransition
|
|
558
516
|
};
|
|
559
517
|
}
|
|
560
518
|
//#endregion
|
|
@@ -567,14 +525,14 @@ function createRouter(deps) {
|
|
|
567
525
|
const segmentCache = new SegmentCache();
|
|
568
526
|
const prefetchCache = new PrefetchCache();
|
|
569
527
|
const historyStack = new HistoryStack();
|
|
570
|
-
const { prepareNavigation, currentStateTree,
|
|
528
|
+
const { prepareNavigation, currentStateTree, committedSegmentInfo, isSegmentReuseSuppressed, restoreSegmentReuse } = createNavigationCommitter({
|
|
571
529
|
segmentCache,
|
|
572
530
|
historyStack,
|
|
573
531
|
clientSegmentCache: () => deps.clientSegmentCache
|
|
574
532
|
});
|
|
575
533
|
const lifecycle = createNavigationLifecycle(deps);
|
|
576
534
|
const { currentOwner, createNavOwner, runNavigation, markHandedOff, forgetOlderHandoffs, isPending, getPendingUrl, onPendingChange } = lifecycle;
|
|
577
|
-
const { performNavigationFetch, renderViaTransition
|
|
535
|
+
const { performNavigationFetch, renderViaTransition } = createNavigationPipeline({
|
|
578
536
|
deps,
|
|
579
537
|
prefetchCache,
|
|
580
538
|
currentStateTree,
|
|
@@ -648,17 +606,15 @@ function createRouter(deps) {
|
|
|
648
606
|
try {
|
|
649
607
|
await renderViaTransition(url, owner, async () => {
|
|
650
608
|
const result = await fetchRscPayload(url, deps, opts.stateTree, void 0, owner.fetchAbort.signal);
|
|
651
|
-
const payload = await resolveForFallback(result.payload);
|
|
652
609
|
const params = await result.params;
|
|
653
610
|
const { navState, commit } = prepareNavigation(url, {
|
|
654
|
-
payload,
|
|
611
|
+
payload: result.payload,
|
|
655
612
|
params,
|
|
656
613
|
segmentInfo: result.segmentInfo,
|
|
657
614
|
skippedSegments: result.skippedSegments
|
|
658
615
|
});
|
|
659
616
|
return {
|
|
660
617
|
...result,
|
|
661
|
-
payload,
|
|
662
618
|
params,
|
|
663
619
|
navState,
|
|
664
620
|
commit
|
|
@@ -735,6 +691,7 @@ function createRouter(deps) {
|
|
|
735
691
|
onPendingChange,
|
|
736
692
|
prefetch,
|
|
737
693
|
epoch: () => lifecycle.epoch(),
|
|
694
|
+
isEpochCurrent: (epoch) => lifecycle.isEpochCurrent(epoch),
|
|
738
695
|
async applyActionResult(epoch, tree) {
|
|
739
696
|
if (!lifecycle.isEpochCurrent(epoch)) return false;
|
|
740
697
|
if (tree === void 0) {
|
|
@@ -746,7 +703,7 @@ function createRouter(deps) {
|
|
|
746
703
|
const currentUrl = deps.getCurrentUrl();
|
|
747
704
|
const payloadTree = readPayloadTree(tree);
|
|
748
705
|
const params = readPublishedParams(tree);
|
|
749
|
-
const
|
|
706
|
+
const segmentInfo = committedSegmentInfo();
|
|
750
707
|
let outcomeResolve;
|
|
751
708
|
const outcomePromise = new Promise((r) => outcomeResolve = r);
|
|
752
709
|
const owner = createRenderOwner("revalidation");
|
|
@@ -755,7 +712,7 @@ function createRouter(deps) {
|
|
|
755
712
|
const { navState, commit } = prepareNavigation(currentUrl, {
|
|
756
713
|
payload: payloadTree,
|
|
757
714
|
params,
|
|
758
|
-
segmentInfo
|
|
715
|
+
segmentInfo
|
|
759
716
|
});
|
|
760
717
|
return {
|
|
761
718
|
payload: payloadTree,
|
|
@@ -763,7 +720,7 @@ function createRouter(deps) {
|
|
|
763
720
|
navState,
|
|
764
721
|
commit,
|
|
765
722
|
decodePromise: null,
|
|
766
|
-
segmentInfo
|
|
723
|
+
segmentInfo,
|
|
767
724
|
skippedSegments: null
|
|
768
725
|
};
|
|
769
726
|
}, outcomeResolve).catch(() => {}), outcomePromise]);
|
|
@@ -779,12 +736,19 @@ function createRouter(deps) {
|
|
|
779
736
|
},
|
|
780
737
|
evictStaleCaches() {
|
|
781
738
|
prefetchCache.clearReady();
|
|
782
|
-
historyStack.
|
|
739
|
+
historyStack.clear();
|
|
740
|
+
},
|
|
741
|
+
hydrate(page) {
|
|
742
|
+
const { navState, commit } = prepareNavigation(deps.getCurrentUrl(), {
|
|
743
|
+
payload: page.payload,
|
|
744
|
+
params: page.params,
|
|
745
|
+
segmentInfo: page.segmentInfo
|
|
746
|
+
});
|
|
747
|
+
commit();
|
|
748
|
+
return navState;
|
|
783
749
|
},
|
|
784
|
-
initSegmentCache: (segments) => updateSegmentCache(segments),
|
|
785
750
|
segmentCache,
|
|
786
|
-
prefetchCache
|
|
787
|
-
historyStack
|
|
751
|
+
prefetchCache
|
|
788
752
|
};
|
|
789
753
|
}
|
|
790
754
|
//#endregion
|
|
@@ -836,6 +800,6 @@ function useSearchParams() {
|
|
|
836
800
|
return getSearchParams(nav.search);
|
|
837
801
|
}
|
|
838
802
|
//#endregion
|
|
839
|
-
export { HistoryStack, NavigationProvider, PrefetchCache, SegmentCache, SegmentProvider, TimberErrorBoundary, bindUseQueryStates,
|
|
803
|
+
export { HistoryStack, NavigationProvider, PrefetchCache, SegmentCache, SegmentProvider, TimberErrorBoundary, bindUseQueryStates, createRouter, getRouter, getRouterOrNull, getSsrData, registerSsrDataProvider, setGlobalRouter, useSearchParams, useSegmentContext };
|
|
840
804
|
|
|
841
805
|
//# sourceMappingURL=internal.js.map
|