solid-js 1.8.13 → 1.8.14

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 (42) hide show
  1. package/dist/dev.js +307 -544
  2. package/dist/server.js +75 -170
  3. package/dist/solid.js +265 -471
  4. package/h/dist/h.js +8 -34
  5. package/h/jsx-runtime/dist/jsx.js +1 -1
  6. package/h/jsx-runtime/types/index.d.ts +8 -11
  7. package/h/types/hyperscript.d.ts +11 -11
  8. package/html/dist/html.js +94 -216
  9. package/html/types/lit.d.ts +33 -47
  10. package/package.json +3 -3
  11. package/store/dist/dev.js +43 -122
  12. package/store/dist/server.js +8 -19
  13. package/store/dist/store.js +40 -113
  14. package/store/types/index.d.ts +7 -21
  15. package/store/types/modifiers.d.ts +3 -6
  16. package/store/types/mutable.d.ts +2 -5
  17. package/store/types/server.d.ts +4 -12
  18. package/store/types/store.d.ts +61 -218
  19. package/types/index.d.ts +10 -75
  20. package/types/reactive/array.d.ts +4 -12
  21. package/types/reactive/observable.d.ts +17 -25
  22. package/types/reactive/scheduler.d.ts +6 -9
  23. package/types/reactive/signal.d.ts +142 -233
  24. package/types/render/Suspense.d.ts +5 -5
  25. package/types/render/component.d.ts +33 -64
  26. package/types/render/flow.d.ts +31 -43
  27. package/types/render/hydration.d.ts +13 -13
  28. package/types/server/index.d.ts +2 -57
  29. package/types/server/reactive.d.ts +42 -73
  30. package/types/server/rendering.d.ts +96 -167
  31. package/universal/dist/dev.js +12 -28
  32. package/universal/dist/universal.js +12 -28
  33. package/universal/types/index.d.ts +1 -3
  34. package/universal/types/universal.d.ts +1 -0
  35. package/web/dist/dev.js +82 -623
  36. package/web/dist/server.js +96 -210
  37. package/web/dist/web.js +80 -614
  38. package/web/storage/dist/storage.js +3 -3
  39. package/web/types/client.d.ts +2 -2
  40. package/web/types/core.d.ts +1 -10
  41. package/web/types/index.d.ts +10 -27
  42. package/web/types/server-mock.d.ts +32 -47
package/web/dist/web.js CHANGED
@@ -1,82 +1,14 @@
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
- } from "solid-js";
15
- export {
16
- ErrorBoundary,
17
- For,
18
- Index,
19
- Match,
20
- Show,
21
- Suspense,
22
- SuspenseList,
23
- Switch,
24
- createComponent,
25
- createRenderEffect as effect,
26
- getOwner,
27
- createMemo as memo,
28
- mergeProps,
29
- untrack
30
- } from "solid-js";
1
+ import { createRoot, sharedConfig, createRenderEffect, untrack, enableHydration, getOwner, createEffect, runWithOwner, createMemo, createSignal, onCleanup, splitProps } 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';
31
3
 
32
- const booleans = [
33
- "allowfullscreen",
34
- "async",
35
- "autofocus",
36
- "autoplay",
37
- "checked",
38
- "controls",
39
- "default",
40
- "disabled",
41
- "formnovalidate",
42
- "hidden",
43
- "indeterminate",
44
- "inert",
45
- "ismap",
46
- "loop",
47
- "multiple",
48
- "muted",
49
- "nomodule",
50
- "novalidate",
51
- "open",
52
- "playsinline",
53
- "readonly",
54
- "required",
55
- "reversed",
56
- "seamless",
57
- "selected"
58
- ];
59
- const Properties = /*#__PURE__*/ new Set([
60
- "className",
61
- "value",
62
- "readOnly",
63
- "formNoValidate",
64
- "isMap",
65
- "noModule",
66
- "playsInline",
67
- ...booleans
68
- ]);
69
- const ChildProperties = /*#__PURE__*/ new Set([
70
- "innerHTML",
71
- "textContent",
72
- "innerText",
73
- "children"
74
- ]);
75
- 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), {
76
8
  className: "class",
77
9
  htmlFor: "for"
78
10
  });
79
- const PropAliases = /*#__PURE__*/ Object.assign(Object.create(null), {
11
+ const PropAliases = /*#__PURE__*/Object.assign(Object.create(null), {
80
12
  class: "className",
81
13
  formnovalidate: {
82
14
  $: "formNoValidate",
@@ -103,395 +35,19 @@ const PropAliases = /*#__PURE__*/ Object.assign(Object.create(null), {
103
35
  });
104
36
  function getPropAlias(prop, tagName) {
105
37
  const a = PropAliases[prop];
106
- return typeof a === "object" ? (a[tagName] ? a["$"] : undefined) : a;
107
- }
108
- const DelegatedEvents = /*#__PURE__*/ new Set([
109
- "beforeinput",
110
- "click",
111
- "dblclick",
112
- "contextmenu",
113
- "focusin",
114
- "focusout",
115
- "input",
116
- "keydown",
117
- "keyup",
118
- "mousedown",
119
- "mousemove",
120
- "mouseout",
121
- "mouseover",
122
- "mouseup",
123
- "pointerdown",
124
- "pointermove",
125
- "pointerout",
126
- "pointerover",
127
- "pointerup",
128
- "touchend",
129
- "touchmove",
130
- "touchstart"
131
- ]);
132
- const SVGElements = /*#__PURE__*/ new Set([
133
- "altGlyph",
134
- "altGlyphDef",
135
- "altGlyphItem",
136
- "animate",
137
- "animateColor",
138
- "animateMotion",
139
- "animateTransform",
140
- "circle",
141
- "clipPath",
142
- "color-profile",
143
- "cursor",
144
- "defs",
145
- "desc",
146
- "ellipse",
147
- "feBlend",
148
- "feColorMatrix",
149
- "feComponentTransfer",
150
- "feComposite",
151
- "feConvolveMatrix",
152
- "feDiffuseLighting",
153
- "feDisplacementMap",
154
- "feDistantLight",
155
- "feFlood",
156
- "feFuncA",
157
- "feFuncB",
158
- "feFuncG",
159
- "feFuncR",
160
- "feGaussianBlur",
161
- "feImage",
162
- "feMerge",
163
- "feMergeNode",
164
- "feMorphology",
165
- "feOffset",
166
- "fePointLight",
167
- "feSpecularLighting",
168
- "feSpotLight",
169
- "feTile",
170
- "feTurbulence",
171
- "filter",
172
- "font",
173
- "font-face",
174
- "font-face-format",
175
- "font-face-name",
176
- "font-face-src",
177
- "font-face-uri",
178
- "foreignObject",
179
- "g",
180
- "glyph",
181
- "glyphRef",
182
- "hkern",
183
- "image",
184
- "line",
185
- "linearGradient",
186
- "marker",
187
- "mask",
188
- "metadata",
189
- "missing-glyph",
190
- "mpath",
191
- "path",
192
- "pattern",
193
- "polygon",
194
- "polyline",
195
- "radialGradient",
196
- "rect",
197
- "set",
198
- "stop",
199
- "svg",
200
- "switch",
201
- "symbol",
202
- "text",
203
- "textPath",
204
- "tref",
205
- "tspan",
206
- "use",
207
- "view",
208
- "vkern"
209
- ]);
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"]);
210
46
  const SVGNamespace = {
211
47
  xlink: "http://www.w3.org/1999/xlink",
212
48
  xml: "http://www.w3.org/XML/1998/namespace"
213
49
  };
214
- const DOMElements = /*#__PURE__*/ new Set([
215
- "html",
216
- "base",
217
- "head",
218
- "link",
219
- "meta",
220
- "style",
221
- "title",
222
- "body",
223
- "address",
224
- "article",
225
- "aside",
226
- "footer",
227
- "header",
228
- "main",
229
- "nav",
230
- "section",
231
- "body",
232
- "blockquote",
233
- "dd",
234
- "div",
235
- "dl",
236
- "dt",
237
- "figcaption",
238
- "figure",
239
- "hr",
240
- "li",
241
- "ol",
242
- "p",
243
- "pre",
244
- "ul",
245
- "a",
246
- "abbr",
247
- "b",
248
- "bdi",
249
- "bdo",
250
- "br",
251
- "cite",
252
- "code",
253
- "data",
254
- "dfn",
255
- "em",
256
- "i",
257
- "kbd",
258
- "mark",
259
- "q",
260
- "rp",
261
- "rt",
262
- "ruby",
263
- "s",
264
- "samp",
265
- "small",
266
- "span",
267
- "strong",
268
- "sub",
269
- "sup",
270
- "time",
271
- "u",
272
- "var",
273
- "wbr",
274
- "area",
275
- "audio",
276
- "img",
277
- "map",
278
- "track",
279
- "video",
280
- "embed",
281
- "iframe",
282
- "object",
283
- "param",
284
- "picture",
285
- "portal",
286
- "source",
287
- "svg",
288
- "math",
289
- "canvas",
290
- "noscript",
291
- "script",
292
- "del",
293
- "ins",
294
- "caption",
295
- "col",
296
- "colgroup",
297
- "table",
298
- "tbody",
299
- "td",
300
- "tfoot",
301
- "th",
302
- "thead",
303
- "tr",
304
- "button",
305
- "datalist",
306
- "fieldset",
307
- "form",
308
- "input",
309
- "label",
310
- "legend",
311
- "meter",
312
- "optgroup",
313
- "option",
314
- "output",
315
- "progress",
316
- "select",
317
- "textarea",
318
- "details",
319
- "dialog",
320
- "menu",
321
- "summary",
322
- "details",
323
- "slot",
324
- "template",
325
- "acronym",
326
- "applet",
327
- "basefont",
328
- "bgsound",
329
- "big",
330
- "blink",
331
- "center",
332
- "content",
333
- "dir",
334
- "font",
335
- "frame",
336
- "frameset",
337
- "hgroup",
338
- "image",
339
- "keygen",
340
- "marquee",
341
- "menuitem",
342
- "nobr",
343
- "noembed",
344
- "noframes",
345
- "plaintext",
346
- "rb",
347
- "rtc",
348
- "shadow",
349
- "spacer",
350
- "strike",
351
- "tt",
352
- "xmp",
353
- "a",
354
- "abbr",
355
- "acronym",
356
- "address",
357
- "applet",
358
- "area",
359
- "article",
360
- "aside",
361
- "audio",
362
- "b",
363
- "base",
364
- "basefont",
365
- "bdi",
366
- "bdo",
367
- "bgsound",
368
- "big",
369
- "blink",
370
- "blockquote",
371
- "body",
372
- "br",
373
- "button",
374
- "canvas",
375
- "caption",
376
- "center",
377
- "cite",
378
- "code",
379
- "col",
380
- "colgroup",
381
- "content",
382
- "data",
383
- "datalist",
384
- "dd",
385
- "del",
386
- "details",
387
- "dfn",
388
- "dialog",
389
- "dir",
390
- "div",
391
- "dl",
392
- "dt",
393
- "em",
394
- "embed",
395
- "fieldset",
396
- "figcaption",
397
- "figure",
398
- "font",
399
- "footer",
400
- "form",
401
- "frame",
402
- "frameset",
403
- "head",
404
- "header",
405
- "hgroup",
406
- "hr",
407
- "html",
408
- "i",
409
- "iframe",
410
- "image",
411
- "img",
412
- "input",
413
- "ins",
414
- "kbd",
415
- "keygen",
416
- "label",
417
- "legend",
418
- "li",
419
- "link",
420
- "main",
421
- "map",
422
- "mark",
423
- "marquee",
424
- "menu",
425
- "menuitem",
426
- "meta",
427
- "meter",
428
- "nav",
429
- "nobr",
430
- "noembed",
431
- "noframes",
432
- "noscript",
433
- "object",
434
- "ol",
435
- "optgroup",
436
- "option",
437
- "output",
438
- "p",
439
- "param",
440
- "picture",
441
- "plaintext",
442
- "portal",
443
- "pre",
444
- "progress",
445
- "q",
446
- "rb",
447
- "rp",
448
- "rt",
449
- "rtc",
450
- "ruby",
451
- "s",
452
- "samp",
453
- "script",
454
- "section",
455
- "select",
456
- "shadow",
457
- "slot",
458
- "small",
459
- "source",
460
- "spacer",
461
- "span",
462
- "strike",
463
- "strong",
464
- "style",
465
- "sub",
466
- "summary",
467
- "sup",
468
- "table",
469
- "tbody",
470
- "td",
471
- "template",
472
- "textarea",
473
- "tfoot",
474
- "th",
475
- "thead",
476
- "time",
477
- "title",
478
- "tr",
479
- "track",
480
- "tt",
481
- "u",
482
- "ul",
483
- "var",
484
- "video",
485
- "wbr",
486
- "xmp",
487
- "input",
488
- "h1",
489
- "h2",
490
- "h3",
491
- "h4",
492
- "h5",
493
- "h6"
494
- ]);
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"]);
495
51
 
496
52
  function reconcileArrays(parentNode, a, b) {
497
53
  let bLength = b.length,
@@ -512,7 +68,7 @@ function reconcileArrays(parentNode, a, b) {
512
68
  bEnd--;
513
69
  }
514
70
  if (aEnd === aStart) {
515
- 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;
516
72
  while (bStart < bEnd) parentNode.insertBefore(b[bStart++], node);
517
73
  } else if (bEnd === bStart) {
518
74
  while (aStart < aEnd) {
@@ -555,9 +111,7 @@ function render(code, element, init, options = {}) {
555
111
  let disposer;
556
112
  createRoot(dispose => {
557
113
  disposer = dispose;
558
- element === document
559
- ? code()
560
- : insert(element, code(), element.firstChild ? null : undefined, init);
114
+ element === document ? code() : insert(element, code(), element.firstChild ? null : undefined, init);
561
115
  }, options.owner);
562
116
  return () => {
563
117
  disposer();
@@ -571,9 +125,7 @@ function template(html, isCE, isSVG) {
571
125
  t.innerHTML = html;
572
126
  return isSVG ? t.content.firstChild.firstChild : t.content.firstChild;
573
127
  };
574
- const fn = isCE
575
- ? () => untrack(() => document.importNode(node || (node = create()), true))
576
- : () => (node || (node = create())).cloneNode(true);
128
+ const fn = isCE ? () => untrack(() => document.importNode(node || (node = create()), true)) : () => (node || (node = create())).cloneNode(true);
577
129
  fn.cloneNode = fn;
578
130
  return fn;
579
131
  }
@@ -598,18 +150,15 @@ function setProperty(node, name, value) {
598
150
  }
599
151
  function setAttribute(node, name, value) {
600
152
  if (sharedConfig.context) return;
601
- if (value == null) node.removeAttribute(name);
602
- else node.setAttribute(name, value);
153
+ if (value == null) node.removeAttribute(name);else node.setAttribute(name, value);
603
154
  }
604
155
  function setAttributeNS(node, namespace, name, value) {
605
156
  if (sharedConfig.context) return;
606
- if (value == null) node.removeAttributeNS(namespace, name);
607
- else node.setAttributeNS(namespace, name, value);
157
+ if (value == null) node.removeAttributeNS(namespace, name);else node.setAttributeNS(namespace, name, value);
608
158
  }
609
159
  function className(node, value) {
610
160
  if (sharedConfig.context) return;
611
- if (value == null) node.removeAttribute("class");
612
- else node.className = value;
161
+ if (value == null) node.removeAttribute("class");else node.className = value;
613
162
  }
614
163
  function addEventListener(node, name, handler, delegate) {
615
164
  if (delegate) {
@@ -619,7 +168,7 @@ function addEventListener(node, name, handler, delegate) {
619
168
  } else node[`$$${name}`] = handler;
620
169
  } else if (Array.isArray(handler)) {
621
170
  const handlerFn = handler[0];
622
- node.addEventListener(name, (handler[0] = e => handlerFn.call(node, handler[1], e)));
171
+ node.addEventListener(name, handler[0] = e => handlerFn.call(node, handler[1], e));
623
172
  } else node.addEventListener(name, handler);
624
173
  }
625
174
  function classList(node, value, prev = {}) {
@@ -644,7 +193,7 @@ function classList(node, value, prev = {}) {
644
193
  function style(node, value, prev) {
645
194
  if (!value) return prev ? setAttribute(node, "style") : value;
646
195
  const nodeStyle = node.style;
647
- if (typeof value === "string") return (nodeStyle.cssText = value);
196
+ if (typeof value === "string") return nodeStyle.cssText = value;
648
197
  typeof prev === "string" && (nodeStyle.cssText = prev = undefined);
649
198
  prev || (prev = {});
650
199
  value || (value = {});
@@ -665,9 +214,7 @@ function style(node, value, prev) {
665
214
  function spread(node, props = {}, isSVG, skipChildren) {
666
215
  const prevProps = {};
667
216
  if (!skipChildren) {
668
- createRenderEffect(
669
- () => (prevProps.children = insertExpression(node, props.children, prevProps.children))
670
- );
217
+ createRenderEffect(() => prevProps.children = insertExpression(node, props.children, prevProps.children));
671
218
  }
672
219
  createRenderEffect(() => props.ref && props.ref(node));
673
220
  createRenderEffect(() => assign(node, props, isSVG, true, prevProps, true));
@@ -726,7 +273,7 @@ function hydrate$1(code, element, options = {}) {
726
273
  }
727
274
  function getNextElement(template) {
728
275
  let node, key;
729
- if (!sharedConfig.context || !(node = sharedConfig.registry.get((key = getHydrationKey())))) {
276
+ if (!sharedConfig.context || !(node = sharedConfig.registry.get(key = getHydrationKey()))) {
730
277
  return template();
731
278
  }
732
279
  if (sharedConfig.completed) sharedConfig.completed.add(node);
@@ -745,8 +292,7 @@ function getNextMarker(start) {
745
292
  while (end) {
746
293
  if (end.nodeType === 8) {
747
294
  const v = end.nodeValue;
748
- if (v === "$") count++;
749
- else if (v === "/") {
295
+ if (v === "$") count++;else if (v === "/") {
750
296
  if (count === 0) return [end, current];
751
297
  count--;
752
298
  }
@@ -760,7 +306,10 @@ function getNextMarker(start) {
760
306
  function runHydrationEvents() {
761
307
  if (sharedConfig.events && !sharedConfig.events.queued) {
762
308
  queueMicrotask(() => {
763
- const { completed, events } = sharedConfig;
309
+ const {
310
+ completed,
311
+ events
312
+ } = sharedConfig;
764
313
  events.queued = false;
765
314
  while (events.length) {
766
315
  const [el, e] = events[0];
@@ -777,8 +326,7 @@ function toPropertyName(name) {
777
326
  }
778
327
  function toggleClassKey(node, key, value) {
779
328
  const classNames = key.trim().split(/\s+/);
780
- for (let i = 0, nameLen = classNames.length; i < nameLen; i++)
781
- node.classList.toggle(classNames[i], value);
329
+ for (let i = 0, nameLen = classNames.length; i < nameLen; i++) node.classList.toggle(classNames[i], value);
782
330
  }
783
331
  function assignProp(node, prop, value, prev, isSVG, skipRef) {
784
332
  let isCE, isProp, isChildProp, propAlias, forceProp;
@@ -808,30 +356,21 @@ function assignProp(node, prop, value, prev, isSVG, skipRef) {
808
356
  }
809
357
  } else if (prop.slice(0, 5) === "attr:") {
810
358
  setAttribute(node, prop.slice(5), value);
811
- } else if (
812
- (forceProp = prop.slice(0, 5) === "prop:") ||
813
- (isChildProp = ChildProperties.has(prop)) ||
814
- (!isSVG &&
815
- ((propAlias = getPropAlias(prop, node.tagName)) || (isProp = Properties.has(prop)))) ||
816
- (isCE = node.nodeName.includes("-"))
817
- ) {
359
+ } 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
360
  if (forceProp) {
819
361
  prop = prop.slice(5);
820
362
  isProp = true;
821
363
  } else if (sharedConfig.context) return value;
822
- if (prop === "class" || prop === "className") className(node, value);
823
- else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;
824
- else node[propAlias || prop] = value;
364
+ if (prop === "class" || prop === "className") className(node, value);else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;else node[propAlias || prop] = value;
825
365
  } else {
826
366
  const ns = isSVG && prop.indexOf(":") > -1 && SVGNamespace[prop.split(":")[0]];
827
- if (ns) setAttributeNS(node, ns, prop, value);
828
- else setAttribute(node, Aliases[prop] || prop, value);
367
+ if (ns) setAttributeNS(node, ns, prop, value);else setAttribute(node, Aliases[prop] || prop, value);
829
368
  }
830
369
  return value;
831
370
  }
832
371
  function eventHandler(e) {
833
372
  const key = `$$${e.type}`;
834
- let node = (e.composedPath && e.composedPath()[0]) || e.target;
373
+ let node = e.composedPath && e.composedPath()[0] || e.target;
835
374
  if (e.target !== node) {
836
375
  Object.defineProperty(e, "target", {
837
376
  configurable: true,
@@ -861,8 +400,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
861
400
  let cleaned = [];
862
401
  for (let i = 0; i < current.length; i++) {
863
402
  const node = current[i];
864
- if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();
865
- else cleaned.push(node);
403
+ if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove();else cleaned.push(node);
866
404
  }
867
405
  current = cleaned;
868
406
  }
@@ -870,7 +408,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
870
408
  if (value === current) return current;
871
409
  const t = typeof value,
872
410
  multi = marker !== undefined;
873
- parent = (multi && current[0] && current[0].parentNode) || parent;
411
+ parent = multi && current[0] && current[0].parentNode || parent;
874
412
  if (t === "string" || t === "number") {
875
413
  if (sharedConfig.context) return current;
876
414
  if (t === "number") value = value.toString();
@@ -899,7 +437,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
899
437
  const array = [];
900
438
  const currentArray = current && Array.isArray(current);
901
439
  if (normalizeIncomingArray(array, value, current, unwrapArray)) {
902
- createRenderEffect(() => (current = insertExpression(parent, array, current, marker, true)));
440
+ createRenderEffect(() => current = insertExpression(parent, array, current, marker, true));
903
441
  return () => current;
904
442
  }
905
443
  if (sharedConfig.context) {
@@ -908,7 +446,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
908
446
  let node = array[0];
909
447
  let nodes = [node];
910
448
  while ((node = node.nextSibling) !== marker) nodes.push(node);
911
- return (current = nodes);
449
+ return current = nodes;
912
450
  }
913
451
  if (array.length === 0) {
914
452
  current = cleanChildren(parent, current, marker);
@@ -923,15 +461,15 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
923
461
  }
924
462
  current = array;
925
463
  } else if (value.nodeType) {
926
- if (sharedConfig.context && value.parentNode) return (current = multi ? [value] : value);
464
+ if (sharedConfig.context && value.parentNode) return current = multi ? [value] : value;
927
465
  if (Array.isArray(current)) {
928
- if (multi) return (current = cleanChildren(parent, current, marker, value));
466
+ if (multi) return current = cleanChildren(parent, current, marker, value);
929
467
  cleanChildren(parent, current, null, value);
930
468
  } else if (current == null || current === "" || !parent.firstChild) {
931
469
  parent.appendChild(value);
932
470
  } else parent.replaceChild(value, parent.firstChild);
933
471
  current = value;
934
- } else;
472
+ } else ;
935
473
  return current;
936
474
  }
937
475
  function normalizeIncomingArray(normalized, array, current, unwrap) {
@@ -940,28 +478,21 @@ function normalizeIncomingArray(normalized, array, current, unwrap) {
940
478
  let item = array[i],
941
479
  prev = current && current[i],
942
480
  t;
943
- if (item == null || item === true || item === false);
944
- else if ((t = typeof item) === "object" && item.nodeType) {
481
+ if (item == null || item === true || item === false) ; else if ((t = typeof item) === "object" && item.nodeType) {
945
482
  normalized.push(item);
946
483
  } else if (Array.isArray(item)) {
947
484
  dynamic = normalizeIncomingArray(normalized, item, prev) || dynamic;
948
485
  } else if (t === "function") {
949
486
  if (unwrap) {
950
487
  while (typeof item === "function") item = item();
951
- dynamic =
952
- normalizeIncomingArray(
953
- normalized,
954
- Array.isArray(item) ? item : [item],
955
- Array.isArray(prev) ? prev : [prev]
956
- ) || dynamic;
488
+ dynamic = normalizeIncomingArray(normalized, Array.isArray(item) ? item : [item], Array.isArray(prev) ? prev : [prev]) || dynamic;
957
489
  } else {
958
490
  normalized.push(item);
959
491
  dynamic = true;
960
492
  }
961
493
  } else {
962
494
  const value = String(item);
963
- if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);
964
- else normalized.push(document.createTextNode(value));
495
+ if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);else normalized.push(document.createTextNode(value));
965
496
  }
966
497
  }
967
498
  return dynamic;
@@ -970,7 +501,7 @@ function appendNodes(parent, array, marker = null) {
970
501
  for (let i = 0, len = array.length; i < len; i++) parent.insertBefore(array[i], marker);
971
502
  }
972
503
  function cleanChildren(parent, current, marker, replacement) {
973
- if (marker === undefined) return (parent.textContent = "");
504
+ if (marker === undefined) return parent.textContent = "";
974
505
  const node = replacement || document.createTextNode("");
975
506
  if (current.length) {
976
507
  let inserted = false;
@@ -978,9 +509,7 @@ function cleanChildren(parent, current, marker, replacement) {
978
509
  const el = current[i];
979
510
  if (node !== el) {
980
511
  const isParent = el.parentNode === parent;
981
- if (!inserted && !i)
982
- isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);
983
- else isParent && el.remove();
512
+ if (!inserted && !i) isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);else isParent && el.remove();
984
513
  } else inserted = true;
985
514
  }
986
515
  } else parent.insertBefore(node, marker);
@@ -991,8 +520,7 @@ function gatherHydratable(element, root) {
991
520
  for (let i = 0; i < templates.length; i++) {
992
521
  const node = templates[i];
993
522
  const key = node.getAttribute("data-hk");
994
- if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key))
995
- sharedConfig.registry.set(key, node);
523
+ if ((!root || key.startsWith(root)) && !sharedConfig.registry.has(key)) sharedConfig.registry.set(key, node);
996
524
  }
997
525
  }
998
526
  function getHydrationKey() {
@@ -1045,47 +573,42 @@ const hydrate = (...args) => {
1045
573
  return hydrate$1(...args);
1046
574
  };
1047
575
  function Portal(props) {
1048
- const { useShadow } = props,
576
+ const {
577
+ useShadow
578
+ } = props,
1049
579
  marker = document.createTextNode(""),
1050
580
  mount = () => props.mount || document.body,
1051
581
  owner = getOwner();
1052
582
  let content;
1053
583
  let hydrating = !!sharedConfig.context;
1054
- createEffect(
1055
- () => {
1056
- if (hydrating) getOwner().user = hydrating = false;
1057
- content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
1058
- const el = mount();
1059
- if (el instanceof HTMLHeadElement) {
1060
- const [clean, setClean] = createSignal(false);
1061
- const cleanup = () => setClean(true);
1062
- createRoot(dispose => insert(el, () => (!clean() ? content() : dispose()), null));
1063
- onCleanup(cleanup);
1064
- } else {
1065
- const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
1066
- renderRoot =
1067
- useShadow && container.attachShadow
1068
- ? container.attachShadow({
1069
- mode: "open"
1070
- })
1071
- : container;
1072
- Object.defineProperty(container, "_$host", {
1073
- get() {
1074
- return marker.parentNode;
1075
- },
1076
- configurable: true
1077
- });
1078
- insert(renderRoot, content);
1079
- el.appendChild(container);
1080
- props.ref && props.ref(container);
1081
- onCleanup(() => el.removeChild(container));
1082
- }
1083
- },
1084
- undefined,
1085
- {
1086
- render: !hydrating
584
+ createEffect(() => {
585
+ if (hydrating) getOwner().user = hydrating = false;
586
+ content || (content = runWithOwner(owner, () => createMemo(() => props.children)));
587
+ const el = mount();
588
+ if (el instanceof HTMLHeadElement) {
589
+ const [clean, setClean] = createSignal(false);
590
+ const cleanup = () => setClean(true);
591
+ createRoot(dispose => insert(el, () => !clean() ? content() : dispose(), null));
592
+ onCleanup(cleanup);
593
+ } else {
594
+ const container = createElement(props.isSVG ? "g" : "div", props.isSVG),
595
+ renderRoot = useShadow && container.attachShadow ? container.attachShadow({
596
+ mode: "open"
597
+ }) : container;
598
+ Object.defineProperty(container, "_$host", {
599
+ get() {
600
+ return marker.parentNode;
601
+ },
602
+ configurable: true
603
+ });
604
+ insert(renderRoot, content);
605
+ el.appendChild(container);
606
+ props.ref && props.ref(container);
607
+ onCleanup(() => el.removeChild(container));
1087
608
  }
1088
- );
609
+ }, undefined, {
610
+ render: !hydrating
611
+ });
1089
612
  return marker;
1090
613
  }
1091
614
  function Dynamic(props) {
@@ -1105,61 +628,4 @@ function Dynamic(props) {
1105
628
  });
1106
629
  }
1107
630
 
1108
- export {
1109
- Aliases,
1110
- voidFn as Assets,
1111
- ChildProperties,
1112
- DOMElements,
1113
- DelegatedEvents,
1114
- Dynamic,
1115
- Hydration,
1116
- voidFn as HydrationScript,
1117
- NoHydration,
1118
- Portal,
1119
- Properties,
1120
- RequestContext,
1121
- SVGElements,
1122
- SVGNamespace,
1123
- addEventListener,
1124
- assign,
1125
- classList,
1126
- className,
1127
- clearDelegatedEvents,
1128
- delegateEvents,
1129
- dynamicProperty,
1130
- escape,
1131
- voidFn as generateHydrationScript,
1132
- voidFn as getAssets,
1133
- getHydrationKey,
1134
- getNextElement,
1135
- getNextMarker,
1136
- getNextMatch,
1137
- getPropAlias,
1138
- voidFn as getRequestEvent,
1139
- hydrate,
1140
- innerHTML,
1141
- insert,
1142
- isDev,
1143
- isServer,
1144
- render,
1145
- renderToStream,
1146
- renderToString,
1147
- renderToStringAsync,
1148
- resolveSSRNode,
1149
- runHydrationEvents,
1150
- setAttribute,
1151
- setAttributeNS,
1152
- setProperty,
1153
- spread,
1154
- ssr,
1155
- ssrAttribute,
1156
- ssrClassList,
1157
- ssrElement,
1158
- ssrHydrationKey,
1159
- ssrSpread,
1160
- ssrStyle,
1161
- style,
1162
- template,
1163
- use,
1164
- voidFn as useAssets
1165
- };
631
+ 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 };