@vouchfor/embeds 0.0.0-experiment.29a8d8f → 0.0.0-experiment.2ab669a

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,1221 @@
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 y, state as Lt, customElement as Qt } from "lit/decorators.js";
2
+ import { ifDefined as mt } from "lit/directives/if-defined.js";
3
+ import { createRef as kt, ref as Dt } from "lit/directives/ref.js";
4
+ import { Task as te } 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, _t = F.ShadowRoot && (F.ShadyCSS === void 0 || F.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, jt = Symbol(), gt = /* @__PURE__ */ new WeakMap();
12
+ let ee = class {
13
+ constructor(t, e, i) {
14
+ if (this._$cssResult$ = !0, i !== jt)
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 (_t && t === void 0) {
22
+ const i = e !== void 0 && e.length === 1;
23
+ i && (t = gt.get(e)), t === void 0 && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), i && gt.set(e, t));
24
+ }
25
+ return t;
26
+ }
27
+ toString() {
28
+ return this.cssText;
29
+ }
30
+ };
31
+ const ie = (n) => new ee(typeof n == "string" ? n : n + "", void 0, jt), se = (n, t) => {
32
+ _t ? 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
+ }, ft = _t ? (n) => n : (n) => n instanceof CSSStyleSheet ? ((t) => {
37
+ let e = "";
38
+ for (const i of t.cssRules)
39
+ e += i.cssText;
40
+ return ie(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, At = K.trustedTypes, ne = At ? At.emptyScript : "", yt = K.reactiveElementPolyfillSupport, dt = { toAttribute(n, t) {
49
+ switch (t) {
50
+ case Boolean:
51
+ n = n ? ne : 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
+ } }, Bt = (n, t) => t !== n && (t == t || n == n), it = { attribute: !0, type: String, converter: dt, reflect: !1, hasChanged: Bt }, ct = "finalized";
77
+ let T = 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 r = this[t];
104
+ this[e] = s, this.requestUpdate(t, r, 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(ct))
112
+ return !1;
113
+ this[ct] = !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(ft(s));
128
+ } else
129
+ t !== void 0 && e.push(ft(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 se(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 r = this.constructor._$Ep(t, i);
180
+ if (r !== void 0 && i.reflect === !0) {
181
+ const o = (((s = i.converter) === null || s === void 0 ? void 0 : s.toAttribute) !== void 0 ? i.converter : dt).toAttribute(e, i.type);
182
+ this._$El = t, o == null ? this.removeAttribute(r) : this.setAttribute(r, o), this._$El = null;
183
+ }
184
+ }
185
+ _$AK(t, e) {
186
+ var i;
187
+ const s = this.constructor, r = s._$Ev.get(t);
188
+ if (r !== void 0 && this._$El !== r) {
189
+ const o = s.getPropertyOptions(r), d = typeof o.converter == "function" ? { fromAttribute: o.converter } : ((i = o.converter) === null || i === void 0 ? void 0 : i.fromAttribute) !== void 0 ? o.converter : dt;
190
+ this._$El = r, this[r] = d.fromAttribute(e, o.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 || Bt)(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, r) => this[r] = 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 r;
220
+ return (r = s.hostUpdate) === null || r === void 0 ? void 0 : r.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
+ T[ct] = !0, T.elementProperties = /* @__PURE__ */ new Map(), T.elementStyles = [], T.shadowRootOptions = { mode: "open" }, yt == null || yt({ ReactiveElement: T }), ((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 J = window, x = J.trustedTypes, Et = x ? x.createPolicy("lit-html", { createHTML: (n) => n }) : void 0, ut = "$lit$", E = `lit$${(Math.random() + "").slice(9)}$`, zt = "?" + E, re = `<${zt}>`, C = document, G = () => C.createComment(""), D = (n) => n === null || typeof n != "object" && typeof n != "function", qt = Array.isArray, oe = (n) => qt(n) || typeof (n == null ? void 0 : n[Symbol.iterator]) == "function", nt = `[
264
+ \f\r]`, O = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, wt = /-->/g, bt = />/g, b = RegExp(`>|${nt}(?:([^\\s"'>=/]+)(${nt}*=${nt}*(?:[^
265
+ \f\r"'\`<>=]|("|')|))|$)`, "g"), St = /'/g, Pt = /"/g, Wt = /^(?:script|style|textarea|title)$/i, j = Symbol.for("lit-noChange"), v = Symbol.for("lit-nothing"), Ut = /* @__PURE__ */ new WeakMap(), P = C.createTreeWalker(C, 129, null, !1);
266
+ function Zt(n, t) {
267
+ if (!Array.isArray(n) || !n.hasOwnProperty("raw"))
268
+ throw Error("invalid template strings array");
269
+ return Et !== void 0 ? Et.createHTML(t) : t;
270
+ }
271
+ const le = (n, t) => {
272
+ const e = n.length - 1, i = [];
273
+ let s, r = t === 2 ? "<svg>" : "", o = 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 && (o.lastIndex = c, u = o.exec(l), u !== null); )
278
+ c = o.lastIndex, o === O ? u[1] === "!--" ? o = wt : u[1] !== void 0 ? o = bt : u[2] !== void 0 ? (Wt.test(u[2]) && (s = RegExp("</" + u[2], "g")), o = b) : u[3] !== void 0 && (o = b) : o === b ? u[0] === ">" ? (o = s ?? O, h = -1) : u[1] === void 0 ? h = -2 : (h = o.lastIndex - u[2].length, a = u[1], o = u[3] === void 0 ? b : u[3] === '"' ? Pt : St) : o === Pt || o === St ? o = b : o === wt || o === bt ? o = O : (o = b, s = void 0);
279
+ const p = o === b && n[d + 1].startsWith("/>") ? " " : "";
280
+ r += o === O ? l + re : h >= 0 ? (i.push(a), l.slice(0, h) + ut + l.slice(h) + E + p) : l + E + (h === -2 ? (i.push(void 0), d) : p);
281
+ }
282
+ return [Zt(n, r + (n[e] || "<?>") + (t === 2 ? "</svg>" : "")), i];
283
+ };
284
+ let pt = class Ft {
285
+ constructor({ strings: t, _$litType$: e }, i) {
286
+ let s;
287
+ this.parts = [];
288
+ let r = 0, o = 0;
289
+ const d = t.length - 1, l = this.parts, [a, u] = le(t, e);
290
+ if (this.el = Ft.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(ut) || c.startsWith(E)) {
300
+ const p = u[o++];
301
+ if (h.push(c), p !== void 0) {
302
+ const A = s.getAttribute(p.toLowerCase() + ut).split(E), m = /([.?@])?(.*)/.exec(p);
303
+ l.push({ type: 1, index: r, name: m[2], strings: A, ctor: m[1] === "." ? he : m[1] === "?" ? ce : m[1] === "@" ? ue : Q });
304
+ } else
305
+ l.push({ type: 6, index: r });
306
+ }
307
+ for (const c of h)
308
+ s.removeAttribute(c);
309
+ }
310
+ if (Wt.test(s.tagName)) {
311
+ const h = s.textContent.split(E), c = h.length - 1;
312
+ if (c > 0) {
313
+ s.textContent = x ? x.emptyScript : "";
314
+ for (let p = 0; p < c; p++)
315
+ s.append(h[p], G()), P.nextNode(), l.push({ type: 2, index: ++r });
316
+ s.append(h[c], G());
317
+ }
318
+ }
319
+ } else if (s.nodeType === 8)
320
+ if (s.data === zt)
321
+ l.push({ type: 2, index: r });
322
+ else {
323
+ let h = -1;
324
+ for (; (h = s.data.indexOf(E, h + 1)) !== -1; )
325
+ l.push({ type: 7, index: r }), h += E.length - 1;
326
+ }
327
+ r++;
328
+ }
329
+ }
330
+ static createElement(t, e) {
331
+ const i = C.createElement("template");
332
+ return i.innerHTML = t, i;
333
+ }
334
+ };
335
+ function H(n, t, e = n, i) {
336
+ var s, r, o, 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 && ((r = l == null ? void 0 : l._$AO) === null || r === void 0 || r.call(l, !1), a === void 0 ? l = void 0 : (l = new a(n), l._$AT(n, e, i)), i !== void 0 ? ((o = (d = e)._$Co) !== null && o !== void 0 ? o : d._$Co = [])[i] = l : e._$Cl = l), l !== void 0 && (t = H(n, l._$AS(n, t.values), l, i)), t;
342
+ }
343
+ let ae = 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, r = ((e = t == null ? void 0 : t.creationScope) !== null && e !== void 0 ? e : C).importNode(i, !0);
356
+ P.currentNode = r;
357
+ let o = 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 Kt(o, o.nextSibling, this, t) : a.type === 1 ? u = new a.ctor(o, a.name, a.strings, this, t) : a.type === 6 && (u = new pe(o, this, t)), this._$AV.push(u), a = s[++l];
362
+ }
363
+ d !== (a == null ? void 0 : a.index) && (o = P.nextNode(), d++);
364
+ }
365
+ return P.currentNode = C, r;
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
+ }, Kt = class Jt {
373
+ constructor(t, e, i, s) {
374
+ var r;
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 = (r = s == null ? void 0 : s.isConnected) === null || r === void 0 || r;
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) : oe(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.$(C.createTextNode(t)), this._$AH = t;
403
+ }
404
+ g(t) {
405
+ var e;
406
+ const { values: i, _$litType$: s } = t, r = typeof s == "number" ? this._$AC(t) : (s.el === void 0 && (s.el = pt.createElement(Zt(s.h, s.h[0]), this.options)), s);
407
+ if (((e = this._$AH) === null || e === void 0 ? void 0 : e._$AD) === r)
408
+ this._$AH.v(i);
409
+ else {
410
+ const o = new ae(r, this), d = o.u(this.options);
411
+ o.v(i), this.$(d), this._$AH = o;
412
+ }
413
+ }
414
+ _$AC(t) {
415
+ let e = Ut.get(t.strings);
416
+ return e === void 0 && Ut.set(t.strings, e = new pt(t)), e;
417
+ }
418
+ T(t) {
419
+ qt(this._$AH) || (this._$AH = [], this._$AR());
420
+ const e = this._$AH;
421
+ let i, s = 0;
422
+ for (const r of t)
423
+ s === e.length ? e.push(i = new Jt(this.k(G()), this.k(G()), this, this.options)) : i = e[s], i._$AI(r), 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, r) {
439
+ this.type = 1, this._$AH = v, this._$AN = void 0, this.element = t, this.name = e, this._$AM = s, this.options = r, 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 r = this.strings;
449
+ let o = !1;
450
+ if (r === void 0)
451
+ t = H(this, t, e, 0), o = !D(t) || t !== this._$AH && t !== j, o && (this._$AH = t);
452
+ else {
453
+ const d = t;
454
+ let l, a;
455
+ for (t = r[0], l = 0; l < r.length - 1; l++)
456
+ a = H(this, d[i + l], e, l), a === j && (a = this._$AH[l]), o || (o = !D(a) || a !== this._$AH[l]), a === v ? t = v : t !== v && (t += (a ?? "") + r[l + 1]), this._$AH[l] = a;
457
+ }
458
+ o && !s && this.j(t);
459
+ }
460
+ j(t) {
461
+ t === v ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
462
+ }
463
+ }, he = 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 de = x ? x.emptyScript : "";
472
+ let ce = class extends Q {
473
+ constructor() {
474
+ super(...arguments), this.type = 4;
475
+ }
476
+ j(t) {
477
+ t && t !== v ? this.element.setAttribute(this.name, de) : this.element.removeAttribute(this.name);
478
+ }
479
+ }, ue = class extends Q {
480
+ constructor(t, e, i, s, r) {
481
+ super(t, e, i, s, r), 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, r = t === v && s !== v || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive, o = t !== v && (s === v || r);
488
+ r && this.element.removeEventListener(this.name, this, s), o && 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 pe {
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 = J.litHtmlPolyfillSupport;
507
+ Ct == null || Ct(pt, Kt), ((st = J.litHtmlVersions) !== null && st !== void 0 ? st : J.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, Rt = N ? N.createPolicy("lit-html", { createHTML: (n) => n }) : void 0, vt = "$lit$", w = `lit$${(Math.random() + "").slice(9)}$`, Gt = "?" + w, ve = `<${Gt}>`, R = document, B = () => R.createComment(""), z = (n) => n === null || typeof n != "object" && typeof n != "function", Xt = Array.isArray, _e = (n) => Xt(n) || typeof (n == null ? void 0 : n[Symbol.iterator]) == "function", ot = `[
515
+ \f\r]`, M = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Tt = /-->/g, xt = />/g, S = RegExp(`>|${ot}(?:([^\\s"'>=/]+)(${ot}*=${ot}*(?:[^
516
+ \f\r"'\`<>=]|("|')|))|$)`, "g"), Ht = /'/g, Nt = /"/g, Yt = /^(?:script|style|textarea|title)$/i, $e = (n) => (t, ...e) => ({ _$litType$: n, strings: t, values: e }), me = $e(1), I = Symbol.for("lit-noChange"), _ = Symbol.for("lit-nothing"), It = /* @__PURE__ */ new WeakMap(), U = R.createTreeWalker(R, 129, null, !1), ge = (n, t) => {
517
+ const e = n.length - 1, i = [];
518
+ let s, r = t === 2 ? "<svg>" : "", o = M;
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 && (o.lastIndex = p, h = o.exec(a), h !== null); )
523
+ p = o.lastIndex, o === M ? h[1] === "!--" ? o = Tt : h[1] !== void 0 ? o = xt : h[2] !== void 0 ? (Yt.test(h[2]) && (s = RegExp("</" + h[2], "g")), o = S) : h[3] !== void 0 && (o = S) : o === S ? h[0] === ">" ? (o = s ?? M, c = -1) : h[1] === void 0 ? c = -2 : (c = o.lastIndex - h[2].length, u = h[1], o = h[3] === void 0 ? S : h[3] === '"' ? Nt : Ht) : o === Nt || o === Ht ? o = S : o === Tt || o === xt ? o = M : (o = S, s = void 0);
524
+ const A = o === S && n[l + 1].startsWith("/>") ? " " : "";
525
+ r += o === M ? a + ve : c >= 0 ? (i.push(u), a.slice(0, c) + vt + a.slice(c) + w + A) : a + w + (c === -2 ? (i.push(void 0), l) : A);
526
+ }
527
+ const d = r + (n[e] || "<?>") + (t === 2 ? "</svg>" : "");
528
+ if (!Array.isArray(n) || !n.hasOwnProperty("raw"))
529
+ throw Error("invalid template strings array");
530
+ return [Rt !== void 0 ? Rt.createHTML(d) : d, i];
531
+ };
532
+ class q {
533
+ constructor({ strings: t, _$litType$: e }, i) {
534
+ let s;
535
+ this.parts = [];
536
+ let r = 0, o = 0;
537
+ const d = t.length - 1, l = this.parts, [a, u] = ge(t, e);
538
+ if (this.el = q.createElement(a, i), U.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 = U.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(vt) || c.startsWith(w)) {
548
+ const p = u[o++];
549
+ if (h.push(c), p !== void 0) {
550
+ const A = s.getAttribute(p.toLowerCase() + vt).split(w), m = /([.?@])?(.*)/.exec(p);
551
+ l.push({ type: 1, index: r, name: m[2], strings: A, ctor: m[1] === "." ? Ae : m[1] === "?" ? Ee : m[1] === "@" ? we : tt });
552
+ } else
553
+ l.push({ type: 6, index: r });
554
+ }
555
+ for (const c of h)
556
+ s.removeAttribute(c);
557
+ }
558
+ if (Yt.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()), U.nextNode(), l.push({ type: 2, index: ++r });
564
+ s.append(h[c], B());
565
+ }
566
+ }
567
+ } else if (s.nodeType === 8)
568
+ if (s.data === Gt)
569
+ l.push({ type: 2, index: r });
570
+ else {
571
+ let h = -1;
572
+ for (; (h = s.data.indexOf(w, h + 1)) !== -1; )
573
+ l.push({ type: 7, index: r }), h += w.length - 1;
574
+ }
575
+ r++;
576
+ }
577
+ }
578
+ static createElement(t, e) {
579
+ const i = R.createElement("template");
580
+ return i.innerHTML = t, i;
581
+ }
582
+ }
583
+ function V(n, t, e = n, i) {
584
+ var s, r, o, 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 && ((r = l == null ? void 0 : l._$AO) === null || r === void 0 || r.call(l, !1), a === void 0 ? l = void 0 : (l = new a(n), l._$AT(n, e, i)), i !== void 0 ? ((o = (d = e)._$Co) !== null && o !== void 0 ? o : d._$Co = [])[i] = l : e._$Cl = l), l !== void 0 && (t = V(n, l._$AS(n, t.values), l, i)), t;
590
+ }
591
+ class fe {
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, r = ((e = t == null ? void 0 : t.creationScope) !== null && e !== void 0 ? e : R).importNode(i, !0);
604
+ U.currentNode = r;
605
+ let o = U.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(o, o.nextSibling, this, t) : a.type === 1 ? u = new a.ctor(o, a.name, a.strings, this, t) : a.type === 6 && (u = new be(o, this, t)), this._$AV.push(u), a = s[++l];
610
+ }
611
+ d !== (a == null ? void 0 : a.index) && (o = U.nextNode(), d++);
612
+ }
613
+ return U.currentNode = R, r;
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 r;
624
+ this.type = 2, this._$AH = _, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = i, this.options = s, this._$Cp = (r = s == null ? void 0 : s.isConnected) === null || r === void 0 || r;
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.$(R.createTextNode(t)), this._$AH = t;
652
+ }
653
+ g(t) {
654
+ var e;
655
+ const { values: i, _$litType$: s } = t, r = 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) === r)
657
+ this._$AH.v(i);
658
+ else {
659
+ const o = new fe(r, this), d = o.u(this.options);
660
+ o.v(i), this.$(d), this._$AH = o;
661
+ }
662
+ }
663
+ _$AC(t) {
664
+ let e = It.get(t.strings);
665
+ return e === void 0 && It.set(t.strings, e = new q(t)), e;
666
+ }
667
+ T(t) {
668
+ Xt(this._$AH) || (this._$AH = [], this._$AR());
669
+ const e = this._$AH;
670
+ let i, s = 0;
671
+ for (const r 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(r), 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, r) {
689
+ this.type = 1, this._$AH = _, this._$AN = void 0, this.element = t, this.name = e, this._$AM = s, this.options = r, 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 r = this.strings;
699
+ let o = !1;
700
+ if (r === void 0)
701
+ t = V(this, t, e, 0), o = !z(t) || t !== this._$AH && t !== I, o && (this._$AH = t);
702
+ else {
703
+ const d = t;
704
+ let l, a;
705
+ for (t = r[0], l = 0; l < r.length - 1; l++)
706
+ a = V(this, d[i + l], e, l), a === I && (a = this._$AH[l]), o || (o = !z(a) || a !== this._$AH[l]), a === _ ? t = _ : t !== _ && (t += (a ?? "") + r[l + 1]), this._$AH[l] = a;
707
+ }
708
+ o && !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 Ae 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 ye = N ? N.emptyScript : "";
723
+ class Ee extends tt {
724
+ constructor() {
725
+ super(...arguments), this.type = 4;
726
+ }
727
+ j(t) {
728
+ t && t !== _ ? this.element.setAttribute(this.name, ye) : this.element.removeAttribute(this.name);
729
+ }
730
+ }
731
+ class we extends tt {
732
+ constructor(t, e, i, s, r) {
733
+ super(t, e, i, s, r), 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, r = t === _ && s !== _ || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive, o = t !== _ && (s === _ || r);
740
+ r && this.element.removeEventListener(this.name, this, s), o && 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 be {
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 Vt = X.litHtmlPolyfillSupport;
759
+ Vt == null || Vt(q, W), ((rt = X.litHtmlVersions) !== null && rt !== void 0 ? rt : X.litHtmlVersions = []).push("2.7.4");
760
+ const Se = (n, t, e) => {
761
+ var i, s;
762
+ const r = (i = e == null ? void 0 : e.renderBefore) !== null && i !== void 0 ? i : t;
763
+ let o = r._$litPart$;
764
+ if (o === void 0) {
765
+ const d = (s = e == null ? void 0 : e.renderBefore) !== null && s !== void 0 ? s : null;
766
+ r._$litPart$ = o = new W(t.insertBefore(B(), d), d, void 0, e ?? {});
767
+ }
768
+ return o._$AI(n), o;
769
+ };
770
+ /**
771
+ * @license
772
+ * Copyright 2017 Google LLC
773
+ * SPDX-License-Identifier: BSD-3-Clause
774
+ */
775
+ var lt, at;
776
+ class k extends T {
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 = Se(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
+ k.finalized = !0, k._$litElement$ = !0, (lt = globalThis.litElementHydrateSupport) === null || lt === void 0 || lt.call(globalThis, { LitElement: k });
802
+ const Ot = globalThis.litElementPolyfillSupport;
803
+ Ot == null || Ot({ LitElement: k });
804
+ ((at = globalThis.litElementVersions) !== null && at !== void 0 ? at : globalThis.litElementVersions = []).push("3.3.2");
805
+ function Pe(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 = kt(), this.host = t, this._events = e, t.addController(this);
816
+ }
817
+ register() {
818
+ return Dt(this._forwardElementRef);
819
+ }
820
+ hostConnected() {
821
+ requestAnimationFrame(() => {
822
+ this._events.forEach((t) => {
823
+ this._forwardElementRef.value && this._cleanup.push(Pe(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 ht = "https://vouchfor.com", Ce = "https://d2rxhdlm2q91uk.cloudfront.net", Re = "https://d1ix11aj5kfygl.cloudfront.net", Te = "https://d157jlwnudd93d.cloudfront.net", xe = "https://bshyfw4h5a.execute-api.ap-southeast-2.amazonaws.com/dev", He = "https://gyzw7rpbq3.execute-api.ap-southeast-2.amazonaws.com/staging", Ne = "https://vfcjuim1l3.execute-api.ap-southeast-2.amazonaws.com/prod", Ie = "https://embed-dev.vouchfor.com/v2", Ve = "https://embed-staging.vouchfor.com/v2", Oe = "https://embed.vouchfor.com/v2", Me = "https://dev.vouchfor.com", Le = "https://staging.vouchfor.com", ke = "https://app.vouchfor.com";
834
+ function Y(n) {
835
+ if (!["dev", "staging", "prod"].includes(n))
836
+ throw new Error(`Unknown environment: ${n}`);
837
+ if (n === "dev")
838
+ return {
839
+ marketingUrl: ht,
840
+ videoUrl: Ce,
841
+ publicApiUrl: xe,
842
+ embedApiUrl: Ie,
843
+ publicRecorderUrl: Me
844
+ };
845
+ if (n === "staging")
846
+ return {
847
+ marketingUrl: ht,
848
+ videoUrl: Re,
849
+ publicApiUrl: He,
850
+ embedApiUrl: Ve,
851
+ publicRecorderUrl: Le
852
+ };
853
+ if (n === "prod")
854
+ return {
855
+ marketingUrl: ht,
856
+ videoUrl: Te,
857
+ publicApiUrl: Ne,
858
+ embedApiUrl: Oe,
859
+ publicRecorderUrl: ke
860
+ };
861
+ }
862
+ class De {
863
+ constructor(t) {
864
+ this._fetching = !1, this.host = t, new te(
865
+ this.host,
866
+ async ([e, i, s, r, o]) => {
867
+ var d, l, a, u;
868
+ try {
869
+ if (t.vouch = void 0, t.template = void 0, s) {
870
+ let h;
871
+ o && (this.fetching = !0, h = await this.getTemplate(e, i, o)), t.vouch = s, t.template = h ?? ((l = (d = s == null ? void 0 : s.settings) == null ? void 0 : d.template) == null ? void 0 : l.instance);
872
+ } else if (r) {
873
+ this.fetching = !0;
874
+ const [h, c] = await Promise.all([
875
+ this.getVouch(e, i, r),
876
+ o ? this.getTemplate(e, i, o) : null
877
+ ]);
878
+ t.vouch = h, t.template = c ?? ((u = (a = h == null ? void 0 : h.settings) == null ? void 0 : a.template) == null ? void 0 : u.instance);
879
+ }
880
+ } finally {
881
+ this.fetching = !1;
882
+ }
883
+ },
884
+ () => [t.env, t.apiKey, t.data, t.vouchId, t.templateId]
885
+ );
886
+ }
887
+ set fetching(t) {
888
+ this._fetching !== t && (this._fetching = t, this.host.requestUpdate());
889
+ }
890
+ get fetching() {
891
+ return this._fetching;
892
+ }
893
+ async getVouch(t, e, i) {
894
+ const { embedApiUrl: s } = Y(t);
895
+ return fetch(`${s}/vouches/${i}`, {
896
+ method: "GET",
897
+ headers: [["X-Api-Key", e]]
898
+ }).then((r) => r.json());
899
+ }
900
+ async getTemplate(t, e, i) {
901
+ const { embedApiUrl: s } = Y(t);
902
+ return fetch(`${s}/templates/${i}`, {
903
+ method: "GET",
904
+ headers: [["X-Api-Key", e]]
905
+ }).then((r) => r.json());
906
+ }
907
+ }
908
+ let Z;
909
+ const je = new Uint8Array(16);
910
+ function Be() {
911
+ if (!Z && (Z = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !Z))
912
+ throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
913
+ return Z(je);
914
+ }
915
+ const $ = [];
916
+ for (let n = 0; n < 256; ++n)
917
+ $.push((n + 256).toString(16).slice(1));
918
+ function ze(n, t = 0) {
919
+ 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]];
920
+ }
921
+ const qe = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Mt = {
922
+ randomUUID: qe
923
+ };
924
+ function L(n, t, e) {
925
+ if (Mt.randomUUID && !t && !n)
926
+ return Mt.randomUUID();
927
+ n = n || {};
928
+ const i = n.random || (n.rng || Be)();
929
+ if (i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128, t) {
930
+ e = e || 0;
931
+ for (let s = 0; s < 16; ++s)
932
+ t[e + s] = i[s];
933
+ return t;
934
+ }
935
+ return ze(i);
936
+ }
937
+ const We = 2e3;
938
+ class Ze {
939
+ constructor(t) {
940
+ 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) => {
941
+ var s, r;
942
+ const { publicApiUrl: i } = Y(this.host.env);
943
+ return (r = (s = window.localStorage) == null ? void 0 : s.setItem) == null || r.call(s, "vouch-uid-visitor", e), navigator.sendBeacon(`${i}/api/visitor`, JSON.stringify({ visitorId: e })), e;
944
+ }, this._getReportingMetadata = () => {
945
+ var r, o;
946
+ const [e, i] = ((o = (r = Intl.DateTimeFormat().resolvedOptions().timeZone) == null ? void 0 : r.split) == null ? void 0 : o.call(r, "/")) ?? [], s = {};
947
+ return [...new URLSearchParams(location.search).entries()].forEach(([d, l]) => {
948
+ if (/utm/.test(d)) {
949
+ const a = d.toLowerCase().replace(/[-_][a-z0-9]/g, (u) => u.slice(-1).toUpperCase());
950
+ s[a] = l;
951
+ }
952
+ }), {
953
+ source: "media_player",
954
+ time: /* @__PURE__ */ new Date(),
955
+ region: i,
956
+ country: e,
957
+ screenHeight: window.screen.height,
958
+ screenWidth: window.screen.width,
959
+ referrer: document.referrer,
960
+ currentUrl: location.href,
961
+ ...s
962
+ };
963
+ }, this._sendTrackingEvent = (e, i) => {
964
+ const { publicApiUrl: s } = Y(this.host.env), { client: r, tab: o, request: d, visitor: l } = this._getUids();
965
+ navigator.sendBeacon(
966
+ `${s}/api/events`,
967
+ JSON.stringify({
968
+ event: e,
969
+ payload: i,
970
+ context: {
971
+ "x-uid-client": r,
972
+ "x-uid-tab": o,
973
+ "x-uid-request": d,
974
+ "x-uid-visitor": l,
975
+ "x-reporting-metadata": this._getReportingMetadata()
976
+ }
977
+ })
978
+ );
979
+ }, this._handleVouchLoaded = ({ detail: e }) => {
980
+ e && (this._hasLoaded[e] || (this._sendTrackingEvent("VOUCH_LOADED", {
981
+ vouchId: e
982
+ }), this._hasLoaded[e] = !0));
983
+ }, this._handlePlay = () => {
984
+ const e = this._findVouchId();
985
+ e && (this._hasPlayed || (this._sendTrackingEvent("VIDEO_PLAYED", {
986
+ vouchId: e,
987
+ streamStart: this.host.currentTime
988
+ }), this._hasPlayed = !0));
989
+ }, this._handleVideoPlay = ({ detail: { id: e, node: i } }) => {
990
+ const s = this._findVouchId();
991
+ s && (this._answersViewed[e] || (this._sendTrackingEvent("VOUCH_RESPONSE_VIEWED", {
992
+ vouchId: s,
993
+ answerId: e
994
+ }), this._answersViewed[e] = !0), this._streamedTime[e] = i.currentTime, this._streamedPrevTimestamp[e] = Date.now());
995
+ }, this._handleVideoTimeUpdate = ({ detail: { id: e, node: i } }) => {
996
+ var o, d;
997
+ const s = this._findVouchId();
998
+ if (!s)
999
+ return;
1000
+ const r = Date.now();
1001
+ !this.host.paused && // Only fire the video seeked event when this video is the active one
1002
+ e === ((d = (o = this.host.scene) == null ? void 0 : o.video) == null ? void 0 : d.id) && // Throttle the frequency that we send streamed events while playing
1003
+ r - this._streamedPrevTimestamp[e] > We && (this._sendTrackingEvent("VIDEO_STREAMED", {
1004
+ vouchId: s,
1005
+ answerId: e,
1006
+ streamStart: this._streamedTime[e],
1007
+ streamEnd: i.currentTime
1008
+ }), this._streamedTime[e] = i.currentTime, this._streamedPrevTimestamp[e] = r);
1009
+ }, this._handleVideoPause = ({ detail: { id: e, node: i } }) => {
1010
+ const s = this._findVouchId();
1011
+ s && (this._sendTrackingEvent("VIDEO_STREAMED", {
1012
+ vouchId: s,
1013
+ answerId: e,
1014
+ streamStart: this._streamedTime[e],
1015
+ streamEnd: i.currentTime
1016
+ }), delete this._streamedTime[e], delete this._streamedPrevTimestamp[e]);
1017
+ }, this.host = t, t.addController(this);
1018
+ }
1019
+ _findVouchId() {
1020
+ if (this.host.data)
1021
+ return "uuid" in this.host.data ? this.host.data.uuid : this.host.data.id;
1022
+ }
1023
+ _getUids() {
1024
+ var r, o, d, l, a, u, h, c, p, A, m, $t;
1025
+ if (typeof window > "u")
1026
+ return {
1027
+ client: null,
1028
+ tab: null,
1029
+ request: L()
1030
+ };
1031
+ const t = this._visitorId || ((o = (r = window.localStorage) == null ? void 0 : r.getItem) == null ? void 0 : o.call(r, "vouch-uid-visitor")) || this._createVisitor(L()), e = this._clientId || ((l = (d = window.localStorage) == null ? void 0 : d.getItem) == null ? void 0 : l.call(d, "vouch-uid-client")) || L(), i = this._tabId || ((u = (a = window.sessionStorage) == null ? void 0 : a.getItem) == null ? void 0 : u.call(a, "vouch-uid-tab")) || L(), s = L();
1032
+ 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, (A = (p = window.localStorage) == null ? void 0 : p.setItem) == null || A.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)), {
1033
+ client: e,
1034
+ tab: i,
1035
+ request: s,
1036
+ visitor: t
1037
+ };
1038
+ }
1039
+ hostConnected() {
1040
+ requestAnimationFrame(() => {
1041
+ var t, e, i, s;
1042
+ 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);
1043
+ });
1044
+ }
1045
+ hostDisconnected() {
1046
+ var t, e, i, s;
1047
+ 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);
1048
+ }
1049
+ }
1050
+ var Fe = Object.defineProperty, Ke = Object.getOwnPropertyDescriptor, f = (n, t, e, i) => {
1051
+ for (var s = i > 1 ? void 0 : i ? Ke(t, e) : t, r = n.length - 1, o; r >= 0; r--)
1052
+ (o = n[r]) && (s = (i ? o(t, e, s) : o(s)) || s);
1053
+ return i && s && Fe(t, e, s), s;
1054
+ };
1055
+ let g = class extends k {
1056
+ constructor() {
1057
+ super(...arguments), this._mediaPlayerRef = kt(), this.env = "prod", this.apiKey = "", this.preload = "auto", this.autoplay = !1, this.aspectRatio = 0, this.eventController = new Ue(this, [
1058
+ "durationchange",
1059
+ "ended",
1060
+ "error",
1061
+ "loadeddata",
1062
+ "pause",
1063
+ "stalled",
1064
+ "play",
1065
+ "playing",
1066
+ "ratechange",
1067
+ "scenechange",
1068
+ "seeking",
1069
+ "seeked",
1070
+ "timeupdate",
1071
+ "volumechange",
1072
+ "waiting",
1073
+ "video:loadeddata",
1074
+ "video:seeked",
1075
+ "video:play",
1076
+ "video:playing",
1077
+ "video:pause",
1078
+ "video:stalled",
1079
+ "video:timeupdate",
1080
+ "video:ended",
1081
+ "video:error"
1082
+ ]), this._fetcherController = new De(this), this._trackingController = new Ze(this);
1083
+ }
1084
+ get fetching() {
1085
+ return this._fetcherController.fetching;
1086
+ }
1087
+ get waiting() {
1088
+ var n;
1089
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.waiting;
1090
+ }
1091
+ get seeking() {
1092
+ var n;
1093
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.seeking;
1094
+ }
1095
+ get paused() {
1096
+ var n;
1097
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.paused;
1098
+ }
1099
+ get captions() {
1100
+ var n;
1101
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.captions;
1102
+ }
1103
+ get fullscreen() {
1104
+ var n;
1105
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.fullscreen;
1106
+ }
1107
+ get duration() {
1108
+ var n;
1109
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.duration;
1110
+ }
1111
+ set currentTime(n) {
1112
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.currentTime = n);
1113
+ }
1114
+ get currentTime() {
1115
+ var n;
1116
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.currentTime) ?? 0;
1117
+ }
1118
+ set playbackRate(n) {
1119
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.playbackRate = n);
1120
+ }
1121
+ get playbackRate() {
1122
+ var n;
1123
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.playbackRate) ?? 1;
1124
+ }
1125
+ set volume(n) {
1126
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.volume = n);
1127
+ }
1128
+ get volume() {
1129
+ var n;
1130
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.volume) ?? 1;
1131
+ }
1132
+ set muted(n) {
1133
+ this._mediaPlayerRef.value && (this._mediaPlayerRef.value.muted = n);
1134
+ }
1135
+ get muted() {
1136
+ var n;
1137
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.muted) ?? !1;
1138
+ }
1139
+ get scene() {
1140
+ var n;
1141
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.scene) ?? null;
1142
+ }
1143
+ get scenes() {
1144
+ var n;
1145
+ return ((n = this._mediaPlayerRef.value) == null ? void 0 : n.scenes) ?? [];
1146
+ }
1147
+ get videoState() {
1148
+ var n;
1149
+ return (n = this._mediaPlayerRef.value) == null ? void 0 : n.videoState;
1150
+ }
1151
+ get mediaPlayer() {
1152
+ return this._mediaPlayerRef.value;
1153
+ }
1154
+ play() {
1155
+ var n;
1156
+ (n = this._mediaPlayerRef.value) == null || n.play();
1157
+ }
1158
+ pause() {
1159
+ var n;
1160
+ (n = this._mediaPlayerRef.value) == null || n.pause();
1161
+ }
1162
+ setScene(n) {
1163
+ var t;
1164
+ (t = this._mediaPlayerRef.value) == null || t.setScene(n);
1165
+ }
1166
+ render() {
1167
+ return me`
1168
+ <vmp-new-media-player
1169
+ ${Dt(this._mediaPlayerRef)}
1170
+ ${this.eventController.register()}
1171
+ ?autoplay=${this.autoplay}
1172
+ ?loading=${this.fetching}
1173
+ .data=${this.vouch}
1174
+ .template=${this.template}
1175
+ aspectRatio=${mt(this.aspectRatio)}
1176
+ preload=${mt(this.preload)}
1177
+ .controls=${this.controls}
1178
+ ></vmp-new-media-player>
1179
+ `;
1180
+ }
1181
+ };
1182
+ f([
1183
+ y({ type: Object, attribute: "data" })
1184
+ ], g.prototype, "data", 2);
1185
+ f([
1186
+ y({ type: String })
1187
+ ], g.prototype, "vouchId", 2);
1188
+ f([
1189
+ y({ type: String })
1190
+ ], g.prototype, "templateId", 2);
1191
+ f([
1192
+ y({ type: String })
1193
+ ], g.prototype, "env", 2);
1194
+ f([
1195
+ y({ type: String })
1196
+ ], g.prototype, "apiKey", 2);
1197
+ f([
1198
+ y({ type: Array })
1199
+ ], g.prototype, "controls", 2);
1200
+ f([
1201
+ y({ type: String })
1202
+ ], g.prototype, "preload", 2);
1203
+ f([
1204
+ y({ type: Boolean })
1205
+ ], g.prototype, "autoplay", 2);
1206
+ f([
1207
+ y({ type: Number })
1208
+ ], g.prototype, "aspectRatio", 2);
1209
+ f([
1210
+ Lt()
1211
+ ], g.prototype, "vouch", 2);
1212
+ f([
1213
+ Lt()
1214
+ ], g.prototype, "template", 2);
1215
+ g = f([
1216
+ Qt("vouch-embed")
1217
+ ], g);
13
1218
  export {
14
- p as InlineEmbed
1219
+ g as Embed
15
1220
  };
16
1221
  //# sourceMappingURL=embeds.js.map