@manyducks.co/dolla 2.0.0-alpha.25 → 2.0.0-alpha.27

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.
@@ -1,1350 +0,0 @@
1
- var xe = Object.defineProperty;
2
- var Ee = (s, e, t) => e in s ? xe(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;
3
- var o = (s, e, t) => Ee(s, typeof e != "symbol" ? e + "" : e, t);
4
- function ae(s) {
5
- return s && s.__esModule && Object.prototype.hasOwnProperty.call(s, "default") ? s.default : s;
6
- }
7
- var V = { exports: {} }, Y;
8
- function Me() {
9
- return Y || (Y = 1, function(s, e) {
10
- Object.defineProperty(e, "__esModule", { value: !0 });
11
- var t = /* @__PURE__ */ function() {
12
- function c(l, h) {
13
- var f = [], d = !0, m = !1, b = void 0;
14
- try {
15
- for (var x, _ = l[Symbol.iterator](); !(d = (x = _.next()).done) && (f.push(x.value), !(h && f.length === h)); d = !0) ;
16
- } catch (g) {
17
- m = !0, b = g;
18
- } finally {
19
- try {
20
- !d && _.return && _.return();
21
- } finally {
22
- if (m) throw b;
23
- }
24
- }
25
- return f;
26
- }
27
- return function(l, h) {
28
- if (Array.isArray(l)) return l;
29
- if (Symbol.iterator in Object(l)) return c(l, h);
30
- throw new TypeError("Invalid attempt to destructure non-iterable instance");
31
- };
32
- }(), n = function(c) {
33
- return c.reduce(function(l, h) {
34
- return 16 > h ? l + "0" + h.toString(16) : l + h.toString(16);
35
- }, "#");
36
- }, r = function(c, l, h) {
37
- var f = 0.5 > h ? h * (1 + l) : h + l - h * l, d = 2 * h - f, m = function(g, S, v) {
38
- var F = Math.round, w = 0 > v ? v + 1 : 1 < v ? v - 1 : v;
39
- return w = w < 1 / 6 ? g + 6 * (S - g) * w : w < 1 / 2 ? S : w < 2 / 3 ? g + 6 * (S - g) * (2 / 3 - w) : g, F(255 * w);
40
- }, b = m(d, f, c + 1 / 3), x = m(d, f, c), _ = m(d, f, c - 1 / 3);
41
- return [b, x, _];
42
- }, i = function(c, l, h, f) {
43
- var d = c % 1007 / 1007, m = function(g, S, v) {
44
- return g * (v - S) + S;
45
- }, b = m(d, l.min, l.max), x = m(d, h.min, h.max), _ = m(d, f.max, f.min);
46
- return [b, x, _];
47
- }, u = function(c) {
48
- return c.split("").reduce(function(l, h, f) {
49
- return l * h.charCodeAt(0) * f + 1;
50
- }, 1);
51
- }, a = function(c) {
52
- var l = c.str, h = c.hue, f = h === void 0 ? { min: 0, max: 360 } : h, d = c.sat, m = d === void 0 ? { min: 0.35, max: 0.65 } : d, b = c.light, x = b === void 0 ? { min: 0.3, max: 0.7 } : b, _ = c.hashFunction, g = _ === void 0 ? u : _, S = c.scheme, v = S === void 0 ? "hex" : S, F = i(g(l), f, m, x), w = t(F, 3), z = w[0], B = w[1], K = w[2], H = r(z / 360, B, K), Se = n(H);
53
- return v === "hsl" ? [z, B, K] : v === "rgb" ? H : Se;
54
- };
55
- e.default = a, s.exports = e.default;
56
- }(V, V.exports)), V.exports;
57
- }
58
- var Ne = Me();
59
- const Ae = /* @__PURE__ */ ae(Ne);
60
- function $(s) {
61
- const e = typeof s;
62
- switch (e) {
63
- case "undefined":
64
- return e;
65
- case "number":
66
- return isNaN(s) ? "NaN" : e;
67
- case "function":
68
- return /^\s*class\s+/.test(s.toString()) ? "class" : e;
69
- case "object":
70
- return s === null ? "null" : s instanceof Promise ? "promise" : s instanceof Map ? "map" : s instanceof Set ? "set" : Array.isArray(s) ? "array" : e;
71
- default:
72
- return e;
73
- }
74
- }
75
- function et(s, e) {
76
- if (!s)
77
- throw new TypeError(
78
- W(s, e || "Failed assertion. Value is not truthy. Got type: %t, value: %v")
79
- );
80
- }
81
- function A(s) {
82
- return Array.isArray(s);
83
- }
84
- function le(...s) {
85
- const e = s[0], t = (n) => A(n) && n.every((r) => e(r));
86
- return s.length < 2 ? t : t(s[1]);
87
- }
88
- function tt(...s) {
89
- const e = s[0], t = E(s[2]) ? s[2] : "Expected an array of valid items. Got type: %t, value: %v", n = (r) => {
90
- if (A(r) && r.every((i) => e(i)))
91
- return !0;
92
- throw new TypeError(W(r, t));
93
- };
94
- return s.length < 2 ? n : n(s[1]);
95
- }
96
- function E(s) {
97
- return typeof s == "string";
98
- }
99
- function nt(s, e) {
100
- if (E(s))
101
- return !0;
102
- throw new TypeError(W(s, e ?? "Expected a string. Got type: %t, value: %v"));
103
- }
104
- function T(s) {
105
- return typeof s == "function" && !$e(s);
106
- }
107
- function he(s) {
108
- return typeof s == "number" && !isNaN(s);
109
- }
110
- function $e(s) {
111
- return typeof s == "function" && /^\s*class\s+/.test(s.toString());
112
- }
113
- function st(...s) {
114
- const e = s[0], t = E(s[2]) ? s[2] : `Expected instance of ${e.name}. Got type: %t, value: %v`, n = (r) => {
115
- if (r instanceof e)
116
- return !0;
117
- throw new TypeError(W(r, t));
118
- };
119
- return s.length < 2 ? n : n(s[1]);
120
- }
121
- function fe(s) {
122
- return s != null && typeof s == "object" && !A(s);
123
- }
124
- function W(s, e) {
125
- var r;
126
- const t = $(s), n = ((r = s == null ? void 0 : s.toString) == null ? void 0 : r.call(s)) || String(s);
127
- return e.replaceAll("%t", t).replaceAll("%v", n);
128
- }
129
- var I, Z;
130
- function Oe() {
131
- return Z || (Z = 1, I = function s(e, t) {
132
- if (e === t) return !0;
133
- if (e && t && typeof e == "object" && typeof t == "object") {
134
- if (e.constructor !== t.constructor) return !1;
135
- var n, r, i;
136
- if (Array.isArray(e)) {
137
- if (n = e.length, n != t.length) return !1;
138
- for (r = n; r-- !== 0; )
139
- if (!s(e[r], t[r])) return !1;
140
- return !0;
141
- }
142
- if (e instanceof Map && t instanceof Map) {
143
- if (e.size !== t.size) return !1;
144
- for (r of e.entries())
145
- if (!t.has(r[0])) return !1;
146
- for (r of e.entries())
147
- if (!s(r[1], t.get(r[0]))) return !1;
148
- return !0;
149
- }
150
- if (e instanceof Set && t instanceof Set) {
151
- if (e.size !== t.size) return !1;
152
- for (r of e.entries())
153
- if (!t.has(r[0])) return !1;
154
- return !0;
155
- }
156
- if (ArrayBuffer.isView(e) && ArrayBuffer.isView(t)) {
157
- if (n = e.length, n != t.length) return !1;
158
- for (r = n; r-- !== 0; )
159
- if (e[r] !== t[r]) return !1;
160
- return !0;
161
- }
162
- if (e.constructor === RegExp) return e.source === t.source && e.flags === t.flags;
163
- if (e.valueOf !== Object.prototype.valueOf) return e.valueOf() === t.valueOf();
164
- if (e.toString !== Object.prototype.toString) return e.toString() === t.toString();
165
- if (i = Object.keys(e), n = i.length, n !== Object.keys(t).length) return !1;
166
- for (r = n; r-- !== 0; )
167
- if (!Object.prototype.hasOwnProperty.call(t, i[r])) return !1;
168
- for (r = n; r-- !== 0; ) {
169
- var u = i[r];
170
- if (!s(e[u], t[u])) return !1;
171
- }
172
- return !0;
173
- }
174
- return e !== e && t !== t;
175
- }), I;
176
- }
177
- var Ve = Oe();
178
- const Te = /* @__PURE__ */ ae(Ve), Pe = () => {
179
- };
180
- let j = 1;
181
- function de() {
182
- return j = j % Number.MAX_SAFE_INTEGER + 1, j.toString(36) + Date.now().toString(36);
183
- }
184
- function pe(s, e) {
185
- return s === e;
186
- }
187
- function rt(s, e) {
188
- if (s === e) return !0;
189
- const t = $(s);
190
- if (t !== $(e))
191
- return !1;
192
- switch (t) {
193
- case "object":
194
- let n = 0;
195
- for (const r in s) {
196
- if (s[r] !== e[r]) return !1;
197
- n++;
198
- }
199
- return Object.keys(e).length === n;
200
- case "array":
201
- if (s.length !== e.length) return !1;
202
- for (let r = 0; r < s.length; r++)
203
- if (s[r] !== e[r]) return !1;
204
- return !0;
205
- case "map":
206
- if (s.size !== e.size) return !1;
207
- for (const r of s.keys())
208
- if (s[r] !== e[r]) return !1;
209
- return !0;
210
- case "set":
211
- if (T(s.symmetricDifference))
212
- return s.symmetricDifference(e).size === 0;
213
- for (const r of s.keys())
214
- if (s[r] !== e.get(r)) return !1;
215
- return !0;
216
- }
217
- return !1;
218
- }
219
- const it = Te;
220
- function qe(s, e) {
221
- const t = (n) => {
222
- const r = {};
223
- for (const i in n)
224
- s.includes(i) || (r[i] = n[i]);
225
- return r;
226
- };
227
- return e == null ? t : t(e);
228
- }
229
- function We(s) {
230
- return Ae({
231
- str: s,
232
- sat: { min: 0.35, max: 0.55 },
233
- light: { min: 0.6, max: 0.6 }
234
- });
235
- }
236
- function ot(s) {
237
- if (s instanceof RegExp)
238
- return (n) => s.test(n);
239
- const e = {
240
- positive: [],
241
- negative: []
242
- }, t = s.split(",").map((n) => n.trim()).filter((n) => n !== "");
243
- for (let n of t) {
244
- let r = "positive";
245
- n.startsWith("-") && (r = "negative", n = n.slice(1)), n === "*" ? e[r].push(function() {
246
- return !0;
247
- }) : n.endsWith("*") ? e[r].push(function(i) {
248
- return i.startsWith(n.slice(0, n.length - 1));
249
- }) : e[r].push(function(i) {
250
- return i === n;
251
- });
252
- }
253
- return function(n) {
254
- const { positive: r, negative: i } = e;
255
- return !(i.some((u) => u(n)) || r.length > 0 && !r.some((u) => u(n)));
256
- };
257
- }
258
- const me = Symbol.for("DollaState"), ge = Symbol.for("DollaRef"), we = Symbol.for("DollaMarkup"), k = Symbol.for("DollaMarkupElement"), P = {
259
- watcherCount: 0,
260
- increment() {
261
- this.watcherCount++, this._log();
262
- },
263
- decrement() {
264
- this.watcherCount--, this._log();
265
- },
266
- _label: "dolla/state-tracker",
267
- _timeout: null,
268
- _log() {
269
- window.DOLLA_DEV_DEBUG === !0 && !this._timeout && (this._timeout = setTimeout(() => {
270
- console.log(
271
- `%c[DOLLA_DEV_DEBUG] %c${this._label}%c%c%c`,
272
- "color:#e44c4c;font-weight:bold",
273
- `color:${We(this._label)};font-weight:bold`,
274
- "color:#777",
275
- "color:#aaa",
276
- "color:#777",
277
- { watcherCount: this.watcherCount }
278
- ), this._timeout = null;
279
- }, 200));
280
- }
281
- };
282
- function p(s) {
283
- return (s == null ? void 0 : s[me]) === !0;
284
- }
285
- function Ue(s) {
286
- return (s == null ? void 0 : s[ge]) === !0;
287
- }
288
- function Fe(s) {
289
- return p(s) ? s.get() : s;
290
- }
291
- function U(s) {
292
- return p(s) ? s : new R({
293
- get() {
294
- return s;
295
- },
296
- watch(e, t = {}) {
297
- return t != null && t.lazy || e(s), Pe;
298
- }
299
- });
300
- }
301
- class Ie {
302
- constructor(e, t) {
303
- o(this, "value");
304
- o(this, "watchers", []);
305
- o(this, "equals", pe);
306
- this.value = e, t != null && t.equals && (this.equals = t.equals);
307
- }
308
- get() {
309
- return this.value;
310
- }
311
- set(e) {
312
- if (typeof e == "function" && (e = e(this.value)), !this.equals(e, this.value)) {
313
- this.value = e;
314
- try {
315
- for (const t of this.watchers)
316
- t(e);
317
- } catch (t) {
318
- throw console.error("Error in watcher", t), t;
319
- }
320
- }
321
- }
322
- watch(e, t) {
323
- return this.watchers.push(e), t != null && t.lazy || e(this.value), P.increment(), () => {
324
- const n = this.watchers.indexOf(e);
325
- n > -1 && this.watchers.splice(n, 1), P.decrement();
326
- };
327
- }
328
- }
329
- var Q;
330
- Q = me;
331
- class R {
332
- constructor(e) {
333
- // Instances will pass isState() with this symbol
334
- o(this, Q, !0);
335
- o(this, "__value");
336
- this.__value = e;
337
- }
338
- get() {
339
- return this.__value.get();
340
- }
341
- watch(e, t) {
342
- return this.__value.watch(e, t);
343
- }
344
- }
345
- function L(s, e) {
346
- const t = new Ie(s, e);
347
- return [new R(t), (r) => t.set(r)];
348
- }
349
- const X = Symbol("EMPTY");
350
- class je {
351
- constructor(e, t, n) {
352
- o(this, "equals", pe);
353
- /**
354
- * Array of states this holder's value is derived from.
355
- */
356
- o(this, "sources", []);
357
- /**
358
- * The function that does the deriving. Receives source values and returns a derived value.
359
- */
360
- o(this, "fn");
361
- /**
362
- *
363
- */
364
- o(this, "sourceWatcher", D());
365
- /**
366
- * Array of functions awaiting notification when this holder's value changes.
367
- */
368
- o(this, "watchers", []);
369
- /**
370
- * True when this holder is actively watching sources.
371
- */
372
- o(this, "isWatchingSources", !1);
373
- /**
374
- * Latest values as received from sources.
375
- */
376
- o(this, "previousSourceValues");
377
- /**
378
- * The current value as returned from `fn` (may be a State)
379
- */
380
- o(this, "value", X);
381
- /**
382
- * The current unwrapped value.
383
- */
384
- o(this, "rawValue");
385
- /**
386
- * When value is a State, this function will stop watching its value.
387
- */
388
- o(this, "stopWatchingCurrentValue");
389
- this.sources = e.map(U), this.fn = t, n != null && n.equals && (this.equals = n.equals), this.previousSourceValues = new Array(e.length).fill(X, 0, e.length);
390
- }
391
- /*==========================*\
392
- || "Public" methods ||
393
- \*==========================*/
394
- get() {
395
- return this.getValue();
396
- }
397
- watch(e, t) {
398
- this.isWatchingSources || this.startWatchingSources();
399
- const n = this.watchers;
400
- return n.push(e), t != null && t.lazy || e(this.rawValue), P.increment(), () => {
401
- n.splice(n.indexOf(e), 1), this.isWatchingSources && n.length === 0 && this.stopWatchingSources(), P.decrement();
402
- };
403
- }
404
- /*==========================*\
405
- || Internal ||
406
- \*==========================*/
407
- notify(e) {
408
- for (const t of this.watchers)
409
- t(e);
410
- }
411
- update() {
412
- const e = this.sources, t = this.previousSourceValues;
413
- let n = !1, r;
414
- for (let i = 0; i < e.length; i++)
415
- r = e[i].get(), !n && !this.equals(r, t[i]) && (n = !0), t[i] = r;
416
- n && this.setValue(this.fn(...t));
417
- }
418
- getValue() {
419
- return this.isWatchingSources || this.update(), this.rawValue;
420
- }
421
- setValue(e) {
422
- this.stopWatchingCurrentValue && (this.stopWatchingCurrentValue(), this.stopWatchingCurrentValue = void 0), this.value = e, this.rawValue = Fe(e), this.isWatchingSources && p(e) ? this.stopWatchingCurrentValue = e.watch((t) => {
423
- this.rawValue = t, this.notify(t);
424
- }) : this.notify(this.rawValue);
425
- }
426
- startWatchingSources() {
427
- const e = this.previousSourceValues;
428
- for (let n = 0; n < this.sources.length; n++)
429
- this.sourceWatcher.watch([this.sources[n]], (r) => {
430
- if (e[n] = r, this.isWatchingSources) {
431
- const i = this.fn(...e);
432
- this.equals(i, this.value) || this.setValue(i);
433
- }
434
- });
435
- this.isWatchingSources = !0;
436
- const t = this.fn(...e);
437
- this.equals(t, this.value) || this.setValue(t);
438
- }
439
- stopWatchingSources() {
440
- this.sourceWatcher.stopAll(), this.stopWatchingCurrentValue && (this.stopWatchingCurrentValue(), this.stopWatchingCurrentValue = void 0), this.isWatchingSources = !1;
441
- }
442
- }
443
- function Le(s, e, t) {
444
- const n = new je(s, e, t);
445
- return new R(n);
446
- }
447
- function ut(s) {
448
- const e = function() {
449
- if (arguments.length === 1)
450
- s = arguments[0];
451
- else if (arguments.length > 1)
452
- throw new Error(`Too many arguments. Expected 0 or 1. Got: ${arguments.length}`);
453
- return s;
454
- };
455
- return e[ge] = !0, e;
456
- }
457
- function D() {
458
- const s = [];
459
- return {
460
- watch(e, t) {
461
- if (e.length === 0)
462
- throw new TypeError("Expected at least one state to watch.");
463
- e = e.map(U);
464
- let n;
465
- return e.length > 1 ? n = Le(e, t).watch(() => null) : n = e[0].watch(t), s.push(n), () => {
466
- let r = s.indexOf(n);
467
- r > -1 && s.splice(r, 1), n();
468
- };
469
- },
470
- stopAll() {
471
- for (; s.length > 0; )
472
- s.pop()();
473
- }
474
- };
475
- }
476
- function Re(s) {
477
- for (var e, t, n = arguments, r = 1, i = "", u = "", a = [0], c = function(f) {
478
- r === 1 && (f || (i = i.replace(/^\s*\n\s*|\s*\n\s*$/g, ""))) ? a.push(f ? n[f] : i) : r === 3 && (f || i) ? (a[1] = f ? n[f] : i, r = 2) : r === 2 && i === "..." && f ? a[2] = Object.assign(a[2] || {}, n[f]) : r === 2 && i && !f ? (a[2] = a[2] || {})[i] = !0 : r >= 5 && (r === 5 ? ((a[2] = a[2] || {})[t] = f ? i ? i + n[f] : n[f] : i, r = 6) : (f || i) && (a[2][t] += f ? i + n[f] : i)), i = "";
479
- }, l = 0; l < s.length; l++) {
480
- l && (r === 1 && c(), c(l));
481
- for (var h = 0; h < s[l].length; h++) e = s[l][h], r === 1 ? e === "<" ? (c(), a = [a, "", null], r = 3) : i += e : r === 4 ? i === "--" && e === ">" ? (r = 1, i = "") : i = e + i[0] : u ? e === u ? u = "" : i += e : e === '"' || e === "'" ? u = e : e === ">" ? (c(), r = 1) : r && (e === "=" ? (r = 5, t = i, i = "") : e === "/" && (r < 5 || s[l][h + 1] === ">") ? (c(), r === 3 && (a = a[0]), r = a, (a = a[0]).push(this.apply(null, r.slice(1))), r = 0) : e === " " || e === " " || e === `
482
- ` || e === "\r" ? (c(), r = 2) : i += e), r === 3 && i === "!--" && (r = 4, a = a[0]);
483
- }
484
- return c(), a.length > 2 ? a.slice(1) : a[1];
485
- }
486
- var ee;
487
- ee = k;
488
- class De {
489
- constructor(e) {
490
- o(this, ee, !0);
491
- o(this, "node");
492
- o(this, "endNode");
493
- o(this, "$predicate");
494
- o(this, "stopCallback");
495
- o(this, "thenContent");
496
- o(this, "elseContent");
497
- o(this, "connectedContent", []);
498
- o(this, "elementContext");
499
- o(this, "initialUpdateHappened", !1);
500
- o(this, "previousValue");
501
- this.$predicate = e.$predicate, this.thenContent = e.thenContent ? O(e.thenContent) : void 0, this.elseContent = e.elseContent ? O(e.elseContent) : void 0, this.elementContext = e.elementContext, this.elementContext.root.getEnv() === "development" ? (this.node = document.createComment("Conditional"), this.endNode = document.createComment("/Conditional")) : (this.node = document.createTextNode(""), this.endNode = document.createTextNode(""));
502
- }
503
- get isMounted() {
504
- return this.node.parentNode != null;
505
- }
506
- mount(e, t) {
507
- this.isMounted || (e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null), this.elementContext.root.getEnv() === "development" && e.insertBefore(this.endNode, this.node.nextSibling), this.stopCallback = this.$predicate.watch((n) => {
508
- (!this.initialUpdateHappened || n && !this.previousValue || !n && this.previousValue) && (this.update(n), this.initialUpdateHappened = !0, this.previousValue = n);
509
- }));
510
- }
511
- unmount(e = !1) {
512
- var t, n;
513
- this.stopCallback && (this.stopCallback(), this.stopCallback = void 0);
514
- for (const r of this.connectedContent)
515
- r.unmount(e);
516
- this.connectedContent = [], this.isMounted && ((t = this.node.parentNode) == null || t.removeChild(this.node), (n = this.endNode.parentNode) == null || n.removeChild(this.endNode));
517
- }
518
- update(e) {
519
- var t;
520
- for (const n of this.connectedContent)
521
- n.unmount(!1);
522
- if (this.connectedContent = [], this.node.parentNode != null) {
523
- e && this.thenContent ? this.connectedContent = C(this.elementContext, this.thenContent) : !e && this.elseContent && (this.connectedContent = C(this.elementContext, this.elseContent));
524
- for (let n = 0; n < this.connectedContent.length; n++) {
525
- const r = this.connectedContent[n], i = ((t = this.connectedContent[n - 1]) == null ? void 0 : t.node) ?? this.node;
526
- r.mount(this.node.parentNode, i);
527
- }
528
- this.elementContext.root.getEnv() === "development" && (this.node.textContent = `Conditional (${e ? "truthy" : "falsy"})`);
529
- }
530
- }
531
- }
532
- const Ge = (s) => /^on[A-Z]/.test(s);
533
- var te;
534
- te = k;
535
- class ze {
536
- constructor({ tag: e, props: t, children: n, elementContext: r }) {
537
- o(this, te, !0);
538
- o(this, "node");
539
- o(this, "props");
540
- o(this, "children");
541
- o(this, "stopCallbacks", []);
542
- o(this, "elementContext");
543
- o(this, "uniqueId", de());
544
- o(this, "_batchWrite");
545
- // Track the ref so we can nullify it on unmount.
546
- o(this, "ref");
547
- // Prevents 'onClickOutside' handlers from firing in the same cycle in which the element is connected.
548
- o(this, "canClickAway", !1);
549
- if (r = { ...r }, this._batchWrite = r.root.batch.write.bind(r.root.batch), e.toLowerCase() === "svg" && (r.isSVG = !0), r.isSVG ? this.node = document.createElementNS("http://www.w3.org/2000/svg", e) : this.node = document.createElement(e), r.root.getEnv() === "development" && (this.node.dataset.uniqueId = this.uniqueId), t.ref)
550
- if (Ue(t.ref))
551
- this.ref = t.ref, this.ref(this.node);
552
- else
553
- throw new Error("Expected ref to be a function. Got: " + t.ref);
554
- this.props = {
555
- ...qe(["ref", "class", "className"], t),
556
- class: t.className ?? t.class
557
- }, this.children = n ? C(r, n) : [], this.elementContext = r;
558
- }
559
- get isMounted() {
560
- return this.node.parentNode != null;
561
- }
562
- mount(e, t) {
563
- if (e == null)
564
- throw new Error(`HTML element requires a parent element as the first argument to connect. Got: ${e}`);
565
- if (!this.isMounted) {
566
- for (const n of this.children)
567
- n.mount(this.node);
568
- this.applyProps(this.node, this.props), this.props.style && this.applyStyles(this.node, this.props.style, this.stopCallbacks), this.props.class && this.applyClasses(this.node, this.props.class, this.stopCallbacks);
569
- }
570
- e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null), setTimeout(() => {
571
- this.canClickAway = !0;
572
- }, 0);
573
- }
574
- unmount(e = !1) {
575
- var t;
576
- if (this.isMounted) {
577
- for (const n of this.children)
578
- n.unmount(!0);
579
- e || (t = this.node.parentNode) == null || t.removeChild(this.node), this.ref && this.ref(void 0), this.canClickAway = !1;
580
- for (const n of this.stopCallbacks)
581
- n();
582
- this.stopCallbacks = [];
583
- }
584
- }
585
- getUpdateKey(e, t) {
586
- return `${this.uniqueId}:${e}:${t}`;
587
- }
588
- _mutate(e, t) {
589
- this.isMounted ? this._batchWrite(e, t) : e();
590
- }
591
- attachProp(e, t, n) {
592
- p(e) ? this.stopCallbacks.push(
593
- e.watch((r) => {
594
- this._mutate(() => t(r), n);
595
- })
596
- ) : this._mutate(() => t(e), n);
597
- }
598
- applyProps(e, t) {
599
- for (const n in t) {
600
- const r = t[n];
601
- if (n === "attributes") {
602
- const i = r;
603
- for (const u in i)
604
- this.attachProp(
605
- i[u],
606
- (a) => {
607
- a == null ? e.removeAttribute(u) : e.setAttribute(u, String(a));
608
- },
609
- this.getUpdateKey("attr", u)
610
- );
611
- } else if (n === "eventListeners") {
612
- const i = r;
613
- for (const u in i) {
614
- const a = p(r) ? (c) => r.get()(c) : r;
615
- e.addEventListener(u, a), this.stopCallbacks.push(() => {
616
- e.removeEventListener(u, a);
617
- });
618
- }
619
- } else if (n === "onClickOutside" || n === "onclickoutside") {
620
- const i = (a) => {
621
- this.canClickAway && !e.contains(a.target) && (p(r) ? r.get()(a) : r(a));
622
- }, u = { capture: !0 };
623
- window.addEventListener("click", i, u), this.stopCallbacks.push(() => {
624
- window.removeEventListener("click", i, u);
625
- });
626
- } else if (Ge(n)) {
627
- const i = n.slice(2).toLowerCase(), u = p(r) ? (a) => r.get()(a) : r;
628
- e.addEventListener(i, u), this.stopCallbacks.push(() => {
629
- e.removeEventListener(i, u);
630
- });
631
- } else if (n.includes("-"))
632
- this.attachProp(
633
- r,
634
- (i) => {
635
- i == null ? e.removeAttribute(n) : e.setAttribute(n, String(i));
636
- },
637
- this.getUpdateKey("attr", n)
638
- );
639
- else if (!Be.includes(n))
640
- if (this.elementContext.isSVG)
641
- this.attachProp(
642
- r,
643
- (i) => {
644
- i != null ? e.setAttribute(n, String(t[n])) : e.removeAttribute(n);
645
- },
646
- this.getUpdateKey("attr", n)
647
- );
648
- else
649
- switch (n) {
650
- case "contentEditable":
651
- case "value":
652
- this.attachProp(
653
- r,
654
- (i) => {
655
- e[n] = String(i);
656
- },
657
- this.getUpdateKey("prop", n)
658
- );
659
- break;
660
- case "for":
661
- this.attachProp(
662
- r,
663
- (i) => {
664
- e.htmlFor = i;
665
- },
666
- this.getUpdateKey("prop", "htmlFor")
667
- );
668
- break;
669
- case "checked":
670
- this.attachProp(
671
- r,
672
- (i) => {
673
- e.checked = i, i ? e.setAttribute("checked", "") : e.removeAttribute("checked");
674
- },
675
- this.getUpdateKey("prop", "checked")
676
- );
677
- break;
678
- // Attribute-aliased props
679
- case "exportParts":
680
- case "part":
681
- case "translate":
682
- case "type":
683
- case "title": {
684
- const i = n.toLowerCase();
685
- this.attachProp(
686
- r,
687
- (u) => {
688
- u == null ? e.removeAttribute(i) : e.setAttribute(i, String(u));
689
- },
690
- this.getUpdateKey("attr", i)
691
- );
692
- break;
693
- }
694
- case "autocomplete":
695
- case "autocapitalize":
696
- this.attachProp(
697
- r,
698
- (i) => {
699
- typeof i == "string" ? e.autocomplete = i : i ? e.autocomplete = "on" : e.autocomplete = "off";
700
- },
701
- this.getUpdateKey("prop", n)
702
- );
703
- break;
704
- default: {
705
- this.attachProp(
706
- r,
707
- (i) => {
708
- e[n] = i;
709
- },
710
- this.getUpdateKey("prop", n)
711
- );
712
- break;
713
- }
714
- }
715
- }
716
- }
717
- applyStyles(e, t, n) {
718
- const r = [];
719
- if (p(t)) {
720
- let i;
721
- const u = t.watch((a) => {
722
- this._mutate(
723
- () => {
724
- T(i) && i(), e.style.cssText = "", i = this.applyStyles(e, a, n);
725
- },
726
- this.getUpdateKey("styles", "*")
727
- );
728
- });
729
- n.push(u), r.push(u);
730
- } else {
731
- const i = Ce(t);
732
- for (const u in i) {
733
- const { value: a, priority: c } = i[u];
734
- if (p(a)) {
735
- const l = a.watch((h) => {
736
- this._mutate(() => {
737
- h ? e.style.setProperty(u, String(h), c) : e.style.removeProperty(u);
738
- });
739
- });
740
- n.push(l), r.push(l);
741
- } else a != null && e.style.setProperty(u, String(a));
742
- }
743
- }
744
- return function() {
745
- for (const u of r)
746
- u(), n.splice(n.indexOf(u), 1);
747
- };
748
- }
749
- applyClasses(e, t, n) {
750
- const r = [];
751
- if (p(t)) {
752
- let i;
753
- const u = t.watch((a) => {
754
- this._mutate(
755
- () => {
756
- T(i) && i(), e.removeAttribute("class"), i = this.applyClasses(e, a, n);
757
- },
758
- this.getUpdateKey("attr", "class")
759
- );
760
- });
761
- n.push(u), r.push(u);
762
- } else {
763
- const i = ye(t);
764
- for (const u in i) {
765
- const a = i[u];
766
- if (p(a)) {
767
- const c = a.watch((l) => {
768
- this._mutate(() => {
769
- l ? e.classList.add(u) : e.classList.remove(u);
770
- });
771
- });
772
- n.push(c), r.push(c);
773
- } else a && e.classList.add(u);
774
- }
775
- }
776
- return function() {
777
- for (const u of r)
778
- u(), n.splice(n.indexOf(u), 1);
779
- };
780
- }
781
- }
782
- function ye(s) {
783
- let e = {};
784
- if (E(s)) {
785
- const t = s.split(" ");
786
- for (const n of t)
787
- e[n] = !0;
788
- } else fe(s) ? Object.assign(e, s) : Array.isArray(s) && Array.from(s).filter(Boolean).forEach((t) => {
789
- Object.assign(e, ye(t));
790
- });
791
- return delete e.undefined, e;
792
- }
793
- function Ce(s) {
794
- let e = {};
795
- if (E(s)) {
796
- const t = s.split(";").filter((n) => n.trim() !== "");
797
- for (const n of t) {
798
- const [r, i] = n.split(":"), u = {
799
- value: i
800
- };
801
- i.includes("!important") ? (u.priority = "important", u.value = i.replace("!important", "").trim()) : u.value = i.trim(), e[J(r.trim())] = u;
802
- }
803
- }
804
- if (fe(s))
805
- for (const t in s)
806
- t.startsWith("--") ? e[t] = { value: s[t] } : e[J(t)] = { value: s[t] };
807
- else Array.isArray(s) && Array.from(s).filter((t) => t != null).forEach((t) => {
808
- Object.assign(e, Ce(t));
809
- });
810
- return e;
811
- }
812
- function J(s) {
813
- return s.replace(/[A-Z]+(?![a-z])|[A-Z]/g, (e, t) => (t ? "-" : "") + e.toLowerCase());
814
- }
815
- const Be = ["ref", "children", "class", "style", "data"];
816
- var ne;
817
- ne = k;
818
- class Ke {
819
- constructor({ states: e, renderFn: t, elementContext: n }) {
820
- o(this, ne, !0);
821
- o(this, "node");
822
- o(this, "endNode");
823
- o(this, "children", []);
824
- o(this, "renderFn");
825
- o(this, "elementContext");
826
- o(this, "watcher", D());
827
- o(this, "sources");
828
- this.elementContext = n, this.renderFn = t, this.sources = e, this.node = document.createComment("Observer"), this.endNode = document.createComment("/Observer");
829
- }
830
- get isMounted() {
831
- return this.node.parentNode != null;
832
- }
833
- mount(e, t) {
834
- this.isMounted || (e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null), this.watcher.watch(this.sources, (...n) => {
835
- const r = this.renderFn(...n);
836
- if (!be(r))
837
- throw console.error(r, n), new TypeError(
838
- `Observer received invalid value to render. Got type: ${$(r)}, value: ${r}`
839
- );
840
- this.update(A(r) ? r : [r]);
841
- }));
842
- }
843
- unmount(e = !1) {
844
- var t;
845
- this.watcher.stopAll(), this.isMounted && (this.cleanup(e), (t = this.node.parentNode) == null || t.removeChild(this.node));
846
- }
847
- cleanup(e) {
848
- for (const t of this.children)
849
- t.unmount(e);
850
- this.children = [];
851
- }
852
- update(e) {
853
- var n, r;
854
- if (this.cleanup(!1), e == null || !this.isMounted)
855
- return;
856
- const t = e.map((i) => ve(i) ? i : N(i) ? M(C(this.elementContext, i)) : M(C(this.elementContext, O(i))));
857
- for (const i of t) {
858
- const u = ((n = this.children.at(-1)) == null ? void 0 : n.node) || this.node;
859
- i.mount(this.node.parentNode, u), this.children.push(i);
860
- }
861
- if (this.elementContext.root.getEnv() === "development") {
862
- const i = (r = this.children.at(-1)) == null ? void 0 : r.node;
863
- this.endNode.previousSibling !== i && this.node.parentNode.insertBefore(this.endNode, (i == null ? void 0 : i.nextSibling) ?? null);
864
- }
865
- }
866
- }
867
- var se;
868
- se = k;
869
- class _e {
870
- constructor(e) {
871
- o(this, se, !0);
872
- o(this, "node", document.createTextNode(""));
873
- o(this, "isMounted", !1);
874
- o(this, "source");
875
- o(this, "elements", []);
876
- o(this, "stopCallback");
877
- this.source = e;
878
- }
879
- mount(e, t) {
880
- this.isMounted || (this.isMounted = !0, e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null), p(this.source) ? this.stopCallback = this.source.watch((n) => {
881
- this.update(n);
882
- }) : this.update(this.elements));
883
- }
884
- unmount(e = !1) {
885
- this.stopCallback && (this.stopCallback(), this.stopCallback = void 0), this.isMounted && (this.cleanup(e), this.isMounted = !1);
886
- }
887
- cleanup(e) {
888
- for (const t of this.elements)
889
- t.unmount(e);
890
- this.elements = [];
891
- }
892
- update(e) {
893
- this.cleanup(!1);
894
- for (let t = 0; t < e.length; t++) {
895
- const n = e[t], r = t > 0 ? this.elements[t - 1] : void 0;
896
- n.mount(this.node.parentElement, r == null ? void 0 : r.node), this.elements.push(n);
897
- }
898
- }
899
- }
900
- var re;
901
- re = k;
902
- class He {
903
- constructor(e) {
904
- o(this, re, !0);
905
- o(this, "config");
906
- o(this, "element");
907
- this.config = e;
908
- }
909
- get isMounted() {
910
- return this.element ? this.element.isMounted : !1;
911
- }
912
- mount(e, t) {
913
- const { content: n, parent: r } = this.config;
914
- ve(n) ? this.element = n : N(n) ? this.element = M(C(this.config.elementContext, n)) : this.element = M(C(this.config.elementContext, O(n))), this.element.mount(r);
915
- }
916
- unmount(e = !1) {
917
- var t;
918
- (t = this.element) != null && t.isMounted && this.element.unmount(e);
919
- }
920
- }
921
- class Ye {
922
- constructor(e) {
923
- o(this, "__view");
924
- this.__view = e;
925
- const t = Object.getOwnPropertyDescriptors(this.__view._logger);
926
- for (const n in t)
927
- n !== "getName" && Object.defineProperty(this, n, t[n]);
928
- }
929
- get uid() {
930
- return this.__view.uniqueId;
931
- }
932
- setName(e) {
933
- return this.__view._logger.setName(e), this;
934
- }
935
- set(e, t) {
936
- return this.__view._elementContext.data[e] = t, t;
937
- }
938
- get(e) {
939
- let t = this.__view._elementContext;
940
- for (; ; ) {
941
- if (e in t.data)
942
- return t.data[e];
943
- if (t.parent)
944
- t = t.parent;
945
- else
946
- break;
947
- }
948
- return null;
949
- }
950
- getAll() {
951
- const e = [];
952
- let t = this.__view._elementContext;
953
- for (; e.push(t.data), t.parent; )
954
- t = t.parent;
955
- const n = {};
956
- for (const r of e.reverse())
957
- Object.assign(n, r);
958
- return n;
959
- }
960
- beforeMount(e) {
961
- this.__view._beforeMountCallbacks.push(e);
962
- }
963
- onMount(e) {
964
- this.__view._onMountCallbacks.push(e);
965
- }
966
- beforeUnmount(e) {
967
- this.__view._beforeUnmountCallbacks.push(e);
968
- }
969
- onUnmount(e) {
970
- this.__view._onUnmountCallbacks.push(e);
971
- }
972
- watch(e, t) {
973
- const n = this.__view;
974
- if (n.isMounted)
975
- return n._watcher.watch(e, t);
976
- {
977
- let r, i = !1;
978
- return n._onMountCallbacks.push(() => {
979
- i || (r = n._watcher.watch(e, t));
980
- }), () => {
981
- r != null && (i = !0, r());
982
- };
983
- }
984
- }
985
- outlet() {
986
- return y("$outlet", { $children: this.__view._$children });
987
- }
988
- }
989
- var ie;
990
- ie = k;
991
- const G = class G {
992
- constructor(e, t, n, r = []) {
993
- o(this, ie, !0);
994
- o(this, "uniqueId", de());
995
- o(this, "_elementContext");
996
- o(this, "_logger");
997
- o(this, "_view");
998
- o(this, "_props");
999
- o(this, "_element");
1000
- o(this, "_childMarkup");
1001
- o(this, "_$children");
1002
- o(this, "_setChildren");
1003
- o(this, "_watcher", D());
1004
- o(this, "_beforeMountCallbacks", []);
1005
- o(this, "_onMountCallbacks", []);
1006
- o(this, "_beforeUnmountCallbacks", []);
1007
- o(this, "_onUnmountCallbacks", []);
1008
- o(this, "isMounted", !1);
1009
- this._elementContext = { ...e, data: {}, parent: e }, this._logger = e.root.createLogger(t.name, { uid: this.uniqueId }), this._view = t, this._props = n, this._childMarkup = r, [this._$children, this._setChildren] = L([]);
1010
- }
1011
- /*===============================*\
1012
- || "Public" API ||
1013
- \*===============================*/
1014
- get node() {
1015
- var e;
1016
- return (e = this._element) == null ? void 0 : e.node;
1017
- }
1018
- mount(e, t) {
1019
- const n = this.isMounted;
1020
- if (!n)
1021
- for (this.initialize(); this._beforeMountCallbacks.length > 0; )
1022
- this._beforeMountCallbacks.shift()();
1023
- this._element && this._element.mount(e, t), n || (this.isMounted = !0, requestAnimationFrame(() => {
1024
- for (; this._onMountCallbacks.length > 0; )
1025
- this._onMountCallbacks.shift()();
1026
- }));
1027
- }
1028
- unmount(e = !1) {
1029
- for (; this._beforeUnmountCallbacks.length > 0; )
1030
- this._beforeUnmountCallbacks.shift()();
1031
- for (this._element && this._element.unmount(e), this.isMounted = !1; this._onUnmountCallbacks.length > 0; )
1032
- this._onUnmountCallbacks.shift()();
1033
- this._watcher.stopAll();
1034
- }
1035
- setChildView(e) {
1036
- this._childMarkup = [];
1037
- const t = new G(this._elementContext, e, {});
1038
- return this._setChildren([t]), t;
1039
- }
1040
- /*===============================*\
1041
- || Internal ||
1042
- \*===============================*/
1043
- initialize() {
1044
- const e = new Ye(this);
1045
- let t;
1046
- try {
1047
- this._childMarkup.length && this._setChildren(C(this._elementContext, this._childMarkup)), t = this._view(this._props, e);
1048
- } catch (n) {
1049
- throw n instanceof Error && this._logger.crash(n), n;
1050
- }
1051
- if (t !== null) if (t instanceof Node)
1052
- this._element = M(C(this._elementContext, y("$node", { value: t })));
1053
- else if (N(t) || le(N, t))
1054
- this._element = M(C(this._elementContext, t));
1055
- else if (p(t))
1056
- this._element = M(
1057
- C(this._elementContext, y("$observer", { states: [t], renderFn: (n) => n }))
1058
- );
1059
- else {
1060
- const n = new TypeError(
1061
- `Expected '${this._view.name}' function to return a DOM node, Markup element, Readable or null. Got: ${$(t)}`
1062
- );
1063
- this._logger.crash(n);
1064
- }
1065
- }
1066
- };
1067
- let q = G;
1068
- var oe;
1069
- oe = k;
1070
- class Ze {
1071
- constructor({ elementContext: e, $items: t, renderFn: n, keyFn: r }) {
1072
- o(this, oe, !0);
1073
- o(this, "node");
1074
- o(this, "endNode");
1075
- o(this, "$items");
1076
- o(this, "stopCallback");
1077
- o(this, "connectedItems", []);
1078
- o(this, "elementContext");
1079
- o(this, "renderFn");
1080
- o(this, "keyFn");
1081
- this.elementContext = e, this.$items = t, this.renderFn = n, this.keyFn = r, this.elementContext.root.getEnv() === "development" ? (this.node = document.createComment("Repeat"), this.endNode = document.createComment("/Repeat")) : (this.node = document.createTextNode(""), this.endNode = document.createTextNode(""));
1082
- }
1083
- get isMounted() {
1084
- return this.node.parentNode != null;
1085
- }
1086
- mount(e, t) {
1087
- this.isMounted || (e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null), this.stopCallback = this.$items.watch((n) => {
1088
- this._update(Array.from(n));
1089
- }));
1090
- }
1091
- unmount(e = !1) {
1092
- var t, n;
1093
- this.stopCallback && (this.stopCallback(), this.stopCallback = void 0), !e && this.isMounted && ((t = this.node.parentNode) == null || t.removeChild(this.node), (n = this.endNode.parentNode) == null || n.removeChild(this.endNode)), this._cleanup(e);
1094
- }
1095
- _cleanup(e) {
1096
- for (const t of this.connectedItems)
1097
- t.element.unmount(e);
1098
- this.connectedItems = [];
1099
- }
1100
- _update(e) {
1101
- var i, u, a;
1102
- if (e.length === 0 || !this.isMounted)
1103
- return this._cleanup(!1);
1104
- const t = [];
1105
- let n = 0;
1106
- for (const c of e)
1107
- t.push({
1108
- key: this.keyFn(c, n),
1109
- value: c,
1110
- index: n++
1111
- });
1112
- const r = [];
1113
- for (const c of this.connectedItems)
1114
- t.find((h) => h.key === c.key) || c.element.unmount(!1);
1115
- for (const c of t) {
1116
- const l = this.connectedItems.find((h) => h.key === c.key);
1117
- if (l)
1118
- l.setValue(c.value), l.setIndex(c.index), r[c.index] = l;
1119
- else {
1120
- const [h, f] = L(c.value), [d, m] = L(c.index);
1121
- r[c.index] = {
1122
- key: c.key,
1123
- $value: h,
1124
- setValue: f,
1125
- $index: d,
1126
- setIndex: m,
1127
- element: new q(this.elementContext, Xe, {
1128
- $value: h,
1129
- $index: d,
1130
- renderFn: this.renderFn
1131
- })
1132
- };
1133
- }
1134
- }
1135
- for (let c = 0; c < r.length; c++) {
1136
- const l = r[c], h = ((i = r[c - 1]) == null ? void 0 : i.element.node) ?? this.node;
1137
- l.element.mount(this.node.parentNode, h);
1138
- }
1139
- if (this.connectedItems = r, this.elementContext.root.getEnv() === "development") {
1140
- this.node.textContent = `Repeat (${r.length} item${r.length === 1 ? "" : "s"})`;
1141
- const c = ((u = r.at(-1)) == null ? void 0 : u.element.node) ?? this.node;
1142
- (a = this.node.parentNode) == null || a.insertBefore(this.endNode, c.nextSibling);
1143
- }
1144
- }
1145
- }
1146
- function Xe({ $value: s, $index: e, renderFn: t }, n) {
1147
- return t(s, e, n);
1148
- }
1149
- var ue;
1150
- ue = k;
1151
- class Je {
1152
- constructor({ value: e }) {
1153
- o(this, ue, !0);
1154
- o(this, "node", document.createTextNode(""));
1155
- o(this, "value", "");
1156
- o(this, "stopCallback");
1157
- this.value = e;
1158
- }
1159
- get isMounted() {
1160
- return this.node.parentNode != null;
1161
- }
1162
- async mount(e, t = null) {
1163
- this.isMounted || (p(this.value) ? this.stopCallback = this.value.watch((n) => {
1164
- this.update(n);
1165
- }) : this.update(this.value)), e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null);
1166
- }
1167
- async unmount(e = !1) {
1168
- this.isMounted && (this.stopCallback && (this.stopCallback(), this.stopCallback = void 0), e || this.node.parentNode.removeChild(this.node));
1169
- }
1170
- update(e) {
1171
- e != null ? this.node.textContent = e.toString() : this.node.textContent = "";
1172
- }
1173
- }
1174
- function N(s) {
1175
- return (s == null ? void 0 : s[we]) === !0;
1176
- }
1177
- function ve(s) {
1178
- return (s == null ? void 0 : s[k]) === !0;
1179
- }
1180
- function O(s) {
1181
- return A(s) || (s = [s]), s.flat(1 / 0).filter((e) => e != null && e !== !1).map((e) => {
1182
- if (e instanceof Node)
1183
- return y("$node", { value: e });
1184
- if (e instanceof ke)
1185
- return y("$node", { value: e.node });
1186
- if (N(e))
1187
- return e;
1188
- if (E(e) || he(e))
1189
- return y("$text", { value: e });
1190
- if (p(e))
1191
- return y("$observer", {
1192
- states: [e],
1193
- renderFn: (t) => t
1194
- });
1195
- throw console.error(e), new TypeError(`Unexpected child type. Got: ${e}`);
1196
- });
1197
- }
1198
- function y(s, e, ...t) {
1199
- return {
1200
- [we]: !0,
1201
- type: s,
1202
- props: e,
1203
- children: O(t)
1204
- };
1205
- }
1206
- const ct = Re.bind(y);
1207
- function at(s, e, t) {
1208
- const n = U(s);
1209
- return y("$cond", {
1210
- $predicate: n,
1211
- thenContent: e,
1212
- elseContent: t
1213
- });
1214
- }
1215
- function lt(s, e, t) {
1216
- const n = U(s);
1217
- return y("$repeat", { $items: n, keyFn: e, renderFn: t });
1218
- }
1219
- function ht(s, e) {
1220
- return y("$portal", { parent: s, content: e });
1221
- }
1222
- var ce;
1223
- ce = k;
1224
- class ke {
1225
- constructor(e) {
1226
- o(this, ce, !0);
1227
- o(this, "node");
1228
- this.node = e;
1229
- }
1230
- get isMounted() {
1231
- return this.node.parentNode != null;
1232
- }
1233
- async mount(e, t) {
1234
- e.insertBefore(this.node, (t == null ? void 0 : t.nextSibling) ?? null);
1235
- }
1236
- async unmount() {
1237
- this.node.parentNode && this.node.parentNode.removeChild(this.node);
1238
- }
1239
- }
1240
- function C(s, e) {
1241
- return (A(e) ? e : [e]).map((n) => {
1242
- if (T(n.type))
1243
- return new q(s, n.type, n.props, n.children);
1244
- if (E(n.type))
1245
- switch (n.type) {
1246
- case "$node": {
1247
- const r = n.props;
1248
- return new ke(r.value);
1249
- }
1250
- case "$text": {
1251
- const r = n.props;
1252
- return new Je({
1253
- value: r.value
1254
- });
1255
- }
1256
- case "$cond": {
1257
- const r = n.props;
1258
- return new De({
1259
- $predicate: r.$predicate,
1260
- thenContent: r.thenContent,
1261
- elseContent: r.elseContent,
1262
- elementContext: s
1263
- });
1264
- }
1265
- case "$repeat": {
1266
- const r = n.props;
1267
- return new Ze({
1268
- $items: r.$items,
1269
- keyFn: r.keyFn,
1270
- renderFn: r.renderFn,
1271
- elementContext: s
1272
- });
1273
- }
1274
- case "$observer": {
1275
- const r = n.props;
1276
- return new Ke({
1277
- states: r.states,
1278
- renderFn: r.renderFn,
1279
- elementContext: s
1280
- });
1281
- }
1282
- case "$outlet": {
1283
- const r = n.props;
1284
- return new _e(r.$children);
1285
- }
1286
- case "$portal": {
1287
- const r = n.props;
1288
- return new He({
1289
- content: r.content,
1290
- parent: r.parent,
1291
- elementContext: s
1292
- });
1293
- }
1294
- default:
1295
- if (n.type.startsWith("$"))
1296
- throw new Error(`Unknown markup type: ${n.type}`);
1297
- return new ze({
1298
- tag: n.type,
1299
- props: n.props ?? {},
1300
- children: n.children,
1301
- elementContext: s
1302
- });
1303
- }
1304
- else
1305
- throw new TypeError(`Expected a string or view function. Got: ${n.type}`);
1306
- });
1307
- }
1308
- function M(s) {
1309
- return s.length === 1 ? s[0] : new _e(s);
1310
- }
1311
- function be(s) {
1312
- return s == null || s === !1 || E(s) || he(s) || N(s) || p(s) || le(be, s);
1313
- }
1314
- function ft(s, e) {
1315
- return e.outlet();
1316
- }
1317
- export {
1318
- pe as A,
1319
- ht as B,
1320
- lt as C,
1321
- ft as P,
1322
- q as V,
1323
- L as a,
1324
- E as b,
1325
- at as c,
1326
- Le as d,
1327
- it as e,
1328
- T as f,
1329
- nt as g,
1330
- ct as h,
1331
- fe as i,
1332
- tt as j,
1333
- et as k,
1334
- D as l,
1335
- ot as m,
1336
- U as n,
1337
- Fe as o,
1338
- p,
1339
- ut as q,
1340
- Ue as r,
1341
- rt as s,
1342
- $ as t,
1343
- st as u,
1344
- y as v,
1345
- Pe as w,
1346
- We as x,
1347
- M as y,
1348
- C as z
1349
- };
1350
- //# sourceMappingURL=passthrough-D_L3EUe_.js.map