@nifrajs/web 5.5.1 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +243 -0
- package/README.md +21 -11
- package/dist/boundary.d.ts +67 -7
- package/dist/boundary.d.ts.map +1 -1
- package/dist/boundary.js +6 -4
- package/dist/boundary.js.map +1 -1
- package/dist/build-plan.d.ts +3 -0
- package/dist/build-plan.d.ts.map +1 -1
- package/dist/build-plan.js.map +1 -1
- package/dist/build-vite.d.ts.map +1 -1
- package/dist/build-vite.js +2 -0
- package/dist/build-vite.js.map +1 -1
- package/dist/build.d.ts +9 -2
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +10 -0
- package/dist/build.js.map +1 -1
- package/dist/client.d.ts +3 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +174 -23
- package/dist/client.js.map +1 -1
- package/dist/csp.d.ts +8 -0
- package/dist/csp.d.ts.map +1 -1
- package/dist/csp.js +11 -2
- package/dist/csp.js.map +1 -1
- package/dist/deferred.d.ts +6 -4
- package/dist/deferred.d.ts.map +1 -1
- package/dist/deferred.js +10 -6
- package/dist/deferred.js.map +1 -1
- package/dist/dev-feed.d.ts.map +1 -1
- package/dist/dev-feed.js +11 -2
- package/dist/dev-feed.js.map +1 -1
- package/dist/dev-session.d.ts.map +1 -1
- package/dist/dev-session.js +13 -6
- package/dist/dev-session.js.map +1 -1
- package/dist/dev.d.ts +4 -1
- package/dist/dev.d.ts.map +1 -1
- package/dist/dev.js +12 -5
- package/dist/dev.js.map +1 -1
- package/dist/diagnostic-catalog.d.ts +4 -0
- package/dist/diagnostic-catalog.d.ts.map +1 -1
- package/dist/diagnostic-catalog.js +48 -0
- package/dist/diagnostic-catalog.js.map +1 -1
- package/dist/diagnostic.d.ts +1 -1
- package/dist/diagnostic.d.ts.map +1 -1
- package/dist/diagnostic.js +1 -1
- package/dist/diagnostic.js.map +1 -1
- package/dist/fn.d.ts +5 -3
- package/dist/fn.d.ts.map +1 -1
- package/dist/fn.js +20 -5
- package/dist/fn.js.map +1 -1
- package/dist/fs.d.ts.map +1 -1
- package/dist/fs.js +13 -3
- package/dist/fs.js.map +1 -1
- package/dist/identity.d.ts +22 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +60 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +8 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/cdn/cloudflare.d.ts +2 -1
- package/dist/internal/cdn/cloudflare.d.ts.map +1 -1
- package/dist/internal/cdn/cloudflare.js +2 -1
- package/dist/internal/cdn/cloudflare.js.map +1 -1
- package/dist/internal/certified-components.d.ts +1 -1
- package/dist/internal/certified-components.js +1 -1
- package/dist/internal/codegen.d.ts +11 -10
- package/dist/internal/codegen.d.ts.map +1 -1
- package/dist/internal/codegen.js +73 -10
- package/dist/internal/codegen.js.map +1 -1
- package/dist/internal/dev-websocket.d.ts +73 -0
- package/dist/internal/dev-websocket.d.ts.map +1 -0
- package/dist/internal/dev-websocket.js +145 -0
- package/dist/internal/dev-websocket.js.map +1 -0
- package/dist/internal/hole-runtime.d.ts +66 -0
- package/dist/internal/hole-runtime.d.ts.map +1 -0
- package/dist/internal/hole-runtime.js +211 -0
- package/dist/internal/hole-runtime.js.map +1 -0
- package/dist/internal/identity-epoch.d.ts +50 -0
- package/dist/internal/identity-epoch.d.ts.map +1 -0
- package/dist/internal/identity-epoch.js +180 -0
- package/dist/internal/identity-epoch.js.map +1 -0
- package/dist/internal/invalidation-contract.d.ts +23 -0
- package/dist/internal/invalidation-contract.d.ts.map +1 -0
- package/dist/internal/invalidation-contract.js +11 -0
- package/dist/internal/invalidation-contract.js.map +1 -0
- package/dist/internal/invalidation.d.ts +62 -0
- package/dist/internal/invalidation.d.ts.map +1 -0
- package/dist/internal/invalidation.js +149 -0
- package/dist/internal/invalidation.js.map +1 -0
- package/dist/internal/island-bindings.d.ts +51 -0
- package/dist/internal/island-bindings.d.ts.map +1 -0
- package/dist/internal/island-bindings.js +147 -0
- package/dist/internal/island-bindings.js.map +1 -0
- package/dist/internal/island-list.d.ts +26 -0
- package/dist/internal/island-list.d.ts.map +1 -0
- package/dist/internal/island-list.js +78 -0
- package/dist/internal/island-list.js.map +1 -0
- package/dist/internal/island-mount.d.ts +4 -0
- package/dist/internal/island-mount.d.ts.map +1 -0
- package/dist/internal/island-mount.js +66 -0
- package/dist/internal/island-mount.js.map +1 -0
- package/dist/internal/island-owner.d.ts +5 -0
- package/dist/internal/island-owner.d.ts.map +1 -0
- package/dist/internal/island-owner.js +20 -0
- package/dist/internal/island-owner.js.map +1 -0
- package/dist/internal/island-resource.d.ts +30 -0
- package/dist/internal/island-resource.d.ts.map +1 -0
- package/dist/internal/island-resource.js +57 -0
- package/dist/internal/island-resource.js.map +1 -0
- package/dist/internal/island-signals.d.ts +51 -0
- package/dist/internal/island-signals.d.ts.map +1 -0
- package/dist/internal/island-signals.js +220 -0
- package/dist/internal/island-signals.js.map +1 -0
- package/dist/internal/keep-alive-table.d.ts +23 -0
- package/dist/internal/keep-alive-table.d.ts.map +1 -0
- package/dist/internal/keep-alive-table.js +53 -0
- package/dist/internal/keep-alive-table.js.map +1 -0
- package/dist/internal/live-contract.d.ts +101 -0
- package/dist/internal/live-contract.d.ts.map +1 -0
- package/dist/internal/live-contract.js +5 -0
- package/dist/internal/live-contract.js.map +1 -0
- package/dist/internal/live-queries.d.ts +22 -0
- package/dist/internal/live-queries.d.ts.map +1 -0
- package/dist/internal/live-queries.js +54 -0
- package/dist/internal/live-queries.js.map +1 -0
- package/dist/internal/page-events.d.ts +10 -0
- package/dist/internal/page-events.d.ts.map +1 -0
- package/dist/internal/page-events.js +26 -0
- package/dist/internal/page-events.js.map +1 -0
- package/dist/internal/page-execution.d.ts +16 -1
- package/dist/internal/page-execution.d.ts.map +1 -1
- package/dist/internal/page-execution.js +432 -31
- package/dist/internal/page-execution.js.map +1 -1
- package/dist/internal/parity.d.ts +3 -0
- package/dist/internal/parity.d.ts.map +1 -1
- package/dist/internal/parity.js +28 -5
- package/dist/internal/parity.js.map +1 -1
- package/dist/internal/ppr/admission.d.ts +83 -0
- package/dist/internal/ppr/admission.d.ts.map +1 -0
- package/dist/internal/ppr/admission.js +221 -0
- package/dist/internal/ppr/admission.js.map +1 -0
- package/dist/internal/ppr/canary.d.ts +24 -0
- package/dist/internal/ppr/canary.d.ts.map +1 -0
- package/dist/internal/ppr/canary.js +102 -0
- package/dist/internal/ppr/canary.js.map +1 -0
- package/dist/internal/ppr/compile-shell.d.ts +39 -0
- package/dist/internal/ppr/compile-shell.d.ts.map +1 -0
- package/dist/internal/ppr/compile-shell.js +298 -0
- package/dist/internal/ppr/compile-shell.js.map +1 -0
- package/dist/internal/ppr/contract.d.ts +177 -0
- package/dist/internal/ppr/contract.d.ts.map +1 -0
- package/dist/internal/ppr/contract.js +80 -0
- package/dist/internal/ppr/contract.js.map +1 -0
- package/dist/internal/ppr/frames.d.ts +71 -0
- package/dist/internal/ppr/frames.d.ts.map +1 -0
- package/dist/internal/ppr/frames.js +119 -0
- package/dist/internal/ppr/frames.js.map +1 -0
- package/dist/internal/ppr/integration.d.ts +19 -0
- package/dist/internal/ppr/integration.d.ts.map +1 -0
- package/dist/internal/ppr/integration.js +106 -0
- package/dist/internal/ppr/integration.js.map +1 -0
- package/dist/internal/ppr/options.d.ts +96 -0
- package/dist/internal/ppr/options.d.ts.map +1 -0
- package/dist/internal/ppr/options.js +125 -0
- package/dist/internal/ppr/options.js.map +1 -0
- package/dist/internal/ppr/route-rules.d.ts +12 -0
- package/dist/internal/ppr/route-rules.d.ts.map +1 -0
- package/dist/internal/ppr/route-rules.js +53 -0
- package/dist/internal/ppr/route-rules.js.map +1 -0
- package/dist/internal/ppr/runtime.d.ts +29 -0
- package/dist/internal/ppr/runtime.d.ts.map +1 -0
- package/dist/internal/ppr/runtime.js +35 -0
- package/dist/internal/ppr/runtime.js.map +1 -0
- package/dist/internal/ppr/server.d.ts +29 -0
- package/dist/internal/ppr/server.d.ts.map +1 -0
- package/dist/internal/ppr/server.js +1409 -0
- package/dist/internal/ppr/server.js.map +1 -0
- package/dist/internal/ppr/shell-store.d.ts +39 -0
- package/dist/internal/ppr/shell-store.d.ts.map +1 -0
- package/dist/internal/ppr/shell-store.js +106 -0
- package/dist/internal/ppr/shell-store.js.map +1 -0
- package/dist/internal/prerendered-pages.d.ts +1 -1
- package/dist/internal/prerendered-pages.d.ts.map +1 -1
- package/dist/internal/prerendered-pages.js +7 -4
- package/dist/internal/prerendered-pages.js.map +1 -1
- package/dist/internal/present.d.ts +11 -0
- package/dist/internal/present.d.ts.map +1 -0
- package/dist/internal/present.js +13 -0
- package/dist/internal/present.js.map +1 -0
- package/dist/internal/query-digest.d.ts +9 -0
- package/dist/internal/query-digest.d.ts.map +1 -0
- package/dist/internal/query-digest.js +23 -0
- package/dist/internal/query-digest.js.map +1 -0
- package/dist/internal/query-runtime.d.ts +6 -1
- package/dist/internal/query-runtime.d.ts.map +1 -1
- package/dist/internal/query-runtime.js +9 -0
- package/dist/internal/query-runtime.js.map +1 -1
- package/dist/internal/query-seam.d.ts +29 -0
- package/dist/internal/query-seam.d.ts.map +1 -0
- package/dist/internal/query-seam.js +23 -0
- package/dist/internal/query-seam.js.map +1 -0
- package/dist/internal/render-document.d.ts +34 -64
- package/dist/internal/render-document.d.ts.map +1 -1
- package/dist/internal/render-document.js +82 -64
- package/dist/internal/render-document.js.map +1 -1
- package/dist/internal/request-abort.d.ts +8 -0
- package/dist/internal/request-abort.d.ts.map +1 -0
- package/dist/internal/request-abort.js +22 -0
- package/dist/internal/request-abort.js.map +1 -0
- package/dist/internal/server-boundary.d.ts +2 -0
- package/dist/internal/server-boundary.d.ts.map +1 -1
- package/dist/internal/server-boundary.js +8 -1
- package/dist/internal/server-boundary.js.map +1 -1
- package/dist/internal/share-data.d.ts +10 -0
- package/dist/internal/share-data.d.ts.map +1 -0
- package/dist/internal/share-data.js +135 -0
- package/dist/internal/share-data.js.map +1 -0
- package/dist/internal/status-page.d.ts +68 -0
- package/dist/internal/status-page.d.ts.map +1 -0
- package/dist/internal/status-page.js +66 -0
- package/dist/internal/status-page.js.map +1 -0
- package/dist/internal/store-signature.d.ts +15 -0
- package/dist/internal/store-signature.d.ts.map +1 -0
- package/dist/internal/store-signature.js +114 -0
- package/dist/internal/store-signature.js.map +1 -0
- package/dist/internal/vite-plugin-compat.d.ts +2 -2
- package/dist/internal/vite-plugin-compat.js +2 -2
- package/dist/internal/web-app.d.ts +26 -0
- package/dist/internal/web-app.d.ts.map +1 -1
- package/dist/internal/web-app.js +79 -3
- package/dist/internal/web-app.js.map +1 -1
- package/dist/islands-swap.d.ts +41 -0
- package/dist/islands-swap.d.ts.map +1 -0
- package/dist/islands-swap.js +270 -0
- package/dist/islands-swap.js.map +1 -0
- package/dist/islands.d.ts +86 -24
- package/dist/islands.d.ts.map +1 -1
- package/dist/islands.js +138 -78
- package/dist/islands.js.map +1 -1
- package/dist/isr.d.ts +67 -13
- package/dist/isr.d.ts.map +1 -1
- package/dist/isr.js +247 -99
- package/dist/isr.js.map +1 -1
- package/dist/keep-alive.d.ts +147 -0
- package/dist/keep-alive.d.ts.map +1 -0
- package/dist/keep-alive.js +1102 -0
- package/dist/keep-alive.js.map +1 -0
- package/dist/live/bus.d.ts +70 -0
- package/dist/live/bus.d.ts.map +1 -0
- package/dist/live/bus.js +55 -0
- package/dist/live/bus.js.map +1 -0
- package/dist/live/core.d.ts +25 -0
- package/dist/live/core.d.ts.map +1 -0
- package/dist/live/core.js +29 -0
- package/dist/live/core.js.map +1 -0
- package/dist/live/history.d.ts +38 -0
- package/dist/live/history.d.ts.map +1 -0
- package/dist/live/history.js +104 -0
- package/dist/live/history.js.map +1 -0
- package/dist/live/hub-protocol.d.ts +46 -0
- package/dist/live/hub-protocol.d.ts.map +1 -0
- package/dist/live/hub-protocol.js +108 -0
- package/dist/live/hub-protocol.js.map +1 -0
- package/dist/live/hub.d.ts +185 -0
- package/dist/live/hub.d.ts.map +1 -0
- package/dist/live/hub.js +544 -0
- package/dist/live/hub.js.map +1 -0
- package/dist/live/keyring.d.ts +92 -0
- package/dist/live/keyring.d.ts.map +1 -0
- package/dist/live/keyring.js +265 -0
- package/dist/live/keyring.js.map +1 -0
- package/dist/live/read-capped.d.ts +6 -0
- package/dist/live/read-capped.d.ts.map +1 -0
- package/dist/live/read-capped.js +42 -0
- package/dist/live/read-capped.js.map +1 -0
- package/dist/live/revocations.d.ts +52 -0
- package/dist/live/revocations.d.ts.map +1 -0
- package/dist/live/revocations.js +116 -0
- package/dist/live/revocations.js.map +1 -0
- package/dist/live/settings.d.ts +14 -0
- package/dist/live/settings.d.ts.map +1 -0
- package/dist/live/settings.js +38 -0
- package/dist/live/settings.js.map +1 -0
- package/dist/live-client.d.ts +34 -0
- package/dist/live-client.d.ts.map +1 -0
- package/dist/live-client.js +878 -0
- package/dist/live-client.js.map +1 -0
- package/dist/live-hub.d.ts +130 -0
- package/dist/live-hub.d.ts.map +1 -0
- package/dist/live-hub.js +507 -0
- package/dist/live-hub.js.map +1 -0
- package/dist/live-redis.d.ts +60 -0
- package/dist/live-redis.d.ts.map +1 -0
- package/dist/live-redis.js +212 -0
- package/dist/live-redis.js.map +1 -0
- package/dist/live.d.ts +150 -0
- package/dist/live.d.ts.map +1 -0
- package/dist/live.js +972 -0
- package/dist/live.js.map +1 -0
- package/dist/manifest.d.ts +113 -2
- package/dist/manifest.d.ts.map +1 -1
- package/dist/manifest.js +109 -5
- package/dist/manifest.js.map +1 -1
- package/dist/navigation.d.ts +9 -3
- package/dist/navigation.d.ts.map +1 -1
- package/dist/navigation.js +13 -3
- package/dist/navigation.js.map +1 -1
- package/dist/plugins/vite-zone-guard.d.ts +6 -0
- package/dist/plugins/vite-zone-guard.d.ts.map +1 -1
- package/dist/plugins/vite-zone-guard.js +8 -2
- package/dist/plugins/vite-zone-guard.js.map +1 -1
- package/dist/ppr.d.ts +73 -0
- package/dist/ppr.d.ts.map +1 -0
- package/dist/ppr.js +76 -0
- package/dist/ppr.js.map +1 -0
- package/dist/query.d.ts +8 -13
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +112 -18
- package/dist/query.js.map +1 -1
- package/dist/render-seam.d.ts +32 -0
- package/dist/render-seam.d.ts.map +1 -1
- package/dist/render-seam.js +7 -0
- package/dist/render-seam.js.map +1 -1
- package/dist/route-types.d.ts.map +1 -1
- package/dist/route-types.js +2 -2
- package/dist/route-types.js.map +1 -1
- package/dist/router.d.ts +72 -4
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +416 -129
- package/dist/router.js.map +1 -1
- package/dist/server-components/build.d.ts.map +1 -1
- package/dist/server-components/build.js +3 -3
- package/dist/server-components/build.js.map +1 -1
- package/dist/server-components/client.d.ts +23 -1
- package/dist/server-components/client.d.ts.map +1 -1
- package/dist/server-components/client.js +92 -5
- package/dist/server-components/client.js.map +1 -1
- package/dist/server-components/definition.d.ts.map +1 -1
- package/dist/server-components/definition.js +2 -1
- package/dist/server-components/definition.js.map +1 -1
- package/dist/server-components/hole.d.ts +8 -0
- package/dist/server-components/hole.d.ts.map +1 -0
- package/dist/server-components/hole.js +20 -0
- package/dist/server-components/hole.js.map +1 -0
- package/dist/server-components/html-policy.d.ts.map +1 -1
- package/dist/server-components/html-policy.js +62 -4
- package/dist/server-components/html-policy.js.map +1 -1
- package/dist/server-components/html-scan.d.ts +17 -0
- package/dist/server-components/html-scan.d.ts.map +1 -0
- package/dist/server-components/html-scan.js +180 -0
- package/dist/server-components/html-scan.js.map +1 -0
- package/dist/server-components/html.d.ts.map +1 -1
- package/dist/server-components/html.js +19 -4
- package/dist/server-components/html.js.map +1 -1
- package/dist/server-components/router-integration.d.ts +4 -1
- package/dist/server-components/router-integration.d.ts.map +1 -1
- package/dist/server-components/router-integration.js +23 -2
- package/dist/server-components/router-integration.js.map +1 -1
- package/dist/server-components/runtime.d.ts +6 -1
- package/dist/server-components/runtime.d.ts.map +1 -1
- package/dist/server-components/runtime.js +88 -29
- package/dist/server-components/runtime.js.map +1 -1
- package/dist/server-components/state.d.ts +3 -1
- package/dist/server-components/state.d.ts.map +1 -1
- package/dist/server-components/state.js +50 -38
- package/dist/server-components/state.js.map +1 -1
- package/dist/server-components/types.d.ts +9 -0
- package/dist/server-components/types.d.ts.map +1 -1
- package/dist/server-components/vite.d.ts.map +1 -1
- package/dist/server-components/vite.js +26 -9
- package/dist/server-components/vite.js.map +1 -1
- package/dist/vite.d.ts +5 -1
- package/dist/vite.d.ts.map +1 -1
- package/dist/vite.js +58 -4
- package/dist/vite.js.map +1 -1
- package/package.json +48 -8
- package/src/boundary.ts +77 -5
- package/src/build-plan.ts +3 -0
- package/src/build-vite.ts +2 -0
- package/src/build.ts +20 -1
- package/src/client.ts +183 -23
- package/src/csp.ts +16 -2
- package/src/deferred.ts +11 -5
- package/src/dev-feed.ts +11 -2
- package/src/dev-session.ts +22 -11
- package/src/dev.ts +29 -8
- package/src/diagnostic-catalog.ts +53 -0
- package/src/diagnostic.ts +1 -0
- package/src/fn.ts +24 -7
- package/src/fs.ts +22 -8
- package/src/identity.ts +61 -0
- package/src/index.ts +20 -4
- package/src/internal/cdn/cloudflare.ts +2 -1
- package/src/internal/certified-components.ts +1 -1
- package/src/internal/codegen.ts +95 -9
- package/src/internal/dev-websocket.ts +230 -0
- package/src/internal/hole-runtime.ts +286 -0
- package/src/internal/identity-epoch.ts +239 -0
- package/src/internal/invalidation-contract.ts +35 -0
- package/src/internal/invalidation.ts +213 -0
- package/src/internal/island-bindings.ts +191 -0
- package/src/internal/island-list.ts +92 -0
- package/src/internal/island-mount.ts +68 -0
- package/src/internal/island-owner.ts +20 -0
- package/src/internal/island-resource.ts +76 -0
- package/src/internal/island-signals.ts +249 -0
- package/src/internal/keep-alive-table.ts +72 -0
- package/src/internal/live-contract.ts +111 -0
- package/src/internal/live-queries.ts +60 -0
- package/src/internal/page-events.ts +27 -0
- package/src/internal/page-execution.ts +605 -45
- package/src/internal/parity.ts +35 -6
- package/src/internal/ppr/admission.ts +300 -0
- package/src/internal/ppr/canary.ts +122 -0
- package/src/internal/ppr/compile-shell.ts +379 -0
- package/src/internal/ppr/contract.ts +265 -0
- package/src/internal/ppr/frames.ts +170 -0
- package/src/internal/ppr/integration.ts +137 -0
- package/src/internal/ppr/options.ts +221 -0
- package/src/internal/ppr/route-rules.ts +77 -0
- package/src/internal/ppr/runtime.ts +39 -0
- package/src/internal/ppr/server.ts +1766 -0
- package/src/internal/ppr/shell-store.ts +152 -0
- package/src/internal/prerendered-pages.ts +7 -4
- package/src/internal/present.ts +20 -0
- package/src/internal/query-digest.ts +34 -0
- package/src/internal/query-runtime.ts +14 -1
- package/src/internal/query-seam.ts +48 -0
- package/src/internal/render-document.ts +158 -113
- package/src/internal/request-abort.ts +26 -0
- package/src/internal/server-boundary.ts +10 -1
- package/src/internal/share-data.ts +136 -0
- package/src/internal/status-page.ts +95 -0
- package/src/internal/store-signature.ts +149 -0
- package/src/internal/vite-plugin-compat.ts +2 -2
- package/src/internal/web-app.ts +123 -3
- package/src/islands-swap.ts +283 -0
- package/src/islands.ts +169 -72
- package/src/isr.ts +348 -106
- package/src/keep-alive.ts +1354 -0
- package/src/live/bus.ts +104 -0
- package/src/live/core.ts +52 -0
- package/src/live/history.ts +109 -0
- package/src/live/hub-protocol.ts +133 -0
- package/src/live/hub.ts +620 -0
- package/src/live/keyring.ts +384 -0
- package/src/live/read-capped.ts +36 -0
- package/src/live/revocations.ts +155 -0
- package/src/live/settings.ts +46 -0
- package/src/live-client.ts +1011 -0
- package/src/live-hub.ts +658 -0
- package/src/live-redis.ts +284 -0
- package/src/live.ts +1257 -0
- package/src/manifest.ts +274 -6
- package/src/navigation.ts +14 -2
- package/src/plugins/vite-zone-guard.ts +15 -2
- package/src/ppr.ts +153 -0
- package/src/query.ts +147 -20
- package/src/render-seam.ts +37 -0
- package/src/route-types.ts +3 -1
- package/src/router.ts +534 -132
- package/src/server-components/build.ts +9 -3
- package/src/server-components/client.ts +89 -5
- package/src/server-components/definition.ts +2 -1
- package/src/server-components/hole.ts +23 -0
- package/src/server-components/html-policy.ts +63 -4
- package/src/server-components/html-scan.ts +159 -0
- package/src/server-components/html.ts +18 -4
- package/src/server-components/router-integration.ts +21 -2
- package/src/server-components/runtime.ts +114 -31
- package/src/server-components/state.ts +66 -44
- package/src/server-components/types.ts +16 -0
- package/src/server-components/vite.ts +33 -14
- package/src/vite.ts +75 -6
- package/dist/nano.d.ts +0 -125
- package/dist/nano.d.ts.map +0 -1
- package/dist/nano.js +0 -190
- package/dist/nano.js.map +0 -1
- package/src/nano.ts +0 -246
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/server-components/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/server-components/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../src/server-components/definition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../src/server-components/definition.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,YAAY,CAAA;AAmBnB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EACtD,UAAU,EAAE,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,EACzD,SAAS,CAAC,EAAE,MAAM,GACjB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAmBrC;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAIhF;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAAG;AAEpD,0FAA0F;AAC1F,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAC7D,SAAS,EAAE,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,EAC9C,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,sBAAsB,GAC1B,OAAO,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAM/C;AACD,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,sBAAsB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAejB;AACD,wBAAsB,gCAAgC,CACpD,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,uBAAuB,CAAC,CAalC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { narrowCapabilityContext } from "@nifrajs/core/capabilities";
|
|
2
2
|
import { validateStandard } from "@nifrajs/core/schema";
|
|
3
3
|
import { outputGuard, runGuard } from "../internal/output-guard.js";
|
|
4
|
-
import { isControlFlow
|
|
4
|
+
import { isControlFlow } from "../internal/render-document.js";
|
|
5
|
+
import { isStatusSignal } from "../internal/status-page.js";
|
|
5
6
|
import { ServerComponentError } from "./error.js";
|
|
6
7
|
import { assertComponentSchema, componentValue } from "./schema.js";
|
|
7
8
|
const definitions = new WeakMap();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition.js","sourceRoot":"","sources":["../../src/server-components/definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"definition.js","sourceRoot":"","sources":["../../src/server-components/definition.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ServerComponent } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* A `dynamic` hole's `render`: the hole shows `component`, given the hole loader's output as its
|
|
4
|
+
* input. The page's app lists the component under `createServerComponents({ holes })` for the route.
|
|
5
|
+
* The hole cannot be `interactive`; its client islands are.
|
|
6
|
+
*/
|
|
7
|
+
export declare function serverHole<Input, Props, View>(component: ServerComponent<Input, Props, View>): (data: Input) => never;
|
|
8
|
+
//# sourceMappingURL=hole.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hole.d.ts","sourceRoot":"","sources":["../../src/server-components/hole.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEjD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAC3C,SAAS,EAAE,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,GAC7C,CAAC,IAAI,EAAE,KAAK,KAAK,KAAK,CAMxB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Experimental: a partially prerendered hole whose content is a server component. The hole's loader
|
|
3
|
+
* returns the component's input; the server runs the component for each visitor and sends its HTML,
|
|
4
|
+
* and the browser mounts only the client islands inside it. Under the coordinated compiler a browser
|
|
5
|
+
* import of a `*.component.server` module is an opaque handle, so the component never ships.
|
|
6
|
+
*/
|
|
7
|
+
import { SERVER_HOLE } from "../internal/ppr/contract.js";
|
|
8
|
+
/**
|
|
9
|
+
* A `dynamic` hole's `render`: the hole shows `component`, given the hole loader's output as its
|
|
10
|
+
* input. The page's app lists the component under `createServerComponents({ holes })` for the route.
|
|
11
|
+
* The hole cannot be `interactive`; its client islands are.
|
|
12
|
+
*/
|
|
13
|
+
export function serverHole(component) {
|
|
14
|
+
const render = () => {
|
|
15
|
+
throw new Error("[nifra/web] a server component hole renders on the server only");
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(render, SERVER_HOLE, { value: component });
|
|
18
|
+
return Object.freeze(render);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=hole.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hole.js","sourceRoot":"","sources":["../../src/server-components/hole.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAGzD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,SAA8C;IAE9C,MAAM,MAAM,GAAG,GAAU,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;IACnF,CAAC,CAAA;IACD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAChE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-policy.d.ts","sourceRoot":"","sources":["../../src/server-components/html-policy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"html-policy.d.ts","sourceRoot":"","sources":["../../src/server-components/html-policy.ts"],"names":[],"mappings":"AA2GA,qFAAqF;AACrF,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,EACtD,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAC3B,IAAI,CAwCN"}
|
|
@@ -34,9 +34,58 @@ const urls = new Set([
|
|
|
34
34
|
"data",
|
|
35
35
|
"codebase",
|
|
36
36
|
]);
|
|
37
|
+
const IMAGE_HINT = new Set([
|
|
38
|
+
"rel",
|
|
39
|
+
"as",
|
|
40
|
+
"href",
|
|
41
|
+
"imagesrcset",
|
|
42
|
+
"imagesizes",
|
|
43
|
+
"crossorigin",
|
|
44
|
+
"fetchpriority",
|
|
45
|
+
"referrerpolicy",
|
|
46
|
+
]);
|
|
37
47
|
const fail = () => {
|
|
38
48
|
throw new ServerComponentError("component_protocol", 400);
|
|
39
49
|
};
|
|
50
|
+
const unsafeUrl = (value) => /^(?:javascript|vbscript|data):/.test(
|
|
51
|
+
// biome-ignore lint/suspicious/noControlCharactersInRegex: Browsers discard these controls when interpreting URL schemes.
|
|
52
|
+
value.replace(/[\u0000-\u0020\u007f]/g, "").toLowerCase());
|
|
53
|
+
const isSpace = (char) => char === " " || char === "\t" || char === "\n" || char === "\f" || char === "\r";
|
|
54
|
+
/**
|
|
55
|
+
* The image candidate URLs of a `srcset`, split as the HTML standard's "parse a srcset attribute"
|
|
56
|
+
* splits them, so each is the URL a browser would fetch: a URL is a run without whitespace, and its
|
|
57
|
+
* descriptors end at the first comma outside parentheses.
|
|
58
|
+
*/
|
|
59
|
+
function srcsetUrls(value) {
|
|
60
|
+
const found = [];
|
|
61
|
+
let at = 0;
|
|
62
|
+
while (at < value.length) {
|
|
63
|
+
while (at < value.length && (isSpace(value[at] ?? "") || value[at] === ","))
|
|
64
|
+
at++;
|
|
65
|
+
const start = at;
|
|
66
|
+
while (at < value.length && !isSpace(value[at] ?? ""))
|
|
67
|
+
at++;
|
|
68
|
+
const url = value.slice(start, at);
|
|
69
|
+
if (url === "")
|
|
70
|
+
break;
|
|
71
|
+
if (url.endsWith(",")) {
|
|
72
|
+
found.push(url.replace(/,+$/, ""));
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
found.push(url);
|
|
76
|
+
let inParens = false;
|
|
77
|
+
for (; at < value.length; at++) {
|
|
78
|
+
const char = value[at];
|
|
79
|
+
if (char === "(")
|
|
80
|
+
inParens = true;
|
|
81
|
+
else if (char === ")")
|
|
82
|
+
inParens = false;
|
|
83
|
+
else if (char === "," && !inParens)
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return found;
|
|
88
|
+
}
|
|
40
89
|
function css(value) {
|
|
41
90
|
return (value
|
|
42
91
|
.replace(/\/\*[\s\S]*?\*\//g, "")
|
|
@@ -51,6 +100,15 @@ function css(value) {
|
|
|
51
100
|
export function validateComponentTag(tag, attributes, assets) {
|
|
52
101
|
if (tag.toLowerCase() === "link" && assets !== undefined) {
|
|
53
102
|
const attrs = new Map(attributes.map((attribute) => [attribute.name.toLowerCase(), attribute.value]));
|
|
103
|
+
// React writes an image's preload hint ahead of each `<img>` it renders without a document. Like
|
|
104
|
+
// every hint here it is cut from the range, so it only has to be a well-formed image hint.
|
|
105
|
+
if (attrs.get("rel") === "preload" && attrs.get("as") === "image") {
|
|
106
|
+
if ([...attrs.keys()].some((name) => !IMAGE_HINT.has(name)) ||
|
|
107
|
+
unsafeUrl(attrs.get("href") ?? "") ||
|
|
108
|
+
srcsetUrls(attrs.get("imagesrcset") ?? "").some(unsafeUrl))
|
|
109
|
+
fail();
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
54
112
|
if (!["preload", "modulepreload"].includes(attrs.get("rel") ?? "") ||
|
|
55
113
|
!assets.has(attrs.get("href") ?? "") ||
|
|
56
114
|
[...attrs.keys()].some((name) => !["rel", "href", "as", "crossorigin", "fetchpriority"].includes(name)))
|
|
@@ -61,11 +119,11 @@ export function validateComponentTag(tag, attributes, assets) {
|
|
|
61
119
|
fail();
|
|
62
120
|
for (const attribute of attributes) {
|
|
63
121
|
const name = attribute.name.toLowerCase();
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
if (
|
|
122
|
+
if (name.startsWith("on") || ["srcdoc", "is", "ping"].includes(name))
|
|
123
|
+
fail();
|
|
124
|
+
if (urls.has(name) && unsafeUrl(attribute.value))
|
|
67
125
|
fail();
|
|
68
|
-
if (
|
|
126
|
+
if (name === "srcset" && srcsetUrls(attribute.value).some(unsafeUrl))
|
|
69
127
|
fail();
|
|
70
128
|
if (name === "style" &&
|
|
71
129
|
/expression\(|@import|(?:javascript|vbscript|data):|-moz-binding|behavior:/.test(css(attribute.value)))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-policy.js","sourceRoot":"","sources":["../../src/server-components/html-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEjD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,UAAU;IACV,KAAK;IACL,SAAS;IACT,UAAU;IACV,WAAW;IACX,OAAO;IACP,UAAU;IACV,SAAS;IACT,eAAe;IACf,kBAAkB;IAClB,KAAK;CACN,CAAC,CAAA;AACF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC;IACnB,MAAM;IACN,KAAK;IACL,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,MAAM;IACN,UAAU;CACX,CAAC,CAAA;AACF,MAAM,IAAI,GAAG,GAAU,EAAE;IACvB,MAAM,IAAI,oBAAoB,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;AAC3D,CAAC,CAAA;AAED,SAAS,GAAG,CAAC,KAAa;IACxB,OAAO,CACL,KAAK;SACF,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;SAChC,OAAO,CACN,oCAAoC,EACpC,CAAC,IAAI,EAAE,GAAuB,EAAE,IAAwB,EAAE,EAAE,CAC1D,GAAG,KAAK,SAAS;QACf,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAClE;QACD,2HAA2H;SAC1H,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;SACrC,WAAW,EAAE,CACjB,CAAA;AACH,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,oBAAoB,CAClC,GAAW,EACX,UAAsD,EACtD,MAA4B;IAE5B,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,IAAI,GAAG,CACnB,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAC/E,CAAA;QACD,IACE,CAAC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC9D,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACpC,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CACpB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAChF;YAED,IAAI,EAAE,CAAA;QACR,OAAM;IACR,CAAC;IACD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAAE,IAAI,EAAE,CAAA;IAC5C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAA;QACzC,
|
|
1
|
+
{"version":3,"file":"html-policy.js","sourceRoot":"","sources":["../../src/server-components/html-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A linear scan of the HTML a component renderer writes, for the validator's common case. It reads
|
|
3
|
+
* only a subset that parse5's tokenizer reads without a parse error and with the same start tags:
|
|
4
|
+
* ASCII tag and attribute names, double-quoted values, a few character references and plain
|
|
5
|
+
* comments. Anything else returns `undefined`, and the tokenizer decides. A differential test holds
|
|
6
|
+
* the two to the same tags (server-components-html-scan.test.ts).
|
|
7
|
+
*/
|
|
8
|
+
export interface ScannedTag {
|
|
9
|
+
readonly tagName: string;
|
|
10
|
+
readonly attrs: {
|
|
11
|
+
readonly name: string;
|
|
12
|
+
readonly value: string;
|
|
13
|
+
}[];
|
|
14
|
+
}
|
|
15
|
+
/** The start tags of `html`, or `undefined` when it leaves the subset this scan reads. */
|
|
16
|
+
export declare function scanComponentHTML(html: string): ScannedTag[] | undefined;
|
|
17
|
+
//# sourceMappingURL=html-scan.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-scan.d.ts","sourceRoot":"","sources":["../../src/server-components/html-scan.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACpE;AAmGD,0FAA0F;AAC1F,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,SAAS,CA+CxE"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A linear scan of the HTML a component renderer writes, for the validator's common case. It reads
|
|
3
|
+
* only a subset that parse5's tokenizer reads without a parse error and with the same start tags:
|
|
4
|
+
* ASCII tag and attribute names, double-quoted values, a few character references and plain
|
|
5
|
+
* comments. Anything else returns `undefined`, and the tokenizer decides. A differential test holds
|
|
6
|
+
* the two to the same tags (server-components-html-scan.test.ts).
|
|
7
|
+
*/
|
|
8
|
+
const REFERENCES = [
|
|
9
|
+
["&", "&"],
|
|
10
|
+
["<", "<"],
|
|
11
|
+
[">", ">"],
|
|
12
|
+
[""", '"'],
|
|
13
|
+
["'", "'"],
|
|
14
|
+
["'", "'"],
|
|
15
|
+
[" ", "\u00a0"],
|
|
16
|
+
];
|
|
17
|
+
const referenceAt = (html, at) => {
|
|
18
|
+
for (const reference of REFERENCES)
|
|
19
|
+
if (html.startsWith(reference[0], at))
|
|
20
|
+
return reference;
|
|
21
|
+
return undefined;
|
|
22
|
+
};
|
|
23
|
+
const isSpace = (code) => code === 0x20 || code === 0x0a || code === 0x09 || code === 0x0c || code === 0x0d;
|
|
24
|
+
const isLetter = (code) => (code >= 0x61 && code <= 0x7a) || (code >= 0x41 && code <= 0x5a);
|
|
25
|
+
const isTagCode = (code) => isLetter(code) || (code >= 0x30 && code <= 0x39) || code === 0x2d;
|
|
26
|
+
const isAttributeStart = (code) => isLetter(code) || code === 0x5f || code === 0x3a;
|
|
27
|
+
const isAttributeCode = (code) => isAttributeStart(code) || (code >= 0x30 && code <= 0x39) || code === 0x2d || code === 0x2e;
|
|
28
|
+
/**
|
|
29
|
+
* The code units of the character at `at`, or 0 when parse5 reports it (NULL, a control, a
|
|
30
|
+
* noncharacter, a lone surrogate) or past the end.
|
|
31
|
+
*/
|
|
32
|
+
function unitsAt(html, at) {
|
|
33
|
+
const code = html.charCodeAt(at);
|
|
34
|
+
if (code >= 0x20 && code < 0x7f)
|
|
35
|
+
return 1;
|
|
36
|
+
if (code >= 0xd800 && code <= 0xdbff) {
|
|
37
|
+
const low = html.charCodeAt(at + 1);
|
|
38
|
+
if (!(low >= 0xdc00 && low <= 0xdfff))
|
|
39
|
+
return 0;
|
|
40
|
+
const point = ((code - 0xd800) << 10) + (low - 0xdc00) + 0x10000;
|
|
41
|
+
return (point & 0xfffe) === 0xfffe ? 0 : 2;
|
|
42
|
+
}
|
|
43
|
+
if (Number.isNaN(code) || (code >= 0xdc00 && code <= 0xdfff))
|
|
44
|
+
return 0;
|
|
45
|
+
if (code < 0x20)
|
|
46
|
+
return isSpace(code) ? 1 : 0;
|
|
47
|
+
if (code <= 0x9f)
|
|
48
|
+
return 0;
|
|
49
|
+
return (code >= 0xfdd0 && code <= 0xfdef) || code === 0xfffe || code === 0xffff ? 0 : 1;
|
|
50
|
+
}
|
|
51
|
+
/** Where a start tag whose name begins at `at` ends, with `tags` given its tag, or -1. */
|
|
52
|
+
function scanStartTag(html, at, tags) {
|
|
53
|
+
let end = at;
|
|
54
|
+
while (isTagCode(html.charCodeAt(end)))
|
|
55
|
+
end++;
|
|
56
|
+
const tagName = html.slice(at, end).toLowerCase();
|
|
57
|
+
// The validator reads these two as a browser does, which needs the text after them.
|
|
58
|
+
if (tagName === "title" || tagName === "textarea")
|
|
59
|
+
return -1;
|
|
60
|
+
let code = html.charCodeAt(end);
|
|
61
|
+
if (!(isSpace(code) || code === 0x2f || code === 0x3e))
|
|
62
|
+
return -1;
|
|
63
|
+
const attrs = [];
|
|
64
|
+
for (;;) {
|
|
65
|
+
while (isSpace(html.charCodeAt(end)))
|
|
66
|
+
end++;
|
|
67
|
+
code = html.charCodeAt(end);
|
|
68
|
+
if (code === 0x3e || (code === 0x2f && html.charCodeAt(end + 1) === 0x3e)) {
|
|
69
|
+
tags.push({ tagName, attrs });
|
|
70
|
+
return end + (code === 0x3e ? 1 : 2);
|
|
71
|
+
}
|
|
72
|
+
if (!isAttributeStart(code))
|
|
73
|
+
return -1;
|
|
74
|
+
const nameStart = end;
|
|
75
|
+
while (isAttributeCode(html.charCodeAt(end)))
|
|
76
|
+
end++;
|
|
77
|
+
const name = html.slice(nameStart, end).toLowerCase();
|
|
78
|
+
if (attrs.some((attr) => attr.name === name))
|
|
79
|
+
return -1;
|
|
80
|
+
code = html.charCodeAt(end);
|
|
81
|
+
let value = "";
|
|
82
|
+
if (code === 0x3d) {
|
|
83
|
+
if (html.charCodeAt(end + 1) !== 0x22)
|
|
84
|
+
return -1;
|
|
85
|
+
let from = end + 2;
|
|
86
|
+
end = from;
|
|
87
|
+
for (;;) {
|
|
88
|
+
code = html.charCodeAt(end);
|
|
89
|
+
if (code === 0x22)
|
|
90
|
+
break;
|
|
91
|
+
if (code === 0x26) {
|
|
92
|
+
const reference = referenceAt(html, end);
|
|
93
|
+
if (reference === undefined)
|
|
94
|
+
return -1;
|
|
95
|
+
value += html.slice(from, end) + reference[1];
|
|
96
|
+
end += reference[0].length;
|
|
97
|
+
from = end;
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
// A CR would reach the tokenizer's value as LF.
|
|
101
|
+
const units = code === 0x0d ? 0 : unitsAt(html, end);
|
|
102
|
+
if (units === 0)
|
|
103
|
+
return -1;
|
|
104
|
+
end += units;
|
|
105
|
+
}
|
|
106
|
+
value += html.slice(from, end);
|
|
107
|
+
end++;
|
|
108
|
+
code = html.charCodeAt(end);
|
|
109
|
+
if (!(isSpace(code) || code === 0x2f || code === 0x3e))
|
|
110
|
+
return -1;
|
|
111
|
+
}
|
|
112
|
+
else if (!(isSpace(code) || code === 0x2f || code === 0x3e))
|
|
113
|
+
return -1;
|
|
114
|
+
attrs.push({ name, value });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
/** The start tags of `html`, or `undefined` when it leaves the subset this scan reads. */
|
|
118
|
+
export function scanComponentHTML(html) {
|
|
119
|
+
const tags = [];
|
|
120
|
+
let at = 0;
|
|
121
|
+
while (at < html.length) {
|
|
122
|
+
const code = html.charCodeAt(at);
|
|
123
|
+
if (code === 0x3c) {
|
|
124
|
+
const next = html.charCodeAt(at + 1);
|
|
125
|
+
if (isLetter(next)) {
|
|
126
|
+
at = scanStartTag(html, at + 1, tags);
|
|
127
|
+
if (at === -1)
|
|
128
|
+
return undefined;
|
|
129
|
+
}
|
|
130
|
+
else if (next === 0x2f) {
|
|
131
|
+
let end = at + 2;
|
|
132
|
+
if (!isLetter(html.charCodeAt(end)))
|
|
133
|
+
return undefined;
|
|
134
|
+
while (isTagCode(html.charCodeAt(end)))
|
|
135
|
+
end++;
|
|
136
|
+
while (isSpace(html.charCodeAt(end)))
|
|
137
|
+
end++;
|
|
138
|
+
if (html.charCodeAt(end) !== 0x3e)
|
|
139
|
+
return undefined;
|
|
140
|
+
at = end + 1;
|
|
141
|
+
}
|
|
142
|
+
else if (html.startsWith("!--", at + 1)) {
|
|
143
|
+
const from = at + 4;
|
|
144
|
+
if (html.charCodeAt(from) === 0x3e || html.startsWith("->", from))
|
|
145
|
+
return undefined;
|
|
146
|
+
const close = html.indexOf("-->", from);
|
|
147
|
+
if (close === -1)
|
|
148
|
+
return undefined;
|
|
149
|
+
for (let inner = from; inner < close;) {
|
|
150
|
+
const units = unitsAt(html, inner);
|
|
151
|
+
if (units === 0)
|
|
152
|
+
return undefined;
|
|
153
|
+
// `<!` can open a nested comment and `--!` a `--!>` ending; both are parse errors.
|
|
154
|
+
if (html.charCodeAt(inner) === 0x21 &&
|
|
155
|
+
((inner > from && html.charCodeAt(inner - 1) === 0x3c) ||
|
|
156
|
+
(inner - 2 >= from && html.startsWith("--", inner - 2))))
|
|
157
|
+
return undefined;
|
|
158
|
+
inner += units;
|
|
159
|
+
}
|
|
160
|
+
at = close + 3;
|
|
161
|
+
}
|
|
162
|
+
else
|
|
163
|
+
return undefined;
|
|
164
|
+
}
|
|
165
|
+
else if (code === 0x26) {
|
|
166
|
+
const reference = referenceAt(html, at);
|
|
167
|
+
if (reference === undefined)
|
|
168
|
+
return undefined;
|
|
169
|
+
at += reference[0].length;
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
const units = unitsAt(html, at);
|
|
173
|
+
if (units === 0)
|
|
174
|
+
return undefined;
|
|
175
|
+
at += units;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return tags;
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=html-scan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-scan.js","sourceRoot":"","sources":["../../src/server-components/html-scan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/server-components/html.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/server-components/html.ts"],"names":[],"mappings":"AA2EA,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAKtF;AAED,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,CAWpF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Tokenizer } from "parse5";
|
|
2
2
|
import { ServerComponentError } from "./error.js";
|
|
3
3
|
import { validateComponentTag } from "./html-policy.js";
|
|
4
|
+
import { scanComponentHTML } from "./html-scan.js";
|
|
4
5
|
import { COMPONENT_LIMITS } from "./protocol.js";
|
|
5
6
|
/**
|
|
6
7
|
* A browser reads `title` and `textarea` content as RCDATA, where `<!--` and tags are text, but
|
|
@@ -15,11 +16,19 @@ function closesAsText(html, tag, from) {
|
|
|
15
16
|
html.slice(next, after).toLowerCase() === `</${tag}` &&
|
|
16
17
|
/^[\t\n\f />]$/.test(html[after] ?? ""));
|
|
17
18
|
}
|
|
19
|
+
function assertOutputSize(html) {
|
|
20
|
+
// UTF-8 takes at most three bytes per UTF-16 unit, so only a long string is encoded to measure it.
|
|
21
|
+
if (html.length * 3 > COMPONENT_LIMITS.outputBytes &&
|
|
22
|
+
new TextEncoder().encode(html).length > COMPONENT_LIMITS.outputBytes)
|
|
23
|
+
throw new ServerComponentError("component_limit", 413);
|
|
24
|
+
}
|
|
18
25
|
/** Tokenization validates attributes even in SVG/table contexts a document parser may discard. */
|
|
19
26
|
function tokenize(html, assets, hints) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
27
|
+
assertOutputSize(html);
|
|
28
|
+
const tokenizer = new Tokenizer(
|
|
29
|
+
// Offsets are read only for hints and for `title`/`textarea`, whose names a tokenizer lowercases
|
|
30
|
+
// from ASCII alone; tracking them costs every other string about a tenth of its check.
|
|
31
|
+
{ sourceCodeLocationInfo: hints !== undefined || /<(?:title|textarea)/i.test(html) }, {
|
|
23
32
|
onStartTag(token) {
|
|
24
33
|
validateComponentTag(token.tagName, token.attrs, assets);
|
|
25
34
|
if ((token.tagName === "title" || token.tagName === "textarea") &&
|
|
@@ -49,7 +58,13 @@ function tokenize(html, assets, hints) {
|
|
|
49
58
|
tokenizer.write(html, true);
|
|
50
59
|
}
|
|
51
60
|
export function validateComponentHTML(html, assets) {
|
|
52
|
-
|
|
61
|
+
assertOutputSize(html);
|
|
62
|
+
const tags = scanComponentHTML(html);
|
|
63
|
+
if (tags === undefined)
|
|
64
|
+
tokenize(html, assets);
|
|
65
|
+
else
|
|
66
|
+
for (const tag of tags)
|
|
67
|
+
validateComponentTag(tag.tagName, tag.attrs, assets);
|
|
53
68
|
}
|
|
54
69
|
/** React may produce resource hints while decoding Flight. They are not owned range nodes. */
|
|
55
70
|
export function componentRangeHTML(html, assets) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/server-components/html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAAY,EAAE,GAAW,EAAE,IAAY;IAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACpC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAA;IACnC,OAAO,CACL,IAAI,KAAK,CAAC,CAAC;QACX,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,GAAG,EAAE;QACpD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CACxC,CAAA;AACH,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/server-components/html.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import type { ClientRouter } from "../router.js";
|
|
2
2
|
import type { ComponentController } from "./client.js";
|
|
3
|
-
/**
|
|
3
|
+
/**
|
|
4
|
+
* Optional router integration; imported only by opted-in application entries. The components of a
|
|
5
|
+
* `keepAlive` page are parked while it is hidden, so navigation leaves them as they are.
|
|
6
|
+
*/
|
|
4
7
|
export declare function bindComponentRouter(router: Pick<ClientRouter, "snapshot" | "subscribe">): () => void;
|
|
5
8
|
/** Refresh only after the existing mutation transport reports success. */
|
|
6
9
|
export declare function refreshAfterComponentMutation<T extends {
|