@humjs/core 0.0.2 → 0.1.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/dist/app.d.ts.map +1 -1
- package/dist/app.js +32 -23
- package/dist/app.js.map +1 -1
- package/dist/jsonify/stringify.d.ts.map +1 -1
- package/dist/jsonify/stringify.js +6 -5
- package/dist/jsonify/stringify.js.map +1 -1
- package/dist/runtime/client/partials.d.ts +1 -1
- package/dist/runtime/client/partials.d.ts.map +1 -1
- package/dist/runtime/client/partials.js +7 -7
- package/dist/runtime/client/partials.js.map +1 -1
- package/dist/runtime/client/reviver.d.ts +63 -11
- package/dist/runtime/client/reviver.d.ts.map +1 -1
- package/dist/runtime/client/reviver.js +295 -40
- package/dist/runtime/client/reviver.js.map +1 -1
- package/dist/runtime/events.d.ts +64 -0
- package/dist/runtime/events.d.ts.map +1 -0
- package/dist/runtime/events.js +102 -0
- package/dist/runtime/events.js.map +1 -0
- package/dist/runtime/server/document.js +3 -3
- package/dist/runtime/server/document.js.map +1 -1
- package/dist/runtime/server/preact_hooks.d.ts +24 -9
- package/dist/runtime/server/preact_hooks.d.ts.map +1 -1
- package/dist/runtime/server/preact_hooks.js +202 -13
- package/dist/runtime/server/preact_hooks.js.map +1 -1
- package/dist/runtime/shared_internal.d.ts +20 -2
- package/dist/runtime/shared_internal.d.ts.map +1 -1
- package/dist/runtime/shared_internal.js +25 -2
- package/dist/runtime/shared_internal.js.map +1 -1
- package/dist/types.d.ts +15 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Component, Fragment, h, render, } from "preact";
|
|
2
2
|
import { computed, signal } from "@preact/signals";
|
|
3
3
|
import { parse } from "../../jsonify/parse.js";
|
|
4
|
-
import {
|
|
4
|
+
import { hum_factories } from "../events.js";
|
|
5
|
+
import { DATA_HUM_KEY, FACET_HANDLER_ATTR, FACET_SIGNAL_ATTR, parseMarker, PartialMode, } from "../shared_internal.js";
|
|
5
6
|
const RootKind = {
|
|
6
7
|
Island: 0,
|
|
7
8
|
Partial: 1,
|
|
@@ -11,12 +12,27 @@ export const Marker = {
|
|
|
11
12
|
Island: 0,
|
|
12
13
|
Partial: 1,
|
|
13
14
|
Slot: 2,
|
|
15
|
+
Signal: 3,
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Which kind of page level facet a DOM node carries. A facet is owned by the
|
|
19
|
+
* Preact tree instead of by a marker scanner: a signal rendered as a child
|
|
20
|
+
* becomes a `SignalText` component leaf, and a bound prop or handler stays a
|
|
21
|
+
* prop on the element's vnode.
|
|
22
|
+
*/
|
|
23
|
+
const FacetKind = {
|
|
24
|
+
Signal: 0,
|
|
25
|
+
Element: 1,
|
|
14
26
|
};
|
|
15
27
|
const SLOT_SYMBOL = Symbol.for("_HUM_SLOT");
|
|
16
28
|
function isSlotRef(x) {
|
|
17
29
|
return (x !== null && typeof x === "object" && "kind" in x &&
|
|
18
30
|
x.kind === SLOT_SYMBOL);
|
|
19
31
|
}
|
|
32
|
+
/** Returns the signal held by a payload entry, if it is a signal entry. */
|
|
33
|
+
function entrySignal(entry) {
|
|
34
|
+
return entry !== undefined && "signal" in entry ? entry.signal : undefined;
|
|
35
|
+
}
|
|
20
36
|
/** Partials that are currently mounted, keyed by partial name. */
|
|
21
37
|
export const ACTIVE_PARTIALS = new Map();
|
|
22
38
|
/**
|
|
@@ -60,6 +76,12 @@ export function maybeHideMarker(marker) {
|
|
|
60
76
|
}
|
|
61
77
|
/** Registered island components, keyed by island name. */
|
|
62
78
|
export const ISLAND_REGISTRY = new Map();
|
|
79
|
+
/**
|
|
80
|
+
* Placeholders standing in for an island whose module never loaded. The tree
|
|
81
|
+
* renderer keeps their markup as plain children and has nowhere to hand a slot
|
|
82
|
+
* to, so slots are rendered in place instead of becoming props.
|
|
83
|
+
*/
|
|
84
|
+
const ISLAND_PASSTHROUGH = new WeakSet();
|
|
63
85
|
export const CUSTOM_PARSER = {
|
|
64
86
|
Signal: (value) => signal(value),
|
|
65
87
|
Computed: (value) => computed(() => value),
|
|
@@ -68,9 +90,79 @@ export const CUSTOM_PARSER = {
|
|
|
68
90
|
name: value.name,
|
|
69
91
|
id: value.id,
|
|
70
92
|
}),
|
|
93
|
+
// A page level handler travels as the factory name plus the arguments it was
|
|
94
|
+
// called with; calling the factory again rebuilds the closure here.
|
|
95
|
+
Fn: (value) => {
|
|
96
|
+
const [factory, args] = value;
|
|
97
|
+
const fn = hum_factories[factory];
|
|
98
|
+
if (fn === undefined) {
|
|
99
|
+
throw new Error(`Hum: the handler factory "${factory}" is not registered on the ` +
|
|
100
|
+
`client. Import the module that defines it from the client entry or ` +
|
|
101
|
+
`from an island, so it is evaluated before the page hydrates.`);
|
|
102
|
+
}
|
|
103
|
+
return fn(...args);
|
|
104
|
+
},
|
|
71
105
|
};
|
|
72
106
|
export function createReviveCtx() {
|
|
73
|
-
return {
|
|
107
|
+
return {
|
|
108
|
+
roots: [],
|
|
109
|
+
stack: [],
|
|
110
|
+
slots: new Map(),
|
|
111
|
+
slotIdStack: [],
|
|
112
|
+
facets: [],
|
|
113
|
+
signalStack: [],
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Component leaf owning a page level signal that was rendered as a child.
|
|
118
|
+
* Returning the signal itself hands the text node over to `@preact/signals`,
|
|
119
|
+
* which patches it in place: no component above it re-renders.
|
|
120
|
+
*/
|
|
121
|
+
export function SignalText(props) {
|
|
122
|
+
return props.signal;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Moves the facet attributes of an adopted element into its props: a bound
|
|
126
|
+
* signal stays a signal (so `@preact/signals` keeps the DOM property in sync)
|
|
127
|
+
* and a bound handler stays a function (so Preact attaches the listener).
|
|
128
|
+
*/
|
|
129
|
+
function applyFacetAttrs(el, props, payload) {
|
|
130
|
+
const bindings = parseFacetAttr(el.getAttribute(FACET_SIGNAL_ATTR));
|
|
131
|
+
if (bindings !== null) {
|
|
132
|
+
delete props[FACET_SIGNAL_ATTR];
|
|
133
|
+
for (const name in bindings) {
|
|
134
|
+
const value = entrySignal(payload[bindings[name]]);
|
|
135
|
+
if (value !== undefined)
|
|
136
|
+
props[name] = value;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
const events = parseFacetAttr(el.getAttribute(FACET_HANDLER_ATTR));
|
|
140
|
+
if (events !== null) {
|
|
141
|
+
delete props[FACET_HANDLER_ATTR];
|
|
142
|
+
for (const name in events) {
|
|
143
|
+
const entry = payload[events[name]];
|
|
144
|
+
if (entry !== undefined && "handler" in entry) {
|
|
145
|
+
props[name] = entry.handler;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Parses a `data-hum-signal` / `data-hum-handler` attribute, tolerating
|
|
152
|
+
* anything that is not one.
|
|
153
|
+
*/
|
|
154
|
+
function parseFacetAttr(raw) {
|
|
155
|
+
if (raw === null)
|
|
156
|
+
return null;
|
|
157
|
+
try {
|
|
158
|
+
const parsed = JSON.parse(raw);
|
|
159
|
+
return parsed !== null && typeof parsed === "object"
|
|
160
|
+
? parsed
|
|
161
|
+
: null;
|
|
162
|
+
}
|
|
163
|
+
catch {
|
|
164
|
+
return null;
|
|
165
|
+
}
|
|
74
166
|
}
|
|
75
167
|
function markerData(node) {
|
|
76
168
|
return isHumMarkerText(node) ? node._humMarker : node.data;
|
|
@@ -83,6 +175,12 @@ function walkInner(ctx, node) {
|
|
|
83
175
|
ctx.slotIdStack.length > 0) {
|
|
84
176
|
return;
|
|
85
177
|
}
|
|
178
|
+
// Facets inside an island or a partial are owned by that root's own tree.
|
|
179
|
+
if (ctx.stack.length === 0 && ctx.signalStack.length === 0 &&
|
|
180
|
+
(node.hasAttribute(FACET_SIGNAL_ATTR) ||
|
|
181
|
+
node.hasAttribute(FACET_HANDLER_ATTR))) {
|
|
182
|
+
ctx.facets.push({ kind: FacetKind.Element, el: node });
|
|
183
|
+
}
|
|
86
184
|
for (let i = 0; i < node.childNodes.length; i++) {
|
|
87
185
|
walkInner(ctx, node.childNodes[i]);
|
|
88
186
|
}
|
|
@@ -133,6 +231,22 @@ function walkInner(ctx, node) {
|
|
|
133
231
|
ctx.stack.push(found);
|
|
134
232
|
return;
|
|
135
233
|
}
|
|
234
|
+
if (marker.kind === "signal") {
|
|
235
|
+
const hidden = maybeHideMarker(node);
|
|
236
|
+
const facet = {
|
|
237
|
+
kind: FacetKind.Signal,
|
|
238
|
+
idx: Number(marker.parts[0]),
|
|
239
|
+
start: hidden,
|
|
240
|
+
end: null,
|
|
241
|
+
};
|
|
242
|
+
ctx.signalStack.push(facet);
|
|
243
|
+
// Only a signal outside every root needs a root of its own; the others
|
|
244
|
+
// are turned into vnodes while their region is adopted.
|
|
245
|
+
if (ctx.stack.length === 0 && ctx.signalStack.length === 1) {
|
|
246
|
+
ctx.facets.push(facet);
|
|
247
|
+
}
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
136
250
|
if (marker.kind === "close-island" || marker.kind === "close-partial") {
|
|
137
251
|
const hidden = maybeHideMarker(node);
|
|
138
252
|
const item = ctx.stack.pop();
|
|
@@ -140,6 +254,13 @@ function walkInner(ctx, node) {
|
|
|
140
254
|
item.end = hidden;
|
|
141
255
|
return;
|
|
142
256
|
}
|
|
257
|
+
if (marker.kind === "close-signal") {
|
|
258
|
+
const hidden = maybeHideMarker(node);
|
|
259
|
+
const facet = ctx.signalStack.pop();
|
|
260
|
+
if (facet !== undefined)
|
|
261
|
+
facet.end = hidden;
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
143
264
|
if (marker.kind === "close-slot") {
|
|
144
265
|
const hidden = maybeHideMarker(node);
|
|
145
266
|
const id = ctx.slotIdStack.pop();
|
|
@@ -224,11 +345,12 @@ export function copyOldChildren(props, oldChildren) {
|
|
|
224
345
|
: [oldChildren];
|
|
225
346
|
}
|
|
226
347
|
/**
|
|
227
|
-
* Rebuilds a VNode tree from the DOM between `node` and `end`. Used for slots
|
|
228
|
-
* and
|
|
229
|
-
* into VNodes so Preact can take over the region.
|
|
348
|
+
* Rebuilds a VNode tree from the DOM between `node` and `end`. Used for slots,
|
|
349
|
+
* partial regions and page level facets: the markup rendered by the server is
|
|
350
|
+
* turned back into VNodes so Preact can take over the region. Bound signals and
|
|
351
|
+
* handlers come back from the payload, so the adopted tree is already reactive.
|
|
230
352
|
*/
|
|
231
|
-
export function domToVNode(
|
|
353
|
+
export function domToVNode(payload, vnodeStack, markerStack, node, end) {
|
|
232
354
|
let sib = node;
|
|
233
355
|
while (sib !== null) {
|
|
234
356
|
if (sib === end)
|
|
@@ -236,7 +358,7 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
236
358
|
if (sib._humRootFrag === true || sib instanceof DocumentFragment) {
|
|
237
359
|
const first = sib.firstChild;
|
|
238
360
|
if (first !== null) {
|
|
239
|
-
domToVNode(
|
|
361
|
+
domToVNode(payload, vnodeStack, markerStack, first, end);
|
|
240
362
|
}
|
|
241
363
|
}
|
|
242
364
|
else if (isElementNode(sib)) {
|
|
@@ -244,16 +366,15 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
244
366
|
const el = sib;
|
|
245
367
|
for (let i = 0; i < el.attributes.length; i++) {
|
|
246
368
|
const attr = el.attributes[i];
|
|
247
|
-
if (attr.
|
|
248
|
-
props.key = attr.
|
|
369
|
+
if (attr.name === DATA_HUM_KEY) {
|
|
370
|
+
props.key = attr.value;
|
|
249
371
|
continue;
|
|
250
372
|
}
|
|
251
373
|
// Boolean attributes are `true` whenever they are present.
|
|
252
|
-
props[attr.
|
|
253
|
-
typeof el[attr.
|
|
254
|
-
? true
|
|
255
|
-
: attr.nodeValue;
|
|
374
|
+
props[attr.name] =
|
|
375
|
+
typeof el[attr.name] === "boolean" ? true : attr.value;
|
|
256
376
|
}
|
|
377
|
+
applyFacetAttrs(el, props, payload);
|
|
257
378
|
const vnode = h(el.localName, props);
|
|
258
379
|
const marker = markerStack.at(-1);
|
|
259
380
|
const append = marker === Marker.Slot || marker === Marker.Partial;
|
|
@@ -262,7 +383,7 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
262
383
|
vnodeStack.push(vnode);
|
|
263
384
|
}
|
|
264
385
|
if (el.firstChild !== null) {
|
|
265
|
-
domToVNode(
|
|
386
|
+
domToVNode(payload, vnodeStack, markerStack, el.firstChild, end);
|
|
266
387
|
}
|
|
267
388
|
if (append)
|
|
268
389
|
vnodeStack.pop();
|
|
@@ -275,15 +396,38 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
275
396
|
const hidden = maybeHideMarker(sib);
|
|
276
397
|
markerStack.push(Marker.Island);
|
|
277
398
|
const name = marker.parts[0];
|
|
399
|
+
const key = marker.parts[2] === "" ? undefined : marker.parts[2];
|
|
278
400
|
const island = ISLAND_REGISTRY.get(name);
|
|
401
|
+
let vnode;
|
|
279
402
|
if (island === undefined) {
|
|
280
|
-
|
|
403
|
+
// An island whose module never loaded must not take the rest of the
|
|
404
|
+
// tree down with it: `boot` skips such a root as well, and the
|
|
405
|
+
// enclosing region still has to hydrate. Its markup is kept as
|
|
406
|
+
// plain children, with the slots it would have received.
|
|
407
|
+
console.error(`Hum: unknown island "${name}".`);
|
|
408
|
+
vnode = h(Fragment, { key });
|
|
409
|
+
ISLAND_PASSTHROUGH.add(vnode);
|
|
281
410
|
}
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
411
|
+
else {
|
|
412
|
+
const entry = payload[Number(marker.parts[1])];
|
|
413
|
+
const props = entry !== undefined && "props" in entry
|
|
414
|
+
? entry.props
|
|
415
|
+
: {};
|
|
416
|
+
props.key = key;
|
|
417
|
+
vnode = h(island, props);
|
|
418
|
+
}
|
|
419
|
+
addVNodeChild(vnodeStack.at(-1), vnode);
|
|
420
|
+
vnodeStack.push(vnode);
|
|
421
|
+
sib = hidden;
|
|
422
|
+
}
|
|
423
|
+
else if (marker.kind === "signal") {
|
|
424
|
+
const hidden = maybeHideMarker(sib);
|
|
425
|
+
markerStack.push(Marker.Signal);
|
|
426
|
+
const vnode = h(SignalText, {
|
|
427
|
+
signal: entrySignal(payload[Number(marker.parts[0])]),
|
|
428
|
+
});
|
|
429
|
+
addVNodeChild(vnodeStack.at(-1), vnode);
|
|
430
|
+
vnodeStack.push(vnode);
|
|
287
431
|
sib = hidden;
|
|
288
432
|
}
|
|
289
433
|
else if (marker.kind === "slot") {
|
|
@@ -297,7 +441,14 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
297
441
|
children: [],
|
|
298
442
|
});
|
|
299
443
|
const parent = vnodeStack.at(-1);
|
|
300
|
-
parent
|
|
444
|
+
if (ISLAND_PASSTHROUGH.has(parent)) {
|
|
445
|
+
// Nothing is there to receive the slot, so keep its content where
|
|
446
|
+
// it was rendered instead.
|
|
447
|
+
addVNodeChild(parent, vnode);
|
|
448
|
+
}
|
|
449
|
+
else {
|
|
450
|
+
parent.props[name] = vnode;
|
|
451
|
+
}
|
|
301
452
|
vnodeStack.push(vnode);
|
|
302
453
|
sib = hidden;
|
|
303
454
|
}
|
|
@@ -347,7 +498,7 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
347
498
|
continue;
|
|
348
499
|
}
|
|
349
500
|
else if (marker.kind === "close-island" || marker.kind === "close-slot" ||
|
|
350
|
-
marker.kind === "close-partial") {
|
|
501
|
+
marker.kind === "close-partial" || marker.kind === "close-signal") {
|
|
351
502
|
vnodeStack.pop();
|
|
352
503
|
markerStack.pop();
|
|
353
504
|
sib = maybeHideMarker(sib);
|
|
@@ -368,7 +519,7 @@ export function domToVNode(allProps, vnodeStack, markerStack, node, end) {
|
|
|
368
519
|
}
|
|
369
520
|
}
|
|
370
521
|
/** Renders an island into the DOM range it was server rendered into. */
|
|
371
|
-
export function revive(props, component, container, slots,
|
|
522
|
+
export function revive(props, component, container, slots, payload) {
|
|
372
523
|
const doRender = () => {
|
|
373
524
|
for (const propName in props) {
|
|
374
525
|
const value = props[propName];
|
|
@@ -378,41 +529,54 @@ export function revive(props, component, container, slots, allProps) {
|
|
|
378
529
|
if (marker !== undefined && marker.end !== null) {
|
|
379
530
|
const root = h(Fragment, null);
|
|
380
531
|
const slotContainer = createRootFragment(container, marker.start, marker.end);
|
|
381
|
-
domToVNode(
|
|
532
|
+
domToVNode(payload, [root], [Marker.Slot], slotContainer, marker.end);
|
|
382
533
|
props[propName] = root;
|
|
383
534
|
continue;
|
|
384
535
|
}
|
|
385
536
|
const template = document.querySelector(`#hum-${value.id}-${value.name}`);
|
|
386
537
|
if (template !== null) {
|
|
387
538
|
const root = h(Fragment, null);
|
|
388
|
-
domToVNode(
|
|
539
|
+
domToVNode(payload, [root], [Marker.Slot], template.content, null);
|
|
389
540
|
props[propName] = root;
|
|
390
541
|
}
|
|
391
542
|
}
|
|
392
543
|
render(h(component, props), container);
|
|
393
544
|
};
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
545
|
+
schedule(doRender);
|
|
546
|
+
}
|
|
547
|
+
/**
|
|
548
|
+
* Runs hydration work once `boot` has returned, so that neither an island nor a
|
|
549
|
+
* page level facet pays for a render on the critical path. Every render goes
|
|
550
|
+
* through here, which also keeps the order they were scheduled in.
|
|
551
|
+
*/
|
|
552
|
+
function schedule(callback) {
|
|
553
|
+
const scheduler = globalThis.scheduler;
|
|
397
554
|
if (typeof scheduler?.postTask === "function") {
|
|
398
|
-
scheduler.postTask(
|
|
555
|
+
scheduler.postTask(callback);
|
|
399
556
|
}
|
|
400
557
|
else {
|
|
401
|
-
setTimeout(
|
|
558
|
+
setTimeout(callback, 0);
|
|
402
559
|
}
|
|
403
560
|
}
|
|
404
561
|
/**
|
|
405
|
-
* Entry point of the client runtime. Scans the server rendered DOM for
|
|
406
|
-
*
|
|
407
|
-
* the document.
|
|
562
|
+
* Entry point of the client runtime. Scans the server rendered DOM for islands,
|
|
563
|
+
* partials and page level facets, and hydrates each of them with what was
|
|
564
|
+
* serialized into the document.
|
|
565
|
+
*
|
|
566
|
+
* The scan is synchronous, but every render is scheduled through {@link
|
|
567
|
+
* schedule}: nothing is live yet when `boot` returns, and the document is only
|
|
568
|
+
* touched from the task after it.
|
|
408
569
|
*/
|
|
409
|
-
export function boot(initialIslands,
|
|
570
|
+
export function boot(initialIslands, payloadJson) {
|
|
410
571
|
const ctx = createReviveCtx();
|
|
411
572
|
walkInner(ctx, document.body);
|
|
412
573
|
for (const name in initialIslands) {
|
|
413
574
|
ISLAND_REGISTRY.set(name, initialIslands[name]);
|
|
414
575
|
}
|
|
415
|
-
const
|
|
576
|
+
const payload = parse(payloadJson, CUSTOM_PARSER);
|
|
577
|
+
// Planned before the roots are revived: a host takes over the roots that fall
|
|
578
|
+
// inside it, so they have to be removed before anything schedules a render.
|
|
579
|
+
const facets = planFacets(ctx);
|
|
416
580
|
for (let i = 0; i < ctx.roots.length; i++) {
|
|
417
581
|
const root = ctx.roots[i];
|
|
418
582
|
if (root.end === null)
|
|
@@ -424,15 +588,15 @@ export function boot(initialIslands, islandProps) {
|
|
|
424
588
|
}
|
|
425
589
|
const container = createRootFragment(root.start.parentNode, root.start, root.end);
|
|
426
590
|
if (root.kind === RootKind.Island) {
|
|
427
|
-
const entry =
|
|
428
|
-
if (entry === undefined)
|
|
591
|
+
const entry = payload[root.propsIdx];
|
|
592
|
+
if (entry === undefined || !("props" in entry))
|
|
429
593
|
continue;
|
|
430
594
|
const component = ISLAND_REGISTRY.get(root.name);
|
|
431
595
|
if (component === undefined) {
|
|
432
596
|
console.error(`Hum: unknown island "${root.name}".`);
|
|
433
597
|
continue;
|
|
434
598
|
}
|
|
435
|
-
revive(entry.props, component, container, ctx.slots,
|
|
599
|
+
revive(entry.props, component, container, ctx.slots, payload);
|
|
436
600
|
}
|
|
437
601
|
else {
|
|
438
602
|
const props = {
|
|
@@ -441,10 +605,101 @@ export function boot(initialIslands, islandProps) {
|
|
|
441
605
|
children: null,
|
|
442
606
|
};
|
|
443
607
|
const domRoot = h(Fragment, null);
|
|
444
|
-
domToVNode(
|
|
608
|
+
domToVNode(payload, [domRoot], [Marker.Partial], container, root.end);
|
|
445
609
|
props.children = domRoot.props.children;
|
|
446
|
-
revive(props, PartialComp, container, ctx.slots,
|
|
610
|
+
revive(props, PartialComp, container, ctx.slots, payload);
|
|
447
611
|
}
|
|
448
612
|
}
|
|
613
|
+
// Scheduled after the roots are, so a host renders before the facets that sit
|
|
614
|
+
// outside it and the order matches the code above.
|
|
615
|
+
schedule(() => {
|
|
616
|
+
for (const facet of facets) {
|
|
617
|
+
if (facet.kind === FacetKind.Signal) {
|
|
618
|
+
hydrateSignalFacet(facet, payload);
|
|
619
|
+
}
|
|
620
|
+
else {
|
|
621
|
+
hydrateElementFacet(facet, payload);
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
});
|
|
625
|
+
}
|
|
626
|
+
/**
|
|
627
|
+
* Facets that sit outside every island and partial need a Preact root of their
|
|
628
|
+
* own, because nothing else owns their DOM. This orders and filters the facets
|
|
629
|
+
* found by `walkInner`, and hands back the roots a host takes over:
|
|
630
|
+
*
|
|
631
|
+
* - an element facet covered by an already accepted host is dropped, the host's
|
|
632
|
+
* adopted tree turns it into a component leaf while it walks that subtree;
|
|
633
|
+
* - a host renders its whole subtree, islands and partials included, so a root
|
|
634
|
+
* starting inside a host is removed from `ctx.roots`: one range must never be
|
|
635
|
+
* rendered by two roots, which would fight over the same DOM;
|
|
636
|
+
* - a signal facet inside a host is dropped for the same reason.
|
|
637
|
+
*
|
|
638
|
+
* Removing the roots also removes the diagnostics `boot` runs for them, so an
|
|
639
|
+
* unbalanced root of a host is reported here instead.
|
|
640
|
+
*/
|
|
641
|
+
function planFacets(ctx) {
|
|
642
|
+
const hosts = [];
|
|
643
|
+
for (const facet of ctx.facets) {
|
|
644
|
+
if (facet.kind !== FacetKind.Element)
|
|
645
|
+
continue;
|
|
646
|
+
if (hosts.some((host) => host.el.contains(facet.el)))
|
|
647
|
+
continue;
|
|
648
|
+
hosts.push(facet);
|
|
649
|
+
}
|
|
650
|
+
if (hosts.length > 0) {
|
|
651
|
+
ctx.roots = ctx.roots.filter((root) => {
|
|
652
|
+
if (!hosts.some((host) => host.el.contains(root.start)))
|
|
653
|
+
return true;
|
|
654
|
+
if (root.end !== null && root.start.parentNode !== root.end.parentNode) {
|
|
655
|
+
console.error(`Hum hydration error: the ${root.kind === RootKind.Island ? "island" : "partial"} "${root.name}" has invalid HTML nesting: its start and end markers ` +
|
|
656
|
+
`were reparented into different nodes by the browser.`);
|
|
657
|
+
}
|
|
658
|
+
return false;
|
|
659
|
+
});
|
|
660
|
+
}
|
|
661
|
+
const out = [...hosts];
|
|
662
|
+
for (const facet of ctx.facets) {
|
|
663
|
+
if (facet.kind !== FacetKind.Signal)
|
|
664
|
+
continue;
|
|
665
|
+
if (hosts.some((host) => host.el.contains(facet.start)))
|
|
666
|
+
continue;
|
|
667
|
+
out.push(facet);
|
|
668
|
+
}
|
|
669
|
+
return out;
|
|
670
|
+
}
|
|
671
|
+
/**
|
|
672
|
+
* Hands the text node of a page level signal to a `SignalText` component leaf.
|
|
673
|
+
* The signal patches the text node directly, so nothing above it re-renders.
|
|
674
|
+
*/
|
|
675
|
+
function hydrateSignalFacet(facet, payload) {
|
|
676
|
+
if (facet.end === null)
|
|
677
|
+
return;
|
|
678
|
+
const parent = facet.start.parentNode;
|
|
679
|
+
if (parent === null || facet.end.parentNode !== parent)
|
|
680
|
+
return;
|
|
681
|
+
const container = createRootFragment(parent, facet.start, facet.end);
|
|
682
|
+
render(h(SignalText, { signal: entrySignal(payload[facet.idx]) }), container);
|
|
683
|
+
}
|
|
684
|
+
/**
|
|
685
|
+
* Adopts a page level element as a component leaf: its markup becomes a VNode
|
|
686
|
+
* tree (with bound signals and handlers restored from the payload) which Preact
|
|
687
|
+
* renders back over the range. Because the tree was derived from that very
|
|
688
|
+
* markup, Preact reuses the existing DOM nodes instead of recreating them.
|
|
689
|
+
*/
|
|
690
|
+
function hydrateElementFacet(facet, payload) {
|
|
691
|
+
const el = facet.el;
|
|
692
|
+
const parent = el.parentNode;
|
|
693
|
+
if (parent === null)
|
|
694
|
+
return;
|
|
695
|
+
// A root fragment needs an anchor on either side; the element is the range.
|
|
696
|
+
const start = document.createTextNode("");
|
|
697
|
+
const end = document.createTextNode("");
|
|
698
|
+
parent.insertBefore(start, el);
|
|
699
|
+
parent.insertBefore(end, el.nextSibling);
|
|
700
|
+
const container = createRootFragment(parent, start, end);
|
|
701
|
+
const root = h(Fragment, null);
|
|
702
|
+
domToVNode(payload, [root], [Marker.Slot], el, end);
|
|
703
|
+
render(h(Fragment, null, root.props.children), container);
|
|
449
704
|
}
|
|
450
705
|
//# sourceMappingURL=reviver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviver.js","sourceRoot":"","sources":["../../../src/runtime/client/reviver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reviver.js","sourceRoot":"","sources":["../../../src/runtime/client/reviver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { Signal } from "@preact/signals";
|
|
2
|
+
/**
|
|
3
|
+
* Property stamped on every value a factory produced. It is what lets the
|
|
4
|
+
* server serialize a handler that would otherwise be an un-serializable
|
|
5
|
+
* closure, and what lets the client rebuild it: the marker carries the factory
|
|
6
|
+
* name plus the arguments it was called with.
|
|
7
|
+
*/
|
|
8
|
+
export declare const FACTORY_MARKER = "__humFactory";
|
|
9
|
+
export interface FactoryMarker {
|
|
10
|
+
/** Name the factory is exported under, e.g. `"setFromProp"`. */
|
|
11
|
+
factory: string;
|
|
12
|
+
/** Arguments the factory was called with, in declaration order. */
|
|
13
|
+
args: unknown[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Factories available to the client runtime, keyed by the name used in the
|
|
17
|
+
* payload. The client rebuilds handlers by calling these again with the revived
|
|
18
|
+
* arguments, which is why a handler must be created by a factory instead of a
|
|
19
|
+
* closure.
|
|
20
|
+
*/
|
|
21
|
+
export declare const hum_factories: Record<string, (...args: any[]) => unknown>;
|
|
22
|
+
/** Returns the factory marker of a value, if it was produced by a factory. */
|
|
23
|
+
export declare function factoryMarkerOf(value: unknown): FactoryMarker | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Wraps a handler factory so its result carries a serializable marker, and
|
|
26
|
+
* registers it under `name` for the client runtime.
|
|
27
|
+
*
|
|
28
|
+
* `name` travels in the payload instead of the function, so it has to be unique
|
|
29
|
+
* in the app and stable across versions. The module a factory is defined in
|
|
30
|
+
* must also be evaluated in the browser—import it from the client entry, or
|
|
31
|
+
* from an island the page loads—otherwise the client has no implementation to
|
|
32
|
+
* rebuild the handler with. Arguments follow the same rules as any other page
|
|
33
|
+
* level prop: plain data, signals, or other factory results.
|
|
34
|
+
*/
|
|
35
|
+
export declare function defineFactory<A extends unknown[], R>(name: string, fn: (...args: A) => R): (...args: A) => R;
|
|
36
|
+
/**
|
|
37
|
+
* Coerces a value read off a DOM property to the type the signal currently
|
|
38
|
+
* holds, so `<input type="number">` (whose `value` is a string) round-trips
|
|
39
|
+
* through a `Signal<number>`. Unparseable input is passed through unchanged,
|
|
40
|
+
* which lets a partially typed value survive.
|
|
41
|
+
*/
|
|
42
|
+
export declare function coerceToSignalType(value: unknown, previous: unknown): unknown;
|
|
43
|
+
export interface AddOptions {
|
|
44
|
+
/** Upper bound, inclusive. */
|
|
45
|
+
max?: number;
|
|
46
|
+
/** Lower bound, inclusive. */
|
|
47
|
+
min?: number;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Returns an event handler that adds `delta` to a numeric signal, clamped to
|
|
51
|
+
* `options.min` / `options.max`.
|
|
52
|
+
*/
|
|
53
|
+
export declare const add: (signal: Signal<number>, delta: number, options?: AddOptions | undefined) => (event: Event) => void;
|
|
54
|
+
/** Returns an event handler that sets a signal to a fixed value. */
|
|
55
|
+
export declare const setValue: <T>(signal: Signal<T>, value: T) => (event: Event) => void;
|
|
56
|
+
/** Returns an event handler that flips a boolean signal. */
|
|
57
|
+
export declare const toggle: (signal: Signal<boolean>) => (event: Event) => void;
|
|
58
|
+
/**
|
|
59
|
+
* Returns an event handler that copies a property off the event's
|
|
60
|
+
* `currentTarget` (e.g. `"value"`, `"checked"`, `"open"`) into a signal, so a
|
|
61
|
+
* native form control can drive a signal without a component in between.
|
|
62
|
+
*/
|
|
63
|
+
export declare const setFromProp: (signal: Signal<unknown>, key: string) => (event: Event) => void;
|
|
64
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/runtime/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CACjD,CAAC;AAEtB,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAKzE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EAClD,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GACpB,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAyBnB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAS7E;AAED,MAAM,WAAW,UAAU;IACzB,8BAA8B;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,eAAO,MAAM,GAAG,uFAMF,KAAK,KAAK,IAOvB,CAAC;AAEF,oEAAoE;AACpE,eAAO,MAAM,QAAQ,GAElB,CAAC,0CAAyC,KAAK,KAAK,IAItD,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,MAAM,uCAEmB,KAAK,KAAK,IAG/C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,WAAW,oDAKV,KAAK,KAAK,IAQvB,CAAC"}
|