solid-js 1.8.21 → 1.8.22

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.
Files changed (48) hide show
  1. package/README.md +3 -3
  2. package/dist/dev.cjs +6 -4
  3. package/dist/dev.js +325 -564
  4. package/dist/server.js +74 -168
  5. package/dist/solid.cjs +6 -4
  6. package/dist/solid.js +283 -491
  7. package/h/dist/h.cjs +1 -1
  8. package/h/dist/h.js +9 -38
  9. package/h/jsx-runtime/dist/jsx.js +1 -1
  10. package/h/jsx-runtime/types/index.d.ts +8 -11
  11. package/h/jsx-runtime/types/jsx.d.ts +2 -0
  12. package/h/types/hyperscript.d.ts +11 -11
  13. package/html/dist/html.js +94 -216
  14. package/html/types/lit.d.ts +33 -47
  15. package/package.json +1 -1
  16. package/store/dist/dev.js +43 -122
  17. package/store/dist/server.js +8 -19
  18. package/store/dist/store.js +40 -113
  19. package/store/types/index.d.ts +7 -21
  20. package/store/types/modifiers.d.ts +3 -6
  21. package/store/types/mutable.d.ts +2 -5
  22. package/store/types/server.d.ts +4 -12
  23. package/store/types/store.d.ts +61 -218
  24. package/types/index.d.ts +10 -75
  25. package/types/jsx.d.ts +8 -18
  26. package/types/reactive/array.d.ts +4 -12
  27. package/types/reactive/observable.d.ts +17 -25
  28. package/types/reactive/scheduler.d.ts +6 -9
  29. package/types/reactive/signal.d.ts +142 -233
  30. package/types/render/Suspense.d.ts +5 -5
  31. package/types/render/component.d.ts +33 -64
  32. package/types/render/flow.d.ts +31 -43
  33. package/types/render/hydration.d.ts +15 -15
  34. package/types/server/index.d.ts +2 -57
  35. package/types/server/reactive.d.ts +42 -73
  36. package/types/server/rendering.d.ts +98 -169
  37. package/universal/dist/dev.js +12 -28
  38. package/universal/dist/universal.js +12 -28
  39. package/universal/types/index.d.ts +1 -3
  40. package/universal/types/universal.d.ts +1 -0
  41. package/web/dist/dev.js +83 -625
  42. package/web/dist/server.js +96 -210
  43. package/web/dist/web.js +81 -616
  44. package/web/storage/dist/storage.js +3 -3
  45. package/web/types/client.d.ts +2 -2
  46. package/web/types/core.d.ts +1 -10
  47. package/web/types/index.d.ts +10 -27
  48. package/web/types/server-mock.d.ts +32 -47
package/web/dist/dev.js CHANGED
@@ -1,83 +1,14 @@
1
- import {
2
- createRoot,
3
- createRenderEffect,
4
- untrack,
5
- sharedConfig,
6
- enableHydration,
7
- getOwner,
8
- createEffect,
9
- runWithOwner,
10
- createMemo,
11
- createSignal,
12
- onCleanup,
13
- splitProps,
14
- $DEVCOMP
15
- } from "solid-js";
16
- export {
17
- ErrorBoundary,
18
- For,
19
- Index,
20
- Match,
21
- Show,
22
- Suspense,
23
- SuspenseList,
24
- Switch,
25
- createComponent,
26
- createRenderEffect as effect,
27
- getOwner,
28
- createMemo as memo,
29
- mergeProps,
30
- untrack
31
- } from "solid-js";
1
+ import { createRoot, createRenderEffect, untrack, sharedConfig, enableHydration, getOwner, createEffect, runWithOwner, createMemo, createSignal, onCleanup, splitProps, $DEVCOMP } from 'solid-js';
2
+ export { ErrorBoundary, For, Index, Match, Show, Suspense, SuspenseList, Switch, createComponent, createRenderEffect as effect, getOwner, createMemo as memo, mergeProps, untrack } from 'solid-js';
32
3
 
33
- const booleans = [
34
- "allowfullscreen",
35
- "async",
36
- "autofocus",
37
- "autoplay",
38
- "checked",
39
- "controls",
40
- "default",
41
- "disabled",
42
- "formnovalidate",
43
- "hidden",
44
- "indeterminate",
45
- "inert",
46
- "ismap",
47
- "loop",
48
- "multiple",
49
- "muted",
50
- "nomodule",
51
- "novalidate",
52
- "open",
53
- "playsinline",
54
- "readonly",
55
- "required",
56
- "reversed",
57
- "seamless",
58
- "selected"
59
- ];
60
- const Properties = /*#__PURE__*/ new Set([
61
- "className",
62
- "value",
63
- "readOnly",
64
- "formNoValidate",
65
- "isMap",
66
- "noModule",
67
- "playsInline",
68
- ...booleans
69
- ]);
70
- const ChildProperties = /*#__PURE__*/ new Set([
71
- "innerHTML",
72
- "textContent",
73
- "innerText",
74
- "children"
75
- ]);
76
- const Aliases = /*#__PURE__*/ Object.assign(Object.create(null), {
4
+ const booleans = ["allowfullscreen", "async", "autofocus", "autoplay", "checked", "controls", "default", "disabled", "formnovalidate", "hidden", "indeterminate", "inert", "ismap", "loop", "multiple", "muted", "nomodule", "novalidate", "open", "playsinline", "readonly", "required", "reversed", "seamless", "selected"];
5
+ const Properties = /*#__PURE__*/new Set(["className", "value", "readOnly", "formNoValidate", "isMap", "noModule", "playsInline", ...booleans]);
6
+ const ChildProperties = /*#__PURE__*/new Set(["innerHTML", "textContent", "innerText", "children"]);
7
+ const Aliases = /*#__PURE__*/Object.assign(Object.create(null), {
77
8
  className: "class",
78
9
  htmlFor: "for"
79
10
  });
80
- const PropAliases = /*#__PURE__*/ Object.assign(Object.create(null), {
11
+ const PropAliases = /*#__PURE__*/Object.assign(Object.create(null), {
81
12
  class: "className",
82
13
  formnovalidate: {
83
14
  $: "formNoValidate",
@@ -104,396 +35,19 @@ const PropAliases = /*#__PURE__*/ Object.assign(Object.create(null), {
104
35
  });
105
36
  function getPropAlias(prop, tagName) {
106
37
  const a = PropAliases[prop];
107
- return typeof a === "object" ? (a[tagName] ? a["$"] : undefined) : a;
108
- }
109
- const DelegatedEvents = /*#__PURE__*/ new Set([
110
- "beforeinput",
111
- "click",
112
- "dblclick",
113
- "contextmenu",
114
- "focusin",
115
- "focusout",
116
- "input",
117
- "keydown",
118
- "keyup",
119
- "mousedown",
120
- "mousemove",
121
- "mouseout",
122
- "mouseover",
123
- "mouseup",
124
- "pointerdown",
125
- "pointermove",
126
- "pointerout",
127
- "pointerover",
128
- "pointerup",
129
- "touchend",
130
- "touchmove",
131
- "touchstart"
132
- ]);
133
- const SVGElements = /*#__PURE__*/ new Set([
134
- "altGlyph",
135
- "altGlyphDef",
136
- "altGlyphItem",
137
- "animate",
138
- "animateColor",
139
- "animateMotion",
140
- "animateTransform",
141
- "circle",
142
- "clipPath",
143
- "color-profile",
144
- "cursor",
145
- "defs",
146
- "desc",
147
- "ellipse",
148
- "feBlend",
149
- "feColorMatrix",
150
- "feComponentTransfer",
151
- "feComposite",
152
- "feConvolveMatrix",
153
- "feDiffuseLighting",
154
- "feDisplacementMap",
155
- "feDistantLight",
156
- "feDropShadow",
157
- "feFlood",
158
- "feFuncA",
159
- "feFuncB",
160
- "feFuncG",
161
- "feFuncR",
162
- "feGaussianBlur",
163
- "feImage",
164
- "feMerge",
165
- "feMergeNode",
166
- "feMorphology",
167
- "feOffset",
168
- "fePointLight",
169
- "feSpecularLighting",
170
- "feSpotLight",
171
- "feTile",
172
- "feTurbulence",
173
- "filter",
174
- "font",
175
- "font-face",
176
- "font-face-format",
177
- "font-face-name",
178
- "font-face-src",
179
- "font-face-uri",
180
- "foreignObject",
181
- "g",
182
- "glyph",
183
- "glyphRef",
184
- "hkern",
185
- "image",
186
- "line",
187
- "linearGradient",
188
- "marker",
189
- "mask",
190
- "metadata",
191
- "missing-glyph",
192
- "mpath",
193
- "path",
194
- "pattern",
195
- "polygon",
196
- "polyline",
197
- "radialGradient",
198
- "rect",
199
- "set",
200
- "stop",
201
- "svg",
202
- "switch",
203
- "symbol",
204
- "text",
205
- "textPath",
206
- "tref",
207
- "tspan",
208
- "use",
209
- "view",
210
- "vkern"
211
- ]);
38
+ return typeof a === "object" ? a[tagName] ? a["$"] : undefined : a;
39
+ }
40
+ const DelegatedEvents = /*#__PURE__*/new Set(["beforeinput", "click", "dblclick", "contextmenu", "focusin", "focusout", "input", "keydown", "keyup", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "pointerdown", "pointermove", "pointerout", "pointerover", "pointerup", "touchend", "touchmove", "touchstart"]);
41
+ const SVGElements = /*#__PURE__*/new Set([
42
+ "altGlyph", "altGlyphDef", "altGlyphItem", "animate", "animateColor", "animateMotion", "animateTransform", "circle", "clipPath", "color-profile", "cursor", "defs", "desc", "ellipse", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "filter", "font", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignObject", "g", "glyph", "glyphRef", "hkern", "image", "line", "linearGradient", "marker", "mask", "metadata", "missing-glyph", "mpath", "path", "pattern", "polygon", "polyline", "radialGradient", "rect",
43
+ "set", "stop",
44
+ "svg", "switch", "symbol", "text", "textPath",
45
+ "tref", "tspan", "use", "view", "vkern"]);
212
46
  const SVGNamespace = {
213
47
  xlink: "http://www.w3.org/1999/xlink",
214
48
  xml: "http://www.w3.org/XML/1998/namespace"
215
49
  };
216
- const DOMElements = /*#__PURE__*/ new Set([
217
- "html",
218
- "base",
219
- "head",
220
- "link",
221
- "meta",
222
- "style",
223
- "title",
224
- "body",
225
- "address",
226
- "article",
227
- "aside",
228
- "footer",
229
- "header",
230
- "main",
231
- "nav",
232
- "section",
233
- "body",
234
- "blockquote",
235
- "dd",
236
- "div",
237
- "dl",
238
- "dt",
239
- "figcaption",
240
- "figure",
241
- "hr",
242
- "li",
243
- "ol",
244
- "p",
245
- "pre",
246
- "ul",
247
- "a",
248
- "abbr",
249
- "b",
250
- "bdi",
251
- "bdo",
252
- "br",
253
- "cite",
254
- "code",
255
- "data",
256
- "dfn",
257
- "em",
258
- "i",
259
- "kbd",
260
- "mark",
261
- "q",
262
- "rp",
263
- "rt",
264
- "ruby",
265
- "s",
266
- "samp",
267
- "small",
268
- "span",
269
- "strong",
270
- "sub",
271
- "sup",
272
- "time",
273
- "u",
274
- "var",
275
- "wbr",
276
- "area",
277
- "audio",
278
- "img",
279
- "map",
280
- "track",
281
- "video",
282
- "embed",
283
- "iframe",
284
- "object",
285
- "param",
286
- "picture",
287
- "portal",
288
- "source",
289
- "svg",
290
- "math",
291
- "canvas",
292
- "noscript",
293
- "script",
294
- "del",
295
- "ins",
296
- "caption",
297
- "col",
298
- "colgroup",
299
- "table",
300
- "tbody",
301
- "td",
302
- "tfoot",
303
- "th",
304
- "thead",
305
- "tr",
306
- "button",
307
- "datalist",
308
- "fieldset",
309
- "form",
310
- "input",
311
- "label",
312
- "legend",
313
- "meter",
314
- "optgroup",
315
- "option",
316
- "output",
317
- "progress",
318
- "select",
319
- "textarea",
320
- "details",
321
- "dialog",
322
- "menu",
323
- "summary",
324
- "details",
325
- "slot",
326
- "template",
327
- "acronym",
328
- "applet",
329
- "basefont",
330
- "bgsound",
331
- "big",
332
- "blink",
333
- "center",
334
- "content",
335
- "dir",
336
- "font",
337
- "frame",
338
- "frameset",
339
- "hgroup",
340
- "image",
341
- "keygen",
342
- "marquee",
343
- "menuitem",
344
- "nobr",
345
- "noembed",
346
- "noframes",
347
- "plaintext",
348
- "rb",
349
- "rtc",
350
- "shadow",
351
- "spacer",
352
- "strike",
353
- "tt",
354
- "xmp",
355
- "a",
356
- "abbr",
357
- "acronym",
358
- "address",
359
- "applet",
360
- "area",
361
- "article",
362
- "aside",
363
- "audio",
364
- "b",
365
- "base",
366
- "basefont",
367
- "bdi",
368
- "bdo",
369
- "bgsound",
370
- "big",
371
- "blink",
372
- "blockquote",
373
- "body",
374
- "br",
375
- "button",
376
- "canvas",
377
- "caption",
378
- "center",
379
- "cite",
380
- "code",
381
- "col",
382
- "colgroup",
383
- "content",
384
- "data",
385
- "datalist",
386
- "dd",
387
- "del",
388
- "details",
389
- "dfn",
390
- "dialog",
391
- "dir",
392
- "div",
393
- "dl",
394
- "dt",
395
- "em",
396
- "embed",
397
- "fieldset",
398
- "figcaption",
399
- "figure",
400
- "font",
401
- "footer",
402
- "form",
403
- "frame",
404
- "frameset",
405
- "head",
406
- "header",
407
- "hgroup",
408
- "hr",
409
- "html",
410
- "i",
411
- "iframe",
412
- "image",
413
- "img",
414
- "input",
415
- "ins",
416
- "kbd",
417
- "keygen",
418
- "label",
419
- "legend",
420
- "li",
421
- "link",
422
- "main",
423
- "map",
424
- "mark",
425
- "marquee",
426
- "menu",
427
- "menuitem",
428
- "meta",
429
- "meter",
430
- "nav",
431
- "nobr",
432
- "noembed",
433
- "noframes",
434
- "noscript",
435
- "object",
436
- "ol",
437
- "optgroup",
438
- "option",
439
- "output",
440
- "p",
441
- "param",
442
- "picture",
443
- "plaintext",
444
- "portal",
445
- "pre",
446
- "progress",
447
- "q",
448
- "rb",
449
- "rp",
450
- "rt",
451
- "rtc",
452
- "ruby",
453
- "s",
454
- "samp",
455
- "script",
456
- "section",
457
- "select",
458
- "shadow",
459
- "slot",
460
- "small",
461
- "source",
462
- "spacer",
463
- "span",
464
- "strike",
465
- "strong",
466
- "style",
467
- "sub",
468
- "summary",
469
- "sup",
470
- "table",
471
- "tbody",
472
- "td",
473
- "template",
474
- "textarea",
475
- "tfoot",
476
- "th",
477
- "thead",
478
- "time",
479
- "title",
480
- "tr",
481
- "track",
482
- "tt",
483
- "u",
484
- "ul",
485
- "var",
486
- "video",
487
- "wbr",
488
- "xmp",
489
- "input",
490
- "h1",
491
- "h2",
492
- "h3",
493
- "h4",
494
- "h5",
495
- "h6"
496
- ]);
50
+ const DOMElements = /*#__PURE__*/new Set(["html", "base", "head", "link", "meta", "style", "title", "body", "address", "article", "aside", "footer", "header", "main", "nav", "section", "body", "blockquote", "dd", "div", "dl", "dt", "figcaption", "figure", "hr", "li", "ol", "p", "pre", "ul", "a", "abbr", "b", "bdi", "bdo", "br", "cite", "code", "data", "dfn", "em", "i", "kbd", "mark", "q", "rp", "rt", "ruby", "s", "samp", "small", "span", "strong", "sub", "sup", "time", "u", "var", "wbr", "area", "audio", "img", "map", "track", "video", "embed", "iframe", "object", "param", "picture", "portal", "source", "svg", "math", "canvas", "noscript", "script", "del", "ins", "caption", "col", "colgroup", "table", "tbody", "td", "tfoot", "th", "thead", "tr", "button", "datalist", "fieldset", "form", "input", "label", "legend", "meter", "optgroup", "option", "output", "progress", "select", "textarea", "details", "dialog", "menu", "summary", "details", "slot", "template", "acronym", "applet", "basefont", "bgsound", "big", "blink", "center", "content", "dir", "font", "frame", "frameset", "hgroup", "image", "keygen", "marquee", "menuitem", "nobr", "noembed", "noframes", "plaintext", "rb", "rtc", "shadow", "spacer", "strike", "tt", "xmp", "a", "abbr", "acronym", "address", "applet", "area", "article", "aside", "audio", "b", "base", "basefont", "bdi", "bdo", "bgsound", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "font", "footer", "form", "frame", "frameset", "head", "header", "hgroup", "hr", "html", "i", "iframe", "image", "img", "input", "ins", "kbd", "keygen", "label", "legend", "li", "link", "main", "map", "mark", "marquee", "menu", "menuitem", "meta", "meter", "nav", "nobr", "noembed", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "plaintext", "portal", "pre", "progress", "q", "rb", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "section", "select", "shadow", "slot", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "tt", "u", "ul", "var", "video", "wbr", "xmp", "input", "h1", "h2", "h3", "h4", "h5", "h6"]);
497
51
 
498
52
  function reconcileArrays(parentNode, a, b) {
499
53
  let bLength = b.length,
@@ -514,7 +68,7 @@ function reconcileArrays(parentNode, a, b) {
514
68
  bEnd--;
515
69
  }
516
70
  if (aEnd === aStart) {
517
- const node = bEnd < bLength ? (bStart ? b[bStart - 1].nextSibling : b[bEnd - bStart]) : after;
71
+ const node = bEnd < bLength ? bStart ? b[bStart - 1].nextSibling : b[bEnd - bStart] : after;
518
72
  while (bStart < bEnd) parentNode.insertBefore(b[bStart++], node);
519
73
  } else if (bEnd === bStart) {
520
74
  while (aStart < aEnd) {
@@ -555,16 +109,12 @@ function reconcileArrays(parentNode, a, b) {
555
109
  const $$EVENTS = "_$DX_DELEGATE";
556
110
  function render(code, element, init, options = {}) {
557
111
  if (!element) {
558
- throw new Error(
559
- "The `element` passed to `render(..., element)` doesn't exist. Make sure `element` exists in the document."
560
- );
112
+ throw new Error("The `element` passed to `render(..., element)` doesn't exist. Make sure `element` exists in the document.");
561
113
  }
562
114
  let disposer;
563
115
  createRoot(dispose => {
564
116
  disposer = dispose;
565
- element === document
566
- ? code()
567
- : insert(element, code(), element.firstChild ? null : undefined, init);
117
+ element === document ? code() : insert(element, code(), element.firstChild ? null : undefined, init);
568
118
  }, options.owner);
569
119
  return () => {
570
120
  disposer();
@@ -574,17 +124,12 @@ function render(code, element, init, options = {}) {
574
124
  function template(html, isCE, isSVG) {
575
125
  let node;
576
126
  const create = () => {
577
- if (isHydrating())
578
- throw new Error(
579
- "Failed attempt to create new DOM elements during hydration. Check that the libraries you are using support hydration."
580
- );
127
+ if (isHydrating()) throw new Error("Failed attempt to create new DOM elements during hydration. Check that the libraries you are using support hydration.");
581
128
  const t = document.createElement("template");
582
129
  t.innerHTML = html;
583
130
  return isSVG ? t.content.firstChild.firstChild : t.content.firstChild;
584
131
  };
585
- const fn = isCE
586
- ? () => untrack(() => document.importNode(node || (node = create()), true))
587
- : () => (node || (node = create())).cloneNode(true);
132
+ const fn = isCE ? () => untrack(() => document.importNode(node || (node = create()), true)) : () => (node || (node = create())).cloneNode(true);
588
133
  fn.cloneNode = fn;
589
134
  return fn;
590
135
  }
@@ -610,18 +155,15 @@ function setProperty(node, name, value) {
610
155
  }
611
156
  function setAttribute(node, name, value) {
612
157
  if (isHydrating(node)) return;
613
- if (value == null) node.removeAttribute(name);
614
- else node.setAttribute(name, value);
158
+ if (value == null) node.removeAttribute(name);else node.setAttribute(name, value);
615
159
  }
616
160
  function setAttributeNS(node, namespace, name, value) {
617
161
  if (isHydrating(node)) return;
618
- if (value == null) node.removeAttributeNS(namespace, name);
619
- else node.setAttributeNS(namespace, name, value);
162
+ if (value == null) node.removeAttributeNS(namespace, name);else node.setAttributeNS(namespace, name, value);
620
163
  }
621
164
  function className(node, value) {
622
165
  if (isHydrating(node)) return;
623
- if (value == null) node.removeAttribute("class");
624
- else node.className = value;
166
+ if (value == null) node.removeAttribute("class");else node.className = value;
625
167
  }
626
168
  function addEventListener(node, name, handler, delegate) {
627
169
  if (delegate) {
@@ -631,7 +173,7 @@ function addEventListener(node, name, handler, delegate) {
631
173
  } else node[`$$${name}`] = handler;
632
174
  } else if (Array.isArray(handler)) {
633
175
  const handlerFn = handler[0];
634
- node.addEventListener(name, (handler[0] = e => handlerFn.call(node, handler[1], e)));
176
+ node.addEventListener(name, handler[0] = e => handlerFn.call(node, handler[1], e));
635
177
  } else node.addEventListener(name, handler);
636
178
  }
637
179
  function classList(node, value, prev = {}) {
@@ -656,7 +198,7 @@ function classList(node, value, prev = {}) {
656
198
  function style(node, value, prev) {
657
199
  if (!value) return prev ? setAttribute(node, "style") : value;
658
200
  const nodeStyle = node.style;
659
- if (typeof value === "string") return (nodeStyle.cssText = value);
201
+ if (typeof value === "string") return nodeStyle.cssText = value;
660
202
  typeof prev === "string" && (nodeStyle.cssText = prev = undefined);
661
203
  prev || (prev = {});
662
204
  value || (value = {});
@@ -677,9 +219,7 @@ function style(node, value, prev) {
677
219
  function spread(node, props = {}, isSVG, skipChildren) {
678
220
  const prevProps = {};
679
221
  if (!skipChildren) {
680
- createRenderEffect(
681
- () => (prevProps.children = insertExpression(node, props.children, prevProps.children))
682
- );
222
+ createRenderEffect(() => prevProps.children = insertExpression(node, props.children, prevProps.children));
683
223
  }
684
224
  createRenderEffect(() => typeof props.ref === "function" && use(props.ref, node));
685
225
  createRenderEffect(() => assign(node, props, isSVG, true, prevProps, true));
@@ -743,9 +283,8 @@ function getNextElement(template) {
743
283
  let node,
744
284
  key,
745
285
  hydrating = isHydrating();
746
- if (!hydrating || !(node = sharedConfig.registry.get((key = getHydrationKey())))) {
747
- if (hydrating)
748
- throw new Error(`Hydration Mismatch. Unable to find DOM nodes for hydration key: ${key}`);
286
+ if (!hydrating || !(node = sharedConfig.registry.get(key = getHydrationKey()))) {
287
+ if (hydrating) throw new Error(`Hydration Mismatch. Unable to find DOM nodes for hydration key: ${key}`);
749
288
  return template();
750
289
  }
751
290
  if (sharedConfig.completed) sharedConfig.completed.add(node);
@@ -764,8 +303,7 @@ function getNextMarker(start) {
764
303
  while (end) {
765
304
  if (end.nodeType === 8) {
766
305
  const v = end.nodeValue;
767
- if (v === "$") count++;
768
- else if (v === "/") {
306
+ if (v === "$") count++;else if (v === "/") {
769
307
  if (count === 0) return [end, current];
770
308
  count--;
771
309
  }
@@ -779,7 +317,10 @@ function getNextMarker(start) {
779
317
  function runHydrationEvents() {
780
318
  if (sharedConfig.events && !sharedConfig.events.queued) {
781
319
  queueMicrotask(() => {
782
- const { completed, events } = sharedConfig;
320
+ const {
321
+ completed,
322
+ events
323
+ } = sharedConfig;
783
324
  events.queued = false;
784
325
  while (events.length) {
785
326
  const [el, e] = events[0];
@@ -803,8 +344,7 @@ function toPropertyName(name) {
803
344
  }
804
345
  function toggleClassKey(node, key, value) {
805
346
  const classNames = key.trim().split(/\s+/);
806
- for (let i = 0, nameLen = classNames.length; i < nameLen; i++)
807
- node.classList.toggle(classNames[i], value);
347
+ for (let i = 0, nameLen = classNames.length; i < nameLen; i++) node.classList.toggle(classNames[i], value);
808
348
  }
809
349
  function assignProp(node, prop, value, prev, isSVG, skipRef) {
810
350
  let isCE, isProp, isChildProp, propAlias, forceProp;
@@ -834,24 +374,15 @@ function assignProp(node, prop, value, prev, isSVG, skipRef) {
834
374
  }
835
375
  } else if (prop.slice(0, 5) === "attr:") {
836
376
  setAttribute(node, prop.slice(5), value);
837
- } else if (
838
- (forceProp = prop.slice(0, 5) === "prop:") ||
839
- (isChildProp = ChildProperties.has(prop)) ||
840
- (!isSVG &&
841
- ((propAlias = getPropAlias(prop, node.tagName)) || (isProp = Properties.has(prop)))) ||
842
- (isCE = node.nodeName.includes("-"))
843
- ) {
377
+ } else if ((forceProp = prop.slice(0, 5) === "prop:") || (isChildProp = ChildProperties.has(prop)) || !isSVG && ((propAlias = getPropAlias(prop, node.tagName)) || (isProp = Properties.has(prop))) || (isCE = node.nodeName.includes("-"))) {
844
378
  if (forceProp) {
845
379
  prop = prop.slice(5);
846
380
  isProp = true;
847
381
  } else if (isHydrating(node)) return value;
848
- if (prop === "class" || prop === "className") className(node, value);
849
- else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;
850
- else node[propAlias || prop] = value;
382
+ if (prop === "class" || prop === "className") className(node, value);else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;else node[propAlias || prop] = value;
851
383
  } else {
852
384
  const ns = isSVG && prop.indexOf(":") > -1 && SVGNamespace[prop.split(":")[0]];
853
- if (ns) setAttributeNS(node, ns, prop, value);
854
- else setAttribute(node, Aliases[prop] || prop, value);
385
+ if (ns) setAttributeNS(node, ns, prop, value);else setAttribute(node, Aliases[prop] || prop, value);
855
386
  }
856
387
  return value;
857
388
  }
@@ -860,7 +391,7 @@ function eventHandler(e) {
860
391
  if (sharedConfig.events.find(([el, ev]) => ev === e)) return;
861
392
  }
862
393
  const key = `$$${e.type}`;
863
- let node = (e.composedPath && e.composedPath()[0]) || e.target;
394
+ let node = e.composedPath && e.composedPath()[0] || e.target;
864
395
  if (e.target !== node) {
865
396
  Object.defineProperty(e, "target", {
866
397
  configurable: true,
@@ -891,8 +422,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
891
422
  let cleaned = [];
892
423
  for (let i = 0; i < current.length; i++) {
893
424
  const node = current[i];
894
- if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();
895
- else cleaned.push(node);
425
+ if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();else cleaned.push(node);
896
426
  }
897
427
  current = cleaned;
898
428
  }
@@ -900,7 +430,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
900
430
  if (value === current) return current;
901
431
  const t = typeof value,
902
432
  multi = marker !== undefined;
903
- parent = (multi && current[0] && current[0].parentNode) || parent;
433
+ parent = multi && current[0] && current[0].parentNode || parent;
904
434
  if (t === "string" || t === "number") {
905
435
  if (hydrating) return current;
906
436
  if (t === "number") {
@@ -932,17 +462,17 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
932
462
  const array = [];
933
463
  const currentArray = current && Array.isArray(current);
934
464
  if (normalizeIncomingArray(array, value, current, unwrapArray)) {
935
- createRenderEffect(() => (current = insertExpression(parent, array, current, marker, true)));
465
+ createRenderEffect(() => current = insertExpression(parent, array, current, marker, true));
936
466
  return () => current;
937
467
  }
938
468
  if (hydrating) {
939
469
  if (!array.length) return current;
940
- if (marker === undefined) return (current = [...parent.childNodes]);
470
+ if (marker === undefined) return current = [...parent.childNodes];
941
471
  let node = array[0];
942
472
  if (node.parentNode !== parent) return current;
943
473
  const nodes = [node];
944
474
  while ((node = node.nextSibling) !== marker) nodes.push(node);
945
- return (current = nodes);
475
+ return current = nodes;
946
476
  }
947
477
  if (array.length === 0) {
948
478
  current = cleanChildren(parent, current, marker);
@@ -957,9 +487,9 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
957
487
  }
958
488
  current = array;
959
489
  } else if (value.nodeType) {
960
- if (hydrating && value.parentNode) return (current = multi ? [value] : value);
490
+ if (hydrating && value.parentNode) return current = multi ? [value] : value;
961
491
  if (Array.isArray(current)) {
962
- if (multi) return (current = cleanChildren(parent, current, marker, value));
492
+ if (multi) return current = cleanChildren(parent, current, marker, value);
963
493
  cleanChildren(parent, current, null, value);
964
494
  } else if (current == null || current === "" || !parent.firstChild) {
965
495
  parent.appendChild(value);
@@ -974,28 +504,21 @@ function normalizeIncomingArray(normalized, array, current, unwrap) {
974
504
  let item = array[i],
975
505
  prev = current && current[normalized.length],
976
506
  t;
977
- if (item == null || item === true || item === false);
978
- else if ((t = typeof item) === "object" && item.nodeType) {
507
+ if (item == null || item === true || item === false) ; else if ((t = typeof item) === "object" && item.nodeType) {
979
508
  normalized.push(item);
980
509
  } else if (Array.isArray(item)) {
981
510
  dynamic = normalizeIncomingArray(normalized, item, prev) || dynamic;
982
511
  } else if (t === "function") {
983
512
  if (unwrap) {
984
513
  while (typeof item === "function") item = item();
985
- dynamic =
986
- normalizeIncomingArray(
987
- normalized,
988
- Array.isArray(item) ? item : [item],
989
- Array.isArray(prev) ? prev : [prev]
990
- ) || dynamic;
514
+ dynamic = normalizeIncomingArray(normalized, Array.isArray(item) ? item : [item], Array.isArray(prev) ? prev : [prev]) || dynamic;
991
515
  } else {
992
516
  normalized.push(item);
993
517
  dynamic = true;
994
518
  }
995
519
  } else {
996
520
  const value = String(item);
997
- if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);
998
- else normalized.push(document.createTextNode(value));
521
+ if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);else normalized.push(document.createTextNode(value));
999
522
  }
1000
523
  }
1001
524
  return dynamic;
@@ -1004,7 +527,7 @@ function appendNodes(parent, array, marker = null) {
1004
527
  for (let i = 0, len = array.length; i < len; i++) parent.insertBefore(array[i], marker);
1005
528
  }
1006
529
  function cleanChildren(parent, current, marker, replacement) {
1007
- if (marker === undefined) return (parent.textContent = "");
530
+ if (marker === undefined) return parent.textContent = "";
1008
531
  const node = replacement || document.createTextNode("");
1009
532
  if (current.length) {
1010
533
  let inserted = false;
@@ -1012,9 +535,7 @@ function cleanChildren(parent, current, marker, replacement) {
1012
535
  const el = current[i];
1013
536
  if (node !== el) {
1014
537
  const isParent = el.parentNode === parent;
1015
- if (!inserted && !i)
1016
- isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);
1017
- else isParent && el.remove();
538
+ if (!inserted && !i) isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);else isParent && el.remove();
1018
539
  } else inserted = true;
1019
540
  }
1020
541
  } else parent.insertBefore(node, marker);
@@ -1025,8 +546,7 @@ function gatherHydratable(element, root) {
1025
546
  for (let i = 0; i < templates.length; i++) {
1026
547
  const node = templates[i];
1027
548
  const key = node.getAttribute("data-hk");
1028
- if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key))
1029
- sharedConfig.registry.set(key, node);
549
+ if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key)) sharedConfig.registry.set(key, node);
1030
550
  }
1031
551
  }
1032
552
  function getHydrationKey() {
@@ -1078,47 +598,42 @@ const hydrate = (...args) => {
1078
598
  return hydrate$1(...args);
1079
599
  };
1080
600
  function Portal(props) {
1081
- const { useShadow } = props,
601
+ const {
602
+ useShadow
603
+ } = props,
1082
604
  marker = document.createTextNode(""),
1083
605
  mount = () => props.mount || document.body,
1084
606
  owner = getOwner();
1085
607
  let content;
1086
608
  let hydrating = !!sharedConfig.context;
1087
- createEffect(
1088
- () => {
1089
- if (hydrating) getOwner().user = hydrating = false;
1090
- content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
1091
- const el = mount();
1092
- if (el instanceof HTMLHeadElement) {
1093
- const [clean, setClean] = createSignal(false);
1094
- const cleanup = () => setClean(true);
1095
- createRoot(dispose => insert(el, () => (!clean() ? content() : dispose()), null));
1096
- onCleanup(cleanup);
1097
- } else {
1098
- const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
1099
- renderRoot =
1100
- useShadow && container.attachShadow
1101
- ? container.attachShadow({
1102
- mode: "open"
1103
- })
1104
- : container;
1105
- Object.defineProperty(container, "_$host", {
1106
- get() {
1107
- return marker.parentNode;
1108
- },
1109
- configurable: true
1110
- });
1111
- insert(renderRoot, content);
1112
- el.appendChild(container);
1113
- props.ref && props.ref(container);
1114
- onCleanup(() => el.removeChild(container));
1115
- }
1116
- },
1117
- undefined,
1118
- {
1119
- render: !hydrating
609
+ createEffect(() => {
610
+ if (hydrating) getOwner().user = hydrating = false;
611
+ content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
612
+ const el = mount();
613
+ if (el instanceof HTMLHeadElement) {
614
+ const [clean, setClean] = createSignal(false);
615
+ const cleanup = () => setClean(true);
616
+ createRoot(dispose => insert(el, () => !clean() ? content() : dispose(), null));
617
+ onCleanup(cleanup);
618
+ } else {
619
+ const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
620
+ renderRoot = useShadow && container.attachShadow ? container.attachShadow({
621
+ mode: "open"
622
+ }) : container;
623
+ Object.defineProperty(container, "_$host", {
624
+ get() {
625
+ return marker.parentNode;
626
+ },
627
+ configurable: true
628
+ });
629
+ insert(renderRoot, content);
630
+ el.appendChild(container);
631
+ props.ref && props.ref(container);
632
+ onCleanup(() => el.removeChild(container));
1120
633
  }
1121
- );
634
+ }, undefined, {
635
+ render: !hydrating
636
+ });
1122
637
  return marker;
1123
638
  }
1124
639
  function Dynamic(props) {
@@ -1141,61 +656,4 @@ function Dynamic(props) {
1141
656
  });
1142
657
  }
1143
658
 
1144
- export {
1145
- Aliases,
1146
- voidFn as Assets,
1147
- ChildProperties,
1148
- DOMElements,
1149
- DelegatedEvents,
1150
- Dynamic,
1151
- Hydration,
1152
- voidFn as HydrationScript,
1153
- NoHydration,
1154
- Portal,
1155
- Properties,
1156
- RequestContext,
1157
- SVGElements,
1158
- SVGNamespace,
1159
- addEventListener,
1160
- assign,
1161
- classList,
1162
- className,
1163
- clearDelegatedEvents,
1164
- delegateEvents,
1165
- dynamicProperty,
1166
- escape,
1167
- voidFn as generateHydrationScript,
1168
- voidFn as getAssets,
1169
- getHydrationKey,
1170
- getNextElement,
1171
- getNextMarker,
1172
- getNextMatch,
1173
- getPropAlias,
1174
- voidFn as getRequestEvent,
1175
- hydrate,
1176
- innerHTML,
1177
- insert,
1178
- isDev,
1179
- isServer,
1180
- render,
1181
- renderToStream,
1182
- renderToString,
1183
- renderToStringAsync,
1184
- resolveSSRNode,
1185
- runHydrationEvents,
1186
- setAttribute,
1187
- setAttributeNS,
1188
- setProperty,
1189
- spread,
1190
- ssr,
1191
- ssrAttribute,
1192
- ssrClassList,
1193
- ssrElement,
1194
- ssrHydrationKey,
1195
- ssrSpread,
1196
- ssrStyle,
1197
- style,
1198
- template,
1199
- use,
1200
- voidFn as useAssets
1201
- };
659
+ export { Aliases, voidFn as Assets, ChildProperties, DOMElements, DelegatedEvents, Dynamic, Hydration, voidFn as HydrationScript, NoHydration, Portal, Properties, RequestContext, SVGElements, SVGNamespace, addEventListener, assign, classList, className, clearDelegatedEvents, delegateEvents, dynamicProperty, escape, voidFn as generateHydrationScript, voidFn as getAssets, getHydrationKey, getNextElement, getNextMarker, getNextMatch, getPropAlias, voidFn as getRequestEvent, hydrate, innerHTML, insert, isDev, isServer, render, renderToStream, renderToString, renderToStringAsync, resolveSSRNode, runHydrationEvents, setAttribute, setAttributeNS, setProperty, spread, ssr, ssrAttribute, ssrClassList, ssrElement, ssrHydrationKey, ssrSpread, ssrStyle, style, template, use, voidFn as useAssets };