solid-js 1.8.14 → 1.8.15

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/dist/dev.cjs +7 -6
  2. package/dist/dev.js +560 -318
  3. package/dist/server.js +170 -75
  4. package/dist/solid.cjs +7 -6
  5. package/dist/solid.js +487 -276
  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 +7 -2
  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 +1 -1
  14. package/store/dist/dev.js +122 -43
  15. package/store/dist/server.js +19 -8
  16. package/store/dist/store.js +113 -40
  17. package/store/types/index.d.ts +21 -7
  18. package/store/types/modifiers.d.ts +6 -3
  19. package/store/types/mutable.d.ts +5 -2
  20. package/store/types/server.d.ts +12 -4
  21. package/store/types/store.d.ts +218 -61
  22. package/types/index.d.ts +75 -10
  23. package/types/jsx.d.ts +7 -2
  24. package/types/reactive/array.d.ts +12 -4
  25. package/types/reactive/observable.d.ts +25 -17
  26. package/types/reactive/scheduler.d.ts +9 -6
  27. package/types/reactive/signal.d.ts +233 -142
  28. package/types/render/Suspense.d.ts +5 -5
  29. package/types/render/component.d.ts +64 -33
  30. package/types/render/flow.d.ts +43 -31
  31. package/types/render/hydration.d.ts +13 -13
  32. package/types/server/index.d.ts +57 -2
  33. package/types/server/reactive.d.ts +73 -42
  34. package/types/server/rendering.d.ts +167 -96
  35. package/universal/dist/dev.js +28 -12
  36. package/universal/dist/universal.js +28 -12
  37. package/universal/types/index.d.ts +3 -1
  38. package/universal/types/universal.d.ts +0 -1
  39. package/web/dist/dev.cjs +1 -1
  40. package/web/dist/dev.js +624 -83
  41. package/web/dist/server.js +210 -96
  42. package/web/dist/web.cjs +1 -1
  43. package/web/dist/web.js +615 -81
  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 +10 -1
  47. package/web/types/index.d.ts +27 -10
  48. 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) {
@@ -109,12 +554,16 @@ function reconcileArrays(parentNode, a, b) {
109
554
  const $$EVENTS = "_$DX_DELEGATE";
110
555
  function render(code, element, init, options = {}) {
111
556
  if (!element) {
112
- throw new Error("The `element` passed to `render(..., element)` doesn't exist. Make sure `element` exists in the document.");
557
+ throw new Error(
558
+ "The `element` passed to `render(..., element)` doesn't exist. Make sure `element` exists in the document."
559
+ );
113
560
  }
114
561
  let disposer;
115
562
  createRoot(dispose => {
116
563
  disposer = dispose;
117
- element === document ? code() : insert(element, code(), element.firstChild ? null : undefined, init);
564
+ element === document
565
+ ? code()
566
+ : insert(element, code(), element.firstChild ? null : undefined, init);
118
567
  }, options.owner);
119
568
  return () => {
120
569
  disposer();
@@ -124,12 +573,17 @@ function render(code, element, init, options = {}) {
124
573
  function template(html, isCE, isSVG) {
125
574
  let node;
126
575
  const create = () => {
127
- if (sharedConfig.context) throw new Error("Failed attempt to create new DOM elements during hydration. Check that the libraries you are using support hydration.");
576
+ if (sharedConfig.context)
577
+ throw new Error(
578
+ "Failed attempt to create new DOM elements during hydration. Check that the libraries you are using support hydration."
579
+ );
128
580
  const t = document.createElement("template");
129
581
  t.innerHTML = html;
130
582
  return isSVG ? t.content.firstChild.firstChild : t.content.firstChild;
131
583
  };
132
- const fn = isCE ? () => untrack(() => document.importNode(node || (node = create()), true)) : () => (node || (node = create())).cloneNode(true);
584
+ const fn = isCE
585
+ ? () => untrack(() => document.importNode(node || (node = create()), true))
586
+ : () => (node || (node = create())).cloneNode(true);
133
587
  fn.cloneNode = fn;
134
588
  return fn;
135
589
  }
@@ -154,15 +608,18 @@ function setProperty(node, name, value) {
154
608
  }
155
609
  function setAttribute(node, name, value) {
156
610
  if (sharedConfig.context) return;
157
- if (value == null) node.removeAttribute(name);else node.setAttribute(name, value);
611
+ if (value == null) node.removeAttribute(name);
612
+ else node.setAttribute(name, value);
158
613
  }
159
614
  function setAttributeNS(node, namespace, name, value) {
160
615
  if (sharedConfig.context) return;
161
- if (value == null) node.removeAttributeNS(namespace, name);else node.setAttributeNS(namespace, name, value);
616
+ if (value == null) node.removeAttributeNS(namespace, name);
617
+ else node.setAttributeNS(namespace, name, value);
162
618
  }
163
619
  function className(node, value) {
164
620
  if (sharedConfig.context) return;
165
- if (value == null) node.removeAttribute("class");else node.className = value;
621
+ if (value == null) node.removeAttribute("class");
622
+ else node.className = value;
166
623
  }
167
624
  function addEventListener(node, name, handler, delegate) {
168
625
  if (delegate) {
@@ -172,7 +629,7 @@ function addEventListener(node, name, handler, delegate) {
172
629
  } else node[`$$${name}`] = handler;
173
630
  } else if (Array.isArray(handler)) {
174
631
  const handlerFn = handler[0];
175
- node.addEventListener(name, handler[0] = e => handlerFn.call(node, handler[1], e));
632
+ node.addEventListener(name, (handler[0] = e => handlerFn.call(node, handler[1], e)));
176
633
  } else node.addEventListener(name, handler);
177
634
  }
178
635
  function classList(node, value, prev = {}) {
@@ -197,7 +654,7 @@ function classList(node, value, prev = {}) {
197
654
  function style(node, value, prev) {
198
655
  if (!value) return prev ? setAttribute(node, "style") : value;
199
656
  const nodeStyle = node.style;
200
- if (typeof value === "string") return nodeStyle.cssText = value;
657
+ if (typeof value === "string") return (nodeStyle.cssText = value);
201
658
  typeof prev === "string" && (nodeStyle.cssText = prev = undefined);
202
659
  prev || (prev = {});
203
660
  value || (value = {});
@@ -218,7 +675,9 @@ function style(node, value, prev) {
218
675
  function spread(node, props = {}, isSVG, skipChildren) {
219
676
  const prevProps = {};
220
677
  if (!skipChildren) {
221
- createRenderEffect(() => prevProps.children = insertExpression(node, props.children, prevProps.children));
678
+ createRenderEffect(
679
+ () => (prevProps.children = insertExpression(node, props.children, prevProps.children))
680
+ );
222
681
  }
223
682
  createRenderEffect(() => props.ref && props.ref(node));
224
683
  createRenderEffect(() => assign(node, props, isSVG, true, prevProps, true));
@@ -277,8 +736,9 @@ function hydrate$1(code, element, options = {}) {
277
736
  }
278
737
  function getNextElement(template) {
279
738
  let node, key;
280
- if (!sharedConfig.context || !(node = sharedConfig.registry.get(key = getHydrationKey()))) {
281
- if (sharedConfig.context) throw new Error(`Hydration Mismatch. Unable to find DOM nodes for hydration key: ${key}`);
739
+ if (!sharedConfig.context || !(node = sharedConfig.registry.get((key = getHydrationKey())))) {
740
+ if (sharedConfig.context)
741
+ throw new Error(`Hydration Mismatch. Unable to find DOM nodes for hydration key: ${key}`);
282
742
  return template();
283
743
  }
284
744
  if (sharedConfig.completed) sharedConfig.completed.add(node);
@@ -297,7 +757,8 @@ function getNextMarker(start) {
297
757
  while (end) {
298
758
  if (end.nodeType === 8) {
299
759
  const v = end.nodeValue;
300
- if (v === "$") count++;else if (v === "/") {
760
+ if (v === "$") count++;
761
+ else if (v === "/") {
301
762
  if (count === 0) return [end, current];
302
763
  count--;
303
764
  }
@@ -311,10 +772,7 @@ function getNextMarker(start) {
311
772
  function runHydrationEvents() {
312
773
  if (sharedConfig.events && !sharedConfig.events.queued) {
313
774
  queueMicrotask(() => {
314
- const {
315
- completed,
316
- events
317
- } = sharedConfig;
775
+ const { completed, events } = sharedConfig;
318
776
  events.queued = false;
319
777
  while (events.length) {
320
778
  const [el, e] = events[0];
@@ -331,7 +789,8 @@ function toPropertyName(name) {
331
789
  }
332
790
  function toggleClassKey(node, key, value) {
333
791
  const classNames = key.trim().split(/\s+/);
334
- for (let i = 0, nameLen = classNames.length; i < nameLen; i++) node.classList.toggle(classNames[i], value);
792
+ for (let i = 0, nameLen = classNames.length; i < nameLen; i++)
793
+ node.classList.toggle(classNames[i], value);
335
794
  }
336
795
  function assignProp(node, prop, value, prev, isSVG, skipRef) {
337
796
  let isCE, isProp, isChildProp, propAlias, forceProp;
@@ -361,21 +820,30 @@ function assignProp(node, prop, value, prev, isSVG, skipRef) {
361
820
  }
362
821
  } else if (prop.slice(0, 5) === "attr:") {
363
822
  setAttribute(node, prop.slice(5), value);
364
- } 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("-"))) {
823
+ } else if (
824
+ (forceProp = prop.slice(0, 5) === "prop:") ||
825
+ (isChildProp = ChildProperties.has(prop)) ||
826
+ (!isSVG &&
827
+ ((propAlias = getPropAlias(prop, node.tagName)) || (isProp = Properties.has(prop)))) ||
828
+ (isCE = node.nodeName.includes("-"))
829
+ ) {
365
830
  if (forceProp) {
366
831
  prop = prop.slice(5);
367
832
  isProp = true;
368
833
  } else if (sharedConfig.context) return value;
369
- if (prop === "class" || prop === "className") className(node, value);else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;else node[propAlias || prop] = value;
834
+ if (prop === "class" || prop === "className") className(node, value);
835
+ else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;
836
+ else node[propAlias || prop] = value;
370
837
  } else {
371
838
  const ns = isSVG && prop.indexOf(":") > -1 && SVGNamespace[prop.split(":")[0]];
372
- if (ns) setAttributeNS(node, ns, prop, value);else setAttribute(node, Aliases[prop] || prop, value);
839
+ if (ns) setAttributeNS(node, ns, prop, value);
840
+ else setAttribute(node, Aliases[prop] || prop, value);
373
841
  }
374
842
  return value;
375
843
  }
376
844
  function eventHandler(e) {
377
845
  const key = `$$${e.type}`;
378
- let node = e.composedPath && e.composedPath()[0] || e.target;
846
+ let node = (e.composedPath && e.composedPath()[0]) || e.target;
379
847
  if (e.target !== node) {
380
848
  Object.defineProperty(e, "target", {
381
849
  configurable: true,
@@ -405,7 +873,8 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
405
873
  let cleaned = [];
406
874
  for (let i = 0; i < current.length; i++) {
407
875
  const node = current[i];
408
- if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();else cleaned.push(node);
876
+ if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();
877
+ else cleaned.push(node);
409
878
  }
410
879
  current = cleaned;
411
880
  }
@@ -413,7 +882,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
413
882
  if (value === current) return current;
414
883
  const t = typeof value,
415
884
  multi = marker !== undefined;
416
- parent = multi && current[0] && current[0].parentNode || parent;
885
+ parent = (multi && current[0] && current[0].parentNode) || parent;
417
886
  if (t === "string" || t === "number") {
418
887
  if (sharedConfig.context) return current;
419
888
  if (t === "number") value = value.toString();
@@ -442,7 +911,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
442
911
  const array = [];
443
912
  const currentArray = current && Array.isArray(current);
444
913
  if (normalizeIncomingArray(array, value, current, unwrapArray)) {
445
- createRenderEffect(() => current = insertExpression(parent, array, current, marker, true));
914
+ createRenderEffect(() => (current = insertExpression(parent, array, current, marker, true)));
446
915
  return () => current;
447
916
  }
448
917
  if (sharedConfig.context) {
@@ -451,7 +920,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
451
920
  let node = array[0];
452
921
  let nodes = [node];
453
922
  while ((node = node.nextSibling) !== marker) nodes.push(node);
454
- return current = nodes;
923
+ return (current = nodes);
455
924
  }
456
925
  if (array.length === 0) {
457
926
  current = cleanChildren(parent, current, marker);
@@ -466,9 +935,9 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
466
935
  }
467
936
  current = array;
468
937
  } else if (value.nodeType) {
469
- if (sharedConfig.context && value.parentNode) return current = multi ? [value] : value;
938
+ if (sharedConfig.context && value.parentNode) return (current = multi ? [value] : value);
470
939
  if (Array.isArray(current)) {
471
- if (multi) return current = cleanChildren(parent, current, marker, value);
940
+ if (multi) return (current = cleanChildren(parent, current, marker, value));
472
941
  cleanChildren(parent, current, null, value);
473
942
  } else if (current == null || current === "" || !parent.firstChild) {
474
943
  parent.appendChild(value);
@@ -481,23 +950,30 @@ function normalizeIncomingArray(normalized, array, current, unwrap) {
481
950
  let dynamic = false;
482
951
  for (let i = 0, len = array.length; i < len; i++) {
483
952
  let item = array[i],
484
- prev = current && current[i],
953
+ prev = current && current[normalized.length],
485
954
  t;
486
- if (item == null || item === true || item === false) ; else if ((t = typeof item) === "object" && item.nodeType) {
955
+ if (item == null || item === true || item === false);
956
+ else if ((t = typeof item) === "object" && item.nodeType) {
487
957
  normalized.push(item);
488
958
  } else if (Array.isArray(item)) {
489
959
  dynamic = normalizeIncomingArray(normalized, item, prev) || dynamic;
490
960
  } else if (t === "function") {
491
961
  if (unwrap) {
492
962
  while (typeof item === "function") item = item();
493
- dynamic = normalizeIncomingArray(normalized, Array.isArray(item) ? item : [item], Array.isArray(prev) ? prev : [prev]) || dynamic;
963
+ dynamic =
964
+ normalizeIncomingArray(
965
+ normalized,
966
+ Array.isArray(item) ? item : [item],
967
+ Array.isArray(prev) ? prev : [prev]
968
+ ) || dynamic;
494
969
  } else {
495
970
  normalized.push(item);
496
971
  dynamic = true;
497
972
  }
498
973
  } else {
499
974
  const value = String(item);
500
- if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);else normalized.push(document.createTextNode(value));
975
+ if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);
976
+ else normalized.push(document.createTextNode(value));
501
977
  }
502
978
  }
503
979
  return dynamic;
@@ -506,7 +982,7 @@ function appendNodes(parent, array, marker = null) {
506
982
  for (let i = 0, len = array.length; i < len; i++) parent.insertBefore(array[i], marker);
507
983
  }
508
984
  function cleanChildren(parent, current, marker, replacement) {
509
- if (marker === undefined) return parent.textContent = "";
985
+ if (marker === undefined) return (parent.textContent = "");
510
986
  const node = replacement || document.createTextNode("");
511
987
  if (current.length) {
512
988
  let inserted = false;
@@ -514,7 +990,9 @@ function cleanChildren(parent, current, marker, replacement) {
514
990
  const el = current[i];
515
991
  if (node !== el) {
516
992
  const isParent = el.parentNode === parent;
517
- if (!inserted && !i) isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);else isParent && el.remove();
993
+ if (!inserted && !i)
994
+ isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);
995
+ else isParent && el.remove();
518
996
  } else inserted = true;
519
997
  }
520
998
  } else parent.insertBefore(node, marker);
@@ -525,7 +1003,8 @@ function gatherHydratable(element, root) {
525
1003
  for (let i = 0; i < templates.length; i++) {
526
1004
  const node = templates[i];
527
1005
  const key = node.getAttribute("data-hk");
528
- if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key)) sharedConfig.registry.set(key, node);
1006
+ if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key))
1007
+ sharedConfig.registry.set(key, node);
529
1008
  }
530
1009
  }
531
1010
  function getHydrationKey() {
@@ -578,42 +1057,47 @@ const hydrate = (...args) => {
578
1057
  return hydrate$1(...args);
579
1058
  };
580
1059
  function Portal(props) {
581
- const {
582
- useShadow
583
- } = props,
1060
+ const { useShadow } = props,
584
1061
  marker = document.createTextNode(""),
585
1062
  mount = () => props.mount || document.body,
586
1063
  owner = getOwner();
587
1064
  let content;
588
1065
  let hydrating = !!sharedConfig.context;
589
- createEffect(() => {
590
- if (hydrating) getOwner().user = hydrating = false;
591
- content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
592
- const el = mount();
593
- if (el instanceof HTMLHeadElement) {
594
- const [clean, setClean] = createSignal(false);
595
- const cleanup = () => setClean(true);
596
- createRoot(dispose => insert(el, () => !clean() ? content() : dispose(), null));
597
- onCleanup(cleanup);
598
- } else {
599
- const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
600
- renderRoot = useShadow && container.attachShadow ? container.attachShadow({
601
- mode: "open"
602
- }) : container;
603
- Object.defineProperty(container, "_$host", {
604
- get() {
605
- return marker.parentNode;
606
- },
607
- configurable: true
608
- });
609
- insert(renderRoot, content);
610
- el.appendChild(container);
611
- props.ref && props.ref(container);
612
- onCleanup(() => el.removeChild(container));
1066
+ createEffect(
1067
+ () => {
1068
+ if (hydrating) getOwner().user = hydrating = false;
1069
+ content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
1070
+ const el = mount();
1071
+ if (el instanceof HTMLHeadElement) {
1072
+ const [clean, setClean] = createSignal(false);
1073
+ const cleanup = () => setClean(true);
1074
+ createRoot(dispose => insert(el, () => (!clean() ? content() : dispose()), null));
1075
+ onCleanup(cleanup);
1076
+ } else {
1077
+ const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
1078
+ renderRoot =
1079
+ useShadow && container.attachShadow
1080
+ ? container.attachShadow({
1081
+ mode: "open"
1082
+ })
1083
+ : container;
1084
+ Object.defineProperty(container, "_$host", {
1085
+ get() {
1086
+ return marker.parentNode;
1087
+ },
1088
+ configurable: true
1089
+ });
1090
+ insert(renderRoot, content);
1091
+ el.appendChild(container);
1092
+ props.ref && props.ref(container);
1093
+ onCleanup(() => el.removeChild(container));
1094
+ }
1095
+ },
1096
+ undefined,
1097
+ {
1098
+ render: !hydrating
613
1099
  }
614
- }, undefined, {
615
- render: !hydrating
616
- });
1100
+ );
617
1101
  return marker;
618
1102
  }
619
1103
  function Dynamic(props) {
@@ -636,4 +1120,61 @@ function Dynamic(props) {
636
1120
  });
637
1121
  }
638
1122
 
639
- 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 };
1123
+ export {
1124
+ Aliases,
1125
+ voidFn as Assets,
1126
+ ChildProperties,
1127
+ DOMElements,
1128
+ DelegatedEvents,
1129
+ Dynamic,
1130
+ Hydration,
1131
+ voidFn as HydrationScript,
1132
+ NoHydration,
1133
+ Portal,
1134
+ Properties,
1135
+ RequestContext,
1136
+ SVGElements,
1137
+ SVGNamespace,
1138
+ addEventListener,
1139
+ assign,
1140
+ classList,
1141
+ className,
1142
+ clearDelegatedEvents,
1143
+ delegateEvents,
1144
+ dynamicProperty,
1145
+ escape,
1146
+ voidFn as generateHydrationScript,
1147
+ voidFn as getAssets,
1148
+ getHydrationKey,
1149
+ getNextElement,
1150
+ getNextMarker,
1151
+ getNextMatch,
1152
+ getPropAlias,
1153
+ voidFn as getRequestEvent,
1154
+ hydrate,
1155
+ innerHTML,
1156
+ insert,
1157
+ isDev,
1158
+ isServer,
1159
+ render,
1160
+ renderToStream,
1161
+ renderToString,
1162
+ renderToStringAsync,
1163
+ resolveSSRNode,
1164
+ runHydrationEvents,
1165
+ setAttribute,
1166
+ setAttributeNS,
1167
+ setProperty,
1168
+ spread,
1169
+ ssr,
1170
+ ssrAttribute,
1171
+ ssrClassList,
1172
+ ssrElement,
1173
+ ssrHydrationKey,
1174
+ ssrSpread,
1175
+ ssrStyle,
1176
+ style,
1177
+ template,
1178
+ use,
1179
+ voidFn as useAssets
1180
+ };