@vouchfor/embeds 0.0.0-experiment.039a74b → 0.0.0-experiment.08c37fe

Sign up to get free protection for your applications and to get access to all the features.
package/dist/es/embeds.js CHANGED
@@ -1,16 +1,1234 @@
1
- import { MediaPlayer as s } from "@vouchfor/media-player";
2
- import { customElement as f } from "lit/decorators.js";
3
- var v = Object.defineProperty, i = Object.getOwnPropertyDescriptor, _ = (o, r, t, l) => {
4
- for (var e = l > 1 ? void 0 : l ? i(r, t) : r, m = o.length - 1, n; m >= 0; m--)
5
- (n = o[m]) && (e = (l ? n(r, t, e) : n(e)) || e);
6
- return l && e && v(r, t, e), e;
7
- };
8
- let p = class extends s {
9
- };
10
- p = _([
11
- f("vembed-inline")
12
- ], p);
1
+ import { property as A, state as Lt, customElement as te } from "lit/decorators.js";
2
+ import { ifDefined as $t } from "lit/directives/if-defined.js";
3
+ import { createRef as Dt, ref as jt } from "lit/directives/ref.js";
4
+ import { Task as ee } from "@lit/task";
5
+ import "@vouchfor/media-player";
6
+ /**
7
+ * @license
8
+ * Copyright 2019 Google LLC
9
+ * SPDX-License-Identifier: BSD-3-Clause
10
+ */
11
+ const F = window, vt = F.ShadowRoot && (F.ShadyCSS === void 0 || F.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, Bt = Symbol(), mt = /* @__PURE__ */ new WeakMap();
12
+ let ie = class {
13
+ constructor(t, e, i) {
14
+ if (this._$cssResult$ = !0, i !== Bt)
15
+ throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
16
+ this.cssText = t, this.t = e;
17
+ }
18
+ get styleSheet() {
19
+ let t = this.o;
20
+ const e = this.t;
21
+ if (vt && t === void 0) {
22
+ const i = e !== void 0 && e.length === 1;
23
+ i && (t = mt.get(e)), t === void 0 && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), i && mt.set(e, t));
24
+ }
25
+ return t;
26
+ }
27
+ toString() {
28
+ return this.cssText;
29
+ }
30
+ };
31
+ const se = (n) => new ie(typeof n == "string" ? n : n + "", void 0, Bt), ne = (n, t) => {
32
+ vt ? n.adoptedStyleSheets = t.map((e) => e instanceof CSSStyleSheet ? e : e.styleSheet) : t.forEach((e) => {
33
+ const i = document.createElement("style"), s = F.litNonce;
34
+ s !== void 0 && i.setAttribute("nonce", s), i.textContent = e.cssText, n.appendChild(i);
35
+ });
36
+ }, gt = vt ? (n) => n : (n) => n instanceof CSSStyleSheet ? ((t) => {
37
+ let e = "";
38
+ for (const i of t.cssRules)
39
+ e += i.cssText;
40
+ return se(e);
41
+ })(n) : n;
42
+ /**
43
+ * @license
44
+ * Copyright 2017 Google LLC
45
+ * SPDX-License-Identifier: BSD-3-Clause
46
+ */
47
+ var et;
48
+ const K = window, ft = K.trustedTypes, re = ft ? ft.emptyScript : "", At = K.reactiveElementPolyfillSupport, ht = { toAttribute(n, t) {
49
+ switch (t) {
50
+ case Boolean:
51
+ n = n ? re : null;
52
+ break;
53
+ case Object:
54
+ case Array:
55
+ n = n == null ? n : JSON.stringify(n);
56
+ }
57
+ return n;
58
+ }, fromAttribute(n, t) {
59
+ let e = n;
60
+ switch (t) {
61
+ case Boolean:
62
+ e = n !== null;
63
+ break;
64
+ case Number:
65
+ e = n === null ? null : Number(n);
66
+ break;
67
+ case Object:
68
+ case Array:
69
+ try {
70
+ e = JSON.parse(n);
71
+ } catch {
72
+ e = null;
73
+ }
74
+ }
75
+ return e;
76
+ } }, zt = (n, t) => t !== n && (t == t || n == n), it = { attribute: !0, type: String, converter: ht, reflect: !1, hasChanged: zt }, dt = "finalized";
77
+ let x = class extends HTMLElement {
78
+ constructor() {
79
+ super(), this._$Ei = /* @__PURE__ */ new Map(), this.isUpdatePending = !1, this.hasUpdated = !1, this._$El = null, this.u();
80
+ }
81
+ static addInitializer(t) {
82
+ var e;
83
+ this.finalize(), ((e = this.h) !== null && e !== void 0 ? e : this.h = []).push(t);
84
+ }
85
+ static get observedAttributes() {
86
+ this.finalize();
87
+ const t = [];
88
+ return this.elementProperties.forEach((e, i) => {
89
+ const s = this._$Ep(i, e);
90
+ s !== void 0 && (this._$Ev.set(s, i), t.push(s));
91
+ }), t;
92
+ }
93
+ static createProperty(t, e = it) {
94
+ if (e.state && (e.attribute = !1), this.finalize(), this.elementProperties.set(t, e), !e.noAccessor && !this.prototype.hasOwnProperty(t)) {
95
+ const i = typeof t == "symbol" ? Symbol() : "__" + t, s = this.getPropertyDescriptor(t, i, e);
96
+ s !== void 0 && Object.defineProperty(this.prototype, t, s);
97
+ }
98
+ }
99
+ static getPropertyDescriptor(t, e, i) {
100
+ return { get() {
101
+ return this[e];
102
+ }, set(s) {
103
+ const o = this[t];
104
+ this[e] = s, this.requestUpdate(t, o, i);
105
+ }, configurable: !0, enumerable: !0 };
106
+ }
107
+ static getPropertyOptions(t) {
108
+ return this.elementProperties.get(t) || it;
109
+ }
110
+ static finalize() {
111
+ if (this.hasOwnProperty(dt))
112
+ return !1;
113
+ this[dt] = !0;
114
+ const t = Object.getPrototypeOf(this);
115
+ if (t.finalize(), t.h !== void 0 && (this.h = [...t.h]), this.elementProperties = new Map(t.elementProperties), this._$Ev = /* @__PURE__ */ new Map(), this.hasOwnProperty("properties")) {
116
+ const e = this.properties, i = [...Object.getOwnPropertyNames(e), ...Object.getOwnPropertySymbols(e)];
117
+ for (const s of i)
118
+ this.createProperty(s, e[s]);
119
+ }
120
+ return this.elementStyles = this.finalizeStyles(this.styles), !0;
121
+ }
122
+ static finalizeStyles(t) {
123
+ const e = [];
124
+ if (Array.isArray(t)) {
125
+ const i = new Set(t.flat(1 / 0).reverse());
126
+ for (const s of i)
127
+ e.unshift(gt(s));
128
+ } else
129
+ t !== void 0 && e.push(gt(t));
130
+ return e;
131
+ }
132
+ static _$Ep(t, e) {
133
+ const i = e.attribute;
134
+ return i === !1 ? void 0 : typeof i == "string" ? i : typeof t == "string" ? t.toLowerCase() : void 0;
135
+ }
136
+ u() {
137
+ var t;
138
+ this._$E_ = new Promise((e) => this.enableUpdating = e), this._$AL = /* @__PURE__ */ new Map(), this._$Eg(), this.requestUpdate(), (t = this.constructor.h) === null || t === void 0 || t.forEach((e) => e(this));
139
+ }
140
+ addController(t) {
141
+ var e, i;
142
+ ((e = this._$ES) !== null && e !== void 0 ? e : this._$ES = []).push(t), this.renderRoot !== void 0 && this.isConnected && ((i = t.hostConnected) === null || i === void 0 || i.call(t));
143
+ }
144
+ removeController(t) {
145
+ var e;
146
+ (e = this._$ES) === null || e === void 0 || e.splice(this._$ES.indexOf(t) >>> 0, 1);
147
+ }
148
+ _$Eg() {
149
+ this.constructor.elementProperties.forEach((t, e) => {
150
+ this.hasOwnProperty(e) && (this._$Ei.set(e, this[e]), delete this[e]);
151
+ });
152
+ }
153
+ createRenderRoot() {
154
+ var t;
155
+ const e = (t = this.shadowRoot) !== null && t !== void 0 ? t : this.attachShadow(this.constructor.shadowRootOptions);
156
+ return ne(e, this.constructor.elementStyles), e;
157
+ }
158
+ connectedCallback() {
159
+ var t;
160
+ this.renderRoot === void 0 && (this.renderRoot = this.createRenderRoot()), this.enableUpdating(!0), (t = this._$ES) === null || t === void 0 || t.forEach((e) => {
161
+ var i;
162
+ return (i = e.hostConnected) === null || i === void 0 ? void 0 : i.call(e);
163
+ });
164
+ }
165
+ enableUpdating(t) {
166
+ }
167
+ disconnectedCallback() {
168
+ var t;
169
+ (t = this._$ES) === null || t === void 0 || t.forEach((e) => {
170
+ var i;
171
+ return (i = e.hostDisconnected) === null || i === void 0 ? void 0 : i.call(e);
172
+ });
173
+ }
174
+ attributeChangedCallback(t, e, i) {
175
+ this._$AK(t, i);
176
+ }
177
+ _$EO(t, e, i = it) {
178
+ var s;
179
+ const o = this.constructor._$Ep(t, i);
180
+ if (o !== void 0 && i.reflect === !0) {
181
+ const r = (((s = i.converter) === null || s === void 0 ? void 0 : s.toAttribute) !== void 0 ? i.converter : ht).toAttribute(e, i.type);
182
+ this._$El = t, r == null ? this.removeAttribute(o) : this.setAttribute(o, r), this._$El = null;
183
+ }
184
+ }
185
+ _$AK(t, e) {
186
+ var i;
187
+ const s = this.constructor, o = s._$Ev.get(t);
188
+ if (o !== void 0 && this._$El !== o) {
189
+ const r = s.getPropertyOptions(o), d = typeof r.converter == "function" ? { fromAttribute: r.converter } : ((i = r.converter) === null || i === void 0 ? void 0 : i.fromAttribute) !== void 0 ? r.converter : ht;
190
+ this._$El = o, this[o] = d.fromAttribute(e, r.type), this._$El = null;
191
+ }
192
+ }
193
+ requestUpdate(t, e, i) {
194
+ let s = !0;
195
+ t !== void 0 && (((i = i || this.constructor.getPropertyOptions(t)).hasChanged || zt)(this[t], e) ? (this._$AL.has(t) || this._$AL.set(t, e), i.reflect === !0 && this._$El !== t && (this._$EC === void 0 && (this._$EC = /* @__PURE__ */ new Map()), this._$EC.set(t, i))) : s = !1), !this.isUpdatePending && s && (this._$E_ = this._$Ej());
196
+ }
197
+ async _$Ej() {
198
+ this.isUpdatePending = !0;
199
+ try {
200
+ await this._$E_;
201
+ } catch (e) {
202
+ Promise.reject(e);
203
+ }
204
+ const t = this.scheduleUpdate();
205
+ return t != null && await t, !this.isUpdatePending;
206
+ }
207
+ scheduleUpdate() {
208
+ return this.performUpdate();
209
+ }
210
+ performUpdate() {
211
+ var t;
212
+ if (!this.isUpdatePending)
213
+ return;
214
+ this.hasUpdated, this._$Ei && (this._$Ei.forEach((s, o) => this[o] = s), this._$Ei = void 0);
215
+ let e = !1;
216
+ const i = this._$AL;
217
+ try {
218
+ e = this.shouldUpdate(i), e ? (this.willUpdate(i), (t = this._$ES) === null || t === void 0 || t.forEach((s) => {
219
+ var o;
220
+ return (o = s.hostUpdate) === null || o === void 0 ? void 0 : o.call(s);
221
+ }), this.update(i)) : this._$Ek();
222
+ } catch (s) {
223
+ throw e = !1, this._$Ek(), s;
224
+ }
225
+ e && this._$AE(i);
226
+ }
227
+ willUpdate(t) {
228
+ }
229
+ _$AE(t) {
230
+ var e;
231
+ (e = this._$ES) === null || e === void 0 || e.forEach((i) => {
232
+ var s;
233
+ return (s = i.hostUpdated) === null || s === void 0 ? void 0 : s.call(i);
234
+ }), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(t)), this.updated(t);
235
+ }
236
+ _$Ek() {
237
+ this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = !1;
238
+ }
239
+ get updateComplete() {
240
+ return this.getUpdateComplete();
241
+ }
242
+ getUpdateComplete() {
243
+ return this._$E_;
244
+ }
245
+ shouldUpdate(t) {
246
+ return !0;
247
+ }
248
+ update(t) {
249
+ this._$EC !== void 0 && (this._$EC.forEach((e, i) => this._$EO(i, this[i], e)), this._$EC = void 0), this._$Ek();
250
+ }
251
+ updated(t) {
252
+ }
253
+ firstUpdated(t) {
254
+ }
255
+ };
256
+ x[dt] = !0, x.elementProperties = /* @__PURE__ */ new Map(), x.elementStyles = [], x.shadowRootOptions = { mode: "open" }, At == null || At({ ReactiveElement: x }), ((et = K.reactiveElementVersions) !== null && et !== void 0 ? et : K.reactiveElementVersions = []).push("1.6.2");
257
+ /**
258
+ * @license
259
+ * Copyright 2017 Google LLC
260
+ * SPDX-License-Identifier: BSD-3-Clause
261
+ */
262
+ var st;
263
+ const G = window, R = G.trustedTypes, yt = R ? R.createPolicy("lit-html", { createHTML: (n) => n }) : void 0, ct = "$lit$", E = `lit$${(Math.random() + "").slice(9)}$`, qt = "?" + E, oe = `<${qt}>`, U = document, J = () => U.createComment(""), D = (n) => n === null || typeof n != "object" && typeof n != "function", Wt = Array.isArray, le = (n) => Wt(n) || typeof (n == null ? void 0 : n[Symbol.iterator]) == "function", nt = `[
264
+ \f\r]`, O = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Et = /-->/g, wt = />/g, b = RegExp(`>|${nt}(?:([^\\s"'>=/]+)(${nt}*=${nt}*(?:[^
265
+ \f\r"'\`<>=]|("|')|))|$)`, "g"), bt = /'/g, St = /"/g, Zt = /^(?:script|style|textarea|title)$/i, j = Symbol.for("lit-noChange"), v = Symbol.for("lit-nothing"), Pt = /* @__PURE__ */ new WeakMap(), P = U.createTreeWalker(U, 129, null, !1);
266
+ function Ft(n, t) {
267
+ if (!Array.isArray(n) || !n.hasOwnProperty("raw"))
268
+ throw Error("invalid template strings array");
269
+ return yt !== void 0 ? yt.createHTML(t) : t;
270
+ }
271
+ const ae = (n, t) => {
272
+ const e = n.length - 1, i = [];
273
+ let s, o = t === 2 ? "<svg>" : "", r = O;
274
+ for (let d = 0; d < e; d++) {
275
+ const l = n[d];
276
+ let a, u, h = -1, c = 0;
277
+ for (; c < l.length && (r.lastIndex = c, u = r.exec(l), u !== null); )
278
+ c = r.lastIndex, r === O ? u[1] === "!--" ? r = Et : u[1] !== void 0 ? r = wt : u[2] !== void 0 ? (Zt.test(u[2]) && (s = RegExp("</" + u[2], "g")), r = b) : u[3] !== void 0 && (r = b) : r === b ? u[0] === ">" ? (r = s ?? O, h = -1) : u[1] === void 0 ? h = -2 : (h = r.lastIndex - u[2].length, a = u[1], r = u[3] === void 0 ? b : u[3] === '"' ? St : bt) : r === St || r === bt ? r = b : r === Et || r === wt ? r = O : (r = b, s = void 0);
279
+ const p = r === b && n[d + 1].startsWith("/>") ? " " : "";
280
+ o += r === O ? l + oe : h >= 0 ? (i.push(a), l.slice(0, h) + ct + l.slice(h) + E + p) : l + E + (h === -2 ? (i.push(void 0), d) : p);
281
+ }
282
+ return [Ft(n, o + (n[e] || "<?>") + (t === 2 ? "</svg>" : "")), i];
283
+ };
284
+ let ut = class Kt {
285
+ constructor({ strings: t, _$litType$: e }, i) {
286
+ let s;
287
+ this.parts = [];
288
+ let o = 0, r = 0;
289
+ const d = t.length - 1, l = this.parts, [a, u] = ae(t, e);
290
+ if (this.el = Kt.createElement(a, i), P.currentNode = this.el.content, e === 2) {
291
+ const h = this.el.content, c = h.firstChild;
292
+ c.remove(), h.append(...c.childNodes);
293
+ }
294
+ for (; (s = P.nextNode()) !== null && l.length < d; ) {
295
+ if (s.nodeType === 1) {
296
+ if (s.hasAttributes()) {
297
+ const h = [];
298
+ for (const c of s.getAttributeNames())
299
+ if (c.endsWith(ct) || c.startsWith(E)) {
300
+ const p = u[r++];
301
+ if (h.push(c), p !== void 0) {
302
+ const y = s.getAttribute(p.toLowerCase() + ct).split(E), m = /([.?@])?(.*)/.exec(p);
303
+ l.push({ type: 1, index: o, name: m[2], strings: y, ctor: m[1] === "." ? de : m[1] === "?" ? ue : m[1] === "@" ? pe : Q });
304
+ } else
305
+ l.push({ type: 6, index: o });
306
+ }
307
+ for (const c of h)
308
+ s.removeAttribute(c);
309
+ }
310
+ if (Zt.test(s.tagName)) {
311
+ const h = s.textContent.split(E), c = h.length - 1;
312
+ if (c > 0) {
313
+ s.textContent = R ? R.emptyScript : "";
314
+ for (let p = 0; p < c; p++)
315
+ s.append(h[p], J()), P.nextNode(), l.push({ type: 2, index: ++o });
316
+ s.append(h[c], J());
317
+ }
318
+ }
319
+ } else if (s.nodeType === 8)
320
+ if (s.data === qt)
321
+ l.push({ type: 2, index: o });
322
+ else {
323
+ let h = -1;
324
+ for (; (h = s.data.indexOf(E, h + 1)) !== -1; )
325
+ l.push({ type: 7, index: o }), h += E.length - 1;
326
+ }
327
+ o++;
328
+ }
329
+ }
330
+ static createElement(t, e) {
331
+ const i = U.createElement("template");
332
+ return i.innerHTML = t, i;
333
+ }
334
+ };
335
+ function H(n, t, e = n, i) {
336
+ var s, o, r, d;
337
+ if (t === j)
338
+ return t;
339
+ let l = i !== void 0 ? (s = e._$Co) === null || s === void 0 ? void 0 : s[i] : e._$Cl;
340
+ const a = D(t) ? void 0 : t._$litDirective$;
341
+ return (l == null ? void 0 : l.constructor) !== a && ((o = l == null ? void 0 : l._$AO) === null || o === void 0 || o.call(l, !1), a === void 0 ? l = void 0 : (l = new a(n), l._$AT(n, e, i)), i !== void 0 ? ((r = (d = e)._$Co) !== null && r !== void 0 ? r : d._$Co = [])[i] = l : e._$Cl = l), l !== void 0 && (t = H(n, l._$AS(n, t.values), l, i)), t;
342
+ }
343
+ let he = class {
344
+ constructor(t, e) {
345
+ this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = e;
346
+ }
347
+ get parentNode() {
348
+ return this._$AM.parentNode;
349
+ }
350
+ get _$AU() {
351
+ return this._$AM._$AU;
352
+ }
353
+ u(t) {
354
+ var e;
355
+ const { el: { content: i }, parts: s } = this._$AD, o = ((e = t == null ? void 0 : t.creationScope) !== null && e !== void 0 ? e : U).importNode(i, !0);
356
+ P.currentNode = o;
357
+ let r = P.nextNode(), d = 0, l = 0, a = s[0];
358
+ for (; a !== void 0; ) {
359
+ if (d === a.index) {
360
+ let u;
361
+ a.type === 2 ? u = new Gt(r, r.nextSibling, this, t) : a.type === 1 ? u = new a.ctor(r, a.name, a.strings, this, t) : a.type === 6 && (u = new ve(r, this, t)), this._$AV.push(u), a = s[++l];
362
+ }
363
+ d !== (a == null ? void 0 : a.index) && (r = P.nextNode(), d++);
364
+ }
365
+ return P.currentNode = U, o;
366
+ }
367
+ v(t) {
368
+ let e = 0;
369
+ for (const i of this._$AV)
370
+ i !== void 0 && (i.strings !== void 0 ? (i._$AI(t, i, e), e += i.strings.length - 2) : i._$AI(t[e])), e++;
371
+ }
372
+ }, Gt = class Jt {
373
+ constructor(t, e, i, s) {
374
+ var o;
375
+ this.type = 2, this._$AH = v, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = i, this.options = s, this._$Cp = (o = s == null ? void 0 : s.isConnected) === null || o === void 0 || o;
376
+ }
377
+ get _$AU() {
378
+ var t, e;
379
+ return (e = (t = this._$AM) === null || t === void 0 ? void 0 : t._$AU) !== null && e !== void 0 ? e : this._$Cp;
380
+ }
381
+ get parentNode() {
382
+ let t = this._$AA.parentNode;
383
+ const e = this._$AM;
384
+ return e !== void 0 && (t == null ? void 0 : t.nodeType) === 11 && (t = e.parentNode), t;
385
+ }
386
+ get startNode() {
387
+ return this._$AA;
388
+ }
389
+ get endNode() {
390
+ return this._$AB;
391
+ }
392
+ _$AI(t, e = this) {
393
+ t = H(this, t, e), D(t) ? t === v || t == null || t === "" ? (this._$AH !== v && this._$AR(), this._$AH = v) : t !== this._$AH && t !== j && this._(t) : t._$litType$ !== void 0 ? this.g(t) : t.nodeType !== void 0 ? this.$(t) : le(t) ? this.T(t) : this._(t);
394
+ }
395
+ k(t) {
396
+ return this._$AA.parentNode.insertBefore(t, this._$AB);
397
+ }
398
+ $(t) {
399
+ this._$AH !== t && (this._$AR(), this._$AH = this.k(t));
400
+ }
401
+ _(t) {
402
+ this._$AH !== v && D(this._$AH) ? this._$AA.nextSibling.data = t : this.$(U.createTextNode(t)), this._$AH = t;
403
+ }
404
+ g(t) {
405
+ var e;
406
+ const { values: i, _$litType$: s } = t, o = typeof s == "number" ? this._$AC(t) : (s.el === void 0 && (s.el = ut.createElement(Ft(s.h, s.h[0]), this.options)), s);
407
+ if (((e = this._$AH) === null || e === void 0 ? void 0 : e._$AD) === o)
408
+ this._$AH.v(i);
409
+ else {
410
+ const r = new he(o, this), d = r.u(this.options);
411
+ r.v(i), this.$(d), this._$AH = r;
412
+ }
413
+ }
414
+ _$AC(t) {
415
+ let e = Pt.get(t.strings);
416
+ return e === void 0 && Pt.set(t.strings, e = new ut(t)), e;
417
+ }
418
+ T(t) {
419
+ Wt(this._$AH) || (this._$AH = [], this._$AR());
420
+ const e = this._$AH;
421
+ let i, s = 0;
422
+ for (const o of t)
423
+ s === e.length ? e.push(i = new Jt(this.k(J()), this.k(J()), this, this.options)) : i = e[s], i._$AI(o), s++;
424
+ s < e.length && (this._$AR(i && i._$AB.nextSibling, s), e.length = s);
425
+ }
426
+ _$AR(t = this._$AA.nextSibling, e) {
427
+ var i;
428
+ for ((i = this._$AP) === null || i === void 0 || i.call(this, !1, !0, e); t && t !== this._$AB; ) {
429
+ const s = t.nextSibling;
430
+ t.remove(), t = s;
431
+ }
432
+ }
433
+ setConnected(t) {
434
+ var e;
435
+ this._$AM === void 0 && (this._$Cp = t, (e = this._$AP) === null || e === void 0 || e.call(this, t));
436
+ }
437
+ }, Q = class {
438
+ constructor(t, e, i, s, o) {
439
+ this.type = 1, this._$AH = v, this._$AN = void 0, this.element = t, this.name = e, this._$AM = s, this.options = o, i.length > 2 || i[0] !== "" || i[1] !== "" ? (this._$AH = Array(i.length - 1).fill(new String()), this.strings = i) : this._$AH = v;
440
+ }
441
+ get tagName() {
442
+ return this.element.tagName;
443
+ }
444
+ get _$AU() {
445
+ return this._$AM._$AU;
446
+ }
447
+ _$AI(t, e = this, i, s) {
448
+ const o = this.strings;
449
+ let r = !1;
450
+ if (o === void 0)
451
+ t = H(this, t, e, 0), r = !D(t) || t !== this._$AH && t !== j, r && (this._$AH = t);
452
+ else {
453
+ const d = t;
454
+ let l, a;
455
+ for (t = o[0], l = 0; l < o.length - 1; l++)
456
+ a = H(this, d[i + l], e, l), a === j && (a = this._$AH[l]), r || (r = !D(a) || a !== this._$AH[l]), a === v ? t = v : t !== v && (t += (a ?? "") + o[l + 1]), this._$AH[l] = a;
457
+ }
458
+ r && !s && this.j(t);
459
+ }
460
+ j(t) {
461
+ t === v ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
462
+ }
463
+ }, de = class extends Q {
464
+ constructor() {
465
+ super(...arguments), this.type = 3;
466
+ }
467
+ j(t) {
468
+ this.element[this.name] = t === v ? void 0 : t;
469
+ }
470
+ };
471
+ const ce = R ? R.emptyScript : "";
472
+ let ue = class extends Q {
473
+ constructor() {
474
+ super(...arguments), this.type = 4;
475
+ }
476
+ j(t) {
477
+ t && t !== v ? this.element.setAttribute(this.name, ce) : this.element.removeAttribute(this.name);
478
+ }
479
+ }, pe = class extends Q {
480
+ constructor(t, e, i, s, o) {
481
+ super(t, e, i, s, o), this.type = 5;
482
+ }
483
+ _$AI(t, e = this) {
484
+ var i;
485
+ if ((t = (i = H(this, t, e, 0)) !== null && i !== void 0 ? i : v) === j)
486
+ return;
487
+ const s = this._$AH, o = t === v && s !== v || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive, r = t !== v && (s === v || o);
488
+ o && this.element.removeEventListener(this.name, this, s), r && this.element.addEventListener(this.name, this, t), this._$AH = t;
489
+ }
490
+ handleEvent(t) {
491
+ var e, i;
492
+ typeof this._$AH == "function" ? this._$AH.call((i = (e = this.options) === null || e === void 0 ? void 0 : e.host) !== null && i !== void 0 ? i : this.element, t) : this._$AH.handleEvent(t);
493
+ }
494
+ };
495
+ class ve {
496
+ constructor(t, e, i) {
497
+ this.element = t, this.type = 6, this._$AN = void 0, this._$AM = e, this.options = i;
498
+ }
499
+ get _$AU() {
500
+ return this._$AM._$AU;
501
+ }
502
+ _$AI(t) {
503
+ H(this, t);
504
+ }
505
+ }
506
+ const Ct = G.litHtmlPolyfillSupport;
507
+ Ct == null || Ct(ut, Gt), ((st = G.litHtmlVersions) !== null && st !== void 0 ? st : G.litHtmlVersions = []).push("2.8.0");
508
+ /**
509
+ * @license
510
+ * Copyright 2017 Google LLC
511
+ * SPDX-License-Identifier: BSD-3-Clause
512
+ */
513
+ var rt;
514
+ const X = window, N = X.trustedTypes, Ut = N ? N.createPolicy("lit-html", { createHTML: (n) => n }) : void 0, pt = "$lit$", w = `lit$${(Math.random() + "").slice(9)}$`, Xt = "?" + w, _e = `<${Xt}>`, T = document, B = () => T.createComment(""), z = (n) => n === null || typeof n != "object" && typeof n != "function", Yt = Array.isArray, $e = (n) => Yt(n) || typeof (n == null ? void 0 : n[Symbol.iterator]) == "function", ot = `[
515
+ \f\r]`, k = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Tt = /-->/g, xt = />/g, S = RegExp(`>|${ot}(?:([^\\s"'>=/]+)(${ot}*=${ot}*(?:[^
516
+ \f\r"'\`<>=]|("|')|))|$)`, "g"), Rt = /'/g, Ht = /"/g, Qt = /^(?:script|style|textarea|title)$/i, me = (n) => (t, ...e) => ({ _$litType$: n, strings: t, values: e }), ge = me(1), I = Symbol.for("lit-noChange"), _ = Symbol.for("lit-nothing"), Nt = /* @__PURE__ */ new WeakMap(), C = T.createTreeWalker(T, 129, null, !1), fe = (n, t) => {
517
+ const e = n.length - 1, i = [];
518
+ let s, o = t === 2 ? "<svg>" : "", r = k;
519
+ for (let l = 0; l < e; l++) {
520
+ const a = n[l];
521
+ let u, h, c = -1, p = 0;
522
+ for (; p < a.length && (r.lastIndex = p, h = r.exec(a), h !== null); )
523
+ p = r.lastIndex, r === k ? h[1] === "!--" ? r = Tt : h[1] !== void 0 ? r = xt : h[2] !== void 0 ? (Qt.test(h[2]) && (s = RegExp("</" + h[2], "g")), r = S) : h[3] !== void 0 && (r = S) : r === S ? h[0] === ">" ? (r = s ?? k, c = -1) : h[1] === void 0 ? c = -2 : (c = r.lastIndex - h[2].length, u = h[1], r = h[3] === void 0 ? S : h[3] === '"' ? Ht : Rt) : r === Ht || r === Rt ? r = S : r === Tt || r === xt ? r = k : (r = S, s = void 0);
524
+ const y = r === S && n[l + 1].startsWith("/>") ? " " : "";
525
+ o += r === k ? a + _e : c >= 0 ? (i.push(u), a.slice(0, c) + pt + a.slice(c) + w + y) : a + w + (c === -2 ? (i.push(void 0), l) : y);
526
+ }
527
+ const d = o + (n[e] || "<?>") + (t === 2 ? "</svg>" : "");
528
+ if (!Array.isArray(n) || !n.hasOwnProperty("raw"))
529
+ throw Error("invalid template strings array");
530
+ return [Ut !== void 0 ? Ut.createHTML(d) : d, i];
531
+ };
532
+ class q {
533
+ constructor({ strings: t, _$litType$: e }, i) {
534
+ let s;
535
+ this.parts = [];
536
+ let o = 0, r = 0;
537
+ const d = t.length - 1, l = this.parts, [a, u] = fe(t, e);
538
+ if (this.el = q.createElement(a, i), C.currentNode = this.el.content, e === 2) {
539
+ const h = this.el.content, c = h.firstChild;
540
+ c.remove(), h.append(...c.childNodes);
541
+ }
542
+ for (; (s = C.nextNode()) !== null && l.length < d; ) {
543
+ if (s.nodeType === 1) {
544
+ if (s.hasAttributes()) {
545
+ const h = [];
546
+ for (const c of s.getAttributeNames())
547
+ if (c.endsWith(pt) || c.startsWith(w)) {
548
+ const p = u[r++];
549
+ if (h.push(c), p !== void 0) {
550
+ const y = s.getAttribute(p.toLowerCase() + pt).split(w), m = /([.?@])?(.*)/.exec(p);
551
+ l.push({ type: 1, index: o, name: m[2], strings: y, ctor: m[1] === "." ? ye : m[1] === "?" ? we : m[1] === "@" ? be : tt });
552
+ } else
553
+ l.push({ type: 6, index: o });
554
+ }
555
+ for (const c of h)
556
+ s.removeAttribute(c);
557
+ }
558
+ if (Qt.test(s.tagName)) {
559
+ const h = s.textContent.split(w), c = h.length - 1;
560
+ if (c > 0) {
561
+ s.textContent = N ? N.emptyScript : "";
562
+ for (let p = 0; p < c; p++)
563
+ s.append(h[p], B()), C.nextNode(), l.push({ type: 2, index: ++o });
564
+ s.append(h[c], B());
565
+ }
566
+ }
567
+ } else if (s.nodeType === 8)
568
+ if (s.data === Xt)
569
+ l.push({ type: 2, index: o });
570
+ else {
571
+ let h = -1;
572
+ for (; (h = s.data.indexOf(w, h + 1)) !== -1; )
573
+ l.push({ type: 7, index: o }), h += w.length - 1;
574
+ }
575
+ o++;
576
+ }
577
+ }
578
+ static createElement(t, e) {
579
+ const i = T.createElement("template");
580
+ return i.innerHTML = t, i;
581
+ }
582
+ }
583
+ function V(n, t, e = n, i) {
584
+ var s, o, r, d;
585
+ if (t === I)
586
+ return t;
587
+ let l = i !== void 0 ? (s = e._$Co) === null || s === void 0 ? void 0 : s[i] : e._$Cl;
588
+ const a = z(t) ? void 0 : t._$litDirective$;
589
+ return (l == null ? void 0 : l.constructor) !== a && ((o = l == null ? void 0 : l._$AO) === null || o === void 0 || o.call(l, !1), a === void 0 ? l = void 0 : (l = new a(n), l._$AT(n, e, i)), i !== void 0 ? ((r = (d = e)._$Co) !== null && r !== void 0 ? r : d._$Co = [])[i] = l : e._$Cl = l), l !== void 0 && (t = V(n, l._$AS(n, t.values), l, i)), t;
590
+ }
591
+ class Ae {
592
+ constructor(t, e) {
593
+ this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = e;
594
+ }
595
+ get parentNode() {
596
+ return this._$AM.parentNode;
597
+ }
598
+ get _$AU() {
599
+ return this._$AM._$AU;
600
+ }
601
+ u(t) {
602
+ var e;
603
+ const { el: { content: i }, parts: s } = this._$AD, o = ((e = t == null ? void 0 : t.creationScope) !== null && e !== void 0 ? e : T).importNode(i, !0);
604
+ C.currentNode = o;
605
+ let r = C.nextNode(), d = 0, l = 0, a = s[0];
606
+ for (; a !== void 0; ) {
607
+ if (d === a.index) {
608
+ let u;
609
+ a.type === 2 ? u = new W(r, r.nextSibling, this, t) : a.type === 1 ? u = new a.ctor(r, a.name, a.strings, this, t) : a.type === 6 && (u = new Se(r, this, t)), this._$AV.push(u), a = s[++l];
610
+ }
611
+ d !== (a == null ? void 0 : a.index) && (r = C.nextNode(), d++);
612
+ }
613
+ return C.currentNode = T, o;
614
+ }
615
+ v(t) {
616
+ let e = 0;
617
+ for (const i of this._$AV)
618
+ i !== void 0 && (i.strings !== void 0 ? (i._$AI(t, i, e), e += i.strings.length - 2) : i._$AI(t[e])), e++;
619
+ }
620
+ }
621
+ class W {
622
+ constructor(t, e, i, s) {
623
+ var o;
624
+ this.type = 2, this._$AH = _, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = i, this.options = s, this._$Cp = (o = s == null ? void 0 : s.isConnected) === null || o === void 0 || o;
625
+ }
626
+ get _$AU() {
627
+ var t, e;
628
+ return (e = (t = this._$AM) === null || t === void 0 ? void 0 : t._$AU) !== null && e !== void 0 ? e : this._$Cp;
629
+ }
630
+ get parentNode() {
631
+ let t = this._$AA.parentNode;
632
+ const e = this._$AM;
633
+ return e !== void 0 && (t == null ? void 0 : t.nodeType) === 11 && (t = e.parentNode), t;
634
+ }
635
+ get startNode() {
636
+ return this._$AA;
637
+ }
638
+ get endNode() {
639
+ return this._$AB;
640
+ }
641
+ _$AI(t, e = this) {
642
+ t = V(this, t, e), z(t) ? t === _ || t == null || t === "" ? (this._$AH !== _ && this._$AR(), this._$AH = _) : t !== this._$AH && t !== I && this._(t) : t._$litType$ !== void 0 ? this.g(t) : t.nodeType !== void 0 ? this.$(t) : $e(t) ? this.T(t) : this._(t);
643
+ }
644
+ k(t) {
645
+ return this._$AA.parentNode.insertBefore(t, this._$AB);
646
+ }
647
+ $(t) {
648
+ this._$AH !== t && (this._$AR(), this._$AH = this.k(t));
649
+ }
650
+ _(t) {
651
+ this._$AH !== _ && z(this._$AH) ? this._$AA.nextSibling.data = t : this.$(T.createTextNode(t)), this._$AH = t;
652
+ }
653
+ g(t) {
654
+ var e;
655
+ const { values: i, _$litType$: s } = t, o = typeof s == "number" ? this._$AC(t) : (s.el === void 0 && (s.el = q.createElement(s.h, this.options)), s);
656
+ if (((e = this._$AH) === null || e === void 0 ? void 0 : e._$AD) === o)
657
+ this._$AH.v(i);
658
+ else {
659
+ const r = new Ae(o, this), d = r.u(this.options);
660
+ r.v(i), this.$(d), this._$AH = r;
661
+ }
662
+ }
663
+ _$AC(t) {
664
+ let e = Nt.get(t.strings);
665
+ return e === void 0 && Nt.set(t.strings, e = new q(t)), e;
666
+ }
667
+ T(t) {
668
+ Yt(this._$AH) || (this._$AH = [], this._$AR());
669
+ const e = this._$AH;
670
+ let i, s = 0;
671
+ for (const o of t)
672
+ s === e.length ? e.push(i = new W(this.k(B()), this.k(B()), this, this.options)) : i = e[s], i._$AI(o), s++;
673
+ s < e.length && (this._$AR(i && i._$AB.nextSibling, s), e.length = s);
674
+ }
675
+ _$AR(t = this._$AA.nextSibling, e) {
676
+ var i;
677
+ for ((i = this._$AP) === null || i === void 0 || i.call(this, !1, !0, e); t && t !== this._$AB; ) {
678
+ const s = t.nextSibling;
679
+ t.remove(), t = s;
680
+ }
681
+ }
682
+ setConnected(t) {
683
+ var e;
684
+ this._$AM === void 0 && (this._$Cp = t, (e = this._$AP) === null || e === void 0 || e.call(this, t));
685
+ }
686
+ }
687
+ class tt {
688
+ constructor(t, e, i, s, o) {
689
+ this.type = 1, this._$AH = _, this._$AN = void 0, this.element = t, this.name = e, this._$AM = s, this.options = o, i.length > 2 || i[0] !== "" || i[1] !== "" ? (this._$AH = Array(i.length - 1).fill(new String()), this.strings = i) : this._$AH = _;
690
+ }
691
+ get tagName() {
692
+ return this.element.tagName;
693
+ }
694
+ get _$AU() {
695
+ return this._$AM._$AU;
696
+ }
697
+ _$AI(t, e = this, i, s) {
698
+ const o = this.strings;
699
+ let r = !1;
700
+ if (o === void 0)
701
+ t = V(this, t, e, 0), r = !z(t) || t !== this._$AH && t !== I, r && (this._$AH = t);
702
+ else {
703
+ const d = t;
704
+ let l, a;
705
+ for (t = o[0], l = 0; l < o.length - 1; l++)
706
+ a = V(this, d[i + l], e, l), a === I && (a = this._$AH[l]), r || (r = !z(a) || a !== this._$AH[l]), a === _ ? t = _ : t !== _ && (t += (a ?? "") + o[l + 1]), this._$AH[l] = a;
707
+ }
708
+ r && !s && this.j(t);
709
+ }
710
+ j(t) {
711
+ t === _ ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
712
+ }
713
+ }
714
+ class ye extends tt {
715
+ constructor() {
716
+ super(...arguments), this.type = 3;
717
+ }
718
+ j(t) {
719
+ this.element[this.name] = t === _ ? void 0 : t;
720
+ }
721
+ }
722
+ const Ee = N ? N.emptyScript : "";
723
+ class we extends tt {
724
+ constructor() {
725
+ super(...arguments), this.type = 4;
726
+ }
727
+ j(t) {
728
+ t && t !== _ ? this.element.setAttribute(this.name, Ee) : this.element.removeAttribute(this.name);
729
+ }
730
+ }
731
+ class be extends tt {
732
+ constructor(t, e, i, s, o) {
733
+ super(t, e, i, s, o), this.type = 5;
734
+ }
735
+ _$AI(t, e = this) {
736
+ var i;
737
+ if ((t = (i = V(this, t, e, 0)) !== null && i !== void 0 ? i : _) === I)
738
+ return;
739
+ const s = this._$AH, o = t === _ && s !== _ || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive, r = t !== _ && (s === _ || o);
740
+ o && this.element.removeEventListener(this.name, this, s), r && this.element.addEventListener(this.name, this, t), this._$AH = t;
741
+ }
742
+ handleEvent(t) {
743
+ var e, i;
744
+ typeof this._$AH == "function" ? this._$AH.call((i = (e = this.options) === null || e === void 0 ? void 0 : e.host) !== null && i !== void 0 ? i : this.element, t) : this._$AH.handleEvent(t);
745
+ }
746
+ }
747
+ class Se {
748
+ constructor(t, e, i) {
749
+ this.element = t, this.type = 6, this._$AN = void 0, this._$AM = e, this.options = i;
750
+ }
751
+ get _$AU() {
752
+ return this._$AM._$AU;
753
+ }
754
+ _$AI(t) {
755
+ V(this, t);
756
+ }
757
+ }
758
+ const It = X.litHtmlPolyfillSupport;
759
+ It == null || It(q, W), ((rt = X.litHtmlVersions) !== null && rt !== void 0 ? rt : X.litHtmlVersions = []).push("2.7.4");
760
+ const Pe = (n, t, e) => {
761
+ var i, s;
762
+ const o = (i = e == null ? void 0 : e.renderBefore) !== null && i !== void 0 ? i : t;
763
+ let r = o._$litPart$;
764
+ if (r === void 0) {
765
+ const d = (s = e == null ? void 0 : e.renderBefore) !== null && s !== void 0 ? s : null;
766
+ o._$litPart$ = r = new W(t.insertBefore(B(), d), d, void 0, e ?? {});
767
+ }
768
+ return r._$AI(n), r;
769
+ };
770
+ /**
771
+ * @license
772
+ * Copyright 2017 Google LLC
773
+ * SPDX-License-Identifier: BSD-3-Clause
774
+ */
775
+ var lt, at;
776
+ class L extends x {
777
+ constructor() {
778
+ super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
779
+ }
780
+ createRenderRoot() {
781
+ var t, e;
782
+ const i = super.createRenderRoot();
783
+ return (t = (e = this.renderOptions).renderBefore) !== null && t !== void 0 || (e.renderBefore = i.firstChild), i;
784
+ }
785
+ update(t) {
786
+ const e = this.render();
787
+ this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = Pe(e, this.renderRoot, this.renderOptions);
788
+ }
789
+ connectedCallback() {
790
+ var t;
791
+ super.connectedCallback(), (t = this._$Do) === null || t === void 0 || t.setConnected(!0);
792
+ }
793
+ disconnectedCallback() {
794
+ var t;
795
+ super.disconnectedCallback(), (t = this._$Do) === null || t === void 0 || t.setConnected(!1);
796
+ }
797
+ render() {
798
+ return I;
799
+ }
800
+ }
801
+ L.finalized = !0, L._$litElement$ = !0, (lt = globalThis.litElementHydrateSupport) === null || lt === void 0 || lt.call(globalThis, { LitElement: L });
802
+ const Vt = globalThis.litElementPolyfillSupport;
803
+ Vt == null || Vt({ LitElement: L });
804
+ ((at = globalThis.litElementVersions) !== null && at !== void 0 ? at : globalThis.litElementVersions = []).push("3.3.2");
805
+ function Ce(n, t, e) {
806
+ function i(s) {
807
+ e.dispatchEvent(new CustomEvent(s.type, s));
808
+ }
809
+ return t.addEventListener(n, i), () => {
810
+ t.removeEventListener(n, i);
811
+ };
812
+ }
813
+ class Ue {
814
+ constructor(t, e) {
815
+ this._events = [], this._cleanup = [], this._forwardElementRef = Dt(), this.host = t, this._events = e, t.addController(this);
816
+ }
817
+ register() {
818
+ return jt(this._forwardElementRef);
819
+ }
820
+ hostConnected() {
821
+ requestAnimationFrame(() => {
822
+ this._events.forEach((t) => {
823
+ this._forwardElementRef.value && this._cleanup.push(Ce(t, this._forwardElementRef.value, this.host));
824
+ });
825
+ });
826
+ }
827
+ hostDisconnected() {
828
+ this._cleanup.forEach((t) => {
829
+ t();
830
+ }), this._cleanup = [];
831
+ }
832
+ }
833
+ const Ot = "https://d2rxhdlm2q91uk.cloudfront.net", Te = "https://d1ix11aj5kfygl.cloudfront.net", xe = "https://d157jlwnudd93d.cloudfront.net", kt = "https://bshyfw4h5a.execute-api.ap-southeast-2.amazonaws.com/dev", Re = "https://gyzw7rpbq3.execute-api.ap-southeast-2.amazonaws.com/staging", He = "https://vfcjuim1l3.execute-api.ap-southeast-2.amazonaws.com/prod", Ne = "http://localhost:6060/v2", Ie = "https://embed-dev.vouchfor.com/v2", Ve = "https://embed-staging.vouchfor.com/v2", Oe = "https://embed.vouchfor.com/v2";
834
+ function Y(n) {
835
+ if (!["local", "dev", "staging", "prod"].includes(n))
836
+ throw new Error(`Unknown environment: ${n}`);
837
+ if (n === "local")
838
+ return {
839
+ videoUrl: Ot,
840
+ publicApiUrl: kt,
841
+ embedApiUrl: Ne
842
+ };
843
+ if (n === "dev")
844
+ return {
845
+ videoUrl: Ot,
846
+ publicApiUrl: kt,
847
+ embedApiUrl: Ie
848
+ };
849
+ if (n === "staging")
850
+ return {
851
+ videoUrl: Te,
852
+ publicApiUrl: Re,
853
+ embedApiUrl: Ve
854
+ };
855
+ if (n === "prod")
856
+ return {
857
+ videoUrl: xe,
858
+ publicApiUrl: He,
859
+ embedApiUrl: Oe
860
+ };
861
+ }
862
+ class ke {
863
+ constructor(t) {
864
+ this._fetching = !1, this.getVouch = async (e, i, s) => {
865
+ const { embedApiUrl: o } = Y(e), r = await fetch(`${o}/vouches/${s}`, {
866
+ method: "GET",
867
+ headers: [["X-Api-Key", i]]
868
+ }).then((d) => (this.host.dispatchEvent(new CustomEvent("vouch:loaded", { detail: s })), d.json()));
869
+ return fetch(`${o}/vouches/${s}`, {
870
+ method: "GET",
871
+ headers: [
872
+ ["X-Api-Key", i],
873
+ ["Cache-Control", "max-age=0"]
874
+ ]
875
+ }), r;
876
+ }, this.getTemplate = async (e, i, s) => {
877
+ const { embedApiUrl: o } = Y(e), r = await fetch(`${o}/templates/${s}`, {
878
+ method: "GET",
879
+ headers: [["X-Api-Key", i]]
880
+ }).then((d) => d.json());
881
+ return fetch(`${o}/templates/${s}`, {
882
+ method: "GET",
883
+ headers: [
884
+ ["X-Api-Key", i],
885
+ ["Cache-Control", "max-age=0"]
886
+ ]
887
+ }), r;
888
+ }, this.host = t, new ee(
889
+ this.host,
890
+ async ([e, i, s, o, r]) => {
891
+ var d, l, a, u;
892
+ try {
893
+ if (t.vouch = void 0, t.template = void 0, s) {
894
+ let h;
895
+ r && (this.fetching = !0, h = await this.getTemplate(e, i, r)), t.vouch = s, t.template = h ?? ((l = (d = s == null ? void 0 : s.settings) == null ? void 0 : d.template) == null ? void 0 : l.instance);
896
+ } else if (o) {
897
+ this.fetching = !0;
898
+ const [h, c] = await Promise.all([
899
+ this.getVouch(e, i, o),
900
+ r ? this.getTemplate(e, i, r) : null
901
+ ]);
902
+ t.vouch = h, t.template = c ?? ((u = (a = h == null ? void 0 : h.settings) == null ? void 0 : a.template) == null ? void 0 : u.instance);
903
+ }
904
+ } finally {
905
+ this.fetching = !1;
906
+ }
907
+ },
908
+ () => [t.env, t.apiKey, t.data, t.vouchId, t.templateId]
909
+ );
910
+ }
911
+ set fetching(t) {
912
+ this._fetching !== t && (this._fetching = t, this.host.requestUpdate());
913
+ }
914
+ get fetching() {
915
+ return this._fetching;
916
+ }
917
+ }
918
+ let Z;
919
+ const Me = new Uint8Array(16);
920
+ function Le() {
921
+ if (!Z && (Z = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !Z))
922
+ throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
923
+ return Z(Me);
924
+ }
925
+ const $ = [];
926
+ for (let n = 0; n < 256; ++n)
927
+ $.push((n + 256).toString(16).slice(1));
928
+ function De(n, t = 0) {
929
+ return $[n[t + 0]] + $[n[t + 1]] + $[n[t + 2]] + $[n[t + 3]] + "-" + $[n[t + 4]] + $[n[t + 5]] + "-" + $[n[t + 6]] + $[n[t + 7]] + "-" + $[n[t + 8]] + $[n[t + 9]] + "-" + $[n[t + 10]] + $[n[t + 11]] + $[n[t + 12]] + $[n[t + 13]] + $[n[t + 14]] + $[n[t + 15]];
930
+ }
931
+ const je = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Mt = {
932
+ randomUUID: je
933
+ };
934
+ function M(n, t, e) {
935
+ if (Mt.randomUUID && !t && !n)
936
+ return Mt.randomUUID();
937
+ n = n || {};
938
+ const i = n.random || (n.rng || Le)();
939
+ if (i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128, t) {
940
+ e = e || 0;
941
+ for (let s = 0; s < 16; ++s)
942
+ t[e + s] = i[s];
943
+ return t;
944
+ }
945
+ return De(i);
946
+ }
947
+ const Be = 2e3;
948
+ class ze {
949
+ constructor(t) {
950
+ this._tabId = void 0, this._clientId = void 0, this._visitorId = void 0, this._hasPlayed = !1, this._hasLoaded = {}, this._answersViewed = {}, this._streamedTime = {}, this._streamedPrevTimestamp = {}, this._createVisitor = (e) => {
951
+ var s, o;
952
+ const { publicApiUrl: i } = Y(this.host.env);
953
+ return (o = (s = window.localStorage) == null ? void 0 : s.setItem) == null || o.call(s, "vouch-uid-visitor", e), navigator.sendBeacon(`${i}/api/visitor`, JSON.stringify({ visitorId: e })), e;
954
+ }, this._getReportingMetadata = () => {
955
+ var o, r;
956
+ const [e, i] = ((r = (o = Intl.DateTimeFormat().resolvedOptions().timeZone) == null ? void 0 : o.split) == null ? void 0 : r.call(o, "/")) ?? [], s = {};
957
+ return [...new URLSearchParams(location.search).entries()].forEach(([d, l]) => {
958
+ if (/utm/.test(d)) {
959
+ const a = d.toLowerCase().replace(/[-_][a-z0-9]/g, (u) => u.slice(-1).toUpperCase());
960
+ s[a] = l;
961
+ }
962
+ }), {
963
+ source: this.host.trackingSource,
964
+ time: /* @__PURE__ */ new Date(),
965
+ region: i,
966
+ country: e,
967
+ screenHeight: window.screen.height,
968
+ screenWidth: window.screen.width,
969
+ referrer: document.referrer,
970
+ currentUrl: location.href,
971
+ ...s
972
+ };
973
+ }, this._sendTrackingEvent = (e, i) => {
974
+ const { publicApiUrl: s } = Y(this.host.env), { client: o, tab: r, request: d, visitor: l } = this._getUids();
975
+ navigator.sendBeacon(
976
+ `${s}/api/events`,
977
+ JSON.stringify({
978
+ event: e,
979
+ payload: i,
980
+ context: {
981
+ "x-uid-client": o,
982
+ "x-uid-tab": r,
983
+ "x-uid-request": d,
984
+ "x-uid-visitor": l,
985
+ "x-reporting-metadata": this._getReportingMetadata()
986
+ }
987
+ })
988
+ );
989
+ }, this._handleVouchLoaded = ({ detail: e }) => {
990
+ e && (this._hasLoaded[e] || (this._sendTrackingEvent("VOUCH_LOADED", {
991
+ vouchId: e
992
+ }), this._hasLoaded[e] = !0));
993
+ }, this._handlePlay = () => {
994
+ const e = this._findVouchId();
995
+ e && (this._hasPlayed || (this._sendTrackingEvent("VIDEO_PLAYED", {
996
+ vouchId: e,
997
+ streamStart: this.host.currentTime
998
+ }), this._hasPlayed = !0));
999
+ }, this._handleVideoPlay = ({ detail: { id: e, node: i } }) => {
1000
+ const s = this._findVouchId();
1001
+ s && (this._answersViewed[e] || (this._sendTrackingEvent("VOUCH_RESPONSE_VIEWED", {
1002
+ vouchId: s,
1003
+ answerId: e
1004
+ }), this._answersViewed[e] = !0), this._streamedTime[e] = i.currentTime, this._streamedPrevTimestamp[e] = Date.now());
1005
+ }, this._handleVideoTimeUpdate = ({ detail: { id: e, node: i } }) => {
1006
+ var r, d;
1007
+ const s = this._findVouchId();
1008
+ if (!s)
1009
+ return;
1010
+ const o = Date.now();
1011
+ !this.host.paused && // Only fire the video seeked event when this video is the active one
1012
+ e === ((d = (r = this.host.scene) == null ? void 0 : r.video) == null ? void 0 : d.id) && // Throttle the frequency that we send streamed events while playing
1013
+ o - this._streamedPrevTimestamp[e] > Be && (this._sendTrackingEvent("VIDEO_STREAMED", {
1014
+ vouchId: s,
1015
+ answerId: e,
1016
+ streamStart: this._streamedTime[e],
1017
+ streamEnd: i.currentTime
1018
+ }), this._streamedTime[e] = i.currentTime, this._streamedPrevTimestamp[e] = o);
1019
+ }, this._handleVideoPause = ({ detail: { id: e, node: i } }) => {
1020
+ const s = this._findVouchId();
1021
+ s && (this._sendTrackingEvent("VIDEO_STREAMED", {
1022
+ vouchId: s,
1023
+ answerId: e,
1024
+ streamStart: this._streamedTime[e],
1025
+ streamEnd: i.currentTime
1026
+ }), delete this._streamedTime[e], delete this._streamedPrevTimestamp[e]);
1027
+ }, this.host = t, t.addController(this);
1028
+ }
1029
+ _findVouchId() {
1030
+ if (this.host.data)
1031
+ return "uuid" in this.host.data ? this.host.data.uuid : this.host.data.id;
1032
+ }
1033
+ _getUids() {
1034
+ var o, r, d, l, a, u, h, c, p, y, m, _t;
1035
+ if (typeof window > "u")
1036
+ return {
1037
+ client: null,
1038
+ tab: null,
1039
+ request: M()
1040
+ };
1041
+ const t = this._visitorId || ((r = (o = window.localStorage) == null ? void 0 : o.getItem) == null ? void 0 : r.call(o, "vouch-uid-visitor")) || this._createVisitor(M()), e = this._clientId || ((l = (d = window.localStorage) == null ? void 0 : d.getItem) == null ? void 0 : l.call(d, "vouch-uid-client")) || M(), i = this._tabId || ((u = (a = window.sessionStorage) == null ? void 0 : a.getItem) == null ? void 0 : u.call(a, "vouch-uid-tab")) || M(), s = M();
1042
+ return t !== this._visitorId && (this._visitorId = t, (c = (h = window.localStorage) == null ? void 0 : h.setItem) == null || c.call(h, "vouch-uid-visitor", t)), e !== this._clientId && (this._clientId = e, (y = (p = window.localStorage) == null ? void 0 : p.setItem) == null || y.call(p, "vouch-uid-client", e)), i !== this._tabId && (this._tabId = i, (_t = (m = window.sessionStorage) == null ? void 0 : m.setItem) == null || _t.call(m, "vouch-uid-tab", i)), {
1043
+ client: e,
1044
+ tab: i,
1045
+ request: s,
1046
+ visitor: t
1047
+ };
1048
+ }
1049
+ hostConnected() {
1050
+ requestAnimationFrame(() => {
1051
+ var t, e, i, s;
1052
+ this.host.addEventListener("vouch:loaded", this._handleVouchLoaded), (t = this.host.mediaPlayer) == null || t.addEventListener("play", this._handlePlay), (e = this.host.mediaPlayer) == null || e.addEventListener("video:play", this._handleVideoPlay), (i = this.host.mediaPlayer) == null || i.addEventListener("video:pause", this._handleVideoPause), (s = this.host.mediaPlayer) == null || s.addEventListener("video:timeupdate", this._handleVideoTimeUpdate);
1053
+ });
1054
+ }
1055
+ hostDisconnected() {
1056
+ var t, e, i, s;
1057
+ this.host.removeEventListener("vouch:loaded", this._handleVouchLoaded), (t = this.host.mediaPlayer) == null || t.removeEventListener("play", this._handlePlay), (e = this.host.mediaPlayer) == null || e.removeEventListener("video:play", this._handleVideoPlay), (i = this.host.mediaPlayer) == null || i.removeEventListener("video:pause", this._handleVideoPause), (s = this.host.mediaPlayer) == null || s.removeEventListener("video:timeupdate", this._handleVideoTimeUpdate);
1058
+ }
1059
+ }
1060
+ var qe = Object.defineProperty, We = Object.getOwnPropertyDescriptor, f = (n, t, e, i) => {
1061
+ for (var s = i > 1 ? void 0 : i ? We(t, e) : t, o = n.length - 1, r; o >= 0; o--)
1062
+ (r = n[o]) && (s = (i ? r(t, e, s) : r(s)) || s);
1063
+ return i && s && qe(t, e, s), s;
1064
+ };
1065
+ let g = class extends L {
1066
+ constructor() {
1067
+ super(...arguments), this._mediaPlayerRef = Dt(), this.env = "prod", this.apiKey = "", this.trackingSource = "embed", this.preload = "auto", this.autoplay = !1, this.aspectRatio = 0, this.eventController = new Ue(this, [
1068
+ "durationchange",
1069
+ "ended",
1070
+ "error",
1071
+ "loadeddata",
1072
+ "pause",
1073
+ "stalled",
1074
+ "play",
1075
+ "playing",
1076
+ "ratechange",
1077
+ "scenechange",
1078
+ "seeking",
1079
+ "seeked",
1080
+ "timeupdate",
1081
+ "volumechange",
1082
+ "waiting",
1083
+ "video:loadeddata",
1084
+ "video:seeked",
1085
+ "video:play",
1086
+ "video:playing",
1087
+ "video:pause",
1088
+ "video:stalled",
1089
+ "video:timeupdate",
1090
+ "video:ended",
1091
+ "video:error"
1092
+ ]), this._fetcherController = new ke(this), this._trackingController = new ze(this);
1093
+ }
1094
+ get fetching() {
1095
+ return this._fetcherController.fetching;
1096
+ }
1097
+ get waiting() {
1098
+ var n;
1099
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.waiting;
1100
+ }
1101
+ get seeking() {
1102
+ var n;
1103
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.seeking;
1104
+ }
1105
+ get paused() {
1106
+ var n;
1107
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.paused;
1108
+ }
1109
+ get captions() {
1110
+ var n;
1111
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.captions;
1112
+ }
1113
+ get fullscreen() {
1114
+ var n;
1115
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.fullscreen;
1116
+ }
1117
+ get duration() {
1118
+ var n;
1119
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.duration;
1120
+ }
1121
+ set currentTime(n) {
1122
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.currentTime = n);
1123
+ }
1124
+ get currentTime() {
1125
+ var n;
1126
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.currentTime) ?? 0;
1127
+ }
1128
+ set playbackRate(n) {
1129
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.playbackRate = n);
1130
+ }
1131
+ get playbackRate() {
1132
+ var n;
1133
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.playbackRate) ?? 1;
1134
+ }
1135
+ set volume(n) {
1136
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.volume = n);
1137
+ }
1138
+ get volume() {
1139
+ var n;
1140
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.volume) ?? 1;
1141
+ }
1142
+ set muted(n) {
1143
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.muted = n);
1144
+ }
1145
+ get muted() {
1146
+ var n;
1147
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.muted) ?? !1;
1148
+ }
1149
+ get scene() {
1150
+ var n;
1151
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.scene) ?? null;
1152
+ }
1153
+ get scenes() {
1154
+ var n;
1155
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.scenes) ?? [];
1156
+ }
1157
+ get videoState() {
1158
+ var n;
1159
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.videoState;
1160
+ }
1161
+ get mediaPlayer() {
1162
+ return this._mediaPlayerRef.value;
1163
+ }
1164
+ play() {
1165
+ var n;
1166
+ (n = this._mediaPlayerRef.value) == null || n.play();
1167
+ }
1168
+ pause() {
1169
+ var n;
1170
+ (n = this._mediaPlayerRef.value) == null || n.pause();
1171
+ }
1172
+ setScene(n) {
1173
+ var t;
1174
+ (t = this._mediaPlayerRef.value) == null || t.setScene(n);
1175
+ }
1176
+ render() {
1177
+ return ge`
1178
+ <vmp-new-media-player
1179
+ ${jt(this._mediaPlayerRef)}
1180
+ ${this.eventController.register()}
1181
+ ?autoplay=${this.autoplay}
1182
+ ?loading=${this.fetching}
1183
+ .data=${this.vouch}
1184
+ .template=${this.template}
1185
+ aspectRatio=${$t(this.aspectRatio)}
1186
+ preload=${$t(this.preload)}
1187
+ .controls=${this.controls}
1188
+ ></vmp-new-media-player>
1189
+ `;
1190
+ }
1191
+ };
1192
+ f([
1193
+ A({ type: Object, attribute: "data" })
1194
+ ], g.prototype, "data", 2);
1195
+ f([
1196
+ A({ type: String })
1197
+ ], g.prototype, "vouchId", 2);
1198
+ f([
1199
+ A({ type: String })
1200
+ ], g.prototype, "templateId", 2);
1201
+ f([
1202
+ A({ type: String })
1203
+ ], g.prototype, "env", 2);
1204
+ f([
1205
+ A({ type: String })
1206
+ ], g.prototype, "apiKey", 2);
1207
+ f([
1208
+ A({ type: String })
1209
+ ], g.prototype, "trackingSource", 2);
1210
+ f([
1211
+ A({ type: Array })
1212
+ ], g.prototype, "controls", 2);
1213
+ f([
1214
+ A({ type: String })
1215
+ ], g.prototype, "preload", 2);
1216
+ f([
1217
+ A({ type: Boolean })
1218
+ ], g.prototype, "autoplay", 2);
1219
+ f([
1220
+ A({ type: Number })
1221
+ ], g.prototype, "aspectRatio", 2);
1222
+ f([
1223
+ Lt()
1224
+ ], g.prototype, "vouch", 2);
1225
+ f([
1226
+ Lt()
1227
+ ], g.prototype, "template", 2);
1228
+ g = f([
1229
+ te("vouch-embed")
1230
+ ], g);
13
1231
  export {
14
- p as InlineEmbed
1232
+ g as Embed
15
1233
  };
16
1234
  //# sourceMappingURL=embeds.js.map