solid-js 1.8.11 → 1.8.13

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 (52) hide show
  1. package/dist/dev.js +544 -307
  2. package/dist/server.js +170 -75
  3. package/dist/solid.js +471 -265
  4. package/h/dist/h.js +34 -8
  5. package/h/jsx-runtime/dist/jsx.js +1 -1
  6. package/h/jsx-runtime/types/index.d.ts +11 -8
  7. package/h/types/hyperscript.d.ts +11 -11
  8. package/html/dist/html.js +216 -94
  9. package/html/types/lit.d.ts +47 -33
  10. package/package.json +9 -4
  11. package/store/dist/dev.cjs +12 -2
  12. package/store/dist/dev.js +133 -44
  13. package/store/dist/server.js +19 -8
  14. package/store/dist/store.cjs +12 -2
  15. package/store/dist/store.js +124 -41
  16. package/store/types/index.d.ts +21 -7
  17. package/store/types/modifiers.d.ts +6 -3
  18. package/store/types/mutable.d.ts +5 -2
  19. package/store/types/server.d.ts +12 -4
  20. package/store/types/store.d.ts +218 -61
  21. package/types/index.d.ts +75 -10
  22. package/types/reactive/array.d.ts +12 -4
  23. package/types/reactive/observable.d.ts +25 -17
  24. package/types/reactive/scheduler.d.ts +9 -6
  25. package/types/reactive/signal.d.ts +233 -142
  26. package/types/render/Suspense.d.ts +5 -5
  27. package/types/render/component.d.ts +64 -33
  28. package/types/render/flow.d.ts +43 -31
  29. package/types/render/hydration.d.ts +13 -13
  30. package/types/server/index.d.ts +57 -2
  31. package/types/server/reactive.d.ts +73 -42
  32. package/types/server/rendering.d.ts +167 -96
  33. package/universal/dist/dev.js +28 -12
  34. package/universal/dist/universal.js +28 -12
  35. package/universal/types/index.d.ts +3 -1
  36. package/universal/types/universal.d.ts +0 -1
  37. package/web/dist/dev.cjs +3 -0
  38. package/web/dist/dev.js +625 -81
  39. package/web/dist/server.cjs +10 -15
  40. package/web/dist/server.js +216 -107
  41. package/web/dist/web.js +614 -80
  42. package/web/storage/dist/storage.js +10 -0
  43. package/web/storage/package.json +15 -0
  44. package/web/storage/types/index.d.ts +2 -0
  45. package/web/storage/types/index.js +13 -0
  46. package/web/types/client.d.ts +2 -2
  47. package/web/types/core.d.ts +10 -1
  48. package/web/types/index.d.ts +27 -10
  49. package/web/types/server-mock.d.ts +47 -32
  50. package/web/dist/storage.js +0 -10
  51. package/web/types/storage.d.ts +0 -2
  52. /package/web/{dist → storage/dist}/storage.cjs +0 -0
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) {
@@ -108,10 +553,17 @@ function reconcileArrays(parentNode, a, b) {
108
553
 
109
554
  const $$EVENTS = "_$DX_DELEGATE";
110
555
  function render(code, element, init, options = {}) {
556
+ if (!element) {
557
+ throw new Error(
558
+ "The `element` passed to `render(..., element)` doesn't exist. Make sure `element` exists in the document."
559
+ );
560
+ }
111
561
  let disposer;
112
562
  createRoot(dispose => {
113
563
  disposer = dispose;
114
- 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);
115
567
  }, options.owner);
116
568
  return () => {
117
569
  disposer();
@@ -121,12 +573,17 @@ function render(code, element, init, options = {}) {
121
573
  function template(html, isCE, isSVG) {
122
574
  let node;
123
575
  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.");
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
+ );
125
580
  const t = document.createElement("template");
126
581
  t.innerHTML = html;
127
582
  return isSVG ? t.content.firstChild.firstChild : t.content.firstChild;
128
583
  };
129
- 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);
130
587
  fn.cloneNode = fn;
131
588
  return fn;
132
589
  }
@@ -151,15 +608,18 @@ function setProperty(node, name, value) {
151
608
  }
152
609
  function setAttribute(node, name, value) {
153
610
  if (sharedConfig.context) return;
154
- if (value == null) node.removeAttribute(name);else node.setAttribute(name, value);
611
+ if (value == null) node.removeAttribute(name);
612
+ else node.setAttribute(name, value);
155
613
  }
156
614
  function setAttributeNS(node, namespace, name, value) {
157
615
  if (sharedConfig.context) return;
158
- 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);
159
618
  }
160
619
  function className(node, value) {
161
620
  if (sharedConfig.context) return;
162
- if (value == null) node.removeAttribute("class");else node.className = value;
621
+ if (value == null) node.removeAttribute("class");
622
+ else node.className = value;
163
623
  }
164
624
  function addEventListener(node, name, handler, delegate) {
165
625
  if (delegate) {
@@ -169,7 +629,7 @@ function addEventListener(node, name, handler, delegate) {
169
629
  } else node[`$$${name}`] = handler;
170
630
  } else if (Array.isArray(handler)) {
171
631
  const handlerFn = handler[0];
172
- 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)));
173
633
  } else node.addEventListener(name, handler);
174
634
  }
175
635
  function classList(node, value, prev = {}) {
@@ -194,7 +654,7 @@ function classList(node, value, prev = {}) {
194
654
  function style(node, value, prev) {
195
655
  if (!value) return prev ? setAttribute(node, "style") : value;
196
656
  const nodeStyle = node.style;
197
- if (typeof value === "string") return nodeStyle.cssText = value;
657
+ if (typeof value === "string") return (nodeStyle.cssText = value);
198
658
  typeof prev === "string" && (nodeStyle.cssText = prev = undefined);
199
659
  prev || (prev = {});
200
660
  value || (value = {});
@@ -215,7 +675,9 @@ function style(node, value, prev) {
215
675
  function spread(node, props = {}, isSVG, skipChildren) {
216
676
  const prevProps = {};
217
677
  if (!skipChildren) {
218
- createRenderEffect(() => prevProps.children = insertExpression(node, props.children, prevProps.children));
678
+ createRenderEffect(
679
+ () => (prevProps.children = insertExpression(node, props.children, prevProps.children))
680
+ );
219
681
  }
220
682
  createRenderEffect(() => props.ref && props.ref(node));
221
683
  createRenderEffect(() => assign(node, props, isSVG, true, prevProps, true));
@@ -274,8 +736,9 @@ function hydrate$1(code, element, options = {}) {
274
736
  }
275
737
  function getNextElement(template) {
276
738
  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}`);
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}`);
279
742
  return template();
280
743
  }
281
744
  if (sharedConfig.completed) sharedConfig.completed.add(node);
@@ -294,7 +757,8 @@ function getNextMarker(start) {
294
757
  while (end) {
295
758
  if (end.nodeType === 8) {
296
759
  const v = end.nodeValue;
297
- if (v === "$") count++;else if (v === "/") {
760
+ if (v === "$") count++;
761
+ else if (v === "/") {
298
762
  if (count === 0) return [end, current];
299
763
  count--;
300
764
  }
@@ -308,10 +772,7 @@ function getNextMarker(start) {
308
772
  function runHydrationEvents() {
309
773
  if (sharedConfig.events && !sharedConfig.events.queued) {
310
774
  queueMicrotask(() => {
311
- const {
312
- completed,
313
- events
314
- } = sharedConfig;
775
+ const { completed, events } = sharedConfig;
315
776
  events.queued = false;
316
777
  while (events.length) {
317
778
  const [el, e] = events[0];
@@ -328,7 +789,8 @@ function toPropertyName(name) {
328
789
  }
329
790
  function toggleClassKey(node, key, value) {
330
791
  const classNames = key.trim().split(/\s+/);
331
- 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);
332
794
  }
333
795
  function assignProp(node, prop, value, prev, isSVG, skipRef) {
334
796
  let isCE, isProp, isChildProp, propAlias, forceProp;
@@ -358,21 +820,30 @@ function assignProp(node, prop, value, prev, isSVG, skipRef) {
358
820
  }
359
821
  } else if (prop.slice(0, 5) === "attr:") {
360
822
  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("-"))) {
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
+ ) {
362
830
  if (forceProp) {
363
831
  prop = prop.slice(5);
364
832
  isProp = true;
365
833
  } 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;
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;
367
837
  } else {
368
838
  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);
839
+ if (ns) setAttributeNS(node, ns, prop, value);
840
+ else setAttribute(node, Aliases[prop] || prop, value);
370
841
  }
371
842
  return value;
372
843
  }
373
844
  function eventHandler(e) {
374
845
  const key = `$$${e.type}`;
375
- let node = e.composedPath && e.composedPath()[0] || e.target;
846
+ let node = (e.composedPath && e.composedPath()[0]) || e.target;
376
847
  if (e.target !== node) {
377
848
  Object.defineProperty(e, "target", {
378
849
  configurable: true,
@@ -402,7 +873,8 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
402
873
  let cleaned = [];
403
874
  for (let i = 0; i < current.length; i++) {
404
875
  const node = current[i];
405
- 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);
406
878
  }
407
879
  current = cleaned;
408
880
  }
@@ -410,7 +882,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
410
882
  if (value === current) return current;
411
883
  const t = typeof value,
412
884
  multi = marker !== undefined;
413
- parent = multi && current[0] && current[0].parentNode || parent;
885
+ parent = (multi && current[0] && current[0].parentNode) || parent;
414
886
  if (t === "string" || t === "number") {
415
887
  if (sharedConfig.context) return current;
416
888
  if (t === "number") value = value.toString();
@@ -439,7 +911,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
439
911
  const array = [];
440
912
  const currentArray = current && Array.isArray(current);
441
913
  if (normalizeIncomingArray(array, value, current, unwrapArray)) {
442
- createRenderEffect(() => current = insertExpression(parent, array, current, marker, true));
914
+ createRenderEffect(() => (current = insertExpression(parent, array, current, marker, true)));
443
915
  return () => current;
444
916
  }
445
917
  if (sharedConfig.context) {
@@ -448,7 +920,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
448
920
  let node = array[0];
449
921
  let nodes = [node];
450
922
  while ((node = node.nextSibling) !== marker) nodes.push(node);
451
- return current = nodes;
923
+ return (current = nodes);
452
924
  }
453
925
  if (array.length === 0) {
454
926
  current = cleanChildren(parent, current, marker);
@@ -463,9 +935,9 @@ function insertExpression(parent, value, current, marker, unwrapArray) {
463
935
  }
464
936
  current = array;
465
937
  } else if (value.nodeType) {
466
- if (sharedConfig.context && value.parentNode) return current = multi ? [value] : value;
938
+ if (sharedConfig.context && value.parentNode) return (current = multi ? [value] : value);
467
939
  if (Array.isArray(current)) {
468
- if (multi) return current = cleanChildren(parent, current, marker, value);
940
+ if (multi) return (current = cleanChildren(parent, current, marker, value));
469
941
  cleanChildren(parent, current, null, value);
470
942
  } else if (current == null || current === "" || !parent.firstChild) {
471
943
  parent.appendChild(value);
@@ -480,21 +952,28 @@ function normalizeIncomingArray(normalized, array, current, unwrap) {
480
952
  let item = array[i],
481
953
  prev = current && current[i],
482
954
  t;
483
- 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) {
484
957
  normalized.push(item);
485
958
  } else if (Array.isArray(item)) {
486
959
  dynamic = normalizeIncomingArray(normalized, item, prev) || dynamic;
487
960
  } else if (t === "function") {
488
961
  if (unwrap) {
489
962
  while (typeof item === "function") item = item();
490
- 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;
491
969
  } else {
492
970
  normalized.push(item);
493
971
  dynamic = true;
494
972
  }
495
973
  } else {
496
974
  const value = String(item);
497
- 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));
498
977
  }
499
978
  }
500
979
  return dynamic;
@@ -503,7 +982,7 @@ function appendNodes(parent, array, marker = null) {
503
982
  for (let i = 0, len = array.length; i < len; i++) parent.insertBefore(array[i], marker);
504
983
  }
505
984
  function cleanChildren(parent, current, marker, replacement) {
506
- if (marker === undefined) return parent.textContent = "";
985
+ if (marker === undefined) return (parent.textContent = "");
507
986
  const node = replacement || document.createTextNode("");
508
987
  if (current.length) {
509
988
  let inserted = false;
@@ -511,7 +990,9 @@ function cleanChildren(parent, current, marker, replacement) {
511
990
  const el = current[i];
512
991
  if (node !== el) {
513
992
  const isParent = el.parentNode === parent;
514
- 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();
515
996
  } else inserted = true;
516
997
  }
517
998
  } else parent.insertBefore(node, marker);
@@ -522,7 +1003,8 @@ function gatherHydratable(element, root) {
522
1003
  for (let i = 0; i < templates.length; i++) {
523
1004
  const node = templates[i];
524
1005
  const key = node.getAttribute("data-hk");
525
- 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);
526
1008
  }
527
1009
  }
528
1010
  function getHydrationKey() {
@@ -575,42 +1057,47 @@ const hydrate = (...args) => {
575
1057
  return hydrate$1(...args);
576
1058
  };
577
1059
  function Portal(props) {
578
- const {
579
- useShadow
580
- } = props,
1060
+ const { useShadow } = props,
581
1061
  marker = document.createTextNode(""),
582
1062
  mount = () => props.mount || document.body,
583
1063
  owner = getOwner();
584
1064
  let content;
585
1065
  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));
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
610
1099
  }
611
- }, undefined, {
612
- render: !hydrating
613
- });
1100
+ );
614
1101
  return marker;
615
1102
  }
616
1103
  function Dynamic(props) {
@@ -633,4 +1120,61 @@ function Dynamic(props) {
633
1120
  });
634
1121
  }
635
1122
 
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 };
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
+ };