solid-js 1.8.8 → 1.8.9

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 (51) hide show
  1. package/dist/dev.cjs +17 -21
  2. package/dist/dev.js +554 -321
  3. package/dist/server.js +170 -75
  4. package/dist/solid.cjs +17 -21
  5. package/dist/solid.js +481 -279
  6. package/h/dist/h.js +34 -8
  7. package/h/jsx-runtime/dist/jsx.js +1 -1
  8. package/h/jsx-runtime/types/index.d.ts +11 -8
  9. package/h/jsx-runtime/types/jsx.d.ts +2 -1
  10. package/h/types/hyperscript.d.ts +11 -11
  11. package/html/dist/html.js +216 -94
  12. package/html/types/lit.d.ts +47 -33
  13. package/package.json +3 -2
  14. package/store/dist/dev.cjs +1 -1
  15. package/store/dist/dev.js +117 -42
  16. package/store/dist/server.js +19 -8
  17. package/store/dist/store.cjs +1 -1
  18. package/store/dist/store.js +108 -39
  19. package/store/types/index.d.ts +21 -7
  20. package/store/types/modifiers.d.ts +6 -3
  21. package/store/types/mutable.d.ts +5 -2
  22. package/store/types/server.d.ts +12 -4
  23. package/store/types/store.d.ts +218 -61
  24. package/types/index.d.ts +75 -10
  25. package/types/jsx.d.ts +2 -1
  26. package/types/reactive/array.d.ts +12 -4
  27. package/types/reactive/observable.d.ts +25 -17
  28. package/types/reactive/scheduler.d.ts +9 -6
  29. package/types/reactive/signal.d.ts +233 -142
  30. package/types/render/Suspense.d.ts +5 -5
  31. package/types/render/component.d.ts +64 -33
  32. package/types/render/flow.d.ts +43 -31
  33. package/types/render/hydration.d.ts +13 -13
  34. package/types/server/index.d.ts +57 -2
  35. package/types/server/reactive.d.ts +73 -42
  36. package/types/server/rendering.d.ts +167 -96
  37. package/universal/dist/dev.js +28 -12
  38. package/universal/dist/universal.js +28 -12
  39. package/universal/types/index.d.ts +3 -1
  40. package/universal/types/universal.d.ts +0 -1
  41. package/web/dist/dev.cjs +1 -1
  42. package/web/dist/dev.js +621 -82
  43. package/web/dist/server.cjs +30 -27
  44. package/web/dist/server.js +232 -121
  45. package/web/dist/storage.js +3 -3
  46. package/web/dist/web.cjs +1 -1
  47. package/web/dist/web.js +615 -81
  48. package/web/types/client.d.ts +2 -2
  49. package/web/types/core.d.ts +10 -1
  50. package/web/types/index.d.ts +27 -10
  51. package/web/types/server-mock.d.ts +47 -32
package/web/dist/dev.js CHANGED
@@ -1,14 +1,83 @@
1
- import { createRoot, sharedConfig, createRenderEffect, untrack, 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';
1
+ import {
2
+ createRoot,
3
+ sharedConfig,
4
+ createRenderEffect,
5
+ untrack,
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";
3
32
 
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), {
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), {
8
77
  className: "class",
9
78
  htmlFor: "for"
10
79
  });
11
- const PropAliases = /*#__PURE__*/Object.assign(Object.create(null), {
80
+ const PropAliases = /*#__PURE__*/ Object.assign(Object.create(null), {
12
81
  class: "className",
13
82
  formnovalidate: {
14
83
  $: "formNoValidate",
@@ -35,19 +104,395 @@ const PropAliases = /*#__PURE__*/Object.assign(Object.create(null), {
35
104
  });
36
105
  function getPropAlias(prop, tagName) {
37
106
  const a = PropAliases[prop];
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", "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"]);
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
+ "feFlood",
157
+ "feFuncA",
158
+ "feFuncB",
159
+ "feFuncG",
160
+ "feFuncR",
161
+ "feGaussianBlur",
162
+ "feImage",
163
+ "feMerge",
164
+ "feMergeNode",
165
+ "feMorphology",
166
+ "feOffset",
167
+ "fePointLight",
168
+ "feSpecularLighting",
169
+ "feSpotLight",
170
+ "feTile",
171
+ "feTurbulence",
172
+ "filter",
173
+ "font",
174
+ "font-face",
175
+ "font-face-format",
176
+ "font-face-name",
177
+ "font-face-src",
178
+ "font-face-uri",
179
+ "foreignObject",
180
+ "g",
181
+ "glyph",
182
+ "glyphRef",
183
+ "hkern",
184
+ "image",
185
+ "line",
186
+ "linearGradient",
187
+ "marker",
188
+ "mask",
189
+ "metadata",
190
+ "missing-glyph",
191
+ "mpath",
192
+ "path",
193
+ "pattern",
194
+ "polygon",
195
+ "polyline",
196
+ "radialGradient",
197
+ "rect",
198
+ "set",
199
+ "stop",
200
+ "svg",
201
+ "switch",
202
+ "symbol",
203
+ "text",
204
+ "textPath",
205
+ "tref",
206
+ "tspan",
207
+ "use",
208
+ "view",
209
+ "vkern"
210
+ ]);
46
211
  const SVGNamespace = {
47
212
  xlink: "http://www.w3.org/1999/xlink",
48
213
  xml: "http://www.w3.org/XML/1998/namespace"
49
214
  };
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"]);
215
+ const DOMElements = /*#__PURE__*/ new Set([
216
+ "html",
217
+ "base",
218
+ "head",
219
+ "link",
220
+ "meta",
221
+ "style",
222
+ "title",
223
+ "body",
224
+ "address",
225
+ "article",
226
+ "aside",
227
+ "footer",
228
+ "header",
229
+ "main",
230
+ "nav",
231
+ "section",
232
+ "body",
233
+ "blockquote",
234
+ "dd",
235
+ "div",
236
+ "dl",
237
+ "dt",
238
+ "figcaption",
239
+ "figure",
240
+ "hr",
241
+ "li",
242
+ "ol",
243
+ "p",
244
+ "pre",
245
+ "ul",
246
+ "a",
247
+ "abbr",
248
+ "b",
249
+ "bdi",
250
+ "bdo",
251
+ "br",
252
+ "cite",
253
+ "code",
254
+ "data",
255
+ "dfn",
256
+ "em",
257
+ "i",
258
+ "kbd",
259
+ "mark",
260
+ "q",
261
+ "rp",
262
+ "rt",
263
+ "ruby",
264
+ "s",
265
+ "samp",
266
+ "small",
267
+ "span",
268
+ "strong",
269
+ "sub",
270
+ "sup",
271
+ "time",
272
+ "u",
273
+ "var",
274
+ "wbr",
275
+ "area",
276
+ "audio",
277
+ "img",
278
+ "map",
279
+ "track",
280
+ "video",
281
+ "embed",
282
+ "iframe",
283
+ "object",
284
+ "param",
285
+ "picture",
286
+ "portal",
287
+ "source",
288
+ "svg",
289
+ "math",
290
+ "canvas",
291
+ "noscript",
292
+ "script",
293
+ "del",
294
+ "ins",
295
+ "caption",
296
+ "col",
297
+ "colgroup",
298
+ "table",
299
+ "tbody",
300
+ "td",
301
+ "tfoot",
302
+ "th",
303
+ "thead",
304
+ "tr",
305
+ "button",
306
+ "datalist",
307
+ "fieldset",
308
+ "form",
309
+ "input",
310
+ "label",
311
+ "legend",
312
+ "meter",
313
+ "optgroup",
314
+ "option",
315
+ "output",
316
+ "progress",
317
+ "select",
318
+ "textarea",
319
+ "details",
320
+ "dialog",
321
+ "menu",
322
+ "summary",
323
+ "details",
324
+ "slot",
325
+ "template",
326
+ "acronym",
327
+ "applet",
328
+ "basefont",
329
+ "bgsound",
330
+ "big",
331
+ "blink",
332
+ "center",
333
+ "content",
334
+ "dir",
335
+ "font",
336
+ "frame",
337
+ "frameset",
338
+ "hgroup",
339
+ "image",
340
+ "keygen",
341
+ "marquee",
342
+ "menuitem",
343
+ "nobr",
344
+ "noembed",
345
+ "noframes",
346
+ "plaintext",
347
+ "rb",
348
+ "rtc",
349
+ "shadow",
350
+ "spacer",
351
+ "strike",
352
+ "tt",
353
+ "xmp",
354
+ "a",
355
+ "abbr",
356
+ "acronym",
357
+ "address",
358
+ "applet",
359
+ "area",
360
+ "article",
361
+ "aside",
362
+ "audio",
363
+ "b",
364
+ "base",
365
+ "basefont",
366
+ "bdi",
367
+ "bdo",
368
+ "bgsound",
369
+ "big",
370
+ "blink",
371
+ "blockquote",
372
+ "body",
373
+ "br",
374
+ "button",
375
+ "canvas",
376
+ "caption",
377
+ "center",
378
+ "cite",
379
+ "code",
380
+ "col",
381
+ "colgroup",
382
+ "content",
383
+ "data",
384
+ "datalist",
385
+ "dd",
386
+ "del",
387
+ "details",
388
+ "dfn",
389
+ "dialog",
390
+ "dir",
391
+ "div",
392
+ "dl",
393
+ "dt",
394
+ "em",
395
+ "embed",
396
+ "fieldset",
397
+ "figcaption",
398
+ "figure",
399
+ "font",
400
+ "footer",
401
+ "form",
402
+ "frame",
403
+ "frameset",
404
+ "head",
405
+ "header",
406
+ "hgroup",
407
+ "hr",
408
+ "html",
409
+ "i",
410
+ "iframe",
411
+ "image",
412
+ "img",
413
+ "input",
414
+ "ins",
415
+ "kbd",
416
+ "keygen",
417
+ "label",
418
+ "legend",
419
+ "li",
420
+ "link",
421
+ "main",
422
+ "map",
423
+ "mark",
424
+ "marquee",
425
+ "menu",
426
+ "menuitem",
427
+ "meta",
428
+ "meter",
429
+ "nav",
430
+ "nobr",
431
+ "noembed",
432
+ "noframes",
433
+ "noscript",
434
+ "object",
435
+ "ol",
436
+ "optgroup",
437
+ "option",
438
+ "output",
439
+ "p",
440
+ "param",
441
+ "picture",
442
+ "plaintext",
443
+ "portal",
444
+ "pre",
445
+ "progress",
446
+ "q",
447
+ "rb",
448
+ "rp",
449
+ "rt",
450
+ "rtc",
451
+ "ruby",
452
+ "s",
453
+ "samp",
454
+ "script",
455
+ "section",
456
+ "select",
457
+ "shadow",
458
+ "slot",
459
+ "small",
460
+ "source",
461
+ "spacer",
462
+ "span",
463
+ "strike",
464
+ "strong",
465
+ "style",
466
+ "sub",
467
+ "summary",
468
+ "sup",
469
+ "table",
470
+ "tbody",
471
+ "td",
472
+ "template",
473
+ "textarea",
474
+ "tfoot",
475
+ "th",
476
+ "thead",
477
+ "time",
478
+ "title",
479
+ "tr",
480
+ "track",
481
+ "tt",
482
+ "u",
483
+ "ul",
484
+ "var",
485
+ "video",
486
+ "wbr",
487
+ "xmp",
488
+ "input",
489
+ "h1",
490
+ "h2",
491
+ "h3",
492
+ "h4",
493
+ "h5",
494
+ "h6"
495
+ ]);
51
496
 
52
497
  function reconcileArrays(parentNode, a, b) {
53
498
  let bLength = b.length,
@@ -68,7 +513,7 @@ function reconcileArrays(parentNode, a, b) {
68
513
  bEnd--;
69
514
  }
70
515
  if (aEnd === aStart) {
71
- const node = bEnd < bLength ? bStart ? b[bStart - 1].nextSibling : b[bEnd - bStart] : after;
516
+ const node = bEnd < bLength ? (bStart ? b[bStart - 1].nextSibling : b[bEnd - bStart]) : after;
72
517
  while (bStart < bEnd) parentNode.insertBefore(b[bStart++], node);
73
518
  } else if (bEnd === bStart) {
74
519
  while (aStart < aEnd) {
@@ -111,7 +556,9 @@ function render(code, element, init, options = {}) {
111
556
  let disposer;
112
557
  createRoot(dispose => {
113
558
  disposer = dispose;
114
- element === document ? code() : insert(element, code(), element.firstChild ? null : undefined, init);
559
+ element === document
560
+ ? code()
561
+ : insert(element, code(), element.firstChild ? null : undefined, init);
115
562
  }, options.owner);
116
563
  return () => {
117
564
  disposer();
@@ -121,12 +568,17 @@ function render(code, element, init, options = {}) {
121
568
  function template(html, isCE, isSVG) {
122
569
  let node;
123
570
  const create = () => {
124
- if (sharedConfig.context) throw new Error("Failed attempt to create new DOM elements during hydration. Check that the libraries you are using support hydration.");
571
+ if (sharedConfig.context)
572
+ throw new Error(
573
+ "Failed attempt to create new DOM elements during hydration. Check that the libraries you are using support hydration."
574
+ );
125
575
  const t = document.createElement("template");
126
576
  t.innerHTML = html;
127
577
  return isSVG ? t.content.firstChild.firstChild : t.content.firstChild;
128
578
  };
129
- const fn = isCE ? () => untrack(() => document.importNode(node || (node = create()), true)) : () => (node || (node = create())).cloneNode(true);
579
+ const fn = isCE
580
+ ? () => untrack(() => document.importNode(node || (node = create()), true))
581
+ : () => (node || (node = create())).cloneNode(true);
130
582
  fn.cloneNode = fn;
131
583
  return fn;
132
584
  }
@@ -151,15 +603,18 @@ function setProperty(node, name, value) {
151
603
  }
152
604
  function setAttribute(node, name, value) {
153
605
  if (sharedConfig.context) return;
154
- if (value == null) node.removeAttribute(name);else node.setAttribute(name, value);
606
+ if (value == null) node.removeAttribute(name);
607
+ else node.setAttribute(name, value);
155
608
  }
156
609
  function setAttributeNS(node, namespace, name, value) {
157
610
  if (sharedConfig.context) return;
158
- if (value == null) node.removeAttributeNS(namespace, name);else node.setAttributeNS(namespace, name, value);
611
+ if (value == null) node.removeAttributeNS(namespace, name);
612
+ else node.setAttributeNS(namespace, name, value);
159
613
  }
160
614
  function className(node, value) {
161
615
  if (sharedConfig.context) return;
162
- if (value == null) node.removeAttribute("class");else node.className = value;
616
+ if (value == null) node.removeAttribute("class");
617
+ else node.className = value;
163
618
  }
164
619
  function addEventListener(node, name, handler, delegate) {
165
620
  if (delegate) {
@@ -169,7 +624,7 @@ function addEventListener(node, name, handler, delegate) {
169
624
  } else node[`$$${name}`] = handler;
170
625
  } else if (Array.isArray(handler)) {
171
626
  const handlerFn = handler[0];
172
- node.addEventListener(name, handler[0] = e => handlerFn.call(node, handler[1], e));
627
+ node.addEventListener(name, (handler[0] = e => handlerFn.call(node, handler[1], e)));
173
628
  } else node.addEventListener(name, handler);
174
629
  }
175
630
  function classList(node, value, prev = {}) {
@@ -194,7 +649,7 @@ function classList(node, value, prev = {}) {
194
649
  function style(node, value, prev) {
195
650
  if (!value) return prev ? setAttribute(node, "style") : value;
196
651
  const nodeStyle = node.style;
197
- if (typeof value === "string") return nodeStyle.cssText = value;
652
+ if (typeof value === "string") return (nodeStyle.cssText = value);
198
653
  typeof prev === "string" && (nodeStyle.cssText = prev = undefined);
199
654
  prev || (prev = {});
200
655
  value || (value = {});
@@ -215,7 +670,9 @@ function style(node, value, prev) {
215
670
  function spread(node, props = {}, isSVG, skipChildren) {
216
671
  const prevProps = {};
217
672
  if (!skipChildren) {
218
- createRenderEffect(() => prevProps.children = insertExpression(node, props.children, prevProps.children));
673
+ createRenderEffect(
674
+ () => (prevProps.children = insertExpression(node, props.children, prevProps.children))
675
+ );
219
676
  }
220
677
  createRenderEffect(() => props.ref && props.ref(node));
221
678
  createRenderEffect(() => assign(node, props, isSVG, true, prevProps, true));
@@ -274,8 +731,9 @@ function hydrate$1(code, element, options = {}) {
274
731
  }
275
732
  function getNextElement(template) {
276
733
  let node, key;
277
- if (!sharedConfig.context || !(node = sharedConfig.registry.get(key = getHydrationKey()))) {
278
- if (sharedConfig.context) throw new Error(`Hydration Mismatch. Unable to find DOM nodes for hydration key: ${key}`);
734
+ if (!sharedConfig.context || !(node = sharedConfig.registry.get((key = getHydrationKey())))) {
735
+ if (sharedConfig.context)
736
+ throw new Error(`Hydration Mismatch. Unable to find DOM nodes for hydration key: ${key}`);
279
737
  return template();
280
738
  }
281
739
  if (sharedConfig.completed) sharedConfig.completed.add(node);
@@ -294,7 +752,8 @@ function getNextMarker(start) {
294
752
  while (end) {
295
753
  if (end.nodeType === 8) {
296
754
  const v = end.nodeValue;
297
- if (v === "$") count++;else if (v === "/") {
755
+ if (v === "$") count++;
756
+ else if (v === "/") {
298
757
  if (count === 0) return [end, current];
299
758
  count--;
300
759
  }
@@ -308,10 +767,7 @@ function getNextMarker(start) {
308
767
  function runHydrationEvents() {
309
768
  if (sharedConfig.events && !sharedConfig.events.queued) {
310
769
  queueMicrotask(() => {
311
- const {
312
- completed,
313
- events
314
- } = sharedConfig;
770
+ const { completed, events } = sharedConfig;
315
771
  events.queued = false;
316
772
  while (events.length) {
317
773
  const [el, e] = events[0];
@@ -328,13 +784,14 @@ function toPropertyName(name) {
328
784
  }
329
785
  function toggleClassKey(node, key, value) {
330
786
  const classNames = key.trim().split(/\s+/);
331
- for (let i = 0, nameLen = classNames.length; i < nameLen; i++) node.classList.toggle(classNames[i], value);
787
+ for (let i = 0, nameLen = classNames.length; i < nameLen; i++)
788
+ node.classList.toggle(classNames[i], value);
332
789
  }
333
790
  function assignProp(node, prop, value, prev, isSVG, skipRef) {
334
791
  let isCE, isProp, isChildProp, propAlias, forceProp;
335
792
  if (prop === "style") return style(node, value, prev);
336
793
  if (prop === "classList") return classList(node, value, prev);
337
- if (value === prev) return prev;
794
+ if (value === prev && (prop !== "value" || prop !== "checked")) return prev;
338
795
  if (prop === "ref") {
339
796
  if (!skipRef) value(node);
340
797
  } else if (prop.slice(0, 3) === "on:") {
@@ -358,21 +815,30 @@ function assignProp(node, prop, value, prev, isSVG, skipRef) {
358
815
  }
359
816
  } else if (prop.slice(0, 5) === "attr:") {
360
817
  setAttribute(node, prop.slice(5), value);
361
- } 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("-"))) {
818
+ } else if (
819
+ (forceProp = prop.slice(0, 5) === "prop:") ||
820
+ (isChildProp = ChildProperties.has(prop)) ||
821
+ (!isSVG &&
822
+ ((propAlias = getPropAlias(prop, node.tagName)) || (isProp = Properties.has(prop)))) ||
823
+ (isCE = node.nodeName.includes("-"))
824
+ ) {
362
825
  if (forceProp) {
363
826
  prop = prop.slice(5);
364
827
  isProp = true;
365
828
  } else if (sharedConfig.context) return value;
366
- if (prop === "class" || prop === "className") className(node, value);else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;else node[propAlias || prop] = value;
829
+ if (prop === "class" || prop === "className") className(node, value);
830
+ else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;
831
+ else node[propAlias || prop] = value;
367
832
  } else {
368
833
  const ns = isSVG && prop.indexOf(":") > -1 && SVGNamespace[prop.split(":")[0]];
369
- if (ns) setAttributeNS(node, ns, prop, value);else setAttribute(node, Aliases[prop] || prop, value);
834
+ if (ns) setAttributeNS(node, ns, prop, value);
835
+ else setAttribute(node, Aliases[prop] || prop, value);
370
836
  }
371
837
  return value;
372
838
  }
373
839
  function eventHandler(e) {
374
840
  const key = `$$${e.type}`;
375
- let node = e.composedPath && e.composedPath()[0] || e.target;
841
+ let node = (e.composedPath && e.composedPath()[0]) || e.target;
376
842
  if (e.target !== node) {
377
843
  Object.defineProperty(e, "target", {
378
844
  configurable: true,
@@ -402,7 +868,8 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
402
868
  let cleaned = [];
403
869
  for (let i = 0; i < current.length; i++) {
404
870
  const node = current[i];
405
- if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();else cleaned.push(node);
871
+ if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();
872
+ else cleaned.push(node);
406
873
  }
407
874
  current = cleaned;
408
875
  }
@@ -410,7 +877,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
410
877
  if (value === current) return current;
411
878
  const t = typeof value,
412
879
  multi = marker !== undefined;
413
- parent = multi && current[0] && current[0].parentNode || parent;
880
+ parent = (multi && current[0] && current[0].parentNode) || parent;
414
881
  if (t === "string" || t === "number") {
415
882
  if (sharedConfig.context) return current;
416
883
  if (t === "number") value = value.toString();
@@ -439,7 +906,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
439
906
  const array = [];
440
907
  const currentArray = current && Array.isArray(current);
441
908
  if (normalizeIncomingArray(array, value, current, unwrapArray)) {
442
- createRenderEffect(() => current = insertExpression(parent, array, current, marker, true));
909
+ createRenderEffect(() => (current = insertExpression(parent, array, current, marker, true)));
443
910
  return () => current;
444
911
  }
445
912
  if (sharedConfig.context) {
@@ -448,7 +915,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
448
915
  let node = array[0];
449
916
  let nodes = [node];
450
917
  while ((node = node.nextSibling) !== marker) nodes.push(node);
451
- return current = nodes;
918
+ return (current = nodes);
452
919
  }
453
920
  if (array.length === 0) {
454
921
  current = cleanChildren(parent, current, marker);
@@ -463,9 +930,9 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
463
930
  }
464
931
  current = array;
465
932
  } else if (value.nodeType) {
466
- if (sharedConfig.context && value.parentNode) return current = multi ? [value] : value;
933
+ if (sharedConfig.context && value.parentNode) return (current = multi ? [value] : value);
467
934
  if (Array.isArray(current)) {
468
- if (multi) return current = cleanChildren(parent, current, marker, value);
935
+ if (multi) return (current = cleanChildren(parent, current, marker, value));
469
936
  cleanChildren(parent, current, null, value);
470
937
  } else if (current == null || current === "" || !parent.firstChild) {
471
938
  parent.appendChild(value);
@@ -480,21 +947,28 @@ function normalizeIncomingArray(normalized, array, current, unwrap) {
480
947
  let item = array[i],
481
948
  prev = current && current[i],
482
949
  t;
483
- if (item == null || item === true || item === false) ; else if ((t = typeof item) === "object" && item.nodeType) {
950
+ if (item == null || item === true || item === false);
951
+ else if ((t = typeof item) === "object" && item.nodeType) {
484
952
  normalized.push(item);
485
953
  } else if (Array.isArray(item)) {
486
954
  dynamic = normalizeIncomingArray(normalized, item, prev) || dynamic;
487
955
  } else if (t === "function") {
488
956
  if (unwrap) {
489
957
  while (typeof item === "function") item = item();
490
- dynamic = normalizeIncomingArray(normalized, Array.isArray(item) ? item : [item], Array.isArray(prev) ? prev : [prev]) || dynamic;
958
+ dynamic =
959
+ normalizeIncomingArray(
960
+ normalized,
961
+ Array.isArray(item) ? item : [item],
962
+ Array.isArray(prev) ? prev : [prev]
963
+ ) || dynamic;
491
964
  } else {
492
965
  normalized.push(item);
493
966
  dynamic = true;
494
967
  }
495
968
  } else {
496
969
  const value = String(item);
497
- if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);else normalized.push(document.createTextNode(value));
970
+ if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);
971
+ else normalized.push(document.createTextNode(value));
498
972
  }
499
973
  }
500
974
  return dynamic;
@@ -503,7 +977,7 @@ function appendNodes(parent, array, marker = null) {
503
977
  for (let i = 0, len = array.length; i < len; i++) parent.insertBefore(array[i], marker);
504
978
  }
505
979
  function cleanChildren(parent, current, marker, replacement) {
506
- if (marker === undefined) return parent.textContent = "";
980
+ if (marker === undefined) return (parent.textContent = "");
507
981
  const node = replacement || document.createTextNode("");
508
982
  if (current.length) {
509
983
  let inserted = false;
@@ -511,7 +985,9 @@ function cleanChildren(parent, current, marker, replacement) {
511
985
  const el = current[i];
512
986
  if (node !== el) {
513
987
  const isParent = el.parentNode === parent;
514
- if (!inserted && !i) isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);else isParent && el.remove();
988
+ if (!inserted && !i)
989
+ isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);
990
+ else isParent && el.remove();
515
991
  } else inserted = true;
516
992
  }
517
993
  } else parent.insertBefore(node, marker);
@@ -522,7 +998,8 @@ function gatherHydratable(element, root) {
522
998
  for (let i = 0; i < templates.length; i++) {
523
999
  const node = templates[i];
524
1000
  const key = node.getAttribute("data-hk");
525
- if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key)) sharedConfig.registry.set(key, node);
1001
+ if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key))
1002
+ sharedConfig.registry.set(key, node);
526
1003
  }
527
1004
  }
528
1005
  function getHydrationKey() {
@@ -575,42 +1052,47 @@ const hydrate = (...args) => {
575
1052
  return hydrate$1(...args);
576
1053
  };
577
1054
  function Portal(props) {
578
- const {
579
- useShadow
580
- } = props,
1055
+ const { useShadow } = props,
581
1056
  marker = document.createTextNode(""),
582
1057
  mount = () => props.mount || document.body,
583
1058
  owner = getOwner();
584
1059
  let content;
585
1060
  let hydrating = !!sharedConfig.context;
586
- createEffect(() => {
587
- if (hydrating) getOwner().user = hydrating = false;
588
- content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
589
- const el = mount();
590
- if (el instanceof HTMLHeadElement) {
591
- const [clean, setClean] = createSignal(false);
592
- const cleanup = () => setClean(true);
593
- createRoot(dispose => insert(el, () => !clean() ? content() : dispose(), null));
594
- onCleanup(cleanup);
595
- } else {
596
- const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
597
- renderRoot = useShadow && container.attachShadow ? container.attachShadow({
598
- mode: "open"
599
- }) : container;
600
- Object.defineProperty(container, "_$host", {
601
- get() {
602
- return marker.parentNode;
603
- },
604
- configurable: true
605
- });
606
- insert(renderRoot, content);
607
- el.appendChild(container);
608
- props.ref && props.ref(container);
609
- onCleanup(() => el.removeChild(container));
1061
+ createEffect(
1062
+ () => {
1063
+ if (hydrating) getOwner().user = hydrating = false;
1064
+ content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
1065
+ const el = mount();
1066
+ if (el instanceof HTMLHeadElement) {
1067
+ const [clean, setClean] = createSignal(false);
1068
+ const cleanup = () => setClean(true);
1069
+ createRoot(dispose => insert(el, () => (!clean() ? content() : dispose()), null));
1070
+ onCleanup(cleanup);
1071
+ } else {
1072
+ const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
1073
+ renderRoot =
1074
+ useShadow && container.attachShadow
1075
+ ? container.attachShadow({
1076
+ mode: "open"
1077
+ })
1078
+ : container;
1079
+ Object.defineProperty(container, "_$host", {
1080
+ get() {
1081
+ return marker.parentNode;
1082
+ },
1083
+ configurable: true
1084
+ });
1085
+ insert(renderRoot, content);
1086
+ el.appendChild(container);
1087
+ props.ref && props.ref(container);
1088
+ onCleanup(() => el.removeChild(container));
1089
+ }
1090
+ },
1091
+ undefined,
1092
+ {
1093
+ render: !hydrating
610
1094
  }
611
- }, undefined, {
612
- render: !hydrating
613
- });
1095
+ );
614
1096
  return marker;
615
1097
  }
616
1098
  function Dynamic(props) {
@@ -633,4 +1115,61 @@ function Dynamic(props) {
633
1115
  });
634
1116
  }
635
1117
 
636
- 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 };
1118
+ export {
1119
+ Aliases,
1120
+ voidFn as Assets,
1121
+ ChildProperties,
1122
+ DOMElements,
1123
+ DelegatedEvents,
1124
+ Dynamic,
1125
+ Hydration,
1126
+ voidFn as HydrationScript,
1127
+ NoHydration,
1128
+ Portal,
1129
+ Properties,
1130
+ RequestContext,
1131
+ SVGElements,
1132
+ SVGNamespace,
1133
+ addEventListener,
1134
+ assign,
1135
+ classList,
1136
+ className,
1137
+ clearDelegatedEvents,
1138
+ delegateEvents,
1139
+ dynamicProperty,
1140
+ escape,
1141
+ voidFn as generateHydrationScript,
1142
+ voidFn as getAssets,
1143
+ getHydrationKey,
1144
+ getNextElement,
1145
+ getNextMarker,
1146
+ getNextMatch,
1147
+ getPropAlias,
1148
+ voidFn as getRequestEvent,
1149
+ hydrate,
1150
+ innerHTML,
1151
+ insert,
1152
+ isDev,
1153
+ isServer,
1154
+ render,
1155
+ renderToStream,
1156
+ renderToString,
1157
+ renderToStringAsync,
1158
+ resolveSSRNode,
1159
+ runHydrationEvents,
1160
+ setAttribute,
1161
+ setAttributeNS,
1162
+ setProperty,
1163
+ spread,
1164
+ ssr,
1165
+ ssrAttribute,
1166
+ ssrClassList,
1167
+ ssrElement,
1168
+ ssrHydrationKey,
1169
+ ssrSpread,
1170
+ ssrStyle,
1171
+ style,
1172
+ template,
1173
+ use,
1174
+ voidFn as useAssets
1175
+ };