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.
- package/dist/body-measurer.d.ts +4 -1
- package/dist/body-measurer.es.js +1159 -605
- package/dist/body-measurer.umd.js +621 -238
- package/dist/components/Step1-measurement-form.d.ts +12 -0
- package/dist/components/xact-button.d.ts +14 -0
- package/dist/components/xact-footer.d.ts +10 -0
- package/dist/components/xact-step-result.d.ts +14 -0
- package/dist/generated/locales/pt-BR.d.ts +17 -19
- package/dist/{pt-BR-CpJNPyeH.mjs → pt-BR-DQYiEJfn.mjs} +17 -19
- package/package.json +1 -1
package/dist/body-measurer.es.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
const
|
|
2
|
-
const
|
|
3
|
-
return
|
|
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
|
-
|
|
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
|
|
20
|
-
let
|
|
21
|
-
constructor(e, t,
|
|
22
|
-
if (this._$cssResult$ = !0,
|
|
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 (
|
|
29
|
-
const
|
|
30
|
-
|
|
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
|
|
39
|
-
const t =
|
|
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
|
-
})(
|
|
44
|
-
return new
|
|
45
|
-
},
|
|
46
|
-
if (
|
|
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
|
|
49
|
-
|
|
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
|
-
},
|
|
51
|
+
}, _e = de ? (i) => i : (i) => i instanceof CSSStyleSheet ? ((e) => {
|
|
52
52
|
let t = "";
|
|
53
|
-
for (const
|
|
54
|
-
return
|
|
55
|
-
})(
|
|
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:
|
|
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
|
-
|
|
64
|
+
i = i ? Je : null;
|
|
65
65
|
break;
|
|
66
66
|
case Object:
|
|
67
67
|
case Array:
|
|
68
|
-
|
|
68
|
+
i = i == null ? i : JSON.stringify(i);
|
|
69
69
|
}
|
|
70
|
-
return
|
|
71
|
-
}, fromAttribute(
|
|
72
|
-
let t =
|
|
70
|
+
return i;
|
|
71
|
+
}, fromAttribute(i, e) {
|
|
72
|
+
let t = i;
|
|
73
73
|
switch (e) {
|
|
74
74
|
case Boolean:
|
|
75
|
-
t =
|
|
75
|
+
t = i !== null;
|
|
76
76
|
break;
|
|
77
77
|
case Number:
|
|
78
|
-
t =
|
|
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(
|
|
83
|
+
t = JSON.parse(i);
|
|
84
84
|
} catch {
|
|
85
85
|
t = null;
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
return t;
|
|
89
|
-
} },
|
|
90
|
-
Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")),
|
|
91
|
-
let
|
|
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 =
|
|
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
|
|
101
|
-
|
|
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,
|
|
105
|
-
const { 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:
|
|
111
|
-
const
|
|
112
|
-
|
|
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) ??
|
|
116
|
+
return this.elementProperties.get(e) ?? Ee;
|
|
117
117
|
}
|
|
118
118
|
static _$Ei() {
|
|
119
|
-
if (this.hasOwnProperty(
|
|
120
|
-
const e =
|
|
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(
|
|
125
|
-
if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(
|
|
126
|
-
const t = this.properties,
|
|
127
|
-
for (const
|
|
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 [
|
|
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,
|
|
136
|
-
const
|
|
137
|
-
|
|
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
|
|
145
|
-
for (const
|
|
146
|
-
} else e !== void 0 && t.push(
|
|
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
|
|
151
|
-
return
|
|
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
|
|
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
|
|
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
|
|
181
|
-
return (
|
|
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
|
|
190
|
-
return (
|
|
189
|
+
var o;
|
|
190
|
+
return (o = t.hostDisconnected) == null ? void 0 : o.call(t);
|
|
191
191
|
});
|
|
192
192
|
}
|
|
193
|
-
attributeChangedCallback(e, t,
|
|
194
|
-
this._$AK(e,
|
|
193
|
+
attributeChangedCallback(e, t, o) {
|
|
194
|
+
this._$AK(e, o);
|
|
195
195
|
}
|
|
196
196
|
_$ET(e, t) {
|
|
197
|
-
var
|
|
198
|
-
const
|
|
199
|
-
if (
|
|
200
|
-
const n = (((
|
|
201
|
-
this._$Em = e, n == null ? this.removeAttribute(
|
|
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
|
|
206
|
-
const
|
|
207
|
-
if (
|
|
208
|
-
const
|
|
209
|
-
this._$Em =
|
|
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,
|
|
213
|
-
var
|
|
212
|
+
requestUpdate(e, t, o) {
|
|
213
|
+
var s;
|
|
214
214
|
if (e !== void 0) {
|
|
215
|
-
const
|
|
216
|
-
if (
|
|
217
|
-
this.C(e, t,
|
|
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:
|
|
222
|
-
|
|
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
|
|
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 [
|
|
242
|
+
for (const [r, n] of this._$Ep) this[r] = n;
|
|
243
243
|
this._$Ep = void 0;
|
|
244
244
|
}
|
|
245
|
-
const
|
|
246
|
-
if (
|
|
247
|
-
const { wrapped:
|
|
248
|
-
|
|
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), (
|
|
255
|
-
var
|
|
256
|
-
return (
|
|
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 (
|
|
259
|
-
throw e = !1, this._$EM(),
|
|
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((
|
|
268
|
-
var
|
|
269
|
-
return (
|
|
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
|
-
|
|
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
|
|
299
|
-
\f\r]`, D = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,
|
|
300
|
-
\f\r"'\`<>=]|("|')|))|$)`, "g"),
|
|
301
|
-
function
|
|
302
|
-
if (!
|
|
303
|
-
return
|
|
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
|
|
306
|
-
const t =
|
|
307
|
-
let
|
|
308
|
-
for (let
|
|
309
|
-
const
|
|
310
|
-
let p, g,
|
|
311
|
-
for (; E <
|
|
312
|
-
const
|
|
313
|
-
|
|
314
|
-
}
|
|
315
|
-
return [
|
|
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 },
|
|
319
|
-
let
|
|
318
|
+
constructor({ strings: e, _$litType$: t }, o) {
|
|
319
|
+
let s;
|
|
320
320
|
this.parts = [];
|
|
321
|
-
let
|
|
322
|
-
const
|
|
323
|
-
if (this.el = U.createElement(p,
|
|
324
|
-
const
|
|
325
|
-
|
|
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 (; (
|
|
328
|
-
if (
|
|
329
|
-
if (
|
|
330
|
-
const E = g[n++],
|
|
331
|
-
|
|
332
|
-
} else
|
|
333
|
-
if (
|
|
334
|
-
const
|
|
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
|
-
|
|
337
|
-
for (let
|
|
338
|
-
|
|
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 (
|
|
341
|
+
} else if (s.nodeType === 8) if (s.data === Ie) l.push({ type: 2, index: r });
|
|
342
342
|
else {
|
|
343
|
-
let
|
|
344
|
-
for (; (
|
|
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
|
-
|
|
346
|
+
r++;
|
|
347
347
|
}
|
|
348
348
|
}
|
|
349
349
|
static createElement(e, t) {
|
|
350
|
-
const
|
|
351
|
-
return
|
|
350
|
+
const o = S.createElement("template");
|
|
351
|
+
return o.innerHTML = e, o;
|
|
352
352
|
}
|
|
353
353
|
}
|
|
354
|
-
function
|
|
355
|
-
var n,
|
|
356
|
-
if (e ===
|
|
357
|
-
let
|
|
358
|
-
const
|
|
359
|
-
return (
|
|
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
|
|
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:
|
|
373
|
-
|
|
374
|
-
let
|
|
375
|
-
for (;
|
|
376
|
-
if (n ===
|
|
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
|
-
|
|
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 !== (
|
|
380
|
+
n !== (l == null ? void 0 : l.index) && (r = M.nextNode(), n++);
|
|
381
381
|
}
|
|
382
|
-
return
|
|
382
|
+
return M.currentNode = S, s;
|
|
383
383
|
}
|
|
384
384
|
p(e) {
|
|
385
385
|
let t = 0;
|
|
386
|
-
for (const
|
|
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
|
|
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,
|
|
395
|
-
this.type = 2, this._$AH =
|
|
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 =
|
|
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 !==
|
|
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
|
|
422
|
-
const { values: t, _$litType$:
|
|
423
|
-
if (((
|
|
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
|
|
426
|
-
n.p(t), this.T(
|
|
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 =
|
|
431
|
-
return t === void 0 &&
|
|
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
|
-
|
|
434
|
+
fe(this._$AH) || (this._$AH = [], this._$AR());
|
|
435
435
|
const t = this._$AH;
|
|
436
|
-
let
|
|
437
|
-
for (const
|
|
438
|
-
|
|
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
|
|
442
|
-
for ((
|
|
443
|
-
const
|
|
444
|
-
e.remove(), e =
|
|
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
|
|
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,
|
|
460
|
-
this.type = 1, this._$AH =
|
|
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,
|
|
463
|
-
const
|
|
462
|
+
_$AI(e, t = this, o, s) {
|
|
463
|
+
const r = this.strings;
|
|
464
464
|
let n = !1;
|
|
465
|
-
if (
|
|
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
|
|
468
|
-
let
|
|
469
|
-
for (e =
|
|
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 && !
|
|
471
|
+
n && !s && this.j(e);
|
|
472
472
|
}
|
|
473
473
|
j(e) {
|
|
474
|
-
e ===
|
|
474
|
+
e === f ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, e ?? "");
|
|
475
475
|
}
|
|
476
476
|
}
|
|
477
|
-
class
|
|
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 ===
|
|
482
|
+
this.element[this.name] = e === f ? void 0 : e;
|
|
483
483
|
}
|
|
484
484
|
}
|
|
485
|
-
class
|
|
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 !==
|
|
490
|
+
this.element.toggleAttribute(this.name, !!e && e !== f);
|
|
491
491
|
}
|
|
492
492
|
}
|
|
493
|
-
class
|
|
494
|
-
constructor(e, t,
|
|
495
|
-
super(e, t,
|
|
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 =
|
|
499
|
-
const
|
|
500
|
-
|
|
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
|
|
508
|
-
constructor(e, t,
|
|
509
|
-
this.element = e, this.type = 6, this._$AN = void 0, this._$AM = t, this.options =
|
|
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
|
-
|
|
515
|
+
I(this, e);
|
|
516
516
|
}
|
|
517
517
|
}
|
|
518
|
-
const
|
|
519
|
-
|
|
520
|
-
const
|
|
521
|
-
const
|
|
522
|
-
let
|
|
523
|
-
if (
|
|
524
|
-
const
|
|
525
|
-
|
|
526
|
-
}
|
|
527
|
-
return
|
|
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
|
|
535
|
-
class
|
|
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 =
|
|
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
|
|
557
|
+
return L;
|
|
558
558
|
}
|
|
559
|
-
}
|
|
560
|
-
var
|
|
561
|
-
|
|
562
|
-
const
|
|
563
|
-
|
|
564
|
-
(
|
|
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
|
|
570
|
+
const Z = (i) => (e, t) => {
|
|
571
571
|
t !== void 0 ? t.addInitializer(() => {
|
|
572
|
-
customElements.define(
|
|
573
|
-
}) : customElements.define(
|
|
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
|
|
581
|
-
const { kind:
|
|
582
|
-
let
|
|
583
|
-
if (
|
|
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(
|
|
586
|
-
const
|
|
587
|
-
e.set.call(this,
|
|
588
|
-
}, init(
|
|
589
|
-
return
|
|
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 (
|
|
592
|
+
if (o === "setter") {
|
|
593
593
|
const { name: n } = t;
|
|
594
|
-
return function(
|
|
595
|
-
const
|
|
596
|
-
e.call(this,
|
|
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: " +
|
|
599
|
+
throw Error("Unsupported decorator location: " + o);
|
|
600
600
|
};
|
|
601
|
-
function
|
|
602
|
-
return (e, t) => typeof t == "object" ?
|
|
603
|
-
const n =
|
|
604
|
-
return
|
|
605
|
-
})(
|
|
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
|
|
613
|
-
return
|
|
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
|
|
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
|
|
627
|
-
let
|
|
628
|
-
for (let
|
|
629
|
-
|
|
630
|
-
return
|
|
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
|
|
638
|
-
let a =
|
|
639
|
-
function
|
|
640
|
-
if (
|
|
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 =
|
|
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
|
|
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(
|
|
656
|
+
window.addEventListener(le, this.__litLocalizeEventHandler);
|
|
657
657
|
}
|
|
658
658
|
hostDisconnected() {
|
|
659
|
-
window.removeEventListener(
|
|
659
|
+
window.removeEventListener(le, this.__litLocalizeEventHandler);
|
|
660
660
|
}
|
|
661
661
|
}
|
|
662
|
-
const
|
|
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
|
|
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
|
|
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
|
|
693
|
-
for (let
|
|
694
|
-
|
|
695
|
-
function
|
|
696
|
-
let e = 0, t = 8997,
|
|
697
|
-
for (let p = 0; p <
|
|
698
|
-
t ^=
|
|
699
|
-
return
|
|
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
|
|
707
|
-
function
|
|
708
|
-
return (e ?
|
|
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
|
|
716
|
-
function
|
|
717
|
-
if (
|
|
718
|
-
const
|
|
719
|
-
if (
|
|
720
|
-
if (typeof
|
|
721
|
-
return
|
|
722
|
-
if ("strTag" in
|
|
723
|
-
return
|
|
724
|
-
|
|
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
|
-
|
|
728
|
+
s.values
|
|
729
729
|
);
|
|
730
730
|
{
|
|
731
|
-
let
|
|
732
|
-
return
|
|
733
|
-
...
|
|
734
|
-
values:
|
|
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
|
|
739
|
+
return Ne(e);
|
|
740
740
|
}
|
|
741
|
-
function
|
|
742
|
-
const e = typeof
|
|
743
|
-
let t =
|
|
744
|
-
return t === void 0 && (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
|
|
752
|
-
window.dispatchEvent(new CustomEvent(
|
|
751
|
+
function ne(i) {
|
|
752
|
+
window.dispatchEvent(new CustomEvent(le, { detail: i }));
|
|
753
753
|
}
|
|
754
|
-
let
|
|
755
|
-
|
|
756
|
-
let
|
|
757
|
-
const
|
|
758
|
-
if (
|
|
759
|
-
return
|
|
760
|
-
if (!
|
|
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 (!
|
|
762
|
+
if (!Q.has(i))
|
|
763
763
|
throw new Error("Invalid locale code");
|
|
764
|
-
|
|
765
|
-
const e =
|
|
766
|
-
return
|
|
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
|
-
) :
|
|
772
|
-
|
|
773
|
-
}, (
|
|
774
|
-
|
|
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:
|
|
777
|
-
errorMessage:
|
|
778
|
-
}),
|
|
779
|
-
}),
|
|
780
|
-
},
|
|
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
|
|
785
|
+
* Copyright 2017 Google LLC
|
|
786
786
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
787
787
|
*/
|
|
788
|
-
|
|
789
|
-
|
|
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
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
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:
|
|
797
|
-
sourceLocale:
|
|
1381
|
+
const { getLocale: Gt, setLocale: Le } = bt({
|
|
1382
|
+
sourceLocale: je,
|
|
798
1383
|
targetLocales: At,
|
|
799
|
-
loadLocale: (
|
|
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
|
|
1386
|
+
let d = class extends C {
|
|
802
1387
|
constructor() {
|
|
803
|
-
super(...arguments), this.
|
|
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(
|
|
1408
|
+
set culture(i) {
|
|
809
1409
|
const e = this._culture;
|
|
810
|
-
this._culture =
|
|
1410
|
+
this._culture = i, this.requestUpdate("culture", e), this._applyLocale(i).catch(console.error);
|
|
811
1411
|
}
|
|
812
|
-
async _applyLocale(
|
|
1412
|
+
async _applyLocale(i) {
|
|
813
1413
|
try {
|
|
814
|
-
this._isLocaleLoading = !0, this.requestUpdate(), await
|
|
1414
|
+
this._isLocaleLoading = !0, this.requestUpdate(), await Le(i);
|
|
815
1415
|
} catch (e) {
|
|
816
|
-
console.error("Failed to load locale",
|
|
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
|
|
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(
|
|
856
|
-
const e = this.errorMap[
|
|
857
|
-
return e || (console.info("Error code is missing",
|
|
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(
|
|
866
|
-
|
|
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"
|
|
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(
|
|
878
|
-
super.updated(
|
|
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"
|
|
1490
|
+
this.errorMessage = a("Error accessing webcam");
|
|
886
1491
|
}
|
|
887
1492
|
}
|
|
888
1493
|
async loadCameras() {
|
|
889
1494
|
try {
|
|
890
|
-
const
|
|
891
|
-
this.cameras =
|
|
892
|
-
} catch (
|
|
893
|
-
console.error("Error enumerating devices:",
|
|
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"
|
|
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
|
|
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
|
|
919
|
-
r.append("image",
|
|
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
|
|
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,
|
|
927
|
-
this.recommendedSize || (this.instructionMessage = a("Position yourself in front of the camera"
|
|
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"
|
|
931
|
-
this.recommendedSize || (this.instructionMessage = a("Position yourself in front of the camera"
|
|
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
|
-
|
|
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((
|
|
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 ?
|
|
951
|
-
<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 ?
|
|
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
|
-
<
|
|
958
|
-
|
|
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 ?
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
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 ?
|
|
1581
|
+
${this.step === 2 ? y`
|
|
987
1582
|
<div class="step-2">
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
<
|
|
995
|
-
|
|
996
|
-
</
|
|
997
|
-
|
|
998
|
-
|
|
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 ?
|
|
1606
|
+
${this.step === 3 ? y`
|
|
1007
1607
|
<div class="step-3">
|
|
1008
|
-
<
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
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
|
-
|
|
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 =
|
|
1624
|
+
d.styles = j`
|
|
1039
1625
|
:host {
|
|
1040
1626
|
display: block;
|
|
1041
|
-
font-family:
|
|
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:
|
|
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
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1376
|
-
|
|
1377
|
-
font-size: 14px;
|
|
1378
|
-
margin-top: 10px;
|
|
1889
|
+
video.error {
|
|
1890
|
+
border-color: red;
|
|
1379
1891
|
}
|
|
1380
1892
|
|
|
1381
|
-
.
|
|
1382
|
-
|
|
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
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
}
|
|
1897
|
+
xact-button {
|
|
1898
|
+
width: 100%;
|
|
1899
|
+
}
|
|
1395
1900
|
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
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
|
-
|
|
2035
|
+
m({ type: String, attribute: "api-key" })
|
|
1479
2036
|
], d.prototype, "apiKey", 2);
|
|
1480
2037
|
u([
|
|
1481
|
-
|
|
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
|
-
|
|
2041
|
+
m({ type: Function, attribute: "onmeasurementcanceled" })
|
|
1488
2042
|
], d.prototype, "onMeasurementCanceled", 2);
|
|
1489
2043
|
u([
|
|
1490
|
-
|
|
2044
|
+
m({ type: String })
|
|
1491
2045
|
], d.prototype, "culture", 1);
|
|
1492
2046
|
u([
|
|
1493
|
-
|
|
2047
|
+
_()
|
|
1494
2048
|
], d.prototype, "errorMap", 1);
|
|
1495
2049
|
u([
|
|
1496
|
-
|
|
2050
|
+
_()
|
|
1497
2051
|
], d.prototype, "_isLocaleLoading", 2);
|
|
1498
2052
|
u([
|
|
1499
|
-
|
|
2053
|
+
m({ type: Array })
|
|
1500
2054
|
], d.prototype, "skus", 2);
|
|
1501
2055
|
u([
|
|
1502
|
-
|
|
2056
|
+
m({ type: String, attribute: "product-name" })
|
|
1503
2057
|
], d.prototype, "productName", 2);
|
|
1504
2058
|
u([
|
|
1505
|
-
|
|
2059
|
+
_()
|
|
1506
2060
|
], d.prototype, "showModal", 2);
|
|
1507
2061
|
u([
|
|
1508
|
-
|
|
2062
|
+
_()
|
|
1509
2063
|
], d.prototype, "step", 2);
|
|
1510
2064
|
u([
|
|
1511
|
-
|
|
2065
|
+
_()
|
|
1512
2066
|
], d.prototype, "height", 2);
|
|
1513
2067
|
u([
|
|
1514
|
-
|
|
2068
|
+
_()
|
|
1515
2069
|
], d.prototype, "recommendedSize", 2);
|
|
1516
2070
|
u([
|
|
1517
|
-
|
|
2071
|
+
_()
|
|
1518
2072
|
], d.prototype, "measurements", 2);
|
|
1519
2073
|
u([
|
|
1520
|
-
|
|
2074
|
+
_()
|
|
1521
2075
|
], d.prototype, "errorMessage", 2);
|
|
1522
2076
|
u([
|
|
1523
|
-
|
|
2077
|
+
_()
|
|
1524
2078
|
], d.prototype, "instructionMessage", 2);
|
|
1525
2079
|
u([
|
|
1526
|
-
|
|
2080
|
+
_()
|
|
1527
2081
|
], d.prototype, "shouldStartMeasurement", 2);
|
|
1528
2082
|
u([
|
|
1529
|
-
|
|
2083
|
+
_()
|
|
1530
2084
|
], d.prototype, "isLoading", 2);
|
|
1531
2085
|
u([
|
|
1532
|
-
|
|
2086
|
+
_()
|
|
1533
2087
|
], d.prototype, "isFetching", 2);
|
|
1534
2088
|
u([
|
|
1535
|
-
|
|
2089
|
+
_()
|
|
1536
2090
|
], d.prototype, "cameras", 2);
|
|
1537
2091
|
u([
|
|
1538
|
-
|
|
2092
|
+
_()
|
|
1539
2093
|
], d.prototype, "currentCameraId", 2);
|
|
1540
2094
|
d = u([
|
|
1541
|
-
|
|
1542
|
-
|
|
2095
|
+
Z("body-measurer"),
|
|
2096
|
+
te()
|
|
1543
2097
|
], d);
|
|
1544
2098
|
export {
|
|
1545
2099
|
d as BodyMeasurer,
|
|
1546
|
-
|
|
1547
|
-
|
|
2100
|
+
Gt as getLocale,
|
|
2101
|
+
Le as setLocale
|
|
1548
2102
|
};
|