@timber-js/app 0.2.0-alpha.192 → 0.2.0-alpha.195
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/agent-skill.md +2 -0
- package/dist/_chunks/{actions-BjbbNRFN.js → actions-CWYtq6ii.js} +3 -3
- package/dist/_chunks/actions-CWYtq6ii.js.map +1 -0
- package/dist/_chunks/als-registry-C6kcfprT.js.map +1 -1
- package/dist/_chunks/als-slots-BEEIPKYm.js.map +1 -1
- package/dist/_chunks/{build-output-helper-C3DrfzZR.js → build-output-helper-9dqCv1pZ.js} +3 -2
- package/dist/_chunks/build-output-helper-9dqCv1pZ.js.map +1 -0
- package/dist/_chunks/{cache-api-DllJ-Lyw.js → cache-api-CQeYzA5g.js} +6 -8
- package/dist/_chunks/cache-api-CQeYzA5g.js.map +1 -0
- package/dist/_chunks/chains-h7EO-u3n.js +412 -0
- package/dist/_chunks/chains-h7EO-u3n.js.map +1 -0
- package/dist/_chunks/{cli-check-DJZDc22E.js → cli-check-BVthpfLS.js} +43 -6
- package/dist/_chunks/cli-check-BVthpfLS.js.map +1 -0
- package/dist/_chunks/{cli-schema-sync-D4_AZVUb.js → cli-schema-sync-3Wutm8pH.js} +7 -6
- package/dist/_chunks/{cli-schema-sync-D4_AZVUb.js.map → cli-schema-sync-3Wutm8pH.js.map} +1 -1
- package/dist/_chunks/{cloudflare-CGP6BZKO.js → cloudflare-BKJC3SC_.js} +28 -22
- package/dist/_chunks/{cloudflare-CGP6BZKO.js.map → cloudflare-BKJC3SC_.js.map} +1 -1
- package/dist/_chunks/codec-registry-oOUxugz3.js.map +1 -1
- package/dist/_chunks/{convention-lint-CpteIpTm.js → convention-lint-DO10_pVl.js} +93 -7
- package/dist/_chunks/convention-lint-DO10_pVl.js.map +1 -0
- package/dist/_chunks/dist-DtrJyBbw.js +386 -0
- package/dist/_chunks/dist-DtrJyBbw.js.map +1 -0
- package/dist/_chunks/{error-boundary-D-ODYX41.js → error-boundary-D-lkwyaD.js} +3 -3
- package/dist/_chunks/{error-boundary-D-ODYX41.js.map → error-boundary-D-lkwyaD.js.map} +1 -1
- package/dist/_chunks/{file-cache-DmX7OqZP.js → file-cache-Dw6BJPG7.js} +5 -1
- package/dist/_chunks/{file-cache-DmX7OqZP.js.map → file-cache-Dw6BJPG7.js.map} +1 -1
- package/dist/_chunks/{format-CfwjgPz9.js → format-BKclgVbk.js} +3 -3
- package/dist/_chunks/{format-CfwjgPz9.js.map → format-BKclgVbk.js.map} +1 -1
- package/dist/_chunks/graph-cache-CP4GEmf9.js +304 -0
- package/dist/_chunks/graph-cache-CP4GEmf9.js.map +1 -0
- package/dist/_chunks/href-validation-CMc5JRls.js.map +1 -1
- package/dist/_chunks/live-graph-Bx4HodF1.js +150 -0
- package/dist/_chunks/live-graph-Bx4HodF1.js.map +1 -0
- package/dist/_chunks/{logger-CH7IcMmg.js → logger-pumCm3Il.js} +25 -7
- package/dist/_chunks/{logger-CH7IcMmg.js.map → logger-pumCm3Il.js.map} +1 -1
- package/dist/_chunks/{mdx-file-C005ay-P.js → mdx-file-CXyHGUpS.js} +3 -3
- package/dist/_chunks/mdx-file-CXyHGUpS.js.map +1 -0
- package/dist/_chunks/{plugin-context-rCinWLiE.js → plugin-context-8idfR3UZ.js} +2 -2
- package/dist/_chunks/plugin-context-8idfR3UZ.js.map +1 -0
- package/dist/_chunks/poison-rules-DoEhbqaY.js +110 -0
- package/dist/_chunks/poison-rules-DoEhbqaY.js.map +1 -0
- package/dist/_chunks/poison-scan-BAxfTT5L.js +101 -0
- package/dist/_chunks/poison-scan-BAxfTT5L.js.map +1 -0
- package/dist/_chunks/resolve-schema-CBR6Lm4i.js.map +1 -1
- package/dist/_chunks/rolldown-runtime-D7D4PA-g.js +13 -0
- package/dist/_chunks/{router-ref-DuYuV_0Q.js → router-ref-BzqbPwYC.js} +2 -2
- package/dist/_chunks/{router-ref-DuYuV_0Q.js.map → router-ref-BzqbPwYC.js.map} +1 -1
- package/dist/_chunks/{rsc-media-type-DRqE_lD_.js → rsc-media-type-DDc7duTD.js} +17 -2
- package/dist/_chunks/{rsc-media-type-DRqE_lD_.js.map → rsc-media-type-DDc7duTD.js.map} +1 -1
- package/dist/_chunks/scan-BoP17W3w.js +140 -0
- package/dist/_chunks/scan-BoP17W3w.js.map +1 -0
- package/dist/_chunks/{scanner-CAietmj4.js → scanner-BRIOmHE2.js} +43 -4
- package/dist/_chunks/scanner-BRIOmHE2.js.map +1 -0
- package/dist/_chunks/schema-bridge-C83xa9lT.js.map +1 -1
- package/dist/_chunks/segment-classify-C539Pa2O.js.map +1 -1
- package/dist/_chunks/{segment-keys-BawYuNFO.js → segment-keys-BhqoHiLc.js} +14 -2
- package/dist/_chunks/{segment-keys-BawYuNFO.js.map → segment-keys-BhqoHiLc.js.map} +1 -1
- package/dist/_chunks/slot-params-BCTmZkQB.js.map +1 -1
- package/dist/_chunks/{ssr-data-14MXm7Pj.js → ssr-data-Ya2HJPFp.js} +1 -7
- package/dist/_chunks/{ssr-data-14MXm7Pj.js.map → ssr-data-Ya2HJPFp.js.map} +1 -1
- package/dist/_chunks/use-query-states-I3JMng6J.js.map +1 -1
- package/dist/_chunks/{use-segment-params-C4r4BD9T.js → use-segment-params-DzTBpkvj.js} +3 -3
- package/dist/_chunks/use-segment-params-DzTBpkvj.js.map +1 -0
- package/dist/_chunks/{walkers-BsVLmD1S.js → walkers-BU6z9xRV.js} +9 -6
- package/dist/_chunks/{walkers-BsVLmD1S.js.map → walkers-BU6z9xRV.js.map} +1 -1
- package/dist/adapters/build-output-helper.d.ts +1 -1
- package/dist/adapters/build-output-helper.d.ts.map +1 -1
- package/dist/adapters/cloudflare-dev.d.ts.map +1 -1
- package/dist/adapters/cloudflare-dev.js +2 -1
- package/dist/adapters/cloudflare-dev.js.map +1 -1
- package/dist/adapters/cloudflare-kv-cache.d.ts +1 -1
- package/dist/adapters/cloudflare-kv-cache.d.ts.map +1 -1
- package/dist/adapters/cloudflare-kv-cache.js +7 -8
- package/dist/adapters/cloudflare-kv-cache.js.map +1 -1
- package/dist/adapters/cloudflare.d.ts +1 -1
- package/dist/adapters/cloudflare.d.ts.map +1 -1
- package/dist/adapters/cloudflare.js +1 -1
- package/dist/adapters/nitro-presets.d.ts +37 -0
- package/dist/adapters/nitro-presets.d.ts.map +1 -0
- package/dist/adapters/nitro-preview.d.ts +32 -0
- package/dist/adapters/nitro-preview.d.ts.map +1 -0
- package/dist/adapters/nitro.d.ts +28 -51
- package/dist/adapters/nitro.d.ts.map +1 -1
- package/dist/adapters/nitro.js +224 -171
- package/dist/adapters/nitro.js.map +1 -1
- package/dist/analyze/chains.d.ts +124 -0
- package/dist/analyze/chains.d.ts.map +1 -0
- package/dist/analyze/classify.d.ts +150 -0
- package/dist/analyze/classify.d.ts.map +1 -0
- package/dist/analyze/crawl-entry.d.ts +17 -0
- package/dist/analyze/crawl-entry.d.ts.map +1 -0
- package/dist/analyze/crawl-entry.js +313 -0
- package/dist/analyze/crawl-entry.js.map +1 -0
- package/dist/analyze/crawl.d.ts +134 -0
- package/dist/analyze/crawl.d.ts.map +1 -0
- package/dist/analyze/graph-cache.d.ts +104 -0
- package/dist/analyze/graph-cache.d.ts.map +1 -0
- package/dist/analyze/graph-command.d.ts +43 -0
- package/dist/analyze/graph-command.d.ts.map +1 -0
- package/dist/analyze/graph-command.js +472 -0
- package/dist/analyze/graph-command.js.map +1 -0
- package/dist/analyze/live-graph.d.ts +81 -0
- package/dist/analyze/live-graph.d.ts.map +1 -0
- package/dist/analyze/poison-rules.d.ts +72 -0
- package/dist/analyze/poison-rules.d.ts.map +1 -0
- package/dist/analyze/poison-scan.d.ts +48 -0
- package/dist/analyze/poison-scan.d.ts.map +1 -0
- package/dist/analyze/scan.d.ts +73 -0
- package/dist/analyze/scan.d.ts.map +1 -0
- package/dist/cache/cache-api.d.ts +2 -2
- package/dist/cache/cache-api.d.ts.map +1 -1
- package/dist/cache/index.d.ts +8 -8
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +1 -1
- package/dist/cache/redis-handler.d.ts +1 -1
- package/dist/cache/redis-handler.d.ts.map +1 -1
- package/dist/cache/stores/cloudflare-kv.d.ts +1 -1
- package/dist/cache/stores/cloudflare-kv.d.ts.map +1 -1
- package/dist/cache/stores/cloudflare-kv.js.map +1 -1
- package/dist/cache/stores/memory.d.ts +1 -1
- package/dist/cache/stores/memory.d.ts.map +1 -1
- package/dist/cache/stores/memory.js.map +1 -1
- package/dist/cache/stores/redis.d.ts +1 -1
- package/dist/cache/stores/redis.d.ts.map +1 -1
- package/dist/cache/stores/redis.js.map +1 -1
- package/dist/cache/stores/vercel.d.ts +1 -1
- package/dist/cache/stores/vercel.d.ts.map +1 -1
- package/dist/cache/stores/vercel.js.map +1 -1
- package/dist/cache/tag-aware-handler.d.ts +2 -2
- package/dist/cache/tag-aware-handler.d.ts.map +1 -1
- package/dist/cache/timber-cache.d.ts +1 -1
- package/dist/cache/timber-cache.d.ts.map +1 -1
- package/dist/cdn/cloudflare-purge.d.ts +1 -1
- package/dist/cdn/cloudflare-purge.d.ts.map +1 -1
- package/dist/cdn/cloudflare-purge.js.map +1 -1
- package/dist/cdn/fastly-purge.d.ts +1 -1
- package/dist/cdn/fastly-purge.d.ts.map +1 -1
- package/dist/cdn/fastly-purge.js.map +1 -1
- package/dist/cdn/index.d.ts +4 -4
- package/dist/cdn/index.d.ts.map +1 -1
- package/dist/cdn/workers-cache-purge.d.ts +5 -1
- package/dist/cdn/workers-cache-purge.d.ts.map +1 -1
- package/dist/cdn/workers-cache-purge.js.map +1 -1
- package/dist/cli-check.d.ts +10 -0
- package/dist/cli-check.d.ts.map +1 -1
- package/dist/cli.d.ts +12 -4
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +30 -6
- package/dist/cli.js.map +1 -1
- package/dist/client/browser-entry/hydrate.d.ts +2 -2
- package/dist/client/browser-entry/hydrate.d.ts.map +1 -1
- package/dist/client/browser-entry/post-hydration.d.ts +2 -2
- package/dist/client/browser-entry/router-init.d.ts +2 -2
- package/dist/client/browser-entry/rsc-stream.d.ts +1 -1
- package/dist/client/error-boundary.js +1 -1
- package/dist/client/form.d.ts +2 -2
- package/dist/client/form.d.ts.map +1 -1
- package/dist/client/history.d.ts +2 -2
- package/dist/client/index.d.ts +18 -18
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +3 -3
- package/dist/client/index.js.map +1 -1
- package/dist/client/internal.d.ts +19 -19
- package/dist/client/internal.d.ts.map +1 -1
- package/dist/client/internal.js +15 -19
- package/dist/client/internal.js.map +1 -1
- package/dist/client/link.d.ts +3 -3
- package/dist/client/navigation-commit.d.ts +5 -5
- package/dist/client/navigation-root.d.ts +1 -1
- package/dist/client/navigation-root.d.ts.map +1 -1
- package/dist/client/params-context.d.ts +3 -3
- package/dist/client/router-pipeline.d.ts +7 -7
- package/dist/client/router-ref.d.ts +1 -1
- package/dist/client/router-types.d.ts +6 -6
- package/dist/client/router-types.d.ts.map +1 -1
- package/dist/client/router.d.ts +1 -1
- package/dist/client/rsc-fetch.d.ts +4 -4
- package/dist/client/rsc-fetch.d.ts.map +1 -1
- package/dist/client/segment-cache.d.ts +2 -2
- package/dist/client/slot-provider.d.ts +1 -1
- package/dist/client/ssr-data.d.ts +2 -2
- package/dist/client/state.d.ts +4 -4
- package/dist/client/use-query-states.d.ts +1 -1
- package/dist/client/use-segment-params.d.ts +3 -3
- package/dist/codec.d.ts +2 -2
- package/dist/codec.js.map +1 -1
- package/dist/config-types.d.ts +12 -9
- package/dist/config-types.d.ts.map +1 -1
- package/dist/config-validation.d.ts +1 -1
- package/dist/cookies/define-cookie.d.ts +3 -3
- package/dist/cookies/index.d.ts +3 -3
- package/dist/cookies/index.js +4 -5
- package/dist/cookies/index.js.map +1 -1
- package/dist/cookies/json-cookie.d.ts +1 -1
- package/dist/dev-tools/404-page.d.ts +2 -2
- package/dist/dev-tools/error-page.d.ts +2 -2
- package/dist/dev-tools/index.d.ts +12 -12
- package/dist/dev-tools/instrumentation.d.ts +1 -1
- package/dist/dev-tools/logs.d.ts +1 -1
- package/dist/dev-tools/overlay.d.ts +2 -2
- package/dist/dev-tools/terminal.d.ts +1 -1
- package/dist/fonts/ast.d.ts +4 -4
- package/dist/fonts/bundle.d.ts +3 -3
- package/dist/fonts/css.d.ts +1 -1
- package/dist/fonts/dev-middleware.d.ts +1 -1
- package/dist/fonts/google.d.ts +1 -1
- package/dist/fonts/local.d.ts +1 -1
- package/dist/fonts/pipeline.d.ts +3 -3
- package/dist/fonts/transform.d.ts +2 -2
- package/dist/fonts/types.d.ts +1 -1
- package/dist/fonts/virtual-modules.d.ts +1 -1
- package/dist/index.d.ts +3 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +861 -314
- package/dist/index.js.map +1 -1
- package/dist/params/codec-registry.d.ts +1 -1
- package/dist/params/define-schema.d.ts +2 -2
- package/dist/params/index.d.ts +4 -4
- package/dist/params/index.js.map +1 -1
- package/dist/params/resolve-schema.d.ts +1 -1
- package/dist/plugin-context.d.ts +9 -9
- package/dist/plugin-context.d.ts.map +1 -1
- package/dist/plugins/adapter-build.d.ts +2 -2
- package/dist/plugins/build-manifest.d.ts +2 -2
- package/dist/plugins/build-report.d.ts +5 -5
- package/dist/plugins/cache.d.ts +1 -1
- package/dist/plugins/callsite-jsx.d.ts +2 -2
- package/dist/plugins/chunks.d.ts +1 -1
- package/dist/plugins/chunks.d.ts.map +1 -1
- package/dist/plugins/cloudflare-wasm.d.ts +1 -1
- package/dist/plugins/content.d.ts +1 -1
- package/dist/plugins/content.d.ts.map +1 -1
- package/dist/plugins/dev-discovery.d.ts +123 -0
- package/dist/plugins/dev-discovery.d.ts.map +1 -0
- package/dist/plugins/dev-server.d.ts +1 -1
- package/dist/plugins/dev-server.d.ts.map +1 -1
- package/dist/plugins/entries.d.ts +1 -1
- package/dist/plugins/fonts.d.ts +3 -3
- package/dist/plugins/fonts.d.ts.map +1 -1
- package/dist/plugins/graph-endpoint.d.ts +112 -0
- package/dist/plugins/graph-endpoint.d.ts.map +1 -0
- package/dist/plugins/mdx.d.ts +1 -1
- package/dist/plugins/mdx.d.ts.map +1 -1
- package/dist/plugins/prebuilt-capture.d.ts +2 -2
- package/dist/plugins/prebuilt-options-analysis.d.ts +1 -1
- package/dist/plugins/prebuilt.d.ts +1 -1
- package/dist/plugins/prerender-sugar.d.ts +11 -14
- package/dist/plugins/prerender-sugar.d.ts.map +1 -1
- package/dist/plugins/request-dep/analysis.d.ts +1 -1
- package/dist/plugins/request-dep/index.d.ts +5 -5
- package/dist/plugins/request-dep/origin.d.ts +1 -1
- package/dist/plugins/routing.d.ts +1 -1
- package/dist/plugins/routing.d.ts.map +1 -1
- package/dist/plugins/server-bundle.d.ts.map +1 -1
- package/dist/plugins/shims.d.ts +1 -1
- package/dist/plugins/shims.d.ts.map +1 -1
- package/dist/plugins/static-build.d.ts +5 -5
- package/dist/routing/codegen-shared.d.ts +1 -1
- package/dist/routing/codegen-write.d.ts +1 -1
- package/dist/routing/codegen.d.ts +1 -1
- package/dist/routing/collision-probe.d.ts +1 -1
- package/dist/routing/collision-spaces.d.ts +1 -1
- package/dist/routing/convention-lint.d.ts +1 -1
- package/dist/routing/convention-lint.d.ts.map +1 -1
- package/dist/routing/index.d.ts +13 -13
- package/dist/routing/index.js +3 -3
- package/dist/routing/interception.d.ts +1 -1
- package/dist/routing/interception.d.ts.map +1 -1
- package/dist/routing/link-codegen.d.ts +1 -1
- package/dist/routing/manifest-codegen.d.ts +1 -1
- package/dist/routing/scanner.d.ts +14 -1
- package/dist/routing/scanner.d.ts.map +1 -1
- package/dist/routing/schema-validation.d.ts +1 -1
- package/dist/routing/segment-classify.d.ts +1 -1
- package/dist/routing/segment-codegen.d.ts +1 -1
- package/dist/routing/segment-keys.d.ts +1 -1
- package/dist/routing/slot-placement.d.ts +1 -1
- package/dist/routing/walkers.d.ts +1 -1
- package/dist/rsc-runtime/transforms.d.ts +13 -0
- package/dist/rsc-runtime/transforms.d.ts.map +1 -0
- package/dist/schema-bridge.d.ts +1 -1
- package/dist/search-params/define.d.ts +3 -3
- package/dist/search-params/index.d.ts +3 -3
- package/dist/search-params/index.js.map +1 -1
- package/dist/search-params/wrappers.d.ts +1 -1
- package/dist/server/access-gate.d.ts +1 -1
- package/dist/server/action-client.d.ts +1 -1
- package/dist/server/action-handler.d.ts +5 -5
- package/dist/server/actions.d.ts +2 -2
- package/dist/server/als-registry.d.ts +8 -8
- package/dist/server/asset-headers.d.ts +1 -1
- package/dist/server/chain-url-parts.d.ts +3 -3
- package/dist/server/children-interception.d.ts +2 -2
- package/dist/server/cookie-context.d.ts +1 -1
- package/dist/server/cookie-parsing.d.ts +2 -2
- package/dist/server/default-logger.d.ts +1 -1
- package/dist/server/deny-boundary.d.ts +2 -2
- package/dist/server/deny-renderer.d.ts +5 -5
- package/dist/server/early-hints.d.ts +1 -1
- package/dist/server/error-boundary-wrapper.d.ts +2 -4
- package/dist/server/error-boundary-wrapper.d.ts.map +1 -1
- package/dist/server/fallback-error.d.ts +5 -5
- package/dist/server/flight-injection-state.d.ts +1 -1
- package/dist/server/form-flash.d.ts +1 -1
- package/dist/server/html-injector-core.d.ts +2 -2
- package/dist/server/html-injectors.d.ts +1 -1
- package/dist/server/index.d.ts +18 -18
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +34 -38
- package/dist/server/index.js.map +1 -1
- package/dist/server/instrumentation.d.ts +1 -1
- package/dist/server/internal.d.ts +50 -50
- package/dist/server/internal.d.ts.map +1 -1
- package/dist/server/internal.js +1024 -1026
- package/dist/server/internal.js.map +1 -1
- package/dist/server/metadata-collector.d.ts +2 -2
- package/dist/server/metadata-platform.d.ts +2 -2
- package/dist/server/metadata-render.d.ts +2 -2
- package/dist/server/metadata-routes.d.ts +3 -3
- package/dist/server/metadata-social.d.ts +2 -2
- package/dist/server/metadata.d.ts +2 -2
- package/dist/server/middleware-runner.d.ts +1 -1
- package/dist/server/node-stream-transforms.d.ts +1 -1
- package/dist/server/param-coercion.d.ts +4 -4
- package/dist/server/pipeline-helpers.d.ts +3 -3
- package/dist/server/pipeline-interception.d.ts +1 -1
- package/dist/server/pipeline-metadata.d.ts +1 -1
- package/dist/server/pipeline-outcome.d.ts +2 -2
- package/dist/server/pipeline-phases.d.ts +3 -3
- package/dist/server/pipeline-phases.d.ts.map +1 -1
- package/dist/server/pipeline.d.ts +9 -9
- package/dist/server/prebuilt/cache-key.d.ts +1 -1
- package/dist/server/prebuilt/capture-state.d.ts +1 -1
- package/dist/server/prebuilt/key-discipline.d.ts +1 -1
- package/dist/server/prebuilt/manifest-tag-index.d.ts +1 -1
- package/dist/server/prebuilt/overlay.d.ts +2 -2
- package/dist/server/prebuilt/payload-source.d.ts +1 -1
- package/dist/server/prebuilt/slots.d.ts +1 -1
- package/dist/server/prebuilt/synthetic-store.d.ts +2 -2
- package/dist/server/prebuilt-builder.d.ts +2 -2
- package/dist/server/primitives.d.ts +2 -2
- package/dist/server/publish-params.d.ts +1 -1
- package/dist/server/request-context.d.ts +3 -3
- package/dist/server/route-element-builder.d.ts +16 -6
- package/dist/server/route-element-builder.d.ts.map +1 -1
- package/dist/server/route-handler.d.ts +1 -1
- package/dist/server/route-matcher.d.ts +4 -4
- package/dist/server/rsc-cache-key-guard.d.ts.map +1 -1
- package/dist/server/rsc-entry/action-middleware-runner.d.ts +2 -2
- package/dist/server/rsc-entry/api-handler.d.ts +1 -1
- package/dist/server/rsc-entry/api-handler.d.ts.map +1 -1
- package/dist/server/rsc-entry/deny-fallback.d.ts +3 -3
- package/dist/server/rsc-entry/error-renderer.d.ts +4 -4
- package/dist/server/rsc-entry/helpers.d.ts +6 -6
- package/dist/server/rsc-entry/index.d.ts +7 -6
- package/dist/server/rsc-entry/index.d.ts.map +1 -1
- package/dist/server/rsc-entry/render-route.d.ts +4 -4
- package/dist/server/rsc-entry/revalidate-renderer.d.ts +4 -4
- package/dist/server/rsc-entry/rsc-payload.d.ts +4 -4
- package/dist/server/rsc-entry/rsc-payload.d.ts.map +1 -1
- package/dist/server/rsc-entry/rsc-stream.d.ts +3 -3
- package/dist/server/rsc-entry/ssr-bridge.d.ts +1 -1
- package/dist/server/rsc-entry/ssr-renderer.d.ts +7 -7
- package/dist/server/rsc-entry/wrap-action-dispatch.d.ts +5 -5
- package/dist/server/sitemap-generator.d.ts +2 -2
- package/dist/server/sitemap-handler.d.ts +1 -1
- package/dist/server/skippable-prefix.d.ts +3 -3
- package/dist/server/slot-interception.d.ts +2 -2
- package/dist/server/slot-resolver.d.ts +3 -7
- package/dist/server/slot-resolver.d.ts.map +1 -1
- package/dist/server/ssr-bridge-types.d.ts +2 -2
- package/dist/server/ssr-entry.d.ts +1 -1
- package/dist/server/static-generator.d.ts +1 -1
- package/dist/server/static-not-found.d.ts +1 -1
- package/dist/server/status-code-resolver.d.ts +1 -1
- package/dist/server/tracing.d.ts +3 -3
- package/dist/server/tree-builder.d.ts +3 -3
- package/dist/server/tree-match.d.ts +1 -1
- package/dist/server/types.d.ts +2 -2
- package/dist/server/utils/mdx-file.d.ts +2 -0
- package/dist/server/utils/mdx-file.d.ts.map +1 -1
- package/dist/server/workers-cache-bridge.d.ts +1 -1
- package/dist/shared/als-slots.d.ts +1 -1
- package/dist/shared/payload-root.d.ts +2 -2
- package/dist/shared/rsc-media-type.d.ts +12 -0
- package/dist/shared/rsc-media-type.d.ts.map +1 -1
- package/dist/shared/slot-params.d.ts +1 -1
- package/dist/shims/font-google.d.ts +1 -1
- package/dist/shims/font-google.js.map +1 -1
- package/dist/shims/font-local.d.ts +1 -1
- package/dist/shims/font-local.js.map +1 -1
- package/dist/shims/navigation-client.d.ts +4 -4
- package/dist/shims/navigation.d.ts +2 -2
- package/docs/api/34-api-config.mdx +7 -4
- package/docs/api/36-cli.mdx +23 -3
- package/docs/learn/11-error-handling.mdx +11 -0
- package/docs/learn/13-configuration.mdx +1 -1
- package/docs/more/01-advanced-routing.mdx +1 -0
- package/package.json +11 -10
- package/src/adapters/build-output-helper.ts +4 -4
- package/src/adapters/cloudflare-dev.ts +7 -1
- package/src/adapters/cloudflare-kv-cache.ts +11 -8
- package/src/adapters/cloudflare.ts +21 -15
- package/src/adapters/compress-module.ts +2 -2
- package/src/adapters/nitro-presets.ts +139 -0
- package/src/adapters/nitro-preview.ts +340 -0
- package/src/adapters/nitro.ts +100 -465
- package/src/adapters/shared.ts +1 -1
- package/src/analyze/chains.ts +411 -0
- package/src/analyze/classify.ts +258 -0
- package/src/analyze/crawl-entry.ts +68 -0
- package/src/analyze/crawl.ts +500 -0
- package/src/analyze/graph-cache.ts +332 -0
- package/src/analyze/graph-command.ts +762 -0
- package/src/analyze/live-graph.ts +232 -0
- package/src/analyze/poison-rules.ts +165 -0
- package/src/analyze/poison-scan.ts +162 -0
- package/src/analyze/scan.ts +149 -0
- package/src/cache/cache-api.ts +7 -7
- package/src/cache/index.ts +9 -9
- package/src/cache/redis-handler.ts +2 -2
- package/src/cache/stores/cloudflare-kv.ts +1 -1
- package/src/cache/stores/memory.ts +2 -2
- package/src/cache/stores/redis.ts +1 -1
- package/src/cache/stores/vercel.ts +1 -1
- package/src/cache/tag-aware-handler.ts +2 -2
- package/src/cache/timber-cache.ts +8 -8
- package/src/cdn/cloudflare-purge.ts +1 -1
- package/src/cdn/fastly-purge.ts +1 -1
- package/src/cdn/index.ts +10 -4
- package/src/cdn/workers-cache-purge.ts +6 -2
- package/src/cli-check.ts +53 -4
- package/src/cli-schema-sync.ts +3 -3
- package/src/cli.ts +50 -11
- package/src/client/browser-dev.ts +1 -1
- package/src/client/browser-entry/action-dispatch.ts +5 -5
- package/src/client/browser-entry/hmr.ts +1 -1
- package/src/client/browser-entry/hydrate.ts +9 -9
- package/src/client/browser-entry/index.ts +10 -10
- package/src/client/browser-entry/post-hydration.ts +5 -5
- package/src/client/browser-entry/router-init.ts +9 -9
- package/src/client/browser-entry/rsc-stream.ts +3 -3
- package/src/client/error-boundary.tsx +4 -4
- package/src/client/form.tsx +7 -2
- package/src/client/history.ts +2 -2
- package/src/client/index.ts +21 -18
- package/src/client/internal.ts +19 -19
- package/src/client/link.tsx +9 -9
- package/src/client/navigation-api.ts +1 -1
- package/src/client/navigation-commit.ts +5 -5
- package/src/client/navigation-context.ts +1 -1
- package/src/client/navigation-root.tsx +1 -1
- package/src/client/nuqs-adapter.tsx +2 -2
- package/src/client/params-context.ts +4 -4
- package/src/client/router-effects.ts +3 -3
- package/src/client/router-lifecycle.ts +2 -2
- package/src/client/router-pipeline.ts +10 -10
- package/src/client/router-ref.ts +2 -2
- package/src/client/router-skew.ts +2 -2
- package/src/client/router-types.ts +6 -6
- package/src/client/router.ts +13 -13
- package/src/client/rsc-fetch.ts +11 -16
- package/src/client/segment-cache.ts +2 -2
- package/src/client/segment-outlet.tsx +1 -1
- package/src/client/shallow-url.ts +1 -1
- package/src/client/slot-outlet.tsx +1 -1
- package/src/client/slot-provider.tsx +1 -1
- package/src/client/ssr-data.ts +3 -3
- package/src/client/stale-client.ts +1 -1
- package/src/client/state.ts +4 -4
- package/src/client/top-loader.tsx +1 -1
- package/src/client/unload-guard.ts +1 -1
- package/src/client/use-cookie.ts +2 -2
- package/src/client/use-pathname.ts +2 -2
- package/src/client/use-pending-navigation.ts +1 -1
- package/src/client/use-query-states.ts +3 -3
- package/src/client/use-router.ts +2 -2
- package/src/client/use-search-params.ts +3 -3
- package/src/client/use-segment-params.ts +6 -6
- package/src/client/use-selected-layout-segment.ts +2 -2
- package/src/codec.ts +2 -2
- package/src/config-types.ts +12 -9
- package/src/config-validation.ts +1 -1
- package/src/cookies/define-cookie.ts +6 -6
- package/src/cookies/index.ts +3 -3
- package/src/cookies/json-cookie.ts +1 -1
- package/src/dev-tools/404-page.ts +4 -4
- package/src/dev-tools/dev-page-shell.ts +1 -1
- package/src/dev-tools/error-page.ts +4 -4
- package/src/dev-tools/index.ts +12 -12
- package/src/dev-tools/instrumentation.ts +1 -1
- package/src/dev-tools/logs.ts +1 -1
- package/src/dev-tools/overlay.ts +3 -3
- package/src/dev-tools/terminal.ts +2 -2
- package/src/fonts/ast.ts +5 -5
- package/src/fonts/bundle.ts +5 -5
- package/src/fonts/css.ts +1 -1
- package/src/fonts/dev-middleware.ts +2 -2
- package/src/fonts/google.ts +2 -2
- package/src/fonts/local.ts +4 -4
- package/src/fonts/pipeline.ts +8 -8
- package/src/fonts/transform.ts +5 -5
- package/src/fonts/types.ts +1 -1
- package/src/fonts/virtual-modules.ts +1 -1
- package/src/index.ts +90 -95
- package/src/params/codec-registry.ts +1 -1
- package/src/params/define-schema.ts +2 -2
- package/src/params/index.ts +4 -4
- package/src/params/resolve-schema.ts +2 -2
- package/src/plugin-context.ts +10 -10
- package/src/plugins/adapter-build.ts +5 -5
- package/src/plugins/build-manifest.ts +4 -4
- package/src/plugins/build-report.ts +6 -6
- package/src/plugins/cache.ts +3 -3
- package/src/plugins/callsite-ast.ts +1 -1
- package/src/plugins/callsite-jsx.ts +2 -2
- package/src/plugins/chunks.ts +1 -1
- package/src/plugins/cloudflare-wasm.ts +1 -1
- package/src/plugins/content.ts +5 -1
- package/src/plugins/dev-discovery.ts +218 -0
- package/src/plugins/dev-server.ts +97 -12
- package/src/plugins/entries.ts +1 -1
- package/src/plugins/fonts.ts +17 -10
- package/src/plugins/graph-endpoint.ts +532 -0
- package/src/plugins/mdx.ts +4 -3
- package/src/plugins/prebuilt-capture.ts +3 -3
- package/src/plugins/prebuilt-options-analysis.ts +1 -1
- package/src/plugins/prebuilt.ts +7 -7
- package/src/plugins/prerender-sugar.ts +11 -19
- package/src/plugins/request-dep/analysis.ts +1 -1
- package/src/plugins/request-dep/index.ts +8 -8
- package/src/plugins/request-dep/origin.ts +1 -1
- package/src/plugins/routing.ts +12 -7
- package/src/plugins/server-bundle.ts +9 -2
- package/src/plugins/shims.ts +16 -31
- package/src/plugins/static-build.ts +10 -10
- package/src/routing/codegen-shared.ts +1 -1
- package/src/routing/codegen-write.ts +3 -3
- package/src/routing/codegen.ts +14 -5
- package/src/routing/collision-probe.ts +3 -3
- package/src/routing/collision-spaces.ts +3 -3
- package/src/routing/convention-lint.ts +136 -6
- package/src/routing/export-detect.ts +1 -1
- package/src/routing/index.ts +13 -13
- package/src/routing/interception.ts +41 -4
- package/src/routing/link-codegen.ts +3 -3
- package/src/routing/manifest-codegen.ts +2 -2
- package/src/routing/scanner.ts +33 -9
- package/src/routing/schema-validation.ts +4 -4
- package/src/routing/segment-classify.ts +2 -2
- package/src/routing/segment-codegen.ts +1 -1
- package/src/routing/segment-keys.ts +1 -1
- package/src/routing/slot-placement.ts +1 -1
- package/src/routing/walkers.ts +1 -1
- package/src/rsc-runtime/transforms.ts +13 -0
- package/src/rsc-runtime/vendor-types.d.ts +12 -0
- package/src/schema-bridge.ts +1 -1
- package/src/search-params/define.ts +8 -8
- package/src/search-params/index.ts +3 -3
- package/src/search-params/wrappers.ts +3 -3
- package/src/server/access-gate.tsx +6 -6
- package/src/server/action-client.ts +5 -5
- package/src/server/action-handler.ts +16 -16
- package/src/server/actions.ts +5 -5
- package/src/server/als-registry.ts +8 -8
- package/src/server/asset-headers.ts +2 -2
- package/src/server/chain-url-parts.ts +5 -5
- package/src/server/children-interception.ts +4 -4
- package/src/server/compress.ts +1 -1
- package/src/server/cookie-context.ts +4 -4
- package/src/server/cookie-parsing.ts +2 -2
- package/src/server/default-logger.ts +3 -3
- package/src/server/deny-boundary.ts +10 -10
- package/src/server/deny-renderer.ts +38 -25
- package/src/server/early-hints-sender.ts +2 -2
- package/src/server/early-hints.ts +2 -2
- package/src/server/error-boundary-wrapper.ts +4 -12
- package/src/server/fallback-error.ts +13 -13
- package/src/server/flight-injection-state.ts +1 -1
- package/src/server/form-flash.ts +2 -2
- package/src/server/html-injector-core.ts +4 -4
- package/src/server/html-injectors.ts +5 -5
- package/src/server/index.ts +18 -18
- package/src/server/instrumentation.ts +1 -1
- package/src/server/internal.ts +50 -50
- package/src/server/logger.ts +4 -4
- package/src/server/metadata-collector.ts +7 -7
- package/src/server/metadata-platform.ts +2 -2
- package/src/server/metadata-render.ts +4 -4
- package/src/server/metadata-routes.ts +3 -3
- package/src/server/metadata-social.ts +2 -2
- package/src/server/metadata.ts +2 -2
- package/src/server/middleware-runner.ts +1 -1
- package/src/server/node-stream-transforms.ts +4 -4
- package/src/server/param-coercion.ts +8 -8
- package/src/server/pipeline-helpers.ts +7 -7
- package/src/server/pipeline-interception.ts +2 -2
- package/src/server/pipeline-metadata.ts +1 -1
- package/src/server/pipeline-outcome.ts +8 -8
- package/src/server/pipeline-phases.ts +24 -28
- package/src/server/pipeline.ts +22 -22
- package/src/server/prebuilt/cache-key.ts +1 -1
- package/src/server/prebuilt/capture-state.ts +1 -1
- package/src/server/prebuilt/key-discipline.ts +1 -1
- package/src/server/prebuilt/manifest-tag-index.ts +1 -1
- package/src/server/prebuilt/overlay.ts +6 -6
- package/src/server/prebuilt/payload-source.ts +2 -2
- package/src/server/prebuilt/slots.ts +5 -5
- package/src/server/prebuilt/synthetic-store.ts +2 -2
- package/src/server/prebuilt-builder.ts +16 -16
- package/src/server/prebuilt-runtime.ts +12 -12
- package/src/server/primitives.ts +7 -7
- package/src/server/publish-params.ts +3 -3
- package/src/server/request-context.ts +7 -7
- package/src/server/route-element-builder.ts +108 -50
- package/src/server/route-handler.ts +4 -4
- package/src/server/route-matcher.ts +5 -5
- package/src/server/rsc-cache-key-guard.ts +3 -5
- package/src/server/rsc-entry/action-middleware-runner.ts +7 -7
- package/src/server/rsc-entry/api-handler.ts +18 -9
- package/src/server/rsc-entry/deny-fallback.ts +10 -10
- package/src/server/rsc-entry/error-renderer.ts +27 -27
- package/src/server/rsc-entry/helpers.ts +10 -10
- package/src/server/rsc-entry/index.ts +51 -47
- package/src/server/rsc-entry/render-route.ts +20 -20
- package/src/server/rsc-entry/revalidate-renderer.ts +12 -12
- package/src/server/rsc-entry/rsc-payload.ts +19 -15
- package/src/server/rsc-entry/rsc-stream.ts +8 -8
- package/src/server/rsc-entry/ssr-bridge.ts +3 -3
- package/src/server/rsc-entry/ssr-renderer.ts +23 -23
- package/src/server/rsc-entry/wrap-action-dispatch.ts +9 -9
- package/src/server/rsc-prop-warnings.ts +1 -1
- package/src/server/sensitive-fields.ts +1 -1
- package/src/server/server-timing.ts +1 -1
- package/src/server/sitemap-generator.ts +3 -3
- package/src/server/sitemap-handler.ts +3 -3
- package/src/server/skippable-prefix.ts +7 -7
- package/src/server/slot-interception.ts +5 -5
- package/src/server/slot-resolver.ts +20 -28
- package/src/server/ssr-bridge-types.ts +2 -2
- package/src/server/ssr-entry.ts +18 -18
- package/src/server/ssr-render.ts +4 -4
- package/src/server/ssr-wrappers.tsx +1 -1
- package/src/server/state-tree-diff.ts +1 -1
- package/src/server/static-generator.ts +6 -6
- package/src/server/static-not-found.ts +3 -3
- package/src/server/status-code-resolver.ts +1 -1
- package/src/server/tracing.ts +5 -5
- package/src/server/tree-builder.ts +4 -4
- package/src/server/tree-match.ts +1 -1
- package/src/server/types.ts +2 -2
- package/src/server/utils/mdx-file.ts +2 -2
- package/src/server/waituntil-bridge.ts +1 -1
- package/src/server/workers-cache-bridge.ts +2 -2
- package/src/shared/als-slots.ts +1 -1
- package/src/shared/payload-root.ts +2 -2
- package/src/shared/rsc-media-type.ts +16 -0
- package/src/shared/slot-params.ts +1 -1
- package/src/shims/font-google.ts +1 -1
- package/src/shims/font-local.ts +1 -1
- package/src/shims/navigation-client.ts +5 -5
- package/src/shims/navigation.ts +2 -2
- package/dist/_chunks/actions-BjbbNRFN.js.map +0 -1
- package/dist/_chunks/build-output-helper-C3DrfzZR.js.map +0 -1
- package/dist/_chunks/cache-api-DllJ-Lyw.js.map +0 -1
- package/dist/_chunks/cli-check-DJZDc22E.js.map +0 -1
- package/dist/_chunks/convention-lint-CpteIpTm.js.map +0 -1
- package/dist/_chunks/dist-BA3u1z3W.js +0 -423
- package/dist/_chunks/dist-BA3u1z3W.js.map +0 -1
- package/dist/_chunks/mdx-file-C005ay-P.js.map +0 -1
- package/dist/_chunks/plugin-context-rCinWLiE.js.map +0 -1
- package/dist/_chunks/scanner-CAietmj4.js.map +0 -1
- package/dist/_chunks/use-segment-params-C4r4BD9T.js.map +0 -1
- package/dist/content/index.d.ts +0 -2
- package/dist/content/index.d.ts.map +0 -1
- package/dist/content/index.js +0 -0
- package/src/content/index.ts +0 -5
- package/src/shims/server-only-noop.js +0 -6
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*
|
|
12
12
|
* Design doc: design/41-global-params.md §"Link Component"
|
|
13
13
|
*/
|
|
14
|
-
import type { Codec } from '../codec.
|
|
14
|
+
import type { Codec } from '../codec.ts';
|
|
15
15
|
/**
|
|
16
16
|
* Register the resolved schema codecs for use by Link's URL interpolation.
|
|
17
17
|
* Called once at startup from the browser entry or RSC entry.
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
*
|
|
8
8
|
* Design doc: design/41-global-params.md
|
|
9
9
|
*/
|
|
10
|
-
import type { Codec, CatchAllCodec, OptionalCatchAllCodec } from '../codec.
|
|
11
|
-
import type { StandardSchemaV1 } from '../schema-bridge.
|
|
10
|
+
import type { Codec, CatchAllCodec, OptionalCatchAllCodec } from '../codec.ts';
|
|
11
|
+
import type { StandardSchemaV1 } from '../schema-bridge.ts';
|
|
12
12
|
/**
|
|
13
13
|
* Infer the output type from a Codec, StandardSchemaV1, or nuqs parser.
|
|
14
14
|
*
|
package/dist/params/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { defineSchema } from './define-schema.
|
|
2
|
-
export type { InferCodecType, SchemaConfig, SegmentParamCodec, ValidDynamicSegmentKeys, ValidDynamicSegmentKeysRegistry, } from './define-schema.
|
|
3
|
-
export { resolveSchemaCodecs, toBracketKey } from './resolve-schema.
|
|
4
|
-
export { setLinkCodecs, getLinkCodec } from './codec-registry.
|
|
1
|
+
export { defineSchema } from './define-schema.ts';
|
|
2
|
+
export type { InferCodecType, SchemaConfig, SegmentParamCodec, ValidDynamicSegmentKeys, ValidDynamicSegmentKeysRegistry, } from './define-schema.ts';
|
|
3
|
+
export { resolveSchemaCodecs, toBracketKey } from './resolve-schema.ts';
|
|
4
|
+
export { setLinkCodecs, getLinkCodec } from './codec-registry.ts';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/params/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/params/define-schema.ts"],"sourcesContent":["/**\n * defineSchema — global segment param schema definition.\n *\n * Identity function at runtime; the type information is what matters.\n * The Vite plugin reads the schema at build time for codegen, and\n * the pipeline reads it at runtime for coercion.\n *\n * Design doc: design/41-global-params.md\n */\n\nimport type { Codec, CatchAllCodec, OptionalCatchAllCodec } from '../codec.
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/params/define-schema.ts"],"sourcesContent":["/**\n * defineSchema — global segment param schema definition.\n *\n * Identity function at runtime; the type information is what matters.\n * The Vite plugin reads the schema at build time for codegen, and\n * the pipeline reads it at runtime for coercion.\n *\n * Design doc: design/41-global-params.md\n */\n\nimport type { Codec, CatchAllCodec, OptionalCatchAllCodec } from '../codec.ts';\nimport type { StandardSchemaV1 } from '../schema-bridge.ts';\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\n/**\n * Infer the output type from a Codec, StandardSchemaV1, or nuqs parser.\n *\n * Used by codegen to reference schema types without hardcoding:\n * `InferCodecType<typeof schema.segmentParams['[year]']>`\n */\nexport type InferCodecType<V> =\n V extends Codec<infer T>\n ? T\n : V extends StandardSchemaV1<infer T>\n ? T\n : V extends { parseServerSide: (value: string) => infer T }\n ? T\n : string;\n\n/** Acceptable codec value for segment params: a Codec or Standard Schema. */\nexport type SegmentParamCodec = Codec<unknown> | StandardSchemaV1<unknown>;\n\n/** Codec constraint for catch-all segment keys (`[...name]`). */\nexport type CatchAllParamCodec = CatchAllCodec<unknown> | StandardSchemaV1<readonly unknown[]>;\n\n/** Codec constraint for optional catch-all segment keys (`[[...name]]`). */\nexport type OptionalCatchAllParamCodec =\n | OptionalCatchAllCodec<unknown>\n | StandardSchemaV1<readonly unknown[] | undefined>;\n\n/**\n * Resolves the required codec type for a given bracket key pattern.\n * - `[...name]` → requires a catch-all codec\n * - `[[...name]]` → requires an optional catch-all codec\n * - `[name]` → accepts any segment param codec\n */\nexport type CodecForKey<K extends string> = K extends `[[...${string}]]`\n ? OptionalCatchAllParamCodec\n : K extends `[...${string}]`\n ? CatchAllParamCodec\n : SegmentParamCodec;\n\n/**\n * Registry interface augmented by codegen with known filesystem bracket keys.\n * When empty (no codegen yet), ValidDynamicSegmentKeys falls back to string.\n */\n// eslint-disable-next-line typescript/no-empty-interface -- augmented by codegen\nexport interface ValidDynamicSegmentKeysRegistry {}\n\n/**\n * Union of valid bracket keys for defineSchema.\n * After codegen runs, this is the set of filesystem segment names.\n * Before codegen (fresh project), accepts any string.\n */\nexport type ValidDynamicSegmentKeys = keyof ValidDynamicSegmentKeysRegistry extends never\n ? string\n : keyof ValidDynamicSegmentKeysRegistry & string;\n\n/** Configuration object for defineSchema. */\nexport interface SchemaConfig<S extends Record<string, SegmentParamCodec>> {\n segmentParams: S;\n}\n\n// ---------------------------------------------------------------------------\n// Factory\n// ---------------------------------------------------------------------------\n\n/**\n * Define the global segment param schema.\n *\n * Each key uses the bracket syntax from the filesystem (`[id]`, `[...slug]`,\n * `[[...slug]]`) mapped to a codec. This makes the relationship between\n * filesystem segments and codecs visually obvious.\n *\n * A dynamic segment with no key here defaults to `string` at codegen time.\n *\n * ```ts\n * // app/schema.ts\n * import { defineSchema } from '@timber-js/app/params';\n * import { codec } from '@timber-js/app/codec';\n * import { z } from 'zod';\n *\n * export default defineSchema({\n * segmentParams: {\n * '[artistSlug]': codec.string,\n * '[year]': codec.integer,\n * '[id]': z.coerce.number().int(),\n * },\n * });\n * ```\n */\nexport function defineSchema<\n S extends {\n [K in keyof S]: K extends ValidDynamicSegmentKeys\n ? K extends string\n ? CodecForKey<K>\n : SegmentParamCodec\n : never;\n },\n>(config: { segmentParams: S }): { segmentParams: S } {\n return config;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAwGA,SAAgB,aAQd,QAAoD;CACpD,OAAO;AACT"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*
|
|
9
9
|
* Design doc: design/41-global-params.md §Pipeline Integration
|
|
10
10
|
*/
|
|
11
|
-
import type { Codec } from '../codec.
|
|
11
|
+
import type { Codec } from '../codec.ts';
|
|
12
12
|
/**
|
|
13
13
|
* Reconstruct the bracket key for a segment from its type and param name.
|
|
14
14
|
* Used by the coercion layer to look up codecs in the bracket-keyed map.
|
package/dist/plugin-context.d.ts
CHANGED
|
@@ -7,15 +7,15 @@
|
|
|
7
7
|
*
|
|
8
8
|
* Design doc: 18-build-system.md §"Shared Plugin Context"
|
|
9
9
|
*/
|
|
10
|
-
import type { RouteTree } from './routing/types';
|
|
11
|
-
import type { BuildManifest } from './server/build-manifest';
|
|
12
|
-
import type { CaptureSummary } from './server/prebuilt-builder';
|
|
13
|
-
import type { StartupTimer } from './utils/startup-timer';
|
|
14
|
-
import type { TimberUserConfig } from './config-types.
|
|
15
|
-
import type { RscManifest } from './plugins/static-build.
|
|
16
|
-
import type { HoldingServer } from './dev-tools/holding-server.
|
|
17
|
-
import type { ProgramNode } from './plugins/callsite-ast.
|
|
18
|
-
export type { TimberUserConfig, ClientJavascriptConfig } from './config-types.
|
|
10
|
+
import type { RouteTree } from './routing/types.ts';
|
|
11
|
+
import type { BuildManifest } from './server/build-manifest.ts';
|
|
12
|
+
import type { CaptureSummary } from './server/prebuilt-builder.ts';
|
|
13
|
+
import type { StartupTimer } from './utils/startup-timer.ts';
|
|
14
|
+
import type { TimberUserConfig } from './config-types.ts';
|
|
15
|
+
import type { RscManifest } from './plugins/static-build.ts';
|
|
16
|
+
import type { HoldingServer } from './dev-tools/holding-server.ts';
|
|
17
|
+
import type { ProgramNode } from './plugins/callsite-ast.ts';
|
|
18
|
+
export type { TimberUserConfig, ClientJavascriptConfig } from './config-types.ts';
|
|
19
19
|
/** Fully resolved client JavaScript configuration (no optionals). */
|
|
20
20
|
export interface ResolvedClientJavascript {
|
|
21
21
|
disabled: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-context.d.ts","sourceRoot":"","sources":["../src/plugin-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"plugin-context.d.ts","sourceRoot":"","sources":["../src/plugin-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAA0B,MAAM,mBAAmB,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,qEAAqE;AACrE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,gBAAgB,GAAG,wBAAwB,CAc1F;AAID;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,gBAAgB,CAAC;IACzB,+CAA+C;IAC/C,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,uFAAuF;IACvF,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC5B,0CAA0C;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,GAAG,EAAE,OAAO,CAAC;IACb;;;;;;;;;;;;;OAaG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,uEAAuE;IACvE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mFAAmF;IACnF,KAAK,EAAE,YAAY,CAAC;IACpB,0FAA0F;IAC1F,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC;;;;;;;;OAQG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/D;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,oGAAoG;IACpG,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C;;;;OAIG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAMD;;;;GAIG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAkC;IAE/C;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAgB/B;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,6EAA6E;IAC7E,UAAU,IAAI,aAAa,CAAC;CAC7B;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,eAAe,CAOtE;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAmBzE;AAID,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,aAAa,CAkB3F;AAID,yDAAyD;AACzD,eAAO,MAAM,iBAAiB,QAA0B,CAAC;AAEzD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE,MAAM,EACvB,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAQR;AAID;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CA6B9E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAqB1E;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,gBAAgB,GAC3B,MAAM,EAAE,CAgBV;AAWD;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,gBAAgB,GAC3B,gBAAgB,CAiBlB"}
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
* Design docs: design/11-platform.md, design/25-production-deployments.md
|
|
14
14
|
*/
|
|
15
15
|
import type { Plugin } from 'vite';
|
|
16
|
-
import type { PluginContext } from '../plugin-context.
|
|
17
|
-
import type { BuildManifest } from '../server/build-manifest.
|
|
16
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
17
|
+
import type { BuildManifest } from '../server/build-manifest.ts';
|
|
18
18
|
export declare function timberAdapterBuild(ctx: PluginContext): Plugin;
|
|
19
19
|
/**
|
|
20
20
|
* Strip JS references from the RSC plugin's assets manifest files.
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
* Design docs: 18-build-system.md §"Build Manifest", 02-rendering-pipeline.md §"Early Hints"
|
|
17
17
|
*/
|
|
18
18
|
import type { Plugin } from 'vite';
|
|
19
|
-
import type { PluginContext } from '../plugin-context.
|
|
20
|
-
import { type BuildManifest } from '../server/build-manifest.
|
|
19
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
20
|
+
import { type BuildManifest } from '../server/build-manifest.ts';
|
|
21
21
|
interface OutputChunk {
|
|
22
22
|
type: 'chunk';
|
|
23
23
|
fileName: string;
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
* Task: TIM-287
|
|
14
14
|
*/
|
|
15
15
|
import type { Plugin } from 'vite';
|
|
16
|
-
import type { PluginContext } from '../plugin-context.
|
|
17
|
-
import type { SegmentNode, RouteTree } from '../routing/types.
|
|
18
|
-
import type { CaptureSummary } from '../server/prebuilt-builder.
|
|
19
|
-
import type { PrebuiltManifest } from '../server/prebuilt/payload-source.
|
|
20
|
-
import { formatSize } from '../utils/format.
|
|
16
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
17
|
+
import type { SegmentNode, RouteTree } from '../routing/types.ts';
|
|
18
|
+
import type { CaptureSummary } from '../server/prebuilt-builder.ts';
|
|
19
|
+
import type { PrebuiltManifest } from '../server/prebuilt/payload-source.ts';
|
|
20
|
+
import { formatSize } from '../utils/format.ts';
|
|
21
21
|
export type RouteType = 'static' | 'dynamic' | 'function';
|
|
22
22
|
export interface RouteEntry {
|
|
23
23
|
path: string;
|
package/dist/plugins/cache.d.ts
CHANGED
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
* See TIM-997, TIM-1053, design/06-caching.md §"Cache Key Security".
|
|
54
54
|
*/
|
|
55
55
|
import type { Plugin } from 'vite';
|
|
56
|
-
import type { PluginContext } from '../plugin-context.
|
|
56
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
57
57
|
/**
|
|
58
58
|
* Generate a stable callsite ID for a cache() call. See callsite-ast.ts for
|
|
59
59
|
* the derivation properties.
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
*
|
|
11
11
|
* See design/44-render-at-build-time.md §Props Derivation at Build Time.
|
|
12
12
|
*/
|
|
13
|
-
import type { PluginContext } from '../plugin-context.
|
|
14
|
-
import type { PositionedNode, ProgramNode } from './callsite-ast.
|
|
13
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
14
|
+
import type { PositionedNode, ProgramNode } from './callsite-ast.ts';
|
|
15
15
|
export type JsonValue = string | number | boolean | null | JsonValue[] | {
|
|
16
16
|
[key: string]: JsonValue;
|
|
17
17
|
};
|
package/dist/plugins/chunks.d.ts
CHANGED
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
* Design docs: 27-chunking-strategy.md
|
|
22
22
|
*/
|
|
23
23
|
import type { Plugin } from 'vite';
|
|
24
|
-
import type { PluginContext } from '../plugin-context';
|
|
24
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
25
25
|
/**
|
|
26
26
|
* Check if a module is part of the timber framework runtime.
|
|
27
27
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks.d.ts","sourceRoot":"","sources":["../../src/plugins/chunks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAU,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"chunks.d.ts","sourceRoot":"","sources":["../../src/plugins/chunks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAU,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAOnD;AA4DD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAQvD"}
|
|
@@ -16,6 +16,6 @@
|
|
|
16
16
|
* a clear build error), never silently externalized.
|
|
17
17
|
*/
|
|
18
18
|
import type { Plugin } from 'vite';
|
|
19
|
-
import type { PluginContext } from '../plugin-context.
|
|
19
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
20
20
|
export declare function timberCloudflareWasm(ctx: PluginContext): Plugin[];
|
|
21
21
|
//# sourceMappingURL=cloudflare-wasm.d.ts.map
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* Design doc: 20-content-collections.md §"Content Collections"
|
|
9
9
|
*/
|
|
10
10
|
import type { Plugin } from 'vite';
|
|
11
|
-
import type { PluginContext } from '../plugin-context.
|
|
11
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
12
12
|
/**
|
|
13
13
|
* Create the timber-content Vite plugin.
|
|
14
14
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/plugins/content.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAoB1D;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/plugins/content.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAoB1D;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAoGxD"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dev-server discovery records — `.timber/dev/<pid>-<port>-<token>.json`.
|
|
3
|
+
*
|
|
4
|
+
* On startup each dev server writes `{ port, pid, host, protocol }` to its own record
|
|
5
|
+
* file under the app's `.timber/dev/` so the `timber graph` CLI and the
|
|
6
|
+
* VS Code extension can discover a running dev server for the
|
|
7
|
+
* live-graph fast path.
|
|
8
|
+
*
|
|
9
|
+
* One record file per server, one writer per file. This is what makes
|
|
10
|
+
* multi-server roots (Vite auto-increments the port across processes;
|
|
11
|
+
* programmatic embeddings run several servers in one process) safe
|
|
12
|
+
* without any coordination: there is no shared file to displace, no
|
|
13
|
+
* ownership to arbitrate, and no shutdown-order dependency — each
|
|
14
|
+
* server removes exactly its own record.
|
|
15
|
+
*
|
|
16
|
+
* Consumers must list the directory and trust a record only if its pid
|
|
17
|
+
* is alive AND a probe request to the endpoint succeeds; anything else
|
|
18
|
+
* is treated as absent (silent fallback), never an error. Stale records
|
|
19
|
+
* (crashed servers) are therefore the normal case — startup sweeps
|
|
20
|
+
* dead-pid records best-effort, and consumers validate the rest away.
|
|
21
|
+
*
|
|
22
|
+
* The directory layout and file format are implementation details, not
|
|
23
|
+
* a public contract.
|
|
24
|
+
*
|
|
25
|
+
* Design doc: 47-module-environment-tooling.md §5, 21-dev-server.md.
|
|
26
|
+
*/
|
|
27
|
+
import type { Server } from 'node:net';
|
|
28
|
+
/** Relative path of the discovery directory within the project root. */
|
|
29
|
+
export declare const DEV_DISCOVERY_DIR: string;
|
|
30
|
+
export interface DevRecord {
|
|
31
|
+
port: number;
|
|
32
|
+
pid: number;
|
|
33
|
+
/**
|
|
34
|
+
* The bound address, as reported by the socket. Consumers probing the
|
|
35
|
+
* endpoint need it for servers bound to non-default interfaces;
|
|
36
|
+
* wildcard addresses (`0.0.0.0`, `::`) should be probed via loopback.
|
|
37
|
+
*/
|
|
38
|
+
host: string;
|
|
39
|
+
/**
|
|
40
|
+
* Probe scheme. `server.https` dev servers (including HTTP/2) answer
|
|
41
|
+
* only TLS — an http:// probe of one would fail and wrongly trigger
|
|
42
|
+
* the cold-crawl fallback.
|
|
43
|
+
*/
|
|
44
|
+
protocol: 'http' | 'https';
|
|
45
|
+
/**
|
|
46
|
+
* Vite `base` path. When non-root (e.g. `/my-app/`), the WebSocket
|
|
47
|
+
* upgrade path is `base + hmrPath`.
|
|
48
|
+
*/
|
|
49
|
+
base?: string;
|
|
50
|
+
/**
|
|
51
|
+
* HMR WebSocket path (from `server.ws.path` or deprecated
|
|
52
|
+
* `server.hmr.path`). Absent when no path is configured (default `/`).
|
|
53
|
+
*/
|
|
54
|
+
hmrPath?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Custom WebSocket host override (from `server.ws.host` or deprecated
|
|
57
|
+
* `server.hmr.host`). When set, the WS connection targets this host
|
|
58
|
+
* instead of the HTTP server's bound address.
|
|
59
|
+
*/
|
|
60
|
+
hmrHost?: string;
|
|
61
|
+
/**
|
|
62
|
+
* Custom WebSocket port override (from `server.ws.clientPort` ??
|
|
63
|
+
* `server.ws.port`, or deprecated `server.hmr.clientPort` ??
|
|
64
|
+
* `server.hmr.port`). When set, the WS connection targets this port
|
|
65
|
+
* instead of the HTTP server's bound port.
|
|
66
|
+
*/
|
|
67
|
+
hmrPort?: number;
|
|
68
|
+
/**
|
|
69
|
+
* Custom WebSocket protocol override (from `server.ws.protocol` or
|
|
70
|
+
* deprecated `server.hmr.protocol`). When set (e.g. `'wss'`), the
|
|
71
|
+
* upgrade request uses the corresponding HTTP scheme.
|
|
72
|
+
*/
|
|
73
|
+
hmrProtocol?: string;
|
|
74
|
+
/**
|
|
75
|
+
* Vite 8 WebSocket token (from `config.webSocketToken`). Required for
|
|
76
|
+
* browser WS upgrades; the extension passes it as `?token=` on the
|
|
77
|
+
* WebSocket URL.
|
|
78
|
+
*/
|
|
79
|
+
webSocketToken?: string;
|
|
80
|
+
/**
|
|
81
|
+
* Absolute path to the Vite config file this server was started with.
|
|
82
|
+
* When multiple dev servers share a project root but use different
|
|
83
|
+
* configs, the fast path must only accept the record matching the
|
|
84
|
+
* config the CLI resolved (TIM-1393).
|
|
85
|
+
*/
|
|
86
|
+
configFile?: string;
|
|
87
|
+
}
|
|
88
|
+
/** Best-effort "is this pid alive" — signal 0 probes without killing. */
|
|
89
|
+
export declare function isPidAlive(pid: number): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Register discovery-record lifecycle handlers on the dev server's HTTP
|
|
92
|
+
* server. Writes `.timber/dev/<pid>-<port>-<token>.json` once the server is
|
|
93
|
+
* listening (the bound port is only known then) and removes exactly
|
|
94
|
+
* that record on clean shutdown.
|
|
95
|
+
*
|
|
96
|
+
* All filesystem work is best-effort: a failure to write or remove a
|
|
97
|
+
* record must never break the dev server. `httpServer` is null in
|
|
98
|
+
* middleware mode — no port exists, so there is nothing to advertise.
|
|
99
|
+
* Typed as `net.Server` — the common base of Vite's `http.Server` and
|
|
100
|
+
* `Http2SecureServer` variants, which carries the events and `address()`.
|
|
101
|
+
*/
|
|
102
|
+
export declare function registerDevDiscovery(httpServer: Server | null, root: string, config?: {
|
|
103
|
+
configFile?: string | false;
|
|
104
|
+
base?: string;
|
|
105
|
+
server?: {
|
|
106
|
+
hmr?: {
|
|
107
|
+
path?: string;
|
|
108
|
+
host?: string;
|
|
109
|
+
port?: number;
|
|
110
|
+
clientPort?: number;
|
|
111
|
+
protocol?: string;
|
|
112
|
+
} | boolean;
|
|
113
|
+
ws?: {
|
|
114
|
+
path?: string;
|
|
115
|
+
host?: string;
|
|
116
|
+
port?: number;
|
|
117
|
+
clientPort?: number;
|
|
118
|
+
protocol?: string;
|
|
119
|
+
} | false;
|
|
120
|
+
};
|
|
121
|
+
webSocketToken?: string;
|
|
122
|
+
}): void;
|
|
123
|
+
//# sourceMappingURL=dev-discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-discovery.d.ts","sourceRoot":"","sources":["../../src/plugins/dev-discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAMvC,wEAAwE;AACxE,eAAO,MAAM,iBAAiB,QAAyB,CAAC;AAExD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,yEAAyE;AACzE,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQ/C;AA+BD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE;IACP,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QACP,GAAG,CAAC,EACA;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,GACvF,OAAO,CAAC;QACZ,EAAE,CAAC,EACC;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,GACvF,KAAK,CAAC;KACX,CAAC;IACF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GACA,IAAI,CAsDN"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import type { Plugin } from 'vite';
|
|
15
15
|
import type { IncomingMessage } from 'node:http';
|
|
16
|
-
import type { PluginContext } from '../plugin-context.
|
|
16
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
17
17
|
/**
|
|
18
18
|
* Create the timber-dev-server Vite plugin.
|
|
19
19
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../src/plugins/dev-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAiC,MAAM,MAAM,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAkB,MAAM,WAAW,CAAC;AAKjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../src/plugins/dev-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAiC,MAAM,MAAM,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAkB,MAAM,WAAW,CAAC;AAKjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAoD1D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CA4I1D;AA8PD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAuC9D"}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* Design docs: 18-build-system.md §"Entry Generation", §"Virtual Modules"
|
|
12
12
|
*/
|
|
13
13
|
import type { Plugin } from 'vite';
|
|
14
|
-
import type { PluginContext } from '../plugin-context.
|
|
14
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
15
15
|
/**
|
|
16
16
|
* Detect a user convention file at both root and src/.
|
|
17
17
|
*
|
package/dist/plugins/fonts.d.ts
CHANGED
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
* Design doc: 24-fonts.md
|
|
19
19
|
*/
|
|
20
20
|
import type { Plugin } from 'vite';
|
|
21
|
-
import type { PluginContext } from '../plugin-context.
|
|
22
|
-
export { FontPipeline } from '../fonts/pipeline.
|
|
23
|
-
export { generateFontId, extractFontConfig, detectDynamicFontCall, parseGoogleFontImports, parseGoogleFontFamilies, parseLocalFontImportName, } from '../fonts/transform.
|
|
21
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
22
|
+
export { FontPipeline } from '../fonts/pipeline.ts';
|
|
23
|
+
export { generateFontId, extractFontConfig, detectDynamicFontCall, parseGoogleFontImports, parseGoogleFontFamilies, parseLocalFontImportName, } from '../fonts/transform.ts';
|
|
24
24
|
/**
|
|
25
25
|
* Create the timber-fonts Vite plugin.
|
|
26
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fonts.d.ts","sourceRoot":"","sources":["../../src/plugins/fonts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAiC,MAAM,MAAM,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA2B1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"fonts.d.ts","sourceRoot":"","sources":["../../src/plugins/fonts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAiC,MAAM,MAAM,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA2B1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAqPtD"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* graph-endpoint — `GET /__timber/graph` on the dev server.
|
|
3
|
+
*
|
|
4
|
+
* The fast path of design/47: when a dev server runs, the env module
|
|
5
|
+
* graphs are already resident and classification is a lookup. Serves
|
|
6
|
+
* the `timber graph` CLI (delegation lands with the fast-path ticket)
|
|
7
|
+
* and the VS Code extension, which additionally needs push updates on
|
|
8
|
+
* HMR — something a CLI cannot provide.
|
|
9
|
+
*
|
|
10
|
+
* Dev-only by construction: registered from the timber-dev-server
|
|
11
|
+
* plugin, which is `apply: 'serve'`; production builds contain none of
|
|
12
|
+
* this. Same JSON contract as the CLI, produced by the same
|
|
13
|
+
* classification module (analyze/live-graph.ts → classify/chains/
|
|
14
|
+
* poison-scan) — never a second implementation.
|
|
15
|
+
*
|
|
16
|
+
* Endpoint hygiene (§10): requests are validated against DNS rebinding
|
|
17
|
+
* consistent with Vite's own dev-endpoint protections — the Host
|
|
18
|
+
* header must be a localhost form or an allowed host (Vite's
|
|
19
|
+
* `server.allowedHosts` semantics, including leading-dot suffix
|
|
20
|
+
* entries), and a present Origin header must pass the same check. A
|
|
21
|
+
* CLI probe sends no Origin and passes; a browser on an attacker's
|
|
22
|
+
* page either fails the Host check (rebinding: Host is the attacker's
|
|
23
|
+
* domain) or the Origin check (direct cross-origin fetch).
|
|
24
|
+
*
|
|
25
|
+
* Push channel: `timber:graph-update` custom HMR events, one per
|
|
26
|
+
* project-source watcher event. The channel just emits — debounce is
|
|
27
|
+
* the consumer's concern (design/47 §"Dev-server endpoint").
|
|
28
|
+
*
|
|
29
|
+
* Design docs: 47-module-environment-tooling.md §10, 21-dev-server.md.
|
|
30
|
+
*/
|
|
31
|
+
import type { ViteDevServer } from 'vite';
|
|
32
|
+
import type { IncomingMessage, ServerResponse } from 'node:http';
|
|
33
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
34
|
+
export declare const GRAPH_ENDPOINT_PATH = "/__timber/graph";
|
|
35
|
+
/** HMR custom event name for graph-affecting file changes. */
|
|
36
|
+
export declare const GRAPH_UPDATE_EVENT = "timber:graph-update";
|
|
37
|
+
/**
|
|
38
|
+
* Host-header allowlist check, ported branch-for-branch from Vite's
|
|
39
|
+
* host-validation middleware (`isHostAllowedWithoutCache`) so this
|
|
40
|
+
* endpoint's reachability matches the rest of the dev server:
|
|
41
|
+
*
|
|
42
|
+
* - `allowedHosts: true` allows everything
|
|
43
|
+
* - a MISSING Host header is allowed (Vite parity — HTTP/1.0 probes)
|
|
44
|
+
* - any IP-literal host is allowed (`vite --host` LAN access sends
|
|
45
|
+
* `Host: 192.168.x.x:port`; rejecting it would 403 this endpoint
|
|
46
|
+
* while every other dev route works)
|
|
47
|
+
* - `localhost` and `*.localhost` are always allowed
|
|
48
|
+
* - allowedHosts entries: exact match, or `.suffix` subdomain entries
|
|
49
|
+
*/
|
|
50
|
+
export declare function isAllowedGraphHost(hostHeader: string | undefined, allowedHosts: true | string[] | undefined): boolean;
|
|
51
|
+
/** Origin check: absent is fine (CLI probe); present must pass the host allowlist. */
|
|
52
|
+
export declare function isAllowedGraphOrigin(originHeader: string | undefined, allowedHosts: true | string[] | undefined): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Create the Connect middleware handling GET /__timber/graph.
|
|
55
|
+
*
|
|
56
|
+
* Query surface: `?file=<path>` (absolute or project-root-relative) or
|
|
57
|
+
* `?all=1`. Anything else is a 400 — fail loudly, like the CLI.
|
|
58
|
+
*/
|
|
59
|
+
export declare function createGraphEndpointMiddleware(server: ViteDevServer, ctx: PluginContext): (req: IncomingMessage, res: ServerResponse, next: () => void) => Promise<void>;
|
|
60
|
+
/** What one hotUpdate invocation tells the emitter. */
|
|
61
|
+
export interface GraphHotUpdate {
|
|
62
|
+
file: string;
|
|
63
|
+
/** Vite's own hotUpdate vocabulary. */
|
|
64
|
+
type: 'create' | 'update' | 'delete';
|
|
65
|
+
/** Environment the hook ran for (rsc/ssr/client). */
|
|
66
|
+
environment: string;
|
|
67
|
+
}
|
|
68
|
+
/** The push channel's two notification points for one edit. */
|
|
69
|
+
export interface GraphUpdateChannel {
|
|
70
|
+
/** Feed from the plugin's hotUpdate hook (post graph invalidation). */
|
|
71
|
+
onHotUpdate(update: GraphHotUpdate): void;
|
|
72
|
+
/**
|
|
73
|
+
* Feed from the plugin's transform hook (module id, may carry a
|
|
74
|
+
* query suffix). Emits phase "transformed" for files with a pending
|
|
75
|
+
* invalidation, once their import edges are actually rebuilt.
|
|
76
|
+
*/
|
|
77
|
+
onTransform(id: string, environment: string): void;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Accessor the channel uses to decide when a re-transforming module's
|
|
81
|
+
* graph data is current: Vite stores the node's `transformResult` only
|
|
82
|
+
* at the END of the transform request — after `vite:import-analysis`
|
|
83
|
+
* has rebuilt the importer edges — so a non-null result is the
|
|
84
|
+
* edges-are-current signal.
|
|
85
|
+
*/
|
|
86
|
+
export type IsNodeTransformed = (file: string, environment: string) => boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Build the push channel: `timber:graph-update` custom HMR events per
|
|
89
|
+
* project-source change. Consumers (the VS Code extension) re-query
|
|
90
|
+
* and debounce on their side; the channel just emits. Non-source noise
|
|
91
|
+
* (build output, dotdirs) is filtered by the same extension set the
|
|
92
|
+
* scanners use.
|
|
93
|
+
*
|
|
94
|
+
* Two phases per edit, because one is not enough (codex review, PR
|
|
95
|
+
* #1057): the `invalidated` event fires from the plugin's `hotUpdate`
|
|
96
|
+
* hook — after Vite clears the module's transform result, but its
|
|
97
|
+
* importer EDGES are only rebuilt when the module is next transformed.
|
|
98
|
+
* The `transformed` event fires for exactly the files with a pending
|
|
99
|
+
* invalidation, and only once the node's `transformResult` is set
|
|
100
|
+
* again — the plugin transform hook itself runs BEFORE Vite's trailing
|
|
101
|
+
* `vite:import-analysis` (which rebuilds the edges), so the hook only
|
|
102
|
+
* marks the file "settling" and a short bounded timer confirms
|
|
103
|
+
* completion via `isTransformed` before emitting. (A module nothing
|
|
104
|
+
* re-requests never re-transforms — its `transformed` event waits for
|
|
105
|
+
* the next render, which is also when the graph has new information.)
|
|
106
|
+
*/
|
|
107
|
+
export declare function makeGraphUpdateChannel(ctx: Pick<PluginContext, 'root' | 'config'>, send: (payload: {
|
|
108
|
+
type: 'custom';
|
|
109
|
+
event: string;
|
|
110
|
+
data: unknown;
|
|
111
|
+
}) => void, isTransformed?: IsNodeTransformed, canonicalize?: (file: string) => string): GraphUpdateChannel;
|
|
112
|
+
//# sourceMappingURL=graph-endpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-endpoint.d.ts","sourceRoot":"","sources":["../../src/plugins/graph-endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAE1C,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAIjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAI1D,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAErD,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,YAAY,EAAE,IAAI,GAAG,MAAM,EAAE,GAAG,SAAS,GACxC,OAAO,CAwBT;AAqBD,sFAAsF;AACtF,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,YAAY,EAAE,IAAI,GAAG,MAAM,EAAE,GAAG,SAAS,GACxC,OAAO,CA2BT;AAsBD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,SAElE,eAAe,OAAO,cAAc,QAAQ,MAAM,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC,CAkM1F;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC,uEAAuE;IACvE,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1C;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACpD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,QAAQ,CAAC,EAC3C,IAAI,EAAE,CAAC,OAAO,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,KAAK,IAAI,EACzE,aAAa,CAAC,EAAE,iBAAiB,EAMjC,YAAY,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAuB,GACtD,kBAAkB,CA2GpB"}
|
package/dist/plugins/mdx.d.ts
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* Design doc: 20-content-collections.md §"The timber-mdx Plugin"
|
|
21
21
|
*/
|
|
22
22
|
import type { Plugin } from 'vite';
|
|
23
|
-
import type { PluginContext } from '../plugin-context.
|
|
23
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
24
24
|
/**
|
|
25
25
|
* Check if mdx-components.tsx (or .ts, .jsx, .js) exists at the project root
|
|
26
26
|
* or in src/. Root takes precedence, matching Next.js behavior.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mdx.d.ts","sourceRoot":"","sources":["../../src/plugins/mdx.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAKnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"mdx.d.ts","sourceRoot":"","sources":["../../src/plugins/mdx.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAKnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK1D;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAelE;AAqED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CA4HpD"}
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
* call timber.cache), and it only happens when the app actually declares
|
|
25
25
|
* prebuilt components.
|
|
26
26
|
*/
|
|
27
|
-
import type { PluginContext } from '../plugin-context.
|
|
28
|
-
import type { CaptureSummary, CapturedEntry } from '../server/prebuilt-builder.
|
|
27
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
28
|
+
import type { CaptureSummary, CapturedEntry } from '../server/prebuilt-builder.ts';
|
|
29
29
|
export interface PrebuiltArtifactWriter {
|
|
30
30
|
write(entry: CapturedEntry): Promise<void>;
|
|
31
31
|
/** Write manifest.json (if any entries exist). Returns the entry count. */
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* pass re-checks the real options at runtime and skips), under-inclusion
|
|
12
12
|
* would silently skip prerendering.
|
|
13
13
|
*/
|
|
14
|
-
import type { CallExpressionNode, PositionedNode } from './callsite-ast.
|
|
14
|
+
import type { CallExpressionNode, PositionedNode } from './callsite-ast.ts';
|
|
15
15
|
/** Unwrap TS expression wrappers (`as`, `satisfies`, `!`, parens). */
|
|
16
16
|
export declare function unwrapExpression(node: PositionedNode): PositionedNode;
|
|
17
17
|
/**
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
* See TIM-1118, design/44-render-at-build-time.md, design/45-cache-lifetimes.md.
|
|
58
58
|
*/
|
|
59
59
|
import type { Plugin } from 'vite';
|
|
60
|
-
import type { PluginContext } from '../plugin-context.
|
|
60
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
61
61
|
/**
|
|
62
62
|
* Generate the stable component ID for a cache.component() call site:
|
|
63
63
|
* `<sanitized-name>_<content-hash16>`. Exported for testing.
|
|
@@ -11,31 +11,28 @@
|
|
|
11
11
|
* `export const prerender` to descendant pages via most-specific-wins:
|
|
12
12
|
* walk the segment tree from leaf to root, first explicit value wins.
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* Propagation.
|
|
14
|
+
* Layout declarations are propagation policy only. Layouts receive the real
|
|
15
|
+
* descendant React element as `children` to preserve the server-layout
|
|
16
|
+
* containment boundary, so their props are not cache-keyable and the layout
|
|
17
|
+
* itself must not be registered for capture.
|
|
19
18
|
*
|
|
20
19
|
* This transform runs BEFORE timber-prebuilt so the generated
|
|
21
20
|
* `cache.component(...)` call is picked up by the callsite rewrite.
|
|
22
21
|
*/
|
|
23
22
|
import type { Plugin } from 'vite';
|
|
24
|
-
import type { PluginContext } from '../plugin-context.
|
|
25
|
-
import type { SegmentNode } from '../routing/types.
|
|
26
|
-
import { type PrerenderExportValue } from '../routing/export-detect.
|
|
23
|
+
import type { PluginContext } from '../plugin-context.ts';
|
|
24
|
+
import type { SegmentNode } from '../routing/types.ts';
|
|
25
|
+
import { type PrerenderExportValue } from '../routing/export-detect.ts';
|
|
27
26
|
/**
|
|
28
27
|
* Walk the segment tree and resolve the effective prerender value for
|
|
29
|
-
* every page
|
|
28
|
+
* every page. Returns a map from page file path to resolved value.
|
|
30
29
|
*
|
|
31
30
|
* **Pages:** walk from leaf toward root; first explicit `export const prerender`
|
|
32
31
|
* wins (page > nearest layout > ... > root layout). If none, dynamic.
|
|
33
32
|
*
|
|
34
|
-
* **Layouts:**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* inherit from ancestors, because wrapping a layout's shell without the
|
|
38
|
-
* author's explicit opt-in would cache content they may expect to be dynamic.
|
|
33
|
+
* **Layouts:** declarations propagate to descendant pages but layouts are not
|
|
34
|
+
* included in the result. Their real React-element `children` preserve secure
|
|
35
|
+
* containment and deliberately make child-independent layout caching invalid.
|
|
39
36
|
*/
|
|
40
37
|
export declare function resolvePagePrerender(root: SegmentNode): Map<string, PrerenderExportValue>;
|
|
41
38
|
export declare function timberPrerenderSugar(ctx: PluginContext): Plugin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prerender-sugar.d.ts","sourceRoot":"","sources":["../../src/plugins/prerender-sugar.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"prerender-sugar.d.ts","sourceRoot":"","sources":["../../src/plugins/prerender-sugar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAa,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAsB,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAY5F;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CA2BzF;AAuFD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CA4J/D"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*
|
|
17
17
|
* See design/19-client-navigation.md §"Why the slot comparison ignores the query".
|
|
18
18
|
*/
|
|
19
|
-
import type { ProgramNode } from '../callsite-ast.
|
|
19
|
+
import type { ProgramNode } from '../callsite-ast.ts';
|
|
20
20
|
/**
|
|
21
21
|
* One module-graph edge introduced by an `import` or `export … from`.
|
|
22
22
|
*
|