xactsize-webcomponents 1.0.9 → 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 +1147 -606
- 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 -20
- package/dist/{pt-BR-JhYeYRZJ.mjs → pt-BR-DQYiEJfn.mjs} +17 -20
- 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 (;
|
|
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
|
|
331
|
-
|
|
332
|
-
} else
|
|
333
|
-
if (
|
|
334
|
-
const
|
|
335
|
-
if (
|
|
336
|
-
|
|
337
|
-
for (let
|
|
338
|
-
|
|
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
|
+
if (E > 0) {
|
|
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,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", 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
|
+
}
|
|
804
|
+
}
|
|
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;
|
|
790
1101
|
}
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
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
|
}
|
|
@@ -853,21 +1453,21 @@ let d = class extends Q {
|
|
|
853
1453
|
ERR_HEIGHT_INVALID: a("Height must be between 50 and 300 cm", { id: "ERR_HEIGHT_INVALID" })
|
|
854
1454
|
};
|
|
855
1455
|
}
|
|
856
|
-
getTranslatedMessage(
|
|
857
|
-
const e = this.errorMap[
|
|
858
|
-
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"));
|
|
859
1459
|
}
|
|
860
1460
|
connectedCallback() {
|
|
861
1461
|
super.connectedCallback(), document.addEventListener("keydown", this.handleEscKey.bind(this));
|
|
862
1462
|
}
|
|
863
1463
|
disconnectedCallback() {
|
|
864
|
-
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);
|
|
865
1465
|
}
|
|
866
|
-
handleEscKey(
|
|
867
|
-
|
|
1466
|
+
handleEscKey(i) {
|
|
1467
|
+
i.key === "Escape" && this.showModal && this.closeModal();
|
|
868
1468
|
}
|
|
869
1469
|
openModal() {
|
|
870
|
-
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");
|
|
871
1471
|
}
|
|
872
1472
|
closeModal() {
|
|
873
1473
|
this.showModal = !1, this.onMeasurementCanceled && typeof this.onMeasurementCanceled == "function" && this.onMeasurementCanceled(), this.stopPolling(), this.dispatchEvent(new CustomEvent("measurementCanceled", { detail: {} }));
|
|
@@ -879,23 +1479,23 @@ let d = class extends Q {
|
|
|
879
1479
|
}
|
|
880
1480
|
this.step = 2, this.errorMessage = "", this.shouldStartMeasurement = !0;
|
|
881
1481
|
}
|
|
882
|
-
updated(
|
|
883
|
-
super.updated(
|
|
1482
|
+
updated(i) {
|
|
1483
|
+
super.updated(i), i.has("step") && this.step === 2 && this.shouldStartMeasurement && (this.initializeMeasurement(), this.shouldStartMeasurement = !1);
|
|
884
1484
|
}
|
|
885
1485
|
async initializeMeasurement() {
|
|
886
1486
|
this.videoElement = this.shadowRoot.querySelector("video");
|
|
887
1487
|
try {
|
|
888
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());
|
|
889
1489
|
} catch {
|
|
890
|
-
this.errorMessage = a("Error accessing webcam"
|
|
1490
|
+
this.errorMessage = a("Error accessing webcam");
|
|
891
1491
|
}
|
|
892
1492
|
}
|
|
893
1493
|
async loadCameras() {
|
|
894
1494
|
try {
|
|
895
|
-
const
|
|
896
|
-
this.cameras =
|
|
897
|
-
} catch (
|
|
898
|
-
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);
|
|
899
1499
|
}
|
|
900
1500
|
}
|
|
901
1501
|
async flipCamera() {
|
|
@@ -908,25 +1508,25 @@ let d = class extends Q {
|
|
|
908
1508
|
video: { deviceId: { exact: this.currentCameraId } }
|
|
909
1509
|
}), this.videoElement && (this.videoElement.srcObject = this.stream, await this.videoElement.play(), this.startPolling());
|
|
910
1510
|
} catch {
|
|
911
|
-
this.errorMessage = a("Error switching camera"
|
|
1511
|
+
this.errorMessage = a("Error switching camera");
|
|
912
1512
|
} finally {
|
|
913
1513
|
this.isLoading = !1;
|
|
914
1514
|
}
|
|
915
1515
|
}
|
|
916
1516
|
async startPolling() {
|
|
917
|
-
const
|
|
1517
|
+
const i = async () => {
|
|
918
1518
|
if (!this.videoElement || !this.stream || this.isFetching) return;
|
|
919
1519
|
const e = document.createElement("canvas");
|
|
920
1520
|
e.width = this.videoElement.videoWidth, e.height = this.videoElement.videoHeight;
|
|
921
1521
|
const t = e.getContext("2d");
|
|
922
1522
|
t == null || t.drawImage(this.videoElement, 0, 0, e.width, e.height);
|
|
923
|
-
const
|
|
924
|
-
|
|
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));
|
|
925
1525
|
try {
|
|
926
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);
|
|
927
|
-
const
|
|
1527
|
+
const h = await (await fetch("https://xactsize-api-923169850574.southamerica-east1.run.app/api/measurer/measure/body", {
|
|
928
1528
|
method: "POST",
|
|
929
|
-
body:
|
|
1529
|
+
body: r,
|
|
930
1530
|
headers: {
|
|
931
1531
|
Accept: "application/json",
|
|
932
1532
|
// Ensure JSON response
|
|
@@ -934,19 +1534,19 @@ let d = class extends Q {
|
|
|
934
1534
|
Pragma: "no-cache"
|
|
935
1535
|
}
|
|
936
1536
|
})).json();
|
|
937
|
-
this.isFetching = !1, this.isLoading = !1,
|
|
938
|
-
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));
|
|
939
1539
|
}, 2e3));
|
|
940
1540
|
} catch {
|
|
941
|
-
this.isFetching = !1, this.isLoading = !1, this.instructionMessage = a("Error processing measurement"
|
|
942
|
-
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));
|
|
943
1543
|
}, 2e3);
|
|
944
1544
|
}
|
|
945
1545
|
};
|
|
946
|
-
|
|
1546
|
+
i();
|
|
947
1547
|
}
|
|
948
1548
|
stopPolling() {
|
|
949
|
-
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);
|
|
950
1550
|
}
|
|
951
1551
|
acceptMeasurement() {
|
|
952
1552
|
this.dispatchEvent(new CustomEvent("measurementAccepted", { detail: { size: this.recommendedSize } })), this.onMeasurementAccepted && typeof this.onMeasurementAccepted == "function" && this.onMeasurementAccepted(), this.showModal = !1, this.stopPolling();
|
|
@@ -958,150 +1558,73 @@ let d = class extends Q {
|
|
|
958
1558
|
this.resetMeasurement(), this.showModal = !1;
|
|
959
1559
|
}
|
|
960
1560
|
render() {
|
|
961
|
-
return this._isLocaleLoading ?
|
|
962
|
-
<button
|
|
1561
|
+
return this._isLocaleLoading ? y`<div hidden></div>` : y`
|
|
1562
|
+
<xact-button @click=${this.openModal} label="${a("Find your Xactsize")}"></xact-button>
|
|
963
1563
|
|
|
964
|
-
${this.showModal ?
|
|
1564
|
+
${this.showModal ? y`
|
|
965
1565
|
<div class="modal">
|
|
966
1566
|
<div class="modal-content">
|
|
967
1567
|
<div style="display: flex; justify-content: space-between" class="modal-title-container">
|
|
968
|
-
<
|
|
969
|
-
|
|
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>
|
|
970
1573
|
</div>
|
|
971
1574
|
|
|
972
|
-
${this.step === 1 ?
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
<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>
|
|
977
|
-
<div class="step-1-image-container">
|
|
978
|
-
<img style="height: 100%" src="${yt}" alt="preview"/>
|
|
979
|
-
</div>
|
|
980
|
-
<form @submit=${(s) => {
|
|
981
|
-
s.preventDefault();
|
|
982
|
-
const e = this.shadowRoot.querySelector("input#height-input").value;
|
|
983
|
-
this.height = parseInt(e), this.startMeasurement();
|
|
984
|
-
}}>
|
|
985
|
-
<label for="height-input">${a("We need your height to continue (cm)", { id: "s703dbe743f928376" })}</label>
|
|
986
|
-
<div class="input-wrapper">
|
|
987
|
-
<input id="height-input" type="number" min="50" max="300"
|
|
988
|
-
placeholder=${a("Enter Your Height (in cm)", { id: "seb7cbcd05f35218b" })} required/>
|
|
989
|
-
</div>
|
|
990
|
-
<button class="xactsize-btn-primary" type="submit">${a("Start Measurement", { id: "sbcd17a013bedce2b" })}</button>
|
|
991
|
-
</form>
|
|
992
|
-
${this.errorMessage ? E`<div class="error-message">${this.errorMessage}</div>` : ""}
|
|
993
|
-
</div>
|
|
994
|
-
<div class="step-1-container-right">
|
|
995
|
-
<img src="${Mt}" alt=${a("Size Chart", { id: "sd48167d0451396bc" })} class="size-chart"/>
|
|
996
|
-
</div>
|
|
997
|
-
</div>
|
|
1575
|
+
${this.step === 1 ? y`
|
|
1576
|
+
<xact-step-one .onStartMeasurement=${(i) => {
|
|
1577
|
+
this.height = i, this.startMeasurement();
|
|
1578
|
+
}}></xact-step-one>
|
|
998
1579
|
` : ""}
|
|
999
1580
|
|
|
1000
|
-
${this.step === 2 ?
|
|
1581
|
+
${this.step === 2 ? y`
|
|
1001
1582
|
<div class="step-2">
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
<
|
|
1009
|
-
|
|
1010
|
-
</
|
|
1011
|
-
|
|
1012
|
-
|
|
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>
|
|
1013
1601
|
</button>
|
|
1014
1602
|
</div>
|
|
1015
|
-
${this.errorMessage ? E`<div class="error-message">${this.errorMessage}</div>` : ""}
|
|
1016
1603
|
</div>
|
|
1017
1604
|
` : ""}
|
|
1018
1605
|
|
|
1019
|
-
${this.step === 3 ?
|
|
1606
|
+
${this.step === 3 ? y`
|
|
1020
1607
|
<div class="step-3">
|
|
1021
|
-
<
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
${this.productImageSrc && E`<img src="${this.productImageSrc}" alt="Product Image" class="product-image"/>`}
|
|
1028
|
-
</div>
|
|
1029
|
-
</div>
|
|
1030
|
-
<div class="buttons">
|
|
1031
|
-
<button class="xactsize-btn-secondary" @click=${this.acceptMeasurement}>
|
|
1032
|
-
${a("Accept suggestion", { id: "s9ab2057f0a31be23" })}
|
|
1033
|
-
</button>
|
|
1034
|
-
<button class="xactsize-btn-primary" @click=${this.resetMeasurement}>
|
|
1035
|
-
${a("Measure again", { id: "sc95ab500914c6f87" })}
|
|
1036
|
-
</button>
|
|
1037
|
-
</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>
|
|
1038
1614
|
</div>
|
|
1039
1615
|
` : ""}
|
|
1616
|
+
<xact-footer></xact-footer>
|
|
1040
1617
|
</div>
|
|
1041
|
-
|
|
1042
|
-
<span>
|
|
1043
|
-
<a style="color: black; font-weight: 800" href="http://xactsize.com">${a("Privacy", { id: "se78c02e9a98a0f47" })}</a> | ${a("Powered by Xactsize", { id: "s4f6bcf9f4ee1d289" })}®
|
|
1044
|
-
</span>
|
|
1045
|
-
</footer>
|
|
1618
|
+
|
|
1046
1619
|
</div>
|
|
1047
1620
|
` : ""}
|
|
1048
1621
|
`;
|
|
1049
1622
|
}
|
|
1050
1623
|
};
|
|
1051
|
-
d.styles =
|
|
1624
|
+
d.styles = j`
|
|
1052
1625
|
:host {
|
|
1053
1626
|
display: block;
|
|
1054
|
-
font-family:
|
|
1055
|
-
}
|
|
1056
|
-
|
|
1057
|
-
/* Button Styles */
|
|
1058
|
-
.xactsize-btn-primary {
|
|
1059
|
-
width: 100%;
|
|
1060
|
-
padding: var(--xactsize-btn-primary--padding, 8px 24px);
|
|
1061
|
-
font-size: var(--xactsize-btn-primary--font-size, 20px);
|
|
1062
|
-
font-weight: var(--xactsize-btn-primary--font-weight, 700);
|
|
1063
|
-
background-color: var(--xactsize-btn-primary--bg-color, #001947);
|
|
1064
|
-
color: var(--xactsize-btn-primary--color, #fff);
|
|
1065
|
-
border: 2px solid var(--xactsize-btn-primary--border, transparent);
|
|
1066
|
-
border-radius: var(--xactsize-btn-primary--border-radius, 4px);
|
|
1067
|
-
box-shadow: var(--xactsize-btn-primary--box-shadow, none);
|
|
1068
|
-
cursor: pointer;
|
|
1069
|
-
transition: background-color 0.3s ease;
|
|
1070
|
-
display: inline-flex;
|
|
1071
|
-
align-items: center;
|
|
1072
|
-
justify-content: center;
|
|
1073
|
-
font-family: var(--xactsize-btn-primary--font-family, "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif);
|
|
1074
|
-
}
|
|
1075
|
-
|
|
1076
|
-
.xactsize-btn-primary:hover {
|
|
1077
|
-
background-color: var(--xactsize-btn-primary--hover--bg-color, #002c71);
|
|
1078
|
-
color: var(--xactsize-btn-primary--hover--color, #fff);
|
|
1079
|
-
border: var(--xactsize-btn-primary--hover--border, 2px solid transparent);
|
|
1080
|
-
box-shadow: var(--xactsize-btn-primary--hover--box-shadow, none);
|
|
1081
|
-
}
|
|
1082
|
-
|
|
1083
|
-
.xactsize-btn-secondary {
|
|
1084
|
-
width: 100%;
|
|
1085
|
-
padding: var(--xactsize-btn-secondary--padding, 10px 20px);
|
|
1086
|
-
font-size: var(--xactsize-btn-secondary--font-size, 20px);
|
|
1087
|
-
font-weight: var(--xactsize-btn-secondary--font-weight, 700);
|
|
1088
|
-
background-color: var(--xactsize-btn-secondary--bg-color, white);
|
|
1089
|
-
color: var(--xactsize-btn-secondary--color, #001947);
|
|
1090
|
-
border: 2px solid var(--xactsize-btn-secondary--border, #001947);
|
|
1091
|
-
border-radius: var(--xactsize-btn-secondary--border-radius, 4px);
|
|
1092
|
-
box-shadow: var(--xactsize-btn-secondary--box-shadow, none);
|
|
1093
|
-
cursor: pointer;
|
|
1094
|
-
transition: background-color 0.3s ease;
|
|
1095
|
-
display: inline-flex;
|
|
1096
|
-
align-items: center;
|
|
1097
|
-
justify-content: center;
|
|
1098
|
-
font-family: var(--xactsize-btn-secondary--font-family, "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif);
|
|
1099
|
-
}
|
|
1100
|
-
|
|
1101
|
-
.xactsize-btn-secondary:hover {
|
|
1102
|
-
background-color: var(--xactsize-btn-secondary--hover--bg-color, #f0f0f0);
|
|
1103
|
-
color: var(--xactsize-btn-secondary--hover--color, #001947);
|
|
1104
|
-
border: 2px solid var(--xactsize-btn-secondary--border, #f0f0f0);
|
|
1627
|
+
font-family: Arial, sans-serif;
|
|
1105
1628
|
}
|
|
1106
1629
|
|
|
1107
1630
|
.flip-btn {
|
|
@@ -1128,6 +1651,8 @@ d.styles = Oe`
|
|
|
1128
1651
|
background-color: #cccccc;
|
|
1129
1652
|
cursor: not-allowed;
|
|
1130
1653
|
}
|
|
1654
|
+
|
|
1655
|
+
|
|
1131
1656
|
|
|
1132
1657
|
/* Modal Styles */
|
|
1133
1658
|
.modal {
|
|
@@ -1148,7 +1673,7 @@ d.styles = Oe`
|
|
|
1148
1673
|
box-sizing: border-box;
|
|
1149
1674
|
background: white;
|
|
1150
1675
|
padding: 20px;
|
|
1151
|
-
border-radius:
|
|
1676
|
+
border-radius: 18px;
|
|
1152
1677
|
width: 90%;
|
|
1153
1678
|
max-height: 90vh;
|
|
1154
1679
|
max-width: 1000px;
|
|
@@ -1156,7 +1681,6 @@ d.styles = Oe`
|
|
|
1156
1681
|
display: flex;
|
|
1157
1682
|
flex-direction: column;
|
|
1158
1683
|
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
|
|
1159
|
-
overflow: auto;
|
|
1160
1684
|
}
|
|
1161
1685
|
|
|
1162
1686
|
@media (max-width: 600px) {
|
|
@@ -1168,6 +1692,15 @@ d.styles = Oe`
|
|
|
1168
1692
|
padding: 15px 15px 45px 15px;
|
|
1169
1693
|
}
|
|
1170
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
|
+
}
|
|
1171
1704
|
|
|
1172
1705
|
.close-btn {
|
|
1173
1706
|
top: 15px;
|
|
@@ -1291,39 +1824,6 @@ d.styles = Oe`
|
|
|
1291
1824
|
max-width: 100%;
|
|
1292
1825
|
}
|
|
1293
1826
|
|
|
1294
|
-
.step-1 form {
|
|
1295
|
-
display: flex;
|
|
1296
|
-
flex-direction: column;
|
|
1297
|
-
width: 100%;
|
|
1298
|
-
margin-top: 10px;
|
|
1299
|
-
}
|
|
1300
|
-
|
|
1301
|
-
.step-1 label {
|
|
1302
|
-
font-size: 14px;
|
|
1303
|
-
color: #666;
|
|
1304
|
-
margin-bottom: 8px;
|
|
1305
|
-
font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
|
|
1306
|
-
}
|
|
1307
|
-
|
|
1308
|
-
.step-1 .input-wrapper {
|
|
1309
|
-
position: relative;
|
|
1310
|
-
width: 100%;
|
|
1311
|
-
margin-bottom: 10px;
|
|
1312
|
-
}
|
|
1313
|
-
|
|
1314
|
-
.step-1 input {
|
|
1315
|
-
width: 100%;
|
|
1316
|
-
padding: 12px;
|
|
1317
|
-
font-size: 16px;
|
|
1318
|
-
border: 1px solid #ccc;
|
|
1319
|
-
border-radius: 5px;
|
|
1320
|
-
box-sizing: border-box;
|
|
1321
|
-
font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
|
|
1322
|
-
appearance: none;
|
|
1323
|
-
-webkit-appearance: none;
|
|
1324
|
-
-moz-appearance: none;
|
|
1325
|
-
}
|
|
1326
|
-
|
|
1327
1827
|
.modal-footer {
|
|
1328
1828
|
width: 100%;
|
|
1329
1829
|
text-align: center;
|
|
@@ -1354,76 +1854,133 @@ d.styles = Oe`
|
|
|
1354
1854
|
display: flex;
|
|
1355
1855
|
flex-direction: column;
|
|
1356
1856
|
flex: 1;
|
|
1857
|
+
padding: 15px;
|
|
1357
1858
|
}
|
|
1358
1859
|
|
|
1359
1860
|
.step-2 h2 {
|
|
1360
|
-
font-size: 20px;
|
|
1361
|
-
margin-bottom: 15px;
|
|
1861
|
+
font-size: 20px;
|
|
1362
1862
|
}
|
|
1363
1863
|
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
}
|
|
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
|
+
}
|
|
1375
1874
|
|
|
1376
1875
|
.video-container button {
|
|
1377
|
-
width: 100%;
|
|
1378
|
-
}
|
|
1876
|
+
width: 100%;
|
|
1877
|
+
}
|
|
1379
1878
|
|
|
1380
1879
|
video {
|
|
1381
|
-
|
|
1382
|
-
display: block;
|
|
1383
|
-
max-width: 100%;
|
|
1384
|
-
max-height: 100%;
|
|
1880
|
+
width: 100%;
|
|
1385
1881
|
height: 100%;
|
|
1882
|
+
object-fit: cover;
|
|
1883
|
+
border-radius: 10px;
|
|
1884
|
+
overflow: hidden;
|
|
1885
|
+
border: 4px solid transparent;
|
|
1886
|
+
box-sizing: border-box;
|
|
1386
1887
|
}
|
|
1387
1888
|
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
font-size: 14px;
|
|
1391
|
-
margin-top: 10px;
|
|
1889
|
+
video.error {
|
|
1890
|
+
border-color: red;
|
|
1392
1891
|
}
|
|
1393
1892
|
|
|
1394
|
-
.
|
|
1395
|
-
|
|
1396
|
-
border-top: 4px solid #3498db;
|
|
1397
|
-
border-radius: 50%;
|
|
1398
|
-
width: 30px;
|
|
1399
|
-
height: 30px;
|
|
1400
|
-
animation: spin 1s linear infinite;
|
|
1401
|
-
margin: 0 auto;
|
|
1893
|
+
video.success {
|
|
1894
|
+
border-color: green;
|
|
1402
1895
|
}
|
|
1403
1896
|
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
}
|
|
1897
|
+
xact-button {
|
|
1898
|
+
width: 100%;
|
|
1899
|
+
}
|
|
1408
1900
|
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
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
|
+
}
|
|
1419
1983
|
|
|
1420
|
-
.step-3-subtitle {
|
|
1421
|
-
font-size: 20px;
|
|
1422
|
-
font-weight: 700;
|
|
1423
|
-
color: #333;
|
|
1424
|
-
margin-bottom: 20px;
|
|
1425
|
-
font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
|
|
1426
|
-
}
|
|
1427
1984
|
|
|
1428
1985
|
.size-graph-container {
|
|
1429
1986
|
display: flex;
|
|
@@ -1473,89 +2030,73 @@ d.styles = Oe`
|
|
|
1473
2030
|
font-family: "Lato", -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
|
|
1474
2031
|
}
|
|
1475
2032
|
|
|
1476
|
-
.step-3 .buttons {
|
|
1477
|
-
display: flex;
|
|
1478
|
-
justify-content: center;
|
|
1479
|
-
gap: 10px;
|
|
1480
|
-
width: 100%;
|
|
1481
|
-
flex-wrap: wrap;
|
|
1482
|
-
}
|
|
1483
|
-
|
|
1484
|
-
@media (max-width: 600px) {
|
|
1485
|
-
.step-3 .buttons {
|
|
1486
|
-
flex-direction: column;
|
|
1487
|
-
}
|
|
1488
|
-
}
|
|
1489
2033
|
`;
|
|
1490
2034
|
u([
|
|
1491
|
-
|
|
2035
|
+
m({ type: String, attribute: "api-key" })
|
|
1492
2036
|
], d.prototype, "apiKey", 2);
|
|
1493
2037
|
u([
|
|
1494
|
-
|
|
1495
|
-
], d.prototype, "productImageSrc", 2);
|
|
1496
|
-
u([
|
|
1497
|
-
R({ type: Function, attribute: "onmeasurementaccepted" })
|
|
2038
|
+
m({ type: Function, attribute: "onmeasurementaccepted" })
|
|
1498
2039
|
], d.prototype, "onMeasurementAccepted", 2);
|
|
1499
2040
|
u([
|
|
1500
|
-
|
|
2041
|
+
m({ type: Function, attribute: "onmeasurementcanceled" })
|
|
1501
2042
|
], d.prototype, "onMeasurementCanceled", 2);
|
|
1502
2043
|
u([
|
|
1503
|
-
|
|
2044
|
+
m({ type: String })
|
|
1504
2045
|
], d.prototype, "culture", 1);
|
|
1505
2046
|
u([
|
|
1506
|
-
|
|
2047
|
+
_()
|
|
1507
2048
|
], d.prototype, "errorMap", 1);
|
|
1508
2049
|
u([
|
|
1509
|
-
|
|
2050
|
+
_()
|
|
1510
2051
|
], d.prototype, "_isLocaleLoading", 2);
|
|
1511
2052
|
u([
|
|
1512
|
-
|
|
2053
|
+
m({ type: Array })
|
|
1513
2054
|
], d.prototype, "skus", 2);
|
|
1514
2055
|
u([
|
|
1515
|
-
|
|
2056
|
+
m({ type: String, attribute: "product-name" })
|
|
1516
2057
|
], d.prototype, "productName", 2);
|
|
1517
2058
|
u([
|
|
1518
|
-
|
|
2059
|
+
_()
|
|
1519
2060
|
], d.prototype, "showModal", 2);
|
|
1520
2061
|
u([
|
|
1521
|
-
|
|
2062
|
+
_()
|
|
1522
2063
|
], d.prototype, "step", 2);
|
|
1523
2064
|
u([
|
|
1524
|
-
|
|
2065
|
+
_()
|
|
1525
2066
|
], d.prototype, "height", 2);
|
|
1526
2067
|
u([
|
|
1527
|
-
|
|
2068
|
+
_()
|
|
1528
2069
|
], d.prototype, "recommendedSize", 2);
|
|
1529
2070
|
u([
|
|
1530
|
-
|
|
2071
|
+
_()
|
|
1531
2072
|
], d.prototype, "measurements", 2);
|
|
1532
2073
|
u([
|
|
1533
|
-
|
|
2074
|
+
_()
|
|
1534
2075
|
], d.prototype, "errorMessage", 2);
|
|
1535
2076
|
u([
|
|
1536
|
-
|
|
2077
|
+
_()
|
|
1537
2078
|
], d.prototype, "instructionMessage", 2);
|
|
1538
2079
|
u([
|
|
1539
|
-
|
|
2080
|
+
_()
|
|
1540
2081
|
], d.prototype, "shouldStartMeasurement", 2);
|
|
1541
2082
|
u([
|
|
1542
|
-
|
|
2083
|
+
_()
|
|
1543
2084
|
], d.prototype, "isLoading", 2);
|
|
1544
2085
|
u([
|
|
1545
|
-
|
|
2086
|
+
_()
|
|
1546
2087
|
], d.prototype, "isFetching", 2);
|
|
1547
2088
|
u([
|
|
1548
|
-
|
|
2089
|
+
_()
|
|
1549
2090
|
], d.prototype, "cameras", 2);
|
|
1550
2091
|
u([
|
|
1551
|
-
|
|
2092
|
+
_()
|
|
1552
2093
|
], d.prototype, "currentCameraId", 2);
|
|
1553
2094
|
d = u([
|
|
1554
|
-
|
|
1555
|
-
|
|
2095
|
+
Z("body-measurer"),
|
|
2096
|
+
te()
|
|
1556
2097
|
], d);
|
|
1557
2098
|
export {
|
|
1558
2099
|
d as BodyMeasurer,
|
|
1559
|
-
|
|
1560
|
-
|
|
2100
|
+
Gt as getLocale,
|
|
2101
|
+
Le as setLocale
|
|
1561
2102
|
};
|