@vouchfor/embeds 0.0.0-experiment.df12bef → 0.0.0-experiment.e7e20dd
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/embeds.js +979 -1453
- package/dist/es/embeds.js.map +1 -1
- package/dist/es/src/components/DialogEmbed/DialogOverlay.d.ts +20 -0
- package/dist/es/src/components/DialogEmbed/DialogPortal.d.ts +36 -0
- package/dist/es/src/components/DialogEmbed/index.d.ts +38 -0
- package/dist/es/src/components/PlayerEmbed/controllers/event-forwarder.d.ts +15 -0
- package/dist/es/src/components/{Embed → PlayerEmbed}/controllers/fetcher.d.ts +5 -4
- package/dist/es/src/components/{Embed/controllers/tracking.d.ts → PlayerEmbed/controllers/tracking/index.d.ts} +14 -11
- package/dist/es/src/components/PlayerEmbed/controllers/tracking/utils.d.ts +17 -0
- package/dist/es/src/components/{Embed → PlayerEmbed}/index.d.ts +28 -21
- package/dist/es/src/components/PlayerEmbed/tests/data.d.ts +3 -0
- package/dist/es/src/index.d.ts +2 -1
- package/dist/iife/dialog-embed/embed.iife.js +1750 -0
- package/dist/iife/dialog-embed/embed.iife.js.map +1 -0
- package/dist/iife/embeds.iife.js +662 -457
- package/dist/iife/embeds.iife.js.map +1 -1
- package/dist/iife/player-embed/embed.iife.js +1612 -0
- package/dist/iife/player-embed/embed.iife.js.map +1 -0
- package/package.json +43 -31
- package/src/components/DialogEmbed/Dialog.stories.ts +91 -0
- package/src/components/DialogEmbed/DialogOverlay.ts +131 -0
- package/src/components/DialogEmbed/DialogPortal.ts +126 -0
- package/src/components/DialogEmbed/index.ts +97 -0
- package/src/components/{Embed/Embed.stories.ts → PlayerEmbed/PlayerEmbed.stories.ts} +26 -14
- package/src/components/{Embed → PlayerEmbed}/controllers/event-forwarder.ts +6 -5
- package/src/components/{Embed → PlayerEmbed}/controllers/fetcher.ts +33 -14
- package/src/components/{Embed/controllers/tracking.ts → PlayerEmbed/controllers/tracking/index.ts} +47 -115
- package/src/components/PlayerEmbed/controllers/tracking/utils.ts +95 -0
- package/src/components/{Embed → PlayerEmbed}/index.ts +71 -27
- package/src/components/PlayerEmbed/tests/PlayerEmbed.spec.ts +80 -0
- package/src/components/PlayerEmbed/tests/data.ts +183 -0
- package/src/index.ts +2 -1
    
        package/dist/es/embeds.js
    CHANGED
    
    | @@ -1,1428 +1,554 @@ | |
| 1 | 
            -
            import {  | 
| 2 | 
            -
            import {  | 
| 3 | 
            -
            import {  | 
| 4 | 
            -
            import {  | 
| 5 | 
            -
            import {  | 
| 6 | 
            -
            import  | 
| 7 | 
            -
             | 
| 8 | 
            -
              | 
| 9 | 
            -
              | 
| 10 | 
            -
              | 
| 11 | 
            -
              | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
               | 
| 15 | 
            -
                 | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
               | 
| 19 | 
            -
             | 
| 20 | 
            -
                let t = this.o;
         | 
| 21 | 
            -
                const e = this.t;
         | 
| 22 | 
            -
                if (_t && t === void 0) {
         | 
| 23 | 
            -
                  const i = e !== void 0 && e.length === 1;
         | 
| 24 | 
            -
                  i && (t = gt.get(e)), t === void 0 && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), i && gt.set(e, t));
         | 
| 25 | 
            -
                }
         | 
| 26 | 
            -
                return t;
         | 
| 27 | 
            -
              }
         | 
| 28 | 
            -
              toString() {
         | 
| 29 | 
            -
                return this.cssText;
         | 
| 30 | 
            -
              }
         | 
| 31 | 
            -
            };
         | 
| 32 | 
            -
            const ce = (r) => new de(typeof r == "string" ? r : r + "", void 0, qt), pe = (r, t) => {
         | 
| 33 | 
            -
              if (_t)
         | 
| 34 | 
            -
                r.adoptedStyleSheets = t.map((e) => e instanceof CSSStyleSheet ? e : e.styleSheet);
         | 
| 35 | 
            -
              else
         | 
| 36 | 
            -
                for (const e of t) {
         | 
| 37 | 
            -
                  const i = document.createElement("style"), s = G.litNonce;
         | 
| 38 | 
            -
                  s !== void 0 && i.setAttribute("nonce", s), i.textContent = e.cssText, r.appendChild(i);
         | 
| 39 | 
            -
                }
         | 
| 40 | 
            -
            }, vt = _t ? (r) => r : (r) => r instanceof CSSStyleSheet ? ((t) => {
         | 
| 41 | 
            -
              let e = "";
         | 
| 42 | 
            -
              for (const i of t.cssRules)
         | 
| 43 | 
            -
                e += i.cssText;
         | 
| 44 | 
            -
              return ce(e);
         | 
| 45 | 
            -
            })(r) : r;
         | 
| 46 | 
            -
            /**
         | 
| 47 | 
            -
             * @license
         | 
| 48 | 
            -
             * Copyright 2017 Google LLC
         | 
| 49 | 
            -
             * SPDX-License-Identifier: BSD-3-Clause
         | 
| 50 | 
            -
             */
         | 
| 51 | 
            -
            const { is: ue, defineProperty: _e, getOwnPropertyDescriptor: me, getOwnPropertyNames: $e, getOwnPropertySymbols: fe, getPrototypeOf: ge } = Object, b = globalThis, yt = b.trustedTypes, ve = yt ? yt.emptyScript : "", rt = b.reactiveElementPolyfillSupport, I = (r, t) => r, ct = { toAttribute(r, t) {
         | 
| 52 | 
            -
              switch (t) {
         | 
| 53 | 
            -
                case Boolean:
         | 
| 54 | 
            -
                  r = r ? ve : null;
         | 
| 55 | 
            -
                  break;
         | 
| 56 | 
            -
                case Object:
         | 
| 57 | 
            -
                case Array:
         | 
| 58 | 
            -
                  r = r == null ? r : JSON.stringify(r);
         | 
| 59 | 
            -
              }
         | 
| 60 | 
            -
              return r;
         | 
| 61 | 
            -
            }, fromAttribute(r, t) {
         | 
| 62 | 
            -
              let e = r;
         | 
| 63 | 
            -
              switch (t) {
         | 
| 64 | 
            -
                case Boolean:
         | 
| 65 | 
            -
                  e = r !== null;
         | 
| 66 | 
            -
                  break;
         | 
| 67 | 
            -
                case Number:
         | 
| 68 | 
            -
                  e = r === null ? null : Number(r);
         | 
| 69 | 
            -
                  break;
         | 
| 70 | 
            -
                case Object:
         | 
| 71 | 
            -
                case Array:
         | 
| 72 | 
            -
                  try {
         | 
| 73 | 
            -
                    e = JSON.parse(r);
         | 
| 74 | 
            -
                  } catch {
         | 
| 75 | 
            -
                    e = null;
         | 
| 76 | 
            -
                  }
         | 
| 77 | 
            -
              }
         | 
| 78 | 
            -
              return e;
         | 
| 79 | 
            -
            } }, Xt = (r, t) => !ue(r, t), At = { attribute: !0, type: String, converter: ct, reflect: !1, hasChanged: Xt };
         | 
| 80 | 
            -
            Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), b.litPropertyMetadata ?? (b.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
         | 
| 81 | 
            -
            let N = class extends HTMLElement {
         | 
| 82 | 
            -
              static addInitializer(t) {
         | 
| 83 | 
            -
                this._$Ei(), (this.l ?? (this.l = [])).push(t);
         | 
| 84 | 
            -
              }
         | 
| 85 | 
            -
              static get observedAttributes() {
         | 
| 86 | 
            -
                return this.finalize(), this._$Eh && [...this._$Eh.keys()];
         | 
| 87 | 
            -
              }
         | 
| 88 | 
            -
              static createProperty(t, e = At) {
         | 
| 89 | 
            -
                if (e.state && (e.attribute = !1), this._$Ei(), this.elementProperties.set(t, e), !e.noAccessor) {
         | 
| 90 | 
            -
                  const i = Symbol(), s = this.getPropertyDescriptor(t, i, e);
         | 
| 91 | 
            -
                  s !== void 0 && _e(this.prototype, t, s);
         | 
| 92 | 
            -
                }
         | 
| 93 | 
            -
              }
         | 
| 94 | 
            -
              static getPropertyDescriptor(t, e, i) {
         | 
| 95 | 
            -
                const { get: s, set: n } = me(this.prototype, t) ?? { get() {
         | 
| 96 | 
            -
                  return this[e];
         | 
| 97 | 
            -
                }, set(o) {
         | 
| 98 | 
            -
                  this[e] = o;
         | 
| 99 | 
            -
                } };
         | 
| 100 | 
            -
                return { get() {
         | 
| 101 | 
            -
                  return s == null ? void 0 : s.call(this);
         | 
| 102 | 
            -
                }, set(o) {
         | 
| 103 | 
            -
                  const h = s == null ? void 0 : s.call(this);
         | 
| 104 | 
            -
                  n.call(this, o), this.requestUpdate(t, h, i);
         | 
| 105 | 
            -
                }, configurable: !0, enumerable: !0 };
         | 
| 106 | 
            -
              }
         | 
| 107 | 
            -
              static getPropertyOptions(t) {
         | 
| 108 | 
            -
                return this.elementProperties.get(t) ?? At;
         | 
| 109 | 
            -
              }
         | 
| 110 | 
            -
              static _$Ei() {
         | 
| 111 | 
            -
                if (this.hasOwnProperty(I("elementProperties")))
         | 
| 112 | 
            -
                  return;
         | 
| 113 | 
            -
                const t = ge(this);
         | 
| 114 | 
            -
                t.finalize(), t.l !== void 0 && (this.l = [...t.l]), this.elementProperties = new Map(t.elementProperties);
         | 
| 115 | 
            -
              }
         | 
| 116 | 
            -
              static finalize() {
         | 
| 117 | 
            -
                if (this.hasOwnProperty(I("finalized")))
         | 
| 118 | 
            -
                  return;
         | 
| 119 | 
            -
                if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(I("properties"))) {
         | 
| 120 | 
            -
                  const e = this.properties, i = [...$e(e), ...fe(e)];
         | 
| 121 | 
            -
                  for (const s of i)
         | 
| 122 | 
            -
                    this.createProperty(s, e[s]);
         | 
| 123 | 
            -
                }
         | 
| 124 | 
            -
                const t = this[Symbol.metadata];
         | 
| 125 | 
            -
                if (t !== null) {
         | 
| 126 | 
            -
                  const e = litPropertyMetadata.get(t);
         | 
| 127 | 
            -
                  if (e !== void 0)
         | 
| 128 | 
            -
                    for (const [i, s] of e)
         | 
| 129 | 
            -
                      this.elementProperties.set(i, s);
         | 
| 130 | 
            -
                }
         | 
| 131 | 
            -
                this._$Eh = /* @__PURE__ */ new Map();
         | 
| 132 | 
            -
                for (const [e, i] of this.elementProperties) {
         | 
| 133 | 
            -
                  const s = this._$Eu(e, i);
         | 
| 134 | 
            -
                  s !== void 0 && this._$Eh.set(s, e);
         | 
| 135 | 
            -
                }
         | 
| 136 | 
            -
                this.elementStyles = this.finalizeStyles(this.styles);
         | 
| 137 | 
            -
              }
         | 
| 138 | 
            -
              static finalizeStyles(t) {
         | 
| 139 | 
            -
                const e = [];
         | 
| 140 | 
            -
                if (Array.isArray(t)) {
         | 
| 141 | 
            -
                  const i = new Set(t.flat(1 / 0).reverse());
         | 
| 142 | 
            -
                  for (const s of i)
         | 
| 143 | 
            -
                    e.unshift(vt(s));
         | 
| 144 | 
            -
                } else
         | 
| 145 | 
            -
                  t !== void 0 && e.push(vt(t));
         | 
| 146 | 
            -
                return e;
         | 
| 147 | 
            -
              }
         | 
| 148 | 
            -
              static _$Eu(t, e) {
         | 
| 149 | 
            -
                const i = e.attribute;
         | 
| 150 | 
            -
                return i === !1 ? void 0 : typeof i == "string" ? i : typeof t == "string" ? t.toLowerCase() : void 0;
         | 
| 151 | 
            -
              }
         | 
| 152 | 
            -
              constructor() {
         | 
| 153 | 
            -
                super(), this._$Ep = void 0, this.isUpdatePending = !1, this.hasUpdated = !1, this._$Em = null, this._$Ev();
         | 
| 154 | 
            -
              }
         | 
| 155 | 
            -
              _$Ev() {
         | 
| 156 | 
            -
                var t;
         | 
| 157 | 
            -
                this._$Eg = new Promise((e) => this.enableUpdating = e), this._$AL = /* @__PURE__ */ new Map(), this._$ES(), this.requestUpdate(), (t = this.constructor.l) == null || t.forEach((e) => e(this));
         | 
| 158 | 
            -
              }
         | 
| 159 | 
            -
              addController(t) {
         | 
| 160 | 
            -
                var e;
         | 
| 161 | 
            -
                (this._$E_ ?? (this._$E_ = /* @__PURE__ */ new Set())).add(t), this.renderRoot !== void 0 && this.isConnected && ((e = t.hostConnected) == null || e.call(t));
         | 
| 162 | 
            -
              }
         | 
| 163 | 
            -
              removeController(t) {
         | 
| 164 | 
            -
                var e;
         | 
| 165 | 
            -
                (e = this._$E_) == null || e.delete(t);
         | 
| 166 | 
            -
              }
         | 
| 167 | 
            -
              _$ES() {
         | 
| 168 | 
            -
                const t = /* @__PURE__ */ new Map(), e = this.constructor.elementProperties;
         | 
| 169 | 
            -
                for (const i of e.keys())
         | 
| 170 | 
            -
                  this.hasOwnProperty(i) && (t.set(i, this[i]), delete this[i]);
         | 
| 171 | 
            -
                t.size > 0 && (this._$Ep = t);
         | 
| 172 | 
            -
              }
         | 
| 173 | 
            -
              createRenderRoot() {
         | 
| 174 | 
            -
                const t = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
         | 
| 175 | 
            -
                return pe(t, this.constructor.elementStyles), t;
         | 
| 176 | 
            -
              }
         | 
| 177 | 
            -
              connectedCallback() {
         | 
| 178 | 
            -
                var t;
         | 
| 179 | 
            -
                this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this.enableUpdating(!0), (t = this._$E_) == null || t.forEach((e) => {
         | 
| 180 | 
            -
                  var i;
         | 
| 181 | 
            -
                  return (i = e.hostConnected) == null ? void 0 : i.call(e);
         | 
| 182 | 
            -
                });
         | 
| 183 | 
            -
              }
         | 
| 184 | 
            -
              enableUpdating(t) {
         | 
| 185 | 
            -
              }
         | 
| 186 | 
            -
              disconnectedCallback() {
         | 
| 187 | 
            -
                var t;
         | 
| 188 | 
            -
                (t = this._$E_) == null || t.forEach((e) => {
         | 
| 189 | 
            -
                  var i;
         | 
| 190 | 
            -
                  return (i = e.hostDisconnected) == null ? void 0 : i.call(e);
         | 
| 191 | 
            -
                });
         | 
| 192 | 
            -
              }
         | 
| 193 | 
            -
              attributeChangedCallback(t, e, i) {
         | 
| 194 | 
            -
                this._$AK(t, i);
         | 
| 195 | 
            -
              }
         | 
| 196 | 
            -
              _$EO(t, e) {
         | 
| 197 | 
            -
                var n;
         | 
| 198 | 
            -
                const i = this.constructor.elementProperties.get(t), s = this.constructor._$Eu(t, i);
         | 
| 199 | 
            -
                if (s !== void 0 && i.reflect === !0) {
         | 
| 200 | 
            -
                  const o = (((n = i.converter) == null ? void 0 : n.toAttribute) !== void 0 ? i.converter : ct).toAttribute(e, i.type);
         | 
| 201 | 
            -
                  this._$Em = t, o == null ? this.removeAttribute(s) : this.setAttribute(s, o), this._$Em = null;
         | 
| 202 | 
            -
                }
         | 
| 203 | 
            -
              }
         | 
| 204 | 
            -
              _$AK(t, e) {
         | 
| 205 | 
            -
                var n;
         | 
| 206 | 
            -
                const i = this.constructor, s = i._$Eh.get(t);
         | 
| 207 | 
            -
                if (s !== void 0 && this._$Em !== s) {
         | 
| 208 | 
            -
                  const o = i.getPropertyOptions(s), h = typeof o.converter == "function" ? { fromAttribute: o.converter } : ((n = o.converter) == null ? void 0 : n.fromAttribute) !== void 0 ? o.converter : ct;
         | 
| 209 | 
            -
                  this._$Em = s, this[s] = h.fromAttribute(e, o.type), this._$Em = null;
         | 
| 210 | 
            -
                }
         | 
| 211 | 
            -
              }
         | 
| 212 | 
            -
              requestUpdate(t, e, i, s = !1, n) {
         | 
| 213 | 
            -
                if (t !== void 0) {
         | 
| 214 | 
            -
                  if (i ?? (i = this.constructor.getPropertyOptions(t)), !(i.hasChanged ?? Xt)(s ? n : this[t], e))
         | 
| 215 | 
            -
                    return;
         | 
| 216 | 
            -
                  this.C(t, e, i);
         | 
| 217 | 
            -
                }
         | 
| 218 | 
            -
                this.isUpdatePending === !1 && (this._$Eg = this._$EP());
         | 
| 219 | 
            -
              }
         | 
| 220 | 
            -
              C(t, e, i) {
         | 
| 221 | 
            -
                this._$AL.has(t) || this._$AL.set(t, e), i.reflect === !0 && this._$Em !== t && (this._$Ej ?? (this._$Ej = /* @__PURE__ */ new Set())).add(t);
         | 
| 222 | 
            -
              }
         | 
| 223 | 
            -
              async _$EP() {
         | 
| 224 | 
            -
                this.isUpdatePending = !0;
         | 
| 225 | 
            -
                try {
         | 
| 226 | 
            -
                  await this._$Eg;
         | 
| 227 | 
            -
                } catch (e) {
         | 
| 228 | 
            -
                  Promise.reject(e);
         | 
| 229 | 
            -
                }
         | 
| 230 | 
            -
                const t = this.scheduleUpdate();
         | 
| 231 | 
            -
                return t != null && await t, !this.isUpdatePending;
         | 
| 232 | 
            -
              }
         | 
| 233 | 
            -
              scheduleUpdate() {
         | 
| 234 | 
            -
                return this.performUpdate();
         | 
| 235 | 
            -
              }
         | 
| 236 | 
            -
              performUpdate() {
         | 
| 237 | 
            -
                var i;
         | 
| 238 | 
            -
                if (!this.isUpdatePending)
         | 
| 239 | 
            -
                  return;
         | 
| 240 | 
            -
                if (!this.hasUpdated) {
         | 
| 241 | 
            -
                  if (this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this._$Ep) {
         | 
| 242 | 
            -
                    for (const [n, o] of this._$Ep)
         | 
| 243 | 
            -
                      this[n] = o;
         | 
| 244 | 
            -
                    this._$Ep = void 0;
         | 
| 245 | 
            -
                  }
         | 
| 246 | 
            -
                  const s = this.constructor.elementProperties;
         | 
| 247 | 
            -
                  if (s.size > 0)
         | 
| 248 | 
            -
                    for (const [n, o] of s)
         | 
| 249 | 
            -
                      o.wrapped !== !0 || this._$AL.has(n) || this[n] === void 0 || this.C(n, this[n], o);
         | 
| 250 | 
            -
                }
         | 
| 251 | 
            -
                let t = !1;
         | 
| 252 | 
            -
                const e = this._$AL;
         | 
| 253 | 
            -
                try {
         | 
| 254 | 
            -
                  t = this.shouldUpdate(e), t ? (this.willUpdate(e), (i = this._$E_) == null || i.forEach((s) => {
         | 
| 255 | 
            -
                    var n;
         | 
| 256 | 
            -
                    return (n = s.hostUpdate) == null ? void 0 : n.call(s);
         | 
| 257 | 
            -
                  }), this.update(e)) : this._$ET();
         | 
| 258 | 
            -
                } catch (s) {
         | 
| 259 | 
            -
                  throw t = !1, this._$ET(), s;
         | 
| 260 | 
            -
                }
         | 
| 261 | 
            -
                t && this._$AE(e);
         | 
| 262 | 
            -
              }
         | 
| 263 | 
            -
              willUpdate(t) {
         | 
| 264 | 
            -
              }
         | 
| 265 | 
            -
              _$AE(t) {
         | 
| 266 | 
            -
                var e;
         | 
| 267 | 
            -
                (e = this._$E_) == null || e.forEach((i) => {
         | 
| 268 | 
            -
                  var s;
         | 
| 269 | 
            -
                  return (s = i.hostUpdated) == null ? void 0 : s.call(i);
         | 
| 270 | 
            -
                }), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(t)), this.updated(t);
         | 
| 271 | 
            -
              }
         | 
| 272 | 
            -
              _$ET() {
         | 
| 273 | 
            -
                this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = !1;
         | 
| 274 | 
            -
              }
         | 
| 275 | 
            -
              get updateComplete() {
         | 
| 276 | 
            -
                return this.getUpdateComplete();
         | 
| 277 | 
            -
              }
         | 
| 278 | 
            -
              getUpdateComplete() {
         | 
| 279 | 
            -
                return this._$Eg;
         | 
| 280 | 
            -
              }
         | 
| 281 | 
            -
              shouldUpdate(t) {
         | 
| 282 | 
            -
                return !0;
         | 
| 283 | 
            -
              }
         | 
| 284 | 
            -
              update(t) {
         | 
| 285 | 
            -
                this._$Ej && (this._$Ej = this._$Ej.forEach((e) => this._$EO(e, this[e]))), this._$ET();
         | 
| 286 | 
            -
              }
         | 
| 287 | 
            -
              updated(t) {
         | 
| 288 | 
            -
              }
         | 
| 289 | 
            -
              firstUpdated(t) {
         | 
| 290 | 
            -
              }
         | 
| 291 | 
            -
            };
         | 
| 292 | 
            -
            N.elementStyles = [], N.shadowRootOptions = { mode: "open" }, N[I("elementProperties")] = /* @__PURE__ */ new Map(), N[I("finalized")] = /* @__PURE__ */ new Map(), rt == null || rt({ ReactiveElement: N }), (b.reactiveElementVersions ?? (b.reactiveElementVersions = [])).push("2.0.2");
         | 
| 293 | 
            -
            /**
         | 
| 294 | 
            -
             * @license
         | 
| 295 | 
            -
             * Copyright 2017 Google LLC
         | 
| 296 | 
            -
             * SPDX-License-Identifier: BSD-3-Clause
         | 
| 297 | 
            -
             */
         | 
| 298 | 
            -
            const V = globalThis, Y = V.trustedTypes, bt = Y ? Y.createPolicy("lit-html", { createHTML: (r) => r }) : void 0, Jt = "$lit$", y = `lit$${(Math.random() + "").slice(9)}$`, Kt = "?" + y, ye = `<${Kt}>`, T = document, Q = () => T.createComment(""), B = (r) => r === null || typeof r != "object" && typeof r != "function", Ft = Array.isArray, Ae = (r) => Ft(r) || typeof (r == null ? void 0 : r[Symbol.iterator]) == "function", nt = `[ 	
         | 
| 299 | 
            -
            \f\r]`, L = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Et = /-->/g, St = />/g, S = RegExp(`>|${nt}(?:([^\\s"'>=/]+)(${nt}*=${nt}*(?:[^ 	
         | 
| 300 | 
            -
            \f\r"'\`<>=]|("|')|))|$)`, "g"), wt = /'/g, Pt = /"/g, Gt = /^(?:script|style|textarea|title)$/i, W = Symbol.for("lit-noChange"), _ = Symbol.for("lit-nothing"), Ct = /* @__PURE__ */ new WeakMap(), C = T.createTreeWalker(T, 129);
         | 
| 301 | 
            -
            function Zt(r, t) {
         | 
| 302 | 
            -
              if (!Array.isArray(r) || !r.hasOwnProperty("raw"))
         | 
| 303 | 
            -
                throw Error("invalid template strings array");
         | 
| 304 | 
            -
              return bt !== void 0 ? bt.createHTML(t) : t;
         | 
| 305 | 
            -
            }
         | 
| 306 | 
            -
            const be = (r, t) => {
         | 
| 307 | 
            -
              const e = r.length - 1, i = [];
         | 
| 308 | 
            -
              let s, n = t === 2 ? "<svg>" : "", o = L;
         | 
| 309 | 
            -
              for (let h = 0; h < e; h++) {
         | 
| 310 | 
            -
                const a = r[h];
         | 
| 311 | 
            -
                let d, c, l = -1, p = 0;
         | 
| 312 | 
            -
                for (; p < a.length && (o.lastIndex = p, c = o.exec(a), c !== null); )
         | 
| 313 | 
            -
                  p = o.lastIndex, o === L ? c[1] === "!--" ? o = Et : c[1] !== void 0 ? o = St : c[2] !== void 0 ? (Gt.test(c[2]) && (s = RegExp("</" + c[2], "g")), o = S) : c[3] !== void 0 && (o = S) : o === S ? c[0] === ">" ? (o = s ?? L, l = -1) : c[1] === void 0 ? l = -2 : (l = o.lastIndex - c[2].length, d = c[1], o = c[3] === void 0 ? S : c[3] === '"' ? Pt : wt) : o === Pt || o === wt ? o = S : o === Et || o === St ? o = L : (o = S, s = void 0);
         | 
| 314 | 
            -
                const u = o === S && r[h + 1].startsWith("/>") ? " " : "";
         | 
| 315 | 
            -
                n += o === L ? a + ye : l >= 0 ? (i.push(d), a.slice(0, l) + Jt + a.slice(l) + y + u) : a + y + (l === -2 ? h : u);
         | 
| 316 | 
            -
              }
         | 
| 317 | 
            -
              return [Zt(r, n + (r[e] || "<?>") + (t === 2 ? "</svg>" : "")), i];
         | 
| 318 | 
            -
            };
         | 
| 319 | 
            -
            let pt = class Yt {
         | 
| 320 | 
            -
              constructor({ strings: t, _$litType$: e }, i) {
         | 
| 321 | 
            -
                let s;
         | 
| 322 | 
            -
                this.parts = [];
         | 
| 323 | 
            -
                let n = 0, o = 0;
         | 
| 324 | 
            -
                const h = t.length - 1, a = this.parts, [d, c] = be(t, e);
         | 
| 325 | 
            -
                if (this.el = Yt.createElement(d, i), C.currentNode = this.el.content, e === 2) {
         | 
| 326 | 
            -
                  const l = this.el.content.firstChild;
         | 
| 327 | 
            -
                  l.replaceWith(...l.childNodes);
         | 
| 328 | 
            -
                }
         | 
| 329 | 
            -
                for (; (s = C.nextNode()) !== null && a.length < h; ) {
         | 
| 330 | 
            -
                  if (s.nodeType === 1) {
         | 
| 331 | 
            -
                    if (s.hasAttributes())
         | 
| 332 | 
            -
                      for (const l of s.getAttributeNames())
         | 
| 333 | 
            -
                        if (l.endsWith(Jt)) {
         | 
| 334 | 
            -
                          const p = c[o++], u = s.getAttribute(l).split(y), g = /([.?@])?(.*)/.exec(p);
         | 
| 335 | 
            -
                          a.push({ type: 1, index: n, name: g[2], strings: u, ctor: g[1] === "." ? Se : g[1] === "?" ? we : g[1] === "@" ? Pe : it }), s.removeAttribute(l);
         | 
| 336 | 
            -
                        } else
         | 
| 337 | 
            -
                          l.startsWith(y) && (a.push({ type: 6, index: n }), s.removeAttribute(l));
         | 
| 338 | 
            -
                    if (Gt.test(s.tagName)) {
         | 
| 339 | 
            -
                      const l = s.textContent.split(y), p = l.length - 1;
         | 
| 340 | 
            -
                      if (p > 0) {
         | 
| 341 | 
            -
                        s.textContent = Y ? Y.emptyScript : "";
         | 
| 342 | 
            -
                        for (let u = 0; u < p; u++)
         | 
| 343 | 
            -
                          s.append(l[u], Q()), C.nextNode(), a.push({ type: 2, index: ++n });
         | 
| 344 | 
            -
                        s.append(l[p], Q());
         | 
| 345 | 
            -
                      }
         | 
| 346 | 
            -
                    }
         | 
| 347 | 
            -
                  } else if (s.nodeType === 8)
         | 
| 348 | 
            -
                    if (s.data === Kt)
         | 
| 349 | 
            -
                      a.push({ type: 2, index: n });
         | 
| 350 | 
            -
                    else {
         | 
| 351 | 
            -
                      let l = -1;
         | 
| 352 | 
            -
                      for (; (l = s.data.indexOf(y, l + 1)) !== -1; )
         | 
| 353 | 
            -
                        a.push({ type: 7, index: n }), l += y.length - 1;
         | 
| 354 | 
            -
                    }
         | 
| 355 | 
            -
                  n++;
         | 
| 356 | 
            -
                }
         | 
| 357 | 
            -
              }
         | 
| 358 | 
            -
              static createElement(t, e) {
         | 
| 359 | 
            -
                const i = T.createElement("template");
         | 
| 360 | 
            -
                return i.innerHTML = t, i;
         | 
| 361 | 
            -
              }
         | 
| 362 | 
            -
            };
         | 
| 363 | 
            -
            function H(r, t, e = r, i) {
         | 
| 364 | 
            -
              var o, h;
         | 
| 365 | 
            -
              if (t === W)
         | 
| 366 | 
            -
                return t;
         | 
| 367 | 
            -
              let s = i !== void 0 ? (o = e._$Co) == null ? void 0 : o[i] : e._$Cl;
         | 
| 368 | 
            -
              const n = B(t) ? void 0 : t._$litDirective$;
         | 
| 369 | 
            -
              return (s == null ? void 0 : s.constructor) !== n && ((h = s == null ? void 0 : s._$AO) == null || h.call(s, !1), n === void 0 ? s = void 0 : (s = new n(r), s._$AT(r, e, i)), i !== void 0 ? (e._$Co ?? (e._$Co = []))[i] = s : e._$Cl = s), s !== void 0 && (t = H(r, s._$AS(r, t.values), s, i)), t;
         | 
| 370 | 
            -
            }
         | 
| 371 | 
            -
            let Ee = class {
         | 
| 372 | 
            -
              constructor(t, e) {
         | 
| 373 | 
            -
                this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = e;
         | 
| 374 | 
            -
              }
         | 
| 375 | 
            -
              get parentNode() {
         | 
| 376 | 
            -
                return this._$AM.parentNode;
         | 
| 377 | 
            -
              }
         | 
| 378 | 
            -
              get _$AU() {
         | 
| 379 | 
            -
                return this._$AM._$AU;
         | 
| 380 | 
            -
              }
         | 
| 381 | 
            -
              u(t) {
         | 
| 382 | 
            -
                const { el: { content: e }, parts: i } = this._$AD, s = ((t == null ? void 0 : t.creationScope) ?? T).importNode(e, !0);
         | 
| 383 | 
            -
                C.currentNode = s;
         | 
| 384 | 
            -
                let n = C.nextNode(), o = 0, h = 0, a = i[0];
         | 
| 385 | 
            -
                for (; a !== void 0; ) {
         | 
| 386 | 
            -
                  if (o === a.index) {
         | 
| 387 | 
            -
                    let d;
         | 
| 388 | 
            -
                    a.type === 2 ? d = new Qt(n, n.nextSibling, this, t) : a.type === 1 ? d = new a.ctor(n, a.name, a.strings, this, t) : a.type === 6 && (d = new Ce(n, this, t)), this._$AV.push(d), a = i[++h];
         | 
| 389 | 
            -
                  }
         | 
| 390 | 
            -
                  o !== (a == null ? void 0 : a.index) && (n = C.nextNode(), o++);
         | 
| 391 | 
            -
                }
         | 
| 392 | 
            -
                return C.currentNode = T, s;
         | 
| 393 | 
            -
              }
         | 
| 394 | 
            -
              p(t) {
         | 
| 395 | 
            -
                let e = 0;
         | 
| 396 | 
            -
                for (const i of this._$AV)
         | 
| 397 | 
            -
                  i !== void 0 && (i.strings !== void 0 ? (i._$AI(t, i, e), e += i.strings.length - 2) : i._$AI(t[e])), e++;
         | 
| 398 | 
            -
              }
         | 
| 399 | 
            -
            }, Qt = class te {
         | 
| 400 | 
            -
              get _$AU() {
         | 
| 401 | 
            -
                var t;
         | 
| 402 | 
            -
                return ((t = this._$AM) == null ? void 0 : t._$AU) ?? this._$Cv;
         | 
| 403 | 
            -
              }
         | 
| 404 | 
            -
              constructor(t, e, i, s) {
         | 
| 405 | 
            -
                this.type = 2, this._$AH = _, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = i, this.options = s, this._$Cv = (s == null ? void 0 : s.isConnected) ?? !0;
         | 
| 406 | 
            -
              }
         | 
| 407 | 
            -
              get parentNode() {
         | 
| 408 | 
            -
                let t = this._$AA.parentNode;
         | 
| 409 | 
            -
                const e = this._$AM;
         | 
| 410 | 
            -
                return e !== void 0 && (t == null ? void 0 : t.nodeType) === 11 && (t = e.parentNode), t;
         | 
| 411 | 
            -
              }
         | 
| 412 | 
            -
              get startNode() {
         | 
| 413 | 
            -
                return this._$AA;
         | 
| 414 | 
            -
              }
         | 
| 415 | 
            -
              get endNode() {
         | 
| 416 | 
            -
                return this._$AB;
         | 
| 417 | 
            -
              }
         | 
| 418 | 
            -
              _$AI(t, e = this) {
         | 
| 419 | 
            -
                t = H(this, t, e), B(t) ? t === _ || t == null || t === "" ? (this._$AH !== _ && this._$AR(), this._$AH = _) : t !== this._$AH && t !== W && this._(t) : t._$litType$ !== void 0 ? this.g(t) : t.nodeType !== void 0 ? this.$(t) : Ae(t) ? this.T(t) : this._(t);
         | 
| 420 | 
            -
              }
         | 
| 421 | 
            -
              k(t) {
         | 
| 422 | 
            -
                return this._$AA.parentNode.insertBefore(t, this._$AB);
         | 
| 423 | 
            -
              }
         | 
| 424 | 
            -
              $(t) {
         | 
| 425 | 
            -
                this._$AH !== t && (this._$AR(), this._$AH = this.k(t));
         | 
| 426 | 
            -
              }
         | 
| 427 | 
            -
              _(t) {
         | 
| 428 | 
            -
                this._$AH !== _ && B(this._$AH) ? this._$AA.nextSibling.data = t : this.$(T.createTextNode(t)), this._$AH = t;
         | 
| 429 | 
            -
              }
         | 
| 430 | 
            -
              g(t) {
         | 
| 431 | 
            -
                var n;
         | 
| 432 | 
            -
                const { values: e, _$litType$: i } = t, s = typeof i == "number" ? this._$AC(t) : (i.el === void 0 && (i.el = pt.createElement(Zt(i.h, i.h[0]), this.options)), i);
         | 
| 433 | 
            -
                if (((n = this._$AH) == null ? void 0 : n._$AD) === s)
         | 
| 434 | 
            -
                  this._$AH.p(e);
         | 
| 435 | 
            -
                else {
         | 
| 436 | 
            -
                  const o = new Ee(s, this), h = o.u(this.options);
         | 
| 437 | 
            -
                  o.p(e), this.$(h), this._$AH = o;
         | 
| 438 | 
            -
                }
         | 
| 439 | 
            -
              }
         | 
| 440 | 
            -
              _$AC(t) {
         | 
| 441 | 
            -
                let e = Ct.get(t.strings);
         | 
| 442 | 
            -
                return e === void 0 && Ct.set(t.strings, e = new pt(t)), e;
         | 
| 443 | 
            -
              }
         | 
| 444 | 
            -
              T(t) {
         | 
| 445 | 
            -
                Ft(this._$AH) || (this._$AH = [], this._$AR());
         | 
| 446 | 
            -
                const e = this._$AH;
         | 
| 447 | 
            -
                let i, s = 0;
         | 
| 448 | 
            -
                for (const n of t)
         | 
| 449 | 
            -
                  s === e.length ? e.push(i = new te(this.k(Q()), this.k(Q()), this, this.options)) : i = e[s], i._$AI(n), s++;
         | 
| 450 | 
            -
                s < e.length && (this._$AR(i && i._$AB.nextSibling, s), e.length = s);
         | 
| 451 | 
            -
              }
         | 
| 452 | 
            -
              _$AR(t = this._$AA.nextSibling, e) {
         | 
| 453 | 
            -
                var i;
         | 
| 454 | 
            -
                for ((i = this._$AP) == null ? void 0 : i.call(this, !1, !0, e); t && t !== this._$AB; ) {
         | 
| 455 | 
            -
                  const s = t.nextSibling;
         | 
| 456 | 
            -
                  t.remove(), t = s;
         | 
| 457 | 
            -
                }
         | 
| 458 | 
            -
              }
         | 
| 459 | 
            -
              setConnected(t) {
         | 
| 460 | 
            -
                var e;
         | 
| 461 | 
            -
                this._$AM === void 0 && (this._$Cv = t, (e = this._$AP) == null || e.call(this, t));
         | 
| 462 | 
            -
              }
         | 
| 463 | 
            -
            }, it = class {
         | 
| 464 | 
            -
              get tagName() {
         | 
| 465 | 
            -
                return this.element.tagName;
         | 
| 466 | 
            -
              }
         | 
| 467 | 
            -
              get _$AU() {
         | 
| 468 | 
            -
                return this._$AM._$AU;
         | 
| 469 | 
            -
              }
         | 
| 470 | 
            -
              constructor(t, e, i, s, n) {
         | 
| 471 | 
            -
                this.type = 1, this._$AH = _, this._$AN = void 0, this.element = t, this.name = e, this._$AM = s, this.options = n, i.length > 2 || i[0] !== "" || i[1] !== "" ? (this._$AH = Array(i.length - 1).fill(new String()), this.strings = i) : this._$AH = _;
         | 
| 472 | 
            -
              }
         | 
| 473 | 
            -
              _$AI(t, e = this, i, s) {
         | 
| 474 | 
            -
                const n = this.strings;
         | 
| 475 | 
            -
                let o = !1;
         | 
| 476 | 
            -
                if (n === void 0)
         | 
| 477 | 
            -
                  t = H(this, t, e, 0), o = !B(t) || t !== this._$AH && t !== W, o && (this._$AH = t);
         | 
| 478 | 
            -
                else {
         | 
| 479 | 
            -
                  const h = t;
         | 
| 480 | 
            -
                  let a, d;
         | 
| 481 | 
            -
                  for (t = n[0], a = 0; a < n.length - 1; a++)
         | 
| 482 | 
            -
                    d = H(this, h[i + a], e, a), d === W && (d = this._$AH[a]), o || (o = !B(d) || d !== this._$AH[a]), d === _ ? t = _ : t !== _ && (t += (d ?? "") + n[a + 1]), this._$AH[a] = d;
         | 
| 483 | 
            -
                }
         | 
| 484 | 
            -
                o && !s && this.O(t);
         | 
| 485 | 
            -
              }
         | 
| 486 | 
            -
              O(t) {
         | 
| 487 | 
            -
                t === _ ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
         | 
| 488 | 
            -
              }
         | 
| 489 | 
            -
            }, Se = class extends it {
         | 
| 490 | 
            -
              constructor() {
         | 
| 491 | 
            -
                super(...arguments), this.type = 3;
         | 
| 492 | 
            -
              }
         | 
| 493 | 
            -
              O(t) {
         | 
| 494 | 
            -
                this.element[this.name] = t === _ ? void 0 : t;
         | 
| 495 | 
            -
              }
         | 
| 496 | 
            -
            }, we = class extends it {
         | 
| 497 | 
            -
              constructor() {
         | 
| 498 | 
            -
                super(...arguments), this.type = 4;
         | 
| 499 | 
            -
              }
         | 
| 500 | 
            -
              O(t) {
         | 
| 501 | 
            -
                this.element.toggleAttribute(this.name, !!t && t !== _);
         | 
| 502 | 
            -
              }
         | 
| 503 | 
            -
            }, Pe = class extends it {
         | 
| 504 | 
            -
              constructor(t, e, i, s, n) {
         | 
| 505 | 
            -
                super(t, e, i, s, n), this.type = 5;
         | 
| 506 | 
            -
              }
         | 
| 507 | 
            -
              _$AI(t, e = this) {
         | 
| 508 | 
            -
                if ((t = H(this, t, e, 0) ?? _) === W)
         | 
| 509 | 
            -
                  return;
         | 
| 510 | 
            -
                const i = this._$AH, s = t === _ && i !== _ || t.capture !== i.capture || t.once !== i.once || t.passive !== i.passive, n = t !== _ && (i === _ || s);
         | 
| 511 | 
            -
                s && this.element.removeEventListener(this.name, this, i), n && this.element.addEventListener(this.name, this, t), this._$AH = t;
         | 
| 512 | 
            -
              }
         | 
| 513 | 
            -
              handleEvent(t) {
         | 
| 514 | 
            -
                var e;
         | 
| 515 | 
            -
                typeof this._$AH == "function" ? this._$AH.call(((e = this.options) == null ? void 0 : e.host) ?? this.element, t) : this._$AH.handleEvent(t);
         | 
| 516 | 
            -
              }
         | 
| 517 | 
            -
            }, Ce = class {
         | 
| 518 | 
            -
              constructor(t, e, i) {
         | 
| 519 | 
            -
                this.element = t, this.type = 6, this._$AN = void 0, this._$AM = e, this.options = i;
         | 
| 520 | 
            -
              }
         | 
| 521 | 
            -
              get _$AU() {
         | 
| 522 | 
            -
                return this._$AM._$AU;
         | 
| 523 | 
            -
              }
         | 
| 524 | 
            -
              _$AI(t) {
         | 
| 525 | 
            -
                H(this, t);
         | 
| 526 | 
            -
              }
         | 
| 527 | 
            -
            };
         | 
| 528 | 
            -
            const ot = V.litHtmlPolyfillSupport;
         | 
| 529 | 
            -
            ot == null || ot(pt, Qt), (V.litHtmlVersions ?? (V.litHtmlVersions = [])).push("3.1.0");
         | 
| 530 | 
            -
            /**
         | 
| 531 | 
            -
             * @license
         | 
| 532 | 
            -
             * Copyright 2019 Google LLC
         | 
| 533 | 
            -
             * SPDX-License-Identifier: BSD-3-Clause
         | 
| 534 | 
            -
             */
         | 
| 535 | 
            -
            const Z = globalThis, mt = Z.ShadowRoot && (Z.ShadyCSS === void 0 || Z.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, ee = Symbol(), Ut = /* @__PURE__ */ new WeakMap();
         | 
| 536 | 
            -
            let Ue = class {
         | 
| 537 | 
            -
              constructor(t, e, i) {
         | 
| 538 | 
            -
                if (this._$cssResult$ = !0, i !== ee)
         | 
| 539 | 
            -
                  throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
         | 
| 540 | 
            -
                this.cssText = t, this.t = e;
         | 
| 541 | 
            -
              }
         | 
| 542 | 
            -
              get styleSheet() {
         | 
| 543 | 
            -
                let t = this.o;
         | 
| 544 | 
            -
                const e = this.t;
         | 
| 545 | 
            -
                if (mt && t === void 0) {
         | 
| 546 | 
            -
                  const i = e !== void 0 && e.length === 1;
         | 
| 547 | 
            -
                  i && (t = Ut.get(e)), t === void 0 && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), i && Ut.set(e, t));
         | 
| 548 | 
            -
                }
         | 
| 549 | 
            -
                return t;
         | 
| 550 | 
            -
              }
         | 
| 551 | 
            -
              toString() {
         | 
| 552 | 
            -
                return this.cssText;
         | 
| 553 | 
            -
              }
         | 
| 554 | 
            -
            };
         | 
| 555 | 
            -
            const Te = (r) => new Ue(typeof r == "string" ? r : r + "", void 0, ee), xe = (r, t) => {
         | 
| 556 | 
            -
              if (mt)
         | 
| 557 | 
            -
                r.adoptedStyleSheets = t.map((e) => e instanceof CSSStyleSheet ? e : e.styleSheet);
         | 
| 558 | 
            -
              else
         | 
| 559 | 
            -
                for (const e of t) {
         | 
| 560 | 
            -
                  const i = document.createElement("style"), s = Z.litNonce;
         | 
| 561 | 
            -
                  s !== void 0 && i.setAttribute("nonce", s), i.textContent = e.cssText, r.appendChild(i);
         | 
| 562 | 
            -
                }
         | 
| 563 | 
            -
            }, Tt = mt ? (r) => r : (r) => r instanceof CSSStyleSheet ? ((t) => {
         | 
| 564 | 
            -
              let e = "";
         | 
| 565 | 
            -
              for (const i of t.cssRules)
         | 
| 566 | 
            -
                e += i.cssText;
         | 
| 567 | 
            -
              return Te(e);
         | 
| 568 | 
            -
            })(r) : r;
         | 
| 569 | 
            -
            /**
         | 
| 570 | 
            -
             * @license
         | 
| 571 | 
            -
             * Copyright 2017 Google LLC
         | 
| 572 | 
            -
             * SPDX-License-Identifier: BSD-3-Clause
         | 
| 573 | 
            -
             */
         | 
| 574 | 
            -
            const { is: Re, defineProperty: He, getOwnPropertyDescriptor: ke, getOwnPropertyNames: Oe, getOwnPropertySymbols: Ne, getPrototypeOf: Le } = Object, E = globalThis, xt = E.trustedTypes, Me = xt ? xt.emptyScript : "", at = E.reactiveElementPolyfillSupport, D = (r, t) => r, ut = { toAttribute(r, t) {
         | 
| 575 | 
            -
              switch (t) {
         | 
| 576 | 
            -
                case Boolean:
         | 
| 577 | 
            -
                  r = r ? Me : null;
         | 
| 578 | 
            -
                  break;
         | 
| 579 | 
            -
                case Object:
         | 
| 580 | 
            -
                case Array:
         | 
| 581 | 
            -
                  r = r == null ? r : JSON.stringify(r);
         | 
| 582 | 
            -
              }
         | 
| 583 | 
            -
              return r;
         | 
| 584 | 
            -
            }, fromAttribute(r, t) {
         | 
| 585 | 
            -
              let e = r;
         | 
| 586 | 
            -
              switch (t) {
         | 
| 587 | 
            -
                case Boolean:
         | 
| 588 | 
            -
                  e = r !== null;
         | 
| 589 | 
            -
                  break;
         | 
| 590 | 
            -
                case Number:
         | 
| 591 | 
            -
                  e = r === null ? null : Number(r);
         | 
| 592 | 
            -
                  break;
         | 
| 593 | 
            -
                case Object:
         | 
| 594 | 
            -
                case Array:
         | 
| 595 | 
            -
                  try {
         | 
| 596 | 
            -
                    e = JSON.parse(r);
         | 
| 597 | 
            -
                  } catch {
         | 
| 598 | 
            -
                    e = null;
         | 
| 599 | 
            -
                  }
         | 
| 600 | 
            -
              }
         | 
| 601 | 
            -
              return e;
         | 
| 602 | 
            -
            } }, ie = (r, t) => !Re(r, t), Rt = { attribute: !0, type: String, converter: ut, reflect: !1, hasChanged: ie };
         | 
| 603 | 
            -
            Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), E.litPropertyMetadata ?? (E.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
         | 
| 604 | 
            -
            class R extends HTMLElement {
         | 
| 605 | 
            -
              static addInitializer(t) {
         | 
| 606 | 
            -
                this._$Ei(), (this.l ?? (this.l = [])).push(t);
         | 
| 607 | 
            -
              }
         | 
| 608 | 
            -
              static get observedAttributes() {
         | 
| 609 | 
            -
                return this.finalize(), this._$Eh && [...this._$Eh.keys()];
         | 
| 610 | 
            -
              }
         | 
| 611 | 
            -
              static createProperty(t, e = Rt) {
         | 
| 612 | 
            -
                if (e.state && (e.attribute = !1), this._$Ei(), this.elementProperties.set(t, e), !e.noAccessor) {
         | 
| 613 | 
            -
                  const i = Symbol(), s = this.getPropertyDescriptor(t, i, e);
         | 
| 614 | 
            -
                  s !== void 0 && He(this.prototype, t, s);
         | 
| 615 | 
            -
                }
         | 
| 616 | 
            -
              }
         | 
| 617 | 
            -
              static getPropertyDescriptor(t, e, i) {
         | 
| 618 | 
            -
                const { get: s, set: n } = ke(this.prototype, t) ?? { get() {
         | 
| 619 | 
            -
                  return this[e];
         | 
| 620 | 
            -
                }, set(o) {
         | 
| 621 | 
            -
                  this[e] = o;
         | 
| 622 | 
            -
                } };
         | 
| 623 | 
            -
                return { get() {
         | 
| 624 | 
            -
                  return s == null ? void 0 : s.call(this);
         | 
| 625 | 
            -
                }, set(o) {
         | 
| 626 | 
            -
                  const h = s == null ? void 0 : s.call(this);
         | 
| 627 | 
            -
                  n.call(this, o), this.requestUpdate(t, h, i);
         | 
| 628 | 
            -
                }, configurable: !0, enumerable: !0 };
         | 
| 629 | 
            -
              }
         | 
| 630 | 
            -
              static getPropertyOptions(t) {
         | 
| 631 | 
            -
                return this.elementProperties.get(t) ?? Rt;
         | 
| 632 | 
            -
              }
         | 
| 633 | 
            -
              static _$Ei() {
         | 
| 634 | 
            -
                if (this.hasOwnProperty(D("elementProperties")))
         | 
| 635 | 
            -
                  return;
         | 
| 636 | 
            -
                const t = Le(this);
         | 
| 637 | 
            -
                t.finalize(), t.l !== void 0 && (this.l = [...t.l]), this.elementProperties = new Map(t.elementProperties);
         | 
| 638 | 
            -
              }
         | 
| 639 | 
            -
              static finalize() {
         | 
| 640 | 
            -
                if (this.hasOwnProperty(D("finalized")))
         | 
| 641 | 
            -
                  return;
         | 
| 642 | 
            -
                if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(D("properties"))) {
         | 
| 643 | 
            -
                  const e = this.properties, i = [...Oe(e), ...Ne(e)];
         | 
| 644 | 
            -
                  for (const s of i)
         | 
| 645 | 
            -
                    this.createProperty(s, e[s]);
         | 
| 646 | 
            -
                }
         | 
| 647 | 
            -
                const t = this[Symbol.metadata];
         | 
| 648 | 
            -
                if (t !== null) {
         | 
| 649 | 
            -
                  const e = litPropertyMetadata.get(t);
         | 
| 650 | 
            -
                  if (e !== void 0)
         | 
| 651 | 
            -
                    for (const [i, s] of e)
         | 
| 652 | 
            -
                      this.elementProperties.set(i, s);
         | 
| 653 | 
            -
                }
         | 
| 654 | 
            -
                this._$Eh = /* @__PURE__ */ new Map();
         | 
| 655 | 
            -
                for (const [e, i] of this.elementProperties) {
         | 
| 656 | 
            -
                  const s = this._$Eu(e, i);
         | 
| 657 | 
            -
                  s !== void 0 && this._$Eh.set(s, e);
         | 
| 658 | 
            -
                }
         | 
| 659 | 
            -
                this.elementStyles = this.finalizeStyles(this.styles);
         | 
| 660 | 
            -
              }
         | 
| 661 | 
            -
              static finalizeStyles(t) {
         | 
| 662 | 
            -
                const e = [];
         | 
| 663 | 
            -
                if (Array.isArray(t)) {
         | 
| 664 | 
            -
                  const i = new Set(t.flat(1 / 0).reverse());
         | 
| 665 | 
            -
                  for (const s of i)
         | 
| 666 | 
            -
                    e.unshift(Tt(s));
         | 
| 667 | 
            -
                } else
         | 
| 668 | 
            -
                  t !== void 0 && e.push(Tt(t));
         | 
| 669 | 
            -
                return e;
         | 
| 670 | 
            -
              }
         | 
| 671 | 
            -
              static _$Eu(t, e) {
         | 
| 672 | 
            -
                const i = e.attribute;
         | 
| 673 | 
            -
                return i === !1 ? void 0 : typeof i == "string" ? i : typeof t == "string" ? t.toLowerCase() : void 0;
         | 
| 674 | 
            -
              }
         | 
| 675 | 
            -
              constructor() {
         | 
| 676 | 
            -
                super(), this._$Ep = void 0, this.isUpdatePending = !1, this.hasUpdated = !1, this._$Em = null, this._$Ev();
         | 
| 677 | 
            -
              }
         | 
| 678 | 
            -
              _$Ev() {
         | 
| 679 | 
            -
                var t;
         | 
| 680 | 
            -
                this._$Eg = new Promise((e) => this.enableUpdating = e), this._$AL = /* @__PURE__ */ new Map(), this._$ES(), this.requestUpdate(), (t = this.constructor.l) == null || t.forEach((e) => e(this));
         | 
| 681 | 
            -
              }
         | 
| 682 | 
            -
              addController(t) {
         | 
| 683 | 
            -
                var e;
         | 
| 684 | 
            -
                (this._$E_ ?? (this._$E_ = /* @__PURE__ */ new Set())).add(t), this.renderRoot !== void 0 && this.isConnected && ((e = t.hostConnected) == null || e.call(t));
         | 
| 685 | 
            -
              }
         | 
| 686 | 
            -
              removeController(t) {
         | 
| 687 | 
            -
                var e;
         | 
| 688 | 
            -
                (e = this._$E_) == null || e.delete(t);
         | 
| 689 | 
            -
              }
         | 
| 690 | 
            -
              _$ES() {
         | 
| 691 | 
            -
                const t = /* @__PURE__ */ new Map(), e = this.constructor.elementProperties;
         | 
| 692 | 
            -
                for (const i of e.keys())
         | 
| 693 | 
            -
                  this.hasOwnProperty(i) && (t.set(i, this[i]), delete this[i]);
         | 
| 694 | 
            -
                t.size > 0 && (this._$Ep = t);
         | 
| 695 | 
            -
              }
         | 
| 696 | 
            -
              createRenderRoot() {
         | 
| 697 | 
            -
                const t = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
         | 
| 698 | 
            -
                return xe(t, this.constructor.elementStyles), t;
         | 
| 699 | 
            -
              }
         | 
| 700 | 
            -
              connectedCallback() {
         | 
| 701 | 
            -
                var t;
         | 
| 702 | 
            -
                this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this.enableUpdating(!0), (t = this._$E_) == null || t.forEach((e) => {
         | 
| 703 | 
            -
                  var i;
         | 
| 704 | 
            -
                  return (i = e.hostConnected) == null ? void 0 : i.call(e);
         | 
| 705 | 
            -
                });
         | 
| 706 | 
            -
              }
         | 
| 707 | 
            -
              enableUpdating(t) {
         | 
| 708 | 
            -
              }
         | 
| 709 | 
            -
              disconnectedCallback() {
         | 
| 710 | 
            -
                var t;
         | 
| 711 | 
            -
                (t = this._$E_) == null || t.forEach((e) => {
         | 
| 712 | 
            -
                  var i;
         | 
| 713 | 
            -
                  return (i = e.hostDisconnected) == null ? void 0 : i.call(e);
         | 
| 714 | 
            -
                });
         | 
| 715 | 
            -
              }
         | 
| 716 | 
            -
              attributeChangedCallback(t, e, i) {
         | 
| 717 | 
            -
                this._$AK(t, i);
         | 
| 718 | 
            -
              }
         | 
| 719 | 
            -
              _$EO(t, e) {
         | 
| 720 | 
            -
                var n;
         | 
| 721 | 
            -
                const i = this.constructor.elementProperties.get(t), s = this.constructor._$Eu(t, i);
         | 
| 722 | 
            -
                if (s !== void 0 && i.reflect === !0) {
         | 
| 723 | 
            -
                  const o = (((n = i.converter) == null ? void 0 : n.toAttribute) !== void 0 ? i.converter : ut).toAttribute(e, i.type);
         | 
| 724 | 
            -
                  this._$Em = t, o == null ? this.removeAttribute(s) : this.setAttribute(s, o), this._$Em = null;
         | 
| 725 | 
            -
                }
         | 
| 726 | 
            -
              }
         | 
| 727 | 
            -
              _$AK(t, e) {
         | 
| 728 | 
            -
                var n;
         | 
| 729 | 
            -
                const i = this.constructor, s = i._$Eh.get(t);
         | 
| 730 | 
            -
                if (s !== void 0 && this._$Em !== s) {
         | 
| 731 | 
            -
                  const o = i.getPropertyOptions(s), h = typeof o.converter == "function" ? { fromAttribute: o.converter } : ((n = o.converter) == null ? void 0 : n.fromAttribute) !== void 0 ? o.converter : ut;
         | 
| 732 | 
            -
                  this._$Em = s, this[s] = h.fromAttribute(e, o.type), this._$Em = null;
         | 
| 733 | 
            -
                }
         | 
| 734 | 
            -
              }
         | 
| 735 | 
            -
              requestUpdate(t, e, i, s = !1, n) {
         | 
| 736 | 
            -
                if (t !== void 0) {
         | 
| 737 | 
            -
                  if (i ?? (i = this.constructor.getPropertyOptions(t)), !(i.hasChanged ?? ie)(s ? n : this[t], e))
         | 
| 738 | 
            -
                    return;
         | 
| 739 | 
            -
                  this.C(t, e, i);
         | 
| 740 | 
            -
                }
         | 
| 741 | 
            -
                this.isUpdatePending === !1 && (this._$Eg = this._$EP());
         | 
| 742 | 
            -
              }
         | 
| 743 | 
            -
              C(t, e, i) {
         | 
| 744 | 
            -
                this._$AL.has(t) || this._$AL.set(t, e), i.reflect === !0 && this._$Em !== t && (this._$Ej ?? (this._$Ej = /* @__PURE__ */ new Set())).add(t);
         | 
| 745 | 
            -
              }
         | 
| 746 | 
            -
              async _$EP() {
         | 
| 747 | 
            -
                this.isUpdatePending = !0;
         | 
| 748 | 
            -
                try {
         | 
| 749 | 
            -
                  await this._$Eg;
         | 
| 750 | 
            -
                } catch (e) {
         | 
| 751 | 
            -
                  Promise.reject(e);
         | 
| 752 | 
            -
                }
         | 
| 753 | 
            -
                const t = this.scheduleUpdate();
         | 
| 754 | 
            -
                return t != null && await t, !this.isUpdatePending;
         | 
| 755 | 
            -
              }
         | 
| 756 | 
            -
              scheduleUpdate() {
         | 
| 757 | 
            -
                return this.performUpdate();
         | 
| 758 | 
            -
              }
         | 
| 759 | 
            -
              performUpdate() {
         | 
| 760 | 
            -
                var i;
         | 
| 761 | 
            -
                if (!this.isUpdatePending)
         | 
| 762 | 
            -
                  return;
         | 
| 763 | 
            -
                if (!this.hasUpdated) {
         | 
| 764 | 
            -
                  if (this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this._$Ep) {
         | 
| 765 | 
            -
                    for (const [n, o] of this._$Ep)
         | 
| 766 | 
            -
                      this[n] = o;
         | 
| 767 | 
            -
                    this._$Ep = void 0;
         | 
| 768 | 
            -
                  }
         | 
| 769 | 
            -
                  const s = this.constructor.elementProperties;
         | 
| 770 | 
            -
                  if (s.size > 0)
         | 
| 771 | 
            -
                    for (const [n, o] of s)
         | 
| 772 | 
            -
                      o.wrapped !== !0 || this._$AL.has(n) || this[n] === void 0 || this.C(n, this[n], o);
         | 
| 773 | 
            -
                }
         | 
| 774 | 
            -
                let t = !1;
         | 
| 775 | 
            -
                const e = this._$AL;
         | 
| 776 | 
            -
                try {
         | 
| 777 | 
            -
                  t = this.shouldUpdate(e), t ? (this.willUpdate(e), (i = this._$E_) == null || i.forEach((s) => {
         | 
| 778 | 
            -
                    var n;
         | 
| 779 | 
            -
                    return (n = s.hostUpdate) == null ? void 0 : n.call(s);
         | 
| 780 | 
            -
                  }), this.update(e)) : this._$ET();
         | 
| 781 | 
            -
                } catch (s) {
         | 
| 782 | 
            -
                  throw t = !1, this._$ET(), s;
         | 
| 783 | 
            -
                }
         | 
| 784 | 
            -
                t && this._$AE(e);
         | 
| 785 | 
            -
              }
         | 
| 786 | 
            -
              willUpdate(t) {
         | 
| 787 | 
            -
              }
         | 
| 788 | 
            -
              _$AE(t) {
         | 
| 789 | 
            -
                var e;
         | 
| 790 | 
            -
                (e = this._$E_) == null || e.forEach((i) => {
         | 
| 791 | 
            -
                  var s;
         | 
| 792 | 
            -
                  return (s = i.hostUpdated) == null ? void 0 : s.call(i);
         | 
| 793 | 
            -
                }), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(t)), this.updated(t);
         | 
| 794 | 
            -
              }
         | 
| 795 | 
            -
              _$ET() {
         | 
| 796 | 
            -
                this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = !1;
         | 
| 797 | 
            -
              }
         | 
| 798 | 
            -
              get updateComplete() {
         | 
| 799 | 
            -
                return this.getUpdateComplete();
         | 
| 800 | 
            -
              }
         | 
| 801 | 
            -
              getUpdateComplete() {
         | 
| 802 | 
            -
                return this._$Eg;
         | 
| 803 | 
            -
              }
         | 
| 804 | 
            -
              shouldUpdate(t) {
         | 
| 805 | 
            -
                return !0;
         | 
| 806 | 
            -
              }
         | 
| 807 | 
            -
              update(t) {
         | 
| 808 | 
            -
                this._$Ej && (this._$Ej = this._$Ej.forEach((e) => this._$EO(e, this[e]))), this._$ET();
         | 
| 809 | 
            -
              }
         | 
| 810 | 
            -
              updated(t) {
         | 
| 811 | 
            -
              }
         | 
| 812 | 
            -
              firstUpdated(t) {
         | 
| 813 | 
            -
              }
         | 
| 814 | 
            -
            }
         | 
| 815 | 
            -
            R.elementStyles = [], R.shadowRootOptions = { mode: "open" }, R[D("elementProperties")] = /* @__PURE__ */ new Map(), R[D("finalized")] = /* @__PURE__ */ new Map(), at == null || at({ ReactiveElement: R }), (E.reactiveElementVersions ?? (E.reactiveElementVersions = [])).push("2.0.2");
         | 
| 816 | 
            -
            /**
         | 
| 817 | 
            -
             * @license
         | 
| 818 | 
            -
             * Copyright 2017 Google LLC
         | 
| 819 | 
            -
             * SPDX-License-Identifier: BSD-3-Clause
         | 
| 820 | 
            -
             */
         | 
| 821 | 
            -
            const z = globalThis, tt = z.trustedTypes, Ht = tt ? tt.createPolicy("lit-html", { createHTML: (r) => r }) : void 0, se = "$lit$", A = `lit$${(Math.random() + "").slice(9)}$`, re = "?" + A, Ie = `<${re}>`, x = document, q = () => x.createComment(""), X = (r) => r === null || typeof r != "object" && typeof r != "function", ne = Array.isArray, Ve = (r) => ne(r) || typeof (r == null ? void 0 : r[Symbol.iterator]) == "function", ht = `[ 	
         | 
| 822 | 
            -
            \f\r]`, M = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, kt = /-->/g, Ot = />/g, w = RegExp(`>|${ht}(?:([^\\s"'>=/]+)(${ht}*=${ht}*(?:[^ 	
         | 
| 823 | 
            -
            \f\r"'\`<>=]|("|')|))|$)`, "g"), Nt = /'/g, Lt = /"/g, oe = /^(?:script|style|textarea|title)$/i, De = (r) => (t, ...e) => ({ _$litType$: r, strings: t, values: e }), ze = De(1), k = Symbol.for("lit-noChange"), m = Symbol.for("lit-nothing"), Mt = /* @__PURE__ */ new WeakMap(), U = x.createTreeWalker(x, 129);
         | 
| 824 | 
            -
            function ae(r, t) {
         | 
| 825 | 
            -
              if (!Array.isArray(r) || !r.hasOwnProperty("raw"))
         | 
| 826 | 
            -
                throw Error("invalid template strings array");
         | 
| 827 | 
            -
              return Ht !== void 0 ? Ht.createHTML(t) : t;
         | 
| 828 | 
            -
            }
         | 
| 829 | 
            -
            const je = (r, t) => {
         | 
| 830 | 
            -
              const e = r.length - 1, i = [];
         | 
| 831 | 
            -
              let s, n = t === 2 ? "<svg>" : "", o = M;
         | 
| 832 | 
            -
              for (let h = 0; h < e; h++) {
         | 
| 833 | 
            -
                const a = r[h];
         | 
| 834 | 
            -
                let d, c, l = -1, p = 0;
         | 
| 835 | 
            -
                for (; p < a.length && (o.lastIndex = p, c = o.exec(a), c !== null); )
         | 
| 836 | 
            -
                  p = o.lastIndex, o === M ? c[1] === "!--" ? o = kt : c[1] !== void 0 ? o = Ot : c[2] !== void 0 ? (oe.test(c[2]) && (s = RegExp("</" + c[2], "g")), o = w) : c[3] !== void 0 && (o = w) : o === w ? c[0] === ">" ? (o = s ?? M, l = -1) : c[1] === void 0 ? l = -2 : (l = o.lastIndex - c[2].length, d = c[1], o = c[3] === void 0 ? w : c[3] === '"' ? Lt : Nt) : o === Lt || o === Nt ? o = w : o === kt || o === Ot ? o = M : (o = w, s = void 0);
         | 
| 837 | 
            -
                const u = o === w && r[h + 1].startsWith("/>") ? " " : "";
         | 
| 838 | 
            -
                n += o === M ? a + Ie : l >= 0 ? (i.push(d), a.slice(0, l) + se + a.slice(l) + A + u) : a + A + (l === -2 ? h : u);
         | 
| 839 | 
            -
              }
         | 
| 840 | 
            -
              return [ae(r, n + (r[e] || "<?>") + (t === 2 ? "</svg>" : "")), i];
         | 
| 841 | 
            -
            };
         | 
| 842 | 
            -
            class J {
         | 
| 843 | 
            -
              constructor({ strings: t, _$litType$: e }, i) {
         | 
| 844 | 
            -
                let s;
         | 
| 845 | 
            -
                this.parts = [];
         | 
| 846 | 
            -
                let n = 0, o = 0;
         | 
| 847 | 
            -
                const h = t.length - 1, a = this.parts, [d, c] = je(t, e);
         | 
| 848 | 
            -
                if (this.el = J.createElement(d, i), U.currentNode = this.el.content, e === 2) {
         | 
| 849 | 
            -
                  const l = this.el.content.firstChild;
         | 
| 850 | 
            -
                  l.replaceWith(...l.childNodes);
         | 
| 851 | 
            -
                }
         | 
| 852 | 
            -
                for (; (s = U.nextNode()) !== null && a.length < h; ) {
         | 
| 853 | 
            -
                  if (s.nodeType === 1) {
         | 
| 854 | 
            -
                    if (s.hasAttributes())
         | 
| 855 | 
            -
                      for (const l of s.getAttributeNames())
         | 
| 856 | 
            -
                        if (l.endsWith(se)) {
         | 
| 857 | 
            -
                          const p = c[o++], u = s.getAttribute(l).split(A), g = /([.?@])?(.*)/.exec(p);
         | 
| 858 | 
            -
                          a.push({ type: 1, index: n, name: g[2], strings: u, ctor: g[1] === "." ? We : g[1] === "?" ? qe : g[1] === "@" ? Xe : st }), s.removeAttribute(l);
         | 
| 859 | 
            -
                        } else
         | 
| 860 | 
            -
                          l.startsWith(A) && (a.push({ type: 6, index: n }), s.removeAttribute(l));
         | 
| 861 | 
            -
                    if (oe.test(s.tagName)) {
         | 
| 862 | 
            -
                      const l = s.textContent.split(A), p = l.length - 1;
         | 
| 863 | 
            -
                      if (p > 0) {
         | 
| 864 | 
            -
                        s.textContent = tt ? tt.emptyScript : "";
         | 
| 865 | 
            -
                        for (let u = 0; u < p; u++)
         | 
| 866 | 
            -
                          s.append(l[u], q()), U.nextNode(), a.push({ type: 2, index: ++n });
         | 
| 867 | 
            -
                        s.append(l[p], q());
         | 
| 868 | 
            -
                      }
         | 
| 869 | 
            -
                    }
         | 
| 870 | 
            -
                  } else if (s.nodeType === 8)
         | 
| 871 | 
            -
                    if (s.data === re)
         | 
| 872 | 
            -
                      a.push({ type: 2, index: n });
         | 
| 873 | 
            -
                    else {
         | 
| 874 | 
            -
                      let l = -1;
         | 
| 875 | 
            -
                      for (; (l = s.data.indexOf(A, l + 1)) !== -1; )
         | 
| 876 | 
            -
                        a.push({ type: 7, index: n }), l += A.length - 1;
         | 
| 877 | 
            -
                    }
         | 
| 878 | 
            -
                  n++;
         | 
| 879 | 
            -
                }
         | 
| 880 | 
            -
              }
         | 
| 881 | 
            -
              static createElement(t, e) {
         | 
| 882 | 
            -
                const i = x.createElement("template");
         | 
| 883 | 
            -
                return i.innerHTML = t, i;
         | 
| 884 | 
            -
              }
         | 
| 885 | 
            -
            }
         | 
| 886 | 
            -
            function O(r, t, e = r, i) {
         | 
| 887 | 
            -
              var o, h;
         | 
| 888 | 
            -
              if (t === k)
         | 
| 889 | 
            -
                return t;
         | 
| 890 | 
            -
              let s = i !== void 0 ? (o = e._$Co) == null ? void 0 : o[i] : e._$Cl;
         | 
| 891 | 
            -
              const n = X(t) ? void 0 : t._$litDirective$;
         | 
| 892 | 
            -
              return (s == null ? void 0 : s.constructor) !== n && ((h = s == null ? void 0 : s._$AO) == null || h.call(s, !1), n === void 0 ? s = void 0 : (s = new n(r), s._$AT(r, e, i)), i !== void 0 ? (e._$Co ?? (e._$Co = []))[i] = s : e._$Cl = s), s !== void 0 && (t = O(r, s._$AS(r, t.values), s, i)), t;
         | 
| 893 | 
            -
            }
         | 
| 894 | 
            -
            class Be {
         | 
| 895 | 
            -
              constructor(t, e) {
         | 
| 896 | 
            -
                this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = e;
         | 
| 897 | 
            -
              }
         | 
| 898 | 
            -
              get parentNode() {
         | 
| 899 | 
            -
                return this._$AM.parentNode;
         | 
| 900 | 
            -
              }
         | 
| 901 | 
            -
              get _$AU() {
         | 
| 902 | 
            -
                return this._$AM._$AU;
         | 
| 903 | 
            -
              }
         | 
| 904 | 
            -
              u(t) {
         | 
| 905 | 
            -
                const { el: { content: e }, parts: i } = this._$AD, s = ((t == null ? void 0 : t.creationScope) ?? x).importNode(e, !0);
         | 
| 906 | 
            -
                U.currentNode = s;
         | 
| 907 | 
            -
                let n = U.nextNode(), o = 0, h = 0, a = i[0];
         | 
| 908 | 
            -
                for (; a !== void 0; ) {
         | 
| 909 | 
            -
                  if (o === a.index) {
         | 
| 910 | 
            -
                    let d;
         | 
| 911 | 
            -
                    a.type === 2 ? d = new K(n, n.nextSibling, this, t) : a.type === 1 ? d = new a.ctor(n, a.name, a.strings, this, t) : a.type === 6 && (d = new Je(n, this, t)), this._$AV.push(d), a = i[++h];
         | 
| 912 | 
            -
                  }
         | 
| 913 | 
            -
                  o !== (a == null ? void 0 : a.index) && (n = U.nextNode(), o++);
         | 
| 914 | 
            -
                }
         | 
| 915 | 
            -
                return U.currentNode = x, s;
         | 
| 916 | 
            -
              }
         | 
| 917 | 
            -
              p(t) {
         | 
| 918 | 
            -
                let e = 0;
         | 
| 919 | 
            -
                for (const i of this._$AV)
         | 
| 920 | 
            -
                  i !== void 0 && (i.strings !== void 0 ? (i._$AI(t, i, e), e += i.strings.length - 2) : i._$AI(t[e])), e++;
         | 
| 921 | 
            -
              }
         | 
| 922 | 
            -
            }
         | 
| 923 | 
            -
            class K {
         | 
| 924 | 
            -
              get _$AU() {
         | 
| 925 | 
            -
                var t;
         | 
| 926 | 
            -
                return ((t = this._$AM) == null ? void 0 : t._$AU) ?? this._$Cv;
         | 
| 927 | 
            -
              }
         | 
| 928 | 
            -
              constructor(t, e, i, s) {
         | 
| 929 | 
            -
                this.type = 2, this._$AH = m, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = i, this.options = s, this._$Cv = (s == null ? void 0 : s.isConnected) ?? !0;
         | 
| 930 | 
            -
              }
         | 
| 931 | 
            -
              get parentNode() {
         | 
| 932 | 
            -
                let t = this._$AA.parentNode;
         | 
| 933 | 
            -
                const e = this._$AM;
         | 
| 934 | 
            -
                return e !== void 0 && (t == null ? void 0 : t.nodeType) === 11 && (t = e.parentNode), t;
         | 
| 935 | 
            -
              }
         | 
| 936 | 
            -
              get startNode() {
         | 
| 937 | 
            -
                return this._$AA;
         | 
| 938 | 
            -
              }
         | 
| 939 | 
            -
              get endNode() {
         | 
| 940 | 
            -
                return this._$AB;
         | 
| 941 | 
            -
              }
         | 
| 942 | 
            -
              _$AI(t, e = this) {
         | 
| 943 | 
            -
                t = O(this, t, e), X(t) ? t === m || t == null || t === "" ? (this._$AH !== m && this._$AR(), this._$AH = m) : t !== this._$AH && t !== k && this._(t) : t._$litType$ !== void 0 ? this.g(t) : t.nodeType !== void 0 ? this.$(t) : Ve(t) ? this.T(t) : this._(t);
         | 
| 944 | 
            -
              }
         | 
| 945 | 
            -
              k(t) {
         | 
| 946 | 
            -
                return this._$AA.parentNode.insertBefore(t, this._$AB);
         | 
| 947 | 
            -
              }
         | 
| 948 | 
            -
              $(t) {
         | 
| 949 | 
            -
                this._$AH !== t && (this._$AR(), this._$AH = this.k(t));
         | 
| 950 | 
            -
              }
         | 
| 951 | 
            -
              _(t) {
         | 
| 952 | 
            -
                this._$AH !== m && X(this._$AH) ? this._$AA.nextSibling.data = t : this.$(x.createTextNode(t)), this._$AH = t;
         | 
| 953 | 
            -
              }
         | 
| 954 | 
            -
              g(t) {
         | 
| 955 | 
            -
                var n;
         | 
| 956 | 
            -
                const { values: e, _$litType$: i } = t, s = typeof i == "number" ? this._$AC(t) : (i.el === void 0 && (i.el = J.createElement(ae(i.h, i.h[0]), this.options)), i);
         | 
| 957 | 
            -
                if (((n = this._$AH) == null ? void 0 : n._$AD) === s)
         | 
| 958 | 
            -
                  this._$AH.p(e);
         | 
| 959 | 
            -
                else {
         | 
| 960 | 
            -
                  const o = new Be(s, this), h = o.u(this.options);
         | 
| 961 | 
            -
                  o.p(e), this.$(h), this._$AH = o;
         | 
| 962 | 
            -
                }
         | 
| 963 | 
            -
              }
         | 
| 964 | 
            -
              _$AC(t) {
         | 
| 965 | 
            -
                let e = Mt.get(t.strings);
         | 
| 966 | 
            -
                return e === void 0 && Mt.set(t.strings, e = new J(t)), e;
         | 
| 967 | 
            -
              }
         | 
| 968 | 
            -
              T(t) {
         | 
| 969 | 
            -
                ne(this._$AH) || (this._$AH = [], this._$AR());
         | 
| 970 | 
            -
                const e = this._$AH;
         | 
| 971 | 
            -
                let i, s = 0;
         | 
| 972 | 
            -
                for (const n of t)
         | 
| 973 | 
            -
                  s === e.length ? e.push(i = new K(this.k(q()), this.k(q()), this, this.options)) : i = e[s], i._$AI(n), s++;
         | 
| 974 | 
            -
                s < e.length && (this._$AR(i && i._$AB.nextSibling, s), e.length = s);
         | 
| 975 | 
            -
              }
         | 
| 976 | 
            -
              _$AR(t = this._$AA.nextSibling, e) {
         | 
| 977 | 
            -
                var i;
         | 
| 978 | 
            -
                for ((i = this._$AP) == null ? void 0 : i.call(this, !1, !0, e); t && t !== this._$AB; ) {
         | 
| 979 | 
            -
                  const s = t.nextSibling;
         | 
| 980 | 
            -
                  t.remove(), t = s;
         | 
| 981 | 
            -
                }
         | 
| 982 | 
            -
              }
         | 
| 983 | 
            -
              setConnected(t) {
         | 
| 984 | 
            -
                var e;
         | 
| 985 | 
            -
                this._$AM === void 0 && (this._$Cv = t, (e = this._$AP) == null || e.call(this, t));
         | 
| 986 | 
            -
              }
         | 
| 987 | 
            -
            }
         | 
| 988 | 
            -
            class st {
         | 
| 989 | 
            -
              get tagName() {
         | 
| 990 | 
            -
                return this.element.tagName;
         | 
| 991 | 
            -
              }
         | 
| 992 | 
            -
              get _$AU() {
         | 
| 993 | 
            -
                return this._$AM._$AU;
         | 
| 994 | 
            -
              }
         | 
| 995 | 
            -
              constructor(t, e, i, s, n) {
         | 
| 996 | 
            -
                this.type = 1, this._$AH = m, this._$AN = void 0, this.element = t, this.name = e, this._$AM = s, this.options = n, i.length > 2 || i[0] !== "" || i[1] !== "" ? (this._$AH = Array(i.length - 1).fill(new String()), this.strings = i) : this._$AH = m;
         | 
| 997 | 
            -
              }
         | 
| 998 | 
            -
              _$AI(t, e = this, i, s) {
         | 
| 999 | 
            -
                const n = this.strings;
         | 
| 1000 | 
            -
                let o = !1;
         | 
| 1001 | 
            -
                if (n === void 0)
         | 
| 1002 | 
            -
                  t = O(this, t, e, 0), o = !X(t) || t !== this._$AH && t !== k, o && (this._$AH = t);
         | 
| 1003 | 
            -
                else {
         | 
| 1004 | 
            -
                  const h = t;
         | 
| 1005 | 
            -
                  let a, d;
         | 
| 1006 | 
            -
                  for (t = n[0], a = 0; a < n.length - 1; a++)
         | 
| 1007 | 
            -
                    d = O(this, h[i + a], e, a), d === k && (d = this._$AH[a]), o || (o = !X(d) || d !== this._$AH[a]), d === m ? t = m : t !== m && (t += (d ?? "") + n[a + 1]), this._$AH[a] = d;
         | 
| 1008 | 
            -
                }
         | 
| 1009 | 
            -
                o && !s && this.O(t);
         | 
| 1010 | 
            -
              }
         | 
| 1011 | 
            -
              O(t) {
         | 
| 1012 | 
            -
                t === m ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
         | 
| 1013 | 
            -
              }
         | 
| 1014 | 
            -
            }
         | 
| 1015 | 
            -
            class We extends st {
         | 
| 1016 | 
            -
              constructor() {
         | 
| 1017 | 
            -
                super(...arguments), this.type = 3;
         | 
| 1018 | 
            -
              }
         | 
| 1019 | 
            -
              O(t) {
         | 
| 1020 | 
            -
                this.element[this.name] = t === m ? void 0 : t;
         | 
| 1021 | 
            -
              }
         | 
| 1022 | 
            -
            }
         | 
| 1023 | 
            -
            class qe extends st {
         | 
| 1024 | 
            -
              constructor() {
         | 
| 1025 | 
            -
                super(...arguments), this.type = 4;
         | 
| 1026 | 
            -
              }
         | 
| 1027 | 
            -
              O(t) {
         | 
| 1028 | 
            -
                this.element.toggleAttribute(this.name, !!t && t !== m);
         | 
| 1029 | 
            -
              }
         | 
| 1030 | 
            -
            }
         | 
| 1031 | 
            -
            class Xe extends st {
         | 
| 1032 | 
            -
              constructor(t, e, i, s, n) {
         | 
| 1033 | 
            -
                super(t, e, i, s, n), this.type = 5;
         | 
| 1034 | 
            -
              }
         | 
| 1035 | 
            -
              _$AI(t, e = this) {
         | 
| 1036 | 
            -
                if ((t = O(this, t, e, 0) ?? m) === k)
         | 
| 1037 | 
            -
                  return;
         | 
| 1038 | 
            -
                const i = this._$AH, s = t === m && i !== m || t.capture !== i.capture || t.once !== i.once || t.passive !== i.passive, n = t !== m && (i === m || s);
         | 
| 1039 | 
            -
                s && this.element.removeEventListener(this.name, this, i), n && this.element.addEventListener(this.name, this, t), this._$AH = t;
         | 
| 1040 | 
            -
              }
         | 
| 1041 | 
            -
              handleEvent(t) {
         | 
| 1042 | 
            -
                var e;
         | 
| 1043 | 
            -
                typeof this._$AH == "function" ? this._$AH.call(((e = this.options) == null ? void 0 : e.host) ?? this.element, t) : this._$AH.handleEvent(t);
         | 
| 1044 | 
            -
              }
         | 
| 1045 | 
            -
            }
         | 
| 1046 | 
            -
            class Je {
         | 
| 1047 | 
            -
              constructor(t, e, i) {
         | 
| 1048 | 
            -
                this.element = t, this.type = 6, this._$AN = void 0, this._$AM = e, this.options = i;
         | 
| 1049 | 
            -
              }
         | 
| 1050 | 
            -
              get _$AU() {
         | 
| 1051 | 
            -
                return this._$AM._$AU;
         | 
| 1052 | 
            -
              }
         | 
| 1053 | 
            -
              _$AI(t) {
         | 
| 1054 | 
            -
                O(this, t);
         | 
| 1055 | 
            -
              }
         | 
| 1056 | 
            -
            }
         | 
| 1057 | 
            -
            const lt = z.litHtmlPolyfillSupport;
         | 
| 1058 | 
            -
            lt == null || lt(J, K), (z.litHtmlVersions ?? (z.litHtmlVersions = [])).push("3.1.0");
         | 
| 1059 | 
            -
            const Ke = (r, t, e) => {
         | 
| 1060 | 
            -
              const i = (e == null ? void 0 : e.renderBefore) ?? t;
         | 
| 1061 | 
            -
              let s = i._$litPart$;
         | 
| 1062 | 
            -
              if (s === void 0) {
         | 
| 1063 | 
            -
                const n = (e == null ? void 0 : e.renderBefore) ?? null;
         | 
| 1064 | 
            -
                i._$litPart$ = s = new K(t.insertBefore(q(), n), n, void 0, e ?? {});
         | 
| 1065 | 
            -
              }
         | 
| 1066 | 
            -
              return s._$AI(r), s;
         | 
| 1067 | 
            -
            };
         | 
| 1068 | 
            -
            /**
         | 
| 1069 | 
            -
             * @license
         | 
| 1070 | 
            -
             * Copyright 2017 Google LLC
         | 
| 1071 | 
            -
             * SPDX-License-Identifier: BSD-3-Clause
         | 
| 1072 | 
            -
             */
         | 
| 1073 | 
            -
            class j extends R {
         | 
| 1074 | 
            -
              constructor() {
         | 
| 1075 | 
            -
                super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
         | 
| 1076 | 
            -
              }
         | 
| 1077 | 
            -
              createRenderRoot() {
         | 
| 1078 | 
            -
                var e;
         | 
| 1079 | 
            -
                const t = super.createRenderRoot();
         | 
| 1080 | 
            -
                return (e = this.renderOptions).renderBefore ?? (e.renderBefore = t.firstChild), t;
         | 
| 1081 | 
            -
              }
         | 
| 1082 | 
            -
              update(t) {
         | 
| 1083 | 
            -
                const e = this.render();
         | 
| 1084 | 
            -
                this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = Ke(e, this.renderRoot, this.renderOptions);
         | 
| 1085 | 
            -
              }
         | 
| 1086 | 
            -
              connectedCallback() {
         | 
| 1087 | 
            -
                var t;
         | 
| 1088 | 
            -
                super.connectedCallback(), (t = this._$Do) == null || t.setConnected(!0);
         | 
| 1089 | 
            -
              }
         | 
| 1090 | 
            -
              disconnectedCallback() {
         | 
| 1091 | 
            -
                var t;
         | 
| 1092 | 
            -
                super.disconnectedCallback(), (t = this._$Do) == null || t.setConnected(!1);
         | 
| 1093 | 
            -
              }
         | 
| 1094 | 
            -
              render() {
         | 
| 1095 | 
            -
                return k;
         | 
| 1096 | 
            -
              }
         | 
| 1097 | 
            -
            }
         | 
| 1098 | 
            -
            var zt;
         | 
| 1099 | 
            -
            j._$litElement$ = !0, j.finalized = !0, (zt = globalThis.litElementHydrateSupport) == null || zt.call(globalThis, { LitElement: j });
         | 
| 1100 | 
            -
            const dt = globalThis.litElementPolyfillSupport;
         | 
| 1101 | 
            -
            dt == null || dt({ LitElement: j });
         | 
| 1102 | 
            -
            (globalThis.litElementVersions ?? (globalThis.litElementVersions = [])).push("4.0.2");
         | 
| 1103 | 
            -
            function Fe(r, t, e) {
         | 
| 1104 | 
            -
              function i(s) {
         | 
| 1105 | 
            -
                e.dispatchEvent(new CustomEvent(s.type, s));
         | 
| 1106 | 
            -
              }
         | 
| 1107 | 
            -
              return t.addEventListener(r, i), () => {
         | 
| 1108 | 
            -
                t.removeEventListener(r, i);
         | 
| 1 | 
            +
            import { css, LitElement, html } from 'lit';
         | 
| 2 | 
            +
            import { property, state, customElement } from 'lit/decorators.js';
         | 
| 3 | 
            +
            import { ifDefined } from 'lit/directives/if-defined.js';
         | 
| 4 | 
            +
            import { createRef, ref } from 'lit/directives/ref.js';
         | 
| 5 | 
            +
            import { Task } from '@lit/task';
         | 
| 6 | 
            +
            import { v4 } from 'uuid';
         | 
| 7 | 
            +
            import { TEMPLATE_VERSION } from '@vouchfor/canvas-video';
         | 
| 8 | 
            +
            import '@vouchfor/media-player';
         | 
| 9 | 
            +
            import { styleMap } from 'lit/directives/style-map.js';
         | 
| 10 | 
            +
            import { classMap } from 'lit/directives/class-map.js';
         | 
| 11 | 
            +
            import '@a11y/focus-trap';
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            function forwardEvent(type, fromElement, toElement) {
         | 
| 14 | 
            +
              function forwarder(event) {
         | 
| 15 | 
            +
                toElement.dispatchEvent(new CustomEvent(event.type, event));
         | 
| 16 | 
            +
              }
         | 
| 17 | 
            +
              fromElement.addEventListener(type, forwarder);
         | 
| 18 | 
            +
              return () => {
         | 
| 19 | 
            +
                fromElement.removeEventListener(type, forwarder);
         | 
| 1109 20 | 
             
              };
         | 
| 1110 21 | 
             
            }
         | 
| 1111 | 
            -
             | 
| 1112 | 
            -
             | 
| 1113 | 
            -
             | 
| 22 | 
            +
             | 
| 23 | 
            +
            class EventForwardController {
         | 
| 24 | 
            +
              constructor(host, events) {
         | 
| 25 | 
            +
                this._events = [];
         | 
| 26 | 
            +
                this._cleanup = [];
         | 
| 27 | 
            +
                this._forwardElementRef = createRef();
         | 
| 28 | 
            +
                this.host = host;
         | 
| 29 | 
            +
                this._events = events;
         | 
| 30 | 
            +
                host.addController(this);
         | 
| 1114 31 | 
             
              }
         | 
| 1115 32 | 
             
              register() {
         | 
| 1116 | 
            -
                return  | 
| 33 | 
            +
                return ref(this._forwardElementRef);
         | 
| 1117 34 | 
             
              }
         | 
| 1118 35 | 
             
              hostConnected() {
         | 
| 1119 36 | 
             
                requestAnimationFrame(() => {
         | 
| 1120 | 
            -
                  this._events.forEach(( | 
| 1121 | 
            -
                     | 
| 37 | 
            +
                  this._events.forEach((event) => {
         | 
| 38 | 
            +
                    if (this._forwardElementRef.value) {
         | 
| 39 | 
            +
                      this._cleanup.push(forwardEvent(event, this._forwardElementRef.value, this.host));
         | 
| 40 | 
            +
                    }
         | 
| 1122 41 | 
             
                  });
         | 
| 1123 42 | 
             
                });
         | 
| 1124 43 | 
             
              }
         | 
| 1125 44 | 
             
              hostDisconnected() {
         | 
| 1126 | 
            -
                this._cleanup.forEach(( | 
| 1127 | 
            -
                   | 
| 1128 | 
            -
                }) | 
| 45 | 
            +
                this._cleanup.forEach((fn) => {
         | 
| 46 | 
            +
                  fn();
         | 
| 47 | 
            +
                });
         | 
| 48 | 
            +
                this._cleanup = [];
         | 
| 1129 49 | 
             
              }
         | 
| 1130 50 | 
             
            }
         | 
| 1131 | 
            -
             | 
| 1132 | 
            -
             | 
| 1133 | 
            -
             | 
| 1134 | 
            -
             | 
| 1135 | 
            -
             | 
| 51 | 
            +
             | 
| 52 | 
            +
            const devVideoUrl = "https://d2rxhdlm2q91uk.cloudfront.net";
         | 
| 53 | 
            +
            const stagingVideoUrl = "https://d1ix11aj5kfygl.cloudfront.net";
         | 
| 54 | 
            +
            const prodVideoUrl = "https://d157jlwnudd93d.cloudfront.net";
         | 
| 55 | 
            +
            const devPublicApiUrl = "https://bshyfw4h5a.execute-api.ap-southeast-2.amazonaws.com/dev";
         | 
| 56 | 
            +
            const stagingPublicApiUrl = "https://gyzw7rpbq3.execute-api.ap-southeast-2.amazonaws.com/staging";
         | 
| 57 | 
            +
            const prodPublicApiUrl = "https://vfcjuim1l3.execute-api.ap-southeast-2.amazonaws.com/prod";
         | 
| 58 | 
            +
            const localEmbedApiUrl = "http://localhost:6060/v2";
         | 
| 59 | 
            +
            const devEmbedApiUrl = "https://embed-dev.vouchfor.com/v2";
         | 
| 60 | 
            +
            const stagingEmbedApiUrl = "https://embed-staging.vouchfor.com/v2";
         | 
| 61 | 
            +
            const prodEmbedApiUrl = "https://embed.vouchfor.com/v2";
         | 
| 62 | 
            +
            function getEnvUrls(env) {
         | 
| 63 | 
            +
              if (!["local", "dev", "staging", "prod"].includes(env)) {
         | 
| 64 | 
            +
                throw new Error(`Unknown environment: ${env}`);
         | 
| 65 | 
            +
              }
         | 
| 66 | 
            +
              if (env === "local") {
         | 
| 1136 67 | 
             
                return {
         | 
| 1137 | 
            -
                  videoUrl:  | 
| 1138 | 
            -
                  publicApiUrl:  | 
| 1139 | 
            -
                  embedApiUrl:  | 
| 68 | 
            +
                  videoUrl: devVideoUrl,
         | 
| 69 | 
            +
                  publicApiUrl: devPublicApiUrl,
         | 
| 70 | 
            +
                  embedApiUrl: localEmbedApiUrl
         | 
| 1140 71 | 
             
                };
         | 
| 1141 | 
            -
               | 
| 72 | 
            +
              }
         | 
| 73 | 
            +
              if (env === "dev") {
         | 
| 1142 74 | 
             
                return {
         | 
| 1143 | 
            -
                  videoUrl:  | 
| 1144 | 
            -
                  publicApiUrl:  | 
| 1145 | 
            -
                  embedApiUrl:  | 
| 75 | 
            +
                  videoUrl: devVideoUrl,
         | 
| 76 | 
            +
                  publicApiUrl: devPublicApiUrl,
         | 
| 77 | 
            +
                  embedApiUrl: devEmbedApiUrl
         | 
| 1146 78 | 
             
                };
         | 
| 1147 | 
            -
               | 
| 79 | 
            +
              }
         | 
| 80 | 
            +
              if (env === "staging") {
         | 
| 1148 81 | 
             
                return {
         | 
| 1149 | 
            -
                  videoUrl:  | 
| 1150 | 
            -
                  publicApiUrl:  | 
| 1151 | 
            -
                  embedApiUrl:  | 
| 82 | 
            +
                  videoUrl: stagingVideoUrl,
         | 
| 83 | 
            +
                  publicApiUrl: stagingPublicApiUrl,
         | 
| 84 | 
            +
                  embedApiUrl: stagingEmbedApiUrl
         | 
| 1152 85 | 
             
                };
         | 
| 1153 | 
            -
               | 
| 86 | 
            +
              }
         | 
| 87 | 
            +
              if (env === "prod") {
         | 
| 1154 88 | 
             
                return {
         | 
| 1155 | 
            -
                  videoUrl:  | 
| 1156 | 
            -
                  publicApiUrl:  | 
| 1157 | 
            -
                  embedApiUrl:  | 
| 89 | 
            +
                  videoUrl: prodVideoUrl,
         | 
| 90 | 
            +
                  publicApiUrl: prodPublicApiUrl,
         | 
| 91 | 
            +
                  embedApiUrl: prodEmbedApiUrl
         | 
| 1158 92 | 
             
                };
         | 
| 93 | 
            +
              }
         | 
| 1159 94 | 
             
            }
         | 
| 1160 | 
            -
             | 
| 1161 | 
            -
             | 
| 1162 | 
            -
             | 
| 1163 | 
            -
             | 
| 1164 | 
            -
             | 
| 1165 | 
            -
             | 
| 1166 | 
            -
             | 
| 1167 | 
            -
             | 
| 1168 | 
            -
                      ["X-Cache-Check", o]
         | 
| 1169 | 
            -
                    ]
         | 
| 1170 | 
            -
                  }), a = await h.json();
         | 
| 1171 | 
            -
                  return this.host.dispatchEvent(new CustomEvent("vouch:loaded", { detail: a == null ? void 0 : a.id })), ((c = h == null ? void 0 : h.headers) == null ? void 0 : c.get("X-Cache-Check")) !== o && fetch(`${n}/vouches/${s}`, {
         | 
| 1172 | 
            -
                    method: "GET",
         | 
| 1173 | 
            -
                    headers: [
         | 
| 1174 | 
            -
                      ["X-Api-Key", i],
         | 
| 1175 | 
            -
                      ["Cache-Control", "max-age=0"]
         | 
| 1176 | 
            -
                    ]
         | 
| 1177 | 
            -
                  }), a;
         | 
| 1178 | 
            -
                }, this.getTemplate = async (e, i, s) => {
         | 
| 1179 | 
            -
                  var c;
         | 
| 1180 | 
            -
                  const { embedApiUrl: n } = et(e), o = P(), h = await fetch(`${n}/templates/${s}`, {
         | 
| 95 | 
            +
             | 
| 96 | 
            +
            class FetcherController {
         | 
| 97 | 
            +
              constructor(host) {
         | 
| 98 | 
            +
                this._fetching = false;
         | 
| 99 | 
            +
                this.getVouch = async (env, apiKey, vouchId) => {
         | 
| 100 | 
            +
                  const { embedApiUrl } = getEnvUrls(env);
         | 
| 101 | 
            +
                  const cacheCheck = v4();
         | 
| 102 | 
            +
                  const res = await fetch(`${embedApiUrl}/vouches/${vouchId}`, {
         | 
| 1181 103 | 
             
                    method: "GET",
         | 
| 1182 104 | 
             
                    headers: [
         | 
| 1183 | 
            -
                      ["X-Api-Key",  | 
| 1184 | 
            -
                      ["X-Cache-Check",  | 
| 105 | 
            +
                      ["X-Api-Key", apiKey],
         | 
| 106 | 
            +
                      ["X-Cache-Check", cacheCheck]
         | 
| 1185 107 | 
             
                    ]
         | 
| 1186 | 
            -
                  }) | 
| 1187 | 
            -
                   | 
| 108 | 
            +
                  });
         | 
| 109 | 
            +
                  const vouch = await res.json();
         | 
| 110 | 
            +
                  this.host.dispatchEvent(new CustomEvent("vouch:loaded", { detail: vouch?.id }));
         | 
| 111 | 
            +
                  const resCacheCheck = res?.headers?.get("X-Cache-Check");
         | 
| 112 | 
            +
                  if (resCacheCheck !== cacheCheck) {
         | 
| 113 | 
            +
                    fetch(`${embedApiUrl}/vouches/${vouchId}`, {
         | 
| 114 | 
            +
                      method: "GET",
         | 
| 115 | 
            +
                      headers: [
         | 
| 116 | 
            +
                        ["X-Api-Key", apiKey],
         | 
| 117 | 
            +
                        ["Cache-Control", "max-age=0"]
         | 
| 118 | 
            +
                      ]
         | 
| 119 | 
            +
                    });
         | 
| 120 | 
            +
                  }
         | 
| 121 | 
            +
                  return vouch;
         | 
| 122 | 
            +
                };
         | 
| 123 | 
            +
                this.getTemplate = async (env, apiKey, templateId) => {
         | 
| 124 | 
            +
                  const { embedApiUrl } = getEnvUrls(env);
         | 
| 125 | 
            +
                  const cacheCheck = v4();
         | 
| 126 | 
            +
                  const res = await fetch(`${embedApiUrl}/templates/${templateId}`, {
         | 
| 1188 127 | 
             
                    method: "GET",
         | 
| 1189 128 | 
             
                    headers: [
         | 
| 1190 | 
            -
                      ["X-Api-Key",  | 
| 1191 | 
            -
                      ["Cache- | 
| 129 | 
            +
                      ["X-Api-Key", apiKey],
         | 
| 130 | 
            +
                      ["X-Cache-Check", cacheCheck]
         | 
| 1192 131 | 
             
                    ]
         | 
| 1193 | 
            -
                  }) | 
| 1194 | 
            -
             | 
| 132 | 
            +
                  });
         | 
| 133 | 
            +
                  const template = await res.json();
         | 
| 134 | 
            +
                  const resCacheCheck = res?.headers?.get("X-Cache-Check");
         | 
| 135 | 
            +
                  if (resCacheCheck !== cacheCheck) {
         | 
| 136 | 
            +
                    fetch(`${embedApiUrl}/templates/${templateId}`, {
         | 
| 137 | 
            +
                      method: "GET",
         | 
| 138 | 
            +
                      headers: [
         | 
| 139 | 
            +
                        ["X-Api-Key", apiKey],
         | 
| 140 | 
            +
                        ["Cache-Control", "max-age=0"]
         | 
| 141 | 
            +
                      ]
         | 
| 142 | 
            +
                    });
         | 
| 143 | 
            +
                  }
         | 
| 144 | 
            +
                  return template;
         | 
| 145 | 
            +
                };
         | 
| 146 | 
            +
                this.host = host;
         | 
| 147 | 
            +
                new Task(
         | 
| 1195 148 | 
             
                  this.host,
         | 
| 1196 | 
            -
                  async ([ | 
| 1197 | 
            -
                    var h, a, d, c;
         | 
| 149 | 
            +
                  async ([env, apiKey, data, vouchId, templateId]) => {
         | 
| 1198 150 | 
             
                    try {
         | 
| 1199 | 
            -
                       | 
| 1200 | 
            -
             | 
| 1201 | 
            -
             | 
| 1202 | 
            -
             | 
| 1203 | 
            -
                         | 
| 1204 | 
            -
             | 
| 1205 | 
            -
                          this. | 
| 1206 | 
            -
             | 
| 151 | 
            +
                      host.vouch = void 0;
         | 
| 152 | 
            +
                      host.template = void 0;
         | 
| 153 | 
            +
                      if (data) {
         | 
| 154 | 
            +
                        let template;
         | 
| 155 | 
            +
                        if (templateId) {
         | 
| 156 | 
            +
                          this.fetching = true;
         | 
| 157 | 
            +
                          template = await this.getTemplate(env, apiKey, templateId);
         | 
| 158 | 
            +
                        }
         | 
| 159 | 
            +
                        this._vouch = data;
         | 
| 160 | 
            +
                        host.template = template ?? data?.settings?.template?.instance;
         | 
| 161 | 
            +
                      } else if (vouchId) {
         | 
| 162 | 
            +
                        this.fetching = true;
         | 
| 163 | 
            +
                        const [vouch, template] = await Promise.all([
         | 
| 164 | 
            +
                          this.getVouch(env, apiKey, vouchId),
         | 
| 165 | 
            +
                          templateId ? this.getTemplate(env, apiKey, templateId) : null
         | 
| 1207 166 | 
             
                        ]);
         | 
| 1208 | 
            -
                         | 
| 167 | 
            +
                        this._vouch = vouch;
         | 
| 168 | 
            +
                        host.template = template ?? vouch?.settings?.template?.instance;
         | 
| 1209 169 | 
             
                      }
         | 
| 1210 170 | 
             
                    } finally {
         | 
| 1211 | 
            -
                      this.fetching =  | 
| 171 | 
            +
                      this.fetching = false;
         | 
| 1212 172 | 
             
                    }
         | 
| 1213 173 | 
             
                  },
         | 
| 1214 | 
            -
                  () => [ | 
| 174 | 
            +
                  () => [host.env, host.apiKey, host.data, host.vouchId, host.templateId]
         | 
| 175 | 
            +
                );
         | 
| 176 | 
            +
                new Task(
         | 
| 177 | 
            +
                  this.host,
         | 
| 178 | 
            +
                  ([vouch, questions]) => {
         | 
| 179 | 
            +
                    host.vouch = vouch ? {
         | 
| 180 | 
            +
                      ...vouch,
         | 
| 181 | 
            +
                      questions: {
         | 
| 182 | 
            +
                        items: vouch?.questions.items.filter((_, index) => !questions?.length || questions?.includes(index + 1))
         | 
| 183 | 
            +
                      }
         | 
| 184 | 
            +
                    } : void 0;
         | 
| 185 | 
            +
                  },
         | 
| 186 | 
            +
                  () => [this._vouch, host.questions]
         | 
| 1215 187 | 
             
                );
         | 
| 1216 188 | 
             
              }
         | 
| 1217 | 
            -
              set fetching( | 
| 1218 | 
            -
                 | 
| 189 | 
            +
              set fetching(value) {
         | 
| 190 | 
            +
                if (this._fetching !== value) {
         | 
| 191 | 
            +
                  this._fetching = value;
         | 
| 192 | 
            +
                  this.host.requestUpdate();
         | 
| 193 | 
            +
                }
         | 
| 1219 194 | 
             
              }
         | 
| 1220 195 | 
             
              get fetching() {
         | 
| 1221 196 | 
             
                return this._fetching;
         | 
| 1222 197 | 
             
              }
         | 
| 1223 198 | 
             
            }
         | 
| 1224 | 
            -
             | 
| 1225 | 
            -
             | 
| 1226 | 
            -
             | 
| 1227 | 
            -
             | 
| 1228 | 
            -
             | 
| 1229 | 
            -
             | 
| 1230 | 
            -
             | 
| 1231 | 
            -
             | 
| 1232 | 
            -
             | 
| 1233 | 
            -
             | 
| 1234 | 
            -
             | 
| 1235 | 
            -
             | 
| 1236 | 
            -
             | 
| 1237 | 
            -
             | 
| 1238 | 
            -
             | 
| 1239 | 
            -
             | 
| 1240 | 
            -
             | 
| 1241 | 
            -
             | 
| 1242 | 
            -
             | 
| 1243 | 
            -
             | 
| 1244 | 
            -
             | 
| 1245 | 
            -
             | 
| 1246 | 
            -
            } | 
| 1247 | 
            -
             | 
| 1248 | 
            -
             | 
| 1249 | 
            -
             | 
| 1250 | 
            -
             | 
| 1251 | 
            -
             | 
| 1252 | 
            -
             | 
| 1253 | 
            -
             | 
| 1254 | 
            -
             | 
| 1255 | 
            -
             | 
| 1256 | 
            -
             | 
| 1257 | 
            -
             | 
| 1258 | 
            -
             | 
| 1259 | 
            -
             | 
| 1260 | 
            -
             | 
| 1261 | 
            -
             | 
| 1262 | 
            -
             | 
| 1263 | 
            -
             | 
| 1264 | 
            -
             | 
| 1265 | 
            -
             | 
| 1266 | 
            -
             | 
| 1267 | 
            -
             | 
| 1268 | 
            -
             | 
| 1269 | 
            -
             | 
| 1270 | 
            -
             | 
| 1271 | 
            -
             | 
| 1272 | 
            -
             | 
| 1273 | 
            -
             | 
| 1274 | 
            -
             | 
| 1275 | 
            -
             | 
| 1276 | 
            -
             | 
| 1277 | 
            -
             | 
| 1278 | 
            -
             | 
| 1279 | 
            -
             | 
| 1280 | 
            -
             | 
| 1281 | 
            -
             | 
| 1282 | 
            -
             | 
| 1283 | 
            -
             | 
| 1284 | 
            -
             | 
| 1285 | 
            -
             | 
| 1286 | 
            -
             | 
| 1287 | 
            -
             | 
| 1288 | 
            -
             | 
| 1289 | 
            -
             | 
| 1290 | 
            -
             | 
| 1291 | 
            -
             | 
| 1292 | 
            -
             | 
| 1293 | 
            -
             | 
| 1294 | 
            -
             | 
| 1295 | 
            -
             | 
| 1296 | 
            -
             | 
| 1297 | 
            -
             | 
| 1298 | 
            -
             | 
| 1299 | 
            -
             | 
| 1300 | 
            -
             | 
| 1301 | 
            -
             | 
| 1302 | 
            -
             | 
| 1303 | 
            -
             | 
| 1304 | 
            -
             | 
| 1305 | 
            -
             | 
| 1306 | 
            -
             | 
| 1307 | 
            -
             | 
| 1308 | 
            -
             | 
| 1309 | 
            -
             | 
| 1310 | 
            -
             | 
| 1311 | 
            -
             | 
| 1312 | 
            -
             | 
| 1313 | 
            -
             | 
| 1314 | 
            -
             | 
| 199 | 
            +
             | 
| 200 | 
            +
            const name = "@vouchfor/embeds";
         | 
| 201 | 
            +
            const version = "0.0.0-experiment.e7e20dd";
         | 
| 202 | 
            +
            const license = "MIT";
         | 
| 203 | 
            +
            const author = "Aaron Williams";
         | 
| 204 | 
            +
            const main = "dist/es/embeds.js";
         | 
| 205 | 
            +
            const module = "dist/es/embeds.js";
         | 
| 206 | 
            +
            const type = "module";
         | 
| 207 | 
            +
            const types = "dist/es/src/index.d.ts";
         | 
| 208 | 
            +
            const exports = {
         | 
| 209 | 
            +
            	".": "./dist/es/embeds.js"
         | 
| 210 | 
            +
            };
         | 
| 211 | 
            +
            const files = [
         | 
| 212 | 
            +
            	"dist",
         | 
| 213 | 
            +
            	"src"
         | 
| 214 | 
            +
            ];
         | 
| 215 | 
            +
            const publishConfig = {
         | 
| 216 | 
            +
            	tag: "experiment",
         | 
| 217 | 
            +
            	access: "public"
         | 
| 218 | 
            +
            };
         | 
| 219 | 
            +
            const engines = {
         | 
| 220 | 
            +
            	node: ">=18.18.0"
         | 
| 221 | 
            +
            };
         | 
| 222 | 
            +
            const scripts = {
         | 
| 223 | 
            +
            	build: "rm -rf dist && tsc && yarn build:self",
         | 
| 224 | 
            +
            	"build:deps": "yarn --cwd ../media-player build",
         | 
| 225 | 
            +
            	"build:self": "vite build --mode iife && vite build --mode es && node scripts/build.cjs",
         | 
| 226 | 
            +
            	"build:package": "yarn build",
         | 
| 227 | 
            +
            	"build:storybook": "yarn prebuild && storybook build",
         | 
| 228 | 
            +
            	"generate:manifest": "wca src --outFile custom-elements.json",
         | 
| 229 | 
            +
            	lint: "eslint . --quiet",
         | 
| 230 | 
            +
            	"lint:fix": "eslint . --fix",
         | 
| 231 | 
            +
            	"lint:staged": "lint-staged",
         | 
| 232 | 
            +
            	prepublishOnly: "yarn build",
         | 
| 233 | 
            +
            	size: "size-limit",
         | 
| 234 | 
            +
            	storybook: "yarn prebuild && storybook dev -p 6007",
         | 
| 235 | 
            +
            	prebuild: "yarn build:deps && yarn generate:manifest",
         | 
| 236 | 
            +
            	test: "rm -rf test/lib && yarn prebuild && vite build --mode test && web-test-runner",
         | 
| 237 | 
            +
            	"test:ci": "yarn test --config web-test-runner.ci.config.js"
         | 
| 238 | 
            +
            };
         | 
| 239 | 
            +
            const dependencies = {
         | 
| 240 | 
            +
            	"@a11y/focus-trap": "^1.0.5",
         | 
| 241 | 
            +
            	"@lit/task": "^1.0.0",
         | 
| 242 | 
            +
            	"@vouchfor/canvas-video": "0.0.0-experiment.e7e20dd",
         | 
| 243 | 
            +
            	"@vouchfor/media-player": "0.0.0-experiment.e7e20dd",
         | 
| 244 | 
            +
            	uuid: "^9.0.1"
         | 
| 245 | 
            +
            };
         | 
| 246 | 
            +
            const peerDependencies = {
         | 
| 247 | 
            +
            	lit: "^3.1.2"
         | 
| 248 | 
            +
            };
         | 
| 249 | 
            +
            const devDependencies = {
         | 
| 250 | 
            +
            	"@esm-bundle/chai": "^4.3.4-fix.0",
         | 
| 251 | 
            +
            	"@open-wc/testing": "^4.0.0",
         | 
| 252 | 
            +
            	"@storybook/addon-essentials": "^8.0.2",
         | 
| 253 | 
            +
            	"@storybook/addon-links": "^8.0.2",
         | 
| 254 | 
            +
            	"@storybook/blocks": "^8.0.2",
         | 
| 255 | 
            +
            	"@storybook/web-components": "^8.0.2",
         | 
| 256 | 
            +
            	"@storybook/web-components-vite": "^8.0.2",
         | 
| 257 | 
            +
            	"@svgr/core": "^8.1.0",
         | 
| 258 | 
            +
            	"@types/flat": "^5.0.5",
         | 
| 259 | 
            +
            	"@types/mocha": "^10.0.6",
         | 
| 260 | 
            +
            	"@vouchfor/eslint-config": "^1.0.1",
         | 
| 261 | 
            +
            	"@vouchfor/prettier-config": "^1.0.1",
         | 
| 262 | 
            +
            	"@vouchfor/video-utils": "0.0.0-experiment.e7e20dd",
         | 
| 263 | 
            +
            	"@web/dev-server-esbuild": "^1.0.2",
         | 
| 264 | 
            +
            	"@web/test-runner": "^0.18.1",
         | 
| 265 | 
            +
            	"@web/test-runner-browserstack": "^0.7.1",
         | 
| 266 | 
            +
            	"@web/test-runner-mocha": "^0.9.0",
         | 
| 267 | 
            +
            	"@web/test-runner-playwright": "^0.11.0",
         | 
| 268 | 
            +
            	glob: "^10.3.10",
         | 
| 269 | 
            +
            	"lint-staged": "^15.2.2",
         | 
| 270 | 
            +
            	lit: "^3.1.2",
         | 
| 271 | 
            +
            	lodash: "^4.17.21",
         | 
| 272 | 
            +
            	react: "^18.2.0",
         | 
| 273 | 
            +
            	"react-dom": "^18.2.0",
         | 
| 274 | 
            +
            	"rollup-plugin-tla": "^0.0.2",
         | 
| 275 | 
            +
            	sinon: "^17.0.1",
         | 
| 276 | 
            +
            	storybook: "^8.0.2",
         | 
| 277 | 
            +
            	svgson: "^5.3.1",
         | 
| 278 | 
            +
            	typescript: "^5.4.3",
         | 
| 279 | 
            +
            	vite: "^5.2.2",
         | 
| 280 | 
            +
            	"vite-plugin-commonjs": "^0.10.1",
         | 
| 281 | 
            +
            	"vite-plugin-dts": "^3.7.3",
         | 
| 282 | 
            +
            	"web-component-analyzer": "^2.0.0"
         | 
| 283 | 
            +
            };
         | 
| 284 | 
            +
            const packageJson = {
         | 
| 285 | 
            +
            	name: name,
         | 
| 286 | 
            +
            	version: version,
         | 
| 287 | 
            +
            	license: license,
         | 
| 288 | 
            +
            	author: author,
         | 
| 289 | 
            +
            	main: main,
         | 
| 290 | 
            +
            	module: module,
         | 
| 291 | 
            +
            	type: type,
         | 
| 292 | 
            +
            	types: types,
         | 
| 293 | 
            +
            	exports: exports,
         | 
| 294 | 
            +
            	files: files,
         | 
| 295 | 
            +
            	publishConfig: publishConfig,
         | 
| 296 | 
            +
            	engines: engines,
         | 
| 297 | 
            +
            	scripts: scripts,
         | 
| 298 | 
            +
            	"lint-staged": {
         | 
| 299 | 
            +
            	"**/*.{ts,tsx,js}": "eslint --fix --quiet",
         | 
| 300 | 
            +
            	"**/*.{md,json,yml}": "prettier --write"
         | 
| 301 | 
            +
            },
         | 
| 302 | 
            +
            	dependencies: dependencies,
         | 
| 303 | 
            +
            	peerDependencies: peerDependencies,
         | 
| 304 | 
            +
            	devDependencies: devDependencies
         | 
| 305 | 
            +
            };
         | 
| 306 | 
            +
             | 
| 307 | 
            +
            function createVisitor(env) {
         | 
| 308 | 
            +
              const { publicApiUrl } = getEnvUrls(env);
         | 
| 309 | 
            +
              const visitorId = v4();
         | 
| 310 | 
            +
              navigator.sendBeacon(`${publicApiUrl}/api/visitor`, JSON.stringify({ visitorId }));
         | 
| 311 | 
            +
              return visitorId;
         | 
| 312 | 
            +
            }
         | 
| 313 | 
            +
            function getUids(env) {
         | 
| 314 | 
            +
              if (typeof window === "undefined") {
         | 
| 315 | 
            +
                return {
         | 
| 316 | 
            +
                  client: null,
         | 
| 317 | 
            +
                  tab: null,
         | 
| 318 | 
            +
                  request: v4()
         | 
| 319 | 
            +
                };
         | 
| 320 | 
            +
              }
         | 
| 321 | 
            +
              let visitorId = window.localStorage?.getItem?.("vouch-uid-visitor");
         | 
| 322 | 
            +
              let clientId = window.localStorage?.getItem?.("vouch-uid-client");
         | 
| 323 | 
            +
              let tabId = window.sessionStorage?.getItem?.("vouch-uid-tab");
         | 
| 324 | 
            +
              const requestId = v4();
         | 
| 325 | 
            +
              if (!visitorId) {
         | 
| 326 | 
            +
                visitorId = createVisitor(env);
         | 
| 327 | 
            +
                window.localStorage?.setItem?.("vouch-uid-visitor", visitorId);
         | 
| 328 | 
            +
              }
         | 
| 329 | 
            +
              if (!clientId) {
         | 
| 330 | 
            +
                clientId = v4();
         | 
| 331 | 
            +
                window.localStorage?.setItem?.("vouch-uid-client", clientId);
         | 
| 332 | 
            +
              }
         | 
| 333 | 
            +
              if (!tabId) {
         | 
| 334 | 
            +
                tabId = v4();
         | 
| 335 | 
            +
                window.sessionStorage?.setItem?.("vouch-uid-tab", tabId);
         | 
| 336 | 
            +
              }
         | 
| 337 | 
            +
              return {
         | 
| 338 | 
            +
                client: clientId,
         | 
| 339 | 
            +
                tab: tabId,
         | 
| 340 | 
            +
                request: requestId,
         | 
| 341 | 
            +
                visitor: visitorId
         | 
| 342 | 
            +
              };
         | 
| 343 | 
            +
            }
         | 
| 344 | 
            +
            function findVouchId(payload, vouch) {
         | 
| 345 | 
            +
              if (payload && "vouchId" in payload) {
         | 
| 346 | 
            +
                return payload.vouchId;
         | 
| 347 | 
            +
              }
         | 
| 348 | 
            +
              return vouch?.id ?? null;
         | 
| 349 | 
            +
            }
         | 
| 350 | 
            +
            function getReportingMetadata(source = "embedded_player") {
         | 
| 351 | 
            +
              const [country, region] = Intl.DateTimeFormat().resolvedOptions().timeZone?.split?.("/") ?? [];
         | 
| 352 | 
            +
              const utmParams = {};
         | 
| 353 | 
            +
              [...new URLSearchParams(location.search).entries()].forEach(([key, value]) => {
         | 
| 354 | 
            +
                if (/utm/.test(key)) {
         | 
| 355 | 
            +
                  const param = key.toLowerCase().replace(/[-_][a-z0-9]/g, (group) => group.slice(-1).toUpperCase());
         | 
| 356 | 
            +
                  utmParams[param] = value;
         | 
| 357 | 
            +
                }
         | 
| 358 | 
            +
              });
         | 
| 359 | 
            +
              return {
         | 
| 360 | 
            +
                source,
         | 
| 361 | 
            +
                time: /* @__PURE__ */ new Date(),
         | 
| 362 | 
            +
                region,
         | 
| 363 | 
            +
                country,
         | 
| 364 | 
            +
                screenHeight: window.screen.height,
         | 
| 365 | 
            +
                screenWidth: window.screen.width,
         | 
| 366 | 
            +
                referrer: document.referrer,
         | 
| 367 | 
            +
                currentUrl: location.href,
         | 
| 368 | 
            +
                embedType: "media-player-embed",
         | 
| 369 | 
            +
                embedVersion: packageJson.version,
         | 
| 370 | 
            +
                templateVersion: TEMPLATE_VERSION,
         | 
| 371 | 
            +
                ...utmParams
         | 
| 372 | 
            +
              };
         | 
| 373 | 
            +
            }
         | 
| 374 | 
            +
             | 
| 375 | 
            +
            const MINIMUM_SEND_THRESHOLD = 1;
         | 
| 376 | 
            +
            class TrackingController {
         | 
| 377 | 
            +
              constructor(host) {
         | 
| 378 | 
            +
                this._batchedEvents = [];
         | 
| 379 | 
            +
                this._hasPlayed = false;
         | 
| 380 | 
            +
                this._hasLoaded = {};
         | 
| 381 | 
            +
                this._answersViewed = {};
         | 
| 382 | 
            +
                this._streamStartTime = {};
         | 
| 383 | 
            +
                this._streamLatestTime = {};
         | 
| 384 | 
            +
                this._currentlyPlayingVideo = null;
         | 
| 385 | 
            +
                this._createTrackingEvent = (event, payload) => {
         | 
| 386 | 
            +
                  const vouchId = findVouchId(payload, this.host.vouch);
         | 
| 387 | 
            +
                  if (!vouchId || this.host.disableTracking) {
         | 
| 388 | 
            +
                    return;
         | 
| 389 | 
            +
                  }
         | 
| 390 | 
            +
                  this._batchedEvents.push({
         | 
| 391 | 
            +
                    event,
         | 
| 392 | 
            +
                    payload: {
         | 
| 393 | 
            +
                      ...payload,
         | 
| 394 | 
            +
                      vouchId,
         | 
| 395 | 
            +
                      time: (/* @__PURE__ */ new Date()).toISOString()
         | 
| 1315 396 | 
             
                    }
         | 
| 1316 | 
            -
                  }) | 
| 1317 | 
            -
             | 
| 1318 | 
            -
             | 
| 1319 | 
            -
             | 
| 1320 | 
            -
                    country: e,
         | 
| 1321 | 
            -
                    screenHeight: window.screen.height,
         | 
| 1322 | 
            -
                    screenWidth: window.screen.width,
         | 
| 1323 | 
            -
                    referrer: document.referrer,
         | 
| 1324 | 
            -
                    currentUrl: location.href,
         | 
| 1325 | 
            -
                    ...s
         | 
| 1326 | 
            -
                  };
         | 
| 1327 | 
            -
                }, this._sendTrackingEvent = (e, i) => {
         | 
| 1328 | 
            -
                  const s = this._findVouchId(i);
         | 
| 1329 | 
            -
                  if (!s || this.host.disableTracking)
         | 
| 397 | 
            +
                  });
         | 
| 398 | 
            +
                };
         | 
| 399 | 
            +
                this._sendTrackingEvent = () => {
         | 
| 400 | 
            +
                  if (this._batchedEvents.length <= 0) {
         | 
| 1330 401 | 
             
                    return;
         | 
| 1331 | 
            -
                   | 
| 402 | 
            +
                  }
         | 
| 403 | 
            +
                  const { publicApiUrl } = getEnvUrls(this.host.env);
         | 
| 404 | 
            +
                  const { client, tab, request, visitor } = getUids(this.host.env);
         | 
| 1332 405 | 
             
                  navigator.sendBeacon(
         | 
| 1333 | 
            -
                    `${ | 
| 406 | 
            +
                    `${publicApiUrl}/api/batchevents`,
         | 
| 1334 407 | 
             
                    JSON.stringify({
         | 
| 1335 | 
            -
                      event: e,
         | 
| 1336 408 | 
             
                      payload: {
         | 
| 1337 | 
            -
                         | 
| 1338 | 
            -
                        vouchId: s
         | 
| 409 | 
            +
                        events: this._batchedEvents
         | 
| 1339 410 | 
             
                      },
         | 
| 1340 411 | 
             
                      context: {
         | 
| 1341 | 
            -
                        "x-uid-client":  | 
| 1342 | 
            -
                        "x-uid-tab":  | 
| 1343 | 
            -
                        "x-uid-request":  | 
| 1344 | 
            -
                        "x-uid-visitor":  | 
| 1345 | 
            -
                        "x-reporting-metadata": this. | 
| 1346 | 
            -
                        "x-embeds-version": Ai.version
         | 
| 412 | 
            +
                        "x-uid-client": client,
         | 
| 413 | 
            +
                        "x-uid-tab": tab,
         | 
| 414 | 
            +
                        "x-uid-request": request,
         | 
| 415 | 
            +
                        "x-uid-visitor": visitor,
         | 
| 416 | 
            +
                        "x-reporting-metadata": getReportingMetadata(this.host.trackingSource)
         | 
| 1347 417 | 
             
                      }
         | 
| 1348 418 | 
             
                    })
         | 
| 1349 419 | 
             
                  );
         | 
| 1350 | 
            -
             | 
| 420 | 
            +
                  this._batchedEvents = [];
         | 
| 421 | 
            +
                };
         | 
| 422 | 
            +
                this._streamEnded = () => {
         | 
| 1351 423 | 
             
                  if (this._currentlyPlayingVideo) {
         | 
| 1352 | 
            -
                    const { id | 
| 1353 | 
            -
                    this._streamLatestTime[ | 
| 1354 | 
            -
                       | 
| 1355 | 
            -
             | 
| 1356 | 
            -
             | 
| 1357 | 
            -
             | 
| 424 | 
            +
                    const { id, key } = this._currentlyPlayingVideo;
         | 
| 425 | 
            +
                    if (this._streamLatestTime[key] > this._streamStartTime[key] + MINIMUM_SEND_THRESHOLD) {
         | 
| 426 | 
            +
                      this._createTrackingEvent("VIDEO_STREAMED", {
         | 
| 427 | 
            +
                        answerId: id,
         | 
| 428 | 
            +
                        streamStart: this._streamStartTime[key],
         | 
| 429 | 
            +
                        streamEnd: this._streamLatestTime[key]
         | 
| 430 | 
            +
                      });
         | 
| 431 | 
            +
                    }
         | 
| 432 | 
            +
                    delete this._streamStartTime[key];
         | 
| 433 | 
            +
                    delete this._streamLatestTime[key];
         | 
| 434 | 
            +
                  }
         | 
| 435 | 
            +
                };
         | 
| 436 | 
            +
                this._handleVouchLoaded = ({ detail: vouchId }) => {
         | 
| 437 | 
            +
                  if (!vouchId) {
         | 
| 438 | 
            +
                    return;
         | 
| 439 | 
            +
                  }
         | 
| 440 | 
            +
                  if (!this._hasLoaded[vouchId]) {
         | 
| 441 | 
            +
                    this._createTrackingEvent("VOUCH_LOADED", { vouchId });
         | 
| 442 | 
            +
                    this._hasLoaded[vouchId] = true;
         | 
| 443 | 
            +
                  }
         | 
| 444 | 
            +
                };
         | 
| 445 | 
            +
                this._handlePlay = () => {
         | 
| 446 | 
            +
                  if (!this._hasPlayed) {
         | 
| 447 | 
            +
                    this._createTrackingEvent("VIDEO_PLAYED", {
         | 
| 448 | 
            +
                      streamStart: this.host.currentTime
         | 
| 449 | 
            +
                    });
         | 
| 450 | 
            +
                    this._hasPlayed = true;
         | 
| 451 | 
            +
                  }
         | 
| 452 | 
            +
                };
         | 
| 453 | 
            +
                this._handleVideoPlay = ({ detail: { id, key } }) => {
         | 
| 454 | 
            +
                  if (!this._answersViewed[key]) {
         | 
| 455 | 
            +
                    this._createTrackingEvent("VOUCH_RESPONSE_VIEWED", {
         | 
| 456 | 
            +
                      answerId: id
         | 
| 457 | 
            +
                    });
         | 
| 458 | 
            +
                    this._answersViewed[key] = true;
         | 
| 459 | 
            +
                  }
         | 
| 460 | 
            +
                };
         | 
| 461 | 
            +
                this._handleVideoTimeUpdate = ({ detail: { id, key, node } }) => {
         | 
| 462 | 
            +
                  if (
         | 
| 463 | 
            +
                    // We only want to count any time that the video is actually playing
         | 
| 464 | 
            +
                    !this.host.paused && // Only update the latest time if this event fires for the currently active video
         | 
| 465 | 
            +
                    id === this.host.scene?.video?.id
         | 
| 466 | 
            +
                  ) {
         | 
| 467 | 
            +
                    this._currentlyPlayingVideo = { id, key, node };
         | 
| 468 | 
            +
                    this._streamLatestTime[key] = node.currentTime;
         | 
| 469 | 
            +
                    if (!this._streamStartTime[key]) {
         | 
| 470 | 
            +
                      this._streamStartTime[key] = node.currentTime;
         | 
| 471 | 
            +
                      this._streamLatestTime[key] = node.currentTime;
         | 
| 472 | 
            +
                    }
         | 
| 473 | 
            +
                  }
         | 
| 474 | 
            +
                };
         | 
| 475 | 
            +
                this._handleVideoPause = ({ detail: { id, key } }) => {
         | 
| 476 | 
            +
                  if (this._streamLatestTime[key] > this._streamStartTime[key] + MINIMUM_SEND_THRESHOLD) {
         | 
| 477 | 
            +
                    this._createTrackingEvent("VIDEO_STREAMED", {
         | 
| 478 | 
            +
                      answerId: id,
         | 
| 479 | 
            +
                      streamStart: this._streamStartTime[key],
         | 
| 480 | 
            +
                      streamEnd: this._streamLatestTime[key]
         | 
| 481 | 
            +
                    });
         | 
| 482 | 
            +
                  }
         | 
| 483 | 
            +
                  delete this._streamStartTime[key];
         | 
| 484 | 
            +
                  delete this._streamLatestTime[key];
         | 
| 485 | 
            +
                };
         | 
| 486 | 
            +
                this._pageUnloading = () => {
         | 
| 487 | 
            +
                  this._streamEnded();
         | 
| 488 | 
            +
                  this._sendTrackingEvent();
         | 
| 489 | 
            +
                };
         | 
| 490 | 
            +
                this._handleVisibilityChange = () => {
         | 
| 491 | 
            +
                  if (document.visibilityState === "hidden") {
         | 
| 492 | 
            +
                    this._pageUnloading();
         | 
| 1358 493 | 
             
                  }
         | 
| 1359 | 
            -
                } | 
| 1360 | 
            -
             | 
| 1361 | 
            -
                }, this._handlePlay = () => {
         | 
| 1362 | 
            -
                  this._hasPlayed || (this._sendTrackingEvent("VIDEO_PLAYED", {
         | 
| 1363 | 
            -
                    streamStart: this.host.currentTime
         | 
| 1364 | 
            -
                  }), this._hasPlayed = !0);
         | 
| 1365 | 
            -
                }, this._handleVideoPlay = ({ detail: { id: e, key: i, node: s } }) => {
         | 
| 1366 | 
            -
                  this._answersViewed[i] || (this._sendTrackingEvent("VOUCH_RESPONSE_VIEWED", {
         | 
| 1367 | 
            -
                    answerId: e
         | 
| 1368 | 
            -
                  }), this._answersViewed[i] = !0), this._streamStartTime[i] || (this._streamStartTime[i] = s.currentTime, this._streamLatestTime[i] = s.currentTime);
         | 
| 1369 | 
            -
                }, this._handleVideoTimeUpdate = ({ detail: { id: e, key: i, node: s } }) => {
         | 
| 1370 | 
            -
                  var n, o;
         | 
| 1371 | 
            -
                  // We only want to count any time that the video is actually playing
         | 
| 1372 | 
            -
                  !this.host.paused && // Only update the latest time if this event fires for the currently active video
         | 
| 1373 | 
            -
                  e === ((o = (n = this.host.scene) == null ? void 0 : n.video) == null ? void 0 : o.id) && (this._currentlyPlayingVideo = { id: e, key: i, node: s }, this._streamLatestTime[i] = s.currentTime);
         | 
| 1374 | 
            -
                }, this._handleVideoPause = ({ detail: { id: e, key: i } }) => {
         | 
| 1375 | 
            -
                  this._streamLatestTime[i] > this._streamStartTime[i] + Dt && this._sendTrackingEvent("VIDEO_STREAMED", {
         | 
| 1376 | 
            -
                    answerId: e,
         | 
| 1377 | 
            -
                    streamStart: this._streamStartTime[i],
         | 
| 1378 | 
            -
                    streamEnd: this._streamLatestTime[i]
         | 
| 1379 | 
            -
                  }), delete this._streamStartTime[i], delete this._streamLatestTime[i];
         | 
| 1380 | 
            -
                }, this._pageUnloading = () => {
         | 
| 1381 | 
            -
                  this._streamEnded(), this.host.pause();
         | 
| 1382 | 
            -
                }, this._handleVisibilityChange = () => {
         | 
| 1383 | 
            -
                  document.visibilityState === "hidden" && this._pageUnloading();
         | 
| 1384 | 
            -
                }, this._handlePageHide = () => {
         | 
| 494 | 
            +
                };
         | 
| 495 | 
            +
                this._handlePageHide = () => {
         | 
| 1385 496 | 
             
                  this._pageUnloading();
         | 
| 1386 | 
            -
                }, this.host = t, t.addController(this);
         | 
| 1387 | 
            -
              }
         | 
| 1388 | 
            -
              _findVouchId(t) {
         | 
| 1389 | 
            -
                return t && "vouchId" in t ? t.vouchId : this.host.vouch ? this.host.vouch.id : null;
         | 
| 1390 | 
            -
              }
         | 
| 1391 | 
            -
              _getUids() {
         | 
| 1392 | 
            -
                var n, o, h, a, d, c, l, p, u, g, F, $t;
         | 
| 1393 | 
            -
                if (typeof window > "u")
         | 
| 1394 | 
            -
                  return {
         | 
| 1395 | 
            -
                    client: null,
         | 
| 1396 | 
            -
                    tab: null,
         | 
| 1397 | 
            -
                    request: P()
         | 
| 1398 | 
            -
                  };
         | 
| 1399 | 
            -
                const t = this._visitorId || ((o = (n = window.localStorage) == null ? void 0 : n.getItem) == null ? void 0 : o.call(n, "vouch-uid-visitor")) || this._createVisitor(P()), e = this._clientId || ((a = (h = window.localStorage) == null ? void 0 : h.getItem) == null ? void 0 : a.call(h, "vouch-uid-client")) || P(), i = this._tabId || ((c = (d = window.sessionStorage) == null ? void 0 : d.getItem) == null ? void 0 : c.call(d, "vouch-uid-tab")) || P(), s = P();
         | 
| 1400 | 
            -
                return t !== this._visitorId && (this._visitorId = t, (p = (l = window.localStorage) == null ? void 0 : l.setItem) == null || p.call(l, "vouch-uid-visitor", t)), e !== this._clientId && (this._clientId = e, (g = (u = window.localStorage) == null ? void 0 : u.setItem) == null || g.call(u, "vouch-uid-client", e)), i !== this._tabId && (this._tabId = i, ($t = (F = window.sessionStorage) == null ? void 0 : F.setItem) == null || $t.call(F, "vouch-uid-tab", i)), {
         | 
| 1401 | 
            -
                  client: e,
         | 
| 1402 | 
            -
                  tab: i,
         | 
| 1403 | 
            -
                  request: s,
         | 
| 1404 | 
            -
                  visitor: t
         | 
| 1405 497 | 
             
                };
         | 
| 498 | 
            +
                this.host = host;
         | 
| 499 | 
            +
                host.addController(this);
         | 
| 1406 500 | 
             
              }
         | 
| 1407 501 | 
             
              hostConnected() {
         | 
| 1408 502 | 
             
                requestAnimationFrame(() => {
         | 
| 1409 | 
            -
                   | 
| 1410 | 
            -
             | 
| 503 | 
            +
                  if ("onvisibilitychange" in document) {
         | 
| 504 | 
            +
                    document.addEventListener("visibilitychange", this._handleVisibilityChange);
         | 
| 505 | 
            +
                  } else {
         | 
| 506 | 
            +
                    window.addEventListener("pagehide", this._handlePageHide);
         | 
| 507 | 
            +
                  }
         | 
| 508 | 
            +
                  this.host.addEventListener("vouch:loaded", this._handleVouchLoaded);
         | 
| 509 | 
            +
                  this.host.mediaPlayer?.addEventListener("play", this._handlePlay);
         | 
| 510 | 
            +
                  this.host.mediaPlayer?.addEventListener("video:play", this._handleVideoPlay);
         | 
| 511 | 
            +
                  this.host.mediaPlayer?.addEventListener("video:pause", this._handleVideoPause);
         | 
| 512 | 
            +
                  this.host.mediaPlayer?.addEventListener("video:timeupdate", this._handleVideoTimeUpdate);
         | 
| 1411 513 | 
             
                });
         | 
| 1412 514 | 
             
              }
         | 
| 1413 515 | 
             
              hostDisconnected() {
         | 
| 1414 | 
            -
                 | 
| 1415 | 
            -
                 | 
| 516 | 
            +
                this._pageUnloading();
         | 
| 517 | 
            +
                if ("onvisibilitychange" in document) {
         | 
| 518 | 
            +
                  document.removeEventListener("visibilitychange", this._handleVisibilityChange);
         | 
| 519 | 
            +
                } else {
         | 
| 520 | 
            +
                  window.removeEventListener("pagehide", this._handlePageHide);
         | 
| 521 | 
            +
                }
         | 
| 522 | 
            +
                this.host.removeEventListener("vouch:loaded", this._handleVouchLoaded);
         | 
| 523 | 
            +
                this.host.mediaPlayer?.removeEventListener("play", this._handlePlay);
         | 
| 524 | 
            +
                this.host.mediaPlayer?.removeEventListener("video:play", this._handleVideoPlay);
         | 
| 525 | 
            +
                this.host.mediaPlayer?.removeEventListener("video:pause", this._handleVideoPause);
         | 
| 526 | 
            +
                this.host.mediaPlayer?.removeEventListener("video:timeupdate", this._handleVideoTimeUpdate);
         | 
| 1416 527 | 
             
              }
         | 
| 1417 528 | 
             
            }
         | 
| 1418 | 
            -
             | 
| 1419 | 
            -
             | 
| 1420 | 
            -
             | 
| 1421 | 
            -
             | 
| 529 | 
            +
             | 
| 530 | 
            +
            var __defProp$3 = Object.defineProperty;
         | 
| 531 | 
            +
            var __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor;
         | 
| 532 | 
            +
            var __decorateClass$3 = (decorators, target, key, kind) => {
         | 
| 533 | 
            +
              var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target;
         | 
| 534 | 
            +
              for (var i = decorators.length - 1, decorator; i >= 0; i--)
         | 
| 535 | 
            +
                if (decorator = decorators[i])
         | 
| 536 | 
            +
                  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
         | 
| 537 | 
            +
              if (kind && result)
         | 
| 538 | 
            +
                __defProp$3(target, key, result);
         | 
| 539 | 
            +
              return result;
         | 
| 1422 540 | 
             
            };
         | 
| 1423 | 
            -
            let  | 
| 541 | 
            +
            let PlayerEmbed = class extends LitElement {
         | 
| 1424 542 | 
             
              constructor() {
         | 
| 1425 | 
            -
                super(...arguments) | 
| 543 | 
            +
                super(...arguments);
         | 
| 544 | 
            +
                this.env = "prod";
         | 
| 545 | 
            +
                this.apiKey = "";
         | 
| 546 | 
            +
                this.disableTracking = false;
         | 
| 547 | 
            +
                this.trackingSource = "embedded_player";
         | 
| 548 | 
            +
                this.preload = "auto";
         | 
| 549 | 
            +
                this.autoplay = false;
         | 
| 550 | 
            +
                this.aspectRatio = 0;
         | 
| 551 | 
            +
                this.eventController = new EventForwardController(this, [
         | 
| 1426 552 | 
             
                  "durationchange",
         | 
| 1427 553 | 
             
                  "ended",
         | 
| 1428 554 | 
             
                  "error",
         | 
| @@ -1448,153 +574,553 @@ let $ = class extends j { | |
| 1448 574 | 
             
                  "video:timeupdate",
         | 
| 1449 575 | 
             
                  "video:ended",
         | 
| 1450 576 | 
             
                  "video:error"
         | 
| 1451 | 
            -
                ]) | 
| 577 | 
            +
                ]);
         | 
| 578 | 
            +
                this._fetcherController = new FetcherController(this);
         | 
| 579 | 
            +
                // eslint-disable-next-line @typescript-eslint/ban-ts-comment
         | 
| 580 | 
            +
                // @ts-ignore
         | 
| 581 | 
            +
                this._trackingController = new TrackingController(this);
         | 
| 582 | 
            +
                this._mediaPlayerRef = createRef();
         | 
| 1452 583 | 
             
              }
         | 
| 1453 584 | 
             
              get fetching() {
         | 
| 1454 585 | 
             
                return this._fetcherController.fetching;
         | 
| 1455 586 | 
             
              }
         | 
| 1456 587 | 
             
              get waiting() {
         | 
| 1457 | 
            -
                 | 
| 1458 | 
            -
             | 
| 588 | 
            +
                return this._mediaPlayerRef.value?.waiting;
         | 
| 589 | 
            +
              }
         | 
| 590 | 
            +
              get initialised() {
         | 
| 591 | 
            +
                return this._mediaPlayerRef.value?.initialised;
         | 
| 1459 592 | 
             
              }
         | 
| 1460 593 | 
             
              get seeking() {
         | 
| 1461 | 
            -
                 | 
| 1462 | 
            -
                return (r = this._mediaPlayerRef.value) == null ? void 0 : r.seeking;
         | 
| 594 | 
            +
                return this._mediaPlayerRef.value?.seeking;
         | 
| 1463 595 | 
             
              }
         | 
| 1464 596 | 
             
              get paused() {
         | 
| 1465 | 
            -
                 | 
| 1466 | 
            -
                return (r = this._mediaPlayerRef.value) == null ? void 0 : r.paused;
         | 
| 597 | 
            +
                return this._mediaPlayerRef.value?.paused;
         | 
| 1467 598 | 
             
              }
         | 
| 1468 599 | 
             
              get captions() {
         | 
| 1469 | 
            -
                 | 
| 1470 | 
            -
                return (r = this._mediaPlayerRef.value) == null ? void 0 : r.captions;
         | 
| 600 | 
            +
                return this._mediaPlayerRef.value?.captions;
         | 
| 1471 601 | 
             
              }
         | 
| 1472 602 | 
             
              get fullscreen() {
         | 
| 1473 | 
            -
                 | 
| 1474 | 
            -
                return (r = this._mediaPlayerRef.value) == null ? void 0 : r.fullscreen;
         | 
| 603 | 
            +
                return this._mediaPlayerRef.value?.fullscreen;
         | 
| 1475 604 | 
             
              }
         | 
| 1476 605 | 
             
              get duration() {
         | 
| 1477 | 
            -
                 | 
| 1478 | 
            -
                return (r = this._mediaPlayerRef.value) == null ? void 0 : r.duration;
         | 
| 606 | 
            +
                return this._mediaPlayerRef.value?.duration;
         | 
| 1479 607 | 
             
              }
         | 
| 1480 | 
            -
              set currentTime( | 
| 1481 | 
            -
                 | 
| 608 | 
            +
              set currentTime(value) {
         | 
| 609 | 
            +
                if (this._mediaPlayerRef.value) {
         | 
| 610 | 
            +
                  this._mediaPlayerRef.value.currentTime = value;
         | 
| 611 | 
            +
                }
         | 
| 1482 612 | 
             
              }
         | 
| 1483 613 | 
             
              get currentTime() {
         | 
| 1484 | 
            -
                 | 
| 1485 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.currentTime) ?? 0;
         | 
| 614 | 
            +
                return this._mediaPlayerRef.value?.currentTime ?? 0;
         | 
| 1486 615 | 
             
              }
         | 
| 1487 | 
            -
              set playbackRate( | 
| 1488 | 
            -
                 | 
| 616 | 
            +
              set playbackRate(value) {
         | 
| 617 | 
            +
                if (this._mediaPlayerRef.value) {
         | 
| 618 | 
            +
                  this._mediaPlayerRef.value.playbackRate = value;
         | 
| 619 | 
            +
                }
         | 
| 1489 620 | 
             
              }
         | 
| 1490 621 | 
             
              get playbackRate() {
         | 
| 1491 | 
            -
                 | 
| 1492 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.playbackRate) ?? 1;
         | 
| 622 | 
            +
                return this._mediaPlayerRef.value?.playbackRate ?? 1;
         | 
| 1493 623 | 
             
              }
         | 
| 1494 | 
            -
              set volume( | 
| 1495 | 
            -
                 | 
| 624 | 
            +
              set volume(value) {
         | 
| 625 | 
            +
                if (this._mediaPlayerRef.value) {
         | 
| 626 | 
            +
                  this._mediaPlayerRef.value.volume = value;
         | 
| 627 | 
            +
                }
         | 
| 1496 628 | 
             
              }
         | 
| 1497 629 | 
             
              get volume() {
         | 
| 1498 | 
            -
                 | 
| 1499 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.volume) ?? 1;
         | 
| 630 | 
            +
                return this._mediaPlayerRef.value?.volume ?? 1;
         | 
| 1500 631 | 
             
              }
         | 
| 1501 | 
            -
              set muted( | 
| 1502 | 
            -
                 | 
| 632 | 
            +
              set muted(value) {
         | 
| 633 | 
            +
                if (this._mediaPlayerRef.value) {
         | 
| 634 | 
            +
                  this._mediaPlayerRef.value.muted = value;
         | 
| 635 | 
            +
                }
         | 
| 1503 636 | 
             
              }
         | 
| 1504 637 | 
             
              get muted() {
         | 
| 1505 | 
            -
                 | 
| 1506 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.muted) ?? !1;
         | 
| 638 | 
            +
                return this._mediaPlayerRef.value?.muted ?? false;
         | 
| 1507 639 | 
             
              }
         | 
| 1508 640 | 
             
              get scene() {
         | 
| 1509 | 
            -
                 | 
| 1510 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.scene) ?? null;
         | 
| 641 | 
            +
                return this._mediaPlayerRef.value?.scene ?? null;
         | 
| 1511 642 | 
             
              }
         | 
| 1512 643 | 
             
              get scenes() {
         | 
| 1513 | 
            -
                 | 
| 1514 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.scenes) ?? [];
         | 
| 644 | 
            +
                return this._mediaPlayerRef.value?.scenes ?? [];
         | 
| 1515 645 | 
             
              }
         | 
| 1516 646 | 
             
              get sceneConfig() {
         | 
| 1517 | 
            -
                 | 
| 1518 | 
            -
                return ((r = this._mediaPlayerRef.value) == null ? void 0 : r.sceneConfig) ?? null;
         | 
| 647 | 
            +
                return this._mediaPlayerRef.value?.sceneConfig ?? null;
         | 
| 1519 648 | 
             
              }
         | 
| 1520 649 | 
             
              get videoState() {
         | 
| 1521 | 
            -
                 | 
| 1522 | 
            -
                return (r = this._mediaPlayerRef.value) == null ? void 0 : r.videoState;
         | 
| 650 | 
            +
                return this._mediaPlayerRef.value?.videoState;
         | 
| 1523 651 | 
             
              }
         | 
| 1524 652 | 
             
              get mediaPlayer() {
         | 
| 1525 653 | 
             
                return this._mediaPlayerRef.value;
         | 
| 1526 654 | 
             
              }
         | 
| 1527 655 | 
             
              play() {
         | 
| 1528 | 
            -
                 | 
| 1529 | 
            -
                (r = this._mediaPlayerRef.value) == null || r.play();
         | 
| 656 | 
            +
                this._mediaPlayerRef.value?.play();
         | 
| 1530 657 | 
             
              }
         | 
| 1531 658 | 
             
              pause() {
         | 
| 1532 | 
            -
                 | 
| 1533 | 
            -
             | 
| 659 | 
            +
                this._mediaPlayerRef.value?.pause();
         | 
| 660 | 
            +
              }
         | 
| 661 | 
            +
              reset(time = 0, play = false) {
         | 
| 662 | 
            +
                this._mediaPlayerRef.value?.reset(time, play);
         | 
| 1534 663 | 
             
              }
         | 
| 1535 | 
            -
              setScene( | 
| 1536 | 
            -
                 | 
| 1537 | 
            -
             | 
| 664 | 
            +
              setScene(index) {
         | 
| 665 | 
            +
                this._mediaPlayerRef.value?.setScene(index);
         | 
| 666 | 
            +
              }
         | 
| 667 | 
            +
              _renderStyles() {
         | 
| 668 | 
            +
                if (!this.aspectRatio) {
         | 
| 669 | 
            +
                  return html`
         | 
| 670 | 
            +
                    <style>
         | 
| 671 | 
            +
                      :host {
         | 
| 672 | 
            +
                        width: 100%;
         | 
| 673 | 
            +
                        height: 100%;
         | 
| 674 | 
            +
                      }
         | 
| 675 | 
            +
                    </style>
         | 
| 676 | 
            +
                  `;
         | 
| 677 | 
            +
                }
         | 
| 678 | 
            +
                if (typeof this.aspectRatio === "number") {
         | 
| 679 | 
            +
                  return html`
         | 
| 680 | 
            +
                    <style>
         | 
| 681 | 
            +
                      :host {
         | 
| 682 | 
            +
                        aspect-ratio: ${this.aspectRatio};
         | 
| 683 | 
            +
                      }
         | 
| 684 | 
            +
                    </style>
         | 
| 685 | 
            +
                  `;
         | 
| 686 | 
            +
                }
         | 
| 687 | 
            +
                return null;
         | 
| 1538 688 | 
             
              }
         | 
| 1539 689 | 
             
              render() {
         | 
| 1540 | 
            -
                return  | 
| 1541 | 
            -
                   | 
| 1542 | 
            -
             | 
| 690 | 
            +
                return html`
         | 
| 691 | 
            +
                  ${this._renderStyles()}
         | 
| 692 | 
            +
                  <vmp-media-player
         | 
| 693 | 
            +
                    ${ref(this._mediaPlayerRef)}
         | 
| 1543 694 | 
             
                    ${this.eventController.register()}
         | 
| 1544 695 | 
             
                    ?autoplay=${this.autoplay}
         | 
| 1545 696 | 
             
                    ?loading=${this.fetching}
         | 
| 1546 697 | 
             
                    .data=${this.vouch}
         | 
| 1547 698 | 
             
                    .template=${this.template}
         | 
| 1548 | 
            -
                    aspectRatio=${ | 
| 1549 | 
            -
                    preload=${ | 
| 699 | 
            +
                    aspectRatio=${ifDefined(this.aspectRatio)}
         | 
| 700 | 
            +
                    preload=${ifDefined(this.preload)}
         | 
| 1550 701 | 
             
                    .controls=${this.controls}
         | 
| 1551 | 
            -
                  ></vmp- | 
| 702 | 
            +
                  ></vmp-media-player>
         | 
| 703 | 
            +
                `;
         | 
| 704 | 
            +
              }
         | 
| 705 | 
            +
            };
         | 
| 706 | 
            +
            PlayerEmbed.styles = [
         | 
| 707 | 
            +
              css`
         | 
| 708 | 
            +
                  :host {
         | 
| 709 | 
            +
                    display: flex;
         | 
| 710 | 
            +
                  }
         | 
| 711 | 
            +
                `
         | 
| 712 | 
            +
            ];
         | 
| 713 | 
            +
            __decorateClass$3([
         | 
| 714 | 
            +
              property({ type: Object })
         | 
| 715 | 
            +
            ], PlayerEmbed.prototype, "data", 2);
         | 
| 716 | 
            +
            __decorateClass$3([
         | 
| 717 | 
            +
              property({ type: String })
         | 
| 718 | 
            +
            ], PlayerEmbed.prototype, "vouchId", 2);
         | 
| 719 | 
            +
            __decorateClass$3([
         | 
| 720 | 
            +
              property({ type: String })
         | 
| 721 | 
            +
            ], PlayerEmbed.prototype, "templateId", 2);
         | 
| 722 | 
            +
            __decorateClass$3([
         | 
| 723 | 
            +
              property({ type: Array })
         | 
| 724 | 
            +
            ], PlayerEmbed.prototype, "questions", 2);
         | 
| 725 | 
            +
            __decorateClass$3([
         | 
| 726 | 
            +
              property({ type: String })
         | 
| 727 | 
            +
            ], PlayerEmbed.prototype, "env", 2);
         | 
| 728 | 
            +
            __decorateClass$3([
         | 
| 729 | 
            +
              property({ type: String })
         | 
| 730 | 
            +
            ], PlayerEmbed.prototype, "apiKey", 2);
         | 
| 731 | 
            +
            __decorateClass$3([
         | 
| 732 | 
            +
              property({ type: Boolean })
         | 
| 733 | 
            +
            ], PlayerEmbed.prototype, "disableTracking", 2);
         | 
| 734 | 
            +
            __decorateClass$3([
         | 
| 735 | 
            +
              property({ type: String })
         | 
| 736 | 
            +
            ], PlayerEmbed.prototype, "trackingSource", 2);
         | 
| 737 | 
            +
            __decorateClass$3([
         | 
| 738 | 
            +
              property({ type: Array })
         | 
| 739 | 
            +
            ], PlayerEmbed.prototype, "controls", 2);
         | 
| 740 | 
            +
            __decorateClass$3([
         | 
| 741 | 
            +
              property({ type: String })
         | 
| 742 | 
            +
            ], PlayerEmbed.prototype, "preload", 2);
         | 
| 743 | 
            +
            __decorateClass$3([
         | 
| 744 | 
            +
              property({ type: Boolean })
         | 
| 745 | 
            +
            ], PlayerEmbed.prototype, "autoplay", 2);
         | 
| 746 | 
            +
            __decorateClass$3([
         | 
| 747 | 
            +
              property({ type: Number })
         | 
| 748 | 
            +
            ], PlayerEmbed.prototype, "aspectRatio", 2);
         | 
| 749 | 
            +
            __decorateClass$3([
         | 
| 750 | 
            +
              state()
         | 
| 751 | 
            +
            ], PlayerEmbed.prototype, "vouch", 2);
         | 
| 752 | 
            +
            __decorateClass$3([
         | 
| 753 | 
            +
              state()
         | 
| 754 | 
            +
            ], PlayerEmbed.prototype, "template", 2);
         | 
| 755 | 
            +
            PlayerEmbed = __decorateClass$3([
         | 
| 756 | 
            +
              customElement("vouch-embed-player")
         | 
| 757 | 
            +
            ], PlayerEmbed);
         | 
| 758 | 
            +
             | 
| 759 | 
            +
            var __defProp$2 = Object.defineProperty;
         | 
| 760 | 
            +
            var __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor;
         | 
| 761 | 
            +
            var __decorateClass$2 = (decorators, target, key, kind) => {
         | 
| 762 | 
            +
              var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target;
         | 
| 763 | 
            +
              for (var i = decorators.length - 1, decorator; i >= 0; i--)
         | 
| 764 | 
            +
                if (decorator = decorators[i])
         | 
| 765 | 
            +
                  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
         | 
| 766 | 
            +
              if (kind && result)
         | 
| 767 | 
            +
                __defProp$2(target, key, result);
         | 
| 768 | 
            +
              return result;
         | 
| 769 | 
            +
            };
         | 
| 770 | 
            +
            let DialogOverlay = class extends LitElement {
         | 
| 771 | 
            +
              constructor() {
         | 
| 772 | 
            +
                super(...arguments);
         | 
| 773 | 
            +
                this.open = false;
         | 
| 774 | 
            +
                this.aspectRatio = 0;
         | 
| 775 | 
            +
              }
         | 
| 776 | 
            +
              render() {
         | 
| 777 | 
            +
                return html`
         | 
| 778 | 
            +
                  <div
         | 
| 779 | 
            +
                    class=${classMap({
         | 
| 780 | 
            +
                  container: true,
         | 
| 781 | 
            +
                  hidden: !this.open
         | 
| 782 | 
            +
                })}
         | 
| 783 | 
            +
                  >
         | 
| 784 | 
            +
                    <div
         | 
| 785 | 
            +
                      class="background"
         | 
| 786 | 
            +
                      @click=${() => this.dispatchEvent(new CustomEvent("overlay:click", { bubbles: true, composed: true }))}
         | 
| 787 | 
            +
                    ></div>
         | 
| 788 | 
            +
                    <focus-trap>
         | 
| 789 | 
            +
                      <div
         | 
| 790 | 
            +
                        class=${classMap({
         | 
| 791 | 
            +
                  "video-frame": true,
         | 
| 792 | 
            +
                  grow: this.aspectRatio === 0
         | 
| 793 | 
            +
                })}
         | 
| 794 | 
            +
                        style=${styleMap({
         | 
| 795 | 
            +
                  aspectRatio: this.aspectRatio
         | 
| 796 | 
            +
                })}
         | 
| 797 | 
            +
                      >
         | 
| 798 | 
            +
                        <slot></slot>
         | 
| 799 | 
            +
                        <vmp-icon-button
         | 
| 800 | 
            +
                          icon="close"
         | 
| 801 | 
            +
                          rounded="full"
         | 
| 802 | 
            +
                          weight="heavy"
         | 
| 803 | 
            +
                          @click=${() => this.dispatchEvent(new CustomEvent("close:click", { bubbles: true, composed: true }))}
         | 
| 804 | 
            +
                        ></vmp-icon-button>
         | 
| 805 | 
            +
                      </div>
         | 
| 806 | 
            +
                    </focus-trap>
         | 
| 807 | 
            +
                  </div>
         | 
| 808 | 
            +
                `;
         | 
| 809 | 
            +
              }
         | 
| 810 | 
            +
            };
         | 
| 811 | 
            +
            DialogOverlay.styles = [
         | 
| 812 | 
            +
              css`
         | 
| 813 | 
            +
                  :host {
         | 
| 814 | 
            +
                    --vouch-media-player-border-radius: var(--vu-media-player-border-radius, 12px);
         | 
| 815 | 
            +
                    --overlay-background-color: var(--vu-overlay-background-color, black);
         | 
| 816 | 
            +
                    --overlay-background-opacity: var(--vu-overlay-background-opacity, 0.4);
         | 
| 817 | 
            +
             | 
| 818 | 
            +
                    --dialog-width: var(--vu-dialog-width, 890px);
         | 
| 819 | 
            +
                    --dialog-height: var(--vu-dialog-height, 500px);
         | 
| 820 | 
            +
                  }
         | 
| 821 | 
            +
             | 
| 822 | 
            +
                  .container {
         | 
| 823 | 
            +
                    position: fixed;
         | 
| 824 | 
            +
                    display: flex;
         | 
| 825 | 
            +
                    inset: 0;
         | 
| 826 | 
            +
                    opacity: 1;
         | 
| 827 | 
            +
                    z-index: 2147483647;
         | 
| 828 | 
            +
                    align-items: center;
         | 
| 829 | 
            +
                    justify-content: center;
         | 
| 830 | 
            +
                    transition: opacity 100ms ease-in;
         | 
| 831 | 
            +
                  }
         | 
| 832 | 
            +
             | 
| 833 | 
            +
                  .hidden {
         | 
| 834 | 
            +
                    opacity: 0;
         | 
| 835 | 
            +
                    pointer-events: none;
         | 
| 836 | 
            +
                  }
         | 
| 837 | 
            +
             | 
| 838 | 
            +
                  .background {
         | 
| 839 | 
            +
                    position: absolute;
         | 
| 840 | 
            +
                    inset: 0;
         | 
| 841 | 
            +
                    opacity: var(--overlay-background-opacity);
         | 
| 842 | 
            +
                    background-color: var(--overlay-background-color);
         | 
| 843 | 
            +
                  }
         | 
| 844 | 
            +
             | 
| 845 | 
            +
                  focus-trap {
         | 
| 846 | 
            +
                    display: flex;
         | 
| 847 | 
            +
                    align-items: center;
         | 
| 848 | 
            +
                    justify-content: center;
         | 
| 849 | 
            +
                    margin: 40px;
         | 
| 850 | 
            +
                    width: var(--dialog-width);
         | 
| 851 | 
            +
                    height: var(--dialog-height);
         | 
| 852 | 
            +
                    max-width: calc(100% - 80px);
         | 
| 853 | 
            +
                    max-height: calc(100% - 80px);
         | 
| 854 | 
            +
                  }
         | 
| 855 | 
            +
             | 
| 856 | 
            +
                  .video-frame {
         | 
| 857 | 
            +
                    position: relative;
         | 
| 858 | 
            +
                    display: flex;
         | 
| 859 | 
            +
                    align-items: center;
         | 
| 860 | 
            +
                    justify-content: center;
         | 
| 861 | 
            +
                    max-width: 100%;
         | 
| 862 | 
            +
                    max-height: 100%;
         | 
| 863 | 
            +
                  }
         | 
| 864 | 
            +
             | 
| 865 | 
            +
                  .video-frame.grow {
         | 
| 866 | 
            +
                    width: 100%;
         | 
| 867 | 
            +
                    height: 100%;
         | 
| 868 | 
            +
                  }
         | 
| 869 | 
            +
             | 
| 870 | 
            +
                  vmp-icon-button {
         | 
| 871 | 
            +
                    position: absolute;
         | 
| 872 | 
            +
                    top: 0;
         | 
| 873 | 
            +
                    right: 0;
         | 
| 874 | 
            +
                    margin: 10px;
         | 
| 875 | 
            +
                  }
         | 
| 876 | 
            +
                `
         | 
| 877 | 
            +
            ];
         | 
| 878 | 
            +
            __decorateClass$2([
         | 
| 879 | 
            +
              property({ type: Boolean })
         | 
| 880 | 
            +
            ], DialogOverlay.prototype, "open", 2);
         | 
| 881 | 
            +
            __decorateClass$2([
         | 
| 882 | 
            +
              property({ type: Number })
         | 
| 883 | 
            +
            ], DialogOverlay.prototype, "aspectRatio", 2);
         | 
| 884 | 
            +
            DialogOverlay = __decorateClass$2([
         | 
| 885 | 
            +
              customElement("vouch-embed-dialog-overlay")
         | 
| 886 | 
            +
            ], DialogOverlay);
         | 
| 887 | 
            +
             | 
| 888 | 
            +
            var __defProp$1 = Object.defineProperty;
         | 
| 889 | 
            +
            var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
         | 
| 890 | 
            +
            var __decorateClass$1 = (decorators, target, key, kind) => {
         | 
| 891 | 
            +
              var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target;
         | 
| 892 | 
            +
              for (var i = decorators.length - 1, decorator; i >= 0; i--)
         | 
| 893 | 
            +
                if (decorator = decorators[i])
         | 
| 894 | 
            +
                  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
         | 
| 895 | 
            +
              if (kind && result)
         | 
| 896 | 
            +
                __defProp$1(target, key, result);
         | 
| 897 | 
            +
              return result;
         | 
| 898 | 
            +
            };
         | 
| 899 | 
            +
            let DialogPortal = class extends LitElement {
         | 
| 900 | 
            +
              constructor() {
         | 
| 901 | 
            +
                super(...arguments);
         | 
| 902 | 
            +
                this.env = "prod";
         | 
| 903 | 
            +
                this.apiKey = "";
         | 
| 904 | 
            +
                this.disableTracking = false;
         | 
| 905 | 
            +
                this.trackingSource = "embedded_player";
         | 
| 906 | 
            +
                this.preload = "none";
         | 
| 907 | 
            +
                this.disableAutoplay = false;
         | 
| 908 | 
            +
                this.aspectRatio = 0;
         | 
| 909 | 
            +
                this._mediaPlayerRef = createRef();
         | 
| 910 | 
            +
                this.open = false;
         | 
| 911 | 
            +
                this._handleToggle = ({ detail }) => {
         | 
| 912 | 
            +
                  if (this.id === detail) {
         | 
| 913 | 
            +
                    this.open = !this.open;
         | 
| 914 | 
            +
                    if (this.open) {
         | 
| 915 | 
            +
                      if (!this.disableAutoplay && this._mediaPlayerRef?.value) {
         | 
| 916 | 
            +
                        this._mediaPlayerRef.value.muted = false;
         | 
| 917 | 
            +
                        this._mediaPlayerRef.value.play();
         | 
| 918 | 
            +
                      }
         | 
| 919 | 
            +
                    } else {
         | 
| 920 | 
            +
                      this._mediaPlayerRef?.value?.pause();
         | 
| 921 | 
            +
                    }
         | 
| 922 | 
            +
                  }
         | 
| 923 | 
            +
                };
         | 
| 924 | 
            +
                // We could do the same thing on close and check for the correct ID but it doesn't really matter
         | 
| 925 | 
            +
                this._handleClose = () => {
         | 
| 926 | 
            +
                  this.open = false;
         | 
| 927 | 
            +
                  this._mediaPlayerRef?.value?.pause();
         | 
| 928 | 
            +
                };
         | 
| 929 | 
            +
                this._handleDocumentKeyUp = (e) => {
         | 
| 930 | 
            +
                  if (e.key === "Escape") {
         | 
| 931 | 
            +
                    this._handleClose();
         | 
| 932 | 
            +
                  }
         | 
| 933 | 
            +
                };
         | 
| 934 | 
            +
              }
         | 
| 935 | 
            +
              connectedCallback() {
         | 
| 936 | 
            +
                super.connectedCallback();
         | 
| 937 | 
            +
                document.addEventListener("dialogembed:click", this._handleToggle);
         | 
| 938 | 
            +
                document.addEventListener("keyup", this._handleDocumentKeyUp);
         | 
| 939 | 
            +
                document.addEventListener("close:click", this._handleClose);
         | 
| 940 | 
            +
                document.addEventListener("overlay:click", this._handleClose);
         | 
| 941 | 
            +
              }
         | 
| 942 | 
            +
              disconnectedCallback() {
         | 
| 943 | 
            +
                super.disconnectedCallback();
         | 
| 944 | 
            +
                document.removeEventListener("dialogembed:click", this._handleToggle);
         | 
| 945 | 
            +
                document.removeEventListener("keyup", this._handleDocumentKeyUp);
         | 
| 946 | 
            +
                document.removeEventListener("close:click", this._handleClose);
         | 
| 947 | 
            +
                document.removeEventListener("overlay:click", this._handleClose);
         | 
| 948 | 
            +
              }
         | 
| 949 | 
            +
              createRenderRoot() {
         | 
| 950 | 
            +
                const newNode = document.createElement("div");
         | 
| 951 | 
            +
                document.body.appendChild(newNode);
         | 
| 952 | 
            +
                return newNode;
         | 
| 953 | 
            +
              }
         | 
| 954 | 
            +
              render() {
         | 
| 955 | 
            +
                return html`
         | 
| 956 | 
            +
                  <vouch-embed-dialog-overlay ?open=${this.open} aspectRatio=${this.aspectRatio}>
         | 
| 957 | 
            +
                    <vouch-embed-player
         | 
| 958 | 
            +
                      ${ref(this._mediaPlayerRef)}
         | 
| 959 | 
            +
                      style=${styleMap({
         | 
| 960 | 
            +
                  maxWidth: "100%",
         | 
| 961 | 
            +
                  maxHeight: "100%"
         | 
| 962 | 
            +
                })}
         | 
| 963 | 
            +
                      ?autoplay=${false}
         | 
| 964 | 
            +
                      vouchId=${ifDefined(this.vouchId)}
         | 
| 965 | 
            +
                      templateId=${ifDefined(this.templateId)}
         | 
| 966 | 
            +
                      .questions=${this.questions}
         | 
| 967 | 
            +
                      .controls=${this.controls}
         | 
| 968 | 
            +
                      env=${ifDefined(this.env)}
         | 
| 969 | 
            +
                      apiKey=${ifDefined(this.apiKey)}
         | 
| 970 | 
            +
                      ?disableTracking=${this.disableTracking}
         | 
| 971 | 
            +
                      trackingSource=${ifDefined(this.trackingSource)}
         | 
| 972 | 
            +
                      preload=${ifDefined(this.preload)}
         | 
| 973 | 
            +
                      aspectRatio=${this.aspectRatio}
         | 
| 974 | 
            +
                    ></vouch-embed-player>
         | 
| 975 | 
            +
                  </vouch-embed-dialog-overlay>
         | 
| 1552 976 | 
             
                `;
         | 
| 1553 977 | 
             
              }
         | 
| 1554 978 | 
             
            };
         | 
| 1555 | 
            -
             | 
| 1556 | 
            -
               | 
| 1557 | 
            -
            ],  | 
| 1558 | 
            -
             | 
| 1559 | 
            -
               | 
| 1560 | 
            -
            ],  | 
| 1561 | 
            -
             | 
| 1562 | 
            -
               | 
| 1563 | 
            -
            ],  | 
| 1564 | 
            -
             | 
| 1565 | 
            -
               | 
| 1566 | 
            -
            ],  | 
| 1567 | 
            -
             | 
| 1568 | 
            -
               | 
| 1569 | 
            -
            ],  | 
| 1570 | 
            -
             | 
| 1571 | 
            -
               | 
| 1572 | 
            -
            ],  | 
| 1573 | 
            -
             | 
| 1574 | 
            -
               | 
| 1575 | 
            -
            ],  | 
| 1576 | 
            -
             | 
| 1577 | 
            -
               | 
| 1578 | 
            -
            ],  | 
| 1579 | 
            -
             | 
| 1580 | 
            -
               | 
| 1581 | 
            -
            ],  | 
| 1582 | 
            -
             | 
| 1583 | 
            -
               | 
| 1584 | 
            -
            ],  | 
| 1585 | 
            -
             | 
| 1586 | 
            -
               | 
| 1587 | 
            -
            ],  | 
| 1588 | 
            -
             | 
| 1589 | 
            -
               | 
| 1590 | 
            -
            ],  | 
| 1591 | 
            -
             | 
| 1592 | 
            -
               | 
| 1593 | 
            -
            ],  | 
| 1594 | 
            -
             | 
| 1595 | 
            -
             | 
| 1596 | 
            -
             | 
| 1597 | 
            -
             | 
| 1598 | 
            -
               | 
| 979 | 
            +
            __decorateClass$1([
         | 
| 980 | 
            +
              property({ type: String })
         | 
| 981 | 
            +
            ], DialogPortal.prototype, "vouchId", 2);
         | 
| 982 | 
            +
            __decorateClass$1([
         | 
| 983 | 
            +
              property({ type: String })
         | 
| 984 | 
            +
            ], DialogPortal.prototype, "templateId", 2);
         | 
| 985 | 
            +
            __decorateClass$1([
         | 
| 986 | 
            +
              property({ type: Array })
         | 
| 987 | 
            +
            ], DialogPortal.prototype, "questions", 2);
         | 
| 988 | 
            +
            __decorateClass$1([
         | 
| 989 | 
            +
              property({ type: String })
         | 
| 990 | 
            +
            ], DialogPortal.prototype, "env", 2);
         | 
| 991 | 
            +
            __decorateClass$1([
         | 
| 992 | 
            +
              property({ type: String })
         | 
| 993 | 
            +
            ], DialogPortal.prototype, "apiKey", 2);
         | 
| 994 | 
            +
            __decorateClass$1([
         | 
| 995 | 
            +
              property({ type: Boolean })
         | 
| 996 | 
            +
            ], DialogPortal.prototype, "disableTracking", 2);
         | 
| 997 | 
            +
            __decorateClass$1([
         | 
| 998 | 
            +
              property({ type: String })
         | 
| 999 | 
            +
            ], DialogPortal.prototype, "trackingSource", 2);
         | 
| 1000 | 
            +
            __decorateClass$1([
         | 
| 1001 | 
            +
              property({ type: Array })
         | 
| 1002 | 
            +
            ], DialogPortal.prototype, "controls", 2);
         | 
| 1003 | 
            +
            __decorateClass$1([
         | 
| 1004 | 
            +
              property({ type: String })
         | 
| 1005 | 
            +
            ], DialogPortal.prototype, "preload", 2);
         | 
| 1006 | 
            +
            __decorateClass$1([
         | 
| 1007 | 
            +
              property({ type: Boolean })
         | 
| 1008 | 
            +
            ], DialogPortal.prototype, "disableAutoplay", 2);
         | 
| 1009 | 
            +
            __decorateClass$1([
         | 
| 1010 | 
            +
              property({ type: Number })
         | 
| 1011 | 
            +
            ], DialogPortal.prototype, "aspectRatio", 2);
         | 
| 1012 | 
            +
            __decorateClass$1([
         | 
| 1013 | 
            +
              state()
         | 
| 1014 | 
            +
            ], DialogPortal.prototype, "open", 2);
         | 
| 1015 | 
            +
            DialogPortal = __decorateClass$1([
         | 
| 1016 | 
            +
              customElement("vouch-embed-dialog-portal")
         | 
| 1017 | 
            +
            ], DialogPortal);
         | 
| 1018 | 
            +
             | 
| 1019 | 
            +
            var __defProp = Object.defineProperty;
         | 
| 1020 | 
            +
            var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
         | 
| 1021 | 
            +
            var __decorateClass = (decorators, target, key, kind) => {
         | 
| 1022 | 
            +
              var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
         | 
| 1023 | 
            +
              for (var i = decorators.length - 1, decorator; i >= 0; i--)
         | 
| 1024 | 
            +
                if (decorator = decorators[i])
         | 
| 1025 | 
            +
                  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
         | 
| 1026 | 
            +
              if (kind && result)
         | 
| 1027 | 
            +
                __defProp(target, key, result);
         | 
| 1028 | 
            +
              return result;
         | 
| 1029 | 
            +
            };
         | 
| 1030 | 
            +
            let DialogEmbed = class extends LitElement {
         | 
| 1031 | 
            +
              constructor() {
         | 
| 1032 | 
            +
                super(...arguments);
         | 
| 1033 | 
            +
                this.env = "prod";
         | 
| 1034 | 
            +
                this.apiKey = "";
         | 
| 1035 | 
            +
                this.disableTracking = false;
         | 
| 1036 | 
            +
                this.trackingSource = "embedded_player";
         | 
| 1037 | 
            +
                this.preload = "none";
         | 
| 1038 | 
            +
                this.disableAutoplay = false;
         | 
| 1039 | 
            +
                this.aspectRatio = 0;
         | 
| 1040 | 
            +
                this._id = v4();
         | 
| 1041 | 
            +
                this._handleRootClick = () => {
         | 
| 1042 | 
            +
                  this.dispatchEvent(new CustomEvent("dialogembed:click", { detail: this._id, bubbles: true, composed: true }));
         | 
| 1043 | 
            +
                };
         | 
| 1044 | 
            +
              }
         | 
| 1045 | 
            +
              connectedCallback() {
         | 
| 1046 | 
            +
                super.connectedCallback();
         | 
| 1047 | 
            +
                this.addEventListener("click", this._handleRootClick);
         | 
| 1048 | 
            +
              }
         | 
| 1049 | 
            +
              disconnectedCallback() {
         | 
| 1050 | 
            +
                super.disconnectedCallback();
         | 
| 1051 | 
            +
                this.removeEventListener("click", this._handleRootClick);
         | 
| 1052 | 
            +
              }
         | 
| 1053 | 
            +
              render() {
         | 
| 1054 | 
            +
                return html`
         | 
| 1055 | 
            +
                  <slot>
         | 
| 1056 | 
            +
                    <vmp-button size="large">Play</vmp-button>
         | 
| 1057 | 
            +
                  </slot>
         | 
| 1058 | 
            +
                  <vouch-embed-dialog-portal
         | 
| 1059 | 
            +
                    id=${this._id}
         | 
| 1060 | 
            +
                    ?autoplay=${false}
         | 
| 1061 | 
            +
                    vouchId=${ifDefined(this.vouchId)}
         | 
| 1062 | 
            +
                    templateId=${ifDefined(this.templateId)}
         | 
| 1063 | 
            +
                    .questions=${this.questions}
         | 
| 1064 | 
            +
                    .controls=${this.controls}
         | 
| 1065 | 
            +
                    env=${ifDefined(this.env)}
         | 
| 1066 | 
            +
                    apiKey=${ifDefined(this.apiKey)}
         | 
| 1067 | 
            +
                    ?disableTracking=${this.disableTracking}
         | 
| 1068 | 
            +
                    trackingSource=${ifDefined(this.trackingSource)}
         | 
| 1069 | 
            +
                    preload=${ifDefined(this.preload)}
         | 
| 1070 | 
            +
                    aspectRatio=${this.aspectRatio}
         | 
| 1071 | 
            +
                  ></vouch-embed-dialog-portal>
         | 
| 1072 | 
            +
                `;
         | 
| 1073 | 
            +
              }
         | 
| 1599 1074 | 
             
            };
         | 
| 1075 | 
            +
            DialogEmbed.styles = [
         | 
| 1076 | 
            +
              css`
         | 
| 1077 | 
            +
                  :host {
         | 
| 1078 | 
            +
                    --vu-button-padding: 10px 20px;
         | 
| 1079 | 
            +
                    --vu-button-background: #287179;
         | 
| 1080 | 
            +
                    --vu-button-background-hover: #4faab2;
         | 
| 1081 | 
            +
             | 
| 1082 | 
            +
                    display: flex;
         | 
| 1083 | 
            +
                    width: fit-content;
         | 
| 1084 | 
            +
                    height: fit-content;
         | 
| 1085 | 
            +
                  }
         | 
| 1086 | 
            +
                `
         | 
| 1087 | 
            +
            ];
         | 
| 1088 | 
            +
            __decorateClass([
         | 
| 1089 | 
            +
              property({ type: String })
         | 
| 1090 | 
            +
            ], DialogEmbed.prototype, "vouchId", 2);
         | 
| 1091 | 
            +
            __decorateClass([
         | 
| 1092 | 
            +
              property({ type: String })
         | 
| 1093 | 
            +
            ], DialogEmbed.prototype, "templateId", 2);
         | 
| 1094 | 
            +
            __decorateClass([
         | 
| 1095 | 
            +
              property({ type: Array })
         | 
| 1096 | 
            +
            ], DialogEmbed.prototype, "questions", 2);
         | 
| 1097 | 
            +
            __decorateClass([
         | 
| 1098 | 
            +
              property({ type: String })
         | 
| 1099 | 
            +
            ], DialogEmbed.prototype, "env", 2);
         | 
| 1100 | 
            +
            __decorateClass([
         | 
| 1101 | 
            +
              property({ type: String })
         | 
| 1102 | 
            +
            ], DialogEmbed.prototype, "apiKey", 2);
         | 
| 1103 | 
            +
            __decorateClass([
         | 
| 1104 | 
            +
              property({ type: Boolean })
         | 
| 1105 | 
            +
            ], DialogEmbed.prototype, "disableTracking", 2);
         | 
| 1106 | 
            +
            __decorateClass([
         | 
| 1107 | 
            +
              property({ type: String })
         | 
| 1108 | 
            +
            ], DialogEmbed.prototype, "trackingSource", 2);
         | 
| 1109 | 
            +
            __decorateClass([
         | 
| 1110 | 
            +
              property({ type: Array })
         | 
| 1111 | 
            +
            ], DialogEmbed.prototype, "controls", 2);
         | 
| 1112 | 
            +
            __decorateClass([
         | 
| 1113 | 
            +
              property({ type: String })
         | 
| 1114 | 
            +
            ], DialogEmbed.prototype, "preload", 2);
         | 
| 1115 | 
            +
            __decorateClass([
         | 
| 1116 | 
            +
              property({ type: Boolean })
         | 
| 1117 | 
            +
            ], DialogEmbed.prototype, "disableAutoplay", 2);
         | 
| 1118 | 
            +
            __decorateClass([
         | 
| 1119 | 
            +
              property({ type: Number })
         | 
| 1120 | 
            +
            ], DialogEmbed.prototype, "aspectRatio", 2);
         | 
| 1121 | 
            +
            DialogEmbed = __decorateClass([
         | 
| 1122 | 
            +
              customElement("vouch-embed-dialog")
         | 
| 1123 | 
            +
            ], DialogEmbed);
         | 
| 1124 | 
            +
             | 
| 1125 | 
            +
            export { DialogEmbed, PlayerEmbed };
         | 
| 1600 1126 | 
             
            //# sourceMappingURL=embeds.js.map
         |