@vouchfor/embeds 0.0.0-experiment.0dd23b5 → 0.0.0-experiment.113f809

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"embeds.js","sources":["../../../../node_modules/@lit/reactive-element/css-tag.js","../../../../node_modules/@lit/reactive-element/reactive-element.js","../../node_modules/lit-html/lit-html.js","../../../../node_modules/lit-html/lit-html.js","../../../../node_modules/lit-element/lit-element.js","../../src/utils/events.ts","../../src/components/Embed/controllers/event-forwarder.ts","../../src/utils/env.ts","../../src/components/Embed/controllers/fetcher.ts","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../../src/components/Embed/controllers/tracking.ts","../../src/components/Embed/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),n=new WeakMap;class o{constructor(t,e,n){if(this._$cssResult$=!0,n!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=n.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&n.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new o(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const n=1===t.length?t[0]:e.reduce(((e,s,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[n+1]),t[0]);return new o(n,t,s)},S=(s,n)=>{e?s.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((e=>{const n=document.createElement(\"style\"),o=t.litNonce;void 0!==o&&n.setAttribute(\"nonce\",o),n.textContent=e.cssText,s.appendChild(n)}))},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{o as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window,r=e.trustedTypes,h=r?r.emptyScript:\"\",o=e.reactiveElementPolyfillSupport,n={toAttribute(t,i){switch(i){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},a=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:n,reflect:!1,hasChanged:a},d=\"finalized\";class u extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var i;this.finalize(),(null!==(i=this.h)&&void 0!==i?i:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Ep(s,i);void 0!==e&&(this._$Ev.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(d))return!1;this[d]=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Ep(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$ES)&&void 0!==i?i:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$ES)||void 0===i||i.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Ei.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$EO(t,i,s=l){var e;const r=this.constructor._$Ep(t,s);if(void 0!==r&&!0===s.reflect){const h=(void 0!==(null===(e=s.converter)||void 0===e?void 0:e.toAttribute)?s.converter:n).toAttribute(i,s.type);this._$El=t,null==h?this.removeAttribute(r):this.setAttribute(r,h),this._$El=null}}_$AK(t,i){var s;const e=this.constructor,r=e._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=e.getPropertyOptions(r),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(s=t.converter)||void 0===s?void 0:s.fromAttribute)?t.converter:n;this._$El=r,this[r]=h.fromAttribute(i,t.type),this._$El=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||a)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,i)=>this[i]=t)),this._$Ei=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$Ek()}catch(t){throw i=!1,this._$Ek(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$ES)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$EO(i,this[i],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}u[d]=!0,u.elementProperties=new Map,u.elementStyles=[],u.shadowRootOptions={mode:\"open\"},null==o||o({ReactiveElement:u}),(null!==(s=e.reactiveElementVersions)&&void 0!==s?s:e.reactiveElementVersions=[]).push(\"1.6.2\");export{u as ReactiveElement,n as defaultConverter,a as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,u=()=>r.createComment(\"\"),d=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1);function P(t,i){if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==e?e.createHTML(i):i}const V=(t,i)=>{const s=t.length-1,e=[];let l,r=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let d,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(l=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=l?l:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,d=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,l=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";r+=u===f?s+h:v>=0?(e.push(d),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(e.push(void 0),i):w)}return[P(t,r+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\")),e]};class N{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,d=0;const c=t.length-1,v=this.parts,[a,f]=V(t,i);if(this.el=N.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[d++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?H:\"?\"===i[1]?L:\"@\"===i[1]?z:k})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],u()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],u())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function S(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const u=d(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==u&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===u?r=void 0:(r=new u(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=S(t,r._$AS(t,i.values),r,e)),i}class M{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,u=e[0];for(;void 0!==u;){if(l===u.index){let i;2===u.type?i=new R(n,n.nextSibling,this,t):1===u.type?i=new u.ctor(n,u.name,u.strings,this,t):6===u.type&&(i=new Z(n,this,t)),this._$AV.push(i),u=e[++h]}l!==(null==u?void 0:u.index)&&(n=C.nextNode(),l++)}return C.currentNode=r,o}v(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class R{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cp=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cp}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=S(this,t,i),d(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):v(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==A&&d(this._$AH)?this._$AA.nextSibling.data=t:this.$(r.createTextNode(t)),this._$AH=t}g(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=N.createElement(P(e.h,e.h[0]),this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.v(s);else{const t=new M(o,this),i=t.u(this.options);t.v(s),this.$(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new N(t)),i}T(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new R(this.k(u()),this.k(u()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cp=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class k{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=S(this,t,i,0),n=!d(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=S(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!d(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class H extends k{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const I=s?s.emptyScript:\"\";class L extends k{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,I):this.element.removeAttribute(this.name)}}class z extends k{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=S(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){S(this,t)}}const j={O:o,P:n,A:l,C:1,M:V,L:M,R:v,D:S,I:R,V:k,H:L,N:z,U:H,F:Z},B=i.litHtmlPolyfillSupport;null==B||B(N,R),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.8.0\");const D=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new R(i.insertBefore(u(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{j as _$LH,x as html,T as noChange,A as nothing,D as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,d=()=>r.createComment(\"\"),u=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1),P=(t,i)=>{const s=t.length-1,l=[];let r,d=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let e,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(r=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=r?r:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,e=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,r=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";d+=u===f?s+h:v>=0?(l.push(e),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(l.push(void 0),i):w)}const c=d+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\");if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return[void 0!==e?e.createHTML(c):c,l]};class V{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,u=0;const c=t.length-1,v=this.parts,[a,f]=P(t,i);if(this.el=V.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[u++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?k:\"?\"===i[1]?I:\"@\"===i[1]?L:R})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],d()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],d())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function N(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const d=u(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==d&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===d?r=void 0:(r=new d(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=N(t,r._$AS(t,i.values),r,e)),i}class S{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,d=e[0];for(;void 0!==d;){if(l===d.index){let i;2===d.type?i=new M(n,n.nextSibling,this,t):1===d.type?i=new d.ctor(n,d.name,d.strings,this,t):6===d.type&&(i=new z(n,this,t)),this._$AV.push(i),d=e[++h]}l!==(null==d?void 0:d.index)&&(n=C.nextNode(),l++)}return C.currentNode=r,o}v(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class M{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cp=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cp}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=N(this,t,i),u(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):v(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==A&&u(this._$AH)?this._$AA.nextSibling.data=t:this.$(r.createTextNode(t)),this._$AH=t}g(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=V.createElement(e.h,this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.v(s);else{const t=new S(o,this),i=t.u(this.options);t.v(s),this.$(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new V(t)),i}T(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new M(this.k(d()),this.k(d()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cp=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class R{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=N(this,t,i,0),n=!u(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=N(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!u(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class k extends R{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const H=s?s.emptyScript:\"\";class I extends R{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,H):this.element.removeAttribute(this.name)}}class L extends R{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=N(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){N(this,t)}}const Z={O:o,P:n,A:l,C:1,M:P,L:S,D:v,R:N,I:M,V:R,H:I,N:L,U:k,F:z},j=i.litHtmlPolyfillSupport;null==j||j(V,M),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.7.4\");const B=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new M(i.insertBefore(d(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{Z as _$LH,x as html,T as noChange,A as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as i}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var l,o;const r=t;class s extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(i,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return i}}s.finalized=!0,s._$litElement$=!0,null===(l=globalThis.litElementHydrateSupport)||void 0===l||l.call(globalThis,{LitElement:s});const n=globalThis.litElementPolyfillSupport;null==n||n({LitElement:s});const h={_$AK:(t,e,i)=>{t._$AK(e,i)},_$AL:t=>t._$AL};(null!==(o=globalThis.litElementVersions)&&void 0!==o?o:globalThis.litElementVersions=[]).push(\"3.3.2\");export{s as LitElement,r as UpdatingElement,h as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","function forwardEvent(type: string, fromElement: HTMLElement, toElement: HTMLElement) {\n function forwarder(event: Event) {\n toElement.dispatchEvent(new CustomEvent(event.type, event));\n }\n\n fromElement.addEventListener(type, forwarder);\n\n return () => {\n fromElement.removeEventListener(type, forwarder);\n };\n}\n\nexport { forwardEvent };\n","import { createRef, ref } from 'lit/directives/ref.js';\n\nimport type { Embed } from '..';\nimport type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type { Ref } from 'lit/directives/ref.js';\n\nimport { forwardEvent } from '~/utils/events';\n\ntype EmbedHost = ReactiveControllerHost & Embed;\n\nclass EventForwardController implements ReactiveController {\n host: EmbedHost;\n\n private _events: string[] = [];\n private _cleanup: (() => void)[] = [];\n private _forwardElementRef: Ref<HTMLElement> = createRef();\n\n constructor(host: EmbedHost, events: string[]) {\n this.host = host;\n this._events = events;\n host.addController(this);\n }\n\n register() {\n return ref(this._forwardElementRef);\n }\n\n hostConnected() {\n // Guaranteed to have the element ref in the RAF callback because of how the lit lifecycle works\n requestAnimationFrame(() => {\n this._events.forEach((event) => {\n if (this._forwardElementRef.value) {\n this._cleanup.push(forwardEvent(event, this._forwardElementRef.value, this.host));\n }\n });\n });\n }\n\n hostDisconnected() {\n this._cleanup.forEach((fn) => {\n fn();\n });\n this._cleanup = [];\n }\n}\n\nexport { EventForwardController };\n","type Environment = 'dev' | 'staging' | 'prod';\n\ntype GetEnvUrlsReturn = {\n marketingUrl: string;\n videoUrl: string;\n publicApiUrl: string;\n embedApiUrl: string;\n publicRecorderUrl: string;\n};\n\nconst marketingUrl = 'https://vouchfor.com';\n\nconst devVideoUrl = 'https://d2rxhdlm2q91uk.cloudfront.net';\nconst stagingVideoUrl = 'https://d1ix11aj5kfygl.cloudfront.net';\nconst prodVideoUrl = 'https://d157jlwnudd93d.cloudfront.net';\n\nconst devPublicApiUrl = 'https://bshyfw4h5a.execute-api.ap-southeast-2.amazonaws.com/dev';\nconst stagingPublicApiUrl = 'https://gyzw7rpbq3.execute-api.ap-southeast-2.amazonaws.com/staging';\nconst prodPublicApiUrl = 'https://vfcjuim1l3.execute-api.ap-southeast-2.amazonaws.com/prod';\n\nconst devEmbedApiUrl = 'http://localhost:6060/v1';\nconst stagingEmbedApiUrl = 'https://embed-staging.vouchfor.com/v1';\nconst prodEmbedApiUrl = 'https://embed.vouchfor.com/v1';\n\nconst devPublicRecorderUrl = 'https://dev.vouchfor.com';\nconst stagingPublicRecorderUrl = 'https://staging.vouchfor.com';\nconst prodPublicRecorderUrl = 'https://app.vouchfor.com';\n\n// We are handling the case where env is an unknown string so the ts error is a lie\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nfunction getEnvUrls(env: Environment): GetEnvUrlsReturn {\n if (!['dev', 'staging', 'prod'].includes(env)) {\n throw new Error(`Unknown environment: ${env}`);\n }\n\n if (env === 'dev') {\n return {\n marketingUrl,\n videoUrl: devVideoUrl,\n publicApiUrl: devPublicApiUrl,\n embedApiUrl: devEmbedApiUrl,\n publicRecorderUrl: devPublicRecorderUrl\n };\n }\n\n if (env === 'staging') {\n return {\n marketingUrl,\n videoUrl: stagingVideoUrl,\n publicApiUrl: stagingPublicApiUrl,\n embedApiUrl: stagingEmbedApiUrl,\n publicRecorderUrl: stagingPublicRecorderUrl\n };\n }\n\n if (env === 'prod') {\n return {\n marketingUrl,\n videoUrl: prodVideoUrl,\n publicApiUrl: prodPublicApiUrl,\n embedApiUrl: prodEmbedApiUrl,\n publicRecorderUrl: prodPublicRecorderUrl\n };\n }\n}\n\nexport {\n marketingUrl,\n devEmbedApiUrl,\n stagingEmbedApiUrl,\n prodEmbedApiUrl,\n devPublicRecorderUrl,\n stagingPublicRecorderUrl,\n prodPublicRecorderUrl,\n getEnvUrls\n};\nexport type { Environment };\n","import { Task } from '@lit/task';\n\nimport type { Embed, EmbedProps } from '..';\nimport type { TemplateInstance } from '@vouchfor/canvas-video';\nimport type { ReactiveControllerHost } from 'lit';\nimport type { Environment } from '~/utils/env';\n\nimport { getEnvUrls } from '~/utils/env';\n\ntype EmbedHost = ReactiveControllerHost & Embed;\n\ntype TaskDeps = [\n EmbedProps['env'],\n EmbedProps['apiKey'],\n EmbedProps['data'],\n EmbedProps['vouchId'],\n EmbedProps['templateId']\n];\n\nclass FetcherController {\n host: EmbedHost;\n\n private _fetching = false;\n private _vouch?: EmbedProps['data'];\n private _template?: TemplateInstance;\n\n set fetching(value) {\n if (this._fetching !== value) {\n this._fetching = value;\n this.host.requestUpdate();\n }\n }\n get fetching() {\n return this._fetching;\n }\n\n set vouch(value) {\n if (this._vouch !== value) {\n this._vouch = value;\n this.host.requestUpdate();\n }\n }\n get vouch() {\n return this._vouch;\n }\n\n set template(value) {\n if (this._template !== value) {\n this._template = value;\n this.host.requestUpdate();\n }\n }\n get template() {\n return this._template;\n }\n\n private async getVouch(env: Environment, apiKey: string, vouchId?: string) {\n const { embedApiUrl } = getEnvUrls(env);\n\n if (vouchId) {\n return fetch(`${embedApiUrl}/vouches/${vouchId}`, {\n method: 'GET',\n headers: [['X-Api-Key', apiKey]]\n }).then((response) => response.json());\n }\n\n return null;\n }\n\n private async getTemplate(env: Environment, apiKey: string, templateId?: string) {\n const { embedApiUrl } = getEnvUrls(env);\n\n if (templateId) {\n return fetch(`${embedApiUrl}/templates/${templateId}`, {\n method: 'GET',\n headers: [['X-Api-Key', apiKey]]\n }).then((response) => response.json());\n }\n\n return null;\n }\n\n constructor(host: EmbedHost) {\n this.host = host;\n new Task<TaskDeps, void>(\n this.host,\n async ([env, apiKey, data, vouchId, templateId]: TaskDeps) => {\n try {\n this.vouch = undefined;\n this.template = undefined;\n\n if (data) {\n const template = await this.getTemplate(env, apiKey, templateId);\n this.vouch = data;\n this.template = data?.settings?.template?.instance ?? template;\n } else if (vouchId) {\n this.fetching = true;\n\n const [vouch, template] = await Promise.all([\n this.getVouch(env, apiKey, vouchId),\n this.getTemplate(env, apiKey, templateId)\n ]);\n this.vouch = vouch;\n this.template = vouch?.settings?.template?.instance ?? template;\n }\n } finally {\n this.fetching = false;\n }\n },\n () => [host.env, host.apiKey, host.data, host.vouchId, host.templateId]\n );\n }\n}\n\nexport { FetcherController };\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","import { v4 as uuidv4 } from 'uuid';\n\nimport type { Embed } from '..';\nimport type { VideoEventDetail } from '@vouchfor/media-player';\nimport type { ReactiveController, ReactiveControllerHost } from 'lit';\n\nimport { getEnvUrls } from '~/utils/env';\n\nconst STREAMED_THROTTLE = 2000;\n\ntype EmbedHost = ReactiveControllerHost & Embed;\n\ntype TrackingEvent = 'VOUCH_LOADED' | 'VOUCH_RESPONSE_VIEWED' | 'VIDEO_PLAYED' | 'VIDEO_STREAMED';\ntype TrackingPayload = {\n vouchId: string;\n answerId?: string;\n streamStart?: number;\n streamEnd?: number;\n};\n\ntype TimeMap = {\n [key: string]: number;\n};\n\ntype BooleanMap = {\n [key: string]: boolean;\n};\n\nclass TrackingController implements ReactiveController {\n host: EmbedHost;\n\n private _tabId: string | undefined = undefined;\n private _clientId: string | undefined = undefined;\n private _visitorId: string | undefined = undefined;\n\n private _hasPlayed = false;\n private _hasLoaded: BooleanMap = {};\n private _answersViewed: BooleanMap = {};\n private _streamedTime: TimeMap = {};\n private _streamedPrevTimestamp: TimeMap = {};\n\n constructor(host: EmbedHost) {\n this.host = host;\n host.addController(this);\n }\n\n private _findVouchId() {\n if (this.host.data) {\n if ('uuid' in this.host.data) {\n return this.host.data.uuid;\n }\n return this.host.data.id;\n }\n }\n\n private _createVisitor = (visitorId: string) => {\n const { publicApiUrl } = getEnvUrls(this.host.env);\n window.localStorage?.setItem?.('vouch-uid-visitor', visitorId);\n navigator.sendBeacon(`${publicApiUrl}/api/visitor`, JSON.stringify({ visitorId }));\n return visitorId;\n };\n\n private _getUids() {\n if (typeof window === 'undefined') {\n return {\n client: null,\n tab: null,\n request: uuidv4()\n };\n }\n\n // Persisted for a user for the same device + browser, so we can e.g. search for all logs related to that browser\n const visitorId =\n this._visitorId || window.localStorage?.getItem?.('vouch-uid-visitor') || this._createVisitor(uuidv4());\n // Persisted for a user for the same device + browser, so we can e.g. search for all logs related to that browser\n const clientId = this._clientId || window.localStorage?.getItem?.('vouch-uid-client') || uuidv4();\n // Persisted in session storage, so we can search for everything the user has done in a specific tab\n const tabId = this._tabId || window.sessionStorage?.getItem?.('vouch-uid-tab') || uuidv4();\n // Not persisted, allows us to search for any logs related to a single FE request\n // E.g. BE should pass this request ID through all other services to be able to group logs\n const requestId = uuidv4();\n\n // Cache and persist uids\n if (visitorId !== this._visitorId) {\n this._visitorId = visitorId;\n window.localStorage?.setItem?.('vouch-uid-visitor', visitorId);\n }\n\n if (clientId !== this._clientId) {\n this._clientId = clientId;\n window.localStorage?.setItem?.('vouch-uid-client', clientId);\n }\n\n if (tabId !== this._tabId) {\n this._tabId = tabId;\n window.sessionStorage?.setItem?.('vouch-uid-tab', tabId);\n }\n\n return {\n client: clientId,\n tab: tabId,\n request: requestId,\n visitor: visitorId\n };\n }\n\n private _getReportingMetadata = () => {\n const [country, region] = Intl.DateTimeFormat().resolvedOptions().timeZone?.split?.('/') ?? [];\n\n const utmParams: any = {};\n [...new URLSearchParams(location.search).entries()].forEach(([key, value]) => {\n if (/utm/.test(key)) {\n const param = key.toLowerCase().replace(/[-_][a-z0-9]/g, (group) => group.slice(-1).toUpperCase());\n utmParams[param] = value;\n }\n });\n\n return {\n source: 'media_player',\n time: new Date(),\n region,\n country,\n screenHeight: window.screen.height,\n screenWidth: window.screen.width,\n referrer: document.referrer,\n currentUrl: location.href,\n ...utmParams\n };\n };\n\n private _sendTrackingEvent = (event: TrackingEvent, payload: TrackingPayload) => {\n const { publicApiUrl } = getEnvUrls(this.host.env);\n const { client, tab, request, visitor } = this._getUids();\n\n // Don't send tracking if we don't have a source\n navigator.sendBeacon(\n `${publicApiUrl}/api/events`,\n JSON.stringify({\n event,\n payload,\n context: {\n 'x-uid-client': client,\n 'x-uid-tab': tab,\n 'x-uid-request': request,\n 'x-uid-visitor': visitor,\n 'x-reporting-metadata': this._getReportingMetadata()\n }\n })\n );\n };\n\n private _handleVouchLoaded = ({ detail: vouchId }: CustomEvent<string>) => {\n if (!vouchId) {\n return;\n }\n\n // Only send loaded event once per session\n if (!this._hasLoaded[vouchId]) {\n this._sendTrackingEvent('VOUCH_LOADED', {\n vouchId\n });\n this._hasLoaded[vouchId] = true;\n }\n };\n\n private _handlePlay = () => {\n const vouchId = this._findVouchId();\n\n if (!vouchId) {\n return;\n }\n\n // Only send the video played event once per session\n if (!this._hasPlayed) {\n this._sendTrackingEvent('VIDEO_PLAYED', {\n vouchId,\n streamStart: this.host.currentTime\n });\n this._hasPlayed = true;\n }\n };\n\n private _handleVideoPlay = ({ detail: { id, node } }: CustomEvent<VideoEventDetail>) => {\n const vouchId = this._findVouchId();\n if (!vouchId) {\n return;\n }\n // Only increment play count once per session\n if (!this._answersViewed[id]) {\n this._sendTrackingEvent('VOUCH_RESPONSE_VIEWED', {\n vouchId,\n answerId: id\n });\n this._answersViewed[id] = true;\n }\n this._streamedTime[id] = node.currentTime;\n this._streamedPrevTimestamp[id] = Date.now();\n };\n\n private _handleVideoTimeUpdate = ({ detail: { id, node } }: CustomEvent<VideoEventDetail>) => {\n const vouchId = this._findVouchId();\n if (!vouchId) {\n return;\n }\n const currentTimestamp = Date.now();\n if (\n !this.host.paused &&\n // Only fire the video seeked event when this video is the active one\n id === this.host.scene?.video?.id &&\n // Throttle the frequency that we send streamed events while playing\n currentTimestamp - this._streamedPrevTimestamp[id] > STREAMED_THROTTLE\n ) {\n this._sendTrackingEvent('VIDEO_STREAMED', {\n vouchId,\n answerId: id,\n streamStart: this._streamedTime[id],\n streamEnd: node.currentTime\n });\n this._streamedTime[id] = node.currentTime;\n this._streamedPrevTimestamp[id] = currentTimestamp;\n }\n };\n\n private _handleVideoPause = ({ detail: { id, node } }: CustomEvent<VideoEventDetail>) => {\n const vouchId = this._findVouchId();\n if (!vouchId) {\n return;\n }\n // Send a video streamed event any time the video pauses then reset the streamed state\n // We do this to capture the last bit of time that the video was played between the previous\n // stream event and the video being paused manually or stopping because it ended\n this._sendTrackingEvent('VIDEO_STREAMED', {\n vouchId,\n answerId: id,\n streamStart: this._streamedTime[id],\n streamEnd: node.currentTime\n });\n delete this._streamedTime[id];\n delete this._streamedPrevTimestamp[id];\n };\n\n hostConnected() {\n requestAnimationFrame(() => {\n this.host.addEventListener('vouch:loaded', this._handleVouchLoaded);\n this.host.mediaPlayer?.addEventListener('play', this._handlePlay);\n this.host.mediaPlayer?.addEventListener('video:play', this._handleVideoPlay);\n this.host.mediaPlayer?.addEventListener('video:pause', this._handleVideoPause);\n this.host.mediaPlayer?.addEventListener('video:timeupdate', this._handleVideoTimeUpdate);\n });\n }\n\n hostDisconnected() {\n this.host.removeEventListener('vouch:loaded', this._handleVouchLoaded);\n this.host.mediaPlayer?.removeEventListener('play', this._handlePlay);\n this.host.mediaPlayer?.removeEventListener('video:play', this._handleVideoPlay);\n this.host.mediaPlayer?.removeEventListener('video:pause', this._handleVideoPause);\n this.host.mediaPlayer?.removeEventListener('video:timeupdate', this._handleVideoTimeUpdate);\n }\n}\n\nexport { TrackingController };\n","import { html, LitElement } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\n\nimport type { Scene, TemplateInstance } from '@vouchfor/canvas-video';\nimport type { MediaPlayer, MediaPlayerProps } from '@vouchfor/media-player';\nimport type { Ref } from 'lit/directives/ref.js';\nimport type { Environment } from '~/utils/env';\n\nimport { EventForwardController } from './controllers/event-forwarder';\nimport { FetcherController } from './controllers/fetcher';\nimport { TrackingController } from './controllers/tracking';\n\nimport '@vouchfor/media-player';\n\ntype EmbedProps = Pick<MediaPlayerProps, 'data' | 'aspectRatio' | 'preload' | 'autoplay' | 'controls'> & {\n env: Environment;\n apiKey: string;\n vouchId?: string;\n templateId?: string;\n};\n\n@customElement('vouch-embed')\nclass Embed extends LitElement {\n private _mediaPlayerRef: Ref<MediaPlayer> = createRef();\n\n @property({ type: Object, attribute: 'data' }) data: EmbedProps['data'];\n @property({ type: String }) vouchId: EmbedProps['vouchId'];\n @property({ type: String }) templateId: EmbedProps['templateId'];\n\n @property({ type: String }) env: EmbedProps['env'] = 'prod';\n @property({ type: String }) apiKey: EmbedProps['apiKey'] = '';\n\n @property({ type: Array }) controls: EmbedProps['controls'];\n @property({ type: String }) preload: EmbedProps['preload'] = 'auto';\n @property({ type: Boolean }) autoplay: EmbedProps['autoplay'] = false;\n @property({ type: Number }) aspectRatio: EmbedProps['aspectRatio'] = 0;\n\n private eventController = new EventForwardController(this, [\n 'durationchange',\n 'ended',\n 'error',\n 'loadeddata',\n 'pause',\n 'stalled',\n 'play',\n 'playing',\n 'ratechange',\n 'scenechange',\n 'seeking',\n 'seeked',\n 'timeupdate',\n 'volumechange',\n 'waiting',\n\n 'video:loadeddata',\n 'video:seeked',\n 'video:play',\n 'video:playing',\n 'video:pause',\n 'video:stalled',\n 'video:timeupdate',\n 'video:ended',\n 'video:error'\n ]);\n private _fetcherController = new FetcherController(this);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n private _trackingController = new TrackingController(this);\n\n get vouch() {\n return this._fetcherController.vouch;\n }\n\n get template(): TemplateInstance | undefined {\n return this._fetcherController.template;\n }\n\n get fetching() {\n return this._fetcherController.fetching;\n }\n\n get waiting() {\n return this._mediaPlayerRef.value?.waiting;\n }\n\n get seeking() {\n return this._mediaPlayerRef.value?.seeking;\n }\n\n get paused() {\n return this._mediaPlayerRef.value?.paused;\n }\n\n get captions() {\n return this._mediaPlayerRef.value?.captions;\n }\n\n get fullscreen() {\n return this._mediaPlayerRef.value?.fullscreen;\n }\n\n get duration() {\n return this._mediaPlayerRef.value?.duration;\n }\n\n set currentTime(value: number) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.currentTime = value;\n }\n }\n get currentTime() {\n return this._mediaPlayerRef.value?.currentTime ?? 0;\n }\n\n set playbackRate(value: number) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.playbackRate = value;\n }\n }\n get playbackRate() {\n return this._mediaPlayerRef.value?.playbackRate ?? 1;\n }\n\n set volume(value: number) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.volume = value;\n }\n }\n get volume() {\n return this._mediaPlayerRef.value?.volume ?? 1;\n }\n\n set muted(value: boolean) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.muted = value;\n }\n }\n get muted() {\n return this._mediaPlayerRef.value?.muted ?? false;\n }\n\n get scene(): Scene | null {\n return this._mediaPlayerRef.value?.scene ?? null;\n }\n\n get scenes(): Scene[] {\n return this._mediaPlayerRef.value?.scenes ?? [];\n }\n\n get videoState() {\n return this._mediaPlayerRef.value?.videoState;\n }\n\n get mediaPlayer() {\n return this._mediaPlayerRef.value;\n }\n\n play() {\n this._mediaPlayerRef.value?.play();\n }\n\n pause() {\n this._mediaPlayerRef.value?.pause();\n }\n\n setScene(index: number) {\n this._mediaPlayerRef.value?.setScene(index);\n }\n\n render() {\n return html`\n <vmp-new-media-player\n ${ref(this._mediaPlayerRef)}\n ${this.eventController.register()}\n ?autoplay=${this.autoplay}\n ?loading=${this.fetching}\n .data=${this.vouch}\n .template=${this.template}\n aspectRatio=${ifDefined(this.aspectRatio)}\n preload=${ifDefined(this.preload)}\n .controls=${this.controls}\n ></vmp-new-media-player>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'vouch-embed': Embed;\n }\n\n namespace JSX {\n interface IntrinsicElements {\n 'vouch-embed': Embed;\n }\n }\n}\n\nexport { Embed };\nexport type { EmbedProps };\n"],"names":["t","e","s","n","o$4","r","o","S","c","h","i","a","l","d","u$2","u","v","f","_","m","p","g","$","y","T","A","E","C","P","V","w","N","H","L","z","k","M$1","R","Z","R$1","M","k$1","H$1","I","L$1","z$1","B","x","j","forwardEvent","type","fromElement","toElement","forwarder","event","EventForwardController","host","events","createRef","ref","fn","marketingUrl","devVideoUrl","stagingVideoUrl","prodVideoUrl","devPublicApiUrl","stagingPublicApiUrl","prodPublicApiUrl","devEmbedApiUrl","stagingEmbedApiUrl","prodEmbedApiUrl","devPublicRecorderUrl","stagingPublicRecorderUrl","prodPublicRecorderUrl","getEnvUrls","env","FetcherController","Task","apiKey","data","vouchId","templateId","template","_b","_a","vouch","_d","_c","value","embedApiUrl","response","getRandomValues","rnds8","rng","byteToHex","unsafeStringify","arr","offset","randomUUID","native","v4","options","buf","rnds","STREAMED_THROTTLE","TrackingController","visitorId","publicApiUrl","country","region","utmParams","key","param","group","payload","client","tab","request","visitor","id","node","currentTimestamp","uuidv4","clientId","tabId","_f","_e","requestId","_h","_g","_j","_i","_l","_k","Embed","LitElement","index","html","ifDefined","__decorateClass","property","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,9,10,11,12]}
1
+ {"version":3,"file":"embeds.js","sources":["../../../../node_modules/lit/node_modules/@lit/reactive-element/css-tag.js","../../../../node_modules/lit/node_modules/@lit/reactive-element/reactive-element.js","../../../../node_modules/lit/node_modules/lit-html/lit-html.js","../../../../node_modules/lit-element/node_modules/@lit/reactive-element/css-tag.js","../../../../node_modules/lit-element/node_modules/@lit/reactive-element/reactive-element.js","../../../../node_modules/lit-element/node_modules/lit-html/lit-html.js","../../../../node_modules/lit-element/lit-element.js","../../src/utils/events.ts","../../src/components/Embed/controllers/event-forwarder.ts","../../src/utils/env.ts","../../src/components/Embed/controllers/fetcher.ts","../../src/components/Embed/controllers/tracking.ts","../../src/components/Embed/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:r,getOwnPropertyNames:h,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),y={attribute:!0,type:String,converter:u,reflect:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class b extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=y){if(s.state&&(s.attribute=!1),this._$Ei(),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),r=this.getPropertyDescriptor(t,i,s);void 0!==r&&e(this.prototype,t,r)}}static getPropertyDescriptor(t,s,i){const{get:e,set:h}=r(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get(){return e?.call(this)},set(s){const r=e?.call(this);h.call(this,s),this.requestUpdate(t,r,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??y}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...h(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$Eg=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$ES(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$E_??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$E_?.delete(t)}_$ES(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$E_?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$E_?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$EO(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const r=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==r?this.removeAttribute(e):this.setAttribute(e,r),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),r=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e,this[e]=r.fromAttribute(s,t.type),this._$Em=null}}requestUpdate(t,s,i,e=!1,r){if(void 0!==t){if(i??=this.constructor.getPropertyOptions(t),!(i.hasChanged??f)(e?r:this[t],s))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$Eg=this._$EP())}C(t,s,i){this._$AL.has(t)||this._$AL.set(t,s),!0===i.reflect&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$EP(){this.isUpdatePending=!0;try{await this._$Eg}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t)!0!==i.wrapped||this._$AL.has(s)||void 0===this[s]||this.C(s,this[s],i)}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$E_?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$ET()}catch(s){throw t=!1,this._$ET(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$E_?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$ET(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Eg}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach((t=>this._$EO(t,this[t]))),this._$ET()}updated(t){}firstUpdated(t){}}b.elementStyles=[],b.shadowRootOptions={mode:\"open\"},b[d(\"elementProperties\")]=new Map,b[d(\"finalized\")]=new Map,p?.({ReactiveElement:b}),(a.reactiveElementVersions??=[]).push(\"2.0.2\");export{b as ReactiveElement,u as defaultConverter,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,i=t.trustedTypes,s=i?i.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,e=\"$lit$\",h=`lit$${(Math.random()+\"\").slice(9)}$`,o=\"?\"+h,n=`<${o}>`,r=document,l=()=>r.createComment(\"\"),c=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,a=Array.isArray,u=t=>a(t)||\"function\"==typeof t?.[Symbol.iterator],d=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,v=/-->/g,_=/>/g,m=RegExp(`>|${d}(?:([^\\\\s\"'>=/]+)(${d}*=${d}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),p=/'/g,g=/\"/g,$=/^(?:script|style|textarea|title)$/i,y=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=y(1),b=y(2),w=Symbol.for(\"lit-noChange\"),T=Symbol.for(\"lit-nothing\"),A=new WeakMap,E=r.createTreeWalker(r,129);function C(t,i){if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==s?s.createHTML(i):i}const P=(t,i)=>{const s=t.length-1,o=[];let r,l=2===i?\"<svg>\":\"\",c=f;for(let i=0;i<s;i++){const s=t[i];let a,u,d=-1,y=0;for(;y<s.length&&(c.lastIndex=y,u=c.exec(s),null!==u);)y=c.lastIndex,c===f?\"!--\"===u[1]?c=v:void 0!==u[1]?c=_:void 0!==u[2]?($.test(u[2])&&(r=RegExp(\"</\"+u[2],\"g\")),c=m):void 0!==u[3]&&(c=m):c===m?\">\"===u[0]?(c=r??f,d=-1):void 0===u[1]?d=-2:(d=c.lastIndex-u[2].length,a=u[1],c=void 0===u[3]?m:'\"'===u[3]?g:p):c===g||c===p?c=m:c===v||c===_?c=f:(c=m,r=void 0);const x=c===m&&t[i+1].startsWith(\"/>\")?\" \":\"\";l+=c===f?s+n:d>=0?(o.push(a),s.slice(0,d)+e+s.slice(d)+h+x):s+h+(-2===d?i:x)}return[C(t,l+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\")),o]};class V{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let c=0,a=0;const u=t.length-1,d=this.parts,[f,v]=P(t,s);if(this.el=V.createElement(f,n),E.currentNode=this.el.content,2===s){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(r=E.nextNode())&&d.length<u;){if(1===r.nodeType){if(r.hasAttributes())for(const t of r.getAttributeNames())if(t.endsWith(e)){const i=v[a++],s=r.getAttribute(t).split(h),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:c,name:e[2],strings:s,ctor:\".\"===e[1]?k:\"?\"===e[1]?H:\"@\"===e[1]?I:R}),r.removeAttribute(t)}else t.startsWith(h)&&(d.push({type:6,index:c}),r.removeAttribute(t));if($.test(r.tagName)){const t=r.textContent.split(h),s=t.length-1;if(s>0){r.textContent=i?i.emptyScript:\"\";for(let i=0;i<s;i++)r.append(t[i],l()),E.nextNode(),d.push({type:2,index:++c});r.append(t[s],l())}}}else if(8===r.nodeType)if(r.data===o)d.push({type:2,index:c});else{let t=-1;for(;-1!==(t=r.data.indexOf(h,t+1));)d.push({type:7,index:c}),t+=h.length-1}c++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function N(t,i,s=t,e){if(i===w)return i;let h=void 0!==e?s._$Co?.[e]:s._$Cl;const o=c(i)?void 0:i._$litDirective$;return h?.constructor!==o&&(h?._$AO?.(!1),void 0===o?h=void 0:(h=new o(t),h._$AT(t,s,e)),void 0!==e?(s._$Co??=[])[e]=h:s._$Cl=h),void 0!==h&&(i=N(t,h._$AS(t,i.values),h,e)),i}class S{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:i},parts:s}=this._$AD,e=(t?.creationScope??r).importNode(i,!0);E.currentNode=e;let h=E.nextNode(),o=0,n=0,l=s[0];for(;void 0!==l;){if(o===l.index){let i;2===l.type?i=new M(h,h.nextSibling,this,t):1===l.type?i=new l.ctor(h,l.name,l.strings,this,t):6===l.type&&(i=new L(h,this,t)),this._$AV.push(i),l=s[++n]}o!==l?.index&&(h=E.nextNode(),o++)}return E.currentNode=r,e}p(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class M{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,i,s,e){this.type=2,this._$AH=T,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cv=e?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t?.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=N(this,t,i),c(t)?t===T||null==t||\"\"===t?(this._$AH!==T&&this._$AR(),this._$AH=T):t!==this._$AH&&t!==w&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):u(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==T&&c(this._$AH)?this._$AA.nextSibling.data=t:this.$(r.createTextNode(t)),this._$AH=t}g(t){const{values:i,_$litType$:s}=t,e=\"number\"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=V.createElement(C(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===e)this._$AH.p(i);else{const t=new S(e,this),s=t.u(this.options);t.p(i),this.$(s),this._$AH=t}}_$AC(t){let i=A.get(t.strings);return void 0===i&&A.set(t.strings,i=new V(t)),i}T(t){a(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const h of t)e===i.length?i.push(s=new M(this.k(l()),this.k(l()),this,this.options)):s=i[e],s._$AI(h),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class R{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,i,s,e,h){this.type=1,this._$AH=T,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=h,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=T}_$AI(t,i=this,s,e){const h=this.strings;let o=!1;if(void 0===h)t=N(this,t,i,0),o=!c(t)||t!==this._$AH&&t!==w,o&&(this._$AH=t);else{const e=t;let n,r;for(t=h[0],n=0;n<h.length-1;n++)r=N(this,e[s+n],i,n),r===w&&(r=this._$AH[n]),o||=!c(r)||r!==this._$AH[n],r===T?t=T:t!==T&&(t+=(r??\"\")+h[n+1]),this._$AH[n]=r}o&&!e&&this.O(t)}O(t){t===T?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??\"\")}}class k extends R{constructor(){super(...arguments),this.type=3}O(t){this.element[this.name]=t===T?void 0:t}}class H extends R{constructor(){super(...arguments),this.type=4}O(t){this.element.toggleAttribute(this.name,!!t&&t!==T)}}class I extends R{constructor(t,i,s,e,h){super(t,i,s,e,h),this.type=5}_$AI(t,i=this){if((t=N(this,t,i,0)??T)===w)return;const s=this._$AH,e=t===T&&s!==T||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,h=t!==T&&(s===T||e);e&&this.element.removeEventListener(this.name,this,s),h&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){\"function\"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class L{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){N(this,t)}}const z={j:e,P:h,A:o,C:1,M:P,L:S,R:u,V:N,D:M,I:R,H,N:I,U:k,B:L},Z=t.litHtmlPolyfillSupport;Z?.(V,M),(t.litHtmlVersions??=[]).push(\"3.1.0\");const j=(t,i,s)=>{const e=s?.renderBefore??i;let h=e._$litPart$;if(void 0===h){const t=s?.renderBefore??null;e._$litPart$=h=new M(i.insertBefore(l(),t),t,void 0,s??{})}return h._$AI(t),h};export{z as _$LH,x as html,w as noChange,T as nothing,j as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:r,getOwnPropertyNames:h,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),y={attribute:!0,type:String,converter:u,reflect:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class b extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=y){if(s.state&&(s.attribute=!1),this._$Ei(),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),r=this.getPropertyDescriptor(t,i,s);void 0!==r&&e(this.prototype,t,r)}}static getPropertyDescriptor(t,s,i){const{get:e,set:h}=r(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get(){return e?.call(this)},set(s){const r=e?.call(this);h.call(this,s),this.requestUpdate(t,r,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??y}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...h(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$Eg=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$ES(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$E_??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$E_?.delete(t)}_$ES(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$E_?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$E_?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$EO(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const r=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==r?this.removeAttribute(e):this.setAttribute(e,r),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),r=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e,this[e]=r.fromAttribute(s,t.type),this._$Em=null}}requestUpdate(t,s,i,e=!1,r){if(void 0!==t){if(i??=this.constructor.getPropertyOptions(t),!(i.hasChanged??f)(e?r:this[t],s))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$Eg=this._$EP())}C(t,s,i){this._$AL.has(t)||this._$AL.set(t,s),!0===i.reflect&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$EP(){this.isUpdatePending=!0;try{await this._$Eg}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t)!0!==i.wrapped||this._$AL.has(s)||void 0===this[s]||this.C(s,this[s],i)}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$E_?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$ET()}catch(s){throw t=!1,this._$ET(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$E_?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$ET(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Eg}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach((t=>this._$EO(t,this[t]))),this._$ET()}updated(t){}firstUpdated(t){}}b.elementStyles=[],b.shadowRootOptions={mode:\"open\"},b[d(\"elementProperties\")]=new Map,b[d(\"finalized\")]=new Map,p?.({ReactiveElement:b}),(a.reactiveElementVersions??=[]).push(\"2.0.2\");export{b as ReactiveElement,u as defaultConverter,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,i=t.trustedTypes,s=i?i.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,e=\"$lit$\",h=`lit$${(Math.random()+\"\").slice(9)}$`,o=\"?\"+h,n=`<${o}>`,r=document,l=()=>r.createComment(\"\"),c=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,a=Array.isArray,u=t=>a(t)||\"function\"==typeof t?.[Symbol.iterator],d=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,v=/-->/g,_=/>/g,m=RegExp(`>|${d}(?:([^\\\\s\"'>=/]+)(${d}*=${d}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),p=/'/g,g=/\"/g,$=/^(?:script|style|textarea|title)$/i,y=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=y(1),b=y(2),w=Symbol.for(\"lit-noChange\"),T=Symbol.for(\"lit-nothing\"),A=new WeakMap,E=r.createTreeWalker(r,129);function C(t,i){if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==s?s.createHTML(i):i}const P=(t,i)=>{const s=t.length-1,o=[];let r,l=2===i?\"<svg>\":\"\",c=f;for(let i=0;i<s;i++){const s=t[i];let a,u,d=-1,y=0;for(;y<s.length&&(c.lastIndex=y,u=c.exec(s),null!==u);)y=c.lastIndex,c===f?\"!--\"===u[1]?c=v:void 0!==u[1]?c=_:void 0!==u[2]?($.test(u[2])&&(r=RegExp(\"</\"+u[2],\"g\")),c=m):void 0!==u[3]&&(c=m):c===m?\">\"===u[0]?(c=r??f,d=-1):void 0===u[1]?d=-2:(d=c.lastIndex-u[2].length,a=u[1],c=void 0===u[3]?m:'\"'===u[3]?g:p):c===g||c===p?c=m:c===v||c===_?c=f:(c=m,r=void 0);const x=c===m&&t[i+1].startsWith(\"/>\")?\" \":\"\";l+=c===f?s+n:d>=0?(o.push(a),s.slice(0,d)+e+s.slice(d)+h+x):s+h+(-2===d?i:x)}return[C(t,l+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\")),o]};class V{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let c=0,a=0;const u=t.length-1,d=this.parts,[f,v]=P(t,s);if(this.el=V.createElement(f,n),E.currentNode=this.el.content,2===s){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(r=E.nextNode())&&d.length<u;){if(1===r.nodeType){if(r.hasAttributes())for(const t of r.getAttributeNames())if(t.endsWith(e)){const i=v[a++],s=r.getAttribute(t).split(h),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:c,name:e[2],strings:s,ctor:\".\"===e[1]?k:\"?\"===e[1]?H:\"@\"===e[1]?I:R}),r.removeAttribute(t)}else t.startsWith(h)&&(d.push({type:6,index:c}),r.removeAttribute(t));if($.test(r.tagName)){const t=r.textContent.split(h),s=t.length-1;if(s>0){r.textContent=i?i.emptyScript:\"\";for(let i=0;i<s;i++)r.append(t[i],l()),E.nextNode(),d.push({type:2,index:++c});r.append(t[s],l())}}}else if(8===r.nodeType)if(r.data===o)d.push({type:2,index:c});else{let t=-1;for(;-1!==(t=r.data.indexOf(h,t+1));)d.push({type:7,index:c}),t+=h.length-1}c++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function N(t,i,s=t,e){if(i===w)return i;let h=void 0!==e?s._$Co?.[e]:s._$Cl;const o=c(i)?void 0:i._$litDirective$;return h?.constructor!==o&&(h?._$AO?.(!1),void 0===o?h=void 0:(h=new o(t),h._$AT(t,s,e)),void 0!==e?(s._$Co??=[])[e]=h:s._$Cl=h),void 0!==h&&(i=N(t,h._$AS(t,i.values),h,e)),i}class S{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:i},parts:s}=this._$AD,e=(t?.creationScope??r).importNode(i,!0);E.currentNode=e;let h=E.nextNode(),o=0,n=0,l=s[0];for(;void 0!==l;){if(o===l.index){let i;2===l.type?i=new M(h,h.nextSibling,this,t):1===l.type?i=new l.ctor(h,l.name,l.strings,this,t):6===l.type&&(i=new L(h,this,t)),this._$AV.push(i),l=s[++n]}o!==l?.index&&(h=E.nextNode(),o++)}return E.currentNode=r,e}p(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class M{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,i,s,e){this.type=2,this._$AH=T,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cv=e?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t?.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=N(this,t,i),c(t)?t===T||null==t||\"\"===t?(this._$AH!==T&&this._$AR(),this._$AH=T):t!==this._$AH&&t!==w&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):u(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==T&&c(this._$AH)?this._$AA.nextSibling.data=t:this.$(r.createTextNode(t)),this._$AH=t}g(t){const{values:i,_$litType$:s}=t,e=\"number\"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=V.createElement(C(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===e)this._$AH.p(i);else{const t=new S(e,this),s=t.u(this.options);t.p(i),this.$(s),this._$AH=t}}_$AC(t){let i=A.get(t.strings);return void 0===i&&A.set(t.strings,i=new V(t)),i}T(t){a(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const h of t)e===i.length?i.push(s=new M(this.k(l()),this.k(l()),this,this.options)):s=i[e],s._$AI(h),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class R{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,i,s,e,h){this.type=1,this._$AH=T,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=h,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=T}_$AI(t,i=this,s,e){const h=this.strings;let o=!1;if(void 0===h)t=N(this,t,i,0),o=!c(t)||t!==this._$AH&&t!==w,o&&(this._$AH=t);else{const e=t;let n,r;for(t=h[0],n=0;n<h.length-1;n++)r=N(this,e[s+n],i,n),r===w&&(r=this._$AH[n]),o||=!c(r)||r!==this._$AH[n],r===T?t=T:t!==T&&(t+=(r??\"\")+h[n+1]),this._$AH[n]=r}o&&!e&&this.O(t)}O(t){t===T?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??\"\")}}class k extends R{constructor(){super(...arguments),this.type=3}O(t){this.element[this.name]=t===T?void 0:t}}class H extends R{constructor(){super(...arguments),this.type=4}O(t){this.element.toggleAttribute(this.name,!!t&&t!==T)}}class I extends R{constructor(t,i,s,e,h){super(t,i,s,e,h),this.type=5}_$AI(t,i=this){if((t=N(this,t,i,0)??T)===w)return;const s=this._$AH,e=t===T&&s!==T||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,h=t!==T&&(s===T||e);e&&this.element.removeEventListener(this.name,this,s),h&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){\"function\"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class L{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){N(this,t)}}const z={j:e,P:h,A:o,C:1,M:P,L:S,R:u,V:N,D:M,I:R,H,N:I,U:k,B:L},Z=t.litHtmlPolyfillSupport;Z?.(V,M),(t.litHtmlVersions??=[]).push(\"3.1.0\");const j=(t,i,s)=>{const e=s?.renderBefore??i;let h=e._$litPart$;if(void 0===h){const t=s?.renderBefore??null;e._$litPart$=h=new M(i.insertBefore(l(),t),t,void 0,s??{})}return h._$AI(t),h};export{z as _$LH,x as html,w as noChange,T as nothing,j as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as i}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class s extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(i,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return i}}s._$litElement$=!0,s[(\"finalized\",\"finalized\")]=!0,globalThis.litElementHydrateSupport?.({LitElement:s});const r=globalThis.litElementPolyfillSupport;r?.({LitElement:s});const o={_$AK:(t,e,i)=>{t._$AK(e,i)},_$AL:t=>t._$AL};(globalThis.litElementVersions??=[]).push(\"4.0.2\");export{s as LitElement,o as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","function forwardEvent(type: string, fromElement: HTMLElement, toElement: HTMLElement) {\n function forwarder(event: Event) {\n toElement.dispatchEvent(new CustomEvent(event.type, event));\n }\n\n fromElement.addEventListener(type, forwarder);\n\n return () => {\n fromElement.removeEventListener(type, forwarder);\n };\n}\n\nexport { forwardEvent };\n","import { createRef, ref } from 'lit/directives/ref.js';\n\nimport type { Embed } from '..';\nimport type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type { Ref } from 'lit/directives/ref.js';\n\nimport { forwardEvent } from '~/utils/events';\n\ntype EmbedHost = ReactiveControllerHost & Embed;\n\nclass EventForwardController implements ReactiveController {\n host: EmbedHost;\n\n private _events: string[] = [];\n private _cleanup: (() => void)[] = [];\n private _forwardElementRef: Ref<HTMLElement> = createRef();\n\n constructor(host: EmbedHost, events: string[]) {\n this.host = host;\n this._events = events;\n host.addController(this);\n }\n\n register() {\n return ref(this._forwardElementRef);\n }\n\n hostConnected() {\n // Guaranteed to have the element ref in the RAF callback because of how the lit lifecycle works\n requestAnimationFrame(() => {\n this._events.forEach((event) => {\n if (this._forwardElementRef.value) {\n this._cleanup.push(forwardEvent(event, this._forwardElementRef.value, this.host));\n }\n });\n });\n }\n\n hostDisconnected() {\n this._cleanup.forEach((fn) => {\n fn();\n });\n this._cleanup = [];\n }\n}\n\nexport { EventForwardController };\n","type Environment = 'local' | 'dev' | 'staging' | 'prod';\n\ntype GetEnvUrlsReturn = {\n videoUrl: string;\n publicApiUrl: string;\n embedApiUrl: string;\n};\n\nconst devVideoUrl = 'https://d2rxhdlm2q91uk.cloudfront.net';\nconst stagingVideoUrl = 'https://d1ix11aj5kfygl.cloudfront.net';\nconst prodVideoUrl = 'https://d157jlwnudd93d.cloudfront.net';\n\nconst devPublicApiUrl = 'https://bshyfw4h5a.execute-api.ap-southeast-2.amazonaws.com/dev';\nconst stagingPublicApiUrl = 'https://gyzw7rpbq3.execute-api.ap-southeast-2.amazonaws.com/staging';\nconst prodPublicApiUrl = 'https://vfcjuim1l3.execute-api.ap-southeast-2.amazonaws.com/prod';\n\nconst localEmbedApiUrl = 'http://localhost:6060/v2';\nconst devEmbedApiUrl = 'https://embed-dev.vouchfor.com/v2';\nconst stagingEmbedApiUrl = 'https://embed-staging.vouchfor.com/v2';\nconst prodEmbedApiUrl = 'https://embed.vouchfor.com/v2';\n\n// We are handling the case where env is an unknown string so the ts error is a lie\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nfunction getEnvUrls(env: Environment): GetEnvUrlsReturn {\n if (!['local', 'dev', 'staging', 'prod'].includes(env)) {\n throw new Error(`Unknown environment: ${env}`);\n }\n\n if (env === 'local') {\n return {\n videoUrl: devVideoUrl,\n publicApiUrl: devPublicApiUrl,\n embedApiUrl: localEmbedApiUrl\n };\n }\n\n if (env === 'dev') {\n return {\n videoUrl: devVideoUrl,\n publicApiUrl: devPublicApiUrl,\n embedApiUrl: devEmbedApiUrl\n };\n }\n\n if (env === 'staging') {\n return {\n videoUrl: stagingVideoUrl,\n publicApiUrl: stagingPublicApiUrl,\n embedApiUrl: stagingEmbedApiUrl\n };\n }\n\n if (env === 'prod') {\n return {\n videoUrl: prodVideoUrl,\n publicApiUrl: prodPublicApiUrl,\n embedApiUrl: prodEmbedApiUrl\n };\n }\n}\n\nexport { devEmbedApiUrl, stagingEmbedApiUrl, prodEmbedApiUrl, getEnvUrls };\nexport type { Environment };\n","import { Task } from '@lit/task';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport type { Embed, EmbedProps } from '..';\nimport type { ReactiveControllerHost } from 'lit';\nimport type { Environment } from '~/utils/env';\n\nimport { getEnvUrls } from '~/utils/env';\n\ntype EmbedHost = ReactiveControllerHost & Embed;\n\ntype FetchTaskDeps = [\n EmbedProps['env'],\n EmbedProps['apiKey'],\n EmbedProps['data'],\n EmbedProps['vouchId'],\n EmbedProps['templateId']\n];\n\ntype FilterTaskDeps = [EmbedProps['data'], EmbedProps['questions']];\n\nclass FetcherController {\n host: EmbedHost;\n\n private _fetching = false;\n private _vouch: EmbedProps['data'];\n\n set fetching(value) {\n if (this._fetching !== value) {\n this._fetching = value;\n this.host.requestUpdate();\n }\n }\n get fetching() {\n return this._fetching;\n }\n\n private getVouch = async (env: Environment, apiKey: string, vouchId: string) => {\n const { embedApiUrl } = getEnvUrls(env);\n\n const cacheCheck = uuidv4();\n const res = await fetch(`${embedApiUrl}/vouches/${vouchId}`, {\n method: 'GET',\n headers: [\n ['X-Api-Key', apiKey],\n ['X-Cache-Check', cacheCheck]\n ]\n });\n\n const vouch = await res.json();\n this.host.dispatchEvent(new CustomEvent('vouch:loaded', { detail: vouch?.id }));\n\n // HACK: we're currently using API Gateway caching on the embed API without any invalidation logic,\n // so to ensure that the cache stays up to date, whenever we detect a cache hit we trigger another\n // API call with the `Cache-Control` header which will re-fill the cache\n const resCacheCheck = res?.headers?.get('X-Cache-Check');\n if (resCacheCheck !== cacheCheck) {\n fetch(`${embedApiUrl}/vouches/${vouchId}`, {\n method: 'GET',\n headers: [\n ['X-Api-Key', apiKey],\n ['Cache-Control', 'max-age=0']\n ]\n });\n }\n\n return vouch;\n };\n\n private getTemplate = async (env: Environment, apiKey: string, templateId: string) => {\n const { embedApiUrl } = getEnvUrls(env);\n\n const cacheCheck = uuidv4();\n const res = await fetch(`${embedApiUrl}/templates/${templateId}`, {\n method: 'GET',\n headers: [\n ['X-Api-Key', apiKey],\n ['X-Cache-Check', cacheCheck]\n ]\n });\n const template = await res.json();\n\n // HACK: we're currently using API Gateway caching on the embed API without any invalidation logic,\n // so to ensure that the cache stays up to date, whenever we detect a cache hit we trigger another\n // API call with the `Cache-Control` header which will re-fill the cache\n const resCacheCheck = res?.headers?.get('X-Cache-Check');\n if (resCacheCheck !== cacheCheck) {\n fetch(`${embedApiUrl}/templates/${templateId}`, {\n method: 'GET',\n headers: [\n ['X-Api-Key', apiKey],\n ['Cache-Control', 'max-age=0']\n ]\n });\n }\n\n return template;\n };\n\n constructor(host: EmbedHost) {\n this.host = host;\n new Task<FetchTaskDeps, void>(\n this.host,\n async ([env, apiKey, data, vouchId, templateId]: FetchTaskDeps) => {\n try {\n host.vouch = undefined;\n host.template = undefined;\n\n if (data) {\n let template;\n if (templateId) {\n this.fetching = true;\n template = await this.getTemplate(env, apiKey, templateId);\n }\n this._vouch = data;\n host.template = template ?? data?.settings?.template?.instance;\n } else if (vouchId) {\n this.fetching = true;\n\n const [vouch, template] = await Promise.all([\n this.getVouch(env, apiKey, vouchId),\n templateId ? this.getTemplate(env, apiKey, templateId) : null\n ]);\n this._vouch = vouch;\n host.template = template ?? vouch?.settings?.template?.instance;\n }\n } finally {\n this.fetching = false;\n }\n },\n () => [host.env, host.apiKey, host.data, host.vouchId, host.templateId]\n );\n\n // This second task is to be able to filter the vouch without fetching it again if only the questions changed\n new Task<FilterTaskDeps, void>(\n this.host,\n ([vouch, questions]: FilterTaskDeps) => {\n host.vouch = vouch\n ? {\n ...vouch,\n questions: {\n items: vouch?.questions.items.filter((_, index) => !questions?.length || questions?.includes(index + 1))\n }\n }\n : undefined;\n },\n () => [this._vouch, host.questions]\n );\n }\n}\n\nexport { FetcherController };\n","import { v4 as uuidv4 } from 'uuid';\n\nimport type { Embed } from '..';\nimport type { VideoEventDetail } from '@vouchfor/media-player';\nimport type { ReactiveController, ReactiveControllerHost } from 'lit';\n\nimport packageJson from '../../../../package.json';\nimport { getEnvUrls } from '~/utils/env';\n\nconst MINIMUM_SEND_THRESHOLD = 1;\n\ntype EmbedHost = ReactiveControllerHost & Embed;\n\ntype TrackingEvent = 'VOUCH_LOADED' | 'VOUCH_RESPONSE_VIEWED' | 'VIDEO_PLAYED' | 'VIDEO_STREAMED';\ntype TrackingPayload = {\n vouchId?: string;\n answerId?: string;\n streamStart?: number;\n streamEnd?: number;\n};\n\ntype TimeMap = {\n [key: string]: number;\n};\n\ntype BooleanMap = {\n [key: string]: boolean;\n};\n\nclass TrackingController implements ReactiveController {\n host: EmbedHost;\n\n private _tabId: string | undefined = undefined;\n private _clientId: string | undefined = undefined;\n private _visitorId: string | undefined = undefined;\n\n private _hasPlayed = false;\n private _hasLoaded: BooleanMap = {};\n private _answersViewed: BooleanMap = {};\n private _streamStartTime: TimeMap = {};\n private _streamLatestTime: TimeMap = {};\n private _currentlyPlayingVideo: VideoEventDetail | null = null;\n\n constructor(host: EmbedHost) {\n this.host = host;\n host.addController(this);\n }\n\n private _findVouchId(payload?: TrackingPayload) {\n if (payload && 'vouchId' in payload) {\n return payload.vouchId;\n }\n if (this.host.vouch) {\n return this.host.vouch.id;\n }\n return null;\n }\n\n private _createVisitor = (visitorId: string) => {\n const { publicApiUrl } = getEnvUrls(this.host.env);\n window.localStorage?.setItem?.('vouch-uid-visitor', visitorId);\n navigator.sendBeacon(`${publicApiUrl}/api/visitor`, JSON.stringify({ visitorId }));\n return visitorId;\n };\n\n private _getUids() {\n if (typeof window === 'undefined') {\n return {\n client: null,\n tab: null,\n request: uuidv4()\n };\n }\n\n // Persisted for a user for the same device + browser, so we can e.g. search for all logs related to that browser\n const visitorId =\n this._visitorId || window.localStorage?.getItem?.('vouch-uid-visitor') || this._createVisitor(uuidv4());\n // Persisted for a user for the same device + browser, so we can e.g. search for all logs related to that browser\n const clientId = this._clientId || window.localStorage?.getItem?.('vouch-uid-client') || uuidv4();\n // Persisted in session storage, so we can search for everything the user has done in a specific tab\n const tabId = this._tabId || window.sessionStorage?.getItem?.('vouch-uid-tab') || uuidv4();\n // Not persisted, allows us to search for any logs related to a single FE request\n // E.g. BE should pass this request ID through all other services to be able to group logs\n const requestId = uuidv4();\n\n // Cache and persist uids\n if (visitorId !== this._visitorId) {\n this._visitorId = visitorId;\n window.localStorage?.setItem?.('vouch-uid-visitor', visitorId);\n }\n\n if (clientId !== this._clientId) {\n this._clientId = clientId;\n window.localStorage?.setItem?.('vouch-uid-client', clientId);\n }\n\n if (tabId !== this._tabId) {\n this._tabId = tabId;\n window.sessionStorage?.setItem?.('vouch-uid-tab', tabId);\n }\n\n return {\n client: clientId,\n tab: tabId,\n request: requestId,\n visitor: visitorId\n };\n }\n\n private _getReportingMetadata = () => {\n const [country, region] = Intl.DateTimeFormat().resolvedOptions().timeZone?.split?.('/') ?? [];\n\n const utmParams: any = {};\n [...new URLSearchParams(location.search).entries()].forEach(([key, value]) => {\n if (/utm/.test(key)) {\n const param = key.toLowerCase().replace(/[-_][a-z0-9]/g, (group) => group.slice(-1).toUpperCase());\n utmParams[param] = value;\n }\n });\n\n return {\n source: this.host.trackingSource,\n time: new Date(),\n region,\n country,\n screenHeight: window.screen.height,\n screenWidth: window.screen.width,\n referrer: document.referrer,\n currentUrl: location.href,\n ...utmParams\n };\n };\n\n private _sendTrackingEvent = (event: TrackingEvent, payload?: TrackingPayload) => {\n const vouchId = this._findVouchId(payload);\n\n if (!vouchId || this.host.disableTracking) {\n return;\n }\n\n const { publicApiUrl } = getEnvUrls(this.host.env);\n const { client, tab, request, visitor } = this._getUids();\n\n navigator.sendBeacon(\n `${publicApiUrl}/api/v2/events`,\n JSON.stringify({\n event,\n payload: {\n ...payload,\n vouchId\n },\n context: {\n 'x-uid-client': client,\n 'x-uid-tab': tab,\n 'x-uid-request': request,\n 'x-uid-visitor': visitor,\n 'x-reporting-metadata': this._getReportingMetadata(),\n 'x-embeds-version': packageJson.version\n }\n })\n );\n };\n\n private _streamEnded = () => {\n if (this._currentlyPlayingVideo) {\n const { id, key } = this._currentlyPlayingVideo;\n // Don't send a tracking event when seeking backwards\n if (this._streamLatestTime[key] > this._streamStartTime[key] + MINIMUM_SEND_THRESHOLD) {\n // Send a video streamed event any time the stream ends to capture the time between starting\n // the video and the video stopping for any reason (pausing, deleting the embed node or closing the browser)\n this._sendTrackingEvent('VIDEO_STREAMED', {\n answerId: id,\n streamStart: this._streamStartTime[key],\n streamEnd: this._streamLatestTime[key]\n });\n }\n\n // Make sure these events are only sent once by deleting the start and latest times\n delete this._streamStartTime[key];\n delete this._streamLatestTime[key];\n }\n };\n\n private _handleVouchLoaded = ({ detail: vouchId }: CustomEvent<string>) => {\n if (!vouchId) {\n return;\n }\n\n // Only send loaded event once per session\n if (!this._hasLoaded[vouchId]) {\n this._sendTrackingEvent('VOUCH_LOADED', { vouchId });\n this._hasLoaded[vouchId] = true;\n }\n };\n\n private _handlePlay = () => {\n // Only send the video played event once per session\n if (!this._hasPlayed) {\n this._sendTrackingEvent('VIDEO_PLAYED', {\n streamStart: this.host.currentTime\n });\n this._hasPlayed = true;\n }\n };\n\n private _handleVideoPlay = ({ detail: { id, key, node } }: CustomEvent<VideoEventDetail>) => {\n // Only increment play count once per session\n if (!this._answersViewed[key]) {\n this._sendTrackingEvent('VOUCH_RESPONSE_VIEWED', {\n answerId: id\n });\n this._answersViewed[key] = true;\n }\n\n if (!this._streamStartTime[key]) {\n this._streamStartTime[key] = node.currentTime;\n this._streamLatestTime[key] = node.currentTime;\n }\n };\n\n private _handleVideoTimeUpdate = ({ detail: { id, key, node } }: CustomEvent<VideoEventDetail>) => {\n if (\n // We only want to count any time that the video is actually playing\n !this.host.paused &&\n // Only update the latest time if this event fires for the currently active video\n id === this.host.scene?.video?.id\n ) {\n this._currentlyPlayingVideo = { id, key, node };\n this._streamLatestTime[key] = node.currentTime;\n }\n };\n\n private _handleVideoPause = ({ detail: { id, key } }: CustomEvent<VideoEventDetail>) => {\n if (this._streamLatestTime[key] > this._streamStartTime[key] + MINIMUM_SEND_THRESHOLD) {\n this._sendTrackingEvent('VIDEO_STREAMED', {\n answerId: id,\n streamStart: this._streamStartTime[key],\n streamEnd: this._streamLatestTime[key]\n });\n }\n delete this._streamStartTime[key];\n delete this._streamLatestTime[key];\n };\n\n private _pageUnloading = () => {\n this._streamEnded();\n // This will try to send the same stream event again so we delete the start and latest\n // time in stream ended so that there is no times to send and the pause event does nothing\n this.host.pause();\n };\n\n private _handleVisibilityChange = () => {\n if (document.visibilityState === 'hidden') {\n this._pageUnloading();\n }\n };\n\n private _handlePageHide = () => {\n this._pageUnloading();\n };\n\n hostConnected() {\n requestAnimationFrame(() => {\n if ('onvisibilitychange' in document) {\n document.addEventListener('visibilitychange', this._handleVisibilityChange);\n } else {\n window.addEventListener('pagehide', this._handlePageHide);\n }\n this.host.addEventListener('vouch:loaded', this._handleVouchLoaded);\n this.host.mediaPlayer?.addEventListener('play', this._handlePlay);\n this.host.mediaPlayer?.addEventListener('video:play', this._handleVideoPlay);\n this.host.mediaPlayer?.addEventListener('video:pause', this._handleVideoPause);\n this.host.mediaPlayer?.addEventListener('video:timeupdate', this._handleVideoTimeUpdate);\n });\n }\n\n hostDisconnected() {\n this._streamEnded();\n if ('onvisibilitychange' in document) {\n document.removeEventListener('visibilitychange', this._handleVisibilityChange);\n } else {\n window.removeEventListener('pagehide', this._handlePageHide);\n }\n this.host.removeEventListener('vouch:loaded', this._handleVouchLoaded);\n this.host.mediaPlayer?.removeEventListener('play', this._handlePlay);\n this.host.mediaPlayer?.removeEventListener('video:play', this._handleVideoPlay);\n this.host.mediaPlayer?.removeEventListener('video:pause', this._handleVideoPause);\n this.host.mediaPlayer?.removeEventListener('video:timeupdate', this._handleVideoTimeUpdate);\n }\n}\n\nexport { TrackingController };\n","import { html, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\n\nimport type { Scene, Scenes, TemplateInstance } from '@vouchfor/canvas-video';\nimport type { MediaPlayer, MediaPlayerProps } from '@vouchfor/media-player';\nimport type { Ref } from 'lit/directives/ref.js';\nimport type { Environment } from '~/utils/env';\n\nimport { EventForwardController } from './controllers/event-forwarder';\nimport { FetcherController } from './controllers/fetcher';\nimport { TrackingController } from './controllers/tracking';\n\nimport '@vouchfor/media-player';\n\ntype EmbedProps = Pick<MediaPlayerProps, 'data' | 'aspectRatio' | 'preload' | 'autoplay' | 'controls'> & {\n env: Environment;\n apiKey: string;\n disableTracking?: boolean;\n trackingSource?: string;\n vouchId?: string;\n templateId?: string;\n // Index of the questions to include starting from 1\n questions?: number[];\n};\n\n@customElement('vouch-embed')\nclass Embed extends LitElement {\n private _mediaPlayerRef: Ref<MediaPlayer> = createRef();\n\n @property({ type: Object }) data: EmbedProps['data'];\n @property({ type: String }) vouchId: EmbedProps['vouchId'];\n @property({ type: String }) templateId: EmbedProps['templateId'];\n @property({ type: Array }) questions: EmbedProps['questions'];\n\n @property({ type: String }) env: EmbedProps['env'] = 'prod';\n @property({ type: String }) apiKey: EmbedProps['apiKey'] = '';\n @property({ type: Boolean }) disableTracking: EmbedProps['disableTracking'] = false;\n @property({ type: String }) trackingSource: EmbedProps['trackingSource'] = 'embed';\n\n @property({ type: Array }) controls: EmbedProps['controls'];\n @property({ type: String }) preload: EmbedProps['preload'] = 'auto';\n @property({ type: Boolean }) autoplay: EmbedProps['autoplay'] = false;\n @property({ type: Number }) aspectRatio: EmbedProps['aspectRatio'] = 0;\n\n private eventController = new EventForwardController(this, [\n 'durationchange',\n 'ended',\n 'error',\n 'loadeddata',\n 'pause',\n 'stalled',\n 'play',\n 'playing',\n 'ratechange',\n 'scenechange',\n 'seeking',\n 'seeked',\n 'timeupdate',\n 'volumechange',\n 'waiting',\n\n 'video:loadeddata',\n 'video:seeking',\n 'video:seeked',\n 'video:play',\n 'video:playing',\n 'video:pause',\n 'video:stalled',\n 'video:timeupdate',\n 'video:ended',\n 'video:error'\n ]);\n private _fetcherController = new FetcherController(this);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n private _trackingController = new TrackingController(this);\n\n @state() vouch: EmbedProps['data'];\n @state() template: TemplateInstance | undefined;\n\n get fetching() {\n return this._fetcherController.fetching;\n }\n\n get waiting() {\n return this._mediaPlayerRef.value?.waiting;\n }\n\n get seeking() {\n return this._mediaPlayerRef.value?.seeking;\n }\n\n get paused() {\n return this._mediaPlayerRef.value?.paused;\n }\n\n get captions() {\n return this._mediaPlayerRef.value?.captions;\n }\n\n get fullscreen() {\n return this._mediaPlayerRef.value?.fullscreen;\n }\n\n get duration() {\n return this._mediaPlayerRef.value?.duration;\n }\n\n set currentTime(value: number) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.currentTime = value;\n }\n }\n get currentTime() {\n return this._mediaPlayerRef.value?.currentTime ?? 0;\n }\n\n set playbackRate(value: number) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.playbackRate = value;\n }\n }\n get playbackRate() {\n return this._mediaPlayerRef.value?.playbackRate ?? 1;\n }\n\n set volume(value: number) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.volume = value;\n }\n }\n get volume() {\n return this._mediaPlayerRef.value?.volume ?? 1;\n }\n\n set muted(value: boolean) {\n if (this._mediaPlayerRef.value) {\n this._mediaPlayerRef.value.muted = value;\n }\n }\n get muted() {\n return this._mediaPlayerRef.value?.muted ?? false;\n }\n\n get scene(): Scene | null {\n return this._mediaPlayerRef.value?.scene ?? null;\n }\n\n get scenes(): Scene[] {\n return this._mediaPlayerRef.value?.scenes ?? [];\n }\n\n get sceneConfig(): Scenes | null {\n return this._mediaPlayerRef.value?.sceneConfig ?? null;\n }\n\n get videoState() {\n return this._mediaPlayerRef.value?.videoState;\n }\n\n get mediaPlayer() {\n return this._mediaPlayerRef.value;\n }\n\n play() {\n this._mediaPlayerRef.value?.play();\n }\n\n pause() {\n this._mediaPlayerRef.value?.pause();\n }\n\n setScene(index: number) {\n this._mediaPlayerRef.value?.setScene(index);\n }\n\n render() {\n return html`\n <vmp-new-media-player\n ${ref(this._mediaPlayerRef)}\n ${this.eventController.register()}\n ?autoplay=${this.autoplay}\n ?loading=${this.fetching}\n .data=${this.vouch}\n .template=${this.template}\n aspectRatio=${ifDefined(this.aspectRatio)}\n preload=${ifDefined(this.preload)}\n .controls=${this.controls}\n ></vmp-new-media-player>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'vouch-embed': Embed;\n }\n\n namespace JSX {\n interface IntrinsicElements {\n 'vouch-embed': Embed;\n }\n }\n}\n\nexport { Embed };\nexport type { EmbedProps };\n"],"names":["t","e","s","o","n$5","r","n","S","c","i","h","a","l","p","d","u","f","y","b$1","_a","b","v","_","m","g","$","w","T","A","E","C","P","x","V$1","V","k","H","I","R","N","_b","S$2","M","L","R$1","H$1","Z","n$2","j","forwardEvent","type","fromElement","toElement","forwarder","event","EventForwardController","host","events","createRef","ref","fn","devVideoUrl","stagingVideoUrl","prodVideoUrl","devPublicApiUrl","stagingPublicApiUrl","prodPublicApiUrl","localEmbedApiUrl","devEmbedApiUrl","stagingEmbedApiUrl","prodEmbedApiUrl","getEnvUrls","env","FetcherController","apiKey","vouchId","embedApiUrl","cacheCheck","uuidv4","res","vouch","templateId","template","Task","data","_d","_c","questions","index","value","MINIMUM_SEND_THRESHOLD","TrackingController","visitorId","publicApiUrl","country","region","utmParams","key","param","group","payload","client","tab","request","visitor","packageJson","id","node","clientId","tabId","_f","_e","requestId","_h","_g","_j","_i","_l","_k","Embed","LitElement","html","ifDefined","__decorateClass","property","state","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}
@@ -0,0 +1,14 @@
1
+ import type { Embed } from '..';
2
+ import type { ReactiveControllerHost } from 'lit';
3
+ type EmbedHost = ReactiveControllerHost & Embed;
4
+ declare class FetcherController {
5
+ host: EmbedHost;
6
+ private _fetching;
7
+ private _vouch;
8
+ set fetching(value: boolean);
9
+ get fetching(): boolean;
10
+ private getVouch;
11
+ private getTemplate;
12
+ constructor(host: EmbedHost);
13
+ }
14
+ export { FetcherController };
@@ -9,19 +9,24 @@ declare class TrackingController implements ReactiveController {
9
9
  private _hasPlayed;
10
10
  private _hasLoaded;
11
11
  private _answersViewed;
12
- private _streamedTime;
13
- private _streamedPrevTimestamp;
12
+ private _streamStartTime;
13
+ private _streamLatestTime;
14
+ private _currentlyPlayingVideo;
14
15
  constructor(host: EmbedHost);
15
16
  private _findVouchId;
16
17
  private _createVisitor;
17
18
  private _getUids;
18
19
  private _getReportingMetadata;
19
20
  private _sendTrackingEvent;
21
+ private _streamEnded;
20
22
  private _handleVouchLoaded;
21
23
  private _handlePlay;
22
24
  private _handleVideoPlay;
23
25
  private _handleVideoTimeUpdate;
24
26
  private _handleVideoPause;
27
+ private _pageUnloading;
28
+ private _handleVisibilityChange;
29
+ private _handlePageHide;
25
30
  hostConnected(): void;
26
31
  hostDisconnected(): void;
27
32
  }
@@ -1,20 +1,26 @@
1
1
  import { LitElement } from 'lit';
2
- import type { Scene, TemplateInstance } from '@vouchfor/canvas-video';
2
+ import type { Scene, Scenes, TemplateInstance } from '@vouchfor/canvas-video';
3
3
  import type { MediaPlayer, MediaPlayerProps } from '@vouchfor/media-player';
4
4
  import type { Environment } from '../../utils/env';
5
5
  type EmbedProps = Pick<MediaPlayerProps, 'data' | 'aspectRatio' | 'preload' | 'autoplay' | 'controls'> & {
6
6
  env: Environment;
7
7
  apiKey: string;
8
+ disableTracking?: boolean;
9
+ trackingSource?: string;
8
10
  vouchId?: string;
9
11
  templateId?: string;
12
+ questions?: number[];
10
13
  };
11
14
  declare class Embed extends LitElement {
12
15
  private _mediaPlayerRef;
13
16
  data: EmbedProps['data'];
14
17
  vouchId: EmbedProps['vouchId'];
15
18
  templateId: EmbedProps['templateId'];
19
+ questions: EmbedProps['questions'];
16
20
  env: EmbedProps['env'];
17
21
  apiKey: EmbedProps['apiKey'];
22
+ disableTracking: EmbedProps['disableTracking'];
23
+ trackingSource: EmbedProps['trackingSource'];
18
24
  controls: EmbedProps['controls'];
19
25
  preload: EmbedProps['preload'];
20
26
  autoplay: EmbedProps['autoplay'];
@@ -22,8 +28,8 @@ declare class Embed extends LitElement {
22
28
  private eventController;
23
29
  private _fetcherController;
24
30
  private _trackingController;
25
- get vouch(): import("@vouchfor/media-player/dist/src/components/MediaPlayer/types").Vouch | undefined;
26
- get template(): TemplateInstance | undefined;
31
+ vouch: EmbedProps['data'];
32
+ template: TemplateInstance | undefined;
27
33
  get fetching(): boolean;
28
34
  get waiting(): boolean | undefined;
29
35
  get seeking(): boolean | undefined;
@@ -41,12 +47,13 @@ declare class Embed extends LitElement {
41
47
  get muted(): boolean;
42
48
  get scene(): Scene | null;
43
49
  get scenes(): Scene[];
50
+ get sceneConfig(): Scenes | null;
44
51
  get videoState(): import("@vouchfor/media-player/dist/src/components/MediaPlayer/controllers/scenes").VideoStateMap | undefined;
45
52
  get mediaPlayer(): MediaPlayer | undefined;
46
53
  play(): void;
47
54
  pause(): void;
48
55
  setScene(index: number): void;
49
- render(): import("lit-html").TemplateResult<1>;
56
+ render(): import("lit").TemplateResult<1>;
50
57
  }
51
58
  declare global {
52
59
  interface HTMLElementTagNameMap {