@record-evolution/widget-image 1.1.17 → 1.1.19
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.
- package/dist/widget-image.js +143 -158
- package/dist/widget-image.js.map +1 -1
- package/package.json +4 -3
- package/src/definition-schema.d.ts +4 -4
- package/src/definition-schema.json +4 -4
- package/src/widget-image.ts +9 -26
- package/thumbnail.webp +0 -0
package/dist/widget-image.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const
|
|
1
|
+
const D = globalThis, F = D.ShadowRoot && (D.ShadyCSS === void 0 || D.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, G = /* @__PURE__ */ Symbol(), Y = /* @__PURE__ */ new WeakMap();
|
|
2
2
|
let pt = class {
|
|
3
3
|
constructor(t, e, s) {
|
|
4
4
|
if (this._$cssResult$ = !0, s !== G) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
|
|
@@ -27,7 +27,7 @@ const mt = (r) => new pt(typeof r == "string" ? r : r + "", void 0, G), gt = (r,
|
|
|
27
27
|
}, _t = (r, t) => {
|
|
28
28
|
if (F) r.adoptedStyleSheets = t.map(((e) => e instanceof CSSStyleSheet ? e : e.styleSheet));
|
|
29
29
|
else for (const e of t) {
|
|
30
|
-
const s = document.createElement("style"), i =
|
|
30
|
+
const s = document.createElement("style"), i = D.litNonce;
|
|
31
31
|
i !== void 0 && s.setAttribute("nonce", i), s.textContent = e.cssText, r.appendChild(s);
|
|
32
32
|
}
|
|
33
33
|
}, tt = F ? (r) => r : (r) => r instanceof CSSStyleSheet ? ((t) => {
|
|
@@ -35,7 +35,7 @@ const mt = (r) => new pt(typeof r == "string" ? r : r + "", void 0, G), gt = (r,
|
|
|
35
35
|
for (const s of t.cssRules) e += s.cssText;
|
|
36
36
|
return mt(e);
|
|
37
37
|
})(r) : r;
|
|
38
|
-
const { is: yt, defineProperty: At, getOwnPropertyDescriptor: vt, getOwnPropertyNames: bt, getOwnPropertySymbols: wt, getPrototypeOf: xt } = Object,
|
|
38
|
+
const { is: yt, defineProperty: At, getOwnPropertyDescriptor: vt, getOwnPropertyNames: bt, getOwnPropertySymbols: wt, getPrototypeOf: xt } = Object, I = globalThis, et = I.trustedTypes, St = et ? et.emptyScript : "", Et = I.reactiveElementPolyfillSupport, O = (r, t) => r, z = { toAttribute(r, t) {
|
|
39
39
|
switch (t) {
|
|
40
40
|
case Boolean:
|
|
41
41
|
r = r ? St : null;
|
|
@@ -63,8 +63,8 @@ const { is: yt, defineProperty: At, getOwnPropertyDescriptor: vt, getOwnProperty
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
return e;
|
|
66
|
-
} }, Z = (r, t) => !yt(r, t), it = { attribute: !0, type: String, converter:
|
|
67
|
-
Symbol.metadata ??= /* @__PURE__ */ Symbol("metadata"),
|
|
66
|
+
} }, Z = (r, t) => !yt(r, t), it = { attribute: !0, type: String, converter: z, reflect: !1, useDefault: !1, hasChanged: Z };
|
|
67
|
+
Symbol.metadata ??= /* @__PURE__ */ Symbol("metadata"), I.litPropertyMetadata ??= /* @__PURE__ */ new WeakMap();
|
|
68
68
|
let S = class extends HTMLElement {
|
|
69
69
|
static addInitializer(t) {
|
|
70
70
|
this._$Ei(), (this.l ??= []).push(t);
|
|
@@ -85,21 +85,21 @@ let S = class extends HTMLElement {
|
|
|
85
85
|
this[e] = o;
|
|
86
86
|
} };
|
|
87
87
|
return { get: i, set(o) {
|
|
88
|
-
const
|
|
89
|
-
n?.call(this, o), this.requestUpdate(t,
|
|
88
|
+
const h = i?.call(this);
|
|
89
|
+
n?.call(this, o), this.requestUpdate(t, h, s);
|
|
90
90
|
}, configurable: !0, enumerable: !0 };
|
|
91
91
|
}
|
|
92
92
|
static getPropertyOptions(t) {
|
|
93
93
|
return this.elementProperties.get(t) ?? it;
|
|
94
94
|
}
|
|
95
95
|
static _$Ei() {
|
|
96
|
-
if (this.hasOwnProperty(
|
|
96
|
+
if (this.hasOwnProperty(O("elementProperties"))) return;
|
|
97
97
|
const t = xt(this);
|
|
98
98
|
t.finalize(), t.l !== void 0 && (this.l = [...t.l]), this.elementProperties = new Map(t.elementProperties);
|
|
99
99
|
}
|
|
100
100
|
static finalize() {
|
|
101
|
-
if (this.hasOwnProperty(
|
|
102
|
-
if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(
|
|
101
|
+
if (this.hasOwnProperty(O("finalized"))) return;
|
|
102
|
+
if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(O("properties"))) {
|
|
103
103
|
const e = this.properties, s = [...bt(e), ...wt(e)];
|
|
104
104
|
for (const i of s) this.createProperty(i, e[i]);
|
|
105
105
|
}
|
|
@@ -162,14 +162,14 @@ let S = class extends HTMLElement {
|
|
|
162
162
|
_$ET(t, e) {
|
|
163
163
|
const s = this.constructor.elementProperties.get(t), i = this.constructor._$Eu(t, s);
|
|
164
164
|
if (i !== void 0 && s.reflect === !0) {
|
|
165
|
-
const n = (s.converter?.toAttribute !== void 0 ? s.converter :
|
|
165
|
+
const n = (s.converter?.toAttribute !== void 0 ? s.converter : z).toAttribute(e, s.type);
|
|
166
166
|
this._$Em = t, n == null ? this.removeAttribute(i) : this.setAttribute(i, n), this._$Em = null;
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
169
|
_$AK(t, e) {
|
|
170
170
|
const s = this.constructor, i = s._$Eh.get(t);
|
|
171
171
|
if (i !== void 0 && this._$Em !== i) {
|
|
172
|
-
const n = s.getPropertyOptions(i), o = typeof n.converter == "function" ? { fromAttribute: n.converter } : n.converter?.fromAttribute !== void 0 ? n.converter :
|
|
172
|
+
const n = s.getPropertyOptions(i), o = typeof n.converter == "function" ? { fromAttribute: n.converter } : n.converter?.fromAttribute !== void 0 ? n.converter : z;
|
|
173
173
|
this._$Em = i, this[i] = o.fromAttribute(e, n.type) ?? this._$Ej?.get(i) ?? null, this._$Em = null;
|
|
174
174
|
}
|
|
175
175
|
}
|
|
@@ -206,8 +206,8 @@ let S = class extends HTMLElement {
|
|
|
206
206
|
}
|
|
207
207
|
const s = this.constructor.elementProperties;
|
|
208
208
|
if (s.size > 0) for (const [i, n] of s) {
|
|
209
|
-
const { wrapped: o } = n,
|
|
210
|
-
o !== !0 || this._$AL.has(i) ||
|
|
209
|
+
const { wrapped: o } = n, h = this[i];
|
|
210
|
+
o !== !0 || this._$AL.has(i) || h === void 0 || this.C(i, void 0, n, h);
|
|
211
211
|
}
|
|
212
212
|
}
|
|
213
213
|
let t = !1;
|
|
@@ -244,10 +244,10 @@ let S = class extends HTMLElement {
|
|
|
244
244
|
firstUpdated(t) {
|
|
245
245
|
}
|
|
246
246
|
};
|
|
247
|
-
S.elementStyles = [], S.shadowRootOptions = { mode: "open" }, S[
|
|
248
|
-
const J = globalThis,
|
|
247
|
+
S.elementStyles = [], S.shadowRootOptions = { mode: "open" }, S[O("elementProperties")] = /* @__PURE__ */ new Map(), S[O("finalized")] = /* @__PURE__ */ new Map(), Et?.({ ReactiveElement: S }), (I.reactiveElementVersions ??= []).push("2.1.0");
|
|
248
|
+
const J = globalThis, j = J.trustedTypes, st = j ? j.createPolicy("lit-html", { createHTML: (r) => r }) : void 0, dt = "$lit$", y = `lit$${Math.random().toFixed(9).slice(2)}$`, ut = "?" + y, Ct = `<${ut}>`, w = document, M = () => w.createComment(""), N = (r) => r === null || typeof r != "object" && typeof r != "function", K = Array.isArray, Pt = (r) => K(r) || typeof r?.[Symbol.iterator] == "function", q = `[
|
|
249
249
|
\f\r]`, P = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, rt = /-->/g, nt = />/g, A = RegExp(`>|${q}(?:([^\\s"'>=/]+)(${q}*=${q}*(?:[^
|
|
250
|
-
\f\r"'\`<>=]|("|')|))|$)`, "g"), ot = /'/g,
|
|
250
|
+
\f\r"'\`<>=]|("|')|))|$)`, "g"), ot = /'/g, at = /"/g, $t = /^(?:script|style|textarea|title)$/i, Ut = (r) => (t, ...e) => ({ _$litType$: r, strings: t, values: e }), R = Ut(1), x = /* @__PURE__ */ Symbol.for("lit-noChange"), f = /* @__PURE__ */ Symbol.for("lit-nothing"), ht = /* @__PURE__ */ new WeakMap(), b = w.createTreeWalker(w, 129);
|
|
251
251
|
function ft(r, t) {
|
|
252
252
|
if (!K(r) || !r.hasOwnProperty("raw")) throw Error("invalid template strings array");
|
|
253
253
|
return st !== void 0 ? st.createHTML(t) : t;
|
|
@@ -255,43 +255,43 @@ function ft(r, t) {
|
|
|
255
255
|
const Ot = (r, t) => {
|
|
256
256
|
const e = r.length - 1, s = [];
|
|
257
257
|
let i, n = t === 2 ? "<svg>" : t === 3 ? "<math>" : "", o = P;
|
|
258
|
-
for (let
|
|
259
|
-
const
|
|
258
|
+
for (let h = 0; h < e; h++) {
|
|
259
|
+
const a = r[h];
|
|
260
260
|
let c, u, l = -1, d = 0;
|
|
261
|
-
for (; d <
|
|
262
|
-
const p = o === A && r[
|
|
263
|
-
n += o === P ?
|
|
261
|
+
for (; d < a.length && (o.lastIndex = d, u = o.exec(a), u !== null); ) d = o.lastIndex, o === P ? u[1] === "!--" ? o = rt : u[1] !== void 0 ? o = nt : u[2] !== void 0 ? ($t.test(u[2]) && (i = RegExp("</" + u[2], "g")), o = A) : u[3] !== void 0 && (o = A) : o === A ? u[0] === ">" ? (o = i ?? P, l = -1) : u[1] === void 0 ? l = -2 : (l = o.lastIndex - u[2].length, c = u[1], o = u[3] === void 0 ? A : u[3] === '"' ? at : ot) : o === at || o === ot ? o = A : o === rt || o === nt ? o = P : (o = A, i = void 0);
|
|
262
|
+
const p = o === A && r[h + 1].startsWith("/>") ? " " : "";
|
|
263
|
+
n += o === P ? a + Ct : l >= 0 ? (s.push(c), a.slice(0, l) + dt + a.slice(l) + y + p) : a + y + (l === -2 ? h : p);
|
|
264
264
|
}
|
|
265
265
|
return [ft(r, n + (r[e] || "<?>") + (t === 2 ? "</svg>" : t === 3 ? "</math>" : "")), s];
|
|
266
266
|
};
|
|
267
|
-
class
|
|
267
|
+
class T {
|
|
268
268
|
constructor({ strings: t, _$litType$: e }, s) {
|
|
269
269
|
let i;
|
|
270
270
|
this.parts = [];
|
|
271
271
|
let n = 0, o = 0;
|
|
272
|
-
const
|
|
273
|
-
if (this.el =
|
|
272
|
+
const h = t.length - 1, a = this.parts, [c, u] = Ot(t, e);
|
|
273
|
+
if (this.el = T.createElement(c, s), b.currentNode = this.el.content, e === 2 || e === 3) {
|
|
274
274
|
const l = this.el.content.firstChild;
|
|
275
275
|
l.replaceWith(...l.childNodes);
|
|
276
276
|
}
|
|
277
|
-
for (; (i = b.nextNode()) !== null &&
|
|
277
|
+
for (; (i = b.nextNode()) !== null && a.length < h; ) {
|
|
278
278
|
if (i.nodeType === 1) {
|
|
279
279
|
if (i.hasAttributes()) for (const l of i.getAttributeNames()) if (l.endsWith(dt)) {
|
|
280
|
-
const d = u[o++], p = i.getAttribute(l).split(y),
|
|
281
|
-
|
|
282
|
-
} else l.startsWith(y) && (
|
|
280
|
+
const d = u[o++], p = i.getAttribute(l).split(y), $ = /([.?@])?(.*)/.exec(d);
|
|
281
|
+
a.push({ type: 1, index: n, name: $[2], strings: p, ctor: $[1] === "." ? Mt : $[1] === "?" ? Nt : $[1] === "@" ? Tt : k }), i.removeAttribute(l);
|
|
282
|
+
} else l.startsWith(y) && (a.push({ type: 6, index: n }), i.removeAttribute(l));
|
|
283
283
|
if ($t.test(i.tagName)) {
|
|
284
284
|
const l = i.textContent.split(y), d = l.length - 1;
|
|
285
285
|
if (d > 0) {
|
|
286
|
-
i.textContent =
|
|
287
|
-
for (let p = 0; p < d; p++) i.append(l[p], M()), b.nextNode(),
|
|
286
|
+
i.textContent = j ? j.emptyScript : "";
|
|
287
|
+
for (let p = 0; p < d; p++) i.append(l[p], M()), b.nextNode(), a.push({ type: 2, index: ++n });
|
|
288
288
|
i.append(l[d], M());
|
|
289
289
|
}
|
|
290
290
|
}
|
|
291
|
-
} else if (i.nodeType === 8) if (i.data === ut)
|
|
291
|
+
} else if (i.nodeType === 8) if (i.data === ut) a.push({ type: 2, index: n });
|
|
292
292
|
else {
|
|
293
293
|
let l = -1;
|
|
294
|
-
for (; (l = i.data.indexOf(y, l + 1)) !== -1; )
|
|
294
|
+
for (; (l = i.data.indexOf(y, l + 1)) !== -1; ) a.push({ type: 7, index: n }), l += y.length - 1;
|
|
295
295
|
}
|
|
296
296
|
n++;
|
|
297
297
|
}
|
|
@@ -307,7 +307,7 @@ function E(r, t, e = r, s) {
|
|
|
307
307
|
const n = N(t) ? void 0 : t._$litDirective$;
|
|
308
308
|
return i?.constructor !== n && (i?._$AO?.(!1), n === void 0 ? i = void 0 : (i = new n(r), i._$AT(r, e, s)), s !== void 0 ? (e._$Co ??= [])[s] = i : e._$Cl = i), i !== void 0 && (t = E(r, i._$AS(r, t.values), i, s)), t;
|
|
309
309
|
}
|
|
310
|
-
let
|
|
310
|
+
let Ht = class {
|
|
311
311
|
constructor(t, e) {
|
|
312
312
|
this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = e;
|
|
313
313
|
}
|
|
@@ -320,13 +320,13 @@ let Tt = class {
|
|
|
320
320
|
u(t) {
|
|
321
321
|
const { el: { content: e }, parts: s } = this._$AD, i = (t?.creationScope ?? w).importNode(e, !0);
|
|
322
322
|
b.currentNode = i;
|
|
323
|
-
let n = b.nextNode(), o = 0,
|
|
324
|
-
for (;
|
|
325
|
-
if (o ===
|
|
323
|
+
let n = b.nextNode(), o = 0, h = 0, a = s[0];
|
|
324
|
+
for (; a !== void 0; ) {
|
|
325
|
+
if (o === a.index) {
|
|
326
326
|
let c;
|
|
327
|
-
|
|
327
|
+
a.type === 2 ? c = new C(n, n.nextSibling, this, t) : a.type === 1 ? c = new a.ctor(n, a.name, a.strings, this, t) : a.type === 6 && (c = new Rt(n, this, t)), this._$AV.push(c), a = s[++h];
|
|
328
328
|
}
|
|
329
|
-
o !==
|
|
329
|
+
o !== a?.index && (n = b.nextNode(), o++);
|
|
330
330
|
}
|
|
331
331
|
return b.currentNode = w, i;
|
|
332
332
|
}
|
|
@@ -340,7 +340,7 @@ class C {
|
|
|
340
340
|
return this._$AM?._$AU ?? this._$Cv;
|
|
341
341
|
}
|
|
342
342
|
constructor(t, e, s, i) {
|
|
343
|
-
this.type = 2, this._$AH =
|
|
343
|
+
this.type = 2, this._$AH = f, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = s, this.options = i, this._$Cv = i?.isConnected ?? !0;
|
|
344
344
|
}
|
|
345
345
|
get parentNode() {
|
|
346
346
|
let t = this._$AA.parentNode;
|
|
@@ -354,7 +354,7 @@ class C {
|
|
|
354
354
|
return this._$AB;
|
|
355
355
|
}
|
|
356
356
|
_$AI(t, e = this) {
|
|
357
|
-
t = E(this, t, e), N(t) ? t ===
|
|
357
|
+
t = E(this, t, e), N(t) ? t === f || t == null || t === "" ? (this._$AH !== f && this._$AR(), this._$AH = f) : t !== this._$AH && t !== x && this._(t) : t._$litType$ !== void 0 ? this.$(t) : t.nodeType !== void 0 ? this.T(t) : Pt(t) ? this.k(t) : this._(t);
|
|
358
358
|
}
|
|
359
359
|
O(t) {
|
|
360
360
|
return this._$AA.parentNode.insertBefore(t, this._$AB);
|
|
@@ -363,19 +363,19 @@ class C {
|
|
|
363
363
|
this._$AH !== t && (this._$AR(), this._$AH = this.O(t));
|
|
364
364
|
}
|
|
365
365
|
_(t) {
|
|
366
|
-
this._$AH !==
|
|
366
|
+
this._$AH !== f && N(this._$AH) ? this._$AA.nextSibling.data = t : this.T(w.createTextNode(t)), this._$AH = t;
|
|
367
367
|
}
|
|
368
368
|
$(t) {
|
|
369
|
-
const { values: e, _$litType$: s } = t, i = typeof s == "number" ? this._$AC(t) : (s.el === void 0 && (s.el =
|
|
369
|
+
const { values: e, _$litType$: s } = t, i = typeof s == "number" ? this._$AC(t) : (s.el === void 0 && (s.el = T.createElement(ft(s.h, s.h[0]), this.options)), s);
|
|
370
370
|
if (this._$AH?._$AD === i) this._$AH.p(e);
|
|
371
371
|
else {
|
|
372
|
-
const n = new
|
|
372
|
+
const n = new Ht(i, this), o = n.u(this.options);
|
|
373
373
|
n.p(e), this.T(o), this._$AH = n;
|
|
374
374
|
}
|
|
375
375
|
}
|
|
376
376
|
_$AC(t) {
|
|
377
|
-
let e =
|
|
378
|
-
return e === void 0 &&
|
|
377
|
+
let e = ht.get(t.strings);
|
|
378
|
+
return e === void 0 && ht.set(t.strings, e = new T(t)), e;
|
|
379
379
|
}
|
|
380
380
|
k(t) {
|
|
381
381
|
K(this._$AH) || (this._$AH = [], this._$AR());
|
|
@@ -394,7 +394,7 @@ class C {
|
|
|
394
394
|
this._$AM === void 0 && (this._$Cv = t, this._$AP?.(t));
|
|
395
395
|
}
|
|
396
396
|
}
|
|
397
|
-
class
|
|
397
|
+
class k {
|
|
398
398
|
get tagName() {
|
|
399
399
|
return this.element.tagName;
|
|
400
400
|
}
|
|
@@ -402,53 +402,53 @@ class L {
|
|
|
402
402
|
return this._$AM._$AU;
|
|
403
403
|
}
|
|
404
404
|
constructor(t, e, s, i, n) {
|
|
405
|
-
this.type = 1, this._$AH =
|
|
405
|
+
this.type = 1, this._$AH = f, this._$AN = void 0, this.element = t, this.name = e, this._$AM = i, this.options = n, s.length > 2 || s[0] !== "" || s[1] !== "" ? (this._$AH = Array(s.length - 1).fill(new String()), this.strings = s) : this._$AH = f;
|
|
406
406
|
}
|
|
407
407
|
_$AI(t, e = this, s, i) {
|
|
408
408
|
const n = this.strings;
|
|
409
409
|
let o = !1;
|
|
410
410
|
if (n === void 0) t = E(this, t, e, 0), o = !N(t) || t !== this._$AH && t !== x, o && (this._$AH = t);
|
|
411
411
|
else {
|
|
412
|
-
const
|
|
413
|
-
let
|
|
414
|
-
for (t = n[0],
|
|
412
|
+
const h = t;
|
|
413
|
+
let a, c;
|
|
414
|
+
for (t = n[0], a = 0; a < n.length - 1; a++) c = E(this, h[s + a], e, a), c === x && (c = this._$AH[a]), o ||= !N(c) || c !== this._$AH[a], c === f ? t = f : t !== f && (t += (c ?? "") + n[a + 1]), this._$AH[a] = c;
|
|
415
415
|
}
|
|
416
416
|
o && !i && this.j(t);
|
|
417
417
|
}
|
|
418
418
|
j(t) {
|
|
419
|
-
t ===
|
|
419
|
+
t === f ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
|
|
420
420
|
}
|
|
421
421
|
}
|
|
422
|
-
class
|
|
422
|
+
class Mt extends k {
|
|
423
423
|
constructor() {
|
|
424
424
|
super(...arguments), this.type = 3;
|
|
425
425
|
}
|
|
426
426
|
j(t) {
|
|
427
|
-
this.element[this.name] = t ===
|
|
427
|
+
this.element[this.name] = t === f ? void 0 : t;
|
|
428
428
|
}
|
|
429
429
|
}
|
|
430
|
-
class
|
|
430
|
+
class Nt extends k {
|
|
431
431
|
constructor() {
|
|
432
432
|
super(...arguments), this.type = 4;
|
|
433
433
|
}
|
|
434
434
|
j(t) {
|
|
435
|
-
this.element.toggleAttribute(this.name, !!t && t !==
|
|
435
|
+
this.element.toggleAttribute(this.name, !!t && t !== f);
|
|
436
436
|
}
|
|
437
437
|
}
|
|
438
|
-
class
|
|
438
|
+
class Tt extends k {
|
|
439
439
|
constructor(t, e, s, i, n) {
|
|
440
440
|
super(t, e, s, i, n), this.type = 5;
|
|
441
441
|
}
|
|
442
442
|
_$AI(t, e = this) {
|
|
443
|
-
if ((t = E(this, t, e, 0) ??
|
|
444
|
-
const s = this._$AH, i = t ===
|
|
443
|
+
if ((t = E(this, t, e, 0) ?? f) === x) return;
|
|
444
|
+
const s = this._$AH, i = t === f && s !== f || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive, n = t !== f && (s === f || i);
|
|
445
445
|
i && this.element.removeEventListener(this.name, this, s), n && this.element.addEventListener(this.name, this, t), this._$AH = t;
|
|
446
446
|
}
|
|
447
447
|
handleEvent(t) {
|
|
448
448
|
typeof this._$AH == "function" ? this._$AH.call(this.options?.host ?? this.element, t) : this._$AH.handleEvent(t);
|
|
449
449
|
}
|
|
450
450
|
}
|
|
451
|
-
class
|
|
451
|
+
class Rt {
|
|
452
452
|
constructor(t, e, s) {
|
|
453
453
|
this.element = t, this.type = 6, this._$AN = void 0, this._$AM = e, this.options = s;
|
|
454
454
|
}
|
|
@@ -459,8 +459,8 @@ class Dt {
|
|
|
459
459
|
E(this, t);
|
|
460
460
|
}
|
|
461
461
|
}
|
|
462
|
-
const
|
|
463
|
-
zt?.(
|
|
462
|
+
const Dt = { I: C }, zt = J.litHtmlPolyfillSupport;
|
|
463
|
+
zt?.(T, C), (J.litHtmlVersions ??= []).push("3.3.0");
|
|
464
464
|
const jt = (r, t, e) => {
|
|
465
465
|
const s = e?.renderBefore ?? t;
|
|
466
466
|
let i = s._$litPart$;
|
|
@@ -514,22 +514,22 @@ class Bt {
|
|
|
514
514
|
return this.render(...e);
|
|
515
515
|
}
|
|
516
516
|
}
|
|
517
|
-
const { I: Wt } =
|
|
517
|
+
const { I: Wt } = Dt, lt = () => document.createComment(""), U = (r, t, e) => {
|
|
518
518
|
const s = r._$AA.parentNode, i = t === void 0 ? r._$AB : t._$AA;
|
|
519
519
|
if (e === void 0) {
|
|
520
520
|
const n = s.insertBefore(lt(), i), o = s.insertBefore(lt(), i);
|
|
521
521
|
e = new Wt(n, o, r, r.options);
|
|
522
522
|
} else {
|
|
523
|
-
const n = e._$AB.nextSibling, o = e._$AM,
|
|
524
|
-
if (
|
|
525
|
-
let
|
|
526
|
-
e._$AQ?.(r), e._$AM = r, e._$AP !== void 0 && (
|
|
523
|
+
const n = e._$AB.nextSibling, o = e._$AM, h = o !== r;
|
|
524
|
+
if (h) {
|
|
525
|
+
let a;
|
|
526
|
+
e._$AQ?.(r), e._$AM = r, e._$AP !== void 0 && (a = r._$AU) !== o._$AU && e._$AP(a);
|
|
527
527
|
}
|
|
528
|
-
if (n !== i ||
|
|
529
|
-
let
|
|
530
|
-
for (;
|
|
531
|
-
const c =
|
|
532
|
-
s.insertBefore(
|
|
528
|
+
if (n !== i || h) {
|
|
529
|
+
let a = e._$AA;
|
|
530
|
+
for (; a !== n; ) {
|
|
531
|
+
const c = a.nextSibling;
|
|
532
|
+
s.insertBefore(a, i), a = c;
|
|
533
533
|
}
|
|
534
534
|
}
|
|
535
535
|
}
|
|
@@ -556,7 +556,7 @@ const ct = (r, t, e) => {
|
|
|
556
556
|
e === void 0 ? e = t : t !== void 0 && (s = t);
|
|
557
557
|
const i = [], n = [];
|
|
558
558
|
let o = 0;
|
|
559
|
-
for (const
|
|
559
|
+
for (const h of r) i[o] = s ? s(h, o) : o, n[o] = e(h, o), o++;
|
|
560
560
|
return { values: n, keys: i };
|
|
561
561
|
}
|
|
562
562
|
render(r, t, e) {
|
|
@@ -565,69 +565,69 @@ const ct = (r, t, e) => {
|
|
|
565
565
|
update(r, [t, e, s]) {
|
|
566
566
|
const i = Ft(r), { values: n, keys: o } = this.dt(t, e, s);
|
|
567
567
|
if (!Array.isArray(i)) return this.ut = o, n;
|
|
568
|
-
const
|
|
569
|
-
let c, u, l = 0, d = i.length - 1, p = 0,
|
|
570
|
-
for (; l <= d && p <=
|
|
568
|
+
const h = this.ut ??= [], a = [];
|
|
569
|
+
let c, u, l = 0, d = i.length - 1, p = 0, $ = n.length - 1;
|
|
570
|
+
for (; l <= d && p <= $; ) if (i[l] === null) l++;
|
|
571
571
|
else if (i[d] === null) d--;
|
|
572
|
-
else if (
|
|
573
|
-
else if (
|
|
574
|
-
else if (
|
|
575
|
-
else if (
|
|
576
|
-
else if (c === void 0 && (c = ct(o, p,
|
|
577
|
-
const
|
|
572
|
+
else if (h[l] === o[p]) a[p] = v(i[l], n[p]), l++, p++;
|
|
573
|
+
else if (h[d] === o[$]) a[$] = v(i[d], n[$]), d--, $--;
|
|
574
|
+
else if (h[l] === o[$]) a[$] = v(i[l], n[$]), U(r, a[$ + 1], i[l]), l++, $--;
|
|
575
|
+
else if (h[d] === o[p]) a[p] = v(i[d], n[p]), U(r, i[l], i[d]), d--, p++;
|
|
576
|
+
else if (c === void 0 && (c = ct(o, p, $), u = ct(h, l, d)), c.has(h[l])) if (c.has(h[d])) {
|
|
577
|
+
const g = u.get(o[p]), W = g !== void 0 ? i[g] : null;
|
|
578
578
|
if (W === null) {
|
|
579
|
-
const X =
|
|
580
|
-
v(X, n[p]),
|
|
581
|
-
} else
|
|
579
|
+
const X = U(r, i[l]);
|
|
580
|
+
v(X, n[p]), a[p] = X;
|
|
581
|
+
} else a[p] = v(W, n[p]), U(r, i[l], W), i[g] = null;
|
|
582
582
|
p++;
|
|
583
583
|
} else V(i[d]), d--;
|
|
584
584
|
else V(i[l]), l++;
|
|
585
|
-
for (; p <=
|
|
586
|
-
const
|
|
587
|
-
v(
|
|
585
|
+
for (; p <= $; ) {
|
|
586
|
+
const g = U(r, a[$ + 1]);
|
|
587
|
+
v(g, n[p]), a[p++] = g;
|
|
588
588
|
}
|
|
589
589
|
for (; l <= d; ) {
|
|
590
|
-
const
|
|
591
|
-
|
|
590
|
+
const g = i[l++];
|
|
591
|
+
g !== null && V(g);
|
|
592
592
|
}
|
|
593
|
-
return this.ut = o, Vt(r,
|
|
593
|
+
return this.ut = o, Vt(r, a), x;
|
|
594
594
|
}
|
|
595
595
|
});
|
|
596
|
-
const Zt = (r) => r ??
|
|
596
|
+
const Zt = (r) => r ?? f;
|
|
597
597
|
const Jt = (r) => (t, e) => {
|
|
598
598
|
e !== void 0 ? e.addInitializer((() => {
|
|
599
599
|
customElements.define(r, t);
|
|
600
600
|
})) : customElements.define(r, t);
|
|
601
601
|
};
|
|
602
|
-
const Kt = { attribute: !0, type: String, converter:
|
|
602
|
+
const Kt = { attribute: !0, type: String, converter: z, reflect: !1, hasChanged: Z }, Qt = (r = Kt, t, e) => {
|
|
603
603
|
const { kind: s, metadata: i } = e;
|
|
604
604
|
let n = globalThis.litPropertyMetadata.get(i);
|
|
605
605
|
if (n === void 0 && globalThis.litPropertyMetadata.set(i, n = /* @__PURE__ */ new Map()), s === "setter" && ((r = Object.create(r)).wrapped = !0), n.set(e.name, r), s === "accessor") {
|
|
606
606
|
const { name: o } = e;
|
|
607
|
-
return { set(
|
|
608
|
-
const
|
|
609
|
-
t.set.call(this,
|
|
610
|
-
}, init(
|
|
611
|
-
return
|
|
607
|
+
return { set(h) {
|
|
608
|
+
const a = t.get.call(this);
|
|
609
|
+
t.set.call(this, h), this.requestUpdate(o, a, r);
|
|
610
|
+
}, init(h) {
|
|
611
|
+
return h !== void 0 && this.C(o, void 0, r, h), h;
|
|
612
612
|
} };
|
|
613
613
|
}
|
|
614
614
|
if (s === "setter") {
|
|
615
615
|
const { name: o } = e;
|
|
616
|
-
return function(
|
|
617
|
-
const
|
|
618
|
-
t.call(this,
|
|
616
|
+
return function(h) {
|
|
617
|
+
const a = this[o];
|
|
618
|
+
t.call(this, h), this.requestUpdate(o, a, r);
|
|
619
619
|
};
|
|
620
620
|
}
|
|
621
621
|
throw Error("Unsupported decorator location: " + s);
|
|
622
622
|
};
|
|
623
|
-
function
|
|
623
|
+
function L(r) {
|
|
624
624
|
return (t, e) => typeof e == "object" ? Qt(r, t, e) : ((s, i, n) => {
|
|
625
625
|
const o = i.hasOwnProperty(n);
|
|
626
626
|
return i.constructor.createProperty(n, s), o ? Object.getOwnPropertyDescriptor(i, n) : void 0;
|
|
627
627
|
})(r, t, e);
|
|
628
628
|
}
|
|
629
|
-
function
|
|
630
|
-
return
|
|
629
|
+
function B(r) {
|
|
630
|
+
return L({ ...r, state: !0, attribute: !1 });
|
|
631
631
|
}
|
|
632
632
|
const Xt = (r, t, e) => (e.configurable = !0, e.enumerable = !0, Reflect.decorate && typeof t != "object" && Object.defineProperty(r, t, e), e);
|
|
633
633
|
function Yt(r, t) {
|
|
@@ -638,14 +638,14 @@ function Yt(r, t) {
|
|
|
638
638
|
} });
|
|
639
639
|
};
|
|
640
640
|
}
|
|
641
|
-
var te = Object.defineProperty, ee = Object.getOwnPropertyDescriptor,
|
|
641
|
+
var te = Object.defineProperty, ee = Object.getOwnPropertyDescriptor, _ = (r, t, e, s) => {
|
|
642
642
|
for (var i = s > 1 ? void 0 : s ? ee(t, e) : t, n = r.length - 1, o; n >= 0; n--)
|
|
643
643
|
(o = r[n]) && (i = (s ? o(t, e, i) : o(i)) || i);
|
|
644
644
|
return s && i && te(t, e, i), i;
|
|
645
645
|
};
|
|
646
646
|
let m = class extends H {
|
|
647
647
|
constructor() {
|
|
648
|
-
super(...arguments), this.elementWidth = 0, this.elementHeight = 0, this.version = "1.1.
|
|
648
|
+
super(...arguments), this.elementWidth = 0, this.elementHeight = 0, this.version = "1.1.19";
|
|
649
649
|
}
|
|
650
650
|
disconnectedCallback() {
|
|
651
651
|
super.disconnectedCallback(), this.resizeObserver && this.resizeObserver.disconnect();
|
|
@@ -660,7 +660,7 @@ let m = class extends H {
|
|
|
660
660
|
}
|
|
661
661
|
registerTheme(r) {
|
|
662
662
|
const t = getComputedStyle(this).getPropertyValue("--re-text-color").trim(), e = getComputedStyle(this).getPropertyValue("--re-tile-background-color").trim();
|
|
663
|
-
this.themeBgColor = e || this.theme?.theme_object?.backgroundColor, this.themeTitleColor = t || this.theme?.theme_object?.title?.textStyle?.color
|
|
663
|
+
this.themeBgColor = e || this.theme?.theme_object?.backgroundColor, this.themeTitleColor = t || this.theme?.theme_object?.title?.textStyle?.color;
|
|
664
664
|
}
|
|
665
665
|
/**
|
|
666
666
|
* Get images filtered by timeRange if available
|
|
@@ -688,15 +688,15 @@ let m = class extends H {
|
|
|
688
688
|
if (t === 0) return;
|
|
689
689
|
const e = this.wrapper.getBoundingClientRect(), s = e.width * 0.04, i = e.height * 0.04, n = e.width - s, o = e.height - i;
|
|
690
690
|
if (n <= 0 || o <= 0) return;
|
|
691
|
-
const
|
|
691
|
+
const h = this.optimizeLayout(
|
|
692
692
|
n,
|
|
693
693
|
o,
|
|
694
694
|
t,
|
|
695
695
|
(c, u) => Math.abs(c / u - 1 / 1),
|
|
696
696
|
this.inputData?.gap ?? 12
|
|
697
697
|
);
|
|
698
|
-
this.elementWidth =
|
|
699
|
-
c.style.width = `${
|
|
698
|
+
this.elementWidth = h.elementWidth, this.elementHeight = h.elementHeight, this.wrapper.querySelectorAll(".image-item").forEach((c) => {
|
|
699
|
+
c.style.width = `${h.elementWidth}px`, c.style.height = `${h.elementHeight}px`;
|
|
700
700
|
});
|
|
701
701
|
}
|
|
702
702
|
/**
|
|
@@ -717,61 +717,49 @@ let m = class extends H {
|
|
|
717
717
|
error: 1 / 0
|
|
718
718
|
};
|
|
719
719
|
for (let o = 1; o <= e; o++) {
|
|
720
|
-
const
|
|
720
|
+
const h = Math.ceil(e / o), a = i * (o - 1), c = i * (h - 1), u = r - a, l = t - c;
|
|
721
721
|
if (u <= 0 || l <= 0) continue;
|
|
722
|
-
const d = u / o, p = l /
|
|
723
|
-
|
|
722
|
+
const d = u / o, p = l / h, $ = s(d, p);
|
|
723
|
+
$ < n.error && (n = {
|
|
724
724
|
elementWidth: d,
|
|
725
725
|
elementHeight: p,
|
|
726
726
|
numCols: o,
|
|
727
|
-
numRows:
|
|
728
|
-
error:
|
|
727
|
+
numRows: h,
|
|
728
|
+
error: $
|
|
729
729
|
});
|
|
730
730
|
}
|
|
731
731
|
return n;
|
|
732
732
|
}
|
|
733
733
|
render() {
|
|
734
734
|
const r = this.getFilteredImages(), t = r.length > 1, e = r.filter((i) => i.label).length > 0, s = r.some((i) => i.imageUrl);
|
|
735
|
-
return
|
|
735
|
+
return R`
|
|
736
736
|
<div
|
|
737
737
|
class="wrapper"
|
|
738
738
|
style="background-color: ${this.themeBgColor}; color: ${this.themeTitleColor}; gap: ${t ? `${this.inputData?.gap ?? 12}px` : "0px"}; ${t ? "" : "flex-direction: column;"}"
|
|
739
739
|
>
|
|
740
|
-
${!t && this.inputData?.title ? U`
|
|
741
|
-
<h3
|
|
742
|
-
class="paging"
|
|
743
|
-
?active=${this.inputData?.title}
|
|
744
|
-
style="color: ${this.themeTitleColor};"
|
|
745
|
-
>
|
|
746
|
-
${this.inputData?.title}
|
|
747
|
-
</h3>
|
|
748
|
-
` : $}
|
|
749
|
-
${!t && this.inputData?.subTitle ? U`
|
|
750
|
-
<p
|
|
751
|
-
class="paging"
|
|
752
|
-
?active=${this.inputData?.subTitle}
|
|
753
|
-
style="color: ${this.themeSubtitleColor};"
|
|
754
|
-
>
|
|
755
|
-
${this.inputData?.subTitle}
|
|
756
|
-
</p>
|
|
757
|
-
` : $}
|
|
758
740
|
<div class="paging no-data" ?active=${!s} style="color: ${this.themeTitleColor};">
|
|
759
741
|
No Image
|
|
760
742
|
</div>
|
|
761
743
|
${Gt(
|
|
762
744
|
r,
|
|
763
745
|
(i) => i.imageUrl,
|
|
764
|
-
(i) =>
|
|
746
|
+
(i) => R`
|
|
765
747
|
<div
|
|
766
748
|
class="image-item"
|
|
767
749
|
style="width: ${this.elementWidth}px; height: ${this.elementHeight}px;"
|
|
768
750
|
>
|
|
769
|
-
${e ?
|
|
751
|
+
${e ? R`<h2
|
|
770
752
|
class="title"
|
|
771
753
|
style="${this.inputData?.labelFontSize ? `font-size: ${this.inputData.labelFontSize}px;` : ""}"
|
|
772
754
|
>
|
|
773
|
-
${
|
|
774
|
-
|
|
755
|
+
${this.inputData?.titleLink ? R`<a
|
|
756
|
+
href="${this.inputData.titleLink}"
|
|
757
|
+
target="_blank"
|
|
758
|
+
rel="noopener noreferrer"
|
|
759
|
+
style="color: inherit; text-decoration: underline;"
|
|
760
|
+
>${i.label ?? ""}</a
|
|
761
|
+
>` : i.label ?? ""}
|
|
762
|
+
</h2>` : f}
|
|
775
763
|
<div class="img-container paging" ?active="${i.imageUrl}">
|
|
776
764
|
<img
|
|
777
765
|
src="${Zt(i.imageUrl)}"
|
|
@@ -877,35 +865,32 @@ m.styles = gt`
|
|
|
877
865
|
justify-content: center;
|
|
878
866
|
}
|
|
879
867
|
`;
|
|
880
|
-
|
|
881
|
-
|
|
868
|
+
_([
|
|
869
|
+
L({ type: Object })
|
|
882
870
|
], m.prototype, "inputData", 2);
|
|
883
|
-
|
|
884
|
-
|
|
871
|
+
_([
|
|
872
|
+
L({ type: Object })
|
|
885
873
|
], m.prototype, "theme", 2);
|
|
886
|
-
|
|
887
|
-
|
|
874
|
+
_([
|
|
875
|
+
L({ type: Object })
|
|
888
876
|
], m.prototype, "timeRange", 2);
|
|
889
|
-
|
|
890
|
-
|
|
877
|
+
_([
|
|
878
|
+
B()
|
|
891
879
|
], m.prototype, "themeBgColor", 2);
|
|
892
|
-
|
|
893
|
-
|
|
880
|
+
_([
|
|
881
|
+
B()
|
|
894
882
|
], m.prototype, "themeTitleColor", 2);
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
], m.prototype, "themeSubtitleColor", 2);
|
|
898
|
-
g([
|
|
899
|
-
R()
|
|
883
|
+
_([
|
|
884
|
+
B()
|
|
900
885
|
], m.prototype, "elementWidth", 2);
|
|
901
|
-
|
|
902
|
-
|
|
886
|
+
_([
|
|
887
|
+
B()
|
|
903
888
|
], m.prototype, "elementHeight", 2);
|
|
904
|
-
|
|
889
|
+
_([
|
|
905
890
|
Yt(".wrapper")
|
|
906
891
|
], m.prototype, "wrapper", 2);
|
|
907
|
-
m =
|
|
908
|
-
Jt("widget-image-1.1.
|
|
892
|
+
m = _([
|
|
893
|
+
Jt("widget-image-1.1.19")
|
|
909
894
|
], m);
|
|
910
895
|
export {
|
|
911
896
|
m as WidgetImage
|
package/dist/widget-image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget-image.js","sources":["../node_modules/@lit/reactive-element/css-tag.js","../node_modules/@lit/reactive-element/reactive-element.js","../node_modules/lit-html/lit-html.js","../node_modules/lit-element/lit-element.js","../node_modules/lit-html/directive.js","../node_modules/lit-html/directive-helpers.js","../node_modules/lit-html/directives/repeat.js","../node_modules/lit-html/directives/if-defined.js","../node_modules/@lit/reactive-element/decorators/custom-element.js","../node_modules/@lit/reactive-element/decorators/property.js","../node_modules/@lit/reactive-element/decorators/state.js","../node_modules/@lit/reactive-element/decorators/base.js","../node_modules/@lit/reactive-element/decorators/query.js","../src/widget-image.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,css,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:h,getOwnPropertyNames:r,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),b={attribute:!0,type:String,converter:u,reflect:!1,useDefault:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=b){if(s.state&&(s.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((s=Object.create(s)).wrapped=!0),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),h=this.getPropertyDescriptor(t,i,s);void 0!==h&&e(this.prototype,t,h)}}static getPropertyDescriptor(t,s,i){const{get:e,set:r}=h(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get:e,set(s){const h=e?.call(this);r?.call(this,s),this.requestUpdate(t,h,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??b}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...r(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$ET(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const h=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==h?this.removeAttribute(e):this.setAttribute(e,h),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e,this[e]=h.fromAttribute(s,t.type)??this._$Ej?.get(e)??null,this._$Em=null}}requestUpdate(t,s,i){if(void 0!==t){const e=this.constructor,h=this[t];if(i??=e.getPropertyOptions(t),!((i.hasChanged??f)(h,s)||i.useDefault&&i.reflect&&h===this._$Ej?.get(t)&&!this.hasAttribute(e._$Eu(t,i))))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,s,{useDefault:i,reflect:e,wrapped:h},r){i&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,r??s??this[t]),!0!==h||void 0!==r)||(this._$AL.has(t)||(this.hasUpdated||i||(s=void 0),this._$AL.set(t,s)),!0===e&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t){const{wrapped:t}=i,e=this[s];!0!==t||this._$AL.has(s)||void 0===e||this.C(s,void 0,i,e)}}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((t=>this._$ET(t,this[t]))),this._$EM()}updated(t){}firstUpdated(t){}}y.elementStyles=[],y.shadowRootOptions={mode:\"open\"},y[d(\"elementProperties\")]=new Map,y[d(\"finalized\")]=new Map,p?.({ReactiveElement:y}),(a.reactiveElementVersions??=[]).push(\"2.1.0\");export{y as ReactiveElement,s as adoptStyles,u as defaultConverter,t as getCompatibleStyle,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,i=t.trustedTypes,s=i?i.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,e=\"$lit$\",h=`lit$${Math.random().toFixed(9).slice(2)}$`,o=\"?\"+h,n=`<${o}>`,r=document,l=()=>r.createComment(\"\"),c=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,a=Array.isArray,u=t=>a(t)||\"function\"==typeof t?.[Symbol.iterator],d=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,v=/-->/g,_=/>/g,m=RegExp(`>|${d}(?:([^\\\\s\"'>=/]+)(${d}*=${d}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),p=/'/g,g=/\"/g,$=/^(?:script|style|textarea|title)$/i,y=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=y(1),b=y(2),w=y(3),T=Symbol.for(\"lit-noChange\"),E=Symbol.for(\"lit-nothing\"),A=new WeakMap,C=r.createTreeWalker(r,129);function P(t,i){if(!a(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==s?s.createHTML(i):i}const V=(t,i)=>{const s=t.length-1,o=[];let r,l=2===i?\"<svg>\":3===i?\"<math>\":\"\",c=f;for(let i=0;i<s;i++){const s=t[i];let a,u,d=-1,y=0;for(;y<s.length&&(c.lastIndex=y,u=c.exec(s),null!==u);)y=c.lastIndex,c===f?\"!--\"===u[1]?c=v:void 0!==u[1]?c=_:void 0!==u[2]?($.test(u[2])&&(r=RegExp(\"</\"+u[2],\"g\")),c=m):void 0!==u[3]&&(c=m):c===m?\">\"===u[0]?(c=r??f,d=-1):void 0===u[1]?d=-2:(d=c.lastIndex-u[2].length,a=u[1],c=void 0===u[3]?m:'\"'===u[3]?g:p):c===g||c===p?c=m:c===v||c===_?c=f:(c=m,r=void 0);const x=c===m&&t[i+1].startsWith(\"/>\")?\" \":\"\";l+=c===f?s+n:d>=0?(o.push(a),s.slice(0,d)+e+s.slice(d)+h+x):s+h+(-2===d?i:x)}return[P(t,l+(t[s]||\"<?>\")+(2===i?\"</svg>\":3===i?\"</math>\":\"\")),o]};class N{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let c=0,a=0;const u=t.length-1,d=this.parts,[f,v]=V(t,s);if(this.el=N.createElement(f,n),C.currentNode=this.el.content,2===s||3===s){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(r=C.nextNode())&&d.length<u;){if(1===r.nodeType){if(r.hasAttributes())for(const t of r.getAttributeNames())if(t.endsWith(e)){const i=v[a++],s=r.getAttribute(t).split(h),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:c,name:e[2],strings:s,ctor:\".\"===e[1]?H:\"?\"===e[1]?I:\"@\"===e[1]?L:k}),r.removeAttribute(t)}else t.startsWith(h)&&(d.push({type:6,index:c}),r.removeAttribute(t));if($.test(r.tagName)){const t=r.textContent.split(h),s=t.length-1;if(s>0){r.textContent=i?i.emptyScript:\"\";for(let i=0;i<s;i++)r.append(t[i],l()),C.nextNode(),d.push({type:2,index:++c});r.append(t[s],l())}}}else if(8===r.nodeType)if(r.data===o)d.push({type:2,index:c});else{let t=-1;for(;-1!==(t=r.data.indexOf(h,t+1));)d.push({type:7,index:c}),t+=h.length-1}c++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function S(t,i,s=t,e){if(i===T)return i;let h=void 0!==e?s._$Co?.[e]:s._$Cl;const o=c(i)?void 0:i._$litDirective$;return h?.constructor!==o&&(h?._$AO?.(!1),void 0===o?h=void 0:(h=new o(t),h._$AT(t,s,e)),void 0!==e?(s._$Co??=[])[e]=h:s._$Cl=h),void 0!==h&&(i=S(t,h._$AS(t,i.values),h,e)),i}class M{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:i},parts:s}=this._$AD,e=(t?.creationScope??r).importNode(i,!0);C.currentNode=e;let h=C.nextNode(),o=0,n=0,l=s[0];for(;void 0!==l;){if(o===l.index){let i;2===l.type?i=new R(h,h.nextSibling,this,t):1===l.type?i=new l.ctor(h,l.name,l.strings,this,t):6===l.type&&(i=new z(h,this,t)),this._$AV.push(i),l=s[++n]}o!==l?.index&&(h=C.nextNode(),o++)}return C.currentNode=r,e}p(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class R{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,i,s,e){this.type=2,this._$AH=E,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cv=e?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t?.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=S(this,t,i),c(t)?t===E||null==t||\"\"===t?(this._$AH!==E&&this._$AR(),this._$AH=E):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):u(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==E&&c(this._$AH)?this._$AA.nextSibling.data=t:this.T(r.createTextNode(t)),this._$AH=t}$(t){const{values:i,_$litType$:s}=t,e=\"number\"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=N.createElement(P(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===e)this._$AH.p(i);else{const t=new M(e,this),s=t.u(this.options);t.p(i),this.T(s),this._$AH=t}}_$AC(t){let i=A.get(t.strings);return void 0===i&&A.set(t.strings,i=new N(t)),i}k(t){a(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const h of t)e===i.length?i.push(s=new R(this.O(l()),this.O(l()),this,this.options)):s=i[e],s._$AI(h),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class k{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,i,s,e,h){this.type=1,this._$AH=E,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=h,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=E}_$AI(t,i=this,s,e){const h=this.strings;let o=!1;if(void 0===h)t=S(this,t,i,0),o=!c(t)||t!==this._$AH&&t!==T,o&&(this._$AH=t);else{const e=t;let n,r;for(t=h[0],n=0;n<h.length-1;n++)r=S(this,e[s+n],i,n),r===T&&(r=this._$AH[n]),o||=!c(r)||r!==this._$AH[n],r===E?t=E:t!==E&&(t+=(r??\"\")+h[n+1]),this._$AH[n]=r}o&&!e&&this.j(t)}j(t){t===E?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??\"\")}}class H extends k{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===E?void 0:t}}class I extends k{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==E)}}class L extends k{constructor(t,i,s,e,h){super(t,i,s,e,h),this.type=5}_$AI(t,i=this){if((t=S(this,t,i,0)??E)===T)return;const s=this._$AH,e=t===E&&s!==E||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,h=t!==E&&(s===E||e);e&&this.element.removeEventListener(this.name,this,s),h&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){\"function\"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){S(this,t)}}const Z={M:e,P:h,A:o,C:1,L:V,R:M,D:u,V:S,I:R,H:k,N:I,U:L,B:H,F:z},j=t.litHtmlPolyfillSupport;j?.(N,R),(t.litHtmlVersions??=[]).push(\"3.3.0\");const B=(t,i,s)=>{const e=s?.renderBefore??i;let h=e._$litPart$;if(void 0===h){const t=s?.renderBefore??null;e._$litPart$=h=new R(i.insertBefore(l(),t),t,void 0,s??{})}return h._$AI(t),h};export{Z as _$LH,x as html,w as mathml,T as noChange,E as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as r}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const s=globalThis;class i extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return r}}i._$litElement$=!0,i[\"finalized\"]=!0,s.litElementHydrateSupport?.({LitElement:i});const o=s.litElementPolyfillSupport;o?.({LitElement:i});const n={_$AK:(t,e,r)=>{t._$AK(e,r)},_$AL:t=>t._$AL};(s.litElementVersions??=[]).push(\"4.2.0\");export{i as LitElement,n as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}export{i as Directive,t as PartType,e as directive};\n//# sourceMappingURL=directive.js.map\n","import{_$LH as o}from\"./lit-html.js\";\n/**\n * @license\n * Copyright 2020 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{I:t}=o,i=o=>null===o||\"object\"!=typeof o&&\"function\"!=typeof o,n={HTML:1,SVG:2,MATHML:3},e=(o,t)=>void 0===t?void 0!==o?._$litType$:o?._$litType$===t,l=o=>null!=o?._$litType$?.h,c=o=>void 0!==o?._$litDirective$,d=o=>o?._$litDirective$,f=o=>void 0===o.strings,s=()=>document.createComment(\"\"),r=(o,i,n)=>{const e=o._$AA.parentNode,l=void 0===i?o._$AB:i._$AA;if(void 0===n){const i=e.insertBefore(s(),l),c=e.insertBefore(s(),l);n=new t(i,c,o,o.options)}else{const t=n._$AB.nextSibling,i=n._$AM,c=i!==o;if(c){let t;n._$AQ?.(o),n._$AM=o,void 0!==n._$AP&&(t=o._$AU)!==i._$AU&&n._$AP(t)}if(t!==l||c){let o=n._$AA;for(;o!==t;){const t=o.nextSibling;e.insertBefore(o,l),o=t}}}return n},v=(o,t,i=o)=>(o._$AI(t,i),o),u={},m=(o,t=u)=>o._$AH=t,p=o=>o._$AH,M=o=>{o._$AP?.(!1,!0);let t=o._$AA;const i=o._$AB.nextSibling;for(;t!==i;){const o=t.nextSibling;t.remove(),t=o}},h=o=>{o._$AR()};export{n as TemplateResultType,h as clearPart,p as getCommittedValue,d as getDirectiveClass,r as insertPart,l as isCompiledTemplateResult,c as isDirectiveResult,i as isPrimitive,f as isSingleExpression,e as isTemplateResult,M as removePart,v as setChildPartValue,m as setCommittedValue};\n//# sourceMappingURL=directive-helpers.js.map\n","import{noChange as e}from\"../lit-html.js\";import{directive as s,Directive as t,PartType as r}from\"../directive.js\";import{getCommittedValue as l,setChildPartValue as o,insertPart as i,removePart as n,setCommittedValue as f}from\"../directive-helpers.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst u=(e,s,t)=>{const r=new Map;for(let l=s;l<=t;l++)r.set(e[l],l);return r},c=s(class extends t{constructor(e){if(super(e),e.type!==r.CHILD)throw Error(\"repeat() can only be used in text expressions\")}dt(e,s,t){let r;void 0===t?t=s:void 0!==s&&(r=s);const l=[],o=[];let i=0;for(const s of e)l[i]=r?r(s,i):i,o[i]=t(s,i),i++;return{values:o,keys:l}}render(e,s,t){return this.dt(e,s,t).values}update(s,[t,r,c]){const d=l(s),{values:p,keys:a}=this.dt(t,r,c);if(!Array.isArray(d))return this.ut=a,p;const h=this.ut??=[],v=[];let m,y,x=0,j=d.length-1,k=0,w=p.length-1;for(;x<=j&&k<=w;)if(null===d[x])x++;else if(null===d[j])j--;else if(h[x]===a[k])v[k]=o(d[x],p[k]),x++,k++;else if(h[j]===a[w])v[w]=o(d[j],p[w]),j--,w--;else if(h[x]===a[w])v[w]=o(d[x],p[w]),i(s,v[w+1],d[x]),x++,w--;else if(h[j]===a[k])v[k]=o(d[j],p[k]),i(s,d[x],d[j]),j--,k++;else if(void 0===m&&(m=u(a,k,w),y=u(h,x,j)),m.has(h[x]))if(m.has(h[j])){const e=y.get(a[k]),t=void 0!==e?d[e]:null;if(null===t){const e=i(s,d[x]);o(e,p[k]),v[k]=e}else v[k]=o(t,p[k]),i(s,d[x],t),d[e]=null;k++}else n(d[j]),j--;else n(d[x]),x++;for(;k<=w;){const e=i(s,v[w+1]);o(e,p[k]),v[k++]=e}for(;x<=j;){const e=d[x++];null!==e&&n(e)}return this.ut=a,f(s,v),e}});export{c as repeat};\n//# sourceMappingURL=repeat.js.map\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o=o=>o??t;export{o as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=t=>(e,o)=>{void 0!==o?o.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)};export{t as customElement};\n//# sourceMappingURL=custom-element.js.map\n","import{defaultConverter as t,notEqual as e}from\"../reactive-element.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),\"setter\"===n&&((t=Object.create(t)).wrapped=!0),s.set(r.name,t),\"accessor\"===n){const{name:o}=r;return{set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t)},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if(\"setter\"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t)}}throw Error(\"Unsupported decorator location: \"+n)};function n(t){return(e,o)=>\"object\"==typeof o?r(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty};\n//# sourceMappingURL=property.js.map\n","import{property as t}from\"./property.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function r(r){return t({...r,state:!0,attribute:!1})}export{r as state};\n//# sourceMappingURL=state.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst e=(e,t,c)=>(c.configurable=!0,c.enumerable=!0,Reflect.decorate&&\"object\"!=typeof t&&Object.defineProperty(e,t,c),c);export{e as desc};\n//# sourceMappingURL=base.js.map\n","import{desc as t}from\"./base.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function e(e,r){return(n,s,i)=>{const o=t=>t.renderRoot?.querySelector(e)??null;if(r){const{get:e,set:r}=\"object\"==typeof s?n:i??(()=>{const t=Symbol();return{get(){return this[t]},set(e){this[t]=e}}})();return t(n,s,{get(){let t=e.call(this);return void 0===t&&(t=o(this),(null!==t||this.hasUpdated)&&r.call(this,t)),t}})}return t(n,s,{get(){return o(this)}})}}export{e as query};\n//# sourceMappingURL=query.js.map\n","import { html, css, LitElement, PropertyValues, PropertyValueMap, nothing } from 'lit'\nimport { repeat } from 'lit/directives/repeat.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport { customElement, property, state, query } from 'lit/decorators.js'\nimport { InputData } from './definition-schema'\ntype Theme = {\n theme_name: string\n theme_object: any\n}\n@customElement('widget-image-versionplaceholder')\nexport class WidgetImage extends LitElement {\n @property({ type: Object })\n inputData?: InputData\n\n @property({ type: Object })\n theme?: Theme\n\n @property({ type: Object })\n timeRange?: { start: number; end: number }\n\n @state() private themeBgColor?: string\n @state() private themeTitleColor?: string\n @state() private themeSubtitleColor?: string\n @state() private elementWidth: number = 0\n @state() private elementHeight: number = 0\n\n @query('.wrapper') private wrapper?: HTMLDivElement\n\n version: string = 'versionplaceholder'\n private resizeObserver?: ResizeObserver\n\n disconnectedCallback() {\n super.disconnectedCallback()\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n }\n }\n\n update(changedProperties: Map<string, any>) {\n if (changedProperties.has('inputData') || changedProperties.has('timeRange')) {\n this.updateGridLayout()\n }\n\n if (changedProperties.has('theme')) {\n this.registerTheme(this.theme)\n }\n\n super.update(changedProperties)\n }\n\n protected firstUpdated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>) {\n this.registerTheme(this.theme)\n\n // Set up ResizeObserver for the wrapper\n if (this.wrapper) {\n this.resizeObserver = new ResizeObserver(() => {\n this.updateGridLayout()\n })\n this.resizeObserver.observe(this.wrapper)\n // Initial layout calculation\n this.updateGridLayout()\n }\n }\n\n registerTheme(theme?: Theme) {\n const cssTextColor = getComputedStyle(this).getPropertyValue('--re-text-color').trim()\n const cssBgColor = getComputedStyle(this).getPropertyValue('--re-tile-background-color').trim()\n this.themeBgColor = cssBgColor || this.theme?.theme_object?.backgroundColor\n this.themeTitleColor = cssTextColor || this.theme?.theme_object?.title?.textStyle?.color\n this.themeSubtitleColor =\n cssTextColor || this.theme?.theme_object?.title?.subtextStyle?.color || this.themeTitleColor\n }\n\n /**\n * Get images filtered by timeRange if available\n */\n getFilteredImages() {\n const singleImageUrl = this.inputData?.useUpload\n ? typeof this.inputData?.image === 'string'\n ? this.inputData.image\n : ''\n : (this.inputData?.imageUrl ?? '')\n\n let images = this.inputData?.multiImage\n ? (this.inputData?.data ?? [])\n : [{ imageUrl: singleImageUrl, label: this.inputData?.title ?? '' }]\n\n // Filter by timeRange if provided and in multi-image mode\n if (this.timeRange && this.inputData?.multiImage) {\n const timeRangeStart = Number(this.timeRange.start)\n const timeRangeEnd = Number(this.timeRange.end)\n\n if (!isNaN(timeRangeStart) || !isNaN(timeRangeEnd)) {\n images = images.filter((img) => {\n const timestamp = img.timestamp\n if (timestamp === undefined || timestamp === null) return true // Keep images without timestamps\n const ts = Number(timestamp)\n if (isNaN(ts)) return true // Keep if timestamp is not a valid number\n if (!isNaN(timeRangeStart) && ts < timeRangeStart) return false\n if (!isNaN(timeRangeEnd) && ts > timeRangeEnd) return false\n return true\n })\n }\n }\n\n return images\n }\n\n /**\n * Update grid layout based on container size and number of elements\n */\n updateGridLayout() {\n if (!this.wrapper) return\n\n const images = this.getFilteredImages()\n\n const numElements = images.length\n if (numElements === 0) return\n\n const rect = this.wrapper.getBoundingClientRect()\n // Account for padding: 2cqw on each side (4% width total), 2cqh on each side (4% height total)\n const horizontalPadding = rect.width * 0.04\n const verticalPadding = rect.height * 0.04\n const containerWidth = rect.width - horizontalPadding\n const containerHeight = rect.height - verticalPadding\n\n if (containerWidth <= 0 || containerHeight <= 0) return\n\n // Optimize for 1:1 aspect ratio\n const layout = this.optimizeLayout(\n containerWidth,\n containerHeight,\n numElements,\n (w, h) => Math.abs(w / h - 1 / 1),\n this.inputData?.gap ?? 12\n )\n\n // Update element dimensions\n this.elementWidth = layout.elementWidth\n this.elementHeight = layout.elementHeight\n\n // Apply width and height to each child image container\n const imageContainers = this.wrapper.querySelectorAll('.image-item') as NodeListOf<HTMLDivElement>\n imageContainers.forEach((container) => {\n container.style.width = `${layout.elementWidth}px`\n container.style.height = `${layout.elementHeight}px`\n })\n }\n\n /**\n * Optimize grid layout by minimizing an error function\n * @param containerWidth - Available width for the grid\n * @param containerHeight - Available height for the grid\n * @param numElements - Number of elements to arrange\n * @param errorFn - Error function that takes (element_width, element_height) and returns error value\n * @param gap - Gap between elements (default: 12)\n * @returns Optimal layout configuration\n */\n optimizeLayout(\n containerWidth: number,\n containerHeight: number,\n numElements: number,\n errorFn: (w: number, h: number) => number,\n gap: number = 12\n ): {\n elementWidth: number\n elementHeight: number\n numCols: number\n numRows: number\n error: number\n } {\n let bestLayout = {\n elementWidth: 0,\n elementHeight: 0,\n numCols: 1,\n numRows: numElements,\n error: Infinity\n }\n\n // Try all possible column configurations from 1 to numElements\n for (let cols = 1; cols <= numElements; cols++) {\n const rows = Math.ceil(numElements / cols)\n\n // Calculate element dimensions accounting for gaps\n const totalGapWidth = gap * (cols - 1)\n const totalGapHeight = gap * (rows - 1)\n const availableWidth = containerWidth - totalGapWidth\n const availableHeight = containerHeight - totalGapHeight\n\n if (availableWidth <= 0 || availableHeight <= 0) continue\n\n const elementWidth = availableWidth / cols\n const elementHeight = availableHeight / rows\n\n // Calculate error for this configuration\n const error = errorFn(elementWidth, elementHeight)\n\n // Update best layout if this is better\n if (error < bestLayout.error) {\n bestLayout = {\n elementWidth,\n elementHeight,\n numCols: cols,\n numRows: rows,\n error\n }\n }\n }\n\n return bestLayout\n }\n\n static styles = css`\n :host {\n display: block;\n font-family: sans-serif;\n box-sizing: border-box;\n margin: auto;\n container-type: size;\n }\n\n .paging:not([active]) {\n display: none !important;\n }\n\n .wrapper {\n display: flex;\n flex-wrap: wrap;\n height: 100%;\n width: 100%;\n padding: 2cqh 2cqw;\n box-sizing: border-box;\n gap: 12px;\n align-content: flex-start;\n }\n\n .wrapper > * {\n flex-shrink: 1;\n min-width: 0;\n min-height: 0;\n }\n\n .image-item {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n }\n\n .title {\n height: 24px;\n font-size: 18px;\n margin: 0;\n padding: 0 4px;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n flex: 0 0 auto;\n white-space: nowrap;\n }\n\n h3 {\n margin: 0;\n max-width: 300px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n p {\n margin: 10px 0 0 0;\n max-width: 300px;\n font-size: 14px;\n line-height: 17px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .img-container {\n flex: 1;\n box-sizing: border-box;\n overflow: hidden;\n min-width: 0;\n min-height: 0;\n }\n\n img {\n width: 100%;\n height: 100%;\n object-fit: contain;\n }\n .no-data {\n font-size: 20px;\n display: flex;\n height: 100%;\n width: 100%;\n text-align: center;\n align-items: center;\n justify-content: center;\n }\n `\n\n render() {\n const images = this.getFilteredImages()\n\n const hasMultipleItems = images.length > 1\n const showTitles = images.filter((img) => img.label).length > 0\n const hasAnyImage = images.some((img) => img.imageUrl)\n\n return html`\n <div\n class=\"wrapper\"\n style=\"background-color: ${this.themeBgColor}; color: ${this\n .themeTitleColor}; gap: ${hasMultipleItems\n ? `${this.inputData?.gap ?? 12}px`\n : '0px'}; ${!hasMultipleItems ? 'flex-direction: column;' : ''}\"\n >\n ${!hasMultipleItems && this.inputData?.title\n ? html`\n <h3\n class=\"paging\"\n ?active=${this.inputData?.title}\n style=\"color: ${this.themeTitleColor};\"\n >\n ${this.inputData?.title}\n </h3>\n `\n : nothing}\n ${!hasMultipleItems && this.inputData?.subTitle\n ? html`\n <p\n class=\"paging\"\n ?active=${this.inputData?.subTitle}\n style=\"color: ${this.themeSubtitleColor};\"\n >\n ${this.inputData?.subTitle}\n </p>\n `\n : nothing}\n <div class=\"paging no-data\" ?active=${!hasAnyImage} style=\"color: ${this.themeTitleColor};\">\n No Image\n </div>\n ${repeat(\n images,\n (img) => img.imageUrl,\n (img) => html`\n <div\n class=\"image-item\"\n style=\"width: ${this.elementWidth}px; height: ${this.elementHeight}px;\"\n >\n ${showTitles\n ? html`<h2\n class=\"title\"\n style=\"${this.inputData?.labelFontSize\n ? `font-size: ${this.inputData.labelFontSize}px;`\n : ''}\"\n >\n ${img.label ?? ''}\n </h2>`\n : nothing}\n <div class=\"img-container paging\" ?active=\"${img.imageUrl}\">\n <img\n src=\"${ifDefined(img.imageUrl)}\"\n alt=\"${img.label || 'Image Widget'}\"\n style=\"object-fit: ${this.inputData?.stretchToFit ? 'fill' : 'contain'}\"\n />\n </div>\n </div>\n `\n )}\n </div>\n `\n }\n}\n"],"names":["t","e","s","o","n$3","r","n","i","S","c","h","a","l","p","d","u","f","b","y$1","y","v","_","m","g","$","x","T","E","A","C","P","V","N","H","I","L","k","M$1","R","z","M","Z","j","B","w","WidgetImage","LitElement","changedProperties","_changedProperties","theme","cssTextColor","cssBgColor","singleImageUrl","images","timeRangeStart","timeRangeEnd","img","timestamp","ts","numElements","rect","horizontalPadding","verticalPadding","containerWidth","containerHeight","layout","container","errorFn","gap","bestLayout","cols","rows","totalGapWidth","totalGapHeight","availableWidth","availableHeight","elementWidth","elementHeight","error","hasMultipleItems","showTitles","hasAnyImage","html","nothing","repeat","ifDefined","css","__decorateClass","property","state","query","customElement"],"mappings":"AAKA,MAAMA,IAAE,YAAWC,IAAED,EAAE,eAAsBA,EAAE,aAAX,UAAqBA,EAAE,SAAS,iBAAe,wBAAuB,SAAS,aAAW,aAAY,cAAc,WAAUE,IAAE,uBAAM,GAAGC,IAAE,oBAAI;AAAO,IAAAC,KAAC,MAAO;AAAA,EAAC,YAAY,GAAE,GAAED,GAAE;AAAC,QAAG,KAAK,eAAa,IAAGA,MAAID,EAAE,OAAM,MAAM,mEAAmE;AAAE,SAAK,UAAQ,GAAE,KAAK,IAAE;AAAA,EAAC;AAAA,EAAC,IAAI,aAAY;AAAC,QAAI,IAAE,KAAK;AAAE,UAAMA,IAAE,KAAK;AAAE,QAAGD,KAAY,MAAT,QAAW;AAAC,YAAMA,IAAWC,MAAT,UAAgBA,EAAE,WAAN;AAAa,MAAAD,MAAI,IAAEE,EAAE,IAAID,CAAC,IAAY,MAAT,YAAc,KAAK,IAAE,IAAE,IAAI,iBAAe,YAAY,KAAK,OAAO,GAAED,KAAGE,EAAE,IAAID,GAAE,CAAC;AAAA,IAAE;AAAC,WAAO;AAAA,EAAC;AAAA,EAAC,WAAU;AAAC,WAAO,KAAK;AAAA,EAAO;AAAC;AAAC,MAAMG,KAAE,CAAAL,MAAG,IAAIM,GAAY,OAAON,KAAjB,WAAmBA,IAAEA,IAAE,IAAG,QAAOE,CAAC,GAAEK,KAAE,CAACP,MAAKC,MAAI;AAAC,QAAME,IAAMH,EAAE,WAAN,IAAaA,EAAE,CAAC,IAAEC,EAAE,QAAQ,CAACA,GAAEC,GAAEC,MAAIF,KAAG,CAAAD,MAAG;AAAC,QAAQA,EAAE,iBAAP,GAAoB,QAAOA,EAAE;AAAQ,QAAa,OAAOA,KAAjB,SAAmB,QAAOA;AAAE,UAAM,MAAM,qEAAmEA,IAAE,sFAAsF;AAAA,EAAC,GAAGE,CAAC,IAAEF,EAAEG,IAAE,CAAC,IAAGH,EAAE,CAAC,CAAC;AAAE,SAAO,IAAIM,GAAEH,GAAEH,GAAEE,CAAC;AAAC,GAAEM,KAAE,CAACN,GAAEC,MAAI;AAAC,MAAGF,EAAE,CAAAC,EAAE,qBAAmBC,EAAE,KAAK,CAAAH,MAAGA,aAAa,gBAAcA,IAAEA,EAAE;MAAkB,YAAU,KAAKG,GAAE;AAAC,UAAMA,IAAE,SAAS,cAAc,OAAO,GAAEG,IAAEN,EAAE;AAAS,IAASM,MAAT,UAAYH,EAAE,aAAa,SAAQG,CAAC,GAAEH,EAAE,cAAY,EAAE,SAAQD,EAAE,YAAYC,CAAC;AAAA,EAAC;AAAC,GAAEM,KAAER,IAAE,CAAAD,MAAGA,IAAE,CAAAA,MAAGA,aAAa,iBAAe,OAAG;AAAC,MAAI,IAAE;AAAG,aAAU,KAAK,EAAE,SAAS,MAAG,EAAE;AAAQ,SAAOK,GAAE,CAAC;AAAC,GAAGL,CAAC,IAAEA;ACAxzC,MAAK,EAAC,IAAGO,IAAE,gBAAeN,IAAE,0BAAyBS,IAAE,qBAAoBL,IAAE,uBAAsBF,IAAE,gBAAeG,GAAC,IAAE,QAAOK,IAAE,YAAWF,KAAEE,EAAE,cAAaC,KAAEH,KAAEA,GAAE,cAAY,IAAGI,KAAEF,EAAE,gCAA+BG,IAAE,CAACd,GAAEE,MAAIF,GAAEe,IAAE,EAAC,YAAYf,GAAEE,GAAE;AAAC,UAAOA,GAAC;AAAA,IAAE,KAAK;AAAQ,MAAAF,IAAEA,IAAEY,KAAE;AAAK;AAAA,IAAM,KAAK;AAAA,IAAO,KAAK;AAAM,MAAAZ,IAAQA,KAAN,OAAQA,IAAE,KAAK,UAAUA,CAAC;AAAA,EAAC;AAAC,SAAOA;AAAC,GAAE,cAAcA,GAAEE,GAAE;AAAC,MAAIK,IAAEP;AAAE,UAAOE;IAAG,KAAK;AAAQ,MAAAK,IAASP,MAAP;AAAS;AAAA,IAAM,KAAK;AAAO,MAAAO,IAASP,MAAP,OAAS,OAAK,OAAOA,CAAC;AAAE;AAAA,IAAM,KAAK;AAAA,IAAO,KAAK;AAAM,UAAG;AAAC,QAAAO,IAAE,KAAK,MAAMP,CAAC;AAAA,MAAC,QAAS;AAAC,QAAAO,IAAE;AAAA,MAAI;AAAA,EAAC;AAAC,SAAOA;AAAC,EAAC,GAAES,IAAE,CAAChB,GAAEE,MAAI,CAACK,GAAEP,GAAEE,CAAC,GAAEe,KAAE,EAAC,WAAU,IAAG,MAAK,QAAO,WAAUF,GAAE,SAAQ,IAAG,YAAW,IAAG,YAAWC,EAAC;AAAE,OAAO,aAAW,uBAAO,UAAU,GAAEL,EAAE,wBAAsB,oBAAI;AAAO,IAAAO,IAAC,cAAgB,YAAW;AAAA,EAAC,OAAO,eAAe,GAAE;AAAC,SAAK,KAAI,IAAI,KAAK,MAAI,CAAA,GAAI,KAAK,CAAC;AAAA,EAAC;AAAA,EAAC,WAAW,qBAAoB;AAAC,WAAO,KAAK,SAAQ,GAAG,KAAK,QAAM,CAAC,GAAG,KAAK,KAAK,KAAI,CAAE;AAAA,EAAC;AAAA,EAAC,OAAO,eAAe,GAAEhB,IAAEe,IAAE;AAAC,QAAGf,EAAE,UAAQA,EAAE,YAAU,KAAI,KAAK,KAAI,GAAG,KAAK,UAAU,eAAe,CAAC,OAAKA,IAAE,OAAO,OAAOA,CAAC,GAAG,UAAQ,KAAI,KAAK,kBAAkB,IAAI,GAAEA,CAAC,GAAE,CAACA,EAAE,YAAW;AAAC,YAAMK,IAAE,uBAAM,GAAGG,IAAE,KAAK,sBAAsB,GAAEH,GAAEL,CAAC;AAAE,MAASQ,MAAT,UAAYT,GAAE,KAAK,WAAU,GAAES,CAAC;AAAA,IAAC;AAAA,EAAC;AAAA,EAAC,OAAO,sBAAsB,GAAER,GAAEK,GAAE;AAAC,UAAK,EAAC,KAAIN,GAAE,KAAII,EAAC,IAAEK,GAAE,KAAK,WAAU,CAAC,KAAG,EAAC,MAAK;AAAC,aAAO,KAAKR,CAAC;AAAA,IAAC,GAAE,IAAIF,GAAE;AAAC,WAAKE,CAAC,IAAEF;AAAA,IAAC,EAAC;AAAE,WAAM,EAAC,KAAIC,GAAE,IAAIC,GAAE;AAAC,YAAMQ,IAAET,GAAG,KAAK,IAAI;AAAE,MAAAI,GAAG,KAAK,MAAKH,CAAC,GAAE,KAAK,cAAc,GAAEQ,GAAEH,CAAC;AAAA,IAAC,GAAE,cAAa,IAAG,YAAW,GAAE;AAAA,EAAC;AAAA,EAAC,OAAO,mBAAmB,GAAE;AAAC,WAAO,KAAK,kBAAkB,IAAI,CAAC,KAAGU;AAAA,EAAC;AAAA,EAAC,OAAO,OAAM;AAAC,QAAG,KAAK,eAAeH,EAAE,mBAAmB,CAAC,EAAE;AAAO,UAAM,IAAER,GAAE,IAAI;AAAE,MAAE,SAAQ,GAAY,EAAE,MAAX,WAAe,KAAK,IAAE,CAAC,GAAG,EAAE,CAAC,IAAG,KAAK,oBAAkB,IAAI,IAAI,EAAE,iBAAiB;AAAA,EAAC;AAAA,EAAC,OAAO,WAAU;AAAC,QAAG,KAAK,eAAeQ,EAAE,WAAW,CAAC,EAAE;AAAO,QAAG,KAAK,YAAU,IAAG,KAAK,KAAI,GAAG,KAAK,eAAeA,EAAE,YAAY,CAAC,GAAE;AAAC,YAAMd,IAAE,KAAK,YAAW,IAAE,CAAC,GAAGK,GAAEL,CAAC,GAAE,GAAGG,GAAEH,CAAC,CAAC;AAAE,iBAAU,KAAK,EAAE,MAAK,eAAe,GAAEA,EAAE,CAAC,CAAC;AAAA,IAAC;AAAC,UAAM,IAAE,KAAK,OAAO,QAAQ;AAAE,QAAU,MAAP,MAAS;AAAC,YAAME,IAAE,oBAAoB,IAAI,CAAC;AAAE,UAAYA,MAAT,OAAW,YAAS,CAACF,GAAE,CAAC,KAAIE,EAAE,MAAK,kBAAkB,IAAIF,GAAE,CAAC;AAAA,IAAC;AAAC,SAAK,OAAK,oBAAI;AAAI,eAAS,CAACA,GAAE,CAAC,KAAI,KAAK,mBAAkB;AAAC,YAAM,IAAE,KAAK,KAAKA,GAAE,CAAC;AAAE,MAAS,MAAT,UAAY,KAAK,KAAK,IAAI,GAAEA,CAAC;AAAA,IAAC;AAAC,SAAK,gBAAc,KAAK,eAAe,KAAK,MAAM;AAAA,EAAC;AAAA,EAAC,OAAO,eAAeE,GAAE;AAAC,UAAMK,IAAE,CAAA;AAAG,QAAG,MAAM,QAAQL,CAAC,GAAE;AAAC,YAAMD,IAAE,IAAI,IAAIC,EAAE,KAAK,KAAG,EAAE,QAAO,CAAE;AAAE,iBAAUA,KAAKD,EAAE,CAAAM,EAAE,QAAQP,GAAEE,CAAC,CAAC;AAAA,IAAC,MAAM,CAASA,MAAT,UAAYK,EAAE,KAAKP,GAAEE,CAAC,CAAC;AAAE,WAAOK;AAAA,EAAC;AAAA,EAAC,OAAO,KAAK,GAAEL,GAAE;AAAC,UAAMK,IAAEL,EAAE;AAAU,WAAWK,MAAL,KAAO,SAAiB,OAAOA,KAAjB,WAAmBA,IAAY,OAAO,KAAjB,WAAmB,EAAE,YAAW,IAAG;AAAA,EAAM;AAAA,EAAC,cAAa;AAAC,UAAK,GAAG,KAAK,OAAK,QAAO,KAAK,kBAAgB,IAAG,KAAK,aAAW,IAAG,KAAK,OAAK,MAAK,KAAK,KAAI;AAAA,EAAE;AAAA,EAAC,OAAM;AAAC,SAAK,OAAK,IAAI,SAAS,OAAG,KAAK,iBAAe,EAAC,GAAG,KAAK,OAAK,oBAAI,OAAI,KAAK,KAAI,GAAG,KAAK,cAAa,GAAG,KAAK,YAAY,GAAG,SAAS,OAAG,EAAE,IAAI,EAAC;AAAA,EAAE;AAAA,EAAC,cAAc,GAAE;AAAC,KAAC,KAAK,SAAO,oBAAI,OAAK,IAAI,CAAC,GAAW,KAAK,eAAd,UAA0B,KAAK,eAAa,EAAE,gBAAa;AAAA,EAAI;AAAA,EAAC,iBAAiB,GAAE;AAAC,SAAK,MAAM,OAAO,CAAC;AAAA,EAAC;AAAA,EAAC,OAAM;AAAC,UAAM,IAAE,oBAAI,OAAIL,IAAE,KAAK,YAAY;AAAkB,eAAUK,KAAKL,EAAE,KAAI,EAAG,MAAK,eAAeK,CAAC,MAAI,EAAE,IAAIA,GAAE,KAAKA,CAAC,CAAC,GAAE,OAAO,KAAKA,CAAC;AAAG,MAAE,OAAK,MAAI,KAAK,OAAK;AAAA,EAAE;AAAA,EAAC,mBAAkB;AAAC,UAAM,IAAE,KAAK,cAAY,KAAK,aAAa,KAAK,YAAY,iBAAiB;AAAE,WAAOL,GAAE,GAAE,KAAK,YAAY,aAAa,GAAE;AAAA,EAAC;AAAA,EAAC,oBAAmB;AAAC,SAAK,eAAa,KAAK,iBAAgB,GAAG,KAAK,eAAe,EAAE,GAAE,KAAK,MAAM,SAAS,OAAG,EAAE,gBAAa,EAAI;AAAA,EAAE;AAAA,EAAC,eAAe,GAAE;AAAA,EAAC;AAAA,EAAC,uBAAsB;AAAC,SAAK,MAAM,SAAS,OAAG,EAAE,qBAAoB;AAAA,EAAE;AAAA,EAAC,yBAAyB,GAAEA,GAAEK,GAAE;AAAC,SAAK,KAAK,GAAEA,CAAC;AAAA,EAAC;AAAA,EAAC,KAAK,GAAEL,GAAE;AAAC,UAAMK,IAAE,KAAK,YAAY,kBAAkB,IAAI,CAAC,GAAEN,IAAE,KAAK,YAAY,KAAK,GAAEM,CAAC;AAAE,QAAYN,MAAT,UAAiBM,EAAE,YAAP,IAAe;AAAC,YAAMG,KAAYH,EAAE,WAAW,gBAAtB,SAAkCA,EAAE,YAAUQ,GAAG,YAAYb,GAAEK,EAAE,IAAI;AAAE,WAAK,OAAK,GAAQG,KAAN,OAAQ,KAAK,gBAAgBT,CAAC,IAAE,KAAK,aAAaA,GAAES,CAAC,GAAE,KAAK,OAAK;AAAA,IAAI;AAAA,EAAC;AAAA,EAAC,KAAK,GAAER,GAAE;AAAC,UAAMK,IAAE,KAAK,aAAYN,IAAEM,EAAE,KAAK,IAAI,CAAC;AAAE,QAAYN,MAAT,UAAY,KAAK,SAAOA,GAAE;AAAC,YAAMD,IAAEO,EAAE,mBAAmBN,CAAC,GAAES,IAAc,OAAOV,EAAE,aAArB,aAA+B,EAAC,eAAcA,EAAE,UAAS,IAAWA,EAAE,WAAW,kBAAtB,SAAoCA,EAAE,YAAUe;AAAE,WAAK,OAAKd,GAAE,KAAKA,CAAC,IAAES,EAAE,cAAcR,GAAEF,EAAE,IAAI,KAAG,KAAK,MAAM,IAAIC,CAAC,KAAG,MAAK,KAAK,OAAK;AAAA,IAAI;AAAA,EAAC;AAAA,EAAC,cAAc,GAAEC,GAAEK,GAAE;AAAC,QAAY,MAAT,QAAW;AAAC,YAAMN,IAAE,KAAK,aAAYS,IAAE,KAAK,CAAC;AAAE,UAAGH,MAAIN,EAAE,mBAAmB,CAAC,GAAE,GAAGM,EAAE,cAAYS,GAAGN,GAAER,CAAC,KAAGK,EAAE,cAAYA,EAAE,WAASG,MAAI,KAAK,MAAM,IAAI,CAAC,KAAG,CAAC,KAAK,aAAaT,EAAE,KAAK,GAAEM,CAAC,CAAC,GAAG;AAAO,WAAK,EAAE,GAAEL,GAAEK,CAAC;AAAA,IAAC;AAAC,IAAK,KAAK,oBAAV,OAA4B,KAAK,OAAK,KAAK,KAAI;AAAA,EAAG;AAAA,EAAC,EAAE,GAAEL,GAAE,EAAC,YAAWK,GAAE,SAAQN,GAAE,SAAQS,EAAC,GAAEL,GAAE;AAAC,IAAAE,KAAG,EAAE,KAAK,SAAO,oBAAI,OAAK,IAAI,CAAC,MAAI,KAAK,KAAK,IAAI,GAAEF,KAAGH,KAAG,KAAK,CAAC,CAAC,GAAOQ,MAAL,MAAiBL,MAAT,YAAc,KAAK,KAAK,IAAI,CAAC,MAAI,KAAK,cAAYE,MAAIL,IAAE,SAAQ,KAAK,KAAK,IAAI,GAAEA,CAAC,IAAQD,MAAL,MAAQ,KAAK,SAAO,MAAI,KAAK,SAAO,oBAAI,OAAK,IAAI,CAAC;AAAA,EAAE;AAAA,EAAC,MAAM,OAAM;AAAC,SAAK,kBAAgB;AAAG,QAAG;AAAC,YAAM,KAAK;AAAA,IAAI,SAAOD,GAAE;AAAC,cAAQ,OAAOA,CAAC;AAAA,IAAC;AAAC,UAAM,IAAE,KAAK;AAAiB,WAAa,KAAN,QAAS,MAAM,GAAE,CAAC,KAAK;AAAA,EAAe;AAAA,EAAC,iBAAgB;AAAC,WAAO,KAAK,cAAa;AAAA,EAAE;AAAA,EAAC,gBAAe;AAAC,QAAG,CAAC,KAAK,gBAAgB;AAAO,QAAG,CAAC,KAAK,YAAW;AAAC,UAAG,KAAK,eAAa,KAAK,iBAAgB,GAAG,KAAK,MAAK;AAAC,mBAAS,CAACA,GAAEE,CAAC,KAAI,KAAK,KAAK,MAAKF,CAAC,IAAEE;AAAE,aAAK,OAAK;AAAA,MAAM;AAAC,YAAMF,IAAE,KAAK,YAAY;AAAkB,UAAGA,EAAE,OAAK,EAAE,YAAS,CAACE,GAAEK,CAAC,KAAIP,GAAE;AAAC,cAAK,EAAC,SAAQA,EAAC,IAAEO,GAAEN,IAAE,KAAKC,CAAC;AAAE,QAAKF,MAAL,MAAQ,KAAK,KAAK,IAAIE,CAAC,KAAYD,MAAT,UAAY,KAAK,EAAEC,GAAE,QAAOK,GAAEN,CAAC;AAAA,MAAC;AAAA,IAAC;AAAC,QAAI,IAAE;AAAG,UAAMC,IAAE,KAAK;AAAK,QAAG;AAAC,UAAE,KAAK,aAAaA,CAAC,GAAE,KAAG,KAAK,WAAWA,CAAC,GAAE,KAAK,MAAM,SAAS,CAAAF,MAAGA,EAAE,aAAU,EAAI,GAAG,KAAK,OAAOE,CAAC,KAAG,KAAK,KAAI;AAAA,IAAE,SAAO,GAAE;AAAC,YAAM,IAAE,IAAG,KAAK,KAAI,GAAG;AAAA,IAAC;AAAC,SAAG,KAAK,KAAKA,CAAC;AAAA,EAAC;AAAA,EAAC,WAAW,GAAE;AAAA,EAAC;AAAA,EAAC,KAAK,GAAE;AAAC,SAAK,MAAM,SAAS,CAAAF,MAAGA,EAAE,cAAW,EAAI,GAAG,KAAK,eAAa,KAAK,aAAW,IAAG,KAAK,aAAa,CAAC,IAAG,KAAK,QAAQ,CAAC;AAAA,EAAC;AAAA,EAAC,OAAM;AAAC,SAAK,OAAK,oBAAI,OAAI,KAAK,kBAAgB;AAAA,EAAE;AAAA,EAAC,IAAI,iBAAgB;AAAC,WAAO,KAAK,kBAAiB;AAAA,EAAE;AAAA,EAAC,oBAAmB;AAAC,WAAO,KAAK;AAAA,EAAI;AAAA,EAAC,aAAa,GAAE;AAAC,WAAM;AAAA,EAAE;AAAA,EAAC,OAAO,GAAE;AAAC,SAAK,SAAO,KAAK,KAAK,SAAS,CAAAA,MAAG,KAAK,KAAKA,GAAE,KAAKA,CAAC,CAAC,EAAC,GAAG,KAAK,KAAI;AAAA,EAAE;AAAA,EAAC,QAAQ,GAAE;AAAA,EAAC;AAAA,EAAC,aAAa,GAAE;AAAA,EAAC;AAAC;AAACmB,EAAE,gBAAc,CAAA,GAAGA,EAAE,oBAAkB,EAAC,MAAK,OAAM,GAAEA,EAAEL,EAAE,mBAAmB,CAAC,IAAE,oBAAI,OAAIK,EAAEL,EAAE,WAAW,CAAC,IAAE,oBAAI,OAAID,KAAI,EAAC,iBAAgBM,EAAC,CAAC,IAAGR,EAAE,4BAA0B,CAAA,GAAI,KAAK,OAAO;ACAjxL,MAACX,IAAE,YAAWO,IAAEP,EAAE,cAAaE,KAAEK,IAAEA,EAAE,aAAa,YAAW,EAAC,YAAW,CAAAP,MAAGA,EAAC,CAAC,IAAE,QAAOC,KAAE,SAAQS,IAAE,OAAO,KAAK,OAAM,EAAG,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,KAAIP,KAAE,MAAIO,GAAEJ,KAAE,IAAIH,EAAC,KAAIE,IAAE,UAASO,IAAE,MAAIP,EAAE,cAAc,EAAE,GAAEI,IAAE,CAAAT,MAAUA,MAAP,QAAoB,OAAOA,KAAjB,YAAgC,OAAOA,KAAnB,YAAqBW,IAAE,MAAM,SAAQI,KAAE,CAAAf,MAAGW,EAAEX,CAAC,KAAe,OAAOA,IAAI,OAAO,QAAQ,KAAtC,YAAwCc,IAAE;AAAA,QAAcE,IAAE,uDAAsDI,KAAE,QAAOC,KAAE,MAAKC,IAAE,OAAO,KAAKR,CAAC,qBAAqBA,CAAC,KAAKA,CAAC;AAAA,2BAAsC,GAAG,GAAED,KAAE,MAAKU,KAAE,MAAKC,KAAE,sCAAqCL,KAAE,CAAAnB,MAAG,CAACO,MAAKL,OAAK,EAAC,YAAWF,GAAE,SAAQO,GAAE,QAAOL,EAAC,IAAGuB,IAAEN,GAAE,CAAC,GAAgBO,IAAE,uBAAO,IAAI,cAAc,GAAEC,IAAE,uBAAO,IAAI,aAAa,GAAEC,KAAE,oBAAI,WAAQC,IAAExB,EAAE,iBAAiBA,GAAE,GAAG;AAAE,SAASyB,GAAE9B,GAAEO,GAAE;AAAC,MAAG,CAACI,EAAEX,CAAC,KAAG,CAACA,EAAE,eAAe,KAAK,EAAE,OAAM,MAAM,gCAAgC;AAAE,SAAgBE,OAAT,SAAWA,GAAE,WAAWK,CAAC,IAAEA;AAAC;AAAC,MAAMwB,KAAE,CAAC/B,GAAEO,MAAI;AAAC,QAAML,IAAEF,EAAE,SAAO,GAAEG,IAAE,CAAA;AAAG,MAAIE,GAAEO,IAAML,MAAJ,IAAM,UAAYA,MAAJ,IAAM,WAAS,IAAGE,IAAEO;AAAE,WAAQT,IAAE,GAAEA,IAAEL,GAAEK,KAAI;AAAC,UAAML,IAAEF,EAAEO,CAAC;AAAE,QAAII,GAAE,GAAEG,IAAE,IAAGK,IAAE;AAAE,WAAKA,IAAEjB,EAAE,WAASO,EAAE,YAAUU,GAAE,IAAEV,EAAE,KAAKP,CAAC,GAAS,MAAP,QAAW,CAAAiB,IAAEV,EAAE,WAAUA,MAAIO,IAAU,EAAE,CAAC,MAAX,QAAaP,IAAEW,KAAW,EAAE,CAAC,MAAZ,SAAcX,IAAEY,KAAW,EAAE,CAAC,MAAZ,UAAeG,GAAE,KAAK,EAAE,CAAC,CAAC,MAAInB,IAAE,OAAO,OAAK,EAAE,CAAC,GAAE,GAAG,IAAGI,IAAEa,KAAY,EAAE,CAAC,MAAZ,WAAgBb,IAAEa,KAAGb,MAAIa,IAAQ,EAAE,CAAC,MAAT,OAAYb,IAAEJ,KAAGW,GAAEF,IAAE,MAAa,EAAE,CAAC,MAAZ,SAAcA,IAAE,MAAIA,IAAEL,EAAE,YAAU,EAAE,CAAC,EAAE,QAAOE,IAAE,EAAE,CAAC,GAAEF,IAAW,EAAE,CAAC,MAAZ,SAAca,IAAQ,EAAE,CAAC,MAAT,MAAWC,KAAEV,MAAGJ,MAAIc,MAAGd,MAAII,KAAEJ,IAAEa,IAAEb,MAAIW,MAAGX,MAAIY,KAAEZ,IAAEO,KAAGP,IAAEa,GAAEjB,IAAE;AAAQ,UAAMoB,IAAEhB,MAAIa,KAAGtB,EAAEO,IAAE,CAAC,EAAE,WAAW,IAAI,IAAE,MAAI;AAAG,IAAAK,KAAGH,MAAIO,IAAEd,IAAEI,KAAEQ,KAAG,KAAGX,EAAE,KAAKQ,CAAC,GAAET,EAAE,MAAM,GAAEY,CAAC,IAAEb,KAAEC,EAAE,MAAMY,CAAC,IAAEJ,IAAEe,KAAGvB,IAAEQ,KAAQI,MAAL,KAAOP,IAAEkB;AAAA,EAAE;AAAC,SAAM,CAACK,GAAE9B,GAAEY,KAAGZ,EAAEE,CAAC,KAAG,UAAYK,MAAJ,IAAM,WAAaA,MAAJ,IAAM,YAAU,GAAG,GAAEJ,CAAC;AAAC;AAAE,MAAM6B,EAAC;AAAA,EAAC,YAAY,EAAC,SAAQ,GAAE,YAAW9B,EAAC,GAAEI,GAAE;AAAC,QAAID;AAAE,SAAK,QAAM,CAAA;AAAG,QAAII,IAAE,GAAEE,IAAE;AAAE,UAAMI,IAAE,EAAE,SAAO,GAAED,IAAE,KAAK,OAAM,CAACE,GAAEI,CAAC,IAAEW,GAAE,GAAE7B,CAAC;AAAE,QAAG,KAAK,KAAG8B,EAAE,cAAchB,GAAEV,CAAC,GAAEuB,EAAE,cAAY,KAAK,GAAG,SAAY3B,MAAJ,KAAWA,MAAJ,GAAM;AAAC,YAAMF,IAAE,KAAK,GAAG,QAAQ;AAAW,MAAAA,EAAE,YAAY,GAAGA,EAAE,UAAU;AAAA,IAAC;AAAC,YAAaK,IAAEwB,EAAE,gBAAZ,QAAyBf,EAAE,SAAOC,KAAG;AAAC,UAAOV,EAAE,aAAN,GAAe;AAAC,YAAGA,EAAE,gBAAgB,YAAUL,KAAKK,EAAE,kBAAiB,EAAG,KAAGL,EAAE,SAASC,EAAC,GAAE;AAAC,gBAAMM,IAAEa,EAAET,GAAG,GAAET,IAAEG,EAAE,aAAaL,CAAC,EAAE,MAAMU,CAAC,GAAET,IAAE,eAAe,KAAKM,CAAC;AAAE,UAAAO,EAAE,KAAK,EAAC,MAAK,GAAE,OAAML,GAAE,MAAKR,EAAE,CAAC,GAAE,SAAQC,GAAE,MAAWD,EAAE,CAAC,MAAT,MAAWgC,KAAQhC,EAAE,CAAC,MAAT,MAAWiC,KAAQjC,EAAE,CAAC,MAAT,MAAWkC,KAAEC,EAAC,CAAC,GAAE/B,EAAE,gBAAgBL,CAAC;AAAA,QAAC,MAAM,CAAAA,EAAE,WAAWU,CAAC,MAAII,EAAE,KAAK,EAAC,MAAK,GAAE,OAAML,EAAC,CAAC,GAAEJ,EAAE,gBAAgBL,CAAC;AAAG,YAAGwB,GAAE,KAAKnB,EAAE,OAAO,GAAE;AAAC,gBAAML,IAAEK,EAAE,YAAY,MAAMK,CAAC,GAAER,IAAEF,EAAE,SAAO;AAAE,cAAGE,IAAE,GAAE;AAAC,YAAAG,EAAE,cAAYE,IAAEA,EAAE,cAAY;AAAG,qBAAQA,IAAE,GAAEA,IAAEL,GAAEK,IAAI,CAAAF,EAAE,OAAOL,EAAEO,CAAC,GAAEK,GAAG,GAAEiB,EAAE,YAAWf,EAAE,KAAK,EAAC,MAAK,GAAE,OAAM,EAAEL,EAAC,CAAC;AAAE,YAAAJ,EAAE,OAAOL,EAAEE,CAAC,GAAEU,EAAC,CAAE;AAAA,UAAC;AAAA,QAAC;AAAA,MAAC,WAAaP,EAAE,aAAN,EAAe,KAAGA,EAAE,SAAOF,GAAE,CAAAW,EAAE,KAAK,EAAC,MAAK,GAAE,OAAML,EAAC,CAAC;AAAA,WAAM;AAAC,YAAIT,IAAE;AAAG,gBAAWA,IAAEK,EAAE,KAAK,QAAQK,GAAEV,IAAE,CAAC,OAA5B,KAAgC,CAAAc,EAAE,KAAK,EAAC,MAAK,GAAE,OAAML,EAAC,CAAC,GAAET,KAAGU,EAAE,SAAO;AAAA,MAAC;AAAC,MAAAD;AAAA,IAAG;AAAA,EAAC;AAAA,EAAC,OAAO,cAAc,GAAEF,GAAE;AAAC,UAAM,IAAEF,EAAE,cAAc,UAAU;AAAE,WAAO,EAAE,YAAU,GAAE;AAAA,EAAC;AAAC;AAAC,SAASG,EAAER,GAAEO,GAAEL,IAAEF,GAAEC,GAAE;AAAC,MAAGM,MAAImB,EAAE,QAAOnB;AAAE,MAAIG,IAAWT,MAAT,SAAWC,EAAE,OAAOD,CAAC,IAAEC,EAAE;AAAK,QAAMC,IAAEM,EAAEF,CAAC,IAAE,SAAOA,EAAE;AAAgB,SAAOG,GAAG,gBAAcP,MAAIO,GAAG,OAAO,EAAE,GAAWP,MAAT,SAAWO,IAAE,UAAQA,IAAE,IAAIP,EAAEH,CAAC,GAAEU,EAAE,KAAKV,GAAEE,GAAED,CAAC,IAAYA,MAAT,UAAYC,EAAE,SAAO,CAAA,GAAID,CAAC,IAAES,IAAER,EAAE,OAAKQ,IAAYA,MAAT,WAAaH,IAAEC,EAAER,GAAEU,EAAE,KAAKV,GAAEO,EAAE,MAAM,GAAEG,GAAET,CAAC,IAAGM;AAAC;AAAA,IAAA8B,KAAC,MAAO;AAAA,EAAC,YAAY,GAAE9B,GAAE;AAAC,SAAK,OAAK,CAAA,GAAG,KAAK,OAAK,QAAO,KAAK,OAAK,GAAE,KAAK,OAAKA;AAAA,EAAC;AAAA,EAAC,IAAI,aAAY;AAAC,WAAO,KAAK,KAAK;AAAA,EAAU;AAAA,EAAC,IAAI,OAAM;AAAC,WAAO,KAAK,KAAK;AAAA,EAAI;AAAA,EAAC,EAAE,GAAE;AAAC,UAAK,EAAC,IAAG,EAAC,SAAQA,EAAC,GAAE,OAAM,EAAC,IAAE,KAAK,MAAKN,KAAG,GAAG,iBAAeI,GAAG,WAAWE,GAAE,EAAE;AAAE,IAAAsB,EAAE,cAAY5B;AAAE,QAAIS,IAAEmB,EAAE,SAAQ,GAAG,IAAE,GAAEvB,IAAE,GAAEM,IAAE,EAAE,CAAC;AAAE,WAAcA,MAAT,UAAY;AAAC,UAAG,MAAIA,EAAE,OAAM;AAAC,YAAIL;AAAE,QAAIK,EAAE,SAAN,IAAWL,IAAE,IAAI+B,EAAE5B,GAAEA,EAAE,aAAY,MAAK,CAAC,IAAME,EAAE,SAAN,IAAWL,IAAE,IAAIK,EAAE,KAAKF,GAAEE,EAAE,MAAKA,EAAE,SAAQ,MAAK,CAAC,IAAMA,EAAE,SAAN,MAAaL,IAAE,IAAIgC,GAAE7B,GAAE,MAAK,CAAC,IAAG,KAAK,KAAK,KAAKH,CAAC,GAAEK,IAAE,EAAE,EAAEN,CAAC;AAAA,MAAC;AAAC,YAAIM,GAAG,UAAQF,IAAEmB,EAAE,YAAW;AAAA,IAAI;AAAC,WAAOA,EAAE,cAAYxB,GAAEJ;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,QAAIM,IAAE;AAAE,eAAU,KAAK,KAAK,KAAK,CAAS,MAAT,WAAsB,EAAE,YAAX,UAAoB,EAAE,KAAK,GAAE,GAAEA,CAAC,GAAEA,KAAG,EAAE,QAAQ,SAAO,KAAG,EAAE,KAAK,EAAEA,CAAC,CAAC,IAAGA;AAAA,EAAG;AAAC;AAAC,MAAM+B,EAAC;AAAA,EAAC,IAAI,OAAM;AAAC,WAAO,KAAK,MAAM,QAAM,KAAK;AAAA,EAAI;AAAA,EAAC,YAAY,GAAE/B,GAAE,GAAEN,GAAE;AAAC,SAAK,OAAK,GAAE,KAAK,OAAK0B,GAAE,KAAK,OAAK,QAAO,KAAK,OAAK,GAAE,KAAK,OAAKpB,GAAE,KAAK,OAAK,GAAE,KAAK,UAAQN,GAAE,KAAK,OAAKA,GAAG,eAAa;AAAA,EAAE;AAAA,EAAC,IAAI,aAAY;AAAC,QAAI,IAAE,KAAK,KAAK;AAAW,UAAMM,IAAE,KAAK;AAAK,WAAgBA,MAAT,UAAiB,GAAG,aAAR,OAAmB,IAAEA,EAAE,aAAY;AAAA,EAAC;AAAA,EAAC,IAAI,YAAW;AAAC,WAAO,KAAK;AAAA,EAAI;AAAA,EAAC,IAAI,UAAS;AAAC,WAAO,KAAK;AAAA,EAAI;AAAA,EAAC,KAAK,GAAEA,IAAE,MAAK;AAAC,QAAEC,EAAE,MAAK,GAAED,CAAC,GAAEE,EAAE,CAAC,IAAE,MAAIkB,KAAS,KAAN,QAAc,MAAL,MAAQ,KAAK,SAAOA,KAAG,KAAK,KAAI,GAAG,KAAK,OAAKA,KAAG,MAAI,KAAK,QAAM,MAAID,KAAG,KAAK,EAAE,CAAC,IAAW,EAAE,eAAX,SAAsB,KAAK,EAAE,CAAC,IAAW,EAAE,aAAX,SAAoB,KAAK,EAAE,CAAC,IAAEX,GAAE,CAAC,IAAE,KAAK,EAAE,CAAC,IAAE,KAAK,EAAE,CAAC;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,WAAO,KAAK,KAAK,WAAW,aAAa,GAAE,KAAK,IAAI;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,SAAK,SAAO,MAAI,KAAK,KAAI,GAAG,KAAK,OAAK,KAAK,EAAE,CAAC;AAAA,EAAE;AAAA,EAAC,EAAE,GAAE;AAAC,SAAK,SAAOY,KAAGlB,EAAE,KAAK,IAAI,IAAE,KAAK,KAAK,YAAY,OAAK,IAAE,KAAK,EAAEJ,EAAE,eAAe,CAAC,CAAC,GAAE,KAAK,OAAK;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,UAAK,EAAC,QAAOE,GAAE,YAAW,EAAC,IAAE,GAAEN,IAAY,OAAO,KAAjB,WAAmB,KAAK,KAAK,CAAC,KAAY,EAAE,OAAX,WAAgB,EAAE,KAAG+B,EAAE,cAAcF,GAAE,EAAE,GAAE,EAAE,EAAE,CAAC,CAAC,GAAE,KAAK,OAAO,IAAG;AAAG,QAAG,KAAK,MAAM,SAAO7B,EAAE,MAAK,KAAK,EAAEM,CAAC;AAAA,SAAM;AAAC,YAAMP,IAAE,IAAIwC,GAAEvC,GAAE,IAAI,GAAEC,IAAEF,EAAE,EAAE,KAAK,OAAO;AAAE,MAAAA,EAAE,EAAEO,CAAC,GAAE,KAAK,EAAEL,CAAC,GAAE,KAAK,OAAKF;AAAA,IAAC;AAAA,EAAC;AAAA,EAAC,KAAK,GAAE;AAAC,QAAIO,IAAEqB,GAAE,IAAI,EAAE,OAAO;AAAE,WAAgBrB,MAAT,UAAYqB,GAAE,IAAI,EAAE,SAAQrB,IAAE,IAAIyB,EAAE,CAAC,CAAC,GAAEzB;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,IAAAI,EAAE,KAAK,IAAI,MAAI,KAAK,OAAK,CAAA,GAAG,KAAK,KAAI;AAAI,UAAMJ,IAAE,KAAK;AAAK,QAAI,GAAEN,IAAE;AAAE,eAAUS,KAAK,EAAE,CAAAT,MAAIM,EAAE,SAAOA,EAAE,KAAK,IAAE,IAAI+B,EAAE,KAAK,EAAE1B,EAAC,CAAE,GAAE,KAAK,EAAEA,EAAC,CAAE,GAAE,MAAK,KAAK,OAAO,CAAC,IAAE,IAAEL,EAAEN,CAAC,GAAE,EAAE,KAAKS,CAAC,GAAET;AAAI,IAAAA,IAAEM,EAAE,WAAS,KAAK,KAAK,KAAG,EAAE,KAAK,aAAYN,CAAC,GAAEM,EAAE,SAAON;AAAA,EAAE;AAAA,EAAC,KAAK,IAAE,KAAK,KAAK,aAAYM,GAAE;AAAC,SAAI,KAAK,OAAO,IAAG,IAAGA,CAAC,GAAE,KAAG,MAAI,KAAK,QAAM;AAAC,YAAMA,IAAE,EAAE;AAAY,QAAE,OAAM,GAAG,IAAEA;AAAA,IAAC;AAAA,EAAC;AAAA,EAAC,aAAa,GAAE;AAAC,IAAS,KAAK,SAAd,WAAqB,KAAK,OAAK,GAAE,KAAK,OAAO,CAAC;AAAA,EAAE;AAAC;AAAC,MAAM6B,EAAC;AAAA,EAAC,IAAI,UAAS;AAAC,WAAO,KAAK,QAAQ;AAAA,EAAO;AAAA,EAAC,IAAI,OAAM;AAAC,WAAO,KAAK,KAAK;AAAA,EAAI;AAAA,EAAC,YAAY,GAAE7B,GAAE,GAAEN,GAAES,GAAE;AAAC,SAAK,OAAK,GAAE,KAAK,OAAKiB,GAAE,KAAK,OAAK,QAAO,KAAK,UAAQ,GAAE,KAAK,OAAKpB,GAAE,KAAK,OAAKN,GAAE,KAAK,UAAQS,GAAE,EAAE,SAAO,KAAQ,EAAE,CAAC,MAAR,MAAgB,EAAE,CAAC,MAAR,MAAW,KAAK,OAAK,MAAM,EAAE,SAAO,CAAC,EAAE,KAAK,IAAI,QAAM,GAAE,KAAK,UAAQ,KAAG,KAAK,OAAKiB;AAAA,EAAC;AAAA,EAAC,KAAK,GAAEpB,IAAE,MAAK,GAAEN,GAAE;AAAC,UAAMS,IAAE,KAAK;AAAQ,QAAI,IAAE;AAAG,QAAYA,MAAT,OAAW,KAAEF,EAAE,MAAK,GAAED,GAAE,CAAC,GAAE,IAAE,CAACE,EAAE,CAAC,KAAG,MAAI,KAAK,QAAM,MAAIiB,GAAE,MAAI,KAAK,OAAK;AAAA,SAAO;AAAC,YAAMzB,IAAE;AAAE,UAAIK,GAAED;AAAE,WAAI,IAAEK,EAAE,CAAC,GAAEJ,IAAE,GAAEA,IAAEI,EAAE,SAAO,GAAEJ,IAAI,CAAAD,IAAEG,EAAE,MAAKP,EAAE,IAAEK,CAAC,GAAEC,GAAED,CAAC,GAAED,MAAIqB,MAAIrB,IAAE,KAAK,KAAKC,CAAC,IAAG,MAAI,CAACG,EAAEJ,CAAC,KAAGA,MAAI,KAAK,KAAKC,CAAC,GAAED,MAAIsB,IAAE,IAAEA,IAAE,MAAIA,MAAI,MAAItB,KAAG,MAAIK,EAAEJ,IAAE,CAAC,IAAG,KAAK,KAAKA,CAAC,IAAED;AAAA,IAAC;AAAC,SAAG,CAACJ,KAAG,KAAK,EAAE,CAAC;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,UAAI0B,IAAE,KAAK,QAAQ,gBAAgB,KAAK,IAAI,IAAE,KAAK,QAAQ,aAAa,KAAK,MAAK,KAAG,EAAE;AAAA,EAAC;AAAC;AAAC,MAAMM,WAAUG,EAAC;AAAA,EAAC,cAAa;AAAC,UAAM,GAAG,SAAS,GAAE,KAAK,OAAK;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,SAAK,QAAQ,KAAK,IAAI,IAAE,MAAIT,IAAE,SAAO;AAAA,EAAC;AAAC;AAAC,MAAMO,WAAUE,EAAC;AAAA,EAAC,cAAa;AAAC,UAAM,GAAG,SAAS,GAAE,KAAK,OAAK;AAAA,EAAC;AAAA,EAAC,EAAE,GAAE;AAAC,SAAK,QAAQ,gBAAgB,KAAK,MAAK,CAAC,CAAC,KAAG,MAAIT,CAAC;AAAA,EAAC;AAAC;AAAC,MAAMQ,WAAUC,EAAC;AAAA,EAAC,YAAY,GAAE7B,GAAE,GAAEN,GAAES,GAAE;AAAC,UAAM,GAAEH,GAAE,GAAEN,GAAES,CAAC,GAAE,KAAK,OAAK;AAAA,EAAC;AAAA,EAAC,KAAK,GAAEH,IAAE,MAAK;AAAC,SAAI,IAAEC,EAAE,MAAK,GAAED,GAAE,CAAC,KAAGoB,OAAKD,EAAE;AAAO,UAAM,IAAE,KAAK,MAAKzB,IAAE,MAAI0B,KAAG,MAAIA,KAAG,EAAE,YAAU,EAAE,WAAS,EAAE,SAAO,EAAE,QAAM,EAAE,YAAU,EAAE,SAAQjB,IAAE,MAAIiB,MAAI,MAAIA,KAAG1B;AAAG,IAAAA,KAAG,KAAK,QAAQ,oBAAoB,KAAK,MAAK,MAAK,CAAC,GAAES,KAAG,KAAK,QAAQ,iBAAiB,KAAK,MAAK,MAAK,CAAC,GAAE,KAAK,OAAK;AAAA,EAAC;AAAA,EAAC,YAAY,GAAE;AAAC,IAAY,OAAO,KAAK,QAAxB,aAA6B,KAAK,KAAK,KAAK,KAAK,SAAS,QAAM,KAAK,SAAQ,CAAC,IAAE,KAAK,KAAK,YAAY,CAAC;AAAA,EAAC;AAAC;AAAC,MAAM6B,GAAC;AAAA,EAAC,YAAY,GAAEhC,GAAE,GAAE;AAAC,SAAK,UAAQ,GAAE,KAAK,OAAK,GAAE,KAAK,OAAK,QAAO,KAAK,OAAKA,GAAE,KAAK,UAAQ;AAAA,EAAC;AAAA,EAAC,IAAI,OAAM;AAAC,WAAO,KAAK,KAAK;AAAA,EAAI;AAAA,EAAC,KAAK,GAAE;AAAC,IAAAC,EAAE,MAAK,CAAC;AAAA,EAAC;AAAC;AAAC,MAAMiC,KAAE,EAAiC,GAAEH,EAAqB,GAAEI,KAAE1C,EAAE;AAAuB0C,KAAIV,GAAEM,CAAC,IAAGtC,EAAE,oBAAkB,CAAA,GAAI,KAAK,OAAO;AAAE,MAAM2C,KAAE,CAAC3C,GAAEO,GAAEL,MAAI;AAAC,QAAMD,IAAEC,GAAG,gBAAcK;AAAE,MAAIG,IAAET,EAAE;AAAW,MAAYS,MAAT,QAAW;AAAC,UAAMV,IAAEE,GAAG,gBAAc;AAAK,IAAAD,EAAE,aAAWS,IAAE,IAAI4B,EAAE/B,EAAE,aAAaK,EAAC,GAAGZ,CAAC,GAAEA,GAAE,QAAOE,KAAG,CAAA,CAAE;AAAA,EAAC;AAAC,SAAOQ,EAAE,KAAKV,CAAC,GAAEU;AAAC;ACA16N,MAAMR,IAAE;QAAW,cAAgBF,EAAC;AAAA,EAAC,cAAa;AAAC,UAAM,GAAG,SAAS,GAAE,KAAK,gBAAc,EAAC,MAAK,KAAI,GAAE,KAAK,OAAK;AAAA,EAAM;AAAA,EAAC,mBAAkB;AAAC,UAAM,IAAE,MAAM,iBAAgB;AAAG,WAAO,KAAK,cAAc,iBAAe,EAAE,YAAW;AAAA,EAAC;AAAA,EAAC,OAAO,GAAE;AAAC,UAAMK,IAAE,KAAK,OAAM;AAAG,SAAK,eAAa,KAAK,cAAc,cAAY,KAAK,cAAa,MAAM,OAAO,CAAC,GAAE,KAAK,OAAKJ,GAAEI,GAAE,KAAK,YAAW,KAAK,aAAa;AAAA,EAAC;AAAA,EAAC,oBAAmB;AAAC,UAAM,kBAAiB,GAAG,KAAK,MAAM,aAAa,EAAE;AAAA,EAAC;AAAA,EAAC,uBAAsB;AAAC,UAAM,qBAAoB,GAAG,KAAK,MAAM,aAAa,EAAE;AAAA,EAAC;AAAA,EAAC,SAAQ;AAAC,WAAOA;AAAAA,EAAC;AAAC;AAACE,EAAE,gBAAc,IAAGA,EAAE,YAAa,IAAGL,EAAE,2BAA2B,EAAC,YAAWK,EAAC,CAAC;AAAE,MAAMJ,KAAED,EAAE;AAA0BC,KAAI,EAAC,YAAWI,EAAC,CAAC;AAAA,CAAwDL,EAAE,uBAAqB,IAAI,KAAK,OAAO;ACA/xB,MAAMF,KAAE,EAAa,OAAM,EAAkD,GAAEC,KAAE,CAAAD,MAAG,IAAIC,OAAK,EAAC,iBAAgBD,GAAE,QAAOC,EAAC;AAAG,MAAMM,GAAC;AAAA,EAAC,YAAY,GAAE;AAAA,EAAC;AAAA,EAAC,IAAI,OAAM;AAAC,WAAO,KAAK,KAAK;AAAA,EAAI;AAAA,EAAC,KAAK,GAAE,GAAEA,GAAE;AAAC,SAAK,OAAK,GAAE,KAAK,OAAK,GAAE,KAAK,OAAKA;AAAA,EAAC;AAAA,EAAC,KAAK,GAAE,GAAE;AAAC,WAAO,KAAK,OAAO,GAAE,CAAC;AAAA,EAAC;AAAA,EAAC,OAAO,GAAE,GAAE;AAAC,WAAO,KAAK,OAAO,GAAG,CAAC;AAAA,EAAC;AAAC;ACApS,MAAC,EAAC,GAAEP,GAAC,IAAEG,IAA8PD,KAAE,MAAI,SAAS,cAAc,EAAE,GAAEG,IAAE,CAACF,GAAEI,GAAED,MAAI;AAAC,QAAML,IAAEE,EAAE,KAAK,YAAWS,IAAWL,MAAT,SAAWJ,EAAE,OAAKI,EAAE;AAAK,MAAYD,MAAT,QAAW;AAAC,UAAMC,IAAEN,EAAE,aAAaC,GAAC,GAAGU,CAAC,GAAEH,IAAER,EAAE,aAAaC,GAAC,GAAGU,CAAC;AAAE,IAAAN,IAAE,IAAIN,GAAEO,GAAEE,GAAEN,GAAEA,EAAE,OAAO;AAAA,EAAC,OAAK;AAAC,UAAMH,IAAEM,EAAE,KAAK,aAAYC,IAAED,EAAE,MAAKG,IAAEF,MAAIJ;AAAE,QAAGM,GAAE;AAAC,UAAIT;AAAE,MAAAM,EAAE,OAAOH,CAAC,GAAEG,EAAE,OAAKH,GAAWG,EAAE,SAAX,WAAkBN,IAAEG,EAAE,UAAQI,EAAE,QAAMD,EAAE,KAAKN,CAAC;AAAA,IAAC;AAAC,QAAGA,MAAIY,KAAGH,GAAE;AAAC,UAAIN,IAAEG,EAAE;AAAK,aAAKH,MAAIH,KAAG;AAAC,cAAMA,IAAEG,EAAE;AAAY,QAAAF,EAAE,aAAaE,GAAES,CAAC,GAAET,IAAEH;AAAA,MAAC;AAAA,IAAC;AAAA,EAAC;AAAC,SAAOM;AAAC,GAAE,IAAE,CAACH,GAAE,GAAEI,IAAEJ,OAAKA,EAAE,KAAK,GAAEI,CAAC,GAAEJ,IAAGY,KAAE,CAAA,GAAGO,KAAE,CAACnB,GAAE,IAAEY,OAAIZ,EAAE,OAAK,GAAEU,KAAE,CAAAV,MAAGA,EAAE,MAAKqC,IAAE,CAAArC,MAAG;AAAC,EAAAA,EAAE,OAAO,IAAG,EAAE;AAAE,MAAI,IAAEA,EAAE;AAAK,QAAMI,IAAEJ,EAAE,KAAK;AAAY,SAAK,MAAII,KAAG;AAAC,UAAMJ,IAAE,EAAE;AAAY,MAAE,UAAS,IAAEA;AAAA,EAAC;AAAC;ACCj2B,MAAMY,KAAE,CAACd,GAAEC,GAAEF,MAAI;AAAC,QAAMK,IAAE,oBAAI;AAAI,WAAQO,IAAEV,GAAEU,KAAGZ,GAAEY,IAAI,CAAAP,EAAE,IAAIJ,EAAEW,CAAC,GAAEA,CAAC;AAAE,SAAOP;AAAC,GAAEI,KAAEP,GAAE,cAAcF,GAAC;AAAA,EAAC,YAAYC,GAAE;AAAC,QAAG,MAAMA,CAAC,GAAEA,EAAE,SAAOI,GAAE,MAAM,OAAM,MAAM,+CAA+C;AAAA,EAAC;AAAA,EAAC,GAAGJ,GAAEC,GAAEF,GAAE;AAAC,QAAIK;AAAE,IAASL,MAAT,SAAWA,IAAEE,IAAWA,MAAT,WAAaG,IAAEH;AAAG,UAAMU,IAAE,CAAA,GAAGT,IAAE;AAAG,QAAII,IAAE;AAAE,eAAUL,KAAKD,EAAE,CAAAW,EAAEL,CAAC,IAAEF,IAAEA,EAAEH,GAAEK,CAAC,IAAEA,GAAEJ,EAAEI,CAAC,IAAEP,EAAEE,GAAEK,CAAC,GAAEA;AAAI,WAAM,EAAC,QAAOJ,GAAE,MAAKS,EAAC;AAAA,EAAC;AAAA,EAAC,OAAOX,GAAEC,GAAEF,GAAE;AAAC,WAAO,KAAK,GAAGC,GAAEC,GAAEF,CAAC,EAAE;AAAA,EAAM;AAAA,EAAC,OAAOE,GAAE,CAAC,GAAEG,GAAEI,CAAC,GAAE;AAAC,UAAMK,IAAEF,GAAEV,CAAC,GAAE,EAAC,QAAOW,GAAE,MAAKF,EAAC,IAAE,KAAK,GAAG,GAAEN,GAAEI,CAAC;AAAE,QAAG,CAAC,MAAM,QAAQK,CAAC,EAAE,QAAO,KAAK,KAAGH,GAAEE;AAAE,UAAMH,IAAE,KAAK,OAAK,CAAA,GAAGU,IAAE;AAAG,QAAIE,GAAEH,GAAEM,IAAE,GAAEiB,IAAE5B,EAAE,SAAO,GAAEsB,IAAE,GAAEQ,IAAE/B,EAAE,SAAO;AAAE,WAAKY,KAAGiB,KAAGN,KAAGQ,IAAG,KAAU9B,EAAEW,CAAC,MAAV,KAAY,CAAAA;AAAA,aAAmBX,EAAE4B,CAAC,MAAV,KAAY,CAAAA;AAAA,aAAYhC,EAAEe,CAAC,MAAId,EAAEyB,CAAC,EAAEhB,CAAAA,EAAEgB,CAAC,IAAEjC,EAAEW,EAAEW,CAAC,GAAEZ,EAAEuB,CAAC,CAAC,GAAEX,KAAIW;AAAA,aAAY1B,EAAEgC,CAAC,MAAI/B,EAAEiC,CAAC,EAAExB,CAAAA,EAAEwB,CAAC,IAAEzC,EAAEW,EAAE4B,CAAC,GAAE7B,EAAE+B,CAAC,CAAC,GAAEF,KAAIE;AAAA,aAAYlC,EAAEe,CAAC,MAAId,EAAEiC,CAAC,EAAExB,CAAAA,EAAEwB,CAAC,IAAEzC,EAAEW,EAAEW,CAAC,GAAEZ,EAAE+B,CAAC,CAAC,GAAErC,EAAEL,GAAEkB,EAAEwB,IAAE,CAAC,GAAE9B,EAAEW,CAAC,CAAC,GAAEA,KAAImB;AAAA,aAAYlC,EAAEgC,CAAC,MAAI/B,EAAEyB,CAAC,EAAEhB,CAAAA,EAAEgB,CAAC,IAAEjC,EAAEW,EAAE4B,CAAC,GAAE7B,EAAEuB,CAAC,CAAC,GAAE7B,EAAEL,GAAEY,EAAEW,CAAC,GAAEX,EAAE4B,CAAC,CAAC,GAAEA,KAAIN;AAAA,aAAqBd,MAAT,WAAaA,IAAEP,GAAEJ,GAAEyB,GAAEQ,CAAC,GAAEzB,IAAEJ,GAAEL,GAAEe,GAAEiB,CAAC,IAAGpB,EAAE,IAAIZ,EAAEe,CAAC,CAAC,EAAE,KAAGH,EAAE,IAAIZ,EAAEgC,CAAC,CAAC,GAAE;AAAC,YAAMzC,IAAEkB,EAAE,IAAIR,EAAEyB,CAAC,CAAC,GAAEpC,IAAWC,MAAT,SAAWa,EAAEb,CAAC,IAAE;AAAK,UAAUD,MAAP,MAAS;AAAC,cAAMC,IAAEM,EAAEL,GAAEY,EAAEW,CAAC,CAAC;AAAEtB,UAAEF,GAAEY,EAAEuB,CAAC,CAAC,GAAEhB,EAAEgB,CAAC,IAAEnC;AAAA,MAAC,MAAMmB,CAAAA,EAAEgB,CAAC,IAAEjC,EAAEH,GAAEa,EAAEuB,CAAC,CAAC,GAAE7B,EAAEL,GAAEY,EAAEW,CAAC,GAAEzB,CAAC,GAAEc,EAAEb,CAAC,IAAE;AAAK,MAAAmC;AAAA,IAAG,MAAM9B,CAAAA,EAAEQ,EAAE4B,CAAC,CAAC,GAAEA;AAAA,QAASpC,CAAAA,EAAEQ,EAAEW,CAAC,CAAC,GAAEA;AAAI,WAAKW,KAAGQ,KAAG;AAAC,YAAM3C,IAAEM,EAAEL,GAAEkB,EAAEwB,IAAE,CAAC,CAAC;AAAEzC,QAAEF,GAAEY,EAAEuB,CAAC,CAAC,GAAEhB,EAAEgB,GAAG,IAAEnC;AAAA,IAAC;AAAC,WAAKwB,KAAGiB,KAAG;AAAC,YAAMzC,IAAEa,EAAEW,GAAG;AAAE,MAAOxB,MAAP,QAAUK,EAAEL,CAAC;AAAA,IAAC;AAAC,WAAO,KAAK,KAAGU,GAAEK,GAAEd,GAAEkB,CAAC,GAAEnB;AAAAA,EAAC;AAAC,CAAC;ACDjrC,MAAME,KAAE,CAAAA,MAAGA,KAAGH;ACAjB,MAAMA,KAAE,CAAAA,MAAG,CAACC,GAAEE,MAAI;EAAUA,eAAEA,EAAE,gBAAgB,MAAI;AAAC,mBAAe,OAAOH,GAAEC,CAAC;AAAA,EAAC,EAAC,IAAG,eAAe,OAAOD,GAAEC,CAAC;AAAC;ACA1G,MAAME,KAAE,EAAC,WAAU,IAAG,MAAK,QAAO,WAAUH,GAAE,SAAQ,IAAG,YAAWC,EAAC,GAAEI,KAAE,CAACL,IAAEG,IAAEF,GAAEI,MAAI;AAAC,QAAK,EAAC,MAAKC,GAAE,UAAS,EAAC,IAAED;AAAE,MAAIH,IAAE,WAAW,oBAAoB,IAAI,CAAC;AAAE,MAAYA,MAAT,UAAY,WAAW,oBAAoB,IAAI,GAAEA,IAAE,oBAAI,KAAG,GAAaI,MAAX,cAAgBN,IAAE,OAAO,OAAOA,CAAC,GAAG,UAAQ,KAAIE,EAAE,IAAIG,EAAE,MAAKL,CAAC,GAAeM,MAAb,YAAe;AAAC,UAAK,EAAC,MAAK,EAAC,IAAED;AAAE,WAAM,EAAC,IAAIA,GAAE;AAAC,YAAMC,IAAEL,EAAE,IAAI,KAAK,IAAI;AAAE,MAAAA,EAAE,IAAI,KAAK,MAAKI,CAAC,GAAE,KAAK,cAAc,GAAEC,GAAEN,CAAC;AAAA,IAAC,GAAE,KAAKC,GAAE;AAAC,aAAgBA,MAAT,UAAY,KAAK,EAAE,GAAE,QAAOD,GAAEC,CAAC,GAAEA;AAAA,IAAC,EAAC;AAAA,EAAC;AAAC,MAAcK,MAAX,UAAa;AAAC,UAAK,EAAC,MAAK,EAAC,IAAED;AAAE,WAAO,SAASA,GAAE;AAAC,YAAMC,IAAE,KAAK,CAAC;AAAE,MAAAL,EAAE,KAAK,MAAKI,CAAC,GAAE,KAAK,cAAc,GAAEC,GAAEN,CAAC;AAAA,IAAC;AAAA,EAAC;AAAC,QAAM,MAAM,qCAAmCM,CAAC;AAAC;AAAE,SAASA,EAAEN,GAAE;AAAC,SAAM,CAACC,GAAEE,MAAc,OAAOA,KAAjB,WAAmBE,GAAEL,GAAEC,GAAEE,CAAC,KAAG,CAACH,GAAEC,GAAEE,MAAI;AAAC,UAAME,IAAEJ,EAAE,eAAeE,CAAC;AAAE,WAAOF,EAAE,YAAY,eAAeE,GAAEH,CAAC,GAAEK,IAAE,OAAO,yBAAyBJ,GAAEE,CAAC,IAAE;AAAA,EAAM,GAAGH,GAAEC,GAAEE,CAAC;AAAC;ACAlyB,SAASE,EAAE,GAAE;AAAC,SAAOL,EAAE,EAAC,GAAG,GAAE,OAAM,IAAG,WAAU,GAAE,CAAC;AAAC;ACAvD,MAAMC,KAAE,CAACA,GAAE,GAAEQ,OAAKA,EAAE,eAAa,IAAGA,EAAE,aAAW,IAAG,QAAQ,YAAoB,OAAO,KAAjB,YAAoB,OAAO,eAAeR,GAAE,GAAEQ,CAAC,GAAEA;ACApH,SAASR,GAAEA,GAAEI,GAAE;AAAC,SAAM,CAACC,GAAE,GAAE,MAAI;AAAC,UAAMH,IAAE,CAAAH,MAAGA,EAAE,YAAY,cAAcC,CAAC,KAAG;AAAwP,WAAOD,GAAEM,GAAE,GAAE,EAAC,MAAK;AAAC,aAAOH,EAAE,IAAI;AAAA,IAAC,EAAC,CAAC;AAAA,EAAC;AAAC;;;;;;ACKrW,IAAM0C,IAAN,cAA0BC,EAAW;AAAA,EAArC,cAAA;AAAA,UAAA,GAAA,SAAA,GAaM,KAAQ,eAAuB,GAC/B,KAAQ,gBAAwB,GAIzC,KAAA,UAAkB;AAAA,EAAA;AAAA,EAGlB,uBAAuB;AACnB,UAAM,qBAAA,GACF,KAAK,kBACL,KAAK,eAAe,WAAA;AAAA,EAE5B;AAAA,EAEA,OAAOC,GAAqC;AACxC,KAAIA,EAAkB,IAAI,WAAW,KAAKA,EAAkB,IAAI,WAAW,MACvE,KAAK,iBAAA,GAGLA,EAAkB,IAAI,OAAO,KAC7B,KAAK,cAAc,KAAK,KAAK,GAGjC,MAAM,OAAOA,CAAiB;AAAA,EAClC;AAAA,EAEU,aAAaC,GAAuE;AAC1F,SAAK,cAAc,KAAK,KAAK,GAGzB,KAAK,YACL,KAAK,iBAAiB,IAAI,eAAe,MAAM;AAC3C,WAAK,iBAAA;AAAA,IACT,CAAC,GACD,KAAK,eAAe,QAAQ,KAAK,OAAO,GAExC,KAAK,iBAAA;AAAA,EAEb;AAAA,EAEA,cAAcC,GAAe;AACzB,UAAMC,IAAe,iBAAiB,IAAI,EAAE,iBAAiB,iBAAiB,EAAE,KAAA,GAC1EC,IAAa,iBAAiB,IAAI,EAAE,iBAAiB,4BAA4B,EAAE,KAAA;AACzF,SAAK,eAAeA,KAAc,KAAK,OAAO,cAAc,iBAC5D,KAAK,kBAAkBD,KAAgB,KAAK,OAAO,cAAc,OAAO,WAAW,OACnF,KAAK,qBACDA,KAAgB,KAAK,OAAO,cAAc,OAAO,cAAc,SAAS,KAAK;AAAA,EACrF;AAAA;AAAA;AAAA;AAAA,EAKA,oBAAoB;AAChB,UAAME,IAAiB,KAAK,WAAW,YACjC,OAAO,KAAK,WAAW,SAAU,WAC7B,KAAK,UAAU,QACf,KACH,KAAK,WAAW,YAAY;AAEnC,QAAIC,IAAS,KAAK,WAAW,aACtB,KAAK,WAAW,QAAQ,CAAA,IACzB,CAAC,EAAE,UAAUD,GAAgB,OAAO,KAAK,WAAW,SAAS,IAAI;AAGvE,QAAI,KAAK,aAAa,KAAK,WAAW,YAAY;AAC9C,YAAME,IAAiB,OAAO,KAAK,UAAU,KAAK,GAC5CC,IAAe,OAAO,KAAK,UAAU,GAAG;AAE9C,OAAI,CAAC,MAAMD,CAAc,KAAK,CAAC,MAAMC,CAAY,OAC7CF,IAASA,EAAO,OAAO,CAACG,MAAQ;AAC5B,cAAMC,IAAYD,EAAI;AACtB,YAA+BC,KAAc,KAAM,QAAO;AAC1D,cAAMC,IAAK,OAAOD,CAAS;AAC3B,eAAI,MAAMC,CAAE,IAAU,KAClB,GAAC,MAAMJ,CAAc,KAAKI,IAAKJ,KAC/B,CAAC,MAAMC,CAAY,KAAKG,IAAKH;AAAA,MAErC,CAAC;AAAA,IAET;AAEA,WAAOF;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAmB;AACf,QAAI,CAAC,KAAK,QAAS;AAInB,UAAMM,IAFS,KAAK,kBAAA,EAEO;AAC3B,QAAIA,MAAgB,EAAG;AAEvB,UAAMC,IAAO,KAAK,QAAQ,sBAAA,GAEpBC,IAAoBD,EAAK,QAAQ,MACjCE,IAAkBF,EAAK,SAAS,MAChCG,IAAiBH,EAAK,QAAQC,GAC9BG,IAAkBJ,EAAK,SAASE;AAEtC,QAAIC,KAAkB,KAAKC,KAAmB,EAAG;AAGjD,UAAMC,IAAS,KAAK;AAAA,MAChBF;AAAA,MACAC;AAAA,MACAL;AAAA,MACA,CAACf,GAAGlC,MAAM,KAAK,IAAIkC,IAAIlC,IAAI,IAAI,CAAC;AAAA,MAChC,KAAK,WAAW,OAAO;AAAA,IAAA;AAI3B,SAAK,eAAeuD,EAAO,cAC3B,KAAK,gBAAgBA,EAAO,eAGJ,KAAK,QAAQ,iBAAiB,aAAa,EACnD,QAAQ,CAACC,MAAc;AACnC,MAAAA,EAAU,MAAM,QAAQ,GAAGD,EAAO,YAAY,MAC9CC,EAAU,MAAM,SAAS,GAAGD,EAAO,aAAa;AAAA,IACpD,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,eACIF,GACAC,GACAL,GACAQ,GACAC,IAAc,IAOhB;AACE,QAAIC,IAAa;AAAA,MACb,cAAc;AAAA,MACd,eAAe;AAAA,MACf,SAAS;AAAA,MACT,SAASV;AAAA,MACT,OAAO;AAAA,IAAA;AAIX,aAASW,IAAO,GAAGA,KAAQX,GAAaW,KAAQ;AAC5C,YAAMC,IAAO,KAAK,KAAKZ,IAAcW,CAAI,GAGnCE,IAAgBJ,KAAOE,IAAO,IAC9BG,IAAiBL,KAAOG,IAAO,IAC/BG,IAAiBX,IAAiBS,GAClCG,IAAkBX,IAAkBS;AAE1C,UAAIC,KAAkB,KAAKC,KAAmB,EAAG;AAEjD,YAAMC,IAAeF,IAAiBJ,GAChCO,IAAgBF,IAAkBJ,GAGlCO,IAAQX,EAAQS,GAAcC,CAAa;AAGjD,MAAIC,IAAQT,EAAW,UACnBA,IAAa;AAAA,QACT,cAAAO;AAAA,QACA,eAAAC;AAAA,QACA,SAASP;AAAA,QACT,SAASC;AAAA,QACT,OAAAO;AAAA,MAAA;AAAA,IAGZ;AAEA,WAAOT;AAAA,EACX;AAAA,EA8FA,SAAS;AACL,UAAMhB,IAAS,KAAK,kBAAA,GAEd0B,IAAmB1B,EAAO,SAAS,GACnC2B,IAAa3B,EAAO,OAAO,CAACG,MAAQA,EAAI,KAAK,EAAE,SAAS,GACxDyB,IAAc5B,EAAO,KAAK,CAACG,MAAQA,EAAI,QAAQ;AAErD,WAAO0B;AAAAA;AAAAA;AAAAA,2CAG4B,KAAK,YAAY,YAAY,KACnD,eAAe,UAAUH,IACxB,GAAG,KAAK,WAAW,OAAO,EAAE,OAC5B,KAAK,KAAMA,IAA+C,KAA5B,yBAA8B;AAAA;AAAA,kBAEhE,CAACA,KAAoB,KAAK,WAAW,QACjCG;AAAAA;AAAAA;AAAAA,wCAGkB,KAAK,WAAW,KAAK;AAAA,8CACf,KAAK,eAAe;AAAA;AAAA,gCAElC,KAAK,WAAW,KAAK;AAAA;AAAA,0BAG/BC,CAAO;AAAA,kBACX,CAACJ,KAAoB,KAAK,WAAW,WACjCG;AAAAA;AAAAA;AAAAA,wCAGkB,KAAK,WAAW,QAAQ;AAAA,8CAClB,KAAK,kBAAkB;AAAA;AAAA,gCAErC,KAAK,WAAW,QAAQ;AAAA;AAAA,0BAGlCC,CAAO;AAAA,sDACyB,CAACF,CAAW,kBAAkB,KAAK,eAAe;AAAA;AAAA;AAAA,kBAGtFG;AAAAA,MACE/B;AAAA,MACA,CAACG,MAAQA,EAAI;AAAA,MACb,CAACA,MAAQ0B;AAAAA;AAAAA;AAAAA,4CAGe,KAAK,YAAY,eAAe,KAAK,aAAa;AAAA;AAAA,8BAEhEF,IACIE;AAAAA;AAAAA,+CAEa,KAAK,WAAW,gBACnB,cAAc,KAAK,UAAU,aAAa,QAC1C,EAAE;AAAA;AAAA,wCAEN1B,EAAI,SAAS,EAAE;AAAA,2CAErB2B,CAAO;AAAA,yEACgC3B,EAAI,QAAQ;AAAA;AAAA,2CAE1C6B,GAAU7B,EAAI,QAAQ,CAAC;AAAA,2CACvBA,EAAI,SAAS,cAAc;AAAA,yDACb,KAAK,WAAW,eAAe,SAAS,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAKzF;AAAA;AAAA;AAAA,EAGb;AACJ;AA7WaX,EA0MF,SAASyC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAxMhBC,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GADjB3C,EAET,WAAA,aAAA,CAAA;AAGA0C,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GAJjB3C,EAKT,WAAA,SAAA,CAAA;AAGA0C,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GAPjB3C,EAQT,WAAA,aAAA,CAAA;AAEiB0C,EAAA;AAAA,EAAhBE,EAAA;AAAM,GAVE5C,EAUQ,WAAA,gBAAA,CAAA;AACA0C,EAAA;AAAA,EAAhBE,EAAA;AAAM,GAXE5C,EAWQ,WAAA,mBAAA,CAAA;AACA0C,EAAA;AAAA,EAAhBE,EAAA;AAAM,GAZE5C,EAYQ,WAAA,sBAAA,CAAA;AACA0C,EAAA;AAAA,EAAhBE,EAAA;AAAM,GAbE5C,EAaQ,WAAA,gBAAA,CAAA;AACA0C,EAAA;AAAA,EAAhBE,EAAA;AAAM,GAdE5C,EAcQ,WAAA,iBAAA,CAAA;AAEU0C,EAAA;AAAA,EAA1BG,GAAM,UAAU;AAAA,GAhBR7C,EAgBkB,WAAA,WAAA,CAAA;AAhBlBA,IAAN0C,EAAA;AAAA,EADNI,GAAc,qBAAiC;AAAA,GACnC9C,CAAA;","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12]}
|
|
1
|
+
{"version":3,"file":"widget-image.js","sources":["../node_modules/@lit/reactive-element/css-tag.js","../node_modules/@lit/reactive-element/reactive-element.js","../node_modules/lit-html/lit-html.js","../node_modules/lit-element/lit-element.js","../node_modules/lit-html/directive.js","../node_modules/lit-html/directive-helpers.js","../node_modules/lit-html/directives/repeat.js","../node_modules/lit-html/directives/if-defined.js","../node_modules/@lit/reactive-element/decorators/custom-element.js","../node_modules/@lit/reactive-element/decorators/property.js","../node_modules/@lit/reactive-element/decorators/state.js","../node_modules/@lit/reactive-element/decorators/base.js","../node_modules/@lit/reactive-element/decorators/query.js","../src/widget-image.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,css,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:h,getOwnPropertyNames:r,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),b={attribute:!0,type:String,converter:u,reflect:!1,useDefault:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=b){if(s.state&&(s.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((s=Object.create(s)).wrapped=!0),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),h=this.getPropertyDescriptor(t,i,s);void 0!==h&&e(this.prototype,t,h)}}static getPropertyDescriptor(t,s,i){const{get:e,set:r}=h(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get:e,set(s){const h=e?.call(this);r?.call(this,s),this.requestUpdate(t,h,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??b}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...r(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$ET(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const h=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==h?this.removeAttribute(e):this.setAttribute(e,h),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e,this[e]=h.fromAttribute(s,t.type)??this._$Ej?.get(e)??null,this._$Em=null}}requestUpdate(t,s,i){if(void 0!==t){const e=this.constructor,h=this[t];if(i??=e.getPropertyOptions(t),!((i.hasChanged??f)(h,s)||i.useDefault&&i.reflect&&h===this._$Ej?.get(t)&&!this.hasAttribute(e._$Eu(t,i))))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,s,{useDefault:i,reflect:e,wrapped:h},r){i&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,r??s??this[t]),!0!==h||void 0!==r)||(this._$AL.has(t)||(this.hasUpdated||i||(s=void 0),this._$AL.set(t,s)),!0===e&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t){const{wrapped:t}=i,e=this[s];!0!==t||this._$AL.has(s)||void 0===e||this.C(s,void 0,i,e)}}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((t=>this._$ET(t,this[t]))),this._$EM()}updated(t){}firstUpdated(t){}}y.elementStyles=[],y.shadowRootOptions={mode:\"open\"},y[d(\"elementProperties\")]=new Map,y[d(\"finalized\")]=new Map,p?.({ReactiveElement:y}),(a.reactiveElementVersions??=[]).push(\"2.1.0\");export{y as ReactiveElement,s as adoptStyles,u as defaultConverter,t as getCompatibleStyle,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,i=t.trustedTypes,s=i?i.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,e=\"$lit$\",h=`lit$${Math.random().toFixed(9).slice(2)}$`,o=\"?\"+h,n=`<${o}>`,r=document,l=()=>r.createComment(\"\"),c=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,a=Array.isArray,u=t=>a(t)||\"function\"==typeof t?.[Symbol.iterator],d=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,v=/-->/g,_=/>/g,m=RegExp(`>|${d}(?:([^\\\\s\"'>=/]+)(${d}*=${d}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),p=/'/g,g=/\"/g,$=/^(?:script|style|textarea|title)$/i,y=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=y(1),b=y(2),w=y(3),T=Symbol.for(\"lit-noChange\"),E=Symbol.for(\"lit-nothing\"),A=new WeakMap,C=r.createTreeWalker(r,129);function P(t,i){if(!a(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==s?s.createHTML(i):i}const V=(t,i)=>{const s=t.length-1,o=[];let r,l=2===i?\"<svg>\":3===i?\"<math>\":\"\",c=f;for(let i=0;i<s;i++){const s=t[i];let a,u,d=-1,y=0;for(;y<s.length&&(c.lastIndex=y,u=c.exec(s),null!==u);)y=c.lastIndex,c===f?\"!--\"===u[1]?c=v:void 0!==u[1]?c=_:void 0!==u[2]?($.test(u[2])&&(r=RegExp(\"</\"+u[2],\"g\")),c=m):void 0!==u[3]&&(c=m):c===m?\">\"===u[0]?(c=r??f,d=-1):void 0===u[1]?d=-2:(d=c.lastIndex-u[2].length,a=u[1],c=void 0===u[3]?m:'\"'===u[3]?g:p):c===g||c===p?c=m:c===v||c===_?c=f:(c=m,r=void 0);const x=c===m&&t[i+1].startsWith(\"/>\")?\" \":\"\";l+=c===f?s+n:d>=0?(o.push(a),s.slice(0,d)+e+s.slice(d)+h+x):s+h+(-2===d?i:x)}return[P(t,l+(t[s]||\"<?>\")+(2===i?\"</svg>\":3===i?\"</math>\":\"\")),o]};class N{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let c=0,a=0;const u=t.length-1,d=this.parts,[f,v]=V(t,s);if(this.el=N.createElement(f,n),C.currentNode=this.el.content,2===s||3===s){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(r=C.nextNode())&&d.length<u;){if(1===r.nodeType){if(r.hasAttributes())for(const t of r.getAttributeNames())if(t.endsWith(e)){const i=v[a++],s=r.getAttribute(t).split(h),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:c,name:e[2],strings:s,ctor:\".\"===e[1]?H:\"?\"===e[1]?I:\"@\"===e[1]?L:k}),r.removeAttribute(t)}else t.startsWith(h)&&(d.push({type:6,index:c}),r.removeAttribute(t));if($.test(r.tagName)){const t=r.textContent.split(h),s=t.length-1;if(s>0){r.textContent=i?i.emptyScript:\"\";for(let i=0;i<s;i++)r.append(t[i],l()),C.nextNode(),d.push({type:2,index:++c});r.append(t[s],l())}}}else if(8===r.nodeType)if(r.data===o)d.push({type:2,index:c});else{let t=-1;for(;-1!==(t=r.data.indexOf(h,t+1));)d.push({type:7,index:c}),t+=h.length-1}c++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function S(t,i,s=t,e){if(i===T)return i;let h=void 0!==e?s._$Co?.[e]:s._$Cl;const o=c(i)?void 0:i._$litDirective$;return h?.constructor!==o&&(h?._$AO?.(!1),void 0===o?h=void 0:(h=new o(t),h._$AT(t,s,e)),void 0!==e?(s._$Co??=[])[e]=h:s._$Cl=h),void 0!==h&&(i=S(t,h._$AS(t,i.values),h,e)),i}class M{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:i},parts:s}=this._$AD,e=(t?.creationScope??r).importNode(i,!0);C.currentNode=e;let h=C.nextNode(),o=0,n=0,l=s[0];for(;void 0!==l;){if(o===l.index){let i;2===l.type?i=new R(h,h.nextSibling,this,t):1===l.type?i=new l.ctor(h,l.name,l.strings,this,t):6===l.type&&(i=new z(h,this,t)),this._$AV.push(i),l=s[++n]}o!==l?.index&&(h=C.nextNode(),o++)}return C.currentNode=r,e}p(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class R{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,i,s,e){this.type=2,this._$AH=E,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cv=e?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t?.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=S(this,t,i),c(t)?t===E||null==t||\"\"===t?(this._$AH!==E&&this._$AR(),this._$AH=E):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):u(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==E&&c(this._$AH)?this._$AA.nextSibling.data=t:this.T(r.createTextNode(t)),this._$AH=t}$(t){const{values:i,_$litType$:s}=t,e=\"number\"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=N.createElement(P(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===e)this._$AH.p(i);else{const t=new M(e,this),s=t.u(this.options);t.p(i),this.T(s),this._$AH=t}}_$AC(t){let i=A.get(t.strings);return void 0===i&&A.set(t.strings,i=new N(t)),i}k(t){a(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const h of t)e===i.length?i.push(s=new R(this.O(l()),this.O(l()),this,this.options)):s=i[e],s._$AI(h),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class k{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,i,s,e,h){this.type=1,this._$AH=E,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=h,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=E}_$AI(t,i=this,s,e){const h=this.strings;let o=!1;if(void 0===h)t=S(this,t,i,0),o=!c(t)||t!==this._$AH&&t!==T,o&&(this._$AH=t);else{const e=t;let n,r;for(t=h[0],n=0;n<h.length-1;n++)r=S(this,e[s+n],i,n),r===T&&(r=this._$AH[n]),o||=!c(r)||r!==this._$AH[n],r===E?t=E:t!==E&&(t+=(r??\"\")+h[n+1]),this._$AH[n]=r}o&&!e&&this.j(t)}j(t){t===E?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??\"\")}}class H extends k{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===E?void 0:t}}class I extends k{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==E)}}class L extends k{constructor(t,i,s,e,h){super(t,i,s,e,h),this.type=5}_$AI(t,i=this){if((t=S(this,t,i,0)??E)===T)return;const s=this._$AH,e=t===E&&s!==E||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,h=t!==E&&(s===E||e);e&&this.element.removeEventListener(this.name,this,s),h&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){\"function\"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){S(this,t)}}const Z={M:e,P:h,A:o,C:1,L:V,R:M,D:u,V:S,I:R,H:k,N:I,U:L,B:H,F:z},j=t.litHtmlPolyfillSupport;j?.(N,R),(t.litHtmlVersions??=[]).push(\"3.3.0\");const B=(t,i,s)=>{const e=s?.renderBefore??i;let h=e._$litPart$;if(void 0===h){const t=s?.renderBefore??null;e._$litPart$=h=new R(i.insertBefore(l(),t),t,void 0,s??{})}return h._$AI(t),h};export{Z as _$LH,x as html,w as mathml,T as noChange,E as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as r}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const s=globalThis;class i extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return r}}i._$litElement$=!0,i[\"finalized\"]=!0,s.litElementHydrateSupport?.({LitElement:i});const o=s.litElementPolyfillSupport;o?.({LitElement:i});const n={_$AK:(t,e,r)=>{t._$AK(e,r)},_$AL:t=>t._$AL};(s.litElementVersions??=[]).push(\"4.2.0\");export{i as LitElement,n as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}export{i as Directive,t as PartType,e as directive};\n//# sourceMappingURL=directive.js.map\n","import{_$LH as o}from\"./lit-html.js\";\n/**\n * @license\n * Copyright 2020 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{I:t}=o,i=o=>null===o||\"object\"!=typeof o&&\"function\"!=typeof o,n={HTML:1,SVG:2,MATHML:3},e=(o,t)=>void 0===t?void 0!==o?._$litType$:o?._$litType$===t,l=o=>null!=o?._$litType$?.h,c=o=>void 0!==o?._$litDirective$,d=o=>o?._$litDirective$,f=o=>void 0===o.strings,s=()=>document.createComment(\"\"),r=(o,i,n)=>{const e=o._$AA.parentNode,l=void 0===i?o._$AB:i._$AA;if(void 0===n){const i=e.insertBefore(s(),l),c=e.insertBefore(s(),l);n=new t(i,c,o,o.options)}else{const t=n._$AB.nextSibling,i=n._$AM,c=i!==o;if(c){let t;n._$AQ?.(o),n._$AM=o,void 0!==n._$AP&&(t=o._$AU)!==i._$AU&&n._$AP(t)}if(t!==l||c){let o=n._$AA;for(;o!==t;){const t=o.nextSibling;e.insertBefore(o,l),o=t}}}return n},v=(o,t,i=o)=>(o._$AI(t,i),o),u={},m=(o,t=u)=>o._$AH=t,p=o=>o._$AH,M=o=>{o._$AP?.(!1,!0);let t=o._$AA;const i=o._$AB.nextSibling;for(;t!==i;){const o=t.nextSibling;t.remove(),t=o}},h=o=>{o._$AR()};export{n as TemplateResultType,h as clearPart,p as getCommittedValue,d as getDirectiveClass,r as insertPart,l as isCompiledTemplateResult,c as isDirectiveResult,i as isPrimitive,f as isSingleExpression,e as isTemplateResult,M as removePart,v as setChildPartValue,m as setCommittedValue};\n//# sourceMappingURL=directive-helpers.js.map\n","import{noChange as e}from\"../lit-html.js\";import{directive as s,Directive as t,PartType as r}from\"../directive.js\";import{getCommittedValue as l,setChildPartValue as o,insertPart as i,removePart as n,setCommittedValue as f}from\"../directive-helpers.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst u=(e,s,t)=>{const r=new Map;for(let l=s;l<=t;l++)r.set(e[l],l);return r},c=s(class extends t{constructor(e){if(super(e),e.type!==r.CHILD)throw Error(\"repeat() can only be used in text expressions\")}dt(e,s,t){let r;void 0===t?t=s:void 0!==s&&(r=s);const l=[],o=[];let i=0;for(const s of e)l[i]=r?r(s,i):i,o[i]=t(s,i),i++;return{values:o,keys:l}}render(e,s,t){return this.dt(e,s,t).values}update(s,[t,r,c]){const d=l(s),{values:p,keys:a}=this.dt(t,r,c);if(!Array.isArray(d))return this.ut=a,p;const h=this.ut??=[],v=[];let m,y,x=0,j=d.length-1,k=0,w=p.length-1;for(;x<=j&&k<=w;)if(null===d[x])x++;else if(null===d[j])j--;else if(h[x]===a[k])v[k]=o(d[x],p[k]),x++,k++;else if(h[j]===a[w])v[w]=o(d[j],p[w]),j--,w--;else if(h[x]===a[w])v[w]=o(d[x],p[w]),i(s,v[w+1],d[x]),x++,w--;else if(h[j]===a[k])v[k]=o(d[j],p[k]),i(s,d[x],d[j]),j--,k++;else if(void 0===m&&(m=u(a,k,w),y=u(h,x,j)),m.has(h[x]))if(m.has(h[j])){const e=y.get(a[k]),t=void 0!==e?d[e]:null;if(null===t){const e=i(s,d[x]);o(e,p[k]),v[k]=e}else v[k]=o(t,p[k]),i(s,d[x],t),d[e]=null;k++}else n(d[j]),j--;else n(d[x]),x++;for(;k<=w;){const e=i(s,v[w+1]);o(e,p[k]),v[k++]=e}for(;x<=j;){const e=d[x++];null!==e&&n(e)}return this.ut=a,f(s,v),e}});export{c as repeat};\n//# sourceMappingURL=repeat.js.map\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o=o=>o??t;export{o as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=t=>(e,o)=>{void 0!==o?o.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)};export{t as customElement};\n//# sourceMappingURL=custom-element.js.map\n","import{defaultConverter as t,notEqual as e}from\"../reactive-element.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),\"setter\"===n&&((t=Object.create(t)).wrapped=!0),s.set(r.name,t),\"accessor\"===n){const{name:o}=r;return{set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t)},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if(\"setter\"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t)}}throw Error(\"Unsupported decorator location: \"+n)};function n(t){return(e,o)=>\"object\"==typeof o?r(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty};\n//# sourceMappingURL=property.js.map\n","import{property as t}from\"./property.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function r(r){return t({...r,state:!0,attribute:!1})}export{r as state};\n//# sourceMappingURL=state.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst e=(e,t,c)=>(c.configurable=!0,c.enumerable=!0,Reflect.decorate&&\"object\"!=typeof t&&Object.defineProperty(e,t,c),c);export{e as desc};\n//# sourceMappingURL=base.js.map\n","import{desc as t}from\"./base.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function e(e,r){return(n,s,i)=>{const o=t=>t.renderRoot?.querySelector(e)??null;if(r){const{get:e,set:r}=\"object\"==typeof s?n:i??(()=>{const t=Symbol();return{get(){return this[t]},set(e){this[t]=e}}})();return t(n,s,{get(){let t=e.call(this);return void 0===t&&(t=o(this),(null!==t||this.hasUpdated)&&r.call(this,t)),t}})}return t(n,s,{get(){return o(this)}})}}export{e as query};\n//# sourceMappingURL=query.js.map\n","import { html, css, LitElement, PropertyValues, PropertyValueMap, nothing } from 'lit'\nimport { repeat } from 'lit/directives/repeat.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport { customElement, property, state, query } from 'lit/decorators.js'\nimport { InputData } from './definition-schema'\ntype Theme = {\n theme_name: string\n theme_object: any\n}\n@customElement('widget-image-versionplaceholder')\nexport class WidgetImage extends LitElement {\n @property({ type: Object })\n inputData?: InputData\n\n @property({ type: Object })\n theme?: Theme\n\n @property({ type: Object })\n timeRange?: { start: number; end: number }\n\n @state() private themeBgColor?: string\n @state() private themeTitleColor?: string\n @state() private elementWidth: number = 0\n @state() private elementHeight: number = 0\n\n @query('.wrapper') private wrapper?: HTMLDivElement\n\n version: string = 'versionplaceholder'\n private resizeObserver?: ResizeObserver\n\n disconnectedCallback() {\n super.disconnectedCallback()\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n }\n }\n\n update(changedProperties: Map<string, any>) {\n if (changedProperties.has('inputData') || changedProperties.has('timeRange')) {\n this.updateGridLayout()\n }\n\n if (changedProperties.has('theme')) {\n this.registerTheme(this.theme)\n }\n\n super.update(changedProperties)\n }\n\n protected firstUpdated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>) {\n this.registerTheme(this.theme)\n\n // Set up ResizeObserver for the wrapper\n if (this.wrapper) {\n this.resizeObserver = new ResizeObserver(() => {\n this.updateGridLayout()\n })\n this.resizeObserver.observe(this.wrapper)\n // Initial layout calculation\n this.updateGridLayout()\n }\n }\n\n registerTheme(theme?: Theme) {\n const cssTextColor = getComputedStyle(this).getPropertyValue('--re-text-color').trim()\n const cssBgColor = getComputedStyle(this).getPropertyValue('--re-tile-background-color').trim()\n this.themeBgColor = cssBgColor || this.theme?.theme_object?.backgroundColor\n this.themeTitleColor = cssTextColor || this.theme?.theme_object?.title?.textStyle?.color\n }\n\n /**\n * Get images filtered by timeRange if available\n */\n getFilteredImages() {\n const singleImageUrl = this.inputData?.useUpload\n ? typeof this.inputData?.image === 'string'\n ? this.inputData.image\n : ''\n : (this.inputData?.imageUrl ?? '')\n\n let images = this.inputData?.multiImage\n ? (this.inputData?.data ?? [])\n : [{ imageUrl: singleImageUrl, label: this.inputData?.title ?? '' }]\n\n // Filter by timeRange if provided and in multi-image mode\n if (this.timeRange && this.inputData?.multiImage) {\n const timeRangeStart = Number(this.timeRange.start)\n const timeRangeEnd = Number(this.timeRange.end)\n\n if (!isNaN(timeRangeStart) || !isNaN(timeRangeEnd)) {\n images = images.filter((img) => {\n const timestamp = img.timestamp\n if (timestamp === undefined || timestamp === null) return true // Keep images without timestamps\n const ts = Number(timestamp)\n if (isNaN(ts)) return true // Keep if timestamp is not a valid number\n if (!isNaN(timeRangeStart) && ts < timeRangeStart) return false\n if (!isNaN(timeRangeEnd) && ts > timeRangeEnd) return false\n return true\n })\n }\n }\n\n return images\n }\n\n /**\n * Update grid layout based on container size and number of elements\n */\n updateGridLayout() {\n if (!this.wrapper) return\n\n const images = this.getFilteredImages()\n\n const numElements = images.length\n if (numElements === 0) return\n\n const rect = this.wrapper.getBoundingClientRect()\n // Account for padding: 2cqw on each side (4% width total), 2cqh on each side (4% height total)\n const horizontalPadding = rect.width * 0.04\n const verticalPadding = rect.height * 0.04\n const containerWidth = rect.width - horizontalPadding\n const containerHeight = rect.height - verticalPadding\n\n if (containerWidth <= 0 || containerHeight <= 0) return\n\n // Optimize for 1:1 aspect ratio\n const layout = this.optimizeLayout(\n containerWidth,\n containerHeight,\n numElements,\n (w, h) => Math.abs(w / h - 1 / 1),\n this.inputData?.gap ?? 12\n )\n\n // Update element dimensions\n this.elementWidth = layout.elementWidth\n this.elementHeight = layout.elementHeight\n\n // Apply width and height to each child image container\n const imageContainers = this.wrapper.querySelectorAll('.image-item') as NodeListOf<HTMLDivElement>\n imageContainers.forEach((container) => {\n container.style.width = `${layout.elementWidth}px`\n container.style.height = `${layout.elementHeight}px`\n })\n }\n\n /**\n * Optimize grid layout by minimizing an error function\n * @param containerWidth - Available width for the grid\n * @param containerHeight - Available height for the grid\n * @param numElements - Number of elements to arrange\n * @param errorFn - Error function that takes (element_width, element_height) and returns error value\n * @param gap - Gap between elements (default: 12)\n * @returns Optimal layout configuration\n */\n optimizeLayout(\n containerWidth: number,\n containerHeight: number,\n numElements: number,\n errorFn: (w: number, h: number) => number,\n gap: number = 12\n ): {\n elementWidth: number\n elementHeight: number\n numCols: number\n numRows: number\n error: number\n } {\n let bestLayout = {\n elementWidth: 0,\n elementHeight: 0,\n numCols: 1,\n numRows: numElements,\n error: Infinity\n }\n\n // Try all possible column configurations from 1 to numElements\n for (let cols = 1; cols <= numElements; cols++) {\n const rows = Math.ceil(numElements / cols)\n\n // Calculate element dimensions accounting for gaps\n const totalGapWidth = gap * (cols - 1)\n const totalGapHeight = gap * (rows - 1)\n const availableWidth = containerWidth - totalGapWidth\n const availableHeight = containerHeight - totalGapHeight\n\n if (availableWidth <= 0 || availableHeight <= 0) continue\n\n const elementWidth = availableWidth / cols\n const elementHeight = availableHeight / rows\n\n // Calculate error for this configuration\n const error = errorFn(elementWidth, elementHeight)\n\n // Update best layout if this is better\n if (error < bestLayout.error) {\n bestLayout = {\n elementWidth,\n elementHeight,\n numCols: cols,\n numRows: rows,\n error\n }\n }\n }\n\n return bestLayout\n }\n\n static styles = css`\n :host {\n display: block;\n font-family: sans-serif;\n box-sizing: border-box;\n margin: auto;\n container-type: size;\n }\n\n .paging:not([active]) {\n display: none !important;\n }\n\n .wrapper {\n display: flex;\n flex-wrap: wrap;\n height: 100%;\n width: 100%;\n padding: 2cqh 2cqw;\n box-sizing: border-box;\n gap: 12px;\n align-content: flex-start;\n }\n\n .wrapper > * {\n flex-shrink: 1;\n min-width: 0;\n min-height: 0;\n }\n\n .image-item {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n }\n\n .title {\n height: 24px;\n font-size: 18px;\n margin: 0;\n padding: 0 4px;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n flex: 0 0 auto;\n white-space: nowrap;\n }\n\n h3 {\n margin: 0;\n max-width: 300px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n p {\n margin: 10px 0 0 0;\n max-width: 300px;\n font-size: 14px;\n line-height: 17px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .img-container {\n flex: 1;\n box-sizing: border-box;\n overflow: hidden;\n min-width: 0;\n min-height: 0;\n }\n\n img {\n width: 100%;\n height: 100%;\n object-fit: contain;\n }\n .no-data {\n font-size: 20px;\n display: flex;\n height: 100%;\n width: 100%;\n text-align: center;\n align-items: center;\n justify-content: center;\n }\n `\n\n render() {\n const images = this.getFilteredImages()\n\n const hasMultipleItems = images.length > 1\n const showTitles = images.filter((img) => img.label).length > 0\n const hasAnyImage = images.some((img) => img.imageUrl)\n\n return html`\n <div\n class=\"wrapper\"\n style=\"background-color: ${this.themeBgColor}; color: ${this\n .themeTitleColor}; gap: ${hasMultipleItems\n ? `${this.inputData?.gap ?? 12}px`\n : '0px'}; ${!hasMultipleItems ? 'flex-direction: column;' : ''}\"\n >\n <div class=\"paging no-data\" ?active=${!hasAnyImage} style=\"color: ${this.themeTitleColor};\">\n No Image\n </div>\n ${repeat(\n images,\n (img) => img.imageUrl,\n (img) => html`\n <div\n class=\"image-item\"\n style=\"width: ${this.elementWidth}px; height: ${this.elementHeight}px;\"\n >\n ${showTitles\n ? html`<h2\n class=\"title\"\n style=\"${this.inputData?.labelFontSize\n ? `font-size: ${this.inputData.labelFontSize}px;`\n : ''}\"\n >\n ${this.inputData?.titleLink\n ? html`<a\n href=\"${this.inputData.titleLink}\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style=\"color: inherit; text-decoration: underline;\"\n >${img.label ?? ''}</a\n >`\n : (img.label ?? '')}\n </h2>`\n : nothing}\n <div class=\"img-container paging\" ?active=\"${img.imageUrl}\">\n <img\n src=\"${ifDefined(img.imageUrl)}\"\n alt=\"${img.label || 'Image Widget'}\"\n style=\"object-fit: ${this.inputData?.stretchToFit ? 'fill' : 'contain'}\"\n />\n </div>\n </div>\n `\n )}\n </div>\n `\n }\n}\n"],"names":["t","e","s","o","n$3","r","n","i","S","c","h","a","l","p","d","u","f","b","y$1","y","v","_","m","g","$","x","T","E","A","C","P","V","N","H","I","L","M$1","R","z","M","Z","j","B","k","w","WidgetImage","LitElement","changedProperties","_changedProperties","theme","cssTextColor","cssBgColor","singleImageUrl","images","timeRangeStart","timeRangeEnd","img","timestamp","ts","numElements","rect","horizontalPadding","verticalPadding","containerWidth","containerHeight","layout","container","errorFn","gap","bestLayout","cols","rows","totalGapWidth","totalGapHeight","availableWidth","availableHeight","elementWidth","elementHeight","error","hasMultipleItems","showTitles","hasAnyImage","html","repeat","nothing","ifDefined","css","__decorateClass","property","state","query","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12]}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Webcomponent widget-image following open-wc recommendations",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "widget-image",
|
|
6
|
-
"version": "1.1.
|
|
6
|
+
"version": "1.1.19",
|
|
7
7
|
"engines": {
|
|
8
8
|
"node": ">=24.9.0",
|
|
9
9
|
"npm": ">=10.0.2"
|
|
@@ -14,11 +14,12 @@
|
|
|
14
14
|
"files": [
|
|
15
15
|
"dist",
|
|
16
16
|
"src",
|
|
17
|
-
"thumbnail.png"
|
|
17
|
+
"thumbnail.png",
|
|
18
|
+
"thumbnail.webp"
|
|
18
19
|
],
|
|
19
20
|
"scripts": {
|
|
20
21
|
"analyze": "cem analyze --litelement",
|
|
21
|
-
"start": "vite",
|
|
22
|
+
"start": "vite build --watch & vite",
|
|
22
23
|
"build": "vite build",
|
|
23
24
|
"watch": "vite build --watch",
|
|
24
25
|
"link": "npm run build && npm link && cd ../RESWARM/frontend && npm link @record-evolution/widget-image",
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
*/
|
|
11
11
|
export type Title = string;
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* Optional URL for the title. When provided, the title becomes a clickable link.
|
|
14
14
|
*/
|
|
15
|
-
export type
|
|
15
|
+
export type TitleLink = string;
|
|
16
16
|
/**
|
|
17
17
|
* When enabled, images stretch to fill the entire widget area, potentially distorting aspect ratio. When disabled, images maintain their original aspect ratio and are contained within the widget bounds with letterboxing if needed.
|
|
18
18
|
*/
|
|
@@ -60,11 +60,11 @@ export type Images = {
|
|
|
60
60
|
}[];
|
|
61
61
|
|
|
62
62
|
/**
|
|
63
|
-
* An image display widget for showing single or multiple images from URLs or
|
|
63
|
+
* An image display widget for showing single or multiple images from URLs or base64-encoded data. Use this widget to display photos, diagrams, camera feeds, or any visual content on dashboards. Supports single image mode with direct URL or file upload, and multi-image mode for grid layouts of multiple images with optional labels. Features time-based filtering for displaying images within a selected time range and responsive grid layouts that optimize image arrangement based on available space.
|
|
64
64
|
*/
|
|
65
65
|
export interface InputData {
|
|
66
66
|
title?: Title;
|
|
67
|
-
|
|
67
|
+
titleLink?: TitleLink;
|
|
68
68
|
stretchToFit?: StretchToFill;
|
|
69
69
|
multiImage?: MultiImage;
|
|
70
70
|
gap?: Gap;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"title": "InputData",
|
|
3
|
-
"description": "An image display widget for showing single or multiple images from URLs or
|
|
3
|
+
"description": "An image display widget for showing single or multiple images from URLs or base64-encoded data. Use this widget to display photos, diagrams, camera feeds, or any visual content on dashboards. Supports single image mode with direct URL or file upload, and multi-image mode for grid layouts of multiple images with optional labels. Features time-based filtering for displaying images within a selected time range and responsive grid layouts that optimize image arrangement based on available space.",
|
|
4
4
|
"type": "object",
|
|
5
5
|
"properties": {
|
|
6
6
|
"title": {
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
"order": 1,
|
|
10
10
|
"type": "string"
|
|
11
11
|
},
|
|
12
|
-
"
|
|
13
|
-
"title": "
|
|
14
|
-
"description": "
|
|
12
|
+
"titleLink": {
|
|
13
|
+
"title": "Title Link",
|
|
14
|
+
"description": "Optional URL for the title. When provided, the title becomes a clickable link.",
|
|
15
15
|
"order": 2,
|
|
16
16
|
"type": "string"
|
|
17
17
|
},
|
package/src/widget-image.ts
CHANGED
|
@@ -20,7 +20,6 @@ export class WidgetImage extends LitElement {
|
|
|
20
20
|
|
|
21
21
|
@state() private themeBgColor?: string
|
|
22
22
|
@state() private themeTitleColor?: string
|
|
23
|
-
@state() private themeSubtitleColor?: string
|
|
24
23
|
@state() private elementWidth: number = 0
|
|
25
24
|
@state() private elementHeight: number = 0
|
|
26
25
|
|
|
@@ -67,8 +66,6 @@ export class WidgetImage extends LitElement {
|
|
|
67
66
|
const cssBgColor = getComputedStyle(this).getPropertyValue('--re-tile-background-color').trim()
|
|
68
67
|
this.themeBgColor = cssBgColor || this.theme?.theme_object?.backgroundColor
|
|
69
68
|
this.themeTitleColor = cssTextColor || this.theme?.theme_object?.title?.textStyle?.color
|
|
70
|
-
this.themeSubtitleColor =
|
|
71
|
-
cssTextColor || this.theme?.theme_object?.title?.subtextStyle?.color || this.themeTitleColor
|
|
72
69
|
}
|
|
73
70
|
|
|
74
71
|
/**
|
|
@@ -317,28 +314,6 @@ export class WidgetImage extends LitElement {
|
|
|
317
314
|
? `${this.inputData?.gap ?? 12}px`
|
|
318
315
|
: '0px'}; ${!hasMultipleItems ? 'flex-direction: column;' : ''}"
|
|
319
316
|
>
|
|
320
|
-
${!hasMultipleItems && this.inputData?.title
|
|
321
|
-
? html`
|
|
322
|
-
<h3
|
|
323
|
-
class="paging"
|
|
324
|
-
?active=${this.inputData?.title}
|
|
325
|
-
style="color: ${this.themeTitleColor};"
|
|
326
|
-
>
|
|
327
|
-
${this.inputData?.title}
|
|
328
|
-
</h3>
|
|
329
|
-
`
|
|
330
|
-
: nothing}
|
|
331
|
-
${!hasMultipleItems && this.inputData?.subTitle
|
|
332
|
-
? html`
|
|
333
|
-
<p
|
|
334
|
-
class="paging"
|
|
335
|
-
?active=${this.inputData?.subTitle}
|
|
336
|
-
style="color: ${this.themeSubtitleColor};"
|
|
337
|
-
>
|
|
338
|
-
${this.inputData?.subTitle}
|
|
339
|
-
</p>
|
|
340
|
-
`
|
|
341
|
-
: nothing}
|
|
342
317
|
<div class="paging no-data" ?active=${!hasAnyImage} style="color: ${this.themeTitleColor};">
|
|
343
318
|
No Image
|
|
344
319
|
</div>
|
|
@@ -357,7 +332,15 @@ export class WidgetImage extends LitElement {
|
|
|
357
332
|
? `font-size: ${this.inputData.labelFontSize}px;`
|
|
358
333
|
: ''}"
|
|
359
334
|
>
|
|
360
|
-
${
|
|
335
|
+
${this.inputData?.titleLink
|
|
336
|
+
? html`<a
|
|
337
|
+
href="${this.inputData.titleLink}"
|
|
338
|
+
target="_blank"
|
|
339
|
+
rel="noopener noreferrer"
|
|
340
|
+
style="color: inherit; text-decoration: underline;"
|
|
341
|
+
>${img.label ?? ''}</a
|
|
342
|
+
>`
|
|
343
|
+
: (img.label ?? '')}
|
|
361
344
|
</h2>`
|
|
362
345
|
: nothing}
|
|
363
346
|
<div class="img-container paging" ?active="${img.imageUrl}">
|
package/thumbnail.webp
ADDED
|
Binary file
|