xactsize-webcomponents 1.0.8 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
- const De = (s, e, t) => {
2
- const i = s[e];
3
- return i ? typeof i == "function" ? i() : Promise.resolve(i) : new Promise((r, o) => {
1
+ const Fe = (i, e, t) => {
2
+ const o = i[e];
3
+ return o ? typeof o == "function" ? o() : Promise.resolve(o) : new Promise((s, r) => {
4
4
  (typeof queueMicrotask == "function" ? queueMicrotask : setTimeout)(
5
- o.bind(
5
+ r.bind(
6
6
  null,
7
7
  new Error(
8
8
  "Unknown variable dynamic import: " + e + (e.split("/").length !== t ? ". Note that variables only represent file names one level deep." : "")
@@ -16,18 +16,18 @@ const De = (s, e, t) => {
16
16
  * Copyright 2019 Google LLC
17
17
  * SPDX-License-Identifier: BSD-3-Clause
18
18
  */
19
- const H = globalThis, se = H.ShadowRoot && (H.ShadyCSS === void 0 || H.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, ie = Symbol(), ne = /* @__PURE__ */ new WeakMap();
20
- let xe = class {
21
- constructor(e, t, i) {
22
- if (this._$cssResult$ = !0, i !== ie) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
19
+ const Y = globalThis, de = Y.ShadowRoot && (Y.ShadyCSS === void 0 || Y.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, pe = Symbol(), ge = /* @__PURE__ */ new WeakMap();
20
+ let Oe = class {
21
+ constructor(e, t, o) {
22
+ if (this._$cssResult$ = !0, o !== pe) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
23
23
  this.cssText = e, this.t = t;
24
24
  }
25
25
  get styleSheet() {
26
26
  let e = this.o;
27
27
  const t = this.t;
28
- if (se && e === void 0) {
29
- const i = t !== void 0 && t.length === 1;
30
- i && (e = ne.get(t)), e === void 0 && ((this.o = e = new CSSStyleSheet()).replaceSync(this.cssText), i && ne.set(t, e));
28
+ if (de && e === void 0) {
29
+ const o = t !== void 0 && t.length === 1;
30
+ o && (e = ge.get(t)), e === void 0 && ((this.o = e = new CSSStyleSheet()).replaceSync(this.cssText), o && ge.set(t, e));
31
31
  }
32
32
  return e;
33
33
  }
@@ -35,120 +35,120 @@ let xe = class {
35
35
  return this.cssText;
36
36
  }
37
37
  };
38
- const Ne = (s) => new xe(typeof s == "string" ? s : s + "", void 0, ie), Oe = (s, ...e) => {
39
- const t = s.length === 1 ? s[0] : e.reduce((i, r, o) => i + ((n) => {
38
+ const Ze = (i) => new Oe(typeof i == "string" ? i : i + "", void 0, pe), j = (i, ...e) => {
39
+ const t = i.length === 1 ? i[0] : e.reduce((o, s, r) => o + ((n) => {
40
40
  if (n._$cssResult$ === !0) return n.cssText;
41
41
  if (typeof n == "number") return n;
42
42
  throw Error("Value passed to 'css' function must be a 'css' function result: " + n + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
43
- })(r) + s[o + 1], s[0]);
44
- return new xe(t, s, ie);
45
- }, Qe = (s, e) => {
46
- if (se) s.adoptedStyleSheets = e.map((t) => t instanceof CSSStyleSheet ? t : t.styleSheet);
43
+ })(s) + i[r + 1], i[0]);
44
+ return new Oe(t, i, pe);
45
+ }, ke = (i, e) => {
46
+ if (de) i.adoptedStyleSheets = e.map((t) => t instanceof CSSStyleSheet ? t : t.styleSheet);
47
47
  else for (const t of e) {
48
- const i = document.createElement("style"), r = H.litNonce;
49
- r !== void 0 && i.setAttribute("nonce", r), i.textContent = t.cssText, s.appendChild(i);
48
+ const o = document.createElement("style"), s = Y.litNonce;
49
+ s !== void 0 && o.setAttribute("nonce", s), o.textContent = t.cssText, i.appendChild(o);
50
50
  }
51
- }, ae = se ? (s) => s : (s) => s instanceof CSSStyleSheet ? ((e) => {
51
+ }, _e = de ? (i) => i : (i) => i instanceof CSSStyleSheet ? ((e) => {
52
52
  let t = "";
53
- for (const i of e.cssRules) t += i.cssText;
54
- return Ne(t);
55
- })(s) : s;
53
+ for (const o of e.cssRules) t += o.cssText;
54
+ return Ze(t);
55
+ })(i) : i;
56
56
  /**
57
57
  * @license
58
58
  * Copyright 2017 Google LLC
59
59
  * SPDX-License-Identifier: BSD-3-Clause
60
60
  */
61
- const { is: Ge, defineProperty: Ye, getOwnPropertyDescriptor: Ue, getOwnPropertyNames: ke, getOwnPropertySymbols: Pe, getPrototypeOf: Le } = Object, v = globalThis, ce = v.trustedTypes, He = ce ? ce.emptyScript : "", K = v.reactiveElementPolyfillSupport, N = (s, e) => s, j = { toAttribute(s, e) {
61
+ const { is: Ge, defineProperty: We, getOwnPropertyDescriptor: qe, getOwnPropertyNames: Ye, getOwnPropertySymbols: Ke, getPrototypeOf: Xe } = Object, w = globalThis, ye = w.trustedTypes, Je = ye ? ye.emptyScript : "", ie = w.reactiveElementPolyfillSupport, P = (i, e) => i, K = { toAttribute(i, e) {
62
62
  switch (e) {
63
63
  case Boolean:
64
- s = s ? He : null;
64
+ i = i ? Je : null;
65
65
  break;
66
66
  case Object:
67
67
  case Array:
68
- s = s == null ? s : JSON.stringify(s);
68
+ i = i == null ? i : JSON.stringify(i);
69
69
  }
70
- return s;
71
- }, fromAttribute(s, e) {
72
- let t = s;
70
+ return i;
71
+ }, fromAttribute(i, e) {
72
+ let t = i;
73
73
  switch (e) {
74
74
  case Boolean:
75
- t = s !== null;
75
+ t = i !== null;
76
76
  break;
77
77
  case Number:
78
- t = s === null ? null : Number(s);
78
+ t = i === null ? null : Number(i);
79
79
  break;
80
80
  case Object:
81
81
  case Array:
82
82
  try {
83
- t = JSON.parse(s);
83
+ t = JSON.parse(i);
84
84
  } catch {
85
85
  t = null;
86
86
  }
87
87
  }
88
88
  return t;
89
- } }, re = (s, e) => !Ge(s, e), le = { attribute: !0, type: String, converter: j, reflect: !1, useDefault: !1, hasChanged: re };
90
- Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), v.litPropertyMetadata ?? (v.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
91
- let z = class extends HTMLElement {
89
+ } }, ue = (i, e) => !Ge(i, e), Ee = { attribute: !0, type: String, converter: K, reflect: !1, useDefault: !1, hasChanged: ue };
90
+ Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), w.litPropertyMetadata ?? (w.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
91
+ let H = class extends HTMLElement {
92
92
  static addInitializer(e) {
93
93
  this._$Ei(), (this.l ?? (this.l = [])).push(e);
94
94
  }
95
95
  static get observedAttributes() {
96
96
  return this.finalize(), this._$Eh && [...this._$Eh.keys()];
97
97
  }
98
- static createProperty(e, t = le) {
98
+ static createProperty(e, t = Ee) {
99
99
  if (t.state && (t.attribute = !1), this._$Ei(), this.prototype.hasOwnProperty(e) && ((t = Object.create(t)).wrapped = !0), this.elementProperties.set(e, t), !t.noAccessor) {
100
- const i = Symbol(), r = this.getPropertyDescriptor(e, i, t);
101
- r !== void 0 && Ye(this.prototype, e, r);
100
+ const o = Symbol(), s = this.getPropertyDescriptor(e, o, t);
101
+ s !== void 0 && We(this.prototype, e, s);
102
102
  }
103
103
  }
104
- static getPropertyDescriptor(e, t, i) {
105
- const { get: r, set: o } = Ue(this.prototype, e) ?? { get() {
104
+ static getPropertyDescriptor(e, t, o) {
105
+ const { get: s, set: r } = qe(this.prototype, e) ?? { get() {
106
106
  return this[t];
107
107
  }, set(n) {
108
108
  this[t] = n;
109
109
  } };
110
- return { get: r, set(n) {
111
- const l = r == null ? void 0 : r.call(this);
112
- o == null || o.call(this, n), this.requestUpdate(e, l, i);
110
+ return { get: s, set(n) {
111
+ const h = s == null ? void 0 : s.call(this);
112
+ r == null || r.call(this, n), this.requestUpdate(e, h, o);
113
113
  }, configurable: !0, enumerable: !0 };
114
114
  }
115
115
  static getPropertyOptions(e) {
116
- return this.elementProperties.get(e) ?? le;
116
+ return this.elementProperties.get(e) ?? Ee;
117
117
  }
118
118
  static _$Ei() {
119
- if (this.hasOwnProperty(N("elementProperties"))) return;
120
- const e = Le(this);
119
+ if (this.hasOwnProperty(P("elementProperties"))) return;
120
+ const e = Xe(this);
121
121
  e.finalize(), e.l !== void 0 && (this.l = [...e.l]), this.elementProperties = new Map(e.elementProperties);
122
122
  }
123
123
  static finalize() {
124
- if (this.hasOwnProperty(N("finalized"))) return;
125
- if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(N("properties"))) {
126
- const t = this.properties, i = [...ke(t), ...Pe(t)];
127
- for (const r of i) this.createProperty(r, t[r]);
124
+ if (this.hasOwnProperty(P("finalized"))) return;
125
+ if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(P("properties"))) {
126
+ const t = this.properties, o = [...Ye(t), ...Ke(t)];
127
+ for (const s of o) this.createProperty(s, t[s]);
128
128
  }
129
129
  const e = this[Symbol.metadata];
130
130
  if (e !== null) {
131
131
  const t = litPropertyMetadata.get(e);
132
- if (t !== void 0) for (const [i, r] of t) this.elementProperties.set(i, r);
132
+ if (t !== void 0) for (const [o, s] of t) this.elementProperties.set(o, s);
133
133
  }
134
134
  this._$Eh = /* @__PURE__ */ new Map();
135
- for (const [t, i] of this.elementProperties) {
136
- const r = this._$Eu(t, i);
137
- r !== void 0 && this._$Eh.set(r, t);
135
+ for (const [t, o] of this.elementProperties) {
136
+ const s = this._$Eu(t, o);
137
+ s !== void 0 && this._$Eh.set(s, t);
138
138
  }
139
139
  this.elementStyles = this.finalizeStyles(this.styles);
140
140
  }
141
141
  static finalizeStyles(e) {
142
142
  const t = [];
143
143
  if (Array.isArray(e)) {
144
- const i = new Set(e.flat(1 / 0).reverse());
145
- for (const r of i) t.unshift(ae(r));
146
- } else e !== void 0 && t.push(ae(e));
144
+ const o = new Set(e.flat(1 / 0).reverse());
145
+ for (const s of o) t.unshift(_e(s));
146
+ } else e !== void 0 && t.push(_e(e));
147
147
  return t;
148
148
  }
149
149
  static _$Eu(e, t) {
150
- const i = t.attribute;
151
- return i === !1 ? void 0 : typeof i == "string" ? i : typeof e == "string" ? e.toLowerCase() : void 0;
150
+ const o = t.attribute;
151
+ return o === !1 ? void 0 : typeof o == "string" ? o : typeof e == "string" ? e.toLowerCase() : void 0;
152
152
  }
153
153
  constructor() {
154
154
  super(), this._$Ep = void 0, this.isUpdatePending = !1, this.hasUpdated = !1, this._$Em = null, this._$Ev();
@@ -167,18 +167,18 @@ let z = class extends HTMLElement {
167
167
  }
168
168
  _$E_() {
169
169
  const e = /* @__PURE__ */ new Map(), t = this.constructor.elementProperties;
170
- for (const i of t.keys()) this.hasOwnProperty(i) && (e.set(i, this[i]), delete this[i]);
170
+ for (const o of t.keys()) this.hasOwnProperty(o) && (e.set(o, this[o]), delete this[o]);
171
171
  e.size > 0 && (this._$Ep = e);
172
172
  }
173
173
  createRenderRoot() {
174
174
  const e = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
175
- return Qe(e, this.constructor.elementStyles), e;
175
+ return ke(e, this.constructor.elementStyles), e;
176
176
  }
177
177
  connectedCallback() {
178
178
  var e;
179
179
  this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this.enableUpdating(!0), (e = this._$EO) == null || e.forEach((t) => {
180
- var i;
181
- return (i = t.hostConnected) == null ? void 0 : i.call(t);
180
+ var o;
181
+ return (o = t.hostConnected) == null ? void 0 : o.call(t);
182
182
  });
183
183
  }
184
184
  enableUpdating(e) {
@@ -186,40 +186,40 @@ let z = class extends HTMLElement {
186
186
  disconnectedCallback() {
187
187
  var e;
188
188
  (e = this._$EO) == null || e.forEach((t) => {
189
- var i;
190
- return (i = t.hostDisconnected) == null ? void 0 : i.call(t);
189
+ var o;
190
+ return (o = t.hostDisconnected) == null ? void 0 : o.call(t);
191
191
  });
192
192
  }
193
- attributeChangedCallback(e, t, i) {
194
- this._$AK(e, i);
193
+ attributeChangedCallback(e, t, o) {
194
+ this._$AK(e, o);
195
195
  }
196
196
  _$ET(e, t) {
197
- var o;
198
- const i = this.constructor.elementProperties.get(e), r = this.constructor._$Eu(e, i);
199
- if (r !== void 0 && i.reflect === !0) {
200
- const n = (((o = i.converter) == null ? void 0 : o.toAttribute) !== void 0 ? i.converter : j).toAttribute(t, i.type);
201
- this._$Em = e, n == null ? this.removeAttribute(r) : this.setAttribute(r, n), this._$Em = null;
197
+ var r;
198
+ const o = this.constructor.elementProperties.get(e), s = this.constructor._$Eu(e, o);
199
+ if (s !== void 0 && o.reflect === !0) {
200
+ const n = (((r = o.converter) == null ? void 0 : r.toAttribute) !== void 0 ? o.converter : K).toAttribute(t, o.type);
201
+ this._$Em = e, n == null ? this.removeAttribute(s) : this.setAttribute(s, n), this._$Em = null;
202
202
  }
203
203
  }
204
204
  _$AK(e, t) {
205
- var o, n;
206
- const i = this.constructor, r = i._$Eh.get(e);
207
- if (r !== void 0 && this._$Em !== r) {
208
- const l = i.getPropertyOptions(r), c = typeof l.converter == "function" ? { fromAttribute: l.converter } : ((o = l.converter) == null ? void 0 : o.fromAttribute) !== void 0 ? l.converter : j;
209
- this._$Em = r, this[r] = c.fromAttribute(t, l.type) ?? ((n = this._$Ej) == null ? void 0 : n.get(r)) ?? null, this._$Em = null;
205
+ var r, n;
206
+ const o = this.constructor, s = o._$Eh.get(e);
207
+ if (s !== void 0 && this._$Em !== s) {
208
+ const h = o.getPropertyOptions(s), l = typeof h.converter == "function" ? { fromAttribute: h.converter } : ((r = h.converter) == null ? void 0 : r.fromAttribute) !== void 0 ? h.converter : K;
209
+ this._$Em = s, this[s] = l.fromAttribute(t, h.type) ?? ((n = this._$Ej) == null ? void 0 : n.get(s)) ?? null, this._$Em = null;
210
210
  }
211
211
  }
212
- requestUpdate(e, t, i) {
213
- var r;
212
+ requestUpdate(e, t, o) {
213
+ var s;
214
214
  if (e !== void 0) {
215
- const o = this.constructor, n = this[e];
216
- if (i ?? (i = o.getPropertyOptions(e)), !((i.hasChanged ?? re)(n, t) || i.useDefault && i.reflect && n === ((r = this._$Ej) == null ? void 0 : r.get(e)) && !this.hasAttribute(o._$Eu(e, i)))) return;
217
- this.C(e, t, i);
215
+ const r = this.constructor, n = this[e];
216
+ if (o ?? (o = r.getPropertyOptions(e)), !((o.hasChanged ?? ue)(n, t) || o.useDefault && o.reflect && n === ((s = this._$Ej) == null ? void 0 : s.get(e)) && !this.hasAttribute(r._$Eu(e, o)))) return;
217
+ this.C(e, t, o);
218
218
  }
219
219
  this.isUpdatePending === !1 && (this._$ES = this._$EP());
220
220
  }
221
- C(e, t, { useDefault: i, reflect: r, wrapped: o }, n) {
222
- i && !(this._$Ej ?? (this._$Ej = /* @__PURE__ */ new Map())).has(e) && (this._$Ej.set(e, n ?? t ?? this[e]), o !== !0 || n !== void 0) || (this._$AL.has(e) || (this.hasUpdated || i || (t = void 0), this._$AL.set(e, t)), r === !0 && this._$Em !== e && (this._$Eq ?? (this._$Eq = /* @__PURE__ */ new Set())).add(e));
221
+ C(e, t, { useDefault: o, reflect: s, wrapped: r }, n) {
222
+ o && !(this._$Ej ?? (this._$Ej = /* @__PURE__ */ new Map())).has(e) && (this._$Ej.set(e, n ?? t ?? this[e]), r !== !0 || n !== void 0) || (this._$AL.has(e) || (this.hasUpdated || o || (t = void 0), this._$AL.set(e, t)), s === !0 && this._$Em !== e && (this._$Eq ?? (this._$Eq = /* @__PURE__ */ new Set())).add(e));
223
223
  }
224
224
  async _$EP() {
225
225
  this.isUpdatePending = !0;
@@ -235,28 +235,28 @@ let z = class extends HTMLElement {
235
235
  return this.performUpdate();
236
236
  }
237
237
  performUpdate() {
238
- var i;
238
+ var o;
239
239
  if (!this.isUpdatePending) return;
240
240
  if (!this.hasUpdated) {
241
241
  if (this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this._$Ep) {
242
- for (const [o, n] of this._$Ep) this[o] = n;
242
+ for (const [r, n] of this._$Ep) this[r] = n;
243
243
  this._$Ep = void 0;
244
244
  }
245
- const r = this.constructor.elementProperties;
246
- if (r.size > 0) for (const [o, n] of r) {
247
- const { wrapped: l } = n, c = this[o];
248
- l !== !0 || this._$AL.has(o) || c === void 0 || this.C(o, void 0, n, c);
245
+ const s = this.constructor.elementProperties;
246
+ if (s.size > 0) for (const [r, n] of s) {
247
+ const { wrapped: h } = n, l = this[r];
248
+ h !== !0 || this._$AL.has(r) || l === void 0 || this.C(r, void 0, n, l);
249
249
  }
250
250
  }
251
251
  let e = !1;
252
252
  const t = this._$AL;
253
253
  try {
254
- e = this.shouldUpdate(t), e ? (this.willUpdate(t), (i = this._$EO) == null || i.forEach((r) => {
255
- var o;
256
- return (o = r.hostUpdate) == null ? void 0 : o.call(r);
254
+ e = this.shouldUpdate(t), e ? (this.willUpdate(t), (o = this._$EO) == null || o.forEach((s) => {
255
+ var r;
256
+ return (r = s.hostUpdate) == null ? void 0 : r.call(s);
257
257
  }), this.update(t)) : this._$EM();
258
- } catch (r) {
259
- throw e = !1, this._$EM(), r;
258
+ } catch (s) {
259
+ throw e = !1, this._$EM(), s;
260
260
  }
261
261
  e && this._$AE(t);
262
262
  }
@@ -264,9 +264,9 @@ let z = class extends HTMLElement {
264
264
  }
265
265
  _$AE(e) {
266
266
  var t;
267
- (t = this._$EO) == null || t.forEach((i) => {
268
- var r;
269
- return (r = i.hostUpdated) == null ? void 0 : r.call(i);
267
+ (t = this._$EO) == null || t.forEach((o) => {
268
+ var s;
269
+ return (s = o.hostUpdated) == null ? void 0 : s.call(o);
270
270
  }), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(e)), this.updated(e);
271
271
  }
272
272
  _$EM() {
@@ -289,76 +289,76 @@ let z = class extends HTMLElement {
289
289
  firstUpdated(e) {
290
290
  }
291
291
  };
292
- z.elementStyles = [], z.shadowRootOptions = { mode: "open" }, z[N("elementProperties")] = /* @__PURE__ */ new Map(), z[N("finalized")] = /* @__PURE__ */ new Map(), K == null || K({ ReactiveElement: z }), (v.reactiveElementVersions ?? (v.reactiveElementVersions = [])).push("2.1.0");
292
+ H.elementStyles = [], H.shadowRootOptions = { mode: "open" }, H[P("elementProperties")] = /* @__PURE__ */ new Map(), H[P("finalized")] = /* @__PURE__ */ new Map(), ie == null || ie({ ReactiveElement: H }), (w.reactiveElementVersions ?? (w.reactiveElementVersions = [])).push("2.1.0");
293
293
  /**
294
294
  * @license
295
295
  * Copyright 2017 Google LLC
296
296
  * SPDX-License-Identifier: BSD-3-Clause
297
297
  */
298
- const O = globalThis, Z = O.trustedTypes, he = Z ? Z.createPolicy("lit-html", { createHTML: (s) => s }) : void 0, ve = "$lit$", x = `lit$${Math.random().toFixed(9).slice(2)}$`, be = "?" + x, je = `<${be}>`, T = document, G = () => T.createComment(""), Y = (s) => s === null || typeof s != "object" && typeof s != "function", oe = Array.isArray, Ze = (s) => oe(s) || typeof (s == null ? void 0 : s[Symbol.iterator]) == "function", J = `[
299
- \f\r]`, D = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, de = /-->/g, pe = />/g, R = RegExp(`>|${J}(?:([^\\s"'>=/]+)(${J}*=${J}*(?:[^
300
- \f\r"'\`<>=]|("|')|))|$)`, "g"), ue = /'/g, me = /"/g, Re = /^(?:script|style|textarea|title)$/i, Fe = (s) => (e, ...t) => ({ _$litType$: s, strings: e, values: t }), A = Fe(1), B = Symbol.for("lit-noChange"), m = Symbol.for("lit-nothing"), ge = /* @__PURE__ */ new WeakMap(), I = T.createTreeWalker(T, 129);
301
- function we(s, e) {
302
- if (!oe(s) || !s.hasOwnProperty("raw")) throw Error("invalid template strings array");
303
- return he !== void 0 ? he.createHTML(e) : e;
298
+ const B = globalThis, X = B.trustedTypes, ve = X ? X.createPolicy("lit-html", { createHTML: (i) => i }) : void 0, He = "$lit$", b = `lit$${Math.random().toFixed(9).slice(2)}$`, Ie = "?" + b, Qe = `<${Ie}>`, S = document, N = () => S.createComment(""), z = (i) => i === null || typeof i != "object" && typeof i != "function", fe = Array.isArray, et = (i) => fe(i) || typeof (i == null ? void 0 : i[Symbol.iterator]) == "function", se = `[
299
+ \f\r]`, D = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Ce = /-->/g, xe = />/g, $ = RegExp(`>|${se}(?:([^\\s"'>=/]+)(${se}*=${se}*(?:[^
300
+ \f\r"'\`<>=]|("|')|))|$)`, "g"), be = /'/g, we = /"/g, De = /^(?:script|style|textarea|title)$/i, tt = (i) => (e, ...t) => ({ _$litType$: i, strings: e, values: t }), y = tt(1), L = Symbol.for("lit-noChange"), f = Symbol.for("lit-nothing"), $e = /* @__PURE__ */ new WeakMap(), M = S.createTreeWalker(S, 129);
301
+ function Pe(i, e) {
302
+ if (!fe(i) || !i.hasOwnProperty("raw")) throw Error("invalid template strings array");
303
+ return ve !== void 0 ? ve.createHTML(e) : e;
304
304
  }
305
- const We = (s, e) => {
306
- const t = s.length - 1, i = [];
307
- let r, o = e === 2 ? "<svg>" : e === 3 ? "<math>" : "", n = D;
308
- for (let l = 0; l < t; l++) {
309
- const c = s[l];
310
- let p, g, h = -1, E = 0;
311
- for (; E < c.length && (n.lastIndex = E, g = n.exec(c), g !== null); ) E = n.lastIndex, n === D ? g[1] === "!--" ? n = de : g[1] !== void 0 ? n = pe : g[2] !== void 0 ? (Re.test(g[2]) && (r = RegExp("</" + g[2], "g")), n = R) : g[3] !== void 0 && (n = R) : n === R ? g[0] === ">" ? (n = r ?? D, h = -1) : g[1] === void 0 ? h = -2 : (h = n.lastIndex - g[2].length, p = g[1], n = g[3] === void 0 ? R : g[3] === '"' ? me : ue) : n === me || n === ue ? n = R : n === de || n === pe ? n = D : (n = R, r = void 0);
312
- const M = n === R && s[l + 1].startsWith("/>") ? " " : "";
313
- o += n === D ? c + je : h >= 0 ? (i.push(p), c.slice(0, h) + ve + c.slice(h) + x + M) : c + x + (h === -2 ? l : M);
314
- }
315
- return [we(s, o + (s[t] || "<?>") + (e === 2 ? "</svg>" : e === 3 ? "</math>" : "")), i];
305
+ const it = (i, e) => {
306
+ const t = i.length - 1, o = [];
307
+ let s, r = e === 2 ? "<svg>" : e === 3 ? "<math>" : "", n = D;
308
+ for (let h = 0; h < t; h++) {
309
+ const l = i[h];
310
+ let p, g, c = -1, E = 0;
311
+ for (; E < l.length && (n.lastIndex = E, g = n.exec(l), g !== null); ) E = n.lastIndex, n === D ? g[1] === "!--" ? n = Ce : g[1] !== void 0 ? n = xe : g[2] !== void 0 ? (De.test(g[2]) && (s = RegExp("</" + g[2], "g")), n = $) : g[3] !== void 0 && (n = $) : n === $ ? g[0] === ">" ? (n = s ?? D, c = -1) : g[1] === void 0 ? c = -2 : (c = n.lastIndex - g[2].length, p = g[1], n = g[3] === void 0 ? $ : g[3] === '"' ? we : be) : n === we || n === be ? n = $ : n === Ce || n === xe ? n = D : (n = $, s = void 0);
312
+ const x = n === $ && i[h + 1].startsWith("/>") ? " " : "";
313
+ r += n === D ? l + Qe : c >= 0 ? (o.push(p), l.slice(0, c) + He + l.slice(c) + b + x) : l + b + (c === -2 ? h : x);
314
+ }
315
+ return [Pe(i, r + (i[t] || "<?>") + (e === 2 ? "</svg>" : e === 3 ? "</math>" : "")), o];
316
316
  };
317
317
  class U {
318
- constructor({ strings: e, _$litType$: t }, i) {
319
- let r;
318
+ constructor({ strings: e, _$litType$: t }, o) {
319
+ let s;
320
320
  this.parts = [];
321
- let o = 0, n = 0;
322
- const l = e.length - 1, c = this.parts, [p, g] = We(e, t);
323
- if (this.el = U.createElement(p, i), I.currentNode = this.el.content, t === 2 || t === 3) {
324
- const h = this.el.content.firstChild;
325
- h.replaceWith(...h.childNodes);
321
+ let r = 0, n = 0;
322
+ const h = e.length - 1, l = this.parts, [p, g] = it(e, t);
323
+ if (this.el = U.createElement(p, o), M.currentNode = this.el.content, t === 2 || t === 3) {
324
+ const c = this.el.content.firstChild;
325
+ c.replaceWith(...c.childNodes);
326
326
  }
327
- for (; (r = I.nextNode()) !== null && c.length < l; ) {
328
- if (r.nodeType === 1) {
329
- if (r.hasAttributes()) for (const h of r.getAttributeNames()) if (h.endsWith(ve)) {
330
- const E = g[n++], M = r.getAttribute(h).split(x), P = /([.?@])?(.*)/.exec(E);
331
- c.push({ type: 1, index: o, name: P[2], strings: M, ctor: P[1] === "." ? Ke : P[1] === "?" ? Je : P[1] === "@" ? qe : V }), r.removeAttribute(h);
332
- } else h.startsWith(x) && (c.push({ type: 6, index: o }), r.removeAttribute(h));
333
- if (Re.test(r.tagName)) {
334
- const h = r.textContent.split(x), E = h.length - 1;
327
+ for (; (s = M.nextNode()) !== null && l.length < h; ) {
328
+ if (s.nodeType === 1) {
329
+ if (s.hasAttributes()) for (const c of s.getAttributeNames()) if (c.endsWith(He)) {
330
+ const E = g[n++], x = s.getAttribute(c).split(b), W = /([.?@])?(.*)/.exec(E);
331
+ l.push({ type: 1, index: r, name: W[2], strings: x, ctor: W[1] === "." ? ot : W[1] === "?" ? rt : W[1] === "@" ? nt : ee }), s.removeAttribute(c);
332
+ } else c.startsWith(b) && (l.push({ type: 6, index: r }), s.removeAttribute(c));
333
+ if (De.test(s.tagName)) {
334
+ const c = s.textContent.split(b), E = c.length - 1;
335
335
  if (E > 0) {
336
- r.textContent = Z ? Z.emptyScript : "";
337
- for (let M = 0; M < E; M++) r.append(h[M], G()), I.nextNode(), c.push({ type: 2, index: ++o });
338
- r.append(h[E], G());
336
+ s.textContent = X ? X.emptyScript : "";
337
+ for (let x = 0; x < E; x++) s.append(c[x], N()), M.nextNode(), l.push({ type: 2, index: ++r });
338
+ s.append(c[E], N());
339
339
  }
340
340
  }
341
- } else if (r.nodeType === 8) if (r.data === be) c.push({ type: 2, index: o });
341
+ } else if (s.nodeType === 8) if (s.data === Ie) l.push({ type: 2, index: r });
342
342
  else {
343
- let h = -1;
344
- for (; (h = r.data.indexOf(x, h + 1)) !== -1; ) c.push({ type: 7, index: o }), h += x.length - 1;
343
+ let c = -1;
344
+ for (; (c = s.data.indexOf(b, c + 1)) !== -1; ) l.push({ type: 7, index: r }), c += b.length - 1;
345
345
  }
346
- o++;
346
+ r++;
347
347
  }
348
348
  }
349
349
  static createElement(e, t) {
350
- const i = T.createElement("template");
351
- return i.innerHTML = e, i;
350
+ const o = S.createElement("template");
351
+ return o.innerHTML = e, o;
352
352
  }
353
353
  }
354
- function C(s, e, t = s, i) {
355
- var n, l;
356
- if (e === B) return e;
357
- let r = i !== void 0 ? (n = t._$Co) == null ? void 0 : n[i] : t._$Cl;
358
- const o = Y(e) ? void 0 : e._$litDirective$;
359
- return (r == null ? void 0 : r.constructor) !== o && ((l = r == null ? void 0 : r._$AO) == null || l.call(r, !1), o === void 0 ? r = void 0 : (r = new o(s), r._$AT(s, t, i)), i !== void 0 ? (t._$Co ?? (t._$Co = []))[i] = r : t._$Cl = r), r !== void 0 && (e = C(s, r._$AS(s, e.values), r, i)), e;
354
+ function I(i, e, t = i, o) {
355
+ var n, h;
356
+ if (e === L) return e;
357
+ let s = o !== void 0 ? (n = t._$Co) == null ? void 0 : n[o] : t._$Cl;
358
+ const r = z(e) ? void 0 : e._$litDirective$;
359
+ return (s == null ? void 0 : s.constructor) !== r && ((h = s == null ? void 0 : s._$AO) == null || h.call(s, !1), r === void 0 ? s = void 0 : (s = new r(i), s._$AT(i, t, o)), o !== void 0 ? (t._$Co ?? (t._$Co = []))[o] = s : t._$Cl = s), s !== void 0 && (e = I(i, s._$AS(i, e.values), s, o)), e;
360
360
  }
361
- class Ve {
361
+ class st {
362
362
  constructor(e, t) {
363
363
  this._$AV = [], this._$AN = void 0, this._$AD = e, this._$AM = t;
364
364
  }
@@ -369,30 +369,30 @@ class Ve {
369
369
  return this._$AM._$AU;
370
370
  }
371
371
  u(e) {
372
- const { el: { content: t }, parts: i } = this._$AD, r = ((e == null ? void 0 : e.creationScope) ?? T).importNode(t, !0);
373
- I.currentNode = r;
374
- let o = I.nextNode(), n = 0, l = 0, c = i[0];
375
- for (; c !== void 0; ) {
376
- if (n === c.index) {
372
+ const { el: { content: t }, parts: o } = this._$AD, s = ((e == null ? void 0 : e.creationScope) ?? S).importNode(t, !0);
373
+ M.currentNode = s;
374
+ let r = M.nextNode(), n = 0, h = 0, l = o[0];
375
+ for (; l !== void 0; ) {
376
+ if (n === l.index) {
377
377
  let p;
378
- c.type === 2 ? p = new k(o, o.nextSibling, this, e) : c.type === 1 ? p = new c.ctor(o, c.name, c.strings, this, e) : c.type === 6 && (p = new Xe(o, this, e)), this._$AV.push(p), c = i[++l];
378
+ l.type === 2 ? p = new F(r, r.nextSibling, this, e) : l.type === 1 ? p = new l.ctor(r, l.name, l.strings, this, e) : l.type === 6 && (p = new at(r, this, e)), this._$AV.push(p), l = o[++h];
379
379
  }
380
- n !== (c == null ? void 0 : c.index) && (o = I.nextNode(), n++);
380
+ n !== (l == null ? void 0 : l.index) && (r = M.nextNode(), n++);
381
381
  }
382
- return I.currentNode = T, r;
382
+ return M.currentNode = S, s;
383
383
  }
384
384
  p(e) {
385
385
  let t = 0;
386
- for (const i of this._$AV) i !== void 0 && (i.strings !== void 0 ? (i._$AI(e, i, t), t += i.strings.length - 2) : i._$AI(e[t])), t++;
386
+ for (const o of this._$AV) o !== void 0 && (o.strings !== void 0 ? (o._$AI(e, o, t), t += o.strings.length - 2) : o._$AI(e[t])), t++;
387
387
  }
388
388
  }
389
- class k {
389
+ class F {
390
390
  get _$AU() {
391
391
  var e;
392
392
  return ((e = this._$AM) == null ? void 0 : e._$AU) ?? this._$Cv;
393
393
  }
394
- constructor(e, t, i, r) {
395
- this.type = 2, this._$AH = m, this._$AN = void 0, this._$AA = e, this._$AB = t, this._$AM = i, this.options = r, this._$Cv = (r == null ? void 0 : r.isConnected) ?? !0;
394
+ constructor(e, t, o, s) {
395
+ this.type = 2, this._$AH = f, this._$AN = void 0, this._$AA = e, this._$AB = t, this._$AM = o, this.options = s, this._$Cv = (s == null ? void 0 : s.isConnected) ?? !0;
396
396
  }
397
397
  get parentNode() {
398
398
  let e = this._$AA.parentNode;
@@ -406,7 +406,7 @@ class k {
406
406
  return this._$AB;
407
407
  }
408
408
  _$AI(e, t = this) {
409
- e = C(this, e, t), Y(e) ? e === m || e == null || e === "" ? (this._$AH !== m && this._$AR(), this._$AH = m) : e !== this._$AH && e !== B && this._(e) : e._$litType$ !== void 0 ? this.$(e) : e.nodeType !== void 0 ? this.T(e) : Ze(e) ? this.k(e) : this._(e);
409
+ e = I(this, e, t), z(e) ? e === f || e == null || e === "" ? (this._$AH !== f && this._$AR(), this._$AH = f) : e !== this._$AH && e !== L && this._(e) : e._$litType$ !== void 0 ? this.$(e) : e.nodeType !== void 0 ? this.T(e) : et(e) ? this.k(e) : this._(e);
410
410
  }
411
411
  O(e) {
412
412
  return this._$AA.parentNode.insertBefore(e, this._$AB);
@@ -415,33 +415,33 @@ class k {
415
415
  this._$AH !== e && (this._$AR(), this._$AH = this.O(e));
416
416
  }
417
417
  _(e) {
418
- this._$AH !== m && Y(this._$AH) ? this._$AA.nextSibling.data = e : this.T(T.createTextNode(e)), this._$AH = e;
418
+ this._$AH !== f && z(this._$AH) ? this._$AA.nextSibling.data = e : this.T(S.createTextNode(e)), this._$AH = e;
419
419
  }
420
420
  $(e) {
421
- var o;
422
- const { values: t, _$litType$: i } = e, r = typeof i == "number" ? this._$AC(e) : (i.el === void 0 && (i.el = U.createElement(we(i.h, i.h[0]), this.options)), i);
423
- if (((o = this._$AH) == null ? void 0 : o._$AD) === r) this._$AH.p(t);
421
+ var r;
422
+ const { values: t, _$litType$: o } = e, s = typeof o == "number" ? this._$AC(e) : (o.el === void 0 && (o.el = U.createElement(Pe(o.h, o.h[0]), this.options)), o);
423
+ if (((r = this._$AH) == null ? void 0 : r._$AD) === s) this._$AH.p(t);
424
424
  else {
425
- const n = new Ve(r, this), l = n.u(this.options);
426
- n.p(t), this.T(l), this._$AH = n;
425
+ const n = new st(s, this), h = n.u(this.options);
426
+ n.p(t), this.T(h), this._$AH = n;
427
427
  }
428
428
  }
429
429
  _$AC(e) {
430
- let t = ge.get(e.strings);
431
- return t === void 0 && ge.set(e.strings, t = new U(e)), t;
430
+ let t = $e.get(e.strings);
431
+ return t === void 0 && $e.set(e.strings, t = new U(e)), t;
432
432
  }
433
433
  k(e) {
434
- oe(this._$AH) || (this._$AH = [], this._$AR());
434
+ fe(this._$AH) || (this._$AH = [], this._$AR());
435
435
  const t = this._$AH;
436
- let i, r = 0;
437
- for (const o of e) r === t.length ? t.push(i = new k(this.O(G()), this.O(G()), this, this.options)) : i = t[r], i._$AI(o), r++;
438
- r < t.length && (this._$AR(i && i._$AB.nextSibling, r), t.length = r);
436
+ let o, s = 0;
437
+ for (const r of e) s === t.length ? t.push(o = new F(this.O(N()), this.O(N()), this, this.options)) : o = t[s], o._$AI(r), s++;
438
+ s < t.length && (this._$AR(o && o._$AB.nextSibling, s), t.length = s);
439
439
  }
440
440
  _$AR(e = this._$AA.nextSibling, t) {
441
- var i;
442
- for ((i = this._$AP) == null ? void 0 : i.call(this, !1, !0, t); e && e !== this._$AB; ) {
443
- const r = e.nextSibling;
444
- e.remove(), e = r;
441
+ var o;
442
+ for ((o = this._$AP) == null ? void 0 : o.call(this, !1, !0, t); e && e !== this._$AB; ) {
443
+ const s = e.nextSibling;
444
+ e.remove(), e = s;
445
445
  }
446
446
  }
447
447
  setConnected(e) {
@@ -449,90 +449,90 @@ class k {
449
449
  this._$AM === void 0 && (this._$Cv = e, (t = this._$AP) == null || t.call(this, e));
450
450
  }
451
451
  }
452
- class V {
452
+ class ee {
453
453
  get tagName() {
454
454
  return this.element.tagName;
455
455
  }
456
456
  get _$AU() {
457
457
  return this._$AM._$AU;
458
458
  }
459
- constructor(e, t, i, r, o) {
460
- this.type = 1, this._$AH = m, this._$AN = void 0, this.element = e, this.name = t, this._$AM = r, this.options = o, i.length > 2 || i[0] !== "" || i[1] !== "" ? (this._$AH = Array(i.length - 1).fill(new String()), this.strings = i) : this._$AH = m;
459
+ constructor(e, t, o, s, r) {
460
+ this.type = 1, this._$AH = f, this._$AN = void 0, this.element = e, this.name = t, this._$AM = s, this.options = r, o.length > 2 || o[0] !== "" || o[1] !== "" ? (this._$AH = Array(o.length - 1).fill(new String()), this.strings = o) : this._$AH = f;
461
461
  }
462
- _$AI(e, t = this, i, r) {
463
- const o = this.strings;
462
+ _$AI(e, t = this, o, s) {
463
+ const r = this.strings;
464
464
  let n = !1;
465
- if (o === void 0) e = C(this, e, t, 0), n = !Y(e) || e !== this._$AH && e !== B, n && (this._$AH = e);
465
+ if (r === void 0) e = I(this, e, t, 0), n = !z(e) || e !== this._$AH && e !== L, n && (this._$AH = e);
466
466
  else {
467
- const l = e;
468
- let c, p;
469
- for (e = o[0], c = 0; c < o.length - 1; c++) p = C(this, l[i + c], t, c), p === B && (p = this._$AH[c]), n || (n = !Y(p) || p !== this._$AH[c]), p === m ? e = m : e !== m && (e += (p ?? "") + o[c + 1]), this._$AH[c] = p;
467
+ const h = e;
468
+ let l, p;
469
+ for (e = r[0], l = 0; l < r.length - 1; l++) p = I(this, h[o + l], t, l), p === L && (p = this._$AH[l]), n || (n = !z(p) || p !== this._$AH[l]), p === f ? e = f : e !== f && (e += (p ?? "") + r[l + 1]), this._$AH[l] = p;
470
470
  }
471
- n && !r && this.j(e);
471
+ n && !s && this.j(e);
472
472
  }
473
473
  j(e) {
474
- e === m ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, e ?? "");
474
+ e === f ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, e ?? "");
475
475
  }
476
476
  }
477
- class Ke extends V {
477
+ class ot extends ee {
478
478
  constructor() {
479
479
  super(...arguments), this.type = 3;
480
480
  }
481
481
  j(e) {
482
- this.element[this.name] = e === m ? void 0 : e;
482
+ this.element[this.name] = e === f ? void 0 : e;
483
483
  }
484
484
  }
485
- class Je extends V {
485
+ class rt extends ee {
486
486
  constructor() {
487
487
  super(...arguments), this.type = 4;
488
488
  }
489
489
  j(e) {
490
- this.element.toggleAttribute(this.name, !!e && e !== m);
490
+ this.element.toggleAttribute(this.name, !!e && e !== f);
491
491
  }
492
492
  }
493
- class qe extends V {
494
- constructor(e, t, i, r, o) {
495
- super(e, t, i, r, o), this.type = 5;
493
+ class nt extends ee {
494
+ constructor(e, t, o, s, r) {
495
+ super(e, t, o, s, r), this.type = 5;
496
496
  }
497
497
  _$AI(e, t = this) {
498
- if ((e = C(this, e, t, 0) ?? m) === B) return;
499
- const i = this._$AH, r = e === m && i !== m || e.capture !== i.capture || e.once !== i.once || e.passive !== i.passive, o = e !== m && (i === m || r);
500
- r && this.element.removeEventListener(this.name, this, i), o && this.element.addEventListener(this.name, this, e), this._$AH = e;
498
+ if ((e = I(this, e, t, 0) ?? f) === L) return;
499
+ const o = this._$AH, s = e === f && o !== f || e.capture !== o.capture || e.once !== o.once || e.passive !== o.passive, r = e !== f && (o === f || s);
500
+ s && this.element.removeEventListener(this.name, this, o), r && this.element.addEventListener(this.name, this, e), this._$AH = e;
501
501
  }
502
502
  handleEvent(e) {
503
503
  var t;
504
504
  typeof this._$AH == "function" ? this._$AH.call(((t = this.options) == null ? void 0 : t.host) ?? this.element, e) : this._$AH.handleEvent(e);
505
505
  }
506
506
  }
507
- class Xe {
508
- constructor(e, t, i) {
509
- this.element = e, this.type = 6, this._$AN = void 0, this._$AM = t, this.options = i;
507
+ class at {
508
+ constructor(e, t, o) {
509
+ this.element = e, this.type = 6, this._$AN = void 0, this._$AM = t, this.options = o;
510
510
  }
511
511
  get _$AU() {
512
512
  return this._$AM._$AU;
513
513
  }
514
514
  _$AI(e) {
515
- C(this, e);
515
+ I(this, e);
516
516
  }
517
517
  }
518
- const q = O.litHtmlPolyfillSupport;
519
- q == null || q(U, k), (O.litHtmlVersions ?? (O.litHtmlVersions = [])).push("3.3.0");
520
- const _e = (s, e, t) => {
521
- const i = (t == null ? void 0 : t.renderBefore) ?? e;
522
- let r = i._$litPart$;
523
- if (r === void 0) {
524
- const o = (t == null ? void 0 : t.renderBefore) ?? null;
525
- i._$litPart$ = r = new k(e.insertBefore(G(), o), o, void 0, t ?? {});
526
- }
527
- return r._$AI(s), r;
518
+ const oe = B.litHtmlPolyfillSupport;
519
+ oe == null || oe(U, F), (B.litHtmlVersions ?? (B.litHtmlVersions = [])).push("3.3.0");
520
+ const lt = (i, e, t) => {
521
+ const o = (t == null ? void 0 : t.renderBefore) ?? e;
522
+ let s = o._$litPart$;
523
+ if (s === void 0) {
524
+ const r = (t == null ? void 0 : t.renderBefore) ?? null;
525
+ o._$litPart$ = s = new F(e.insertBefore(N(), r), r, void 0, t ?? {});
526
+ }
527
+ return s._$AI(i), s;
528
528
  };
529
529
  /**
530
530
  * @license
531
531
  * Copyright 2017 Google LLC
532
532
  * SPDX-License-Identifier: BSD-3-Clause
533
533
  */
534
- const S = globalThis;
535
- class Q extends z {
534
+ const R = globalThis;
535
+ let C = class extends H {
536
536
  constructor() {
537
537
  super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
538
538
  }
@@ -543,7 +543,7 @@ class Q extends z {
543
543
  }
544
544
  update(e) {
545
545
  const t = this.render();
546
- this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(e), this._$Do = _e(t, this.renderRoot, this.renderOptions);
546
+ this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(e), this._$Do = lt(t, this.renderRoot, this.renderOptions);
547
547
  }
548
548
  connectedCallback() {
549
549
  var e;
@@ -554,124 +554,124 @@ class Q extends z {
554
554
  super.disconnectedCallback(), (e = this._$Do) == null || e.setConnected(!1);
555
555
  }
556
556
  render() {
557
- return B;
557
+ return L;
558
558
  }
559
- }
560
- var Me;
561
- Q._$litElement$ = !0, Q.finalized = !0, (Me = S.litElementHydrateSupport) == null || Me.call(S, { LitElement: Q });
562
- const X = S.litElementPolyfillSupport;
563
- X == null || X({ LitElement: Q });
564
- (S.litElementVersions ?? (S.litElementVersions = [])).push("4.2.0");
559
+ };
560
+ var Te;
561
+ C._$litElement$ = !0, C.finalized = !0, (Te = R.litElementHydrateSupport) == null || Te.call(R, { LitElement: C });
562
+ const re = R.litElementPolyfillSupport;
563
+ re == null || re({ LitElement: C });
564
+ (R.litElementVersions ?? (R.litElementVersions = [])).push("4.2.0");
565
565
  /**
566
566
  * @license
567
567
  * Copyright 2017 Google LLC
568
568
  * SPDX-License-Identifier: BSD-3-Clause
569
569
  */
570
- const $e = (s) => (e, t) => {
570
+ const Z = (i) => (e, t) => {
571
571
  t !== void 0 ? t.addInitializer(() => {
572
- customElements.define(s, e);
573
- }) : customElements.define(s, e);
572
+ customElements.define(i, e);
573
+ }) : customElements.define(i, e);
574
574
  };
575
575
  /**
576
576
  * @license
577
577
  * Copyright 2017 Google LLC
578
578
  * SPDX-License-Identifier: BSD-3-Clause
579
579
  */
580
- const et = { attribute: !0, type: String, converter: j, reflect: !1, hasChanged: re }, tt = (s = et, e, t) => {
581
- const { kind: i, metadata: r } = t;
582
- let o = globalThis.litPropertyMetadata.get(r);
583
- if (o === void 0 && globalThis.litPropertyMetadata.set(r, o = /* @__PURE__ */ new Map()), i === "setter" && ((s = Object.create(s)).wrapped = !0), o.set(t.name, s), i === "accessor") {
580
+ const ht = { attribute: !0, type: String, converter: K, reflect: !1, hasChanged: ue }, ct = (i = ht, e, t) => {
581
+ const { kind: o, metadata: s } = t;
582
+ let r = globalThis.litPropertyMetadata.get(s);
583
+ if (r === void 0 && globalThis.litPropertyMetadata.set(s, r = /* @__PURE__ */ new Map()), o === "setter" && ((i = Object.create(i)).wrapped = !0), r.set(t.name, i), o === "accessor") {
584
584
  const { name: n } = t;
585
- return { set(l) {
586
- const c = e.get.call(this);
587
- e.set.call(this, l), this.requestUpdate(n, c, s);
588
- }, init(l) {
589
- return l !== void 0 && this.C(n, void 0, s, l), l;
585
+ return { set(h) {
586
+ const l = e.get.call(this);
587
+ e.set.call(this, h), this.requestUpdate(n, l, i);
588
+ }, init(h) {
589
+ return h !== void 0 && this.C(n, void 0, i, h), h;
590
590
  } };
591
591
  }
592
- if (i === "setter") {
592
+ if (o === "setter") {
593
593
  const { name: n } = t;
594
- return function(l) {
595
- const c = this[n];
596
- e.call(this, l), this.requestUpdate(n, c, s);
594
+ return function(h) {
595
+ const l = this[n];
596
+ e.call(this, h), this.requestUpdate(n, l, i);
597
597
  };
598
598
  }
599
- throw Error("Unsupported decorator location: " + i);
599
+ throw Error("Unsupported decorator location: " + o);
600
600
  };
601
- function b(s) {
602
- return (e, t) => typeof t == "object" ? tt(s, e, t) : ((i, r, o) => {
603
- const n = r.hasOwnProperty(o);
604
- return r.constructor.createProperty(o, i), n ? Object.getOwnPropertyDescriptor(r, o) : void 0;
605
- })(s, e, t);
601
+ function m(i) {
602
+ return (e, t) => typeof t == "object" ? ct(i, e, t) : ((o, s, r) => {
603
+ const n = s.hasOwnProperty(r);
604
+ return s.constructor.createProperty(r, o), n ? Object.getOwnPropertyDescriptor(s, r) : void 0;
605
+ })(i, e, t);
606
606
  }
607
607
  /**
608
608
  * @license
609
609
  * Copyright 2017 Google LLC
610
610
  * SPDX-License-Identifier: BSD-3-Clause
611
611
  */
612
- function f(s) {
613
- return b({ ...s, state: !0, attribute: !1 });
612
+ function _(i) {
613
+ return m({ ...i, state: !0, attribute: !1 });
614
614
  }
615
615
  /**
616
616
  * @license
617
617
  * Copyright 2021 Google LLC
618
618
  * SPDX-License-Identifier: BSD-3-Clause
619
619
  */
620
- const ee = "lit-localize-status";
620
+ const le = "lit-localize-status";
621
621
  /**
622
622
  * @license
623
623
  * Copyright 2021 Google LLC
624
624
  * SPDX-License-Identifier: BSD-3-Clause
625
625
  */
626
- const st = (s) => typeof s != "string" && "strTag" in s, Ie = (s, e, t) => {
627
- let i = s[0];
628
- for (let r = 1; r < s.length; r++)
629
- i += e[t ? t[r - 1] : r - 1], i += s[r];
630
- return i;
626
+ const dt = (i) => typeof i != "string" && "strTag" in i, Be = (i, e, t) => {
627
+ let o = i[0];
628
+ for (let s = 1; s < i.length; s++)
629
+ o += e[t ? t[s - 1] : s - 1], o += i[s];
630
+ return o;
631
631
  };
632
632
  /**
633
633
  * @license
634
634
  * Copyright 2021 Google LLC
635
635
  * SPDX-License-Identifier: BSD-3-Clause
636
636
  */
637
- const Se = (s) => st(s) ? Ie(s.strings, s.values) : s;
638
- let a = Se, fe = !1;
639
- function it(s) {
640
- if (fe)
637
+ const Ne = (i) => dt(i) ? Be(i.strings, i.values) : i;
638
+ let a = Ne, Ae = !1;
639
+ function pt(i) {
640
+ if (Ae)
641
641
  throw new Error("lit-localize can only be configured once");
642
- a = s, fe = !0;
642
+ a = i, Ae = !0;
643
643
  }
644
644
  /**
645
645
  * @license
646
646
  * Copyright 2021 Google LLC
647
647
  * SPDX-License-Identifier: BSD-3-Clause
648
648
  */
649
- class rt {
649
+ class ut {
650
650
  constructor(e) {
651
651
  this.__litLocalizeEventHandler = (t) => {
652
652
  t.detail.status === "ready" && this.host.requestUpdate();
653
653
  }, this.host = e;
654
654
  }
655
655
  hostConnected() {
656
- window.addEventListener(ee, this.__litLocalizeEventHandler);
656
+ window.addEventListener(le, this.__litLocalizeEventHandler);
657
657
  }
658
658
  hostDisconnected() {
659
- window.removeEventListener(ee, this.__litLocalizeEventHandler);
659
+ window.removeEventListener(le, this.__litLocalizeEventHandler);
660
660
  }
661
661
  }
662
- const ot = (s) => s.addController(new rt(s)), nt = ot;
662
+ const ft = (i) => i.addController(new ut(i)), mt = ft;
663
663
  /**
664
664
  * @license
665
665
  * Copyright 2021 Google LLC
666
666
  * SPDX-License-Identifier: BSD-3-Clause
667
667
  */
668
- const at = () => (s, e) => (s.addInitializer(nt), s);
668
+ const te = () => (i, e) => (i.addInitializer(mt), i);
669
669
  /**
670
670
  * @license
671
671
  * Copyright 2020 Google LLC
672
672
  * SPDX-License-Identifier: BSD-3-Clause
673
673
  */
674
- class Te {
674
+ class ze {
675
675
  constructor() {
676
676
  this.settled = !1, this.promise = new Promise((e, t) => {
677
677
  this._resolve = e, this._reject = t;
@@ -689,131 +689,731 @@ class Te {
689
689
  * Copyright 2014 Travis Webb
690
690
  * SPDX-License-Identifier: MIT
691
691
  */
692
- const y = [];
693
- for (let s = 0; s < 256; s++)
694
- y[s] = (s >> 4 & 15).toString(16) + (s & 15).toString(16);
695
- function ct(s) {
696
- let e = 0, t = 8997, i = 0, r = 33826, o = 0, n = 40164, l = 0, c = 52210;
697
- for (let p = 0; p < s.length; p++)
698
- t ^= s.charCodeAt(p), e = t * 435, i = r * 435, o = n * 435, l = c * 435, o += t << 8, l += r << 8, i += e >>> 16, t = e & 65535, o += i >>> 16, r = i & 65535, c = l + (o >>> 16) & 65535, n = o & 65535;
699
- return y[c >> 8] + y[c & 255] + y[n >> 8] + y[n & 255] + y[r >> 8] + y[r & 255] + y[t >> 8] + y[t & 255];
692
+ const v = [];
693
+ for (let i = 0; i < 256; i++)
694
+ v[i] = (i >> 4 & 15).toString(16) + (i & 15).toString(16);
695
+ function gt(i) {
696
+ let e = 0, t = 8997, o = 0, s = 33826, r = 0, n = 40164, h = 0, l = 52210;
697
+ for (let p = 0; p < i.length; p++)
698
+ t ^= i.charCodeAt(p), e = t * 435, o = s * 435, r = n * 435, h = l * 435, r += t << 8, h += s << 8, o += e >>> 16, t = e & 65535, r += o >>> 16, s = o & 65535, l = h + (r >>> 16) & 65535, n = r & 65535;
699
+ return v[l >> 8] + v[l & 255] + v[n >> 8] + v[n & 255] + v[s >> 8] + v[s & 255] + v[t >> 8] + v[t & 255];
700
700
  }
701
701
  /**
702
702
  * @license
703
703
  * Copyright 2020 Google LLC
704
704
  * SPDX-License-Identifier: BSD-3-Clause
705
705
  */
706
- const lt = "", ht = "h", dt = "s";
707
- function pt(s, e) {
708
- return (e ? ht : dt) + ct(typeof s == "string" ? s : s.join(lt));
706
+ const _t = "", yt = "h", Et = "s";
707
+ function vt(i, e) {
708
+ return (e ? yt : Et) + gt(typeof i == "string" ? i : i.join(_t));
709
709
  }
710
710
  /**
711
711
  * @license
712
712
  * Copyright 2021 Google LLC
713
713
  * SPDX-License-Identifier: BSD-3-Clause
714
714
  */
715
- const Ee = /* @__PURE__ */ new WeakMap(), Ae = /* @__PURE__ */ new Map();
716
- function ut(s, e, t) {
717
- if (s) {
718
- const i = (t == null ? void 0 : t.id) ?? mt(e), r = s[i];
719
- if (r) {
720
- if (typeof r == "string")
721
- return r;
722
- if ("strTag" in r)
723
- return Ie(
724
- r.strings,
715
+ const Me = /* @__PURE__ */ new WeakMap(), Re = /* @__PURE__ */ new Map();
716
+ function Ct(i, e, t) {
717
+ if (i) {
718
+ const o = (t == null ? void 0 : t.id) ?? xt(e), s = i[o];
719
+ if (s) {
720
+ if (typeof s == "string")
721
+ return s;
722
+ if ("strTag" in s)
723
+ return Be(
724
+ s.strings,
725
725
  // Cast `template` because its type wasn't automatically narrowed (but
726
726
  // we know it must be the same type as `localized`).
727
727
  e.values,
728
- r.values
728
+ s.values
729
729
  );
730
730
  {
731
- let o = Ee.get(r);
732
- return o === void 0 && (o = r.values, Ee.set(r, o)), {
733
- ...r,
734
- values: o.map((n) => e.values[n])
731
+ let r = Me.get(s);
732
+ return r === void 0 && (r = s.values, Me.set(s, r)), {
733
+ ...s,
734
+ values: r.map((n) => e.values[n])
735
735
  };
736
736
  }
737
737
  }
738
738
  }
739
- return Se(e);
739
+ return Ne(e);
740
740
  }
741
- function mt(s) {
742
- const e = typeof s == "string" ? s : s.strings;
743
- let t = Ae.get(e);
744
- return t === void 0 && (t = pt(e, typeof s != "string" && !("strTag" in s)), Ae.set(e, t)), t;
741
+ function xt(i) {
742
+ const e = typeof i == "string" ? i : i.strings;
743
+ let t = Re.get(e);
744
+ return t === void 0 && (t = vt(e, typeof i != "string" && !("strTag" in i)), Re.set(e, t)), t;
745
745
  }
746
746
  /**
747
747
  * @license
748
748
  * Copyright 2021 Google LLC
749
749
  * SPDX-License-Identifier: BSD-3-Clause
750
750
  */
751
- function _(s) {
752
- window.dispatchEvent(new CustomEvent(ee, { detail: s }));
751
+ function ne(i) {
752
+ window.dispatchEvent(new CustomEvent(le, { detail: i }));
753
753
  }
754
- let F = "", $, ze, W, te, Be, w = new Te();
755
- w.resolve();
756
- let L = 0;
757
- const gt = (s) => (it((e, t) => ut(Be, e, t)), F = ze = s.sourceLocale, W = new Set(s.targetLocales), W.add(s.sourceLocale), te = s.loadLocale, { getLocale: ft, setLocale: Et }), ft = () => F, Et = (s) => {
758
- if (s === ($ ?? F))
759
- return w.promise;
760
- if (!W || !te)
754
+ let J = "", ae, Ue, Q, he, Ve, A = new ze();
755
+ A.resolve();
756
+ let q = 0;
757
+ const bt = (i) => (pt((e, t) => Ct(Ve, e, t)), J = Ue = i.sourceLocale, Q = new Set(i.targetLocales), Q.add(i.sourceLocale), he = i.loadLocale, { getLocale: wt, setLocale: $t }), wt = () => J, $t = (i) => {
758
+ if (i === (ae ?? J))
759
+ return A.promise;
760
+ if (!Q || !he)
761
761
  throw new Error("Internal error");
762
- if (!W.has(s))
762
+ if (!Q.has(i))
763
763
  throw new Error("Invalid locale code");
764
- L++;
765
- const e = L;
766
- return $ = s, w.settled && (w = new Te()), _({ status: "loading", loadingLocale: s }), (s === ze ? (
764
+ q++;
765
+ const e = q;
766
+ return ae = i, A.settled && (A = new ze()), ne({ status: "loading", loadingLocale: i }), (i === Ue ? (
767
767
  // We could switch to the source locale synchronously, but we prefer to
768
768
  // queue it on a microtask so that switching locales is consistently
769
769
  // asynchronous.
770
770
  Promise.resolve({ templates: void 0 })
771
- ) : te(s)).then((i) => {
772
- L === e && (F = s, $ = void 0, Be = i.templates, _({ status: "ready", readyLocale: s }), w.resolve());
773
- }, (i) => {
774
- L === e && (_({
771
+ ) : he(i)).then((o) => {
772
+ q === e && (J = i, ae = void 0, Ve = o.templates, ne({ status: "ready", readyLocale: i }), A.resolve());
773
+ }, (o) => {
774
+ q === e && (ne({
775
775
  status: "error",
776
- errorLocale: s,
777
- errorMessage: i.toString()
778
- }), w.reject(i));
779
- }), w.promise;
780
- }, Ce = "en", At = [
776
+ errorLocale: i,
777
+ errorMessage: o.toString()
778
+ }), A.reject(o));
779
+ }), A.promise;
780
+ }, je = "en", At = [
781
781
  "pt-BR"
782
- ], yt = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMUAAABeCAYAAACTmdBwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAACPHSURBVHgB7Z0JYBTV+cDfezOzs/dujs1mcy45CASIQIAQQIyA3AKKsfX6S6ul0qqIVmrtYar/etS/91lKPWs9sMVaFFGBKDcYbhLQhBzkPjbZ7GZ3Z+d4/zeTDQTKkYRs2sj8YDMzb2beXN8373vf994bAFRUVFRUVFRUVFRUVFRUVFRUVMIFBVRUegZKS0vTSJJkItAWi4WmqEijyRTL+HwtPBg4oPwj58K6XC6YnZ1N1dXVIZKGQT+BgIpKz5AEIXK5OWq0S2MY1UJrh7dFRI2qtdudn4HeCSQ8Y7m3MogTEzMcWsZZQ+aF+nrvk6NHz3gTqEqh8h8AVlTsfvLHt+TRIMDfowER2yqOf6LLzDRPTYucYx6TtfgGpzNvWNe28m9E2sJZWalTp3VLk8FWq9Nqt2csHOIYk0yWpfj4YVFymi126NyEhASd/IuISJ3jcDj0ICSjDsfwsTGRabMAyKNdLk4KYMkgp/sDAuBEEwT9CA1UBhL54fXbG22AUc67oKAAx8bkQJrtXN6+vckh6ejjGo77iIbat7Kds+8rqvjs+WHpV+0XMU/x2KpJdc5pKatYP0nefohjbjKjF76FiH0eY2bNiBEx412t4v0xscb5gNJuD/ja/kJTmhLaoOEw730NgLq4oUMXv08jnMXx/NfmaPCngM8xHOHO97mEKQnA/r2l4VQKRQDsiakjjRpDY1nZwUbQqfUS6B3KW2fo0FyHILgpYtOSPLSAogQRQoQ7JAFByGFEUUq+WJJIMsJaMgVADySyXpI0yjYQQhwg+2hEmpLnAQh0HoDMy3l1ziOMsQTlX9e8nM5xQTljzJK8BEYUBIGnGEYjtLS4eTNZX+OpcYELCzzOiMvIiEZxqaV8GcfSNBAFEYuivB8kU07OWJkHAg8EMhUAD2nAkKm8jTxPd74VsXxfaOUBCl25M6GpIF+bIO8TWk+T/ZRzg4BcOs8LkGEYYg6RNWQZ8ABSNIUAzSIaZAMe70QRbrStAlQEznoR0ELqohGKVCLa+qEFdBQUH1v3aGrc+MQakT2amTl7r8DRtm/L1sXL28THzWgcO/K6+XsPf7jO669LZoEOaln0CUWB9RyHWgDtGRLkzT+tOPre+1G2ed9qNZ5Xa2o2f2CPu6bYYknMbu6ofqbDW9do1UZkUhrT7VpNUMMFjMq5IBAkiiH0q1aEUylw9uhF+zrEAMYgmD5mzLTr9+3btB70Hjx06LTbbLbYfJHh9lCiBiEi/n6GCmrJOixCFFDEB+JggAi8XoIIICzQCFLkn06UKJHSIkzzROjkBYaojEgBpJHlivyHmAEB5OdF8u5BRBaJhGIKsloJYyRBWiD6h0XE8aIgIShrNR0IYMHIMq0Y6eZE6mpyEfJeWXOkZltPLkZv1wcaA81eO4zjAE8EnyGCTxQBB4NIFFmRKIlELgcLfKdyBIkIyttpGEYRep4n58vQ5MTJBctnD08porJM9uUpgewkr8aKAvF8p7YwygRDI2KgokCsvJ7kY8CQkV8SRBpovB1BpNdo42kJFJ/9GsjLAEv6GiVvBF12ffTQPaCSZGd1NviaGzhR1I1EiKrs2h5Rmjp3e3OUPN/UlrYtxdw2h0fSSo+ndTLQ41nkjdVGw+hWeX1AELwWE1suz3O8ryU2dkqw1V/zgFnnBFiv2Shx/jZB0CG9SQc6txGJpmu50KH6pSQOm1KMH59/hShi39H9n03OycnP9nOuj0lyPOgDQaGZ2bNHd08w+EkJ+C8gNzdfJ9LeFRSj+dpst88qLFwvv1F7UgrCffv2ycJSCQYxGNczmmCyWZnnDc+5Gqtfvyzz1lmtnob7TdaoE+3tVW9ZIoe8kpGZPzvoFzUi1zoyKiFpXVkVAOmJ/PUMbVjpc7VdaYoyP4856jaoFYxAcCtSbmaQJQgZRYEMWmuU398ew1D2xUGxaqhOtCZ0iMTlpYujseTVpqbOHNnW1hKgsXbiyJHT7YcPb2wA/UDYKtp79ozYkpoKp8rzpijT46SkXgP6CCcyPMY1RvCfA4Z+4OqZP57j9wbfa2qAX3696fXfFha+EQit64lZOFjrE6ehQdI3FC3KHh9QVbP+WZriXuYCNW/p9GJEXFxrdl1dkU/LoCmM5PlfSuN+gDVw2bt3v9VCNoffnfjo3SBw/dPkiP6KlRhtYppnGeADpM4QVF54CAZehMHm7+R5Mn3V5TpxEMLm6/SmmNc0WuoHZjNTUFpa3sr5a36v1WofdDqzH+I73KVA9M8EgwBF4SZc/sO3MoYt+iaU1qe4SFzC1NsYRj8O/GdQlCEra1JM3oSfrhkx/Op78vPzu67jUvTedb9m2dKAF9imC3jGtAvqHPPns2LO5W3ql7hbuMwn5c05Yuzk1wMdXuexo+tkge5zgIUiPgww8Jx8iMOHT/+ZLTp2XF39ibuKSz6tP1Jycl1vnQbfB7pfs9CDbbrAZ0y7EM8xf668z5bH2fbvM/3q3+3OhMlXjSuvat09avjYBighK6CErzZuWD0b9IH4+HFLPR7pYHv73p1gYFAqbLm5i8cYtZEFHR1tq7bvXvMJ6OZrByrfW8JWUuze9sW+zMw8c1NdseLzEEWX3BSgT94BBFgUE9MC29tBuFHOLysrS2/SDnuMJm4lV/ve64qKivp87iqDj3AphSw8YnFxoRf0A8SzKhHfOggjJ0uAyZfN+UFkVNxNFbXf/frQ0a8PAbV0uOQYFBFthAQKY9mbWwrCgFICZCSOibM5Mh53uf0fb9v0lwXd1wGVS4pBohQ0FAJSf3t6lBIgMzOTEbmo5dGR9pj60vI7S127ZCOtK+agKsQlyKBQChJahiQa218CespUypp1uZFOWu7pqHtq254Pd4BT8YhL0aukEmJQKAVNYyRJDOgHFHMoOjralOGc+GiHny/benBVPuxsUaaaSioKg0IpKIoBkoQvxn18ct9RKdN+pDdE57qrKn97uHFXA1GIrviJqhAqCoPEfMKQ51tBH+msSGdMzkiIGv1/3tb6V3Yd+mBpt3WqqaRyGoNCKQQhKLFsTJ98sg6HQ5cWM/MhUWqn69o2Ly4uKQ6CU6aSWjqo/BsDoRQXbasbDAappKSop3mcrEhnps2/zmaKvqa6peTpsqpdReBUmxxVGVTOSbiVQlGIIUOm2zEuc1dUnL3TyoUQgdxc3k7yarnQpsrx0mLH2FKSR73Q7Gr87Kt9b9zUbZ1qKqlckLCXFLNm3ZxWUdXwHUM5xwNQ8Q3oC6Lc2+y8bTy6SgeUnTr9HltE0tCjDeV3VFQUtnXbRi0dVHpEOJVC8eqUVrp22CIjquprvzOAPkIq2iJRCnye40iZyTPGJEUlPdDS/t3Ln33z+lPgVMxBVQaVXhGu/gCKqTJ16s27+SD/ww6ffyeETJ9NFwngs0WXldIh25GtzR4+6+VUffLMiQuSbthTuuUroFakwwUzYdg1UaH5k6Wz/GdK0pQI0Lf+DN1d7efbH2ZmZmocjmw9CGPrbplwKQXOylq0nPehNIctpcrLBUZFx8TO7OvxJBKk6LZ4shfc5GELf6o3j3yxlmt+/F8lf3mioKDg5PGBSr+Tnb0UzEz6fVX+6OeXgM57rJTSt2a98+n0nIe+BH3rz4CvzLg5Y8W1f3/hAvvjhSmrn7ppxFOHQZifb9h6jgX9lY2Q9m83G+kXNAGY4mn2LkxISGBBH6C6RrgImWTTshelzBixYi2K1HdsOfbmj+uOF1UBtSIddoqKVvG7Kt+dqQ8Me/3GSauTSZK0cuyWHwUxNauy6fB00O2FdQbnSlfkL57NihHLqSVnpp9JdWPR0w3+XdeDc0Od5TjnOvY5CVcxJJ/cSa3PyZ63qrmt7o9lZXv71Mx1eNq820pKv9hJ4tHfZqQPWxmBoSnaon94XdEqH1DrDQOJUjIsy1n3d1EQJh/xbk/PYhe314P109ceLNgkb3BL1pMxJtOwtylM5QIE6/y+44tW7/250v/6ttxXJljB0HeB4Df42eDql7de+5vRybPnTjfd/6ynJeiITNPsdVFVa1cV/ujZhan3Pjk0ZvaygGRpChprlv5p47VfTB4y7/Isy6SJzUH+bVvsnI8NuNmjPaHhq6SWWmdqkqXY+sz1EcdnsBoY8w5iI2YbtNyRY7VfXf2PkkfrQC/kJKy2WbdjXJTQDk2aeavWr41rZ9rNXs+3bzR7ao+Bwcn3QYHh0uylNB28rlL00dE6q/eTZ4sWXKOkL11KM7vnBCDv+6Kc3bPC6ht3SwZte+CVlgrj3JiqkZHU3F3H2/beo9HWHGL84z/S6S0bdNpDdwtw6ItSrXeeJc36ZAVXtYaqjbkjKVEz/0T70VkR7dGjQGTE+zA2cJlY3z6b4SLutNjTM7E++IfSo+vrATK7rXTGS1o2sOmpAwum35e1qQ4GxOqSwMY7dGj2fcNt4vWV8Ev7W7sfu6A/v4uBCN5dtBBEa1O4pMjMa4BgW8zrK6Ktw5KmIqpD0+EOAD1jlMgbSYKQx8p4T6DzooJAgixmoIAwkpflQc0EZfCwzsC4yJAUDmF5WaIQ2Z1HFHEGQJYSRQkjsgDlKaA5QNM0gHyEnCTR0E8DnU/CGDCA0oM2wWsyxgqlL753V0/czXjlktcXeTxXzjDq98ijTKEIy4Tg8cYGKYNJ0LTS9cDHHxDNZgc5dFAxISTZIsRAQki+BnnYNnLiRADJRRODEkEE2gCjqUaixACJJysQxpxfA4LCQoj5wwJAl1GY3igAzg/MZguMi49FrW5WqK6MlxDF8wL3tSTBgERBSgpwiEK6oMQH/e7Kox+/UlhReLa4ElxFzKifD5v3AteuexQaGx/rurata7eyU51T73h1/81/jo7OMM01ZKxx0Y5fzXV2aNmWaa/WUwf+8vfjdz0nb/yTSc9MjYmau+qRf82om5/56yfGJE6d8cjXs34rr1t22RfjtIak707Uvl/+dtUbJSvs/2jfV7rWNS7yTr083F1B4cgOstlyedvb09c+bNQJTU/sWzD9VyM23Op1+6OvHTI3cbNnDSwquuKmlaavpiVETftfAB5bBnrIoGjmEc1ENpi9KeMZyVbFYwfQNPJE/CWgoYka+CGQxwaUQi9hTUgF2VAZqCFij2UBIv9OVWiwsoyVaaeIdRWaRFUAo8xComvyWhHIQzQiiSJagIAIecBjP+BZolyIBUnpw/a5wMH5oIfUNHy5yWBs2OsP8JTgoXGJ2xe0Sm7Y4K2HVZZkaLUg6e8f3i+Bbg7sztEMO9uAyfMY6yBxPkCEAliScknC70lyE5ZHRPT7Abhy4i5oo95EkkYvCcJOqPMA4I+MAuWuSvhtzUGgI/+8mhZJ5JIks8ONGxuTlVfXiPRKUHKUp4wmHbKNt/Gg4qyXIN2Y85t0TQf9aES85SsPlViYn59vWrNmDS5uKvZONEeX/nr89nbGojE1V7WWBoKt2MfGIqPGm2YyOp8K5YH+vH3FfgBWTJAX2gK1ZimGouRRUkg+ohsW3+Qt9382NPIG//jYJW6W0z9SWPrOZ6PGLyeXVEvh0PN7MPfbG5vd+35rjUHpyr31CTEm8t77rO7DjsXW26grc/8mtbSYKdQA7KAXDAql0GBWq+PIS5u8CVmKCDgRWgrzxCtFE2XovAR0ZoGkNAbHyrB5nR7dTuQh9TrlP9RanKzDuJv3FnfZOJ1pCDJAHteSokTAi0QpgAnzNANpnb8swBy+5eFPV3Tvh3HBUvGd9e/IUcgL9zZvBj1ENtdfOy1lzTrQJz698CbKNTLB3K8DOvjmM3tylvxs3CdNQypvfZcc9fr87KdHad3ipgph7wx0yL8zMDU5ELUf8haXFvmkYIAOCLZQPlJB3lqrNj72lkD6hpd2vu/SYE7DyQqRl5dHR3gSTC+VLki9PeOFITwTkc25HO/ek7OlsaF9R+3wKAcln8QTE98aXtKy8x2bzjrrVxsWKHXV6NgozLkb/dHWOOeO1ud0rH5sRyyb4PBqxV45YAbFuEUIR8mjuAKavKHlgU+RIuREGUQLkUIWYCirBPXvP0wEWh5HkuIARpwyFaEfiCQfEchTH1kmaYgoGJIHqCQ/1PkDoR8m20uMHwTpIO5gvMCndfGGdOsDzx2+Ku1P+04qxKUQE1Guc9nUrS8KWINe2TN3iZxYL24fV1Pvy88f99J1no5WI6OnxYoTn+/eYdokRJYYHuMEFvIGQbDoqKe8Hs/jT0+vT5nvWKpvbI1cf+hgzS+IG11C0MQQidcXzN6ZpdONorztaONj0498sPrYXeX7das/0ptwrV9wGY41fUBBIYbUaYrog/UxWzJi47boI0zFN+a8nn7XnG2pJU3/fFPkkTYImJXR+ntrNcHETC9sOZgabxnTi+scHCUFR16sIgoQ219HhJSSBwwmTygIRGI3IcX6Qed2GWC5c9KplcpbQC4tQk5eCZ+S5e6DV1OhQkYpTIhBz4k+qLPT6wP8npv+uGlmKzg1jtWl4vnCV094coiJj/pZgF6fFkpD/9j3h8rfTF/3i2Yp9p1Y2xAz78W7xhvuajeIdolHbTsbYFkZsdWs/3fo+iceuGrHyP2V28vSHYtAK8OXG0xSFjgEYMaIqM81VfayE42eAxnRc1cFbCijoqH6wMopRwJiRwOiTJpjf9ox408zUwqXkRL8RJypZaFXNFg4jhrrDwTLbT4t9rc3cznDcu3tVSmTPO6qzTrGci/yWXFicuzvH/josr/25kIHwvt00Vw7/PF5CZ5x6zSY6hxQm5QCSB6FWKlsdtYOzgVWhmwPhTCUgcV5sg9FFInUkyUNUTKRKJc87LdcAUfKZhQNgRDEQEux2IsFyEZGu9pwVf7q4lmbQtlekm7g7OxsxmQy4cLCQvlmdd0DZVrg+FhfmPF0UF43/7IV8VazTvrrlkfr8jM/0IARa0TZNJLzWBrxS0trdoRlzZe/PNEt9qSYN7kJ+Tq3+YhYXKw07we3TH42CSPM/3XLCsWlWkB+hXl5KK8wTyp0Vmg8UYdETUMKnZCY23mCCe3kOAXBvLwCemgwMhlwzrpVRQt8odP/r3LJXjT5w5+ZF9c+Zh3xDQGBVCygRJ0abrAHV6CUCDCkGMpz6Kw8y4ohUvKQTsRJI7GK7wrSDOB4spGWIxVYDfbr6x7fq9v8kBy4AmpMZKA4233u6b2/6Gc0SHrewc5u1LC7BnS9pM4PxJLiqUCkRJEgqZgruyFShyAKgHyKsiBiYiFMKtPEU8XzGAtUAFKGqIONOtf89/bccAKojQsHGtzDtJ7u2ysuVim6C0rYhIa46WFfc8aw6xsnQPlig+zZB5hWKgykaAZI0AHlExAwgHkkQJo1BkV99W0vHZr9TigLVRkuMS7G+6RIW372UsuNk36dDP5dcJS8fzp79fRls9/OCKX1WQkh7NupYiyXDvJhRZIHBygxCDRyvYFnAC0aidkkR/d4EswjkbkI9k0xZkfEq4dukRVCLR0uUfqqFIqw5Dnz2HTd7JJk3cyvz7KN9Ls5n+6g3I4PO9qYo7+4/tM3wPlHkj7PwZRgg2IGnW5CXQjcaTLJQTjimiU1EkCR0kGQv6eFiFmFJByAddBg1dUCS3nO84emLnlmx71+cOm4WVXOQk/e3N2/0HPSDblo9D3WFN0VZQE+AjYHt406c6fbc569qq0hmJmXGrRVYEdeedsRB+jjm1f5BhfoCqj1BvlwghKxlj/MJf+VPwYFdRD7cRvUaEXRGp/4m0c25TzRbQdVGS5xelJSSCsXfvzJz69673YQGkryj/dvjk1lbqnStEcE+MiDjrd2P6h8pab7TjSMdvJBxnC8Ja62sbZ5A8sb40AfhY2EIdDpX/zoeWtg2XUrRzaA4pplsYR0wEvqDsBOba1iD8Y/2qkQqqmkcpIemU8ed1M7XaP7830T1i66feSf7eUfuCt8sLVJaytMfmH93fKoAv8mUJjhtXreKr1VvzQuPtk6nQ+Y/5Dd2Wuq18AgwnIbJOUVToQbo85W6adq37KrVQi1ZOo0tjqDcxRgRV4JTpO6BQ5QAhTN0CVqqha8snv+5WsPFjQCtXRQOYOemE/wlcLbbrhzwrtHUVv0WpOgE9pstpLXdo+9DIIZ5xxu0qjxbJSYVmYCuzzF67FOZcy0ZKozBUEfUPoohsLLcpMOGGr+B7q+/4lZpc4ASNQbSlqiDHTIUBIAJ1EYsiQZIqiNjXh+r+7e+7oFn5RcgIpKN3pSUijS+OLuG36vsbc+bB7KHHr9m+wsCEJNSc8uVPCpjXcXi9FVP3FYhx1p41pWVDVvmFAICvtU0caazto17N5uTzaH5HgDlM0rUlhJNEC8hUSpgyTZK1exgRx5COgp2K6R9tcatqY/vWvscqIQIlBLB5Xz0BtXTvcKd0/esqf1vjtLHj3m2oxnFyR1jPonLdIkoi2nkHqCSClagqmA4nalSHQaiQyQ+xlImg4cRO2QoW2cx9T489X7Fv+l23mriqByXnrjkj1TmC8kXGIP8ugRpJYtKaPcdB01pJKy6YQEOd7Q2WZJoII4qPWAoIaGyKJb66a221SFUOktfQ2mDbhwhaIUna09FNVCSl8ICEykpOBICcKR0kGEZoOxtkrcueBvB35RFNpVNZVUesWgaPskI3cOgl3df7rF8Hi6BYuQgYDSYZ+u6t6Xjsx6DoIp3R0AqjKo9IrB8XF0EYCuVh6KYuCu/hAICzQDqahgUZvxkOONIzc+ewEHgErfUQYjS0nJtmRlZRns9iyD3A/b4XDIbvbeyJGSDzi9PgvT0tJY0JsAVBgZFErBsjTQ8HKrVg7w0Ku0eeWhCJAtwueLqVn47N55494+uEyNOYQXbEQJDwqStammPrKeEyyNelNSdbRuwnrQi7piUsyoIZSYIHe27S57mIYpmzPjL58G/gue3aBQCpGTh9UwA07UYoHVA44VIB1d9cLhjpVRr+1c8jFQI9IDAdx9eNLDVRVfsmaT+V6TybC1qvwLS1SSe7o8lGVsxKg5ztiJztC2nYOcRY7KTU6+Ird7WoCzQS/H0kmWKWaLZeRVCQm5OmVtK73EDbj98qxVOyY5wTF+NgCZmsjInAQwwKXHoFAKRg+FAMUDyUDspsj2Iz7HntSnD9x69/rS9eoHWAaUAqWXVoevHkGo18ophw9H2kjVtE1niX4IMdbyUc68JSRZykiatEtrtq8BPLMmyX7V5yBUmvDIzYt+rBN0+m1RBtszOqxtkBWjQxdch1D0iChT7qJIe0I5q01+0OlMbzVrDR+AAX62g0IpvJJbK0R5cAPcP+uVPQtGvr71V8dDq/6blKEn9/I/bi/3gjPP9eR95kUesnpeEXKTuWktYulflldsniiiyrimgPRScvK0sSJljCur+DKhsvbLBEz7R6ek5M1QMvF3IB/wk2qhZtzx2s0jA1Ba1+EX76Zp5BZoAdBG86t+6MksK/9wKuXhfi7yVL98AbQ3DKT3qc/mTXnzQeixuAo7RN9Qm23uhLToFI2PdmkYLWS12ExcT5Bigq0BP63BLKWTGMYMSdkCWYihQGHIUzQyYA5hitaQejmGQQpQtMQEgiLPa70cw0kQ6yQkBrWIphk9ixAtQUpuSAi5gAsHya7yZ7yNOhIH4WlBohCNAUWy0NQTlZ1mNRpffW/Dn1/twaXgKRNnXm21xF/REfBwrIaFEqSlEzUGkjsONWRpJR7nJiCP0k4A8tAKkiRictaSMhCVnCKIWEISppXwDA1FCBFCBgTIPlhiiKNaHsOsnZicVOdXLolHQuminhALYZMRIY0EpOgAiOiQAzxCZ4N+RDaRz4KnxdY2PwtEz6OlpevPOhQPQ45G7pzSOkGgqDidwbpXnq+stDfFRAsdEkPlchRTfvKiGWM1Qh1OZZ4VKKOR9VeUrVP6Trd7qC2QldJFSM6cIo9My1MQOyvkdXWicCCKxRowwIRTKaDT6WRZY9x9Olq7ef/+TdvB2aPcF6QF10YcKdt8n9UKviPPAx93FckjkUNRtCCrVVIGBpO3o2laotooLFpFSFGUooCiKJ5c353OwcQQPlt61/aSZIR2+xxkMtWCiIg6fOyYE8fEUIivq+eYSLNda4GvBrz8v+q571aDnik92rrzc3lUpvONzHShvsnwLNvCc+Rz+r7FvSqpzn0tlKBjNNZIeZZzRz0W9FX/zeqYNklPS78lKlNHHCOrfR3tL0bax06kJCaSD+LR9ijfR8q+bDJ2u926qLg5dwpizSc6AJ+mGfMVFKbnS0GxIxBg9zJM7btRUbl3UpT4FnkSPR4Bq78Im1Ik5OZq7UHHiQ6//6+8wH+cM2n273Zt/+xl0AcorVEpQpuamrynr2kCLtdZdujH21hdXXzacjFZzB0/f7kgubOrSg8uOVh6sBr03CzqS0QfX2D5XGk93bfXaCnjQcFfr8w3Nv79lcT4K3URRrrQ5/V9w0n6SaUn1nOOpJxxdhj7DsBan49vH1FUVKQ8FT3V1q7VJj3PS61pejbxawpTD5RUfLw7PXXeB4gLtASMhlt0iHpJFNmPJOD/gkRqc8D3hZx5+dnDnAsq5fnJk2++fmz21SWgj2SMnLSMYRb/J2+OIvTXzlgyceFVyz+ZmXPdD7ulD6Z6Qn/Q/XrP9ZEVdJ794Pm2H5424+WkpBlbUlJmT4lPmlM9ZOiMn4ABJqwPdOToH34rcII+EGiJx5I/s7JyZ58UI805Zlml3raXL/58FxhYFPPD6czTpjhiHwFB3uIGFfeQt576CYDwoDQYTUnO+RmE0nhAse+XlW39DAzwvQ6b+TR+/PwfBUQugOCxkc6UsdMa6zxykMcJ+oDAaCXQcAAMMMqDGJM18zrGGHF7bX3l/UeP7zgE1JhIOFHu6fHKXX0ys/uLsCkFzQYg8kumQ8XFQYtllIlCqO/HYkilud01UEKoCHxycnbs8KTRT0t8cPfn29+e030dUAkXPa0bhZWwKcWOrV++NuXyRTMmT7mpvd3d2CRKvkmgj1AgSIQxi/yKQBg5KfCTxs1fqaONw11NFXfuPrqx5cz1Kip9RamvFBQUdK909SlYmJ455g6deW44K9rKueaOz79i5hU//kdu7tzZ3dIvtYr0Jc+geOCJ6RPviDZyB/bt27cD9C/K2z8tLcecYLM/KiDo8Qeqf0cq0uq4sZcwg6I/hfydlvb2YDiapOBrJ92xpBW6rmlorbmruHhbFVAr0pc8g6STUb/qg+L2GzNmeqbd7ny82t343u7t/1gIVGVQCTE4lIKS+kNQT35PIW/qdY9AzNoPHNj/w7q6oq7vF6jKoKIwKJRCJOYTxYGLBY8dmzc71ub8yYnKkkcPHd11Zh9uFRWFQdNHm8d0X5wCoYh0Zmxy0vA/iB3+8k83vHFdaF3XcDuqQqicxuCoaAO5EXSgL8KLr5r+P8tpHTW9sa72p0VFG5TPRAG1U5LKeRgkJQXxkNIxZHqsJxsrQj9q2NjslITsh1uDdc99sXHdc0CtSKv0kHApxfm+cNR7wZQozOg8F+yrIG/pcDh0IzOnPmTQIupE/d58EnPo/r0JFZULEg6lUARwQu6cRaXHvtvkcpW2JzpnLIwwoynl5Uce93hqWnqboVLR5s8baFS+8pg75aoboqISF1ce/3bloUNbj3c/H6Ci0kPCoRR4+IgrN9fWevI6xGDqkLRp1yMoFfA884JzSOaJVheMqq6u9vcmQ4YXQZ0Bna3HnlI6xMfnxdsS4x6CFu9X6/75mlyR7m4qqQqh0iv6XSnS0tLMRr22oNXN/5ERE7yshn2xvrZ8WFvb0YrUtDlzBMF6NQDVH/QmT6jxiJ5D8d2VokvgUcbVP7g7LuBPa6jZv2L/zmIvUEsGlYuk35WitLTUQ/5+leScHqONQLS/w491OkNjWxsAHT7fJsFsmwjqQa+UQvSxACSWA9BpEClCnzps9CSrbcjPfKUHH99cUvIsUCvSKv1EWMwnJWOEg36fJNoirbQg+OQBr3xGvT3R4z56BPQSSksi2t+mULJWpKSkmHWRqQ9injtetGXt/4SO16ch/lVUzkbYXLKSRJkiNC0mhjJtxBg9ZLNlPkhp2m5jWU0a6CWcD0sxMQGXZM+72YSp0W1N1U9VVpaoMQeVsBA2pUB06/vN9ZKg1R5eGBM5fENAMNW726tvqasulo2gXpk5GFBBYyRa5W2oe/hAzbG/AtVUUhmEdDVr7d5JB56xrsdERERY7Ha7IZTH4BgpXUUljKg931RUVFRUVFRUVFRUVFRUVFRUVFRUVFS+n/w/xhAlUhdkEsQAAAAASUVORK5CYII=", Mt = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAAElCAYAAAALNmvKAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAFLxSURBVHgB7Z3Xz2zJVfZ7jg855wwHME5MsCcHezwGe2wMFhLBFtxY4gIhccs93wX/A1whgXyDkLA0CA+eZGZsM9HjwWOPEwabnHN0/OZXnF/rOXVqd+9Qu9+3X51H6nP67d69d9WqVSvVqlVXff7zn//C5gquYCbOba7gChbgCgNdwSJcYaArWITzmxPGVVddVf7/whfaphift67hs/o3XnfWkDTYdc25c/vlQU2zMffehRNhoFaDd3Wi9V2L4ZYS4zTCftq3552e8v8Qs/D9pz/96fI9L97z+vIv//LNF3/xF++k5RzaXXVoLywbmQNOxz/3uc+V//0bQAQJ9oIXvOASaTQktc4KE9lHpW1KGT7zc2n37//+75uPf/zjmz/+4z/efP3Xf/3mW7/1W8v7T37yk5vrr79+c/XVV2++8iu/stDx/Pnz5ff8D/i9zxojycTBJRCdpaEyA+//8z//c/Oxj32sdP4//uM/yjV8xoz5iq/4ijJ76DjveX3DN3zD5ju/8ztL52W0swjo8/d///ebz3zmM5uv+7qv23zZl33ZdnChG7Ti+0996lObP/3TP938z//8z+app57a/NVf/dXmhhtu2Hz7t3/75rHHHtv813/91+Z///d/N3/2Z3+2pRf3+47v+I7NtddeW+jLeIihidls40lJIDr5wQ9+cPMv//IvpXMwA536pm/6ps2//du/bT760Y+W97xgmj/5kz/ZvP3tby+EevOb37z5hV/4hUJQwOzxvmdF+ji5PvCBDxTJ8qIXvWjzzd/8zYVW99133+bZZ5/dfM3XfM3mW77lWwpT8Z6J9a//+q+Fkbj2S77kSzb/+I//WL5X8kArGIp7cu0//MM/lOfcdtttm5e//OVN23JnOw/BQDRaiQMBnn766SJtlCwwDx2+cOHC5qu/+qvL9TAY30EYCADjvOc979l86EMfKrMI4iCW77zzzkI4flM6VDHQsTKUA/kXf/EXm89+9rOb7/qu7yp/v+Md79j86q/+apFKP/3TP725/fbbC52QyEjssWCS/u3f/m1h0N/6rd8qk/EXf/EXNzfffHP5vjYRhui4qgrT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";
782
+ ];
783
783
  /**
784
784
  * @license
785
- * Copyright 2021 Google LLC
785
+ * Copyright 2017 Google LLC
786
786
  * SPDX-License-Identifier: BSD-3-Clause
787
787
  */
788
- function xt(s, e, t) {
789
- return s ? e(s) : t == null ? void 0 : t(s);
788
+ const Mt = { ATTRIBUTE: 1 }, Rt = (i) => (...e) => ({ _$litDirective$: i, values: e });
789
+ class St {
790
+ constructor(e) {
791
+ }
792
+ get _$AU() {
793
+ return this._$AM._$AU;
794
+ }
795
+ _$AT(e, t, o) {
796
+ this._$Ct = e, this._$AM = t, this._$Ci = o;
797
+ }
798
+ _$AS(e, t) {
799
+ return this.update(e, t);
800
+ }
801
+ update(e, t) {
802
+ return this.render(...t);
803
+ }
790
804
  }
791
- var vt = Object.defineProperty, bt = Object.getOwnPropertyDescriptor, u = (s, e, t, i) => {
792
- for (var r = i > 1 ? void 0 : i ? bt(e, t) : e, o = s.length - 1, n; o >= 0; o--)
793
- (n = s[o]) && (r = (i ? n(e, t, r) : n(r)) || r);
794
- return i && r && vt(e, t, r), r;
805
+ /**
806
+ * @license
807
+ * Copyright 2018 Google LLC
808
+ * SPDX-License-Identifier: BSD-3-Clause
809
+ */
810
+ const Lt = Rt(class extends St {
811
+ constructor(i) {
812
+ var e;
813
+ if (super(i), i.type !== Mt.ATTRIBUTE || i.name !== "class" || ((e = i.strings) == null ? void 0 : e.length) > 2) throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.");
814
+ }
815
+ render(i) {
816
+ return " " + Object.keys(i).filter((e) => i[e]).join(" ") + " ";
817
+ }
818
+ update(i, [e]) {
819
+ var o, s;
820
+ if (this.st === void 0) {
821
+ this.st = /* @__PURE__ */ new Set(), i.strings !== void 0 && (this.nt = new Set(i.strings.join(" ").split(/\s/).filter((r) => r !== "")));
822
+ for (const r in e) e[r] && !((o = this.nt) != null && o.has(r)) && this.st.add(r);
823
+ return this.render(e);
824
+ }
825
+ const t = i.element.classList;
826
+ for (const r of this.st) r in e || (t.remove(r), this.st.delete(r));
827
+ for (const r in e) {
828
+ const n = !!e[r];
829
+ n === this.st.has(r) || (s = this.nt) != null && s.has(r) || (n ? (t.add(r), this.st.add(r)) : (t.remove(r), this.st.delete(r)));
830
+ }
831
+ return L;
832
+ }
833
+ });
834
+ var Tt = Object.defineProperty, Ot = Object.getOwnPropertyDescriptor, k = (i, e, t, o) => {
835
+ for (var s = o > 1 ? void 0 : o ? Ot(e, t) : e, r = i.length - 1, n; r >= 0; r--)
836
+ (n = i[r]) && (s = (o ? n(e, t, s) : n(s)) || s);
837
+ return o && s && Tt(e, t, s), s;
838
+ };
839
+ let T = class extends C {
840
+ constructor() {
841
+ super(...arguments), this.type = "button", this.label = "", this.disabled = !1, this.variant = "contained";
842
+ }
843
+ render() {
844
+ return y`
845
+ <button
846
+ class=${this.variant}
847
+ tabindex="0"
848
+ type=${this.type}
849
+ ?disabled=${this.disabled}
850
+ >
851
+ ${this.label}
852
+ </button>
853
+ `;
854
+ }
855
+ };
856
+ T.styles = j`
857
+ :host {
858
+ display: flex;
859
+ width: 100%;
860
+ justify-content: center;
861
+ align-content: center;
862
+ }
863
+
864
+ button {
865
+ width: 100%;
866
+ padding: 16px 32px;
867
+ background-color: var(--brand-primary);
868
+ color: var(--text-inverse);
869
+ border: none;
870
+ border-radius: 4px;
871
+ font-size: 16px;
872
+ font-weight: bold;
873
+ font-family: "Lato", sans-serif;
874
+ cursor: pointer;
875
+ transition: background-color 0.3s ease;
876
+ }
877
+
878
+ button.contained {
879
+ background-color: var(--brand-primary);
880
+ color: var(--text-inverse);
881
+ border: none;
882
+ }
883
+
884
+ button.contained:hover {
885
+ filter: brightness(0.9);
886
+ }
887
+
888
+ button.outlined {
889
+ background-color: transparent;
890
+ color: var(--brand-primary);
891
+ border: 2px solid var(--brand-primary);
892
+ }
893
+
894
+ button.outlined:hover {
895
+ filter: brightness(1.2);
896
+ }
897
+
898
+ button:focus {
899
+ outline: 2px solid var(--brand-primary);
900
+ outline-offset: 2px;
901
+ }
902
+
903
+ button:disabled {
904
+ opacity: 0.6;
905
+ cursor: not-allowed;
906
+ }
907
+ `;
908
+ k([
909
+ m({ type: String })
910
+ ], T.prototype, "type", 2);
911
+ k([
912
+ m({ type: String })
913
+ ], T.prototype, "label", 2);
914
+ k([
915
+ m({ type: Boolean })
916
+ ], T.prototype, "disabled", 2);
917
+ k([
918
+ m({ type: String })
919
+ ], T.prototype, "variant", 2);
920
+ T = k([
921
+ Z("xact-button")
922
+ ], T);
923
+ var Ht = Object.defineProperty, It = Object.getOwnPropertyDescriptor, me = (i, e, t, o) => {
924
+ for (var s = o > 1 ? void 0 : o ? It(e, t) : e, r = i.length - 1, n; r >= 0; r--)
925
+ (n = i[r]) && (s = (o ? n(e, t, s) : n(s)) || s);
926
+ return o && s && Ht(e, t, s), s;
927
+ };
928
+ let V = class extends C {
929
+ constructor() {
930
+ super(...arguments), this.height = 0;
931
+ }
932
+ render() {
933
+ return y`
934
+ <div class="step-1">
935
+ <div class="step-1-container-left">
936
+ <div class="step-1-image-container">
937
+ <svg class="fit-svg" width="391" height="390" viewBox="0 0 291 290" fill="none"
938
+ xmlns="http://www.w3.org/2000/svg">
939
+ <path d="M145.5 290C225.581 290 290.5 225.081 290.5 145C290.5 64.9187 225.581 0 145.5 0C65.4187 0 0.5 64.9187 0.5 145C0.5 225.081 65.4187 290 145.5 290Z"
940
+ fill="#EDEDED"/>
941
+ <path d="M233.38 29.9146H107.703V267.012H233.38V29.9146Z" fill="white"/>
942
+ <path d="M228.125 278.97H110.583C103.111 278.97 97.0319 272.892 97.0319 265.419V24.4708C97.0319 16.9986 103.111 10.9197 110.583 10.9197H228.125C235.597 10.9197 241.676 16.9986 241.676 24.4708V265.419C241.676 272.891 235.597 278.97 228.125 278.97ZM110.583 11.6185C103.496 11.6185 97.7307 17.384 97.7307 24.4709V265.419C97.7307 272.506 103.496 278.272 110.583 278.272H228.125C235.212 278.272 240.977 272.506 240.977 265.419V24.4708C240.977 17.3838 235.212 11.6184 228.125 11.6184H110.583V11.6185Z"
943
+ fill="#363E44"/>
944
+ <path d="M184.815 20.9484H153.893C153.7 20.9484 153.544 20.7921 153.544 20.5989C153.544 20.4058 153.7 20.2495 153.893 20.2495H184.815C185.008 20.2495 185.164 20.4058 185.164 20.5989C185.164 20.7921 185.008 20.9484 184.815 20.9484Z"
945
+ fill="#363E44"/>
946
+ <path d="M168.093 239.102L168.61 245.941H168.607L173.566 262.039H161.215L162.298 245.941H162.206L156.717 262.191L140.249 261.962V255.096L146.653 251.663L153.074 239.689L168.093 239.102Z"
947
+ fill="#2A2A2A"/>
948
+ <path d="M168.093 239.102L164.717 194.443L182.328 154.388L151.451 148.895C151.048 157.392 145.465 180.315 145.504 191.925C145.543 203.164 149.896 220.188 153.074 239.689L168.093 239.102Z"
949
+ fill="#B3B3B3"/>
950
+ <path d="M215.781 229.874L219.064 235.895L219.062 235.896L230.2 248.532L218.941 253.61L213.31 238.49L213.226 238.528L214.904 255.599L199.798 262.161L196.975 255.901L201.401 250.139L202.332 236.584L215.781 229.874Z"
951
+ fill="#2A2A2A"/>
952
+ <path d="M215.781 229.874L194.342 190.552L193.929 146.799L163.523 154.486C166.649 162.397 170.984 185.589 175.793 196.156C180.45 206.385 191.417 220.114 202.332 236.584L215.781 229.874Z"
953
+ fill="#B3B3B3"/>
954
+ <path d="M178.463 201.639C178.342 201.639 178.224 201.576 178.16 201.463C177.073 199.571 176.195 197.882 175.476 196.301C172.675 190.147 170.039 179.75 167.713 170.577C167.127 168.265 166.573 166.081 166.034 164.029C165.985 163.842 166.096 163.651 166.283 163.602C166.47 163.553 166.661 163.665 166.709 163.852C167.25 165.907 167.804 168.092 168.39 170.406C170.709 179.55 173.337 189.915 176.111 196.012C176.822 197.573 177.69 199.242 178.765 201.115C178.862 201.283 178.804 201.497 178.636 201.592C178.582 201.623 178.522 201.639 178.463 201.639Z"
955
+ fill="#363E44"/>
956
+ <path d="M143.663 188.896L196.885 189.321C196.885 189.321 212.109 156.696 206.535 136.661C202.573 122.42 192.507 113.029 192.507 113.029L205.897 78.1397L195.01 72.7009L163.702 67.0906L162.912 80.7193C160.768 81.7765 159.292 83.983 159.292 86.5353C159.292 88.8193 160.474 90.8259 162.259 91.9802L161.269 109.074C161.269 109.074 149.033 119.542 144.885 133.621C139.271 152.677 143.663 188.896 143.663 188.896Z"
957
+ fill="var(--brand-primary)"/>
958
+ <path d="M189.146 125.062C190.74 124.03 192.566 124.275 192.544 123.929C192.526 123.669 191.434 123.55 190.462 123.728C188.858 124.021 186.971 126.273 185.928 125.558C184.905 124.858 186.097 122.448 188.084 120.976C189.76 119.734 191.877 120.167 191.851 119.737C191.832 119.434 190.933 119.227 188.969 119.061C187.33 118.922 183.988 119.499 183.877 117.762C183.784 116.301 187.206 115.393 190.515 115.14C192.708 114.972 194.946 115.058 196.239 115.055C195.844 114.494 195.198 113.656 194.267 112.772C192.607 111.197 191.806 110.848 192.051 109.842C192.302 108.805 194.106 109.101 195.998 109.955C198.256 110.973 199.463 112.599 200.319 113.375C203.83 110.574 211.43 104.795 214.941 101.995C214.568 101.87 200.678 97.9842 198.786 96.6709C197.009 90.8386 203.435 77.394 205.772 79.037C210.367 81.2773 236.189 93.4862 236.589 99.2683C237.026 105.59 213.477 124.211 206.042 128.364C205.229 129.25 203.877 130.452 201.95 130.952C199.753 131.522 198.913 130.635 196.501 130.875C192.43 131.281 190.818 134.321 189.736 133.357C188.993 132.696 189.856 130.884 191.072 129.436C192.321 127.95 193.755 127.514 193.64 127.217C193.515 126.892 192.115 127.523 190.304 128.147C189.462 128.438 187.641 130.658 186.493 129.904C185.577 129.303 186.892 126.52 189.146 125.062Z"
959
+ fill="#B3B3B3"/>
960
+ <path d="M163.437 116.572C162.283 115.065 160.48 114.682 160.618 114.364C160.721 114.125 161.79 114.38 162.646 114.874C164.058 115.689 165.078 118.443 166.301 118.121C167.499 117.805 167.187 115.135 165.81 113.08C164.649 111.348 162.51 111.044 162.679 110.648C162.798 110.369 163.715 110.476 165.621 110.98C167.211 111.4 170.165 113.066 170.853 111.467C171.432 110.123 168.514 108.118 165.482 106.767C163.474 105.872 161.336 105.201 160.119 104.764C160.681 104.368 161.571 103.796 162.744 103.276C164.837 102.35 165.708 102.291 165.817 101.261C165.928 100.201 164.13 99.8722 162.061 100.041C159.592 100.241 157.909 101.367 156.842 101.81C154.477 97.9925 149.26 89.9948 146.895 86.1776C147.288 86.1852 157.09 87.6349 159.313 87.0336C159.071 85.5435 159.933 81.9803 162.912 80.7188C163.472 76.8657 163.732 68.0686 163.653 67.9326C158.572 68.498 129.742 71.0234 127.422 76.3349C124.886 82.1423 140.807 107.594 146.414 114.004C146.882 115.112 147.752 116.698 149.399 117.817C151.276 119.092 152.365 118.538 154.556 119.576C158.254 121.326 158.751 124.731 160.094 124.187C161.016 123.814 160.813 121.817 160.153 120.045C159.476 118.225 158.272 117.333 158.48 117.092C158.708 116.828 159.814 117.892 161.31 119.089C162.005 119.645 162.974 122.348 164.309 122.024C165.373 121.766 165.069 118.704 163.437 116.572Z"
961
+ fill="#B3B3B3"/>
962
+ <path d="M210.174 70.2574C195.5 69.9376 179.128 67.9631 163.995 60.5194C163.995 60.5194 171.272 34.6174 189.197 38.9613C204.143 42.5833 210.682 58.5737 210.174 70.2574Z"
963
+ fill="#2A2A2A"/>
964
+ <path d="M195.301 43.9682C195.301 43.9682 189.364 39.2108 187.204 35.5403C185.045 31.8697 179.514 28.1323 175.069 32.0204C170.624 35.9085 180.673 41.1606 180.673 41.1606L195.301 43.9682Z"
965
+ fill="#2A2A2A"/>
966
+ <path d="M190.565 41.8319C190.565 41.8319 192.677 25.2929 199.997 32.2863C207.318 39.2797 194.482 45.2027 190.565 41.8319Z"
967
+ fill="#2A2A2A"/>
968
+ <path d="M196.582 44.1287C194.138 44.1287 191.771 43.3558 190.737 41.7142C190.674 41.6149 190.666 41.4908 190.714 41.384C190.883 41.0111 194.899 32.2482 199.181 32.0666C200.69 31.9977 202.031 32.9906 203.158 35.0045C205.02 38.3333 204.472 41.2025 201.654 42.8761C200.271 43.6981 198.405 44.1287 196.582 44.1287ZM191.433 41.4963C193.034 43.6945 198.179 44.1277 201.297 42.2757C203.779 40.8013 204.223 38.3403 202.548 35.3458C201.561 33.5814 200.443 32.7165 199.211 32.765C195.661 32.9152 192.022 40.2587 191.433 41.4963Z"
969
+ fill="#2A2A2A"/>
970
+ <path d="M189.892 74.1982L189.651 60.3154L180.432 61.7795L177.266 72.2699L189.892 74.1982Z"
971
+ fill="#B3B3B3"/>
972
+ <path d="M174.26 73.602C174.151 75.1238 178.263 76.6602 183.446 77.0335C188.629 77.4069 192.919 76.4759 193.029 74.9541C193.139 73.4321 189.026 71.8959 183.843 71.5226C178.66 71.1492 174.37 72.0802 174.26 73.602Z"
973
+ fill="#B3B3B3"/>
974
+ <path d="M179.677 40.6729C179.677 40.6729 171.719 59.1085 178.777 63.7863C183.047 66.6164 190 63.774 192.337 61.9215C194.674 60.0689 195.882 55.5806 195.882 55.5806C195.882 55.5806 193.6 56.1459 192.915 54.5472C192.23 52.9486 196.875 47.9018 191.451 45.182C186.028 42.462 184.203 44.3784 179.677 40.6729Z"
975
+ fill="#B3B3B3"/>
976
+ <path d="M182.847 65.5564C182.049 65.5564 181.263 65.4751 180.523 65.2919C180.336 65.2454 180.222 65.0561 180.268 64.8688C180.315 64.6811 180.504 64.5681 180.691 64.6135C183.405 65.2849 186.795 64.4856 188.953 63.395C189.125 63.307 189.335 63.3769 189.422 63.5492C189.509 63.7214 189.44 63.9317 189.268 64.0187C187.578 64.8732 185.162 65.5564 182.847 65.5564Z"
977
+ fill="#363E44"/>
978
+ <path d="M192.416 55.971C191.178 57.1258 190.182 59.9318 191.337 61.1695C192.492 62.4073 195.36 61.6081 196.598 60.4534C197.836 59.2986 197.903 57.3591 196.748 56.1213C195.593 54.8833 193.654 54.8161 192.416 55.971Z"
979
+ fill="#B3B3B3"/>
980
+ <path d="M188.962 50.7654C188.939 50.7993 188.947 50.8402 188.924 50.8741C188.924 50.8755 188.922 50.8763 188.921 50.8777C188.765 51.4299 188.603 52.0127 188.55 52.5837C188.527 52.8366 188.608 53.0272 188.613 53.2679C188.617 53.4446 188.62 53.6137 188.631 53.7874C190.437 53.1906 191.666 51.878 191.666 51.878C191.666 51.878 190.507 51.0942 188.962 50.7654Z"
981
+ fill="white"/>
982
+ <path d="M187.088 50.6588C184.871 50.8986 183.194 52.5068 182.92 52.7834C182.928 52.8137 182.937 52.8437 182.946 52.8735C183.32 53.1131 185.273 54.2832 187.455 54.0472C187.864 54.003 188.252 53.9094 188.619 53.7888C188.709 53.6606 188.792 53.5273 188.864 53.3833C189.286 52.5318 189.29 51.584 188.959 50.7672C188.38 50.6468 187.745 50.5878 187.088 50.6588Z"
983
+ fill="#363E44"/>
984
+ <path d="M177.64 49.4339C177.328 50.0358 177.204 50.5485 177.297 51.1911C178.785 51.821 180.201 51.8161 180.201 51.8161C180.201 51.8161 179.855 49.7219 178.46 48.1516C178.095 48.4914 177.861 49.0067 177.64 49.4339Z"
985
+ fill="white"/>
986
+ <path d="M177.266 51.1769C178.17 50.4738 178.645 49.3193 178.457 48.1539C178.3 47.9788 178.132 47.8083 177.946 47.6495C176.09 46.0642 173.478 46.075 173.478 46.075C173.478 46.075 173.877 48.656 175.733 50.2414C176.213 50.6511 176.743 50.9527 177.266 51.1769Z"
987
+ fill="#363E44"/>
988
+ <path d="M195.108 60.1362C195.015 60.1362 194.923 60.0998 194.854 60.0273C194.721 59.8874 194.727 59.6663 194.867 59.5332C194.927 59.4767 194.983 59.4131 195.034 59.3453C195.23 59.0829 195.327 58.7748 195.309 58.4783C195.292 58.2037 195.175 57.9726 194.981 57.8279C194.885 57.756 194.774 57.7084 194.652 57.6867C194.462 57.653 194.335 57.4717 194.369 57.2817C194.403 57.092 194.582 56.9633 194.774 56.9988C195.004 57.0397 195.215 57.1302 195.399 57.2677C195.761 57.5373 195.977 57.9519 196.006 58.4353C196.035 58.8967 195.888 59.3683 195.594 59.7633C195.519 59.8633 195.437 59.9565 195.348 60.0403C195.281 60.1045 195.194 60.1362 195.108 60.1362Z"
989
+ fill="#363E44"/>
990
+ <path d="M179.769 55.2902C179.632 55.2902 179.502 55.2083 179.446 55.0733C179.279 54.6649 179.26 54.2939 179.39 53.9716C179.535 53.6106 179.814 53.4434 180.083 53.2816C180.259 53.1769 180.44 53.0683 180.625 52.8916C180.859 52.6677 181.046 52.3825 181.179 52.0437C181.25 51.8646 181.452 51.7768 181.633 51.8469C181.812 51.9178 181.9 52.1208 181.829 52.3004C181.658 52.7336 181.415 53.1026 181.107 53.3967C180.866 53.6277 180.631 53.7683 180.443 53.8811C180.208 54.0217 180.093 54.0951 180.038 54.2323C179.978 54.3808 179.997 54.5741 180.093 54.8087C180.166 54.9871 180.08 55.1912 179.902 55.2646C179.858 55.282 179.814 55.2902 179.769 55.2902Z"
991
+ fill="#363E44"/>
992
+ <path d="M181.238 58.8445C180.781 58.8445 180.351 58.6353 179.959 58.221C179.826 58.0811 179.832 57.86 179.972 57.7273C180.113 57.5945 180.334 57.6 180.466 57.7406C180.735 58.0241 181.014 58.1661 181.285 58.1442C181.813 58.1138 182.233 57.5607 182.237 57.5553C182.353 57.4014 182.572 57.3694 182.726 57.484C182.88 57.5991 182.913 57.8163 182.799 57.9713C182.774 58.0047 182.186 58.7892 181.33 58.8418C181.299 58.8438 181.268 58.8445 181.238 58.8445Z"
993
+ fill="#363E44"/>
994
+ <path d="M116.273 142.104H67.2117V191.165H116.273V142.104Z" fill="var(--brand-secondary)"/>
995
+ <path d="M119.415 188.372H70.354C70.1608 188.372 70.0045 188.216 70.0045 188.023V138.962C70.0045 138.769 70.1608 138.612 70.354 138.612H119.415C119.608 138.612 119.764 138.769 119.764 138.962V188.023C119.764 188.216 119.608 188.372 119.415 188.372ZM70.7034 187.673H119.066V139.311H70.7034V187.673Z"
996
+ fill="#2A2A2A"/>
997
+ <path d="M78 183L109 182.974C109 182.974 109 165.27 100.099 164.127C99.3142 159.886 101.515 147 101.515 147H99.9605L98.7603 149.059C97.3101 150.142 95.529 150.865 93.6167 151.146L85.6659 152.641C85.6659 152.641 88.0508 162.946 87.9676 164.122C82.0067 164.171 78 183 78 183Z"
998
+ fill="white"/>
999
+ <path d="M116.273 82.7344H67.2115V131.795H116.273V82.7344Z" fill="var(--brand-secondary)"/>
1000
+ <path d="M119.415 129.002H70.3538C70.1607 129.002 70.0044 128.846 70.0044 128.653V79.5919C70.0044 79.3987 70.1607 79.2424 70.3538 79.2424H119.415C119.608 79.2424 119.764 79.3987 119.764 79.5919V128.653C119.764 128.846 119.608 129.002 119.415 129.002ZM70.7033 128.303H119.065V79.9413H70.7033V128.303Z"
1001
+ fill="#2A2A2A"/>
1002
+ <path d="M82.1117 120.362L105.54 120.338C105.54 120.338 105.54 104.4 98.813 103.37C98.22 99.552 99.8833 87.9509 99.8833 87.9509H98.7084L97.8013 89.8044C96.7054 90.7799 95.3593 91.4308 93.9141 91.6839L87.9052 93.0299C87.9052 93.0299 89.7076 102.307 89.6447 103.366C85.1397 103.41 82.1117 120.362 82.1117 120.362Z"
1003
+ fill="white"/>
1004
+ <path d="M116.273 23.104H67.2117V72.165H116.273V23.104Z" fill="var(--brand-secondary)"/>
1005
+ <path d="M119.415 69.3719H70.354C70.1608 69.3719 70.0045 69.2157 70.0045 69.0225V19.9615C70.0045 19.7683 70.1608 19.6121 70.354 19.6121H119.415C119.608 19.6121 119.764 19.7683 119.764 19.9615V69.0225C119.764 69.2157 119.608 69.3719 119.415 69.3719ZM70.7034 68.6731H119.066V20.3109H70.7034V68.6731Z"
1006
+ fill="#2A2A2A"/>
1007
+ <path d="M84.1721 58.3528L103.664 58.3317C103.664 58.3317 103.664 44.209 98.0672 43.2968C97.5738 39.9134 98.9577 29.6338 98.9577 29.6338H97.9802L97.2255 31.2761C96.3137 32.1405 95.1938 32.7172 93.9914 32.9415L88.9922 34.1342C88.9922 34.1342 90.4917 42.3548 90.4394 43.2927C86.6914 43.3321 84.1721 58.3528 84.1721 58.3528Z"
1008
+ fill="white"/>
1009
+ </svg>
1010
+
1011
+ </div>
1012
+ </div>
1013
+
1014
+ <div class="step-1-container-right">
1015
+ <p class="step-1-header">
1016
+ ${a("Forget the tape. Find the ideal size with your device")}
1017
+ </p>
1018
+ <p class="step-1-description">
1019
+ ${a("With just one scan we'll find the ideal size for you. And don't worry, we don't store or share your image.")}
1020
+ </p>
1021
+ <form>
1022
+ <label for="height-input">
1023
+ ${a("To get started, please tell us your height.")}
1024
+ </label>
1025
+ <input id="height-input" type="number" min="50" max="300"
1026
+ placeholder=${a("Height (cm)")} required tabindex="1"/>
1027
+ <xact-button
1028
+ @click=${() => {
1029
+ var e;
1030
+ const i = this.shadowRoot.querySelector("#height-input");
1031
+ if (i != null && i.value) {
1032
+ const t = parseInt(i.value);
1033
+ this.height = t, (e = this.onStartMeasurement) == null || e.call(this, t);
1034
+ }
1035
+ }}
1036
+ label="${a("Let's go!")}"
1037
+ ></xact-button>
1038
+ </div>
1039
+ `;
1040
+ }
1041
+ };
1042
+ V.styles = j`
1043
+ :host {
1044
+ display: block;
1045
+ font-family: "Lato", sans-serif;
1046
+ }
1047
+
1048
+ .step-1 {
1049
+ display: flex;
1050
+ flex-direction: row;
1051
+ gap: 24px;
1052
+ padding: 32px;
1053
+ align-items: center;
1054
+ justify-content: center;
1055
+ }
1056
+
1057
+ .step-1-container-left, .step-1-container-right {
1058
+ flex: 1;
1059
+ }
1060
+
1061
+ .step-1-description {
1062
+ font-size: 16px;
1063
+ font-weight: 400;
1064
+ color: #333;
1065
+ line-height: 1.6;
1066
+ text-align: center;
1067
+ }
1068
+
1069
+ .step-1-header {
1070
+ font-size: 24px;
1071
+ font-weight: 700;
1072
+ color: #000;
1073
+ margin-bottom: 16px;
1074
+ text-align: center;
1075
+ }
1076
+
1077
+ .step-1-image-container {
1078
+ display: flex;
1079
+ justify-content: center;
1080
+ align-items: center;
1081
+ width: 100%;
1082
+ height: 100%;
1083
+ }
1084
+
1085
+ .step-1-image-container img {
1086
+ max-width: 100%;
1087
+ height: auto;
1088
+ }
1089
+
1090
+ .size-chart {
1091
+ max-width: 100%;
1092
+ height: auto;
1093
+ }
1094
+
1095
+ .fit-svg {
1096
+ width: 100%;
1097
+ height: 100%;
1098
+ max-width: 100%;
1099
+ max-height: 100%;
1100
+ object-fit: contain;
1101
+ }
1102
+
1103
+ @media (max-width: 768px) {
1104
+ .fit-svg {
1105
+ width: 85%;
1106
+ object-fit: contain;
1107
+ }
1108
+ }
1109
+
1110
+
1111
+ label {
1112
+ display: block;
1113
+ font-size: 16px;
1114
+ margin-bottom: 8px;
1115
+ color: #333;
1116
+ }
1117
+
1118
+ input {
1119
+ width: 100%;
1120
+ max-width: 150px;
1121
+ padding: 12px;
1122
+ font-size: 16px;
1123
+ border: 1px solid #ccc;
1124
+ border-radius: 6px;
1125
+ box-sizing: border-box;
1126
+ font-family: "Lato", sans-serif;
1127
+ }
1128
+
1129
+ input:focus{
1130
+ outline: 2px solid var(--brand-primary);
1131
+ outline-offset: 2px;
1132
+ }
1133
+
1134
+ form {
1135
+ display: flex;
1136
+ flex-direction: column;
1137
+ align-items: center;
1138
+ gap: 16px;
1139
+ }
1140
+
1141
+ .footer-link {
1142
+ text-align: center;
1143
+ margin-top: 24px;
1144
+ font-size: 12px;
1145
+ color: #000;
1146
+ }
1147
+
1148
+ .footer-link a {
1149
+ text-decoration: none;
1150
+ font-weight: bold;
1151
+ color: inherit;
1152
+ }
1153
+
1154
+ @media (max-width: 768px) {
1155
+ .step-1 {
1156
+ flex-direction: column;
1157
+ padding: 24px 16px;
1158
+ }
1159
+
1160
+ .step-1-description, .step-1-header {
1161
+ text-align: left;
1162
+ }
1163
+ }
1164
+ `;
1165
+ me([
1166
+ m({ type: Number })
1167
+ ], V.prototype, "height", 2);
1168
+ me([
1169
+ m({ type: Function })
1170
+ ], V.prototype, "onStartMeasurement", 2);
1171
+ V = me([
1172
+ Z("xact-step-one"),
1173
+ te()
1174
+ ], V);
1175
+ var Dt = Object.getOwnPropertyDescriptor, Pt = (i, e, t, o) => {
1176
+ for (var s = o > 1 ? void 0 : o ? Dt(e, t) : e, r = i.length - 1, n; r >= 0; r--)
1177
+ (n = i[r]) && (s = n(s) || s);
1178
+ return s;
1179
+ };
1180
+ let ce = class extends C {
1181
+ render() {
1182
+ return y`
1183
+ <footer class="modal-footer">
1184
+ <span>
1185
+ <span class="powered-by">${a("Powered by")}</span>
1186
+ <a tabindex="0" class="xactsize-link" href="http://xactsize.com" target="_blank" rel="noopener">
1187
+ <svg class="xactsize-icon" width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
1188
+ <path d="M5.82764 11.3511L11.5446 7.80768V11.3511H5.82764Z" fill="url(#paint0_linear_2010_6151)"/>
1189
+ <path d="M5.82764 7.80909L11.5446 4.26569V7.80909H5.82764Z" fill="url(#paint1_linear_2010_6151)"/>
1190
+ <path d="M5.82764 4.26654L11.5446 0.723145V4.26654H5.82764Z" fill="url(#paint2_linear_2010_6151)"/>
1191
+ <path d="M5.82759 0.723145L0.110596 4.26654V0.723145H5.82759Z" fill="url(#paint3_linear_2010_6151)"/>
1192
+ <path d="M5.82759 4.26571L0.110596 7.80835V4.26495H5.82759V4.26571Z" fill="url(#paint4_linear_2010_6151)"/>
1193
+ <path d="M5.82759 7.80844L0.110596 11.3511V7.80768H5.82759V7.80844Z" fill="url(#paint5_linear_2010_6151)"/>
1194
+ <defs>
1195
+ <linearGradient id="paint0_linear_2010_6151" x1="-4.32241" y1="9.58014" x2="10.756" y2="9.58014" gradientUnits="userSpaceOnUse">
1196
+ <stop stop-color="#1C28BA"/>
1197
+ <stop offset="1" stop-color="#6F1BBF"/>
1198
+ </linearGradient>
1199
+ <linearGradient id="paint1_linear_2010_6151" x1="-0.448527" y1="6.03739" x2="-0.372553" y2="6.03739" gradientUnits="userSpaceOnUse">
1200
+ <stop stop-color="#1C28BA"/>
1201
+ <stop offset="1" stop-color="#6F1BBF"/>
1202
+ </linearGradient>
1203
+ <linearGradient id="paint2_linear_2010_6151" x1="-0.448527" y1="2.49484" x2="-0.372553" y2="2.49484" gradientUnits="userSpaceOnUse">
1204
+ <stop stop-color="#1C28BA"/>
1205
+ <stop offset="1" stop-color="#6F1BBF"/>
1206
+ </linearGradient>
1207
+ <linearGradient id="paint3_linear_2010_6151" x1="-4.32245" y1="2.49484" x2="10.756" y2="2.49484" gradientUnits="userSpaceOnUse">
1208
+ <stop stop-color="#1C28BA"/>
1209
+ <stop offset="1" stop-color="#6F1BBF"/>
1210
+ </linearGradient>
1211
+ <linearGradient id="paint4_linear_2010_6151" x1="-4.32245" y1="6.03665" x2="10.756" y2="6.03665" gradientUnits="userSpaceOnUse">
1212
+ <stop stop-color="#1C28BA"/>
1213
+ <stop offset="1" stop-color="#6F1BBF"/>
1214
+ </linearGradient>
1215
+ <linearGradient id="paint5_linear_2010_6151" x1="-4.32245" y1="9.58014" x2="10.756" y2="9.58014" gradientUnits="userSpaceOnUse">
1216
+ <stop stop-color="#1C28BA"/>
1217
+ <stop offset="1" stop-color="#6F1BBF"/>
1218
+ </linearGradient>
1219
+ </defs>
1220
+ </svg>
1221
+ Xactsize
1222
+ </a>
1223
+ </span>
1224
+ </footer>
1225
+ `;
1226
+ }
1227
+ };
1228
+ ce.styles = j`
1229
+ .modal-footer {
1230
+ text-align: center;
1231
+ font-size: 12px;
1232
+ padding: 16px;
1233
+ color: #000;
1234
+ }
1235
+
1236
+ .modal-footer span {
1237
+ display: inline-flex;
1238
+ align-items: center;
1239
+ justify-content: center;
1240
+ }
1241
+
1242
+ .powered-by {
1243
+ font-weight: normal;
1244
+ margin-right: 4px;
1245
+ }
1246
+
1247
+ .xactsize-link {
1248
+ color: #040D3F;
1249
+ font-weight: bold;
1250
+ text-decoration: none;
1251
+ display: inline-flex;
1252
+ align-items: center;
1253
+ }
1254
+
1255
+ .xactsize-icon {
1256
+ vertical-align: middle;
1257
+ margin: 0 4px 0 0;
1258
+ }
1259
+
1260
+ a:focus {
1261
+ outline: 2px solid var(--brand-primary);
1262
+ outline-offset: 2px;
1263
+ }
1264
+ `;
1265
+ ce = Pt([
1266
+ Z("xact-footer"),
1267
+ te()
1268
+ ], ce);
1269
+ var Bt = Object.defineProperty, Nt = Object.getOwnPropertyDescriptor, G = (i, e, t, o) => {
1270
+ for (var s = o > 1 ? void 0 : o ? Nt(e, t) : e, r = i.length - 1, n; r >= 0; r--)
1271
+ (n = i[r]) && (s = (o ? n(e, t, s) : n(s)) || s);
1272
+ return o && s && Bt(e, t, s), s;
1273
+ };
1274
+ let O = class extends C {
1275
+ constructor() {
1276
+ super(...arguments), this.productName = "", this.recommendedSize = "";
1277
+ }
1278
+ render() {
1279
+ return y`
1280
+ <h2 class="title">${a("Your ideal size")}</h2>
1281
+ <div class="size-circle">${this.recommendedSize}</div>
1282
+ <p class="description">
1283
+ ${a("The above recommendation is for an ideal fit based on your measurements. For a more comfortable or oversized fit, choose larger sizes.")}
1284
+ </p>
1285
+ <div class="buttons">
1286
+ <xact-button
1287
+ variant="outlined"
1288
+ @click=${this.onRetry}
1289
+ label=${a("Measure again")}>
1290
+ </xact-button>
1291
+
1292
+ <xact-button
1293
+ @click=${this.onAccept}
1294
+ label=${a("Accept suggestion")}>
1295
+ </xact-button>
1296
+ </div>
1297
+ `;
1298
+ }
1299
+ };
1300
+ O.styles = j`
1301
+ :host {
1302
+ display: flex;
1303
+ flex-direction: column;
1304
+ align-items: center;
1305
+ padding: 24px 16px;
1306
+ text-align: center;
1307
+ font-family: "Lato", sans-serif;
1308
+ box-sizing: border-box;
1309
+ }
1310
+
1311
+ .size-circle {
1312
+ background-color: var(--brand-primary, #1C28BA);
1313
+ color: white;
1314
+ font-size: 32px;
1315
+ font-weight: bold;
1316
+ width: 80px;
1317
+ height: 80px;
1318
+ border-radius: 50%;
1319
+ display: flex;
1320
+ align-items: center;
1321
+ justify-content: center;
1322
+ margin: 16px 0;
1323
+ }
1324
+
1325
+ .title {
1326
+ font-size: 20px;
1327
+ font-weight: 700;
1328
+ margin: 8px 0;
1329
+ color: #333;
1330
+ }
1331
+
1332
+ .description {
1333
+ font-size: 14px;
1334
+ font-weight: 400;
1335
+ color: #444;
1336
+ margin: 16px 0;
1337
+ max-width: 300px;
1338
+ line-height: 1.5;
1339
+ }
1340
+
1341
+ .buttons {
1342
+ display: flex;
1343
+ flex-direction: column;
1344
+ gap: 12px;
1345
+ width: 100%;
1346
+ max-width: 320px;
1347
+ }
1348
+
1349
+ @media (min-width: 600px) {
1350
+ .buttons {
1351
+ justify-content: center;
1352
+ }
1353
+
1354
+ .description {
1355
+ max-width: 50%;
1356
+ }
1357
+ }
1358
+ `;
1359
+ G([
1360
+ m({ type: String })
1361
+ ], O.prototype, "productName", 2);
1362
+ G([
1363
+ m({ type: String })
1364
+ ], O.prototype, "recommendedSize", 2);
1365
+ G([
1366
+ m({ type: Function })
1367
+ ], O.prototype, "onAccept", 2);
1368
+ G([
1369
+ m({ type: Function })
1370
+ ], O.prototype, "onRetry", 2);
1371
+ O = G([
1372
+ Z("xact-step-result"),
1373
+ te()
1374
+ ], O);
1375
+ const Se = "data:image/svg+xml,%3csvg%20width='22'%20height='40'%20viewBox='0%200%2022%2040'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M21.517%200L0%2013.3362V0H21.517Z'%20fill='white'/%3e%3cpath%20d='M21.517%2013.339L0%2026.6724V13.3362H21.517V13.339Z'%20fill='white'/%3e%3cpath%20d='M21.517%2026.6755L0%2040.0089V26.6726H21.517V26.6755Z'%20fill='%231C28BA'/%3e%3c/svg%3e", zt = "data:image/svg+xml,%3csvg%20width='22'%20height='41'%20viewBox='0%200%2022%2041'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M21.517%200.00878906L0%2013.345V0.00878906H21.517Z'%20fill='white'/%3e%3cpath%20d='M21.517%2013.3478L0%2026.6812V13.345H21.517V13.3478Z'%20fill='%231C28BA'/%3e%3cpath%20d='M21.517%2026.6843L0%2040.0176V26.6814H21.517V26.6843Z'%20fill='white'/%3e%3c/svg%3e", Ut = "data:image/svg+xml,%3csvg%20width='22'%20height='41'%20viewBox='0%200%2022%2041'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M21.517%200.0204381L0%2013.3538V0.0175781H21.517V0.0204381Z'%20fill='%231C28BA'/%3e%3cpath%20d='M21.517%2013.3538L0%2026.69V13.3538H21.517Z'%20fill='white'/%3e%3cpath%20d='M21.517%2026.693L0%2040.0264V26.6902H21.517V26.693Z'%20fill='white'/%3e%3c/svg%3e";
1376
+ var Vt = Object.defineProperty, jt = Object.getOwnPropertyDescriptor, u = (i, e, t, o) => {
1377
+ for (var s = o > 1 ? void 0 : o ? jt(e, t) : e, r = i.length - 1, n; r >= 0; r--)
1378
+ (n = i[r]) && (s = (o ? n(e, t, s) : n(s)) || s);
1379
+ return o && s && Vt(e, t, s), s;
795
1380
  };
796
- const { getLocale: It, setLocale: ye } = gt({
797
- sourceLocale: Ce,
1381
+ const { getLocale: Gt, setLocale: Le } = bt({
1382
+ sourceLocale: je,
798
1383
  targetLocales: At,
799
- loadLocale: (s) => De(/* @__PURE__ */ Object.assign({ "./generated/locales/pt-BR.ts": () => import("./pt-BR-CpJNPyeH.mjs") }), `./generated/locales/${s}.ts`, 4)
1384
+ loadLocale: (i) => Fe(/* @__PURE__ */ Object.assign({ "./generated/locales/pt-BR.ts": () => import("./pt-BR-DQYiEJfn.mjs") }), `./generated/locales/${i}.ts`, 4)
800
1385
  });
801
- let d = class extends Q {
1386
+ let d = class extends C {
802
1387
  constructor() {
803
- super(...arguments), this.apiKey = "", this.productImageSrc = "", this._culture = "en", this._isLocaleLoading = !1, this.skus = [], this.productName = "", this.showModal = !1, this.step = 1, this.height = 0, this.recommendedSize = "", this.measurements = {}, this.errorMessage = "", this.instructionMessage = a("Position yourself in front of the camera", { id: "INITIAL_POSITION" }), this.shouldStartMeasurement = !1, this.isLoading = !1, this.isFetching = !1, this.videoElement = null, this.stream = null, this.poolingTimeout = null, this.instructionMessageTimeout = null, this.cameras = [], this.currentCameraId = null;
1388
+ super(...arguments), this.spinnerFrame = 0, this.apiKey = "", this._culture = "pt-BR", this._isLocaleLoading = !1, this.skus = [], this.productName = "", this.showModal = !1, this.step = 1, this.height = 0, this.recommendedSize = "", this.measurements = {}, this.errorMessage = "", this.instructionMessage = a("Position yourself in front of the camera"), this.shouldStartMeasurement = !1, this.isLoading = !1, this.isFetching = !1, this.videoElement = null, this.stream = null, this.poolingTimeout = null, this.instructionMessageTimeout = null, this.cameras = [], this.currentCameraId = null;
1389
+ }
1390
+ firstUpdated() {
1391
+ this.startSpinnerAnimation();
1392
+ }
1393
+ startSpinnerAnimation() {
1394
+ const i = [
1395
+ Ut,
1396
+ zt,
1397
+ Se
1398
+ ];
1399
+ this.spinnerInterval = setInterval(() => {
1400
+ var t;
1401
+ const e = (t = this.shadowRoot) == null ? void 0 : t.querySelector(".spinner");
1402
+ e && (e.src = i[this.spinnerFrame], this.spinnerFrame = (this.spinnerFrame + 1) % i.length);
1403
+ }, 300);
804
1404
  }
805
1405
  get culture() {
806
1406
  return this._culture;
807
1407
  }
808
- set culture(s) {
1408
+ set culture(i) {
809
1409
  const e = this._culture;
810
- this._culture = s, this.requestUpdate("culture", e), this._applyLocale(s).catch(console.error);
1410
+ this._culture = i, this.requestUpdate("culture", e), this._applyLocale(i).catch(console.error);
811
1411
  }
812
- async _applyLocale(s) {
1412
+ async _applyLocale(i) {
813
1413
  try {
814
- this._isLocaleLoading = !0, this.requestUpdate(), await ye(s);
1414
+ this._isLocaleLoading = !0, this.requestUpdate(), await Le(i);
815
1415
  } catch (e) {
816
- console.error("Failed to load locale", s, e), await ye(Ce);
1416
+ console.error("Failed to load locale", i, e), await Le(je);
817
1417
  } finally {
818
1418
  this._isLocaleLoading = !1, this.requestUpdate();
819
1419
  }
@@ -844,53 +1444,58 @@ let d = class extends Q {
844
1444
  ERR_HEM_MEASUREMENT_FAILED: a("Ensure your clothing hem is visible and clear", { id: "ERR_HEM_MEASUREMENT_FAILED" }),
845
1445
  ERR_SHOULDER_MEASUREMENT_FAILED: a("Keep your shoulders relaxed and visible", { id: "ERR_SHOULDER_MEASUREMENT_FAILED" }),
846
1446
  ERR_ARM_NOT_STRETCHED: a("Stretch your arms fully", { id: "ERR_ARM_NOT_STRETCHED" }),
847
- ERR_LEGS_NOT_DETECTED: a("Ensure Ensure your legs are fully visible in the frame", { id: "ERR_LEGS_NOT_DETECTED" }),
1447
+ ERR_LEGS_NOT_DETECTED: a("Ensure your legs are fully visible in the frame", { id: "ERR_LEGS_NOT_DETECTED" }),
848
1448
  ERR_HIPS_MEASUREMENT_FAILED: a("Stand straight and ensure your hips are visible", { id: "ERR_HIPS_MEASUREMENT_FAILED" }),
849
1449
  ERR_WAIST_MEASUREMENT_FAILED: a("Stand straight and ensure your waist is visible", { id: "ERR_WAIST_MEASUREMENT_FAILED" }),
850
1450
  ERR_INVALID_MEASURE_SIDE_VIEW: a("Turn to show a clear side profile", { id: "ERR_INVALID_MEASURE_SIDE_VIEW" }),
851
1451
  ERR_INVALID_BODY_HEIGHT_TYPE: a("Ensure your full body is visible for height measurement", { id: "ERR_INVALID_BODY_HEIGHT_TYPE" }),
852
- ERR_IMAGE_LOAD_FAILED: a("Try again later; the image could not be processed", { id: "ERR_IMAGE_LOAD_FAILED" })
1452
+ ERR_IMAGE_LOAD_FAILED: a("Try again later; the image could not be processed", { id: "ERR_IMAGE_LOAD_FAILED" }),
1453
+ ERR_HEIGHT_INVALID: a("Height must be between 50 and 300 cm", { id: "ERR_HEIGHT_INVALID" })
853
1454
  };
854
1455
  }
855
- getTranslatedMessage(s) {
856
- const e = this.errorMap[s];
857
- return e || (console.info("Error code is missing", s), a("An unexpected error occurred", { id: "FALLBACK_ERROR" }));
1456
+ getTranslatedMessage(i) {
1457
+ const e = this.errorMap[i];
1458
+ return e || (console.info("Error code is missing", i), a("An unexpected error occurred"));
858
1459
  }
859
1460
  connectedCallback() {
860
1461
  super.connectedCallback(), document.addEventListener("keydown", this.handleEscKey.bind(this));
861
1462
  }
862
1463
  disconnectedCallback() {
863
- super.disconnectedCallback(), document.removeEventListener("keydown", this.handleEscKey.bind(this)), this.stopPolling();
1464
+ super.disconnectedCallback(), document.removeEventListener("keydown", this.handleEscKey.bind(this)), this.stopPolling(), clearInterval(this.spinnerInterval);
864
1465
  }
865
- handleEscKey(s) {
866
- s.key === "Escape" && this.showModal && this.closeModal();
1466
+ handleEscKey(i) {
1467
+ i.key === "Escape" && this.showModal && this.closeModal();
867
1468
  }
868
1469
  openModal() {
869
- this.showModal = !0, this.step = 1, this.height = 0, this.instructionMessage = a("Position yourself in front of the camera", { id: "INITIAL_POSITION" });
1470
+ this.showModal = !0, this.step = 1, this.height = 0, this.instructionMessage = a("Position yourself in front of the camera");
870
1471
  }
871
1472
  closeModal() {
872
1473
  this.showModal = !1, this.onMeasurementCanceled && typeof this.onMeasurementCanceled == "function" && this.onMeasurementCanceled(), this.stopPolling(), this.dispatchEvent(new CustomEvent("measurementCanceled", { detail: {} }));
873
1474
  }
874
1475
  async startMeasurement() {
1476
+ if (this.height < 50 || this.height > 300) {
1477
+ this.errorMessage = this.getTranslatedMessage("ERR_HEIGHT_INVALID");
1478
+ return;
1479
+ }
875
1480
  this.step = 2, this.errorMessage = "", this.shouldStartMeasurement = !0;
876
1481
  }
877
- updated(s) {
878
- super.updated(s), s.has("step") && this.step === 2 && this.shouldStartMeasurement && (this.initializeMeasurement(), this.shouldStartMeasurement = !1);
1482
+ updated(i) {
1483
+ super.updated(i), i.has("step") && this.step === 2 && this.shouldStartMeasurement && (this.initializeMeasurement(), this.shouldStartMeasurement = !1);
879
1484
  }
880
1485
  async initializeMeasurement() {
881
1486
  this.videoElement = this.shadowRoot.querySelector("video");
882
1487
  try {
883
1488
  this.stream = await navigator.mediaDevices.getUserMedia({ video: !0 }), this.videoElement && (this.videoElement.srcObject = this.stream, await this.videoElement.play(), await this.loadCameras(), this.startPolling());
884
1489
  } catch {
885
- this.errorMessage = a("Error accessing webcam", { id: "WEBCAM_ERROR" });
1490
+ this.errorMessage = a("Error accessing webcam");
886
1491
  }
887
1492
  }
888
1493
  async loadCameras() {
889
1494
  try {
890
- const s = await navigator.mediaDevices.enumerateDevices();
891
- this.cameras = s.filter((e) => e.kind === "videoinput"), this.cameras.length > 0 && (this.currentCameraId = this.cameras[0].deviceId);
892
- } catch (s) {
893
- console.error("Error enumerating devices:", s);
1495
+ const i = await navigator.mediaDevices.enumerateDevices();
1496
+ this.cameras = i.filter((e) => e.kind === "videoinput"), this.cameras.length > 0 && (this.currentCameraId = this.cameras[0].deviceId);
1497
+ } catch (i) {
1498
+ console.error("Error enumerating devices:", i);
894
1499
  }
895
1500
  }
896
1501
  async flipCamera() {
@@ -903,39 +1508,45 @@ let d = class extends Q {
903
1508
  video: { deviceId: { exact: this.currentCameraId } }
904
1509
  }), this.videoElement && (this.videoElement.srcObject = this.stream, await this.videoElement.play(), this.startPolling());
905
1510
  } catch {
906
- this.errorMessage = a("Error switching camera", { id: "CAMERA_SWITCH_ERROR" });
1511
+ this.errorMessage = a("Error switching camera");
907
1512
  } finally {
908
1513
  this.isLoading = !1;
909
1514
  }
910
1515
  }
911
1516
  async startPolling() {
912
- const s = async () => {
1517
+ const i = async () => {
913
1518
  if (!this.videoElement || !this.stream || this.isFetching) return;
914
1519
  const e = document.createElement("canvas");
915
1520
  e.width = this.videoElement.videoWidth, e.height = this.videoElement.videoHeight;
916
1521
  const t = e.getContext("2d");
917
1522
  t == null || t.drawImage(this.videoElement, 0, 0, e.width, e.height);
918
- const i = await new Promise((o) => e.toBlob((n) => o(n), "image/jpeg")), r = new FormData();
919
- r.append("image", i, "frame.jpg"), r.append("height", this.height.toString()), r.append("type", "shirt"), r.append("skus", JSON.stringify(this.skus));
1523
+ const o = await new Promise((n) => e.toBlob((h) => n(h), "image/jpeg")), s = new File([o], "frame.jpg", { type: "image/jpeg" }), r = new FormData();
1524
+ r.append("image", s), r.append("height", this.height.toString()), r.append("type", "shirt"), r.append("skus", JSON.stringify(this.skus));
920
1525
  try {
921
1526
  this.isFetching = !0, this.isLoading = !0, this.poolingTimeout !== null && (clearTimeout(this.poolingTimeout), this.poolingTimeout = null), this.instructionMessageTimeout !== null && (clearTimeout(this.instructionMessageTimeout), this.instructionMessageTimeout = null);
922
- const n = await (await fetch("https://xactsize-api-923169850574.southamerica-east1.run.app/api/measurer/measure/body", {
1527
+ const h = await (await fetch("https://xactsize-api-923169850574.southamerica-east1.run.app/api/measurer/measure/body", {
923
1528
  method: "POST",
924
- body: r
1529
+ body: r,
1530
+ headers: {
1531
+ Accept: "application/json",
1532
+ // Ensure JSON response
1533
+ "Cache-Control": "no-store",
1534
+ Pragma: "no-cache"
1535
+ }
925
1536
  })).json();
926
- this.isFetching = !1, this.isLoading = !1, n.success ? (this.measurements = n.measurements, this.recommendedSize = n.chosenSize, this.instructionMessage = a("Measurement successful!", { id: "MEASUREMENT_SUCCESS" }), this.stopPolling(), this.step = 3) : (this.instructionMessage = this.getTranslatedMessage(n.message || "UNKNOWN_ERROR"), this.instructionMessageTimeout = setTimeout(() => {
927
- this.recommendedSize || (this.instructionMessage = a("Position yourself in front of the camera", { id: "INITIAL_POSITION" }), this.poolingTimeout = setTimeout(s, 0));
1537
+ this.isFetching = !1, this.isLoading = !1, h.success ? (this.measurements = h.measurements, this.recommendedSize = h.chosenSize, this.instructionMessage = a("Measurement successful!"), this.stopPolling(), this.step = 3) : (this.instructionMessage = this.getTranslatedMessage(h.message || "UNKNOWN_ERROR"), this.instructionMessageTimeout = setTimeout(() => {
1538
+ this.recommendedSize || (this.instructionMessage = a("Position yourself in front of the camera"), this.poolingTimeout = setTimeout(i, 0));
928
1539
  }, 2e3));
929
1540
  } catch {
930
- this.isFetching = !1, this.isLoading = !1, this.instructionMessage = a("Error processing measurement", { id: "PROCESSING_ERROR" }), this.instructionMessageTimeout = setTimeout(() => {
931
- this.recommendedSize || (this.instructionMessage = a("Position yourself in front of the camera", { id: "INITIAL_POSITION" }), this.poolingTimeout = setTimeout(s, 0));
1541
+ this.isFetching = !1, this.isLoading = !1, this.instructionMessage = a("Error processing measurement"), this.instructionMessageTimeout = setTimeout(() => {
1542
+ this.recommendedSize || (this.instructionMessage = a("Position yourself in front of the camera"), this.poolingTimeout = setTimeout(i, 0));
932
1543
  }, 2e3);
933
1544
  }
934
1545
  };
935
- s();
1546
+ i();
936
1547
  }
937
1548
  stopPolling() {
938
- this.poolingTimeout !== null && (clearTimeout(this.poolingTimeout), this.poolingTimeout = null), this.instructionMessageTimeout !== null && (clearTimeout(this.instructionMessageTimeout), this.instructionMessageTimeout = null), this.stream && (this.stream.getTracks().forEach((s) => s.stop()), this.stream = null);
1549
+ this.poolingTimeout !== null && (clearTimeout(this.poolingTimeout), this.poolingTimeout = null), this.instructionMessageTimeout !== null && (clearTimeout(this.instructionMessageTimeout), this.instructionMessageTimeout = null), this.stream && (this.stream.getTracks().forEach((i) => i.stop()), this.stream = null);
939
1550
  }
940
1551
  acceptMeasurement() {
941
1552
  this.dispatchEvent(new CustomEvent("measurementAccepted", { detail: { size: this.recommendedSize } })), this.onMeasurementAccepted && typeof this.onMeasurementAccepted == "function" && this.onMeasurementAccepted(), this.showModal = !1, this.stopPolling();
@@ -947,148 +1558,73 @@ let d = class extends Q {
947
1558
  this.resetMeasurement(), this.showModal = !1;
948
1559
  }
949
1560
  render() {
950
- return this._isLocaleLoading ? A`<div hidden></div>` : A`
951
- <button class="xactsize-btn-primary" @click=${this.openModal}>${a("Get your Xactsize", { id: "s304016f0c1ef2ccf" })}</button>
1561
+ return this._isLocaleLoading ? y`<div hidden></div>` : y`
1562
+ <xact-button @click=${this.openModal} label="${a("Find your Xactsize")}"></xact-button>
952
1563
 
953
- ${this.showModal ? A`
1564
+ ${this.showModal ? y`
954
1565
  <div class="modal">
955
1566
  <div class="modal-content">
956
1567
  <div style="display: flex; justify-content: space-between" class="modal-title-container">
957
- <h2 class="modal-title">${a("Get your Xactsize", { id: "s304016f0c1ef2ccf" })}</h2>
958
- <span class="close-btn" @click=${this.closeModal}>×</span>
1568
+ <span class="close-btn" @click=${this.closeModal} tabindex="0">
1569
+ <svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
1570
+ <path d="M9.06066 8.35355L16.7071 0.707107L16 0L8.35355 7.64645L0.707108 0L0 0.707107L7.64645 8.35355L0 16L0.707107 16.7071L8.35355 9.06066L16 16.7071L16.7071 16L9.06066 8.35355Z" fill="black"/>
1571
+ </svg>
1572
+ </span>
959
1573
  </div>
960
1574
 
961
- ${this.step === 1 ? A`
962
- <div class="step-1">
963
- <div class="step-1-container-left">
964
- <p class="step-1-description">${a("Let’s discover the perfect fit for you.", { id: "s89b006f081793066" })}</p>
965
- <p class="step-1-description">${a("For accurate measurements, please ensure you have proper lighting. We will estimate the best clothing size for you (or smth like this).", { id: "s78e47c2265cb1d2d" })}</p>
966
- <div class="step-1-image-container">
967
- <img style="height: 100%" src="${yt}" alt="preview"/>
968
- </div>
969
- <form @submit=${(s) => {
970
- s.preventDefault(), this.height = parseInt(this.shadowRoot.querySelector("input").value), this.startMeasurement();
971
- }}>
972
- <label for="height-input">${a("We need your height to continue (cm)", { id: "s703dbe743f928376" })}</label>
973
- <div class="input-wrapper">
974
- <input id="height-input" type="number" min="50" max="300"
975
- placeholder=${a("Enter Your Height (in cm)", { id: "seb7cbcd05f35218b" })} required/>
976
- </div>
977
- <button class="xactsize-btn-primary" type="submit">${a("Start Measurement", { id: "sbcd17a013bedce2b" })}</button>
978
- </form>
979
- </div>
980
- <div class="step-1-container-right">
981
- <img src="${Mt}" alt=${a("Size Chart", { id: "sd48167d0451396bc" })} class="size-chart"/>
982
- </div>
983
- </div>
1575
+ ${this.step === 1 ? y`
1576
+ <xact-step-one .onStartMeasurement=${(i) => {
1577
+ this.height = i, this.startMeasurement();
1578
+ }}></xact-step-one>
984
1579
  ` : ""}
985
1580
 
986
- ${this.step === 2 ? A`
1581
+ ${this.step === 2 ? y`
987
1582
  <div class="step-2">
988
- <div style="display: flex">
989
- <h2 style="flex: 1">${this.instructionMessage}</h2>
990
- ${xt(this.isLoading, () => A`<div style="float: right;" class="spinner"></div>`)}
991
- </div>
992
- <div class="video-container">
993
- <video playsinline id="video" autoplay></video>
994
- <button class="xactsize-btn-primary" @click=${this.stopMeasurement}>
995
- ${a("Stop Measurement", { id: "s1eb1c24f06f85795" })}
996
- </button>
997
- <button class="xactsize-btn-primary" @click=${this.flipCamera} ?disabled=${this.cameras.length < 2}>
998
- ${a("Flip Camera", { id: "FLIP_CAMERA" })}
1583
+
1584
+ <p>${a("Ensure your full body is visible in the camera")}</p>
1585
+ <div class='video-container'>
1586
+ <div class="video-overlay">
1587
+ <h2>${this.instructionMessage}</h2>
1588
+ </div>
1589
+ <div class="video-overlay-spinner">
1590
+ <img class="spinner" src="${Se}" alt="Carregando"/>
1591
+ </div>
1592
+
1593
+ <video class=${Lt({
1594
+ error: !this.errorMessage,
1595
+ success: !!this.errorMessage
1596
+ })} playsinline id="video" autoplay></video>
1597
+ <button class="video-flip-icon" @click=${this.flipCamera} ?disabled=${this.cameras.length < 2}>
1598
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="white" viewBox="0 0 24 24">
1599
+ <path d="M12 6V9L16 5L12 1V4C7.58 4 4 7.58 4 12H6C6 8.69 8.69 6 12 6ZM18 12C18 15.31 15.31 18 12 18V15L8 19L12 23V20C16.42 20 20 16.42 20 12H18Z"/>
1600
+ </svg>
999
1601
  </button>
1000
1602
  </div>
1001
- ${this.errorMessage ? A`
1002
- <div class="error-message">${this.errorMessage}</div>` : ""}
1003
1603
  </div>
1004
1604
  ` : ""}
1005
1605
 
1006
- ${this.step === 3 ? A`
1606
+ ${this.step === 3 ? y`
1007
1607
  <div class="step-3">
1008
- <h3 class="step-3-subtitle">${a("Here are your results for", { id: "s66f9f63fdb4a26c1" })} <br> <strong>${this.productName}</strong></h3>
1009
- <div class="size-graph-container">
1010
- <div class="size-graph-container-left">
1011
- <p class="recommendation-text">${a("Based on your measurements we recommend you to pick this size", { id: "s52f878dd39023411" })}: ${this.recommendedSize}</p>
1012
- </div>
1013
- <div class="size-graph-container-right">
1014
- ${this.productImageSrc && A`<img src="${this.productImageSrc}" alt="Product Image" class="product-image"/>`}
1015
- </div>
1016
- </div>
1017
- <div class="buttons">
1018
- <button class="xactsize-btn-secondary" @click=${this.acceptMeasurement}>
1019
- ${a("Accept suggestion", { id: "s9ab2057f0a31be23" })}
1020
- </button>
1021
- <button class="xactsize-btn-primary" @click=${this.resetMeasurement}>
1022
- ${a("Measure again", { id: "sc95ab500914c6f87" })}
1023
- </button>
1024
- </div>
1608
+ <xact-step-result
1609
+ .productName=${this.productName}
1610
+ .recommendedSize=${this.recommendedSize}
1611
+ .onRetry=${() => this.resetMeasurement()}
1612
+ .onAccept=${() => this.acceptMeasurement()}>
1613
+ </xact-step-result>
1025
1614
  </div>
1026
1615
  ` : ""}
1616
+ <xact-footer></xact-footer>
1027
1617
  </div>
1028
- <footer class="modal-footer">
1029
- <span>
1030
- <a style="color: black; font-weight: 800" href="http://xactsize.com">${a("Privacy", { id: "se78c02e9a98a0f47" })}</a> | ${a("Powered by Xactsize", { id: "s4f6bcf9f4ee1d289" })}®
1031
- </span>
1032
- </footer>
1618
+
1033
1619
  </div>
1034
1620
  ` : ""}
1035
1621
  `;
1036
1622
  }
1037
1623
  };
1038
- d.styles = Oe`
1624
+ d.styles = j`
1039
1625
  :host {
1040
1626
  display: block;
1041
- font-family: var(--xactsize-font-family, Arial, sans-serif);
1042
- }
1043
-
1044
- /* Button Styles */
1045
- .xactsize-btn-primary {
1046
- width: 100%;
1047
- padding: var(--xactsize-btn-primary--padding, 8px 24px);
1048
- font-size: var(--xactsize-btn-primary--font-size, 20px);
1049
- font-weight: var(--xactsize-btn-primary--font-weight, 700);
1050
- background-color: var(--xactsize-btn-primary--bg-color, #001947);
1051
- color: var(--xactsize-btn-primary--color, #fff);
1052
- border: 2px solid var(--xactsize-btn-primary--border, transparent);
1053
- border-radius: var(--xactsize-btn-primary--border-radius, 4px);
1054
- box-shadow: var(--xactsize-btn-primary--box-shadow, none);
1055
- cursor: pointer;
1056
- transition: background-color 0.3s ease;
1057
- display: inline-flex;
1058
- align-items: center;
1059
- justify-content: center;
1060
- font-family: var(--xactsize-btn-primary--font-family, "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif);
1061
- }
1062
-
1063
- .xactsize-btn-primary:hover {
1064
- background-color: var(--xactsize-btn-primary--hover--bg-color, #002c71);
1065
- color: var(--xactsize-btn-primary--hover--color, #fff);
1066
- border: var(--xactsize-btn-primary--hover--border, 2px solid transparent);
1067
- box-shadow: var(--xactsize-btn-primary--hover--box-shadow, none);
1068
- }
1069
-
1070
- .xactsize-btn-secondary {
1071
- width: 100%;
1072
- padding: var(--xactsize-btn-secondary--padding, 10px 20px);
1073
- font-size: var(--xactsize-btn-secondary--font-size, 20px);
1074
- font-weight: var(--xactsize-btn-secondary--font-weight, 700);
1075
- background-color: var(--xactsize-btn-secondary--bg-color, white);
1076
- color: var(--xactsize-btn-secondary--color, #001947);
1077
- border: 2px solid var(--xactsize-btn-secondary--border, #001947);
1078
- border-radius: var(--xactsize-btn-secondary--border-radius, 4px);
1079
- box-shadow: var(--xactsize-btn-secondary--box-shadow, none);
1080
- cursor: pointer;
1081
- transition: background-color 0.3s ease;
1082
- display: inline-flex;
1083
- align-items: center;
1084
- justify-content: center;
1085
- font-family: var(--xactsize-btn-secondary--font-family, "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif);
1086
- }
1087
-
1088
- .xactsize-btn-secondary:hover {
1089
- background-color: var(--xactsize-btn-secondary--hover--bg-color, #f0f0f0);
1090
- color: var(--xactsize-btn-secondary--hover--color, #001947);
1091
- border: 2px solid var(--xactsize-btn-secondary--border, #f0f0f0);
1627
+ font-family: Arial, sans-serif;
1092
1628
  }
1093
1629
 
1094
1630
  .flip-btn {
@@ -1115,6 +1651,8 @@ d.styles = Oe`
1115
1651
  background-color: #cccccc;
1116
1652
  cursor: not-allowed;
1117
1653
  }
1654
+
1655
+
1118
1656
 
1119
1657
  /* Modal Styles */
1120
1658
  .modal {
@@ -1135,7 +1673,7 @@ d.styles = Oe`
1135
1673
  box-sizing: border-box;
1136
1674
  background: white;
1137
1675
  padding: 20px;
1138
- border-radius: 10px;
1676
+ border-radius: 18px;
1139
1677
  width: 90%;
1140
1678
  max-height: 90vh;
1141
1679
  max-width: 1000px;
@@ -1143,7 +1681,6 @@ d.styles = Oe`
1143
1681
  display: flex;
1144
1682
  flex-direction: column;
1145
1683
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
1146
- overflow: auto;
1147
1684
  }
1148
1685
 
1149
1686
  @media (max-width: 600px) {
@@ -1155,6 +1692,15 @@ d.styles = Oe`
1155
1692
  padding: 15px 15px 45px 15px;
1156
1693
  }
1157
1694
  }
1695
+
1696
+ @media (max-width: 768px) {
1697
+ .step-3 {
1698
+ height: 100%;
1699
+ display: flex;
1700
+ justify-content: center;
1701
+ align-items: center;
1702
+ }
1703
+ }
1158
1704
 
1159
1705
  .close-btn {
1160
1706
  top: 15px;
@@ -1278,39 +1824,6 @@ d.styles = Oe`
1278
1824
  max-width: 100%;
1279
1825
  }
1280
1826
 
1281
- .step-1 form {
1282
- display: flex;
1283
- flex-direction: column;
1284
- width: 100%;
1285
- margin-top: 10px;
1286
- }
1287
-
1288
- .step-1 label {
1289
- font-size: 14px;
1290
- color: #666;
1291
- margin-bottom: 8px;
1292
- font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
1293
- }
1294
-
1295
- .step-1 .input-wrapper {
1296
- position: relative;
1297
- width: 100%;
1298
- margin-bottom: 10px;
1299
- }
1300
-
1301
- .step-1 input {
1302
- width: 100%;
1303
- padding: 12px;
1304
- font-size: 16px;
1305
- border: 1px solid #ccc;
1306
- border-radius: 5px;
1307
- box-sizing: border-box;
1308
- font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
1309
- appearance: none;
1310
- -webkit-appearance: none;
1311
- -moz-appearance: none;
1312
- }
1313
-
1314
1827
  .modal-footer {
1315
1828
  width: 100%;
1316
1829
  text-align: center;
@@ -1341,76 +1854,133 @@ d.styles = Oe`
1341
1854
  display: flex;
1342
1855
  flex-direction: column;
1343
1856
  flex: 1;
1857
+ padding: 15px;
1344
1858
  }
1345
1859
 
1346
1860
  .step-2 h2 {
1347
- font-size: 20px;
1348
- margin-bottom: 15px;
1861
+ font-size: 20px;
1349
1862
  }
1350
1863
 
1351
- .video-container {
1352
- position: relative;
1353
- display: flex;
1354
- flex-direction: column;
1355
- align-items: center;
1356
- justify-content: space-between;
1357
- height: auto;
1358
- flex: 1;
1359
- padding-bottom: 15px;
1360
- gap: 5px;
1361
- }
1864
+ .video-container {
1865
+ position: relative;
1866
+ width: 100%;
1867
+ height: 100%;
1868
+ display: flex;
1869
+ overflow: hidden;
1870
+ border-radius: 8px;
1871
+ flex: 1;
1872
+ flex-direction: column;
1873
+ }
1362
1874
 
1363
1875
  .video-container button {
1364
- width: 100%;
1365
- }
1876
+ width: 100%;
1877
+ }
1366
1878
 
1367
1879
  video {
1368
- border-radius: 5px;
1369
- display: block;
1370
- max-width: 100%;
1371
- max-height: 100%;
1880
+ width: 100%;
1372
1881
  height: 100%;
1882
+ object-fit: cover;
1883
+ border-radius: 10px;
1884
+ overflow: hidden;
1885
+ border: 4px solid transparent;
1886
+ box-sizing: border-box;
1373
1887
  }
1374
1888
 
1375
- .error-message {
1376
- color: red;
1377
- font-size: 14px;
1378
- margin-top: 10px;
1889
+ video.error {
1890
+ border-color: red;
1379
1891
  }
1380
1892
 
1381
- .spinner {
1382
- border: 4px solid #f3f3f3;
1383
- border-top: 4px solid #3498db;
1384
- border-radius: 50%;
1385
- width: 30px;
1386
- height: 30px;
1387
- animation: spin 1s linear infinite;
1388
- margin: 0 auto;
1893
+ video.success {
1894
+ border-color: green;
1389
1895
  }
1390
1896
 
1391
- @keyframes spin {
1392
- 0% { transform: rotate(0deg); }
1393
- 100% { transform: rotate(360deg); }
1394
- }
1897
+ xact-button {
1898
+ width: 100%;
1899
+ }
1395
1900
 
1396
- /* Step 3 Styles */
1397
- .step-3 {
1398
- justify-content: space-between;
1399
- display: flex;
1400
- flex-direction: column;
1401
- align-items: center;
1402
- text-align: center;
1403
- flex: 1;
1404
- padding: 20px 0;
1405
- }
1901
+ .video-overlay {
1902
+ position: absolute;
1903
+ inset: 4px 4px auto 4px;
1904
+ display: flex;
1905
+ justify-content: space-between;
1906
+ align-items: center;
1907
+ background-color: rgba(0, 0, 0, 0.6);
1908
+ color: white;
1909
+ padding: 8px 12px;
1910
+ box-sizing: border-box;
1911
+ z-index: 2;
1912
+ border-radius: 5px 5px 0 0;
1913
+ }
1914
+
1915
+ .video-overlay.error {
1916
+ background-color: rgba(0, 0, 0, 0.6);;
1917
+ }
1918
+
1919
+ .video-overlay.success {
1920
+ background-color: #005F31;
1921
+ }
1922
+
1923
+ .video-overlay-spinner {
1924
+ position: absolute;
1925
+ top: 10px;
1926
+ right: 10px;
1927
+ display: flex;
1928
+ justify-content: center;
1929
+ align-items: center;
1930
+ z-index: 3;
1931
+ }
1932
+
1933
+
1934
+ .video-overlay h2 {
1935
+ font-size: 16px;
1936
+ margin: 0;
1937
+ font-weight: 400;
1938
+ flex: 1;
1939
+ }
1940
+
1941
+ .spinner {
1942
+ width: 24px;
1943
+ height: 24px;
1944
+ animation: pulse 1s linear infinite;
1945
+ }
1946
+
1947
+ .video-flip-icon {
1948
+ position: absolute;
1949
+ bottom: 50px;
1950
+ background: transparent;
1951
+ border: none;
1952
+ padding: 4px;
1953
+ cursor: pointer;
1954
+ z-index: 3;
1955
+ display: flex;
1956
+ align-items: center;
1957
+ justify-content: center;
1958
+ }
1959
+
1960
+ .video-flip-icon svg {
1961
+ width: 24px;
1962
+ height: 24px;
1963
+ fill: white;
1964
+ pointer-events: none;
1965
+ }
1966
+
1967
+ .video-flip-icon:hover svg {
1968
+ filter: brightness(1.3);
1969
+ }
1970
+
1971
+
1972
+ @keyframes pulse {
1973
+ 0% { filter: brightness(1); }
1974
+ 50% { filter: brightness(0.7); }
1975
+ 100% { filter: brightness(1); }
1976
+ }
1977
+
1978
+ .error-message {
1979
+ color: red;
1980
+ font-size: 14px;
1981
+ margin-top: 10px;
1982
+ }
1406
1983
 
1407
- .step-3-subtitle {
1408
- font-size: 20px;
1409
- font-weight: 700;
1410
- color: #333;
1411
- margin-bottom: 20px;
1412
- font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
1413
- }
1414
1984
 
1415
1985
  .size-graph-container {
1416
1986
  display: flex;
@@ -1460,89 +2030,73 @@ d.styles = Oe`
1460
2030
  font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
1461
2031
  }
1462
2032
 
1463
- .step-3 .buttons {
1464
- display: flex;
1465
- justify-content: center;
1466
- gap: 10px;
1467
- width: 100%;
1468
- flex-wrap: wrap;
1469
- }
1470
-
1471
- @media (max-width: 600px) {
1472
- .step-3 .buttons {
1473
- flex-direction: column;
1474
- }
1475
- }
1476
2033
  `;
1477
2034
  u([
1478
- b({ type: String, attribute: "api-key" })
2035
+ m({ type: String, attribute: "api-key" })
1479
2036
  ], d.prototype, "apiKey", 2);
1480
2037
  u([
1481
- b({ type: String, attribute: "product-image-src" })
1482
- ], d.prototype, "productImageSrc", 2);
1483
- u([
1484
- b({ type: Function, attribute: "onmeasurementaccepted" })
2038
+ m({ type: Function, attribute: "onmeasurementaccepted" })
1485
2039
  ], d.prototype, "onMeasurementAccepted", 2);
1486
2040
  u([
1487
- b({ type: Function, attribute: "onmeasurementcanceled" })
2041
+ m({ type: Function, attribute: "onmeasurementcanceled" })
1488
2042
  ], d.prototype, "onMeasurementCanceled", 2);
1489
2043
  u([
1490
- b({ type: String })
2044
+ m({ type: String })
1491
2045
  ], d.prototype, "culture", 1);
1492
2046
  u([
1493
- f()
2047
+ _()
1494
2048
  ], d.prototype, "errorMap", 1);
1495
2049
  u([
1496
- f()
2050
+ _()
1497
2051
  ], d.prototype, "_isLocaleLoading", 2);
1498
2052
  u([
1499
- b({ type: Array })
2053
+ m({ type: Array })
1500
2054
  ], d.prototype, "skus", 2);
1501
2055
  u([
1502
- b({ type: String, attribute: "product-name" })
2056
+ m({ type: String, attribute: "product-name" })
1503
2057
  ], d.prototype, "productName", 2);
1504
2058
  u([
1505
- f()
2059
+ _()
1506
2060
  ], d.prototype, "showModal", 2);
1507
2061
  u([
1508
- f()
2062
+ _()
1509
2063
  ], d.prototype, "step", 2);
1510
2064
  u([
1511
- f()
2065
+ _()
1512
2066
  ], d.prototype, "height", 2);
1513
2067
  u([
1514
- f()
2068
+ _()
1515
2069
  ], d.prototype, "recommendedSize", 2);
1516
2070
  u([
1517
- f()
2071
+ _()
1518
2072
  ], d.prototype, "measurements", 2);
1519
2073
  u([
1520
- f()
2074
+ _()
1521
2075
  ], d.prototype, "errorMessage", 2);
1522
2076
  u([
1523
- f()
2077
+ _()
1524
2078
  ], d.prototype, "instructionMessage", 2);
1525
2079
  u([
1526
- f()
2080
+ _()
1527
2081
  ], d.prototype, "shouldStartMeasurement", 2);
1528
2082
  u([
1529
- f()
2083
+ _()
1530
2084
  ], d.prototype, "isLoading", 2);
1531
2085
  u([
1532
- f()
2086
+ _()
1533
2087
  ], d.prototype, "isFetching", 2);
1534
2088
  u([
1535
- f()
2089
+ _()
1536
2090
  ], d.prototype, "cameras", 2);
1537
2091
  u([
1538
- f()
2092
+ _()
1539
2093
  ], d.prototype, "currentCameraId", 2);
1540
2094
  d = u([
1541
- $e("body-measurer"),
1542
- at()
2095
+ Z("body-measurer"),
2096
+ te()
1543
2097
  ], d);
1544
2098
  export {
1545
2099
  d as BodyMeasurer,
1546
- It as getLocale,
1547
- ye as setLocale
2100
+ Gt as getLocale,
2101
+ Le as setLocale
1548
2102
  };