@snippyly/plugin-staging 1.0.363 → 1.0.365

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/package.json +1 -1
  2. package/snippyly.js +53 -53
  3. package/snippyly.min.js +147 -147
package/snippyly.js CHANGED
@@ -14,13 +14,13 @@ var t=function(t){return new Promise((function(e,i){var o=document.getElementByI
14
14
  * Copyright 2017 Google LLC
15
15
  * SPDX-License-Identifier: BSD-3-Clause
16
16
  */
17
- var g;m.finalized=!0,m.elementProperties=new Map,m.elementStyles=[],m.shadowRootOptions={mode:"open"},null==h||h({ReactiveElement:m}),(null!==(l=globalThis.reactiveElementVersions)&&void 0!==l?l:globalThis.reactiveElementVersions=[]).push("1.3.2");const f=globalThis.trustedTypes,w=f?f.createPolicy("lit-html",{createHTML:t=>t}):void 0,y=`lit$${(Math.random()+"").slice(9)}$`,b="?"+y,C=`<${b}>`,x=document,E=(t="")=>x.createComment(t),k=t=>null===t||"object"!=typeof t&&"function"!=typeof t,S=Array.isArray,M=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,_=/-->/g,N=/>/g,T=/>|[ \n \r](?:([^\s"'>=/]+)([ \n \r]*=[ \n \r]*(?:[^ \n \r"'`<>=]|("|')|))|$)/g,I=/'/g,L=/"/g,A=/^(?:script|style|textarea|title)$/i,O=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),F=Symbol.for("lit-noChange"),D=Symbol.for("lit-nothing"),j=new WeakMap,$=x.createTreeWalker(x,129,null,!1),U=(t,e)=>{const i=t.length-1,o=[];let n,s=2===e?"<svg>":"",r=M;for(let e=0;e<i;e++){const i=t[e];let a,l,c=-1,d=0;for(;d<i.length&&(r.lastIndex=d,l=r.exec(i),null!==l);)d=r.lastIndex,r===M?"!--"===l[1]?r=_:void 0!==l[1]?r=N:void 0!==l[2]?(A.test(l[2])&&(n=RegExp("</"+l[2],"g")),r=T):void 0!==l[3]&&(r=T):r===T?">"===l[0]?(r=null!=n?n:M,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,a=l[1],r=void 0===l[3]?T:'"'===l[3]?L:I):r===L||r===I?r=T:r===_||r===N?r=M:(r=T,n=void 0);const h=r===T&&t[e+1].startsWith("/>")?" ":"";s+=r===M?i+C:c>=0?(o.push(a),i.slice(0,c)+"$lit$"+i.slice(c)+y+h):i+y+(-2===c?(o.push(void 0),e):h)}const a=s+(t[i]||"<?>")+(2===e?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==w?w.createHTML(a):a,o]};class z{constructor({strings:t,_$litType$:e},i){let o;this.parts=[];let n=0,s=0;const r=t.length-1,a=this.parts,[l,c]=U(t,e);if(this.el=z.createElement(l,i),$.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(o=$.nextNode())&&a.length<r;){if(1===o.nodeType){if(o.hasAttributes()){const t=[];for(const e of o.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(y)){const i=c[s++];if(t.push(e),void 0!==i){const t=o.getAttribute(i.toLowerCase()+"$lit$").split(y),e=/([.?@])?(.*)/.exec(i);a.push({type:1,index:n,name:e[2],strings:t,ctor:"."===e[1]?H:"?"===e[1]?Z:"@"===e[1]?K:B})}else a.push({type:6,index:n})}for(const e of t)o.removeAttribute(e)}if(A.test(o.tagName)){const t=o.textContent.split(y),e=t.length-1;if(e>0){o.textContent=f?f.emptyScript:"";for(let i=0;i<e;i++)o.append(t[i],E()),$.nextNode(),a.push({type:2,index:++n});o.append(t[e],E())}}}else if(8===o.nodeType)if(o.data===b)a.push({type:2,index:n});else{let t=-1;for(;-1!==(t=o.data.indexOf(y,t+1));)a.push({type:7,index:n}),t+=y.length-1}n++}}static createElement(t,e){const i=x.createElement("template");return i.innerHTML=t,i}}function P(t,e,i=t,o){var n,s,r,a;if(e===F)return e;let l=void 0!==o?null===(n=i._$Cl)||void 0===n?void 0:n[o]:i._$Cu;const c=k(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(s=null==l?void 0:l._$AO)||void 0===s||s.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,i,o)),void 0!==o?(null!==(r=(a=i)._$Cl)&&void 0!==r?r:a._$Cl=[])[o]=l:i._$Cu=l),void 0!==l&&(e=P(t,l._$AS(t,e.values),l,o)),e}class R{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:i},parts:o}=this._$AD,n=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:x).importNode(i,!0);$.currentNode=n;let s=$.nextNode(),r=0,a=0,l=o[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new V(s,s.nextSibling,this,t):1===l.type?e=new l.ctor(s,l.name,l.strings,this,t):6===l.type&&(e=new Y(s,this,t)),this.v.push(e),l=o[++a]}r!==(null==l?void 0:l.index)&&(s=$.nextNode(),r++)}return n}m(t){let e=0;for(const i of this.v)void 0!==i&&(void 0!==i.strings?(i._$AI(t,i,e),e+=i.strings.length-2):i._$AI(t[e])),e++}}class V{constructor(t,e,i,o){var n;this.type=2,this._$AH=D,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=i,this.options=o,this._$Cg=null===(n=null==o?void 0:o.isConnected)||void 0===n||n}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=P(this,t,e),k(t)?t===D||null==t||""===t?(this._$AH!==D&&this._$AR(),this._$AH=D):t!==this._$AH&&t!==F&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>{var e;return S(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.S(t):this.$(t)}M(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.M(t))}$(t){this._$AH!==D&&k(this._$AH)?this._$AA.nextSibling.data=t:this.k(x.createTextNode(t)),this._$AH=t}T(t){var e;const{values:i,_$litType$:o}=t,n="number"==typeof o?this._$AC(t):(void 0===o.el&&(o.el=z.createElement(o.h,this.options)),o);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===n)this._$AH.m(i);else{const t=new R(n,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=j.get(t.strings);return void 0===e&&j.set(t.strings,e=new z(t)),e}S(t){S(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,o=0;for(const n of t)o===e.length?e.push(i=new V(this.M(E()),this.M(E()),this,this.options)):i=e[o],i._$AI(n),o++;o<e.length&&(this._$AR(i&&i._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){var i;for(null===(i=this._$AP)||void 0===i||i.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class B{constructor(t,e,i,o,n){this.type=1,this._$AH=D,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=n,i.length>2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=D}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,o){const n=this.strings;let s=!1;if(void 0===n)t=P(this,t,e,0),s=!k(t)||t!==this._$AH&&t!==F,s&&(this._$AH=t);else{const o=t;let r,a;for(t=n[0],r=0;r<n.length-1;r++)a=P(this,o[i+r],e,r),a===F&&(a=this._$AH[r]),s||(s=!k(a)||a!==this._$AH[r]),a===D?t=D:t!==D&&(t+=(null!=a?a:"")+n[r+1]),this._$AH[r]=a}s&&!o&&this.C(t)}C(t){t===D?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class H extends B{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===D?void 0:t}}const G=f?f.emptyScript:"";class Z extends B{constructor(){super(...arguments),this.type=4}C(t){t&&t!==D?this.element.setAttribute(this.name,G):this.element.removeAttribute(this.name)}}class K extends B{constructor(t,e,i,o,n){super(t,e,i,o,n),this.type=5}_$AI(t,e=this){var i;if((t=null!==(i=P(this,t,e,0))&&void 0!==i?i:D)===F)return;const o=this._$AH,n=t===D&&o!==D||t.capture!==o.capture||t.once!==o.once||t.passive!==o.passive,s=t!==D&&(o===D||n);n&&this.element.removeEventListener(this.name,this,o),s&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,i;"function"==typeof this._$AH?this._$AH.call(null!==(i=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==i?i:this.element,t):this._$AH.handleEvent(t)}}class Y{constructor(t,e,i){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=i}get _$AU(){return this._$AM._$AU}_$AI(t){P(this,t)}}const W=window.litHtmlPolyfillSupport;
17
+ var g;m.finalized=!0,m.elementProperties=new Map,m.elementStyles=[],m.shadowRootOptions={mode:"open"},null==h||h({ReactiveElement:m}),(null!==(l=globalThis.reactiveElementVersions)&&void 0!==l?l:globalThis.reactiveElementVersions=[]).push("1.3.2");const f=globalThis.trustedTypes,w=f?f.createPolicy("lit-html",{createHTML:t=>t}):void 0,y=`lit$${(Math.random()+"").slice(9)}$`,b="?"+y,C=`<${b}>`,x=document,E=(t="")=>x.createComment(t),k=t=>null===t||"object"!=typeof t&&"function"!=typeof t,S=Array.isArray,M=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,_=/-->/g,N=/>/g,T=/>|[ \n \r](?:([^\s"'>=/]+)([ \n \r]*=[ \n \r]*(?:[^ \n \r"'`<>=]|("|')|))|$)/g,I=/'/g,L=/"/g,A=/^(?:script|style|textarea|title)$/i,O=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),F=Symbol.for("lit-noChange"),D=Symbol.for("lit-nothing"),j=new WeakMap,$=x.createTreeWalker(x,129,null,!1),U=(t,e)=>{const i=t.length-1,o=[];let n,s=2===e?"<svg>":"",r=M;for(let e=0;e<i;e++){const i=t[e];let a,l,c=-1,d=0;for(;d<i.length&&(r.lastIndex=d,l=r.exec(i),null!==l);)d=r.lastIndex,r===M?"!--"===l[1]?r=_:void 0!==l[1]?r=N:void 0!==l[2]?(A.test(l[2])&&(n=RegExp("</"+l[2],"g")),r=T):void 0!==l[3]&&(r=T):r===T?">"===l[0]?(r=null!=n?n:M,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,a=l[1],r=void 0===l[3]?T:'"'===l[3]?L:I):r===L||r===I?r=T:r===_||r===N?r=M:(r=T,n=void 0);const h=r===T&&t[e+1].startsWith("/>")?" ":"";s+=r===M?i+C:c>=0?(o.push(a),i.slice(0,c)+"$lit$"+i.slice(c)+y+h):i+y+(-2===c?(o.push(void 0),e):h)}const a=s+(t[i]||"<?>")+(2===e?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==w?w.createHTML(a):a,o]};class z{constructor({strings:t,_$litType$:e},i){let o;this.parts=[];let n=0,s=0;const r=t.length-1,a=this.parts,[l,c]=U(t,e);if(this.el=z.createElement(l,i),$.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(o=$.nextNode())&&a.length<r;){if(1===o.nodeType){if(o.hasAttributes()){const t=[];for(const e of o.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(y)){const i=c[s++];if(t.push(e),void 0!==i){const t=o.getAttribute(i.toLowerCase()+"$lit$").split(y),e=/([.?@])?(.*)/.exec(i);a.push({type:1,index:n,name:e[2],strings:t,ctor:"."===e[1]?H:"?"===e[1]?Z:"@"===e[1]?W:B})}else a.push({type:6,index:n})}for(const e of t)o.removeAttribute(e)}if(A.test(o.tagName)){const t=o.textContent.split(y),e=t.length-1;if(e>0){o.textContent=f?f.emptyScript:"";for(let i=0;i<e;i++)o.append(t[i],E()),$.nextNode(),a.push({type:2,index:++n});o.append(t[e],E())}}}else if(8===o.nodeType)if(o.data===b)a.push({type:2,index:n});else{let t=-1;for(;-1!==(t=o.data.indexOf(y,t+1));)a.push({type:7,index:n}),t+=y.length-1}n++}}static createElement(t,e){const i=x.createElement("template");return i.innerHTML=t,i}}function P(t,e,i=t,o){var n,s,r,a;if(e===F)return e;let l=void 0!==o?null===(n=i._$Cl)||void 0===n?void 0:n[o]:i._$Cu;const c=k(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(s=null==l?void 0:l._$AO)||void 0===s||s.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,i,o)),void 0!==o?(null!==(r=(a=i)._$Cl)&&void 0!==r?r:a._$Cl=[])[o]=l:i._$Cu=l),void 0!==l&&(e=P(t,l._$AS(t,e.values),l,o)),e}class R{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:i},parts:o}=this._$AD,n=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:x).importNode(i,!0);$.currentNode=n;let s=$.nextNode(),r=0,a=0,l=o[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new V(s,s.nextSibling,this,t):1===l.type?e=new l.ctor(s,l.name,l.strings,this,t):6===l.type&&(e=new K(s,this,t)),this.v.push(e),l=o[++a]}r!==(null==l?void 0:l.index)&&(s=$.nextNode(),r++)}return n}m(t){let e=0;for(const i of this.v)void 0!==i&&(void 0!==i.strings?(i._$AI(t,i,e),e+=i.strings.length-2):i._$AI(t[e])),e++}}class V{constructor(t,e,i,o){var n;this.type=2,this._$AH=D,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=i,this.options=o,this._$Cg=null===(n=null==o?void 0:o.isConnected)||void 0===n||n}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=P(this,t,e),k(t)?t===D||null==t||""===t?(this._$AH!==D&&this._$AR(),this._$AH=D):t!==this._$AH&&t!==F&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>{var e;return S(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.S(t):this.$(t)}M(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.M(t))}$(t){this._$AH!==D&&k(this._$AH)?this._$AA.nextSibling.data=t:this.k(x.createTextNode(t)),this._$AH=t}T(t){var e;const{values:i,_$litType$:o}=t,n="number"==typeof o?this._$AC(t):(void 0===o.el&&(o.el=z.createElement(o.h,this.options)),o);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===n)this._$AH.m(i);else{const t=new R(n,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=j.get(t.strings);return void 0===e&&j.set(t.strings,e=new z(t)),e}S(t){S(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,o=0;for(const n of t)o===e.length?e.push(i=new V(this.M(E()),this.M(E()),this,this.options)):i=e[o],i._$AI(n),o++;o<e.length&&(this._$AR(i&&i._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){var i;for(null===(i=this._$AP)||void 0===i||i.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class B{constructor(t,e,i,o,n){this.type=1,this._$AH=D,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=n,i.length>2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=D}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,o){const n=this.strings;let s=!1;if(void 0===n)t=P(this,t,e,0),s=!k(t)||t!==this._$AH&&t!==F,s&&(this._$AH=t);else{const o=t;let r,a;for(t=n[0],r=0;r<n.length-1;r++)a=P(this,o[i+r],e,r),a===F&&(a=this._$AH[r]),s||(s=!k(a)||a!==this._$AH[r]),a===D?t=D:t!==D&&(t+=(null!=a?a:"")+n[r+1]),this._$AH[r]=a}s&&!o&&this.C(t)}C(t){t===D?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class H extends B{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===D?void 0:t}}const G=f?f.emptyScript:"";class Z extends B{constructor(){super(...arguments),this.type=4}C(t){t&&t!==D?this.element.setAttribute(this.name,G):this.element.removeAttribute(this.name)}}class W extends B{constructor(t,e,i,o,n){super(t,e,i,o,n),this.type=5}_$AI(t,e=this){var i;if((t=null!==(i=P(this,t,e,0))&&void 0!==i?i:D)===F)return;const o=this._$AH,n=t===D&&o!==D||t.capture!==o.capture||t.once!==o.once||t.passive!==o.passive,s=t!==D&&(o===D||n);n&&this.element.removeEventListener(this.name,this,o),s&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,i;"function"==typeof this._$AH?this._$AH.call(null!==(i=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==i?i:this.element,t):this._$AH.handleEvent(t)}}class K{constructor(t,e,i){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=i}get _$AU(){return this._$AM._$AU}_$AI(t){P(this,t)}}const Y=window.litHtmlPolyfillSupport;
18
18
  /**
19
19
  * @license
20
20
  * Copyright 2017 Google LLC
21
21
  * SPDX-License-Identifier: BSD-3-Clause
22
22
  */
23
- var J,q;null==W||W(z,V),(null!==(g=globalThis.litHtmlVersions)&&void 0!==g?g:globalThis.litHtmlVersions=[]).push("2.2.6");class Q extends m{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=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 e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=((t,e,i)=>{var o,n;const s=null!==(o=null==i?void 0:i.renderBefore)&&void 0!==o?o:e;let r=s._$litPart$;if(void 0===r){const t=null!==(n=null==i?void 0:i.renderBefore)&&void 0!==n?n:null;s._$litPart$=r=new V(e.insertBefore(E(),t),t,void 0,null!=i?i:{})}return r._$AI(t),r})(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!1)}render(){return F}}Q.finalized=!0,Q._$litElement$=!0,null===(J=globalThis.litElementHydrateSupport)||void 0===J||J.call(globalThis,{LitElement:Q});const X=globalThis.litElementPolyfillSupport;null==X||X({LitElement:Q}),(null!==(q=globalThis.litElementVersions)&&void 0!==q?q:globalThis.litElementVersions=[]).push("3.2.0");
23
+ var J,q;null==Y||Y(z,V),(null!==(g=globalThis.litHtmlVersions)&&void 0!==g?g:globalThis.litHtmlVersions=[]).push("2.2.6");class Q extends m{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=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 e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=((t,e,i)=>{var o,n;const s=null!==(o=null==i?void 0:i.renderBefore)&&void 0!==o?o:e;let r=s._$litPart$;if(void 0===r){const t=null!==(n=null==i?void 0:i.renderBefore)&&void 0!==n?n:null;s._$litPart$=r=new V(e.insertBefore(E(),t),t,void 0,null!=i?i:{})}return r._$AI(t),r})(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!1)}render(){return F}}Q.finalized=!0,Q._$litElement$=!0,null===(J=globalThis.litElementHydrateSupport)||void 0===J||J.call(globalThis,{LitElement:Q});const X=globalThis.litElementPolyfillSupport;null==X||X({LitElement:Q}),(null!==(q=globalThis.litElementVersions)&&void 0!==q?q:globalThis.litElementVersions=[]).push("3.2.0");
24
24
  /**
25
25
  * @license
26
26
  * Copyright 2017 Google LLC
@@ -48,7 +48,7 @@ const nt=1;
48
48
  * Copyright 2018 Google LLC
49
49
  * SPDX-License-Identifier: BSD-3-Clause
50
50
  */
51
- const st=(t=>(...e)=>({_$litDirective$:t,values:e}))(class extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){var e;if(super(t),t.type!==nt||"class"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter((e=>t[e])).join(" ")+" "}update(t,[e]){var i,o;if(void 0===this.et){this.et=new Set,void 0!==t.strings&&(this.st=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in e)e[t]&&!(null===(i=this.st)||void 0===i?void 0:i.has(t))&&this.et.add(t);return this.render(e)}const n=t.element.classList;this.et.forEach((t=>{t in e||(n.remove(t),this.et.delete(t))}));for(const t in e){const i=!!e[t];i===this.et.has(t)||(null===(o=this.st)||void 0===o?void 0:o.has(t))||(i?(n.add(t),this.et.add(t)):(n.remove(t),this.et.delete(t)))}return F}}),rt={VELT_ROOT:"velt-root",VELT_PRESENCE:"velt-presence",VELT_CURSOR:"velt-cursor",VELT_COMMENT_TOOL:"velt-comment-tool",VELT_COMMENTS:"velt-comments",SNIPPYLY_TEXT_HIGHLIGHT:"snippyly-text-highlight",VELT_COMMENTS_SIDEBAR:"velt-comments-sidebar",VELT_HUDDLE:"velt-huddle",VELT_RECORDER_NOTES:"velt-recorder-notes",VELT_RECORDER_CONTROL_PANEL:"velt-recorder-control-panel",VELT_ARROWS:"velt-arrows"},at={ENABLE_URL_NAVIGATION:"enable-url-navigation",CURRENT_LOCATION_SUFFIX:"current-location-suffix"},lt={customBranding:{logo:{logoMark:{lightUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_logomark_light.svg?alt=media&token=e75a5b0c-d593-4449-a0fc-1c3a47ea5201",darkUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_logomark_light.svg?alt=media&token=e75a5b0c-d593-4449-a0fc-1c3a47ea5201"},wordMark:{lightUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_workmark_light_2.svg?alt=media&token=a3983c5d-bd35-4341-86d8-323992111f47",darkUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_workmark_dark.svg?alt=media&token=561310a6-775f-4f46-b46c-bbe8c51d598d"}}}},ct=[{name:"Peppa Pig",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fpeppa_pig.svg?alt=media&token=a9fc83f7-b347-4868-8d52-0e888f0de73a&_gl=1*jzxghx*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTQ5LjQyLjAuMA.."},{name:"Dazzling Dalmatian",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fdazzling_dalmatian.svg?alt=media&token=5842b24c-7e58-4bb5-96c2-d09aa11f7f9e&_gl=1*11ayw3z*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxOTY4LjExLjAuMA.."},{name:"Rosy Rabbit",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Frosy_rabbit.svg?alt=media&token=4e65a9e3-080d-4416-839d-e761b6b37181&_gl=1*156om5t*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjUzLjYwLjAuMA.."},{name:"Leo the Lion",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fleo_the_lion.svg?alt=media&token=58d1296e-fefd-42ce-80ea-ae2cc830f1a9&_gl=1*1cz8e9q*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTAwLjIwLjAuMA.."},{name:"Ducky Down",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fducky_down.svg?alt=media&token=d67ae889-78c5-46e3-aaa9-3eb511fe90b3&_gl=1*cxyj7o*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxOTkwLjYwLjAuMA.."},{name:"Merry Monkey",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fmerry_monkey.svg?alt=media&token=5bd2f69a-7211-42df-9718-5339c467b2d1&_gl=1*1labjed*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTE3LjMuMC4w"},{name:"Ecstatic Elephant",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fecstatic_elephant.svg?alt=media&token=fbd2ba76-6c3a-47a7-beac-0460a2178b7d&_gl=1*aku3ps*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDA3LjQzLjAuMA.."},{name:"Baby Bear",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fbaby_bear.svg?alt=media&token=71d0c5fb-60aa-4304-adc1-635a83650bde&_gl=1*1dxajmf*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxMjQyLjUyLjAuMA.."},{name:"Freddy Froglet",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Ffreddy_froglet.svg?alt=media&token=e3b2e292-6480-4507-9da3-21a62a1346d4&_gl=1*s4yycs*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDQzLjcuMC4w"},{name:"Powerful Panda",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fpowerful_panda.svg?alt=media&token=07f9d60f-aa14-4a77-ad5b-c48ee76db3f5&_gl=1*7gfuit*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTkzLjYwLjAuMA.."},{name:"Curious Cat",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fcurious_cat.svg?alt=media&token=dccf6824-3b7c-4e4e-8559-40fbb8ff6186&_gl=1*1nwi0ti*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxOTM3LjQyLjAuMA.."},{name:"Playful Penguin",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fplayful_penguin.svg?alt=media&token=c6d1b11a-43a6-4001-ae56-e04fd5a3f965&_gl=1*1xdxvkx*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTYzLjI4LjAuMA.."},{name:"Kind Koala",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fkind_koala.svg?alt=media&token=974396d6-6ccd-4367-8563-b27634849cb5&_gl=1*1w1gbnn*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDgwLjQwLjAuMA.."},{name:"Tommy Tiger",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Ftommy_tiger.svg?alt=media&token=40a95ac7-cc91-4b74-859a-4e2e5964b967&_gl=1*1n0cr0n*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjczLjQwLjAuMA.."},{name:"Wally Walrus",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fwally_walrus.svg?alt=media&token=31e02ef2-c986-4724-b987-dca97f84f81b&_gl=1*y5by2c*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjkxLjIyLjAuMA.."},{name:"Ricky Rhino",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fricky_rhino.svg?alt=media&token=5d9dafe5-f4de-4f8b-94c1-49e01c776611&_gl=1*zyp4n2*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjMxLjIyLjAuMA.."},{name:"Oliver Otter",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Foliver_otter.svg?alt=media&token=5298b869-0903-40b2-a702-224a3e0bcd95&_gl=1*aicppz*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTMxLjYwLjAuMA.."},{name:"Reggie Ratling",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Freggie_ratling.svg?alt=media&token=f37fd4a0-9dbd-403a-bb82-81fdfb63cf88&_gl=1*16lzeql*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjA3LjQ2LjAuMA.."},{name:"Gentle Giraffe",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fgentle_giraffe.svg?alt=media&token=f097ec12-e8ce-4d26-bf32-43e470eb7907&_gl=1*11ctuwz*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDYwLjYwLjAuMA.."},{name:"Fabulous Fox",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Ffabulous_fox.svg?alt=media&token=fe1a4236-af45-427f-a035-1eda417b0682&_gl=1*xyyv1g*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDIxLjI5LjAuMA.."}];var dt=Object.freeze({__proto__:null,VELT_SDK_STAGING_VERSION:"1.0.366",VELT_SDK_DEVELOP_VERSION:"1.0.322",REVIEW_MODE:"review",FEEDBACK_MODE:"feedback",REVIEW_DOC_ID:"sreviewId",SNIPPYLY_COMMENT_ID:"scommentId",SNIPPYLY_USER:"snippyly-user",SNIPPYLY_TOKEN:"st",SUPERFLOW_USER_TOKEN:"_sfut",SUPERFLOW_GUEST_USER_TOKEN:"_sfgut",PROJECT_VERSION_KEY:"projectVersionKey",PROJECT_VERSION:"projectVersion",PROJECT_VERSION_DEFAULT_KEY:"sversion",PROJECT_INSTALL:"sprojectInstall",LIVE_DEMO_MODAL:"sflivedemo",FIGMA_DEMO_MODAL:"sffigmademo",TOUR_COMMENT_TOOLTIP:"sfTourCommentTooltip",SUPERFLOW_USER_ADMIN:"sfUserAdmin",SUPERFLOW_GUEST_MODE:"sfGuestMode",SUPERFLOW_PASSWORD_PROTECTED:"sfPasswordProtected",SUPERFLOW_GUEST_MODE_ALLOW_SIGN_IN:"sfGuestModeAllowSignIn",SUPERFLOW_GUEST_USER_MODEL_OPENED:"sfGuestUserModelOpened",SUPERFLOW_GUEST_USER_NAME_MODEL_OPENED:"sfGuestUserNameModelOpened",SUPERFLOW_GUEST_USER_NAME_UPDATED:"sfGuestUserNameUpdated",SUPERFLOW_GUEST_USER_BANNER_OPENED:"sfGuestUserBannerOpened",SUPERFLOW_CUSTOMER_METADATA:"sfCustomerMetadata",TAGS:rt,ATTRIBUTES:at,DEFAULT_CUSTOMER_METADATA:lt,GUEST_USERS:ct});const ht="https://superflow-portal-staging-2023.web.app/",ut="9dbcd2509e0fa90a5c81f038ce618e3f",pt="6d24f74f12f6fb84c87efa8f791cfb2e",vt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/sa",mt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/checkdomainwhitelisted",gt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/iam",ft="https://us-central1-snipply-sdk-staging.cloudfunctions.net/getcustomermetadata",wt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/generatesuperflowauthtoken",yt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/usermigration",bt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/customloginenabled",Ct="https://us-central1-snipply-sdk-staging.cloudfunctions.net/getProjectConfig",xt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/validatePassword",Et="https://us-central1-snipply-sdk-staging.cloudfunctions.net/checktoolbarenabled",kt=function(t){const e=[];let i=0;for(let o=0;o<t.length;o++){let n=t.charCodeAt(o);n<128?e[i++]=n:n<2048?(e[i++]=n>>6|192,e[i++]=63&n|128):55296==(64512&n)&&o+1<t.length&&56320==(64512&t.charCodeAt(o+1))?(n=65536+((1023&n)<<10)+(1023&t.charCodeAt(++o)),e[i++]=n>>18|240,e[i++]=n>>12&63|128,e[i++]=n>>6&63|128,e[i++]=63&n|128):(e[i++]=n>>12|224,e[i++]=n>>6&63|128,e[i++]=63&n|128)}return e},St={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray(t,e){if(!Array.isArray(t))throw Error("encodeByteArray takes an array as a parameter");this.init_();const i=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,o=[];for(let e=0;e<t.length;e+=3){const n=t[e],s=e+1<t.length,r=s?t[e+1]:0,a=e+2<t.length,l=a?t[e+2]:0,c=n>>2,d=(3&n)<<4|r>>4;let h=(15&r)<<2|l>>6,u=63&l;a||(u=64,s||(h=64)),o.push(i[c],i[d],i[h],i[u])}return o.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(kt(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):function(t){const e=[];let i=0,o=0;for(;i<t.length;){const n=t[i++];if(n<128)e[o++]=String.fromCharCode(n);else if(n>191&&n<224){const s=t[i++];e[o++]=String.fromCharCode((31&n)<<6|63&s)}else if(n>239&&n<365){const s=((7&n)<<18|(63&t[i++])<<12|(63&t[i++])<<6|63&t[i++])-65536;e[o++]=String.fromCharCode(55296+(s>>10)),e[o++]=String.fromCharCode(56320+(1023&s))}else{const s=t[i++],r=t[i++];e[o++]=String.fromCharCode((15&n)<<12|(63&s)<<6|63&r)}}return e.join("")}(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();const i=e?this.charToByteMapWebSafe_:this.charToByteMap_,o=[];for(let e=0;e<t.length;){const n=i[t.charAt(e++)],s=e<t.length?i[t.charAt(e)]:0;++e;const r=e<t.length?i[t.charAt(e)]:64;++e;const a=e<t.length?i[t.charAt(e)]:64;if(++e,null==n||null==s||null==r||null==a)throw Error();const l=n<<2|s>>4;if(o.push(l),64!==r){const t=s<<4&240|r>>2;if(o.push(t),64!==a){const t=r<<6&192|a;o.push(t)}}}return o},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let t=0;t<this.ENCODED_VALS.length;t++)this.byteToCharMap_[t]=this.ENCODED_VALS.charAt(t),this.charToByteMap_[this.byteToCharMap_[t]]=t,this.byteToCharMapWebSafe_[t]=this.ENCODED_VALS_WEBSAFE.charAt(t),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[t]]=t,t>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(t)]=t,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(t)]=t)}}},Mt=function(t){return function(t){const e=kt(t);return St.encodeByteArray(e,!0)}(t).replace(/\./g,"")},_t=function(t){try{return St.decodeString(t,!0)}catch(t){console.error("base64Decode failed: ",t)}return null};
51
+ const st=(t=>(...e)=>({_$litDirective$:t,values:e}))(class extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){var e;if(super(t),t.type!==nt||"class"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter((e=>t[e])).join(" ")+" "}update(t,[e]){var i,o;if(void 0===this.et){this.et=new Set,void 0!==t.strings&&(this.st=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in e)e[t]&&!(null===(i=this.st)||void 0===i?void 0:i.has(t))&&this.et.add(t);return this.render(e)}const n=t.element.classList;this.et.forEach((t=>{t in e||(n.remove(t),this.et.delete(t))}));for(const t in e){const i=!!e[t];i===this.et.has(t)||(null===(o=this.st)||void 0===o?void 0:o.has(t))||(i?(n.add(t),this.et.add(t)):(n.remove(t),this.et.delete(t)))}return F}}),rt={VELT_ROOT:"velt-root",VELT_PRESENCE:"velt-presence",VELT_CURSOR:"velt-cursor",VELT_COMMENT_TOOL:"velt-comment-tool",VELT_COMMENTS:"velt-comments",SNIPPYLY_TEXT_HIGHLIGHT:"snippyly-text-highlight",VELT_COMMENTS_SIDEBAR:"velt-comments-sidebar",VELT_HUDDLE:"velt-huddle",VELT_RECORDER_NOTES:"velt-recorder-notes",VELT_RECORDER_CONTROL_PANEL:"velt-recorder-control-panel",VELT_ARROWS:"velt-arrows"},at={ENABLE_URL_NAVIGATION:"enable-url-navigation",CURRENT_LOCATION_SUFFIX:"current-location-suffix"},lt={customBranding:{logo:{logoMark:{lightUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_logomark_light.svg?alt=media&token=e75a5b0c-d593-4449-a0fc-1c3a47ea5201",darkUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_logomark_light.svg?alt=media&token=e75a5b0c-d593-4449-a0fc-1c3a47ea5201"},wordMark:{lightUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_workmark_light_2.svg?alt=media&token=a3983c5d-bd35-4341-86d8-323992111f47",darkUrl:"https://firebasestorage.googleapis.com/v0/b/snipply-sdk-staging.appspot.com/o/superflowLogos%2Fsuperflow_workmark_dark.svg?alt=media&token=561310a6-775f-4f46-b46c-bbe8c51d598d"}}}},ct=[{name:"Peppa Pig",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fpeppa_pig.svg?alt=media&token=a9fc83f7-b347-4868-8d52-0e888f0de73a&_gl=1*jzxghx*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTQ5LjQyLjAuMA.."},{name:"Dazzling Dalmatian",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fdazzling_dalmatian.svg?alt=media&token=5842b24c-7e58-4bb5-96c2-d09aa11f7f9e&_gl=1*11ayw3z*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxOTY4LjExLjAuMA.."},{name:"Rosy Rabbit",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Frosy_rabbit.svg?alt=media&token=4e65a9e3-080d-4416-839d-e761b6b37181&_gl=1*156om5t*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjUzLjYwLjAuMA.."},{name:"Leo the Lion",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fleo_the_lion.svg?alt=media&token=58d1296e-fefd-42ce-80ea-ae2cc830f1a9&_gl=1*1cz8e9q*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTAwLjIwLjAuMA.."},{name:"Ducky Down",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fducky_down.svg?alt=media&token=d67ae889-78c5-46e3-aaa9-3eb511fe90b3&_gl=1*cxyj7o*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxOTkwLjYwLjAuMA.."},{name:"Merry Monkey",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fmerry_monkey.svg?alt=media&token=5bd2f69a-7211-42df-9718-5339c467b2d1&_gl=1*1labjed*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTE3LjMuMC4w"},{name:"Ecstatic Elephant",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fecstatic_elephant.svg?alt=media&token=fbd2ba76-6c3a-47a7-beac-0460a2178b7d&_gl=1*aku3ps*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDA3LjQzLjAuMA.."},{name:"Baby Bear",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fbaby_bear.svg?alt=media&token=71d0c5fb-60aa-4304-adc1-635a83650bde&_gl=1*1dxajmf*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxMjQyLjUyLjAuMA.."},{name:"Freddy Froglet",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Ffreddy_froglet.svg?alt=media&token=e3b2e292-6480-4507-9da3-21a62a1346d4&_gl=1*s4yycs*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDQzLjcuMC4w"},{name:"Powerful Panda",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fpowerful_panda.svg?alt=media&token=07f9d60f-aa14-4a77-ad5b-c48ee76db3f5&_gl=1*7gfuit*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTkzLjYwLjAuMA.."},{name:"Curious Cat",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fcurious_cat.svg?alt=media&token=dccf6824-3b7c-4e4e-8559-40fbb8ff6186&_gl=1*1nwi0ti*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQxOTM3LjQyLjAuMA.."},{name:"Playful Penguin",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fplayful_penguin.svg?alt=media&token=c6d1b11a-43a6-4001-ae56-e04fd5a3f965&_gl=1*1xdxvkx*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTYzLjI4LjAuMA.."},{name:"Kind Koala",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fkind_koala.svg?alt=media&token=974396d6-6ccd-4367-8563-b27634849cb5&_gl=1*1w1gbnn*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDgwLjQwLjAuMA.."},{name:"Tommy Tiger",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Ftommy_tiger.svg?alt=media&token=40a95ac7-cc91-4b74-859a-4e2e5964b967&_gl=1*1n0cr0n*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjczLjQwLjAuMA.."},{name:"Wally Walrus",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fwally_walrus.svg?alt=media&token=31e02ef2-c986-4724-b987-dca97f84f81b&_gl=1*y5by2c*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjkxLjIyLjAuMA.."},{name:"Ricky Rhino",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fricky_rhino.svg?alt=media&token=5d9dafe5-f4de-4f8b-94c1-49e01c776611&_gl=1*zyp4n2*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjMxLjIyLjAuMA.."},{name:"Oliver Otter",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Foliver_otter.svg?alt=media&token=5298b869-0903-40b2-a702-224a3e0bcd95&_gl=1*aicppz*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMTMxLjYwLjAuMA.."},{name:"Reggie Ratling",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Freggie_ratling.svg?alt=media&token=f37fd4a0-9dbd-403a-bb82-81fdfb63cf88&_gl=1*16lzeql*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMjA3LjQ2LjAuMA.."},{name:"Gentle Giraffe",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Fgentle_giraffe.svg?alt=media&token=f097ec12-e8ce-4d26-bf32-43e470eb7907&_gl=1*11ctuwz*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDYwLjYwLjAuMA.."},{name:"Fabulous Fox",photoUrl:"https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/avatars%2Ffabulous_fox.svg?alt=media&token=fe1a4236-af45-427f-a035-1eda417b0682&_gl=1*xyyv1g*_ga*NTc3MjEzMjIwLjE2NjEwODkwMDU.*_ga_CW55HF8NVT*MTY5NzE0MTIzNC4zMzMuMS4xNjk3MTQyMDIxLjI5LjAuMA.."}];var dt=Object.freeze({__proto__:null,VELT_SDK_STAGING_VERSION:"1.0.366",VELT_SDK_DEVELOP_VERSION:"1.0.323",REVIEW_MODE:"review",FEEDBACK_MODE:"feedback",REVIEW_DOC_ID:"sreviewId",SNIPPYLY_COMMENT_ID:"scommentId",SNIPPYLY_USER:"snippyly-user",SNIPPYLY_TOKEN:"st",SUPERFLOW_USER_TOKEN:"_sfut",SUPERFLOW_GUEST_USER_TOKEN:"_sfgut",PROJECT_VERSION_KEY:"projectVersionKey",PROJECT_VERSION:"projectVersion",PROJECT_VERSION_DEFAULT_KEY:"sversion",PROJECT_INSTALL:"sprojectInstall",LIVE_DEMO_MODAL:"sflivedemo",FIGMA_DEMO_MODAL:"sffigmademo",TOUR_COMMENT_TOOLTIP:"sfTourCommentTooltip",SUPERFLOW_USER_ADMIN:"sfUserAdmin",SUPERFLOW_GUEST_MODE:"sfGuestMode",SUPERFLOW_PASSWORD_PROTECTED:"sfPasswordProtected",SUPERFLOW_PASSWORD_IS_VALID:"sfPasswordIsValid",SUPERFLOW_GUEST_MODE_ALLOW_SIGN_IN:"sfGuestModeAllowSignIn",SUPERFLOW_GUEST_USER_MODEL_OPENED:"sfGuestUserModelOpened",SUPERFLOW_GUEST_USER_NAME_MODEL_OPENED:"sfGuestUserNameModelOpened",SUPERFLOW_GUEST_USER_NAME_UPDATED:"sfGuestUserNameUpdated",SUPERFLOW_GUEST_USER_BANNER_OPENED:"sfGuestUserBannerOpened",SUPERFLOW_CUSTOMER_METADATA:"sfCustomerMetadata",TAGS:rt,ATTRIBUTES:at,DEFAULT_CUSTOMER_METADATA:lt,GUEST_USERS:ct});const ht="https://superflow-portal-staging-2023.web.app/",ut="9dbcd2509e0fa90a5c81f038ce618e3f",pt="6d24f74f12f6fb84c87efa8f791cfb2e",vt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/sa",mt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/checkdomainwhitelisted",gt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/iam",ft="https://us-central1-snipply-sdk-staging.cloudfunctions.net/getcustomermetadata",wt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/generatesuperflowauthtoken",yt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/usermigration",bt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/customloginenabled",Ct="https://us-central1-snipply-sdk-staging.cloudfunctions.net/getProjectConfig",xt="https://us-central1-snipply-sdk-staging.cloudfunctions.net/validatePassword",Et="https://us-central1-snipply-sdk-staging.cloudfunctions.net/checktoolbarenabled",kt=function(t){const e=[];let i=0;for(let o=0;o<t.length;o++){let n=t.charCodeAt(o);n<128?e[i++]=n:n<2048?(e[i++]=n>>6|192,e[i++]=63&n|128):55296==(64512&n)&&o+1<t.length&&56320==(64512&t.charCodeAt(o+1))?(n=65536+((1023&n)<<10)+(1023&t.charCodeAt(++o)),e[i++]=n>>18|240,e[i++]=n>>12&63|128,e[i++]=n>>6&63|128,e[i++]=63&n|128):(e[i++]=n>>12|224,e[i++]=n>>6&63|128,e[i++]=63&n|128)}return e},St={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray(t,e){if(!Array.isArray(t))throw Error("encodeByteArray takes an array as a parameter");this.init_();const i=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,o=[];for(let e=0;e<t.length;e+=3){const n=t[e],s=e+1<t.length,r=s?t[e+1]:0,a=e+2<t.length,l=a?t[e+2]:0,c=n>>2,d=(3&n)<<4|r>>4;let h=(15&r)<<2|l>>6,u=63&l;a||(u=64,s||(h=64)),o.push(i[c],i[d],i[h],i[u])}return o.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(kt(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):function(t){const e=[];let i=0,o=0;for(;i<t.length;){const n=t[i++];if(n<128)e[o++]=String.fromCharCode(n);else if(n>191&&n<224){const s=t[i++];e[o++]=String.fromCharCode((31&n)<<6|63&s)}else if(n>239&&n<365){const s=((7&n)<<18|(63&t[i++])<<12|(63&t[i++])<<6|63&t[i++])-65536;e[o++]=String.fromCharCode(55296+(s>>10)),e[o++]=String.fromCharCode(56320+(1023&s))}else{const s=t[i++],r=t[i++];e[o++]=String.fromCharCode((15&n)<<12|(63&s)<<6|63&r)}}return e.join("")}(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();const i=e?this.charToByteMapWebSafe_:this.charToByteMap_,o=[];for(let e=0;e<t.length;){const n=i[t.charAt(e++)],s=e<t.length?i[t.charAt(e)]:0;++e;const r=e<t.length?i[t.charAt(e)]:64;++e;const a=e<t.length?i[t.charAt(e)]:64;if(++e,null==n||null==s||null==r||null==a)throw Error();const l=n<<2|s>>4;if(o.push(l),64!==r){const t=s<<4&240|r>>2;if(o.push(t),64!==a){const t=r<<6&192|a;o.push(t)}}}return o},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let t=0;t<this.ENCODED_VALS.length;t++)this.byteToCharMap_[t]=this.ENCODED_VALS.charAt(t),this.charToByteMap_[this.byteToCharMap_[t]]=t,this.byteToCharMapWebSafe_[t]=this.ENCODED_VALS_WEBSAFE.charAt(t),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[t]]=t,t>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(t)]=t,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(t)]=t)}}},Mt=function(t){return function(t){const e=kt(t);return St.encodeByteArray(e,!0)}(t).replace(/\./g,"")},_t=function(t){try{return St.decodeString(t,!0)}catch(t){console.error("base64Decode failed: ",t)}return null};
52
52
  /**
53
53
  * @license
54
54
  * Copyright 2017 Google LLC
@@ -212,7 +212,7 @@ class Bt{constructor(t,e){this.name=t,this.container=e,this.component=null,this.
212
212
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
213
213
  * See the License for the specific language governing permissions and
214
214
  * limitations under the License.
215
- */var Gt;!function(t){t[t.DEBUG=0]="DEBUG",t[t.VERBOSE=1]="VERBOSE",t[t.INFO=2]="INFO",t[t.WARN=3]="WARN",t[t.ERROR=4]="ERROR",t[t.SILENT=5]="SILENT"}(Gt||(Gt={}));const Zt={debug:Gt.DEBUG,verbose:Gt.VERBOSE,info:Gt.INFO,warn:Gt.WARN,error:Gt.ERROR,silent:Gt.SILENT},Kt=Gt.INFO,Yt={[Gt.DEBUG]:"log",[Gt.VERBOSE]:"log",[Gt.INFO]:"info",[Gt.WARN]:"warn",[Gt.ERROR]:"error"},Wt=(t,e,...i)=>{if(e<t.logLevel)return;const o=(new Date).toISOString(),n=Yt[e];if(!n)throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`);console[n](`[${o}] ${t.name}:`,...i)};class Jt{constructor(t){this.name=t,this._logLevel=Kt,this._logHandler=Wt,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(t){if(!(t in Gt))throw new TypeError(`Invalid value "${t}" assigned to \`logLevel\``);this._logLevel=t}setLogLevel(t){this._logLevel="string"==typeof t?Zt[t]:t}get logHandler(){return this._logHandler}set logHandler(t){if("function"!=typeof t)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=t}get userLogHandler(){return this._userLogHandler}set userLogHandler(t){this._userLogHandler=t}debug(...t){this._userLogHandler&&this._userLogHandler(this,Gt.DEBUG,...t),this._logHandler(this,Gt.DEBUG,...t)}log(...t){this._userLogHandler&&this._userLogHandler(this,Gt.VERBOSE,...t),this._logHandler(this,Gt.VERBOSE,...t)}info(...t){this._userLogHandler&&this._userLogHandler(this,Gt.INFO,...t),this._logHandler(this,Gt.INFO,...t)}warn(...t){this._userLogHandler&&this._userLogHandler(this,Gt.WARN,...t),this._logHandler(this,Gt.WARN,...t)}error(...t){this._userLogHandler&&this._userLogHandler(this,Gt.ERROR,...t),this._logHandler(this,Gt.ERROR,...t)}}let qt,Qt;const Xt=new WeakMap,te=new WeakMap,ee=new WeakMap,ie=new WeakMap,oe=new WeakMap;let ne={get(t,e,i){if(t instanceof IDBTransaction){if("done"===e)return te.get(t);if("objectStoreNames"===e)return t.objectStoreNames||ee.get(t);if("store"===e)return i.objectStoreNames[1]?void 0:i.objectStore(i.objectStoreNames[0])}return ae(t[e])},set:(t,e,i)=>(t[e]=i,!0),has:(t,e)=>t instanceof IDBTransaction&&("done"===e||"store"===e)||e in t};function se(t){return t!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Qt||(Qt=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(le(this),e),ae(Xt.get(this))}:function(...e){return ae(t.apply(le(this),e))}:function(e,...i){const o=t.call(le(this),e,...i);return ee.set(o,e.sort?e.sort():[e]),ae(o)}}function re(t){return"function"==typeof t?se(t):(t instanceof IDBTransaction&&function(t){if(te.has(t))return;const e=new Promise(((e,i)=>{const o=()=>{t.removeEventListener("complete",n),t.removeEventListener("error",s),t.removeEventListener("abort",s)},n=()=>{e(),o()},s=()=>{i(t.error||new DOMException("AbortError","AbortError")),o()};t.addEventListener("complete",n),t.addEventListener("error",s),t.addEventListener("abort",s)}));te.set(t,e)}(t),e=t,(qt||(qt=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some((t=>e instanceof t))?new Proxy(t,ne):t);var e}function ae(t){if(t instanceof IDBRequest)return function(t){const e=new Promise(((e,i)=>{const o=()=>{t.removeEventListener("success",n),t.removeEventListener("error",s)},n=()=>{e(ae(t.result)),o()},s=()=>{i(t.error),o()};t.addEventListener("success",n),t.addEventListener("error",s)}));return e.then((e=>{e instanceof IDBCursor&&Xt.set(e,t)})).catch((()=>{})),oe.set(e,t),e}(t);if(ie.has(t))return ie.get(t);const e=re(t);return e!==t&&(ie.set(t,e),oe.set(e,t)),e}const le=t=>oe.get(t);const ce=["get","getKey","getAll","getAllKeys","count"],de=["put","add","delete","clear"],he=new Map;function ue(t,e){if(!(t instanceof IDBDatabase)||e in t||"string"!=typeof e)return;if(he.get(e))return he.get(e);const i=e.replace(/FromIndex$/,""),o=e!==i,n=de.includes(i);if(!(i in(o?IDBIndex:IDBObjectStore).prototype)||!n&&!ce.includes(i))return;const s=async function(t,...e){const s=this.transaction(t,n?"readwrite":"readonly");let r=s.store;return o&&(r=r.index(e.shift())),(await Promise.all([r[i](...e),n&&s.done]))[0]};return he.set(e,s),s}ne=(t=>({...t,get:(e,i,o)=>ue(e,i)||t.get(e,i,o),has:(e,i)=>!!ue(e,i)||t.has(e,i)}))(ne);
215
+ */var Gt;!function(t){t[t.DEBUG=0]="DEBUG",t[t.VERBOSE=1]="VERBOSE",t[t.INFO=2]="INFO",t[t.WARN=3]="WARN",t[t.ERROR=4]="ERROR",t[t.SILENT=5]="SILENT"}(Gt||(Gt={}));const Zt={debug:Gt.DEBUG,verbose:Gt.VERBOSE,info:Gt.INFO,warn:Gt.WARN,error:Gt.ERROR,silent:Gt.SILENT},Wt=Gt.INFO,Kt={[Gt.DEBUG]:"log",[Gt.VERBOSE]:"log",[Gt.INFO]:"info",[Gt.WARN]:"warn",[Gt.ERROR]:"error"},Yt=(t,e,...i)=>{if(e<t.logLevel)return;const o=(new Date).toISOString(),n=Kt[e];if(!n)throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`);console[n](`[${o}] ${t.name}:`,...i)};class Jt{constructor(t){this.name=t,this._logLevel=Wt,this._logHandler=Yt,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(t){if(!(t in Gt))throw new TypeError(`Invalid value "${t}" assigned to \`logLevel\``);this._logLevel=t}setLogLevel(t){this._logLevel="string"==typeof t?Zt[t]:t}get logHandler(){return this._logHandler}set logHandler(t){if("function"!=typeof t)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=t}get userLogHandler(){return this._userLogHandler}set userLogHandler(t){this._userLogHandler=t}debug(...t){this._userLogHandler&&this._userLogHandler(this,Gt.DEBUG,...t),this._logHandler(this,Gt.DEBUG,...t)}log(...t){this._userLogHandler&&this._userLogHandler(this,Gt.VERBOSE,...t),this._logHandler(this,Gt.VERBOSE,...t)}info(...t){this._userLogHandler&&this._userLogHandler(this,Gt.INFO,...t),this._logHandler(this,Gt.INFO,...t)}warn(...t){this._userLogHandler&&this._userLogHandler(this,Gt.WARN,...t),this._logHandler(this,Gt.WARN,...t)}error(...t){this._userLogHandler&&this._userLogHandler(this,Gt.ERROR,...t),this._logHandler(this,Gt.ERROR,...t)}}let qt,Qt;const Xt=new WeakMap,te=new WeakMap,ee=new WeakMap,ie=new WeakMap,oe=new WeakMap;let ne={get(t,e,i){if(t instanceof IDBTransaction){if("done"===e)return te.get(t);if("objectStoreNames"===e)return t.objectStoreNames||ee.get(t);if("store"===e)return i.objectStoreNames[1]?void 0:i.objectStore(i.objectStoreNames[0])}return ae(t[e])},set:(t,e,i)=>(t[e]=i,!0),has:(t,e)=>t instanceof IDBTransaction&&("done"===e||"store"===e)||e in t};function se(t){return t!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Qt||(Qt=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(le(this),e),ae(Xt.get(this))}:function(...e){return ae(t.apply(le(this),e))}:function(e,...i){const o=t.call(le(this),e,...i);return ee.set(o,e.sort?e.sort():[e]),ae(o)}}function re(t){return"function"==typeof t?se(t):(t instanceof IDBTransaction&&function(t){if(te.has(t))return;const e=new Promise(((e,i)=>{const o=()=>{t.removeEventListener("complete",n),t.removeEventListener("error",s),t.removeEventListener("abort",s)},n=()=>{e(),o()},s=()=>{i(t.error||new DOMException("AbortError","AbortError")),o()};t.addEventListener("complete",n),t.addEventListener("error",s),t.addEventListener("abort",s)}));te.set(t,e)}(t),e=t,(qt||(qt=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some((t=>e instanceof t))?new Proxy(t,ne):t);var e}function ae(t){if(t instanceof IDBRequest)return function(t){const e=new Promise(((e,i)=>{const o=()=>{t.removeEventListener("success",n),t.removeEventListener("error",s)},n=()=>{e(ae(t.result)),o()},s=()=>{i(t.error),o()};t.addEventListener("success",n),t.addEventListener("error",s)}));return e.then((e=>{e instanceof IDBCursor&&Xt.set(e,t)})).catch((()=>{})),oe.set(e,t),e}(t);if(ie.has(t))return ie.get(t);const e=re(t);return e!==t&&(ie.set(t,e),oe.set(e,t)),e}const le=t=>oe.get(t);const ce=["get","getKey","getAll","getAllKeys","count"],de=["put","add","delete","clear"],he=new Map;function ue(t,e){if(!(t instanceof IDBDatabase)||e in t||"string"!=typeof e)return;if(he.get(e))return he.get(e);const i=e.replace(/FromIndex$/,""),o=e!==i,n=de.includes(i);if(!(i in(o?IDBIndex:IDBObjectStore).prototype)||!n&&!ce.includes(i))return;const s=async function(t,...e){const s=this.transaction(t,n?"readwrite":"readonly");let r=s.store;return o&&(r=r.index(e.shift())),(await Promise.all([r[i](...e),n&&s.done]))[0]};return he.set(e,s),s}ne=(t=>({...t,get:(e,i,o)=>ue(e,i)||t.get(e,i,o),has:(e,i)=>!!ue(e,i)||t.has(e,i)}))(ne);
216
216
  /**
217
217
  * @license
218
218
  * Copyright 2019 Google LLC
@@ -409,7 +409,7 @@ class Pe{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=nul
409
409
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
410
410
  * See the License for the specific language governing permissions and
411
411
  * limitations under the License.
412
- */class Re{constructor(t,e,i,o,n="us-central1",s){this.app=t,this.fetchImpl=s,this.emulatorOrigin=null,this.contextProvider=new Pe(e,i,o),this.cancelAllRequests=new Promise((t=>{this.deleteService=()=>Promise.resolve(t())}));try{const t=new URL(n);this.customDomain=t.origin,this.region="us-central1"}catch(t){this.customDomain=null,this.region=n}}_delete(){return this.deleteService()}_url(t){const e=this.app.options.projectId;if(null!==this.emulatorOrigin){return`${this.emulatorOrigin}/${e}/${this.region}/${t}`}return null!==this.customDomain?`${this.customDomain}/${t}`:`https://${this.region}-${e}.cloudfunctions.net/${t}`}}function Ve(t,e,i){return o=>async function(t,e,i,o){const n={data:i=je(i)},s={},r=await t.contextProvider.getContext();r.authToken&&(s.Authorization="Bearer "+r.authToken);r.messagingToken&&(s["Firebase-Instance-ID-Token"]=r.messagingToken);null!==r.appCheckToken&&(s["X-Firebase-AppCheck"]=r.appCheckToken);const a=function(t){let e=null;return{promise:new Promise(((i,o)=>{e=setTimeout((()=>{o(new ze("deadline-exceeded","deadline-exceeded"))}),t)})),cancel:()=>{e&&clearTimeout(e)}}}(o.timeout||7e4),l=await Promise.race([Be(e,n,s,t.fetchImpl),a.promise,t.cancelAllRequests]);if(a.cancel(),!l)throw new ze("cancelled","Firebase Functions instance was deleted.");const c=function(t,e){let i,o=function(t){if(t>=200&&t<300)return"ok";switch(t){case 0:case 500:return"internal";case 400:return"invalid-argument";case 401:return"unauthenticated";case 403:return"permission-denied";case 404:return"not-found";case 409:return"aborted";case 429:return"resource-exhausted";case 499:return"cancelled";case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline-exceeded"}return"unknown"}(t),n=o;try{const t=e&&e.error;if(t){const e=t.status;if("string"==typeof e){if(!Ue[e])return new ze("internal","internal");o=Ue[e],n=e}const s=t.message;"string"==typeof s&&(n=s),i=t.details,void 0!==i&&(i=$e(i))}}catch(t){}return"ok"===o?null:new ze(o,n,i)}(l.status,l.json);if(c)throw c;if(!l.json)throw new ze("internal","Response is not valid JSON object.");let d=l.json.data;void 0===d&&(d=l.json.result);if(void 0===d)throw new ze("internal","Response is missing data field.");return{data:$e(d)}}(t,e,o,i||{})}async function Be(t,e,i,o){let n;i["Content-Type"]="application/json";try{n=await o(t,{method:"POST",body:JSON.stringify(e),headers:i})}catch(t){return{status:0,json:null}}let s=null;try{s=await n.json()}catch(t){}return{status:n.status,json:s}}const He="@firebase/functions";function Ge(t,e,i){return Ve(Rt(t),e,i)}function Ze(t,e){var i={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(i[o]=t[o]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(t);n<o.length;n++)e.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(t,o[n])&&(i[o[n]]=t[o[n]])}return i}function Ke(){return{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}}!function(t,e){be(new Vt("functions",((e,{instanceIdentifier:i})=>{const o=e.getProvider("app").getImmediate(),n=e.getProvider("auth-internal"),s=e.getProvider("messaging-internal"),r=e.getProvider("app-check-internal");return new Re(o,n,s,r,i,t)}),"PUBLIC").setMultipleInstances(!0)),ke(He,"0.9.0",e),ke(He,"0.9.0","esm2017")}
412
+ */class Re{constructor(t,e,i,o,n="us-central1",s){this.app=t,this.fetchImpl=s,this.emulatorOrigin=null,this.contextProvider=new Pe(e,i,o),this.cancelAllRequests=new Promise((t=>{this.deleteService=()=>Promise.resolve(t())}));try{const t=new URL(n);this.customDomain=t.origin,this.region="us-central1"}catch(t){this.customDomain=null,this.region=n}}_delete(){return this.deleteService()}_url(t){const e=this.app.options.projectId;if(null!==this.emulatorOrigin){return`${this.emulatorOrigin}/${e}/${this.region}/${t}`}return null!==this.customDomain?`${this.customDomain}/${t}`:`https://${this.region}-${e}.cloudfunctions.net/${t}`}}function Ve(t,e,i){return o=>async function(t,e,i,o){const n={data:i=je(i)},s={},r=await t.contextProvider.getContext();r.authToken&&(s.Authorization="Bearer "+r.authToken);r.messagingToken&&(s["Firebase-Instance-ID-Token"]=r.messagingToken);null!==r.appCheckToken&&(s["X-Firebase-AppCheck"]=r.appCheckToken);const a=function(t){let e=null;return{promise:new Promise(((i,o)=>{e=setTimeout((()=>{o(new ze("deadline-exceeded","deadline-exceeded"))}),t)})),cancel:()=>{e&&clearTimeout(e)}}}(o.timeout||7e4),l=await Promise.race([Be(e,n,s,t.fetchImpl),a.promise,t.cancelAllRequests]);if(a.cancel(),!l)throw new ze("cancelled","Firebase Functions instance was deleted.");const c=function(t,e){let i,o=function(t){if(t>=200&&t<300)return"ok";switch(t){case 0:case 500:return"internal";case 400:return"invalid-argument";case 401:return"unauthenticated";case 403:return"permission-denied";case 404:return"not-found";case 409:return"aborted";case 429:return"resource-exhausted";case 499:return"cancelled";case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline-exceeded"}return"unknown"}(t),n=o;try{const t=e&&e.error;if(t){const e=t.status;if("string"==typeof e){if(!Ue[e])return new ze("internal","internal");o=Ue[e],n=e}const s=t.message;"string"==typeof s&&(n=s),i=t.details,void 0!==i&&(i=$e(i))}}catch(t){}return"ok"===o?null:new ze(o,n,i)}(l.status,l.json);if(c)throw c;if(!l.json)throw new ze("internal","Response is not valid JSON object.");let d=l.json.data;void 0===d&&(d=l.json.result);if(void 0===d)throw new ze("internal","Response is missing data field.");return{data:$e(d)}}(t,e,o,i||{})}async function Be(t,e,i,o){let n;i["Content-Type"]="application/json";try{n=await o(t,{method:"POST",body:JSON.stringify(e),headers:i})}catch(t){return{status:0,json:null}}let s=null;try{s=await n.json()}catch(t){}return{status:n.status,json:s}}const He="@firebase/functions";function Ge(t,e,i){return Ve(Rt(t),e,i)}function Ze(t,e){var i={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(i[o]=t[o]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(t);n<o.length;n++)e.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(t,o[n])&&(i[o[n]]=t[o[n]])}return i}function We(){return{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}}!function(t,e){be(new Vt("functions",((e,{instanceIdentifier:i})=>{const o=e.getProvider("app").getImmediate(),n=e.getProvider("auth-internal"),s=e.getProvider("messaging-internal"),r=e.getProvider("app-check-internal");return new Re(o,n,s,r,i,t)}),"PUBLIC").setMultipleInstances(!0)),ke(He,"0.9.0",e),ke(He,"0.9.0","esm2017")}
413
413
  /**
414
414
  * @license
415
415
  * Copyright 2020 Google LLC
@@ -425,7 +425,7 @@ class Pe{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=nul
425
425
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
426
426
  * See the License for the specific language governing permissions and
427
427
  * limitations under the License.
428
- */(fetch.bind(self));const Ye=Ke,We=new Ft("auth","Firebase",{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}),Je=new Jt("@firebase/auth");function qe(t,...e){Je.logLevel<=Gt.ERROR&&Je.error(`Auth (9.15.0): ${t}`,...e)}
428
+ */(fetch.bind(self));const Ke=We,Ye=new Ft("auth","Firebase",{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}),Je=new Jt("@firebase/auth");function qe(t,...e){Je.logLevel<=Gt.ERROR&&Je.error(`Auth (9.15.0): ${t}`,...e)}
429
429
  /**
430
430
  * @license
431
431
  * Copyright 2020 Google LLC
@@ -441,7 +441,7 @@ class Pe{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=nul
441
441
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
442
442
  * See the License for the specific language governing permissions and
443
443
  * limitations under the License.
444
- */function Qe(t,...e){throw ti(t,...e)}function Xe(t,...e){return ti(t,...e)}function ti(t,...e){if("string"!=typeof t){const i=e[0],o=[...e.slice(1)];return o[0]&&(o[0].appName=t.name),t._errorFactory.create(i,...o)}return We.create(t,...e)}function ei(t,e,...i){if(!t)throw ti(e,...i)}function ii(t){const e="INTERNAL ASSERTION FAILED: "+t;throw qe(e),new Error(e)}function oi(t,e){t||ii(e)}
444
+ */function Qe(t,...e){throw ti(t,...e)}function Xe(t,...e){return ti(t,...e)}function ti(t,...e){if("string"!=typeof t){const i=e[0],o=[...e.slice(1)];return o[0]&&(o[0].appName=t.name),t._errorFactory.create(i,...o)}return Ye.create(t,...e)}function ei(t,e,...i){if(!t)throw ti(e,...i)}function ii(t){const e="INTERNAL ASSERTION FAILED: "+t;throw qe(e),new Error(e)}function oi(t,e){t||ii(e)}
445
445
  /**
446
446
  * @license
447
447
  * Copyright 2020 Google LLC
@@ -555,7 +555,7 @@ class ci{static initialize(t,e,i){this.fetchImpl=t,e&&(this.headersImpl=e),i&&(t
555
555
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
556
556
  * See the License for the specific language governing permissions and
557
557
  * limitations under the License.
558
- */async function ui(t,e,i,o,n={}){return pi(t,n,(async()=>{let n={},s={};o&&("GET"===e?s=o:n={body:JSON.stringify(o)});const r=Ut(Object.assign({key:t.config.apiKey},s)).slice(1),a=await t._getAdditionalHeaders();return a["Content-Type"]="application/json",t.languageCode&&(a["X-Firebase-Locale"]=t.languageCode),ci.fetch()(vi(t,t.config.apiHost,i,r),Object.assign({method:e,headers:a,referrerPolicy:"no-referrer"},n))}))}async function pi(t,e,i){t._canInitEmulator=!1;const o=Object.assign(Object.assign({},di),e);try{const e=new mi(t),n=await Promise.race([i(),e.promise]);e.clearNetworkTimeout();const s=await n.json();if("needConfirmation"in s)throw gi(t,"account-exists-with-different-credential",s);if(n.ok&&!("errorMessage"in s))return s;{const e=n.ok?s.errorMessage:s.error.message,[i,r]=e.split(" : ");if("FEDERATED_USER_ID_ALREADY_LINKED"===i)throw gi(t,"credential-already-in-use",s);if("EMAIL_EXISTS"===i)throw gi(t,"email-already-in-use",s);if("USER_DISABLED"===i)throw gi(t,"user-disabled",s);const a=o[i]||i.toLowerCase().replace(/[_\s]+/g,"-");if(r)throw function(t,e,i){const o=Object.assign(Object.assign({},Ye()),{[e]:i});return new Ft("auth","Firebase",o).create(e,{appName:t.name})}(t,a,r);Qe(t,a)}}catch(e){if(e instanceof Ot)throw e;Qe(t,"network-request-failed")}}function vi(t,e,i,o){const n=`${e}${i}?${o}`;return t.config.emulator?function(t,e){oi(t.emulator,"Emulator should always be set here");const{url:i}=t.emulator;return e?`${i}${e.startsWith("/")?e.slice(1):e}`:i}(t.config,n):`${t.config.apiScheme}://${n}`}class mi{constructor(t){this.auth=t,this.timer=null,this.promise=new Promise(((t,e)=>{this.timer=setTimeout((()=>e(Xe(this.auth,"network-request-failed"))),hi.get())}))}clearNetworkTimeout(){clearTimeout(this.timer)}}function gi(t,e,i){const o={appName:t.name};i.email&&(o.email=i.email),i.phoneNumber&&(o.phoneNumber=i.phoneNumber);const n=Xe(t,e,o);return n.customData._tokenResponse=i,n}
558
+ */async function ui(t,e,i,o,n={}){return pi(t,n,(async()=>{let n={},s={};o&&("GET"===e?s=o:n={body:JSON.stringify(o)});const r=Ut(Object.assign({key:t.config.apiKey},s)).slice(1),a=await t._getAdditionalHeaders();return a["Content-Type"]="application/json",t.languageCode&&(a["X-Firebase-Locale"]=t.languageCode),ci.fetch()(vi(t,t.config.apiHost,i,r),Object.assign({method:e,headers:a,referrerPolicy:"no-referrer"},n))}))}async function pi(t,e,i){t._canInitEmulator=!1;const o=Object.assign(Object.assign({},di),e);try{const e=new mi(t),n=await Promise.race([i(),e.promise]);e.clearNetworkTimeout();const s=await n.json();if("needConfirmation"in s)throw gi(t,"account-exists-with-different-credential",s);if(n.ok&&!("errorMessage"in s))return s;{const e=n.ok?s.errorMessage:s.error.message,[i,r]=e.split(" : ");if("FEDERATED_USER_ID_ALREADY_LINKED"===i)throw gi(t,"credential-already-in-use",s);if("EMAIL_EXISTS"===i)throw gi(t,"email-already-in-use",s);if("USER_DISABLED"===i)throw gi(t,"user-disabled",s);const a=o[i]||i.toLowerCase().replace(/[_\s]+/g,"-");if(r)throw function(t,e,i){const o=Object.assign(Object.assign({},Ke()),{[e]:i});return new Ft("auth","Firebase",o).create(e,{appName:t.name})}(t,a,r);Qe(t,a)}}catch(e){if(e instanceof Ot)throw e;Qe(t,"network-request-failed")}}function vi(t,e,i,o){const n=`${e}${i}?${o}`;return t.config.emulator?function(t,e){oi(t.emulator,"Emulator should always be set here");const{url:i}=t.emulator;return e?`${i}${e.startsWith("/")?e.slice(1):e}`:i}(t.config,n):`${t.config.apiScheme}://${n}`}class mi{constructor(t){this.auth=t,this.timer=null,this.promise=new Promise(((t,e)=>{this.timer=setTimeout((()=>e(Xe(this.auth,"network-request-failed"))),hi.get())}))}clearNetworkTimeout(){clearTimeout(this.timer)}}function gi(t,e,i){const o={appName:t.name};i.email&&(o.email=i.email),i.phoneNumber&&(o.phoneNumber=i.phoneNumber);const n=Xe(t,e,o);return n.customData._tokenResponse=i,n}
559
559
  /**
560
560
  * @license
561
561
  * Copyright 2020 Google LLC
@@ -799,7 +799,7 @@ async function(t,e){const i=await pi(t,{},(async()=>{const i=Ut({grant_type:"ref
799
799
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
800
800
  * See the License for the specific language governing permissions and
801
801
  * limitations under the License.
802
- */class Fi{constructor(t,e,i){this.app=t,this.heartbeatServiceProvider=e,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new Di(this),this.idTokenSubscription=new Di(this),this.beforeStateQueue=new Oi(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=We,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=t.name,this.clientVersion=i.sdkClientVersion}_initializeWithPersistence(t,e){return e&&(this._popupRedirectResolver=si(e)),this._initializationPromise=this.queue((async()=>{var i,o;if(!this._deleted&&(this.persistenceManager=await Ii.create(this,t),!this._deleted)){if(null===(i=this._popupRedirectResolver)||void 0===i?void 0:i._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch(t){}await this.initializeCurrentUser(e),this.lastNotifiedUid=(null===(o=this.currentUser)||void 0===o?void 0:o.uid)||null,this._deleted||(this._isInitialized=!0)}})),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const t=await this.assertedPersistence.getCurrentUser();return this.currentUser||t?this.currentUser&&t&&this.currentUser.uid===t.uid?(this._currentUser._assign(t),void await this.currentUser.getIdToken()):void await this._updateCurrentUser(t,!0):void 0}async initializeCurrentUser(t){var e;const i=await this.assertedPersistence.getCurrentUser();let o=i,n=!1;if(t&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const i=null===(e=this.redirectUser)||void 0===e?void 0:e._redirectEventId,s=null==o?void 0:o._redirectEventId,r=await this.tryRedirectSignIn(t);i&&i!==s||!(null==r?void 0:r.user)||(o=r.user,n=!0)}if(!o)return this.directlySetCurrentUser(null);if(!o._redirectEventId){if(n)try{await this.beforeStateQueue.runMiddleware(o)}catch(t){o=i,this._popupRedirectResolver._overrideRedirectResult(this,(()=>Promise.reject(t)))}return o?this.reloadAndSetCurrentUserOrClear(o):this.directlySetCurrentUser(null)}return ei(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===o._redirectEventId?this.directlySetCurrentUser(o):this.reloadAndSetCurrentUserOrClear(o)}async tryRedirectSignIn(t){let e=null;try{e=await this._popupRedirectResolver._completeRedirectFn(this,t,!0)}catch(t){await this._setRedirectUser(null)}return e}async reloadAndSetCurrentUserOrClear(t){try{await Ei(t)}catch(t){if("auth/network-request-failed"!==(null==t?void 0:t.code))return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(t)}useDeviceLanguage(){this.languageCode=function(){if("undefined"==typeof navigator)return null;const t=navigator;return t.languages&&t.languages[0]||t.language||null}()}async _delete(){this._deleted=!0}async updateCurrentUser(t){const e=t?Rt(t):null;return e&&ei(e.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(e&&e._clone(this))}async _updateCurrentUser(t,e=!1){if(!this._deleted)return t&&ei(this.tenantId===t.tenantId,this,"tenant-id-mismatch"),e||await this.beforeStateQueue.runMiddleware(t),this.queue((async()=>{await this.directlySetCurrentUser(t),this.notifyAuthListeners()}))}async signOut(){return await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0)}setPersistence(t){return this.queue((async()=>{await this.assertedPersistence.setPersistence(si(t))}))}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(t){this._errorFactory=new Ft("auth","Firebase",t())}onAuthStateChanged(t,e,i){return this.registerStateListener(this.authStateSubscription,t,e,i)}beforeAuthStateChanged(t,e){return this.beforeStateQueue.pushCallback(t,e)}onIdTokenChanged(t,e,i){return this.registerStateListener(this.idTokenSubscription,t,e,i)}toJSON(){var t;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:null===(t=this._currentUser)||void 0===t?void 0:t.toJSON()}}async _setRedirectUser(t,e){const i=await this.getOrInitRedirectPersistenceManager(e);return null===t?i.removeCurrentUser():i.setCurrentUser(t)}async getOrInitRedirectPersistenceManager(t){if(!this.redirectPersistenceManager){const e=t&&si(t)||this._popupRedirectResolver;ei(e,this,"argument-error"),this.redirectPersistenceManager=await Ii.create(this,[si(e._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(t){var e,i;return this._isInitialized&&await this.queue((async()=>{})),(null===(e=this._currentUser)||void 0===e?void 0:e._redirectEventId)===t?this._currentUser:(null===(i=this.redirectUser)||void 0===i?void 0:i._redirectEventId)===t?this.redirectUser:null}async _persistUserIfCurrent(t){if(t===this.currentUser)return this.queue((async()=>this.directlySetCurrentUser(t)))}_notifyListenersIfCurrent(t){t===this.currentUser&&this.notifyAuthListeners()}_key(){return`${this.config.authDomain}:${this.config.apiKey}:${this.name}`}_startProactiveRefresh(){this.isProactiveRefreshEnabled=!0,this.currentUser&&this._currentUser._startProactiveRefresh()}_stopProactiveRefresh(){this.isProactiveRefreshEnabled=!1,this.currentUser&&this._currentUser._stopProactiveRefresh()}get _currentUser(){return this.currentUser}notifyAuthListeners(){var t,e;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);const i=null!==(e=null===(t=this.currentUser)||void 0===t?void 0:t.uid)&&void 0!==e?e:null;this.lastNotifiedUid!==i&&(this.lastNotifiedUid=i,this.authStateSubscription.next(this.currentUser))}registerStateListener(t,e,i,o){if(this._deleted)return()=>{};const n="function"==typeof e?e:e.next.bind(e),s=this._isInitialized?Promise.resolve():this._initializationPromise;return ei(s,this,"internal-error"),s.then((()=>n(this.currentUser))),"function"==typeof e?t.addObserver(e,i,o):t.addObserver(e)}async directlySetCurrentUser(t){this.currentUser&&this.currentUser!==t&&this._currentUser._stopProactiveRefresh(),t&&this.isProactiveRefreshEnabled&&t._startProactiveRefresh(),this.currentUser=t,t?await this.assertedPersistence.setCurrentUser(t):await this.assertedPersistence.removeCurrentUser()}queue(t){return this.operations=this.operations.then(t,t),this.operations}get assertedPersistence(){return ei(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(t){t&&!this.frameworks.includes(t)&&(this.frameworks.push(t),this.frameworks.sort(),this.clientVersion=Ai(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){var t;const e={"X-Client-Version":this.clientVersion};this.app.options.appId&&(e["X-Firebase-gmpid"]=this.app.options.appId);const i=await(null===(t=this.heartbeatServiceProvider.getImmediate({optional:!0}))||void 0===t?void 0:t.getHeartbeatsHeader());return i&&(e["X-Firebase-Client"]=i),e}}class Di{constructor(t){this.auth=t,this.observer=null,this.addObserver=function(t,e){const i=new zt(t,e);return i.subscribe.bind(i)}((t=>this.observer=t))}get next(){return ei(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}new li(3e4,6e4),
802
+ */class Fi{constructor(t,e,i){this.app=t,this.heartbeatServiceProvider=e,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new Di(this),this.idTokenSubscription=new Di(this),this.beforeStateQueue=new Oi(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=Ye,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=t.name,this.clientVersion=i.sdkClientVersion}_initializeWithPersistence(t,e){return e&&(this._popupRedirectResolver=si(e)),this._initializationPromise=this.queue((async()=>{var i,o;if(!this._deleted&&(this.persistenceManager=await Ii.create(this,t),!this._deleted)){if(null===(i=this._popupRedirectResolver)||void 0===i?void 0:i._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch(t){}await this.initializeCurrentUser(e),this.lastNotifiedUid=(null===(o=this.currentUser)||void 0===o?void 0:o.uid)||null,this._deleted||(this._isInitialized=!0)}})),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const t=await this.assertedPersistence.getCurrentUser();return this.currentUser||t?this.currentUser&&t&&this.currentUser.uid===t.uid?(this._currentUser._assign(t),void await this.currentUser.getIdToken()):void await this._updateCurrentUser(t,!0):void 0}async initializeCurrentUser(t){var e;const i=await this.assertedPersistence.getCurrentUser();let o=i,n=!1;if(t&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const i=null===(e=this.redirectUser)||void 0===e?void 0:e._redirectEventId,s=null==o?void 0:o._redirectEventId,r=await this.tryRedirectSignIn(t);i&&i!==s||!(null==r?void 0:r.user)||(o=r.user,n=!0)}if(!o)return this.directlySetCurrentUser(null);if(!o._redirectEventId){if(n)try{await this.beforeStateQueue.runMiddleware(o)}catch(t){o=i,this._popupRedirectResolver._overrideRedirectResult(this,(()=>Promise.reject(t)))}return o?this.reloadAndSetCurrentUserOrClear(o):this.directlySetCurrentUser(null)}return ei(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===o._redirectEventId?this.directlySetCurrentUser(o):this.reloadAndSetCurrentUserOrClear(o)}async tryRedirectSignIn(t){let e=null;try{e=await this._popupRedirectResolver._completeRedirectFn(this,t,!0)}catch(t){await this._setRedirectUser(null)}return e}async reloadAndSetCurrentUserOrClear(t){try{await Ei(t)}catch(t){if("auth/network-request-failed"!==(null==t?void 0:t.code))return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(t)}useDeviceLanguage(){this.languageCode=function(){if("undefined"==typeof navigator)return null;const t=navigator;return t.languages&&t.languages[0]||t.language||null}()}async _delete(){this._deleted=!0}async updateCurrentUser(t){const e=t?Rt(t):null;return e&&ei(e.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(e&&e._clone(this))}async _updateCurrentUser(t,e=!1){if(!this._deleted)return t&&ei(this.tenantId===t.tenantId,this,"tenant-id-mismatch"),e||await this.beforeStateQueue.runMiddleware(t),this.queue((async()=>{await this.directlySetCurrentUser(t),this.notifyAuthListeners()}))}async signOut(){return await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0)}setPersistence(t){return this.queue((async()=>{await this.assertedPersistence.setPersistence(si(t))}))}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(t){this._errorFactory=new Ft("auth","Firebase",t())}onAuthStateChanged(t,e,i){return this.registerStateListener(this.authStateSubscription,t,e,i)}beforeAuthStateChanged(t,e){return this.beforeStateQueue.pushCallback(t,e)}onIdTokenChanged(t,e,i){return this.registerStateListener(this.idTokenSubscription,t,e,i)}toJSON(){var t;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:null===(t=this._currentUser)||void 0===t?void 0:t.toJSON()}}async _setRedirectUser(t,e){const i=await this.getOrInitRedirectPersistenceManager(e);return null===t?i.removeCurrentUser():i.setCurrentUser(t)}async getOrInitRedirectPersistenceManager(t){if(!this.redirectPersistenceManager){const e=t&&si(t)||this._popupRedirectResolver;ei(e,this,"argument-error"),this.redirectPersistenceManager=await Ii.create(this,[si(e._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(t){var e,i;return this._isInitialized&&await this.queue((async()=>{})),(null===(e=this._currentUser)||void 0===e?void 0:e._redirectEventId)===t?this._currentUser:(null===(i=this.redirectUser)||void 0===i?void 0:i._redirectEventId)===t?this.redirectUser:null}async _persistUserIfCurrent(t){if(t===this.currentUser)return this.queue((async()=>this.directlySetCurrentUser(t)))}_notifyListenersIfCurrent(t){t===this.currentUser&&this.notifyAuthListeners()}_key(){return`${this.config.authDomain}:${this.config.apiKey}:${this.name}`}_startProactiveRefresh(){this.isProactiveRefreshEnabled=!0,this.currentUser&&this._currentUser._startProactiveRefresh()}_stopProactiveRefresh(){this.isProactiveRefreshEnabled=!1,this.currentUser&&this._currentUser._stopProactiveRefresh()}get _currentUser(){return this.currentUser}notifyAuthListeners(){var t,e;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);const i=null!==(e=null===(t=this.currentUser)||void 0===t?void 0:t.uid)&&void 0!==e?e:null;this.lastNotifiedUid!==i&&(this.lastNotifiedUid=i,this.authStateSubscription.next(this.currentUser))}registerStateListener(t,e,i,o){if(this._deleted)return()=>{};const n="function"==typeof e?e:e.next.bind(e),s=this._isInitialized?Promise.resolve():this._initializationPromise;return ei(s,this,"internal-error"),s.then((()=>n(this.currentUser))),"function"==typeof e?t.addObserver(e,i,o):t.addObserver(e)}async directlySetCurrentUser(t){this.currentUser&&this.currentUser!==t&&this._currentUser._stopProactiveRefresh(),t&&this.isProactiveRefreshEnabled&&t._startProactiveRefresh(),this.currentUser=t,t?await this.assertedPersistence.setCurrentUser(t):await this.assertedPersistence.removeCurrentUser()}queue(t){return this.operations=this.operations.then(t,t),this.operations}get assertedPersistence(){return ei(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(t){t&&!this.frameworks.includes(t)&&(this.frameworks.push(t),this.frameworks.sort(),this.clientVersion=Ai(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){var t;const e={"X-Client-Version":this.clientVersion};this.app.options.appId&&(e["X-Firebase-gmpid"]=this.app.options.appId);const i=await(null===(t=this.heartbeatServiceProvider.getImmediate({optional:!0}))||void 0===t?void 0:t.getHeartbeatsHeader());return i&&(e["X-Firebase-Client"]=i),e}}class Di{constructor(t){this.auth=t,this.observer=null,this.addObserver=function(t,e){const i=new zt(t,e);return i.subscribe.bind(i)}((t=>this.observer=t))}get next(){return ei(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}new li(3e4,6e4),
803
803
  /**
804
804
  * @license
805
805
  * Copyright 2020 Google LLC
@@ -899,13 +899,13 @@ class $i{constructor(t){this.auth=t,this.internalListeners=new Map}getUid(){var
899
899
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
900
900
  * See the License for the specific language governing permissions and
901
901
  * limitations under the License.
902
- */(t=>{var e;null===(e=It())||void 0===e||e[`_${t}`]})("authIdTokenMaxAge"),Ui="Browser",be(new Vt("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),o=t.getProvider("heartbeat"),{apiKey:n,authDomain:s}=i.options;return((t,i)=>{ei(n&&!n.includes(":"),"invalid-api-key",{appName:t.name}),ei(!(null==s?void 0:s.includes(":")),"argument-error",{appName:t.name});const o={apiKey:n,authDomain:s,clientPlatform:Ui,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:Ai(Ui)},r=new Fi(t,i,o);return function(t,e){const i=(null==e?void 0:e.persistence)||[],o=(Array.isArray(i)?i:[i]).map(si);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(o,null==e?void 0:e.popupRedirectResolver)}(r,e),r})(i,o)}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),be(new Vt("auth-internal",(t=>(t=>new $i(t))(function(t){return Rt(t)}(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),ke(ji,"0.21.0",function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}(Ui)),ke(ji,"0.21.0","esm2017");class zi{static create(...t){return new this(...t)}mixIn(t){return Object.assign(this,t)}clone(){const t=new this.constructor;return Object.assign(t,this),t}}class Pi extends zi{constructor(t=[],e=4*t.length){super();let i=t;if(i instanceof ArrayBuffer&&(i=new Uint8Array(i)),(i instanceof Int8Array||i instanceof Uint8ClampedArray||i instanceof Int16Array||i instanceof Uint16Array||i instanceof Int32Array||i instanceof Uint32Array||i instanceof Float32Array||i instanceof Float64Array)&&(i=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)),i instanceof Uint8Array){const t=i.byteLength,e=[];for(let o=0;o<t;o+=1)e[o>>>2]|=i[o]<<24-o%4*8;this.words=e,this.sigBytes=t}else this.words=t,this.sigBytes=e}static random(t){const e=[],i=t=>{let e=t,i=987654321;const o=4294967295;return()=>{i=36969*(65535&i)+(i>>16)&o,e=18e3*(65535&e)+(e>>16)&o;let t=(i<<16)+e&o;return t/=4294967296,t+=.5,t*(Math.random()>.5?1:-1)}};for(let o,n=0;n<t;n+=4){const t=i(4294967296*(o||Math.random()));o=987654071*t(),e.push(4294967296*t()|0)}return new Pi(e,t)}toString(t=Ri){return t.stringify(this)}concat(t){const e=this.words,i=t.words,o=this.sigBytes,n=t.sigBytes;if(this.clamp(),o%4)for(let t=0;t<n;t+=1){const n=i[t>>>2]>>>24-t%4*8&255;e[o+t>>>2]|=n<<24-(o+t)%4*8}else for(let t=0;t<n;t+=4)e[o+t>>>2]=i[t>>>2];return this.sigBytes+=n,this}clamp(){const{words:t,sigBytes:e}=this;t[e>>>2]&=4294967295<<32-e%4*8,t.length=Math.ceil(e/4)}clone(){const t=super.clone.call(this);return t.words=this.words.slice(0),t}}const Ri={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;o.push((i>>>4).toString(16)),o.push((15&i).toString(16))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=2)i[o>>>3]|=parseInt(t.substr(o,2),16)<<24-o%8*4;return new Pi(i,e/2)}},Vi={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;o.push(String.fromCharCode(i))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=1)i[o>>>2]|=(255&t.charCodeAt(o))<<24-o%4*8;return new Pi(i,e)}},Bi={stringify(t){try{return decodeURIComponent(escape(Vi.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>Vi.parse(unescape(encodeURIComponent(t)))};class Hi extends zi{constructor(){super(),this._minBufferSize=0}reset(){this._data=new Pi,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=Bi.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes}_process(t){let e;const{_data:i,blockSize:o}=this,n=i.words,s=i.sigBytes;let r=s/(4*o);r=t?Math.ceil(r):Math.max((0|r)-this._minBufferSize,0);const a=r*o,l=Math.min(4*a,s);if(a){for(let t=0;t<a;t+=o)this._doProcessBlock(n,t);e=n.splice(0,a),i.sigBytes-=l}return new Pi(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class Gi extends Hi{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new zi,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new Zi(t,i).finalize(e)}reset(){super.reset.call(this),this._doReset()}update(t){return this._append(t),this._process(),this}finalize(t){t&&this._append(t);return this._doFinalize()}}class Zi extends zi{constructor(t,e){super();const i=new t;this._hasher=i;let o=e;"string"==typeof o&&(o=Bi.parse(o));const n=i.blockSize,s=4*n;o.sigBytes>s&&(o=i.finalize(e)),o.clamp();const r=o.clone();this._oKey=r;const a=o.clone();this._iKey=a;const l=r.words,c=a.words;for(let t=0;t<n;t+=1)l[t]^=1549556828,c[t]^=909522486;r.sigBytes=s,a.sigBytes=s,this.reset()}reset(){const t=this._hasher;t.reset(),t.update(this._iKey)}update(t){return this._hasher.update(t),this}finalize(t){const e=this._hasher,i=e.finalize(t);e.reset();return e.finalize(this._oKey.clone().concat(i))}}const Ki=Pi;class Yi extends zi{constructor(t,e){super(),this.high=t,this.low=e}}class Wi extends zi{constructor(t=[],e=8*t.length){super(),this.words=t,this.sigBytes=e}toX32(){const t=this.words,e=t.length,i=[];for(let o=0;o<e;o+=1){const e=t[o];i.push(e.high),i.push(e.low)}return Ki.create(i,this.sigBytes)}clone(){const t=super.clone.call(this);t.words=this.words.slice(0);const{words:e}=t,i=e.length;for(let t=0;t<i;t+=1)e[t]=e[t].clone();return t}}const Ji={stringify(t){const{words:e,sigBytes:i}=t,o=this._map;t.clamp();const n=[];for(let t=0;t<i;t+=3){const s=(e[t>>>2]>>>24-t%4*8&255)<<16|(e[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|e[t+2>>>2]>>>24-(t+2)%4*8&255;for(let e=0;e<4&&t+.75*e<i;e+=1)n.push(o.charAt(s>>>6*(3-e)&63))}const s=o.charAt(64);if(s)for(;n.length%4;)n.push(s);return n.join("")},parse(t){let e=t.length;const i=this._map;let o=this._reverseMap;if(!o){this._reverseMap=[],o=this._reverseMap;for(let t=0;t<i.length;t+=1)o[i.charCodeAt(t)]=t}const n=i.charAt(64);if(n){const i=t.indexOf(n);-1!==i&&(e=i)}return((t,e,i)=>{const o=[];let n=0;for(let s=0;s<e;s+=1)if(s%4){const e=i[t.charCodeAt(s-1)]<<s%4*2|i[t.charCodeAt(s)]>>>6-s%4*2;o[n>>>2]|=e<<24-n%4*8,n+=1}return Pi.create(o,n)})(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},qi=[];for(let t=0;t<64;t+=1)qi[t]=4294967296*Math.abs(Math.sin(t+1))|0;const Qi=(t,e,i,o,n,s,r)=>{const a=t+(e&i|~e&o)+n+r;return(a<<s|a>>>32-s)+e},Xi=(t,e,i,o,n,s,r)=>{const a=t+(e&o|i&~o)+n+r;return(a<<s|a>>>32-s)+e},to=(t,e,i,o,n,s,r)=>{const a=t+(e^i^o)+n+r;return(a<<s|a>>>32-s)+e},eo=(t,e,i,o,n,s,r)=>{const a=t+(i^(e|~o))+n+r;return(a<<s|a>>>32-s)+e};class io extends Gi{_doReset(){this._hash=new Pi([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const i=t;for(let o=0;o<16;o+=1){const n=e+o,s=t[n];i[n]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}const o=this._hash.words,n=i[e+0],s=i[e+1],r=i[e+2],a=i[e+3],l=i[e+4],c=i[e+5],d=i[e+6],h=i[e+7],u=i[e+8],p=i[e+9],v=i[e+10],m=i[e+11],g=i[e+12],f=i[e+13],w=i[e+14],y=i[e+15];let b=o[0],C=o[1],x=o[2],E=o[3];b=Qi(b,C,x,E,n,7,qi[0]),E=Qi(E,b,C,x,s,12,qi[1]),x=Qi(x,E,b,C,r,17,qi[2]),C=Qi(C,x,E,b,a,22,qi[3]),b=Qi(b,C,x,E,l,7,qi[4]),E=Qi(E,b,C,x,c,12,qi[5]),x=Qi(x,E,b,C,d,17,qi[6]),C=Qi(C,x,E,b,h,22,qi[7]),b=Qi(b,C,x,E,u,7,qi[8]),E=Qi(E,b,C,x,p,12,qi[9]),x=Qi(x,E,b,C,v,17,qi[10]),C=Qi(C,x,E,b,m,22,qi[11]),b=Qi(b,C,x,E,g,7,qi[12]),E=Qi(E,b,C,x,f,12,qi[13]),x=Qi(x,E,b,C,w,17,qi[14]),C=Qi(C,x,E,b,y,22,qi[15]),b=Xi(b,C,x,E,s,5,qi[16]),E=Xi(E,b,C,x,d,9,qi[17]),x=Xi(x,E,b,C,m,14,qi[18]),C=Xi(C,x,E,b,n,20,qi[19]),b=Xi(b,C,x,E,c,5,qi[20]),E=Xi(E,b,C,x,v,9,qi[21]),x=Xi(x,E,b,C,y,14,qi[22]),C=Xi(C,x,E,b,l,20,qi[23]),b=Xi(b,C,x,E,p,5,qi[24]),E=Xi(E,b,C,x,w,9,qi[25]),x=Xi(x,E,b,C,a,14,qi[26]),C=Xi(C,x,E,b,u,20,qi[27]),b=Xi(b,C,x,E,f,5,qi[28]),E=Xi(E,b,C,x,r,9,qi[29]),x=Xi(x,E,b,C,h,14,qi[30]),C=Xi(C,x,E,b,g,20,qi[31]),b=to(b,C,x,E,c,4,qi[32]),E=to(E,b,C,x,u,11,qi[33]),x=to(x,E,b,C,m,16,qi[34]),C=to(C,x,E,b,w,23,qi[35]),b=to(b,C,x,E,s,4,qi[36]),E=to(E,b,C,x,l,11,qi[37]),x=to(x,E,b,C,h,16,qi[38]),C=to(C,x,E,b,v,23,qi[39]),b=to(b,C,x,E,f,4,qi[40]),E=to(E,b,C,x,n,11,qi[41]),x=to(x,E,b,C,a,16,qi[42]),C=to(C,x,E,b,d,23,qi[43]),b=to(b,C,x,E,p,4,qi[44]),E=to(E,b,C,x,g,11,qi[45]),x=to(x,E,b,C,y,16,qi[46]),C=to(C,x,E,b,r,23,qi[47]),b=eo(b,C,x,E,n,6,qi[48]),E=eo(E,b,C,x,h,10,qi[49]),x=eo(x,E,b,C,w,15,qi[50]),C=eo(C,x,E,b,c,21,qi[51]),b=eo(b,C,x,E,g,6,qi[52]),E=eo(E,b,C,x,a,10,qi[53]),x=eo(x,E,b,C,v,15,qi[54]),C=eo(C,x,E,b,s,21,qi[55]),b=eo(b,C,x,E,u,6,qi[56]),E=eo(E,b,C,x,y,10,qi[57]),x=eo(x,E,b,C,d,15,qi[58]),C=eo(C,x,E,b,f,21,qi[59]),b=eo(b,C,x,E,l,6,qi[60]),E=eo(E,b,C,x,m,10,qi[61]),x=eo(x,E,b,C,r,15,qi[62]),C=eo(C,x,E,b,p,21,qi[63]),o[0]=o[0]+b|0,o[1]=o[1]+C|0,o[2]=o[2]+x|0,o[3]=o[3]+E|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;e[o>>>5]|=128<<24-o%32;const n=Math.floor(i/4294967296),s=i;e[15+(o+64>>>9<<4)]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),e[14+(o+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),t.sigBytes=4*(e.length+1),this._process();const r=this._hash,a=r.words;for(let t=0;t<4;t+=1){const e=a[t];a[t]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8)}return r}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const oo=Gi._createHelper(io),no=Gi._createHmacHelper(io);class so extends zi{constructor(t){super(),this.cfg=Object.assign(new zi,{keySize:4,hasher:io,iterations:1},t)}compute(t,e){let i;const{cfg:o}=this,n=o.hasher.create(),s=Pi.create(),r=s.words,{keySize:a,iterations:l}=o;for(;r.length<a;){i&&n.update(i),i=n.update(t).finalize(e),n.reset();for(let t=1;t<l;t+=1)i=n.finalize(i),n.reset();s.concat(i)}return s.sigBytes=4*a,s}}class ro extends Hi{constructor(t,e,i){super(),this.cfg=Object.assign(new zi,i),this._xformMode=t,this._key=e,this.reset()}static createEncryptor(t,e){return this.create(this._ENC_XFORM_MODE,t,e)}static createDecryptor(t,e){return this.create(this._DEC_XFORM_MODE,t,e)}static _createHelper(t){const e=t=>"string"==typeof t?wo:go;return{encrypt:(i,o,n)=>e(o).encrypt(t,i,o,n),decrypt:(i,o,n)=>e(o).decrypt(t,i,o,n)}}reset(){super.reset.call(this),this._doReset()}process(t){return this._append(t),this._process()}finalize(t){t&&this._append(t);return this._doFinalize()}}ro._ENC_XFORM_MODE=1,ro._DEC_XFORM_MODE=2,ro.keySize=4,ro.ivSize=4;class ao extends ro{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class lo extends zi{constructor(t,e){super(),this._cipher=t,this._iv=e}static createEncryptor(t,e){return this.Encryptor.create(t,e)}static createDecryptor(t,e){return this.Decryptor.create(t,e)}}function co(t,e,i){const o=t;let n;const s=this._iv;s?(n=s,this._iv=void 0):n=this._prevBlock;for(let t=0;t<i;t+=1)o[e+t]^=n[t]}class ho extends lo{}ho.Encryptor=class extends ho{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;co.call(this,t,e,o),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}},ho.Decryptor=class extends ho{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);i.decryptBlock(t,e),co.call(this,t,e,o),this._prevBlock=n}};const uo={pad(t,e){const i=4*e,o=i-t.sigBytes%i,n=o<<24|o<<16|o<<8|o,s=[];for(let t=0;t<o;t+=4)s.push(n);const r=Pi.create(s,o);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class po extends ro{constructor(t,e,i){super(t,e,Object.assign({mode:ho,padding:uo},i)),this.blockSize=4}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:i,mode:o}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=o.createEncryptor:(t=o.createDecryptor,this._minBufferSize=1),this._mode=t.call(o,this,i&&i.words),this._mode.i=t}_doProcessBlock(t,e){this._mode.processBlock(t,e)}_doFinalize(){let t;const{padding:e}=this.cfg;return this._xformMode===this.constructor._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t}}class vo extends zi{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const mo={stringify(t){let e;const{ciphertext:i,salt:o}=t;return e=o?Pi.create([1398893684,1701076831]).concat(o).concat(i):i,e.toString(Ji)},parse(t){let e;const i=Ji.parse(t),o=i.words;return 1398893684===o[0]&&1701076831===o[1]&&(e=Pi.create(o.slice(2,4)),o.splice(0,4),i.sigBytes-=16),vo.create({ciphertext:i,salt:e})}};class go extends zi{static encrypt(t,e,i,o){const n=Object.assign(new zi,this.cfg,o),s=t.createEncryptor(i,n),r=s.finalize(e),a=s.cfg;return vo.create({ciphertext:r,key:i,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:s.blockSize,formatter:n.format})}static decrypt(t,e,i,o){let n=e;const s=Object.assign(new zi,this.cfg,o);n=this._parse(n,s.format);return t.createDecryptor(i,s).finalize(n.ciphertext)}static _parse(t,e){return"string"==typeof t?e.parse(t,this):t}}go.cfg=Object.assign(new zi,{format:mo});const fo={execute(t,e,i,o){let n=o;n||(n=Pi.random(8));const s=so.create({keySize:e+i}).compute(t,n),r=Pi.create(s.words.slice(e),4*i);return s.sigBytes=4*e,vo.create({key:s,iv:r,salt:n})}};class wo extends go{static encrypt(t,e,i,o){const n=Object.assign(new zi,this.cfg,o),s=n.kdf.execute(i,t.keySize,t.ivSize);n.iv=s.iv;const r=go.encrypt.call(this,t,e,s.key,n);return r.mixIn(s),r}static decrypt(t,e,i,o){let n=e;const s=Object.assign(new zi,this.cfg,o);n=this._parse(n,s.format);const r=s.kdf.execute(i,t.keySize,t.ivSize,n.salt);s.iv=r.iv;return go.decrypt.call(this,t,n,r.key,s)}}wo.cfg=Object.assign(go.cfg,{kdf:fo});const yo=t=>t<<8&4278255360|t>>>8&16711935,bo={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=e[t>>>2]>>>16-t%4*8&65535;o.push(String.fromCharCode(i))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=1)i[o>>>1]|=t.charCodeAt(o)<<16-o%2*16;return Pi.create(i,2*e)}},Co=bo,xo={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=yo(e[t>>>2]>>>16-t%4*8&65535);o.push(String.fromCharCode(i))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=1)i[o>>>1]|=yo(t.charCodeAt(o)<<16-o%2*16);return Pi.create(i,2*e)}},Eo=[];class ko extends Gi{_doReset(){this._hash=new Pi([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=this._hash.words;let o=i[0],n=i[1],s=i[2],r=i[3],a=i[4];for(let i=0;i<80;i+=1){if(i<16)Eo[i]=0|t[e+i];else{const t=Eo[i-3]^Eo[i-8]^Eo[i-14]^Eo[i-16];Eo[i]=t<<1|t>>>31}let l=(o<<5|o>>>27)+a+Eo[i];l+=i<20?1518500249+(n&s|~n&r):i<40?1859775393+(n^s^r):i<60?(n&s|n&r|s&r)-1894007588:(n^s^r)-899497514,a=r,r=s,s=n<<30|n>>>2,n=o,o=l}i[0]=i[0]+o|0,i[1]=i[1]+n|0,i[2]=i[2]+s|0,i[3]=i[3]+r|0,i[4]=i[4]+a|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;return e[o>>>5]|=128<<24-o%32,e[14+(o+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(o+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const So=Gi._createHelper(ko),Mo=Gi._createHmacHelper(ko),_o=[],No=[],To=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},Io=t=>4294967296*(t-(0|t))|0;let Lo=2,Ao=0;for(;Ao<64;)To(Lo)&&(Ao<8&&(_o[Ao]=Io(Lo**.5)),No[Ao]=Io(Lo**(1/3)),Ao+=1),Lo+=1;const Oo=[];class Fo extends Gi{_doReset(){this._hash=new Pi(_o.slice(0))}_doProcessBlock(t,e){const i=this._hash.words;let o=i[0],n=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],d=i[7];for(let i=0;i<64;i+=1){if(i<16)Oo[i]=0|t[e+i];else{const t=Oo[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,o=Oo[i-2],n=(o<<15|o>>>17)^(o<<13|o>>>19)^o>>>10;Oo[i]=e+Oo[i-7]+n+Oo[i-16]}const h=o&n^o&s^n&s,u=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),p=d+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&l^~a&c)+No[i]+Oo[i];d=c,c=l,l=a,a=r+p|0,r=s,s=n,n=o,o=p+(u+h)|0}i[0]=i[0]+o|0,i[1]=i[1]+n|0,i[2]=i[2]+s|0,i[3]=i[3]+r|0,i[4]=i[4]+a|0,i[5]=i[5]+l|0,i[6]=i[6]+c|0,i[7]=i[7]+d|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;return e[o>>>5]|=128<<24-o%32,e[14+(o+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(o+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Do=Gi._createHelper(Fo),jo=Gi._createHmacHelper(Fo);class $o extends Fo{_doReset(){this._hash=new Pi([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const Uo=Fo._createHelper($o),zo=Fo._createHmacHelper($o),Po=[new Yi(1116352408,3609767458),new Yi(1899447441,602891725),new Yi(3049323471,3964484399),new Yi(3921009573,2173295548),new Yi(961987163,4081628472),new Yi(1508970993,3053834265),new Yi(2453635748,2937671579),new Yi(2870763221,3664609560),new Yi(3624381080,2734883394),new Yi(310598401,1164996542),new Yi(607225278,1323610764),new Yi(1426881987,3590304994),new Yi(1925078388,4068182383),new Yi(2162078206,991336113),new Yi(2614888103,633803317),new Yi(3248222580,3479774868),new Yi(3835390401,2666613458),new Yi(4022224774,944711139),new Yi(264347078,2341262773),new Yi(604807628,2007800933),new Yi(770255983,1495990901),new Yi(1249150122,1856431235),new Yi(1555081692,3175218132),new Yi(1996064986,2198950837),new Yi(2554220882,3999719339),new Yi(2821834349,766784016),new Yi(2952996808,2566594879),new Yi(3210313671,3203337956),new Yi(3336571891,1034457026),new Yi(3584528711,2466948901),new Yi(113926993,3758326383),new Yi(338241895,168717936),new Yi(666307205,1188179964),new Yi(773529912,1546045734),new Yi(1294757372,1522805485),new Yi(1396182291,2643833823),new Yi(1695183700,2343527390),new Yi(1986661051,1014477480),new Yi(2177026350,1206759142),new Yi(2456956037,344077627),new Yi(2730485921,1290863460),new Yi(2820302411,3158454273),new Yi(3259730800,3505952657),new Yi(3345764771,106217008),new Yi(3516065817,3606008344),new Yi(3600352804,1432725776),new Yi(4094571909,1467031594),new Yi(275423344,851169720),new Yi(430227734,3100823752),new Yi(506948616,1363258195),new Yi(659060556,3750685593),new Yi(883997877,3785050280),new Yi(958139571,3318307427),new Yi(1322822218,3812723403),new Yi(1537002063,2003034995),new Yi(1747873779,3602036899),new Yi(1955562222,1575990012),new Yi(2024104815,1125592928),new Yi(2227730452,2716904306),new Yi(2361852424,442776044),new Yi(2428436474,593698344),new Yi(2756734187,3733110249),new Yi(3204031479,2999351573),new Yi(3329325298,3815920427),new Yi(3391569614,3928383900),new Yi(3515267271,566280711),new Yi(3940187606,3454069534),new Yi(4118630271,4000239992),new Yi(116418474,1914138554),new Yi(174292421,2731055270),new Yi(289380356,3203993006),new Yi(460393269,320620315),new Yi(685471733,587496836),new Yi(852142971,1086792851),new Yi(1017036298,365543100),new Yi(1126000580,2618297676),new Yi(1288033470,3409855158),new Yi(1501505948,4234509866),new Yi(1607167915,987167468),new Yi(1816402316,1246189591)],Ro=[];for(let t=0;t<80;t+=1)Ro[t]=new Yi;class Vo extends Gi{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new Wi([new Yi(1779033703,4089235720),new Yi(3144134277,2227873595),new Yi(1013904242,4271175723),new Yi(2773480762,1595750129),new Yi(1359893119,2917565137),new Yi(2600822924,725511199),new Yi(528734635,4215389547),new Yi(1541459225,327033209)])}_doProcessBlock(t,e){const i=this._hash.words,o=i[0],n=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],d=i[7],h=o.high;let u=o.low;const p=n.high;let v=n.low;const m=s.high;let g=s.low;const f=r.high;let w=r.low;const y=a.high;let b=a.low;const C=l.high;let x=l.low;const E=c.high;let k=c.low;const S=d.high;let M=d.low,_=h,N=u,T=p,I=v,L=m,A=g,O=f,F=w,D=y,j=b,$=C,U=x,z=E,P=k,R=S,V=M;for(let i=0;i<80;i+=1){let o,n;const s=Ro[i];if(i<16)s.high=0|t[e+2*i],n=s.high,s.low=0|t[e+2*i+1],o=s.low;else{const t=Ro[i-15],e=t.high,r=t.low,a=(e>>>1|r<<31)^(e>>>8|r<<24)^e>>>7,l=(r>>>1|e<<31)^(r>>>8|e<<24)^(r>>>7|e<<25),c=Ro[i-2],d=c.high,h=c.low,u=(d>>>19|h<<13)^(d<<3|h>>>29)^d>>>6,p=(h>>>19|d<<13)^(h<<3|d>>>29)^(h>>>6|d<<26),v=Ro[i-7],m=v.high,g=v.low,f=Ro[i-16],w=f.high,y=f.low;o=l+g,n=a+m+(o>>>0<l>>>0?1:0),o+=p,n=n+u+(o>>>0<p>>>0?1:0),o+=y,n=n+w+(o>>>0<y>>>0?1:0),s.high=n,s.low=o}const r=D&$^~D&z,a=j&U^~j&P,l=_&T^_&L^T&L,c=N&I^N&A^I&A,d=(_>>>28|N<<4)^(_<<30|N>>>2)^(_<<25|N>>>7),h=(N>>>28|_<<4)^(N<<30|_>>>2)^(N<<25|_>>>7),u=(D>>>14|j<<18)^(D>>>18|j<<14)^(D<<23|j>>>9),p=(j>>>14|D<<18)^(j>>>18|D<<14)^(j<<23|D>>>9),v=Po[i],m=v.high,g=v.low;let f=V+p,w=R+u+(f>>>0<V>>>0?1:0);f+=a,w=w+r+(f>>>0<a>>>0?1:0),f+=g,w=w+m+(f>>>0<g>>>0?1:0),f+=o,w=w+n+(f>>>0<o>>>0?1:0);const y=h+c;R=z,V=P,z=$,P=U,$=D,U=j,j=F+f|0,D=O+w+(j>>>0<F>>>0?1:0)|0,O=L,F=A,L=T,A=I,T=_,I=N,N=f+y|0,_=w+(d+l+(y>>>0<h>>>0?1:0))+(N>>>0<f>>>0?1:0)|0}o.low=u+N,u=o.low,o.high=h+_+(u>>>0<N>>>0?1:0),n.low=v+I,v=n.low,n.high=p+T+(v>>>0<I>>>0?1:0),s.low=g+A,g=s.low,s.high=m+L+(g>>>0<A>>>0?1:0),r.low=w+F,w=r.low,r.high=f+O+(w>>>0<F>>>0?1:0),a.low=b+j,b=a.low,a.high=y+D+(b>>>0<j>>>0?1:0),l.low=x+U,x=l.low,l.high=C+$+(x>>>0<U>>>0?1:0),c.low=k+P,k=c.low,c.high=E+z+(k>>>0<P>>>0?1:0),d.low=M+V,M=d.low,d.high=S+R+(M>>>0<V>>>0?1:0)}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;e[o>>>5]|=128<<24-o%32,e[30+(o+128>>>10<<5)]=Math.floor(i/4294967296),e[31+(o+128>>>10<<5)]=i,t.sigBytes=4*e.length,this._process();return this._hash.toX32()}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Bo=Gi._createHelper(Vo),Ho=Gi._createHmacHelper(Vo);class Go extends Vo{_doReset(){this._hash=new Wi([new Yi(3418070365,3238371032),new Yi(1654270250,914150663),new Yi(2438529370,812702999),new Yi(355462360,4144912697),new Yi(1731405415,4290775857),new Yi(2394180231,1750603025),new Yi(3675008525,1694076839),new Yi(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const Zo=Vo._createHelper(Go),Ko=Vo._createHmacHelper(Go),Yo=[],Wo=[],Jo=[];let qo=1,Qo=0;for(let t=0;t<24;t+=1){Yo[qo+5*Qo]=(t+1)*(t+2)/2%64;const e=(2*qo+3*Qo)%5;qo=Qo%5,Qo=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)Wo[t+5*e]=e+(2*t+3*e)%5*5;let Xo=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&Xo){const o=(1<<t)-1;o<32?i^=1<<o:e^=1<<o-32}128&Xo?Xo=Xo<<1^113:Xo<<=1}Jo[t]=Yi.create(e,i)}const tn=[];for(let t=0;t<25;t+=1)tn[t]=Yi.create();class en extends Gi{constructor(t){super(Object.assign({outputLength:512},t))}_doReset(){this._state=[];const t=this._state;for(let e=0;e<25;e+=1)t[e]=new Yi;this.blockSize=(1600-2*this.cfg.outputLength)/32}_doProcessBlock(t,e){const i=this._state,o=this.blockSize/2;for(let n=0;n<o;n+=1){let o=t[e+2*n],s=t[e+2*n+1];o=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8);const r=i[n];r.high^=s,r.low^=o}for(let t=0;t<24;t+=1){for(let t=0;t<5;t+=1){let e=0,o=0;for(let n=0;n<5;n+=1){const s=i[t+5*n];e^=s.high,o^=s.low}const n=tn[t];n.high=e,n.low=o}for(let t=0;t<5;t+=1){const e=tn[(t+4)%5],o=tn[(t+1)%5],n=o.high,s=o.low,r=e.high^(n<<1|s>>>31),a=e.low^(s<<1|n>>>31);for(let e=0;e<5;e+=1){const o=i[t+5*e];o.high^=r,o.low^=a}}for(let t=1;t<25;t+=1){let e,o;const n=i[t],s=n.high,r=n.low,a=Yo[t];a<32?(e=s<<a|r>>>32-a,o=r<<a|s>>>32-a):(e=r<<a-32|s>>>64-a,o=s<<a-32|r>>>64-a);const l=tn[Wo[t]];l.high=e,l.low=o}const e=tn[0],o=i[0];e.high=o.high,e.low=o.low;for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1){const o=t+5*e,n=i[o],s=tn[o],r=tn[(t+1)%5+5*e],a=tn[(t+2)%5+5*e];n.high=s.high^~r.high&a.high,n.low=s.low^~r.low&a.low}const n=i[0],s=Jo[t];n.high^=s.high,n.low^=s.low}}_doFinalize(){const t=this._data,e=t.words,i=8*t.sigBytes,o=32*this.blockSize;e[i>>>5]|=1<<24-i%32,e[(Math.ceil((i+1)/o)*o>>>5)-1]|=128,t.sigBytes=4*e.length,this._process();const n=this._state,s=this.cfg.outputLength/8,r=s/8,a=[];for(let t=0;t<r;t+=1){const e=n[t];let i=e.high,o=e.low;i=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),o=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a.push(o),a.push(i)}return new Pi(a,s)}clone(){const t=super.clone.call(this);t._state=this._state.slice(0);const e=t._state;for(let t=0;t<25;t+=1)e[t]=e[t].clone();return t}}const on=Gi._createHelper(en),nn=Gi._createHmacHelper(en),sn=Pi.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),rn=Pi.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),an=Pi.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),ln=Pi.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),cn=Pi.create([0,1518500249,1859775393,2400959708,2840853838]),dn=Pi.create([1352829926,1548603684,1836072691,2053994217,0]),hn=(t,e,i)=>t^e^i,un=(t,e,i)=>t&e|~t&i,pn=(t,e,i)=>(t|~e)^i,vn=(t,e,i)=>t&i|e&~i,mn=(t,e,i)=>t^(e|~i),gn=(t,e)=>t<<e|t>>>32-e;class fn extends Gi{_doReset(){this._hash=Pi.create([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=t;for(let t=0;t<16;t+=1){const o=e+t,n=i[o];i[o]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}const o=this._hash.words,n=cn.words,s=dn.words,r=sn.words,a=rn.words,l=an.words,c=ln.words;let d,h=o[0],u=o[1],p=o[2],v=o[3],m=o[4],g=o[0],f=o[1],w=o[2],y=o[3],b=o[4];for(let t=0;t<80;t+=1)d=h+i[e+r[t]]|0,d+=t<16?hn(u,p,v)+n[0]:t<32?un(u,p,v)+n[1]:t<48?pn(u,p,v)+n[2]:t<64?vn(u,p,v)+n[3]:mn(u,p,v)+n[4],d|=0,d=gn(d,l[t]),d=d+m|0,h=m,m=v,v=gn(p,10),p=u,u=d,d=g+i[e+a[t]]|0,d+=t<16?mn(f,w,y)+s[0]:t<32?vn(f,w,y)+s[1]:t<48?pn(f,w,y)+s[2]:t<64?un(f,w,y)+s[3]:hn(f,w,y)+s[4],d|=0,d=gn(d,c[t]),d=d+b|0,g=b,b=y,y=gn(w,10),w=f,f=d;d=o[1]+p+y|0,o[1]=o[2]+v+b|0,o[2]=o[3]+m+g|0,o[3]=o[4]+h+f|0,o[4]=o[0]+u+w|0,o[0]=d}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;e[o>>>5]|=128<<24-o%32,e[14+(o+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t.sigBytes=4*(e.length+1),this._process();const n=this._hash,s=n.words;for(let t=0;t<5;t+=1){const e=s[t];s[t]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8)}return n}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const wn=Gi._createHelper(fn),yn=Gi._createHmacHelper(fn);class bn extends zi{constructor(t){super(),this.cfg=Object.assign(new zi,{keySize:4,hasher:ko,iterations:1},t)}compute(t,e){const{cfg:i}=this,o=Zi.create(i.hasher,t),n=Pi.create(),s=Pi.create([1]),r=n.words,a=s.words,{keySize:l,iterations:c}=i;for(;r.length<l;){const t=o.update(e).finalize(s);o.reset();const i=t.words,r=i.length;let l=t;for(let t=1;t<c;t+=1){l=o.finalize(l),o.reset();const t=l.words;for(let e=0;e<r;e+=1)i[e]^=t[e]}n.concat(t),a[0]+=1}return n.sigBytes=4*l,n}}const Cn=[],xn=[],En=[],kn=[],Sn=[],Mn=[],_n=[],Nn=[],Tn=[],In=[],Ln=[];for(let t=0;t<256;t+=1)Ln[t]=t<128?t<<1:t<<1^283;let An=0,On=0;for(let t=0;t<256;t+=1){let t=On^On<<1^On<<2^On<<3^On<<4;t=t>>>8^255&t^99,Cn[An]=t,xn[t]=An;const e=Ln[An],i=Ln[e],o=Ln[i];let n=257*Ln[t]^16843008*t;En[An]=n<<24|n>>>8,kn[An]=n<<16|n>>>16,Sn[An]=n<<8|n>>>24,Mn[An]=n,n=16843009*o^65537*i^257*e^16843008*An,_n[t]=n<<24|n>>>8,Nn[t]=n<<16|n>>>16,Tn[t]=n<<8|n>>>24,In[t]=n,An?(An=e^Ln[Ln[Ln[o^e]]],On^=Ln[Ln[On]]):(On=1,An=On)}const Fn=[0,1,2,4,8,16,32,64,128,27,54];class Dn extends po{_doReset(){let t;if(this._nRounds&&this._keyPriorReset===this._key)return;this._keyPriorReset=this._key;const e=this._keyPriorReset,i=e.words,o=e.sigBytes/4;this._nRounds=o+6;const n=4*(this._nRounds+1);this._keySchedule=[];const s=this._keySchedule;for(let e=0;e<n;e+=1)e<o?s[e]=i[e]:(t=s[e-1],e%o?o>6&&e%o==4&&(t=Cn[t>>>24]<<24|Cn[t>>>16&255]<<16|Cn[t>>>8&255]<<8|Cn[255&t]):(t=t<<8|t>>>24,t=Cn[t>>>24]<<24|Cn[t>>>16&255]<<16|Cn[t>>>8&255]<<8|Cn[255&t],t^=Fn[e/o|0]<<24),s[e]=s[e-o]^t);this._invKeySchedule=[];const r=this._invKeySchedule;for(let e=0;e<n;e+=1){const i=n-e;t=e%4?s[i]:s[i-4],r[e]=e<4||i<=4?t:_n[Cn[t>>>24]]^Nn[Cn[t>>>16&255]]^Tn[Cn[t>>>8&255]]^In[Cn[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,En,kn,Sn,Mn,Cn)}decryptBlock(t,e){const i=t;let o=i[e+1];i[e+1]=i[e+3],i[e+3]=o,this._doCryptBlock(i,e,this._invKeySchedule,_n,Nn,Tn,In,xn),o=i[e+1],i[e+1]=i[e+3],i[e+3]=o}_doCryptBlock(t,e,i,o,n,s,r,a){const l=t,c=this._nRounds;let d=l[e]^i[0],h=l[e+1]^i[1],u=l[e+2]^i[2],p=l[e+3]^i[3],v=4;for(let t=1;t<c;t+=1){const t=o[d>>>24]^n[h>>>16&255]^s[u>>>8&255]^r[255&p]^i[v];v+=1;const e=o[h>>>24]^n[u>>>16&255]^s[p>>>8&255]^r[255&d]^i[v];v+=1;const a=o[u>>>24]^n[p>>>16&255]^s[d>>>8&255]^r[255&h]^i[v];v+=1;const l=o[p>>>24]^n[d>>>16&255]^s[h>>>8&255]^r[255&u]^i[v];v+=1,d=t,h=e,u=a,p=l}const m=(a[d>>>24]<<24|a[h>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[v];v+=1;const g=(a[h>>>24]<<24|a[u>>>16&255]<<16|a[p>>>8&255]<<8|a[255&d])^i[v];v+=1;const f=(a[u>>>24]<<24|a[p>>>16&255]<<16|a[d>>>8&255]<<8|a[255&h])^i[v];v+=1;const w=(a[p>>>24]<<24|a[d>>>16&255]<<16|a[h>>>8&255]<<8|a[255&u])^i[v];v+=1,l[e]=m,l[e+1]=g,l[e+2]=f,l[e+3]=w}}Dn.keySize=8;const jn=po._createHelper(Dn),$n=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],Un=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],zn=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],Pn=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],Rn=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function Vn(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function Bn(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class Hn extends po{_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const o=$n[i]-1;e[i]=t[o>>>5]>>>31-o%32&1}this._subKeys=[];const i=this._subKeys;for(let t=0;t<16;t+=1){i[t]=[];const o=i[t],n=zn[t];for(let t=0;t<24;t+=1)o[t/6|0]|=e[(Un[t]-1+n)%28]<<31-t%6,o[4+(t/6|0)]|=e[28+(Un[t+24]-1+n)%28]<<31-t%6;o[0]=o[0]<<1|o[0]>>>31;for(let t=1;t<7;t+=1)o[t]>>>=4*(t-1)+3;o[7]=o[7]<<5|o[7]>>>27}this._invSubKeys=[];const o=this._invSubKeys;for(let t=0;t<16;t+=1)o[t]=i[15-t]}encryptBlock(t,e){this._doCryptBlock(t,e,this._subKeys)}decryptBlock(t,e){this._doCryptBlock(t,e,this._invSubKeys)}_doCryptBlock(t,e,i){const o=t;this._lBlock=t[e],this._rBlock=t[e+1],Vn.call(this,4,252645135),Vn.call(this,16,65535),Bn.call(this,2,858993459),Bn.call(this,8,16711935),Vn.call(this,1,1431655765);for(let t=0;t<16;t+=1){const e=i[t],o=this._lBlock,n=this._rBlock;let s=0;for(let t=0;t<8;t+=1)s|=Pn[t][((n^e[t])&Rn[t])>>>0];this._lBlock=n,this._rBlock=o^s}const n=this._lBlock;this._lBlock=this._rBlock,this._rBlock=n,Vn.call(this,1,1431655765),Bn.call(this,8,16711935),Bn.call(this,2,858993459),Vn.call(this,16,65535),Vn.call(this,4,252645135),o[e]=this._lBlock,o[e+1]=this._rBlock}}Hn.keySize=2,Hn.ivSize=2,Hn.blockSize=2;const Gn=po._createHelper(Hn);class Zn extends po{_doReset(){const t=this._key.words;if(2!==t.length&&4!==t.length&&t.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");const e=t.slice(0,2),i=t.length<4?t.slice(0,2):t.slice(2,4),o=t.length<6?t.slice(0,2):t.slice(4,6);this._des1=Hn.createEncryptor(Pi.create(e)),this._des2=Hn.createEncryptor(Pi.create(i)),this._des3=Hn.createEncryptor(Pi.create(o))}encryptBlock(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)}decryptBlock(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)}}Zn.keySize=6,Zn.ivSize=2,Zn.blockSize=2;const Kn=po._createHelper(Zn),Yn=[],Wn=[],Jn=[];function qn(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)Wn[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<Wn[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<Wn[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<Wn[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<Wn[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<Wn[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<Wn[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<Wn[6]>>>0?1:0)|0,this._b=e[7]>>>0<Wn[7]>>>0?1:0;for(let i=0;i<8;i+=1){const o=t[i]+e[i],n=65535&o,s=o>>>16,r=((n*n>>>17)+n*s>>>15)+s*s,a=((4294901760&o)*o|0)+((65535&o)*o|0);Jn[i]=r^a}t[0]=Jn[0]+(Jn[7]<<16|Jn[7]>>>16)+(Jn[6]<<16|Jn[6]>>>16)|0,t[1]=Jn[1]+(Jn[0]<<8|Jn[0]>>>24)+Jn[7]|0,t[2]=Jn[2]+(Jn[1]<<16|Jn[1]>>>16)+(Jn[0]<<16|Jn[0]>>>16)|0,t[3]=Jn[3]+(Jn[2]<<8|Jn[2]>>>24)+Jn[1]|0,t[4]=Jn[4]+(Jn[3]<<16|Jn[3]>>>16)+(Jn[2]<<16|Jn[2]>>>16)|0,t[5]=Jn[5]+(Jn[4]<<8|Jn[4]>>>24)+Jn[3]|0,t[6]=Jn[6]+(Jn[5]<<16|Jn[5]>>>16)+(Jn[4]<<16|Jn[4]>>>16)|0,t[7]=Jn[7]+(Jn[6]<<8|Jn[6]>>>24)+Jn[5]|0}class Qn extends ao{constructor(...t){super(...t),this.blockSize=4,this.ivSize=2}_doReset(){const t=this._key.words,{iv:e}=this.cfg;for(let e=0;e<4;e+=1)t[e]=16711935&(t[e]<<8|t[e]>>>24)|4278255360&(t[e]<<24|t[e]>>>8);this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const i=this._X;this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];const o=this._C;this._b=0;for(let t=0;t<4;t+=1)qn.call(this);for(let t=0;t<8;t+=1)o[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],n=t[1],s=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),a=s>>>16|4294901760&r,l=r<<16|65535&s;o[0]^=s,o[1]^=a,o[2]^=r,o[3]^=l,o[4]^=s,o[5]^=a,o[6]^=r,o[7]^=l;for(let t=0;t<4;t+=1)qn.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;qn.call(this),Yn[0]=o[0]^o[5]>>>16^o[3]<<16,Yn[1]=o[2]^o[7]>>>16^o[5]<<16,Yn[2]=o[4]^o[1]>>>16^o[7]<<16,Yn[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)Yn[t]=16711935&(Yn[t]<<8|Yn[t]>>>24)|4278255360&(Yn[t]<<24|Yn[t]>>>8),i[e+t]^=Yn[t]}}const Xn=ao._createHelper(Qn),ts=[],es=[],is=[];function os(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)es[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<es[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<es[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<es[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<es[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<es[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<es[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<es[6]>>>0?1:0)|0,this._b=e[7]>>>0<es[7]>>>0?1:0;for(let i=0;i<8;i+=1){const o=t[i]+e[i],n=65535&o,s=o>>>16,r=((n*n>>>17)+n*s>>>15)+s*s,a=((4294901760&o)*o|0)+((65535&o)*o|0);is[i]=r^a}t[0]=is[0]+(is[7]<<16|is[7]>>>16)+(is[6]<<16|is[6]>>>16)|0,t[1]=is[1]+(is[0]<<8|is[0]>>>24)+is[7]|0,t[2]=is[2]+(is[1]<<16|is[1]>>>16)+(is[0]<<16|is[0]>>>16)|0,t[3]=is[3]+(is[2]<<8|is[2]>>>24)+is[1]|0,t[4]=is[4]+(is[3]<<16|is[3]>>>16)+(is[2]<<16|is[2]>>>16)|0,t[5]=is[5]+(is[4]<<8|is[4]>>>24)+is[3]|0,t[6]=is[6]+(is[5]<<16|is[5]>>>16)+(is[4]<<16|is[4]>>>16)|0,t[7]=is[7]+(is[6]<<8|is[6]>>>24)+is[5]|0}class ns extends ao{constructor(...t){super(...t),this.blockSize=4,this.ivSize=2}_doReset(){const t=this._key.words,{iv:e}=this.cfg;this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const i=this._X;this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];const o=this._C;this._b=0;for(let t=0;t<4;t+=1)os.call(this);for(let t=0;t<8;t+=1)o[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],n=t[1],s=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),a=s>>>16|4294901760&r,l=r<<16|65535&s;o[0]^=s,o[1]^=a,o[2]^=r,o[3]^=l,o[4]^=s,o[5]^=a,o[6]^=r,o[7]^=l;for(let t=0;t<4;t+=1)os.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;os.call(this),ts[0]=o[0]^o[5]>>>16^o[3]<<16,ts[1]=o[2]^o[7]>>>16^o[5]<<16,ts[2]=o[4]^o[1]>>>16^o[7]<<16,ts[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)ts[t]=16711935&(ts[t]<<8|ts[t]>>>24)|4278255360&(ts[t]<<24|ts[t]>>>8),i[e+t]^=ts[t]}}const ss=ao._createHelper(ns);function rs(){const t=this._S;let e=this._i,i=this._j,o=0;for(let n=0;n<4;n+=1){e=(e+1)%256,i=(i+t[e])%256;const s=t[e];t[e]=t[i],t[i]=s,o|=t[(t[e]+t[i])%256]<<24-8*n}return this._i=e,this._j=i,o}class as extends ao{_doReset(){const t=this._key,e=t.words,i=t.sigBytes;this._S=[];const o=this._S;for(let t=0;t<256;t+=1)o[t]=t;for(let t=0,n=0;t<256;t+=1){const s=t%i,r=e[s>>>2]>>>24-s%4*8&255;n=(n+o[t]+r)%256;const a=o[t];o[t]=o[n],o[n]=a}this._j=0,this._i=this._j}_doProcessBlock(t,e){t[e]^=rs.call(this)}}as.keySize=8,as.ivSize=0;const ls=ao._createHelper(as);class cs extends as{constructor(...t){super(...t),Object.assign(this.cfg,{drop:192})}_doReset(){super._doReset.call(this);for(let t=this.cfg.drop;t>0;t-=1)rs.call(this)}}const ds=ao._createHelper(cs);function hs(t,e,i,o){const n=t;let s;const r=this._iv;r?(s=r.slice(0),this._iv=void 0):s=this._prevBlock,o.encryptBlock(s,0);for(let t=0;t<i;t+=1)n[e+t]^=s[t]}class us extends lo{}us.Encryptor=class extends us{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;hs.call(this,t,e,o,i),this._prevBlock=t.slice(e,e+o)}},us.Decryptor=class extends us{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);hs.call(this,t,e,o,i),this._prevBlock=n}};class ps extends lo{}ps.Encryptor=class extends ps{processBlock(t,e){const i=t,o=this._cipher,{blockSize:n}=o,s=this._iv;let r=this._counter;s&&(this._counter=s.slice(0),r=this._counter,this._iv=void 0);const a=r.slice(0);o.encryptBlock(a,0),r[n-1]=r[n-1]+1|0;for(let t=0;t<n;t+=1)i[e+t]^=a[t]}},ps.Decryptor=ps.Encryptor;const vs=t=>{let e=t;if(255==(t>>24&255)){let i=t>>16&255,o=t>>8&255,n=255&t;255===i?(i=0,255===o?(o=0,255===n?n=0:n+=1):o+=1):i+=1,e=0,e+=i<<16,e+=o<<8,e+=n}else e+=1<<24;return e};
902
+ */(t=>{var e;null===(e=It())||void 0===e||e[`_${t}`]})("authIdTokenMaxAge"),Ui="Browser",be(new Vt("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),o=t.getProvider("heartbeat"),{apiKey:n,authDomain:s}=i.options;return((t,i)=>{ei(n&&!n.includes(":"),"invalid-api-key",{appName:t.name}),ei(!(null==s?void 0:s.includes(":")),"argument-error",{appName:t.name});const o={apiKey:n,authDomain:s,clientPlatform:Ui,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:Ai(Ui)},r=new Fi(t,i,o);return function(t,e){const i=(null==e?void 0:e.persistence)||[],o=(Array.isArray(i)?i:[i]).map(si);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(o,null==e?void 0:e.popupRedirectResolver)}(r,e),r})(i,o)}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),be(new Vt("auth-internal",(t=>(t=>new $i(t))(function(t){return Rt(t)}(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),ke(ji,"0.21.0",function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}(Ui)),ke(ji,"0.21.0","esm2017");class zi{static create(...t){return new this(...t)}mixIn(t){return Object.assign(this,t)}clone(){const t=new this.constructor;return Object.assign(t,this),t}}class Pi extends zi{constructor(t=[],e=4*t.length){super();let i=t;if(i instanceof ArrayBuffer&&(i=new Uint8Array(i)),(i instanceof Int8Array||i instanceof Uint8ClampedArray||i instanceof Int16Array||i instanceof Uint16Array||i instanceof Int32Array||i instanceof Uint32Array||i instanceof Float32Array||i instanceof Float64Array)&&(i=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)),i instanceof Uint8Array){const t=i.byteLength,e=[];for(let o=0;o<t;o+=1)e[o>>>2]|=i[o]<<24-o%4*8;this.words=e,this.sigBytes=t}else this.words=t,this.sigBytes=e}static random(t){const e=[],i=t=>{let e=t,i=987654321;const o=4294967295;return()=>{i=36969*(65535&i)+(i>>16)&o,e=18e3*(65535&e)+(e>>16)&o;let t=(i<<16)+e&o;return t/=4294967296,t+=.5,t*(Math.random()>.5?1:-1)}};for(let o,n=0;n<t;n+=4){const t=i(4294967296*(o||Math.random()));o=987654071*t(),e.push(4294967296*t()|0)}return new Pi(e,t)}toString(t=Ri){return t.stringify(this)}concat(t){const e=this.words,i=t.words,o=this.sigBytes,n=t.sigBytes;if(this.clamp(),o%4)for(let t=0;t<n;t+=1){const n=i[t>>>2]>>>24-t%4*8&255;e[o+t>>>2]|=n<<24-(o+t)%4*8}else for(let t=0;t<n;t+=4)e[o+t>>>2]=i[t>>>2];return this.sigBytes+=n,this}clamp(){const{words:t,sigBytes:e}=this;t[e>>>2]&=4294967295<<32-e%4*8,t.length=Math.ceil(e/4)}clone(){const t=super.clone.call(this);return t.words=this.words.slice(0),t}}const Ri={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;o.push((i>>>4).toString(16)),o.push((15&i).toString(16))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=2)i[o>>>3]|=parseInt(t.substr(o,2),16)<<24-o%8*4;return new Pi(i,e/2)}},Vi={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;o.push(String.fromCharCode(i))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=1)i[o>>>2]|=(255&t.charCodeAt(o))<<24-o%4*8;return new Pi(i,e)}},Bi={stringify(t){try{return decodeURIComponent(escape(Vi.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>Vi.parse(unescape(encodeURIComponent(t)))};class Hi extends zi{constructor(){super(),this._minBufferSize=0}reset(){this._data=new Pi,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=Bi.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes}_process(t){let e;const{_data:i,blockSize:o}=this,n=i.words,s=i.sigBytes;let r=s/(4*o);r=t?Math.ceil(r):Math.max((0|r)-this._minBufferSize,0);const a=r*o,l=Math.min(4*a,s);if(a){for(let t=0;t<a;t+=o)this._doProcessBlock(n,t);e=n.splice(0,a),i.sigBytes-=l}return new Pi(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class Gi extends Hi{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new zi,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new Zi(t,i).finalize(e)}reset(){super.reset.call(this),this._doReset()}update(t){return this._append(t),this._process(),this}finalize(t){t&&this._append(t);return this._doFinalize()}}class Zi extends zi{constructor(t,e){super();const i=new t;this._hasher=i;let o=e;"string"==typeof o&&(o=Bi.parse(o));const n=i.blockSize,s=4*n;o.sigBytes>s&&(o=i.finalize(e)),o.clamp();const r=o.clone();this._oKey=r;const a=o.clone();this._iKey=a;const l=r.words,c=a.words;for(let t=0;t<n;t+=1)l[t]^=1549556828,c[t]^=909522486;r.sigBytes=s,a.sigBytes=s,this.reset()}reset(){const t=this._hasher;t.reset(),t.update(this._iKey)}update(t){return this._hasher.update(t),this}finalize(t){const e=this._hasher,i=e.finalize(t);e.reset();return e.finalize(this._oKey.clone().concat(i))}}const Wi=Pi;class Ki extends zi{constructor(t,e){super(),this.high=t,this.low=e}}class Yi extends zi{constructor(t=[],e=8*t.length){super(),this.words=t,this.sigBytes=e}toX32(){const t=this.words,e=t.length,i=[];for(let o=0;o<e;o+=1){const e=t[o];i.push(e.high),i.push(e.low)}return Wi.create(i,this.sigBytes)}clone(){const t=super.clone.call(this);t.words=this.words.slice(0);const{words:e}=t,i=e.length;for(let t=0;t<i;t+=1)e[t]=e[t].clone();return t}}const Ji={stringify(t){const{words:e,sigBytes:i}=t,o=this._map;t.clamp();const n=[];for(let t=0;t<i;t+=3){const s=(e[t>>>2]>>>24-t%4*8&255)<<16|(e[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|e[t+2>>>2]>>>24-(t+2)%4*8&255;for(let e=0;e<4&&t+.75*e<i;e+=1)n.push(o.charAt(s>>>6*(3-e)&63))}const s=o.charAt(64);if(s)for(;n.length%4;)n.push(s);return n.join("")},parse(t){let e=t.length;const i=this._map;let o=this._reverseMap;if(!o){this._reverseMap=[],o=this._reverseMap;for(let t=0;t<i.length;t+=1)o[i.charCodeAt(t)]=t}const n=i.charAt(64);if(n){const i=t.indexOf(n);-1!==i&&(e=i)}return((t,e,i)=>{const o=[];let n=0;for(let s=0;s<e;s+=1)if(s%4){const e=i[t.charCodeAt(s-1)]<<s%4*2|i[t.charCodeAt(s)]>>>6-s%4*2;o[n>>>2]|=e<<24-n%4*8,n+=1}return Pi.create(o,n)})(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},qi=[];for(let t=0;t<64;t+=1)qi[t]=4294967296*Math.abs(Math.sin(t+1))|0;const Qi=(t,e,i,o,n,s,r)=>{const a=t+(e&i|~e&o)+n+r;return(a<<s|a>>>32-s)+e},Xi=(t,e,i,o,n,s,r)=>{const a=t+(e&o|i&~o)+n+r;return(a<<s|a>>>32-s)+e},to=(t,e,i,o,n,s,r)=>{const a=t+(e^i^o)+n+r;return(a<<s|a>>>32-s)+e},eo=(t,e,i,o,n,s,r)=>{const a=t+(i^(e|~o))+n+r;return(a<<s|a>>>32-s)+e};class io extends Gi{_doReset(){this._hash=new Pi([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const i=t;for(let o=0;o<16;o+=1){const n=e+o,s=t[n];i[n]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}const o=this._hash.words,n=i[e+0],s=i[e+1],r=i[e+2],a=i[e+3],l=i[e+4],c=i[e+5],d=i[e+6],h=i[e+7],u=i[e+8],p=i[e+9],v=i[e+10],m=i[e+11],g=i[e+12],f=i[e+13],w=i[e+14],y=i[e+15];let b=o[0],C=o[1],x=o[2],E=o[3];b=Qi(b,C,x,E,n,7,qi[0]),E=Qi(E,b,C,x,s,12,qi[1]),x=Qi(x,E,b,C,r,17,qi[2]),C=Qi(C,x,E,b,a,22,qi[3]),b=Qi(b,C,x,E,l,7,qi[4]),E=Qi(E,b,C,x,c,12,qi[5]),x=Qi(x,E,b,C,d,17,qi[6]),C=Qi(C,x,E,b,h,22,qi[7]),b=Qi(b,C,x,E,u,7,qi[8]),E=Qi(E,b,C,x,p,12,qi[9]),x=Qi(x,E,b,C,v,17,qi[10]),C=Qi(C,x,E,b,m,22,qi[11]),b=Qi(b,C,x,E,g,7,qi[12]),E=Qi(E,b,C,x,f,12,qi[13]),x=Qi(x,E,b,C,w,17,qi[14]),C=Qi(C,x,E,b,y,22,qi[15]),b=Xi(b,C,x,E,s,5,qi[16]),E=Xi(E,b,C,x,d,9,qi[17]),x=Xi(x,E,b,C,m,14,qi[18]),C=Xi(C,x,E,b,n,20,qi[19]),b=Xi(b,C,x,E,c,5,qi[20]),E=Xi(E,b,C,x,v,9,qi[21]),x=Xi(x,E,b,C,y,14,qi[22]),C=Xi(C,x,E,b,l,20,qi[23]),b=Xi(b,C,x,E,p,5,qi[24]),E=Xi(E,b,C,x,w,9,qi[25]),x=Xi(x,E,b,C,a,14,qi[26]),C=Xi(C,x,E,b,u,20,qi[27]),b=Xi(b,C,x,E,f,5,qi[28]),E=Xi(E,b,C,x,r,9,qi[29]),x=Xi(x,E,b,C,h,14,qi[30]),C=Xi(C,x,E,b,g,20,qi[31]),b=to(b,C,x,E,c,4,qi[32]),E=to(E,b,C,x,u,11,qi[33]),x=to(x,E,b,C,m,16,qi[34]),C=to(C,x,E,b,w,23,qi[35]),b=to(b,C,x,E,s,4,qi[36]),E=to(E,b,C,x,l,11,qi[37]),x=to(x,E,b,C,h,16,qi[38]),C=to(C,x,E,b,v,23,qi[39]),b=to(b,C,x,E,f,4,qi[40]),E=to(E,b,C,x,n,11,qi[41]),x=to(x,E,b,C,a,16,qi[42]),C=to(C,x,E,b,d,23,qi[43]),b=to(b,C,x,E,p,4,qi[44]),E=to(E,b,C,x,g,11,qi[45]),x=to(x,E,b,C,y,16,qi[46]),C=to(C,x,E,b,r,23,qi[47]),b=eo(b,C,x,E,n,6,qi[48]),E=eo(E,b,C,x,h,10,qi[49]),x=eo(x,E,b,C,w,15,qi[50]),C=eo(C,x,E,b,c,21,qi[51]),b=eo(b,C,x,E,g,6,qi[52]),E=eo(E,b,C,x,a,10,qi[53]),x=eo(x,E,b,C,v,15,qi[54]),C=eo(C,x,E,b,s,21,qi[55]),b=eo(b,C,x,E,u,6,qi[56]),E=eo(E,b,C,x,y,10,qi[57]),x=eo(x,E,b,C,d,15,qi[58]),C=eo(C,x,E,b,f,21,qi[59]),b=eo(b,C,x,E,l,6,qi[60]),E=eo(E,b,C,x,m,10,qi[61]),x=eo(x,E,b,C,r,15,qi[62]),C=eo(C,x,E,b,p,21,qi[63]),o[0]=o[0]+b|0,o[1]=o[1]+C|0,o[2]=o[2]+x|0,o[3]=o[3]+E|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;e[o>>>5]|=128<<24-o%32;const n=Math.floor(i/4294967296),s=i;e[15+(o+64>>>9<<4)]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),e[14+(o+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),t.sigBytes=4*(e.length+1),this._process();const r=this._hash,a=r.words;for(let t=0;t<4;t+=1){const e=a[t];a[t]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8)}return r}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const oo=Gi._createHelper(io),no=Gi._createHmacHelper(io);class so extends zi{constructor(t){super(),this.cfg=Object.assign(new zi,{keySize:4,hasher:io,iterations:1},t)}compute(t,e){let i;const{cfg:o}=this,n=o.hasher.create(),s=Pi.create(),r=s.words,{keySize:a,iterations:l}=o;for(;r.length<a;){i&&n.update(i),i=n.update(t).finalize(e),n.reset();for(let t=1;t<l;t+=1)i=n.finalize(i),n.reset();s.concat(i)}return s.sigBytes=4*a,s}}class ro extends Hi{constructor(t,e,i){super(),this.cfg=Object.assign(new zi,i),this._xformMode=t,this._key=e,this.reset()}static createEncryptor(t,e){return this.create(this._ENC_XFORM_MODE,t,e)}static createDecryptor(t,e){return this.create(this._DEC_XFORM_MODE,t,e)}static _createHelper(t){const e=t=>"string"==typeof t?wo:go;return{encrypt:(i,o,n)=>e(o).encrypt(t,i,o,n),decrypt:(i,o,n)=>e(o).decrypt(t,i,o,n)}}reset(){super.reset.call(this),this._doReset()}process(t){return this._append(t),this._process()}finalize(t){t&&this._append(t);return this._doFinalize()}}ro._ENC_XFORM_MODE=1,ro._DEC_XFORM_MODE=2,ro.keySize=4,ro.ivSize=4;class ao extends ro{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class lo extends zi{constructor(t,e){super(),this._cipher=t,this._iv=e}static createEncryptor(t,e){return this.Encryptor.create(t,e)}static createDecryptor(t,e){return this.Decryptor.create(t,e)}}function co(t,e,i){const o=t;let n;const s=this._iv;s?(n=s,this._iv=void 0):n=this._prevBlock;for(let t=0;t<i;t+=1)o[e+t]^=n[t]}class ho extends lo{}ho.Encryptor=class extends ho{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;co.call(this,t,e,o),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}},ho.Decryptor=class extends ho{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);i.decryptBlock(t,e),co.call(this,t,e,o),this._prevBlock=n}};const uo={pad(t,e){const i=4*e,o=i-t.sigBytes%i,n=o<<24|o<<16|o<<8|o,s=[];for(let t=0;t<o;t+=4)s.push(n);const r=Pi.create(s,o);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class po extends ro{constructor(t,e,i){super(t,e,Object.assign({mode:ho,padding:uo},i)),this.blockSize=4}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:i,mode:o}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=o.createEncryptor:(t=o.createDecryptor,this._minBufferSize=1),this._mode=t.call(o,this,i&&i.words),this._mode.i=t}_doProcessBlock(t,e){this._mode.processBlock(t,e)}_doFinalize(){let t;const{padding:e}=this.cfg;return this._xformMode===this.constructor._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t}}class vo extends zi{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const mo={stringify(t){let e;const{ciphertext:i,salt:o}=t;return e=o?Pi.create([1398893684,1701076831]).concat(o).concat(i):i,e.toString(Ji)},parse(t){let e;const i=Ji.parse(t),o=i.words;return 1398893684===o[0]&&1701076831===o[1]&&(e=Pi.create(o.slice(2,4)),o.splice(0,4),i.sigBytes-=16),vo.create({ciphertext:i,salt:e})}};class go extends zi{static encrypt(t,e,i,o){const n=Object.assign(new zi,this.cfg,o),s=t.createEncryptor(i,n),r=s.finalize(e),a=s.cfg;return vo.create({ciphertext:r,key:i,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:s.blockSize,formatter:n.format})}static decrypt(t,e,i,o){let n=e;const s=Object.assign(new zi,this.cfg,o);n=this._parse(n,s.format);return t.createDecryptor(i,s).finalize(n.ciphertext)}static _parse(t,e){return"string"==typeof t?e.parse(t,this):t}}go.cfg=Object.assign(new zi,{format:mo});const fo={execute(t,e,i,o){let n=o;n||(n=Pi.random(8));const s=so.create({keySize:e+i}).compute(t,n),r=Pi.create(s.words.slice(e),4*i);return s.sigBytes=4*e,vo.create({key:s,iv:r,salt:n})}};class wo extends go{static encrypt(t,e,i,o){const n=Object.assign(new zi,this.cfg,o),s=n.kdf.execute(i,t.keySize,t.ivSize);n.iv=s.iv;const r=go.encrypt.call(this,t,e,s.key,n);return r.mixIn(s),r}static decrypt(t,e,i,o){let n=e;const s=Object.assign(new zi,this.cfg,o);n=this._parse(n,s.format);const r=s.kdf.execute(i,t.keySize,t.ivSize,n.salt);s.iv=r.iv;return go.decrypt.call(this,t,n,r.key,s)}}wo.cfg=Object.assign(go.cfg,{kdf:fo});const yo=t=>t<<8&4278255360|t>>>8&16711935,bo={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=e[t>>>2]>>>16-t%4*8&65535;o.push(String.fromCharCode(i))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=1)i[o>>>1]|=t.charCodeAt(o)<<16-o%2*16;return Pi.create(i,2*e)}},Co=bo,xo={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=yo(e[t>>>2]>>>16-t%4*8&65535);o.push(String.fromCharCode(i))}return o.join("")},parse(t){const e=t.length,i=[];for(let o=0;o<e;o+=1)i[o>>>1]|=yo(t.charCodeAt(o)<<16-o%2*16);return Pi.create(i,2*e)}},Eo=[];class ko extends Gi{_doReset(){this._hash=new Pi([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=this._hash.words;let o=i[0],n=i[1],s=i[2],r=i[3],a=i[4];for(let i=0;i<80;i+=1){if(i<16)Eo[i]=0|t[e+i];else{const t=Eo[i-3]^Eo[i-8]^Eo[i-14]^Eo[i-16];Eo[i]=t<<1|t>>>31}let l=(o<<5|o>>>27)+a+Eo[i];l+=i<20?1518500249+(n&s|~n&r):i<40?1859775393+(n^s^r):i<60?(n&s|n&r|s&r)-1894007588:(n^s^r)-899497514,a=r,r=s,s=n<<30|n>>>2,n=o,o=l}i[0]=i[0]+o|0,i[1]=i[1]+n|0,i[2]=i[2]+s|0,i[3]=i[3]+r|0,i[4]=i[4]+a|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;return e[o>>>5]|=128<<24-o%32,e[14+(o+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(o+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const So=Gi._createHelper(ko),Mo=Gi._createHmacHelper(ko),_o=[],No=[],To=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},Io=t=>4294967296*(t-(0|t))|0;let Lo=2,Ao=0;for(;Ao<64;)To(Lo)&&(Ao<8&&(_o[Ao]=Io(Lo**.5)),No[Ao]=Io(Lo**(1/3)),Ao+=1),Lo+=1;const Oo=[];class Fo extends Gi{_doReset(){this._hash=new Pi(_o.slice(0))}_doProcessBlock(t,e){const i=this._hash.words;let o=i[0],n=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],d=i[7];for(let i=0;i<64;i+=1){if(i<16)Oo[i]=0|t[e+i];else{const t=Oo[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,o=Oo[i-2],n=(o<<15|o>>>17)^(o<<13|o>>>19)^o>>>10;Oo[i]=e+Oo[i-7]+n+Oo[i-16]}const h=o&n^o&s^n&s,u=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),p=d+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&l^~a&c)+No[i]+Oo[i];d=c,c=l,l=a,a=r+p|0,r=s,s=n,n=o,o=p+(u+h)|0}i[0]=i[0]+o|0,i[1]=i[1]+n|0,i[2]=i[2]+s|0,i[3]=i[3]+r|0,i[4]=i[4]+a|0,i[5]=i[5]+l|0,i[6]=i[6]+c|0,i[7]=i[7]+d|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;return e[o>>>5]|=128<<24-o%32,e[14+(o+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(o+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Do=Gi._createHelper(Fo),jo=Gi._createHmacHelper(Fo);class $o extends Fo{_doReset(){this._hash=new Pi([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const Uo=Fo._createHelper($o),zo=Fo._createHmacHelper($o),Po=[new Ki(1116352408,3609767458),new Ki(1899447441,602891725),new Ki(3049323471,3964484399),new Ki(3921009573,2173295548),new Ki(961987163,4081628472),new Ki(1508970993,3053834265),new Ki(2453635748,2937671579),new Ki(2870763221,3664609560),new Ki(3624381080,2734883394),new Ki(310598401,1164996542),new Ki(607225278,1323610764),new Ki(1426881987,3590304994),new Ki(1925078388,4068182383),new Ki(2162078206,991336113),new Ki(2614888103,633803317),new Ki(3248222580,3479774868),new Ki(3835390401,2666613458),new Ki(4022224774,944711139),new Ki(264347078,2341262773),new Ki(604807628,2007800933),new Ki(770255983,1495990901),new Ki(1249150122,1856431235),new Ki(1555081692,3175218132),new Ki(1996064986,2198950837),new Ki(2554220882,3999719339),new Ki(2821834349,766784016),new Ki(2952996808,2566594879),new Ki(3210313671,3203337956),new Ki(3336571891,1034457026),new Ki(3584528711,2466948901),new Ki(113926993,3758326383),new Ki(338241895,168717936),new Ki(666307205,1188179964),new Ki(773529912,1546045734),new Ki(1294757372,1522805485),new Ki(1396182291,2643833823),new Ki(1695183700,2343527390),new Ki(1986661051,1014477480),new Ki(2177026350,1206759142),new Ki(2456956037,344077627),new Ki(2730485921,1290863460),new Ki(2820302411,3158454273),new Ki(3259730800,3505952657),new Ki(3345764771,106217008),new Ki(3516065817,3606008344),new Ki(3600352804,1432725776),new Ki(4094571909,1467031594),new Ki(275423344,851169720),new Ki(430227734,3100823752),new Ki(506948616,1363258195),new Ki(659060556,3750685593),new Ki(883997877,3785050280),new Ki(958139571,3318307427),new Ki(1322822218,3812723403),new Ki(1537002063,2003034995),new Ki(1747873779,3602036899),new Ki(1955562222,1575990012),new Ki(2024104815,1125592928),new Ki(2227730452,2716904306),new Ki(2361852424,442776044),new Ki(2428436474,593698344),new Ki(2756734187,3733110249),new Ki(3204031479,2999351573),new Ki(3329325298,3815920427),new Ki(3391569614,3928383900),new Ki(3515267271,566280711),new Ki(3940187606,3454069534),new Ki(4118630271,4000239992),new Ki(116418474,1914138554),new Ki(174292421,2731055270),new Ki(289380356,3203993006),new Ki(460393269,320620315),new Ki(685471733,587496836),new Ki(852142971,1086792851),new Ki(1017036298,365543100),new Ki(1126000580,2618297676),new Ki(1288033470,3409855158),new Ki(1501505948,4234509866),new Ki(1607167915,987167468),new Ki(1816402316,1246189591)],Ro=[];for(let t=0;t<80;t+=1)Ro[t]=new Ki;class Vo extends Gi{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new Yi([new Ki(1779033703,4089235720),new Ki(3144134277,2227873595),new Ki(1013904242,4271175723),new Ki(2773480762,1595750129),new Ki(1359893119,2917565137),new Ki(2600822924,725511199),new Ki(528734635,4215389547),new Ki(1541459225,327033209)])}_doProcessBlock(t,e){const i=this._hash.words,o=i[0],n=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],d=i[7],h=o.high;let u=o.low;const p=n.high;let v=n.low;const m=s.high;let g=s.low;const f=r.high;let w=r.low;const y=a.high;let b=a.low;const C=l.high;let x=l.low;const E=c.high;let k=c.low;const S=d.high;let M=d.low,_=h,N=u,T=p,I=v,L=m,A=g,O=f,F=w,D=y,j=b,$=C,U=x,z=E,P=k,R=S,V=M;for(let i=0;i<80;i+=1){let o,n;const s=Ro[i];if(i<16)s.high=0|t[e+2*i],n=s.high,s.low=0|t[e+2*i+1],o=s.low;else{const t=Ro[i-15],e=t.high,r=t.low,a=(e>>>1|r<<31)^(e>>>8|r<<24)^e>>>7,l=(r>>>1|e<<31)^(r>>>8|e<<24)^(r>>>7|e<<25),c=Ro[i-2],d=c.high,h=c.low,u=(d>>>19|h<<13)^(d<<3|h>>>29)^d>>>6,p=(h>>>19|d<<13)^(h<<3|d>>>29)^(h>>>6|d<<26),v=Ro[i-7],m=v.high,g=v.low,f=Ro[i-16],w=f.high,y=f.low;o=l+g,n=a+m+(o>>>0<l>>>0?1:0),o+=p,n=n+u+(o>>>0<p>>>0?1:0),o+=y,n=n+w+(o>>>0<y>>>0?1:0),s.high=n,s.low=o}const r=D&$^~D&z,a=j&U^~j&P,l=_&T^_&L^T&L,c=N&I^N&A^I&A,d=(_>>>28|N<<4)^(_<<30|N>>>2)^(_<<25|N>>>7),h=(N>>>28|_<<4)^(N<<30|_>>>2)^(N<<25|_>>>7),u=(D>>>14|j<<18)^(D>>>18|j<<14)^(D<<23|j>>>9),p=(j>>>14|D<<18)^(j>>>18|D<<14)^(j<<23|D>>>9),v=Po[i],m=v.high,g=v.low;let f=V+p,w=R+u+(f>>>0<V>>>0?1:0);f+=a,w=w+r+(f>>>0<a>>>0?1:0),f+=g,w=w+m+(f>>>0<g>>>0?1:0),f+=o,w=w+n+(f>>>0<o>>>0?1:0);const y=h+c;R=z,V=P,z=$,P=U,$=D,U=j,j=F+f|0,D=O+w+(j>>>0<F>>>0?1:0)|0,O=L,F=A,L=T,A=I,T=_,I=N,N=f+y|0,_=w+(d+l+(y>>>0<h>>>0?1:0))+(N>>>0<f>>>0?1:0)|0}o.low=u+N,u=o.low,o.high=h+_+(u>>>0<N>>>0?1:0),n.low=v+I,v=n.low,n.high=p+T+(v>>>0<I>>>0?1:0),s.low=g+A,g=s.low,s.high=m+L+(g>>>0<A>>>0?1:0),r.low=w+F,w=r.low,r.high=f+O+(w>>>0<F>>>0?1:0),a.low=b+j,b=a.low,a.high=y+D+(b>>>0<j>>>0?1:0),l.low=x+U,x=l.low,l.high=C+$+(x>>>0<U>>>0?1:0),c.low=k+P,k=c.low,c.high=E+z+(k>>>0<P>>>0?1:0),d.low=M+V,M=d.low,d.high=S+R+(M>>>0<V>>>0?1:0)}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;e[o>>>5]|=128<<24-o%32,e[30+(o+128>>>10<<5)]=Math.floor(i/4294967296),e[31+(o+128>>>10<<5)]=i,t.sigBytes=4*e.length,this._process();return this._hash.toX32()}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Bo=Gi._createHelper(Vo),Ho=Gi._createHmacHelper(Vo);class Go extends Vo{_doReset(){this._hash=new Yi([new Ki(3418070365,3238371032),new Ki(1654270250,914150663),new Ki(2438529370,812702999),new Ki(355462360,4144912697),new Ki(1731405415,4290775857),new Ki(2394180231,1750603025),new Ki(3675008525,1694076839),new Ki(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const Zo=Vo._createHelper(Go),Wo=Vo._createHmacHelper(Go),Ko=[],Yo=[],Jo=[];let qo=1,Qo=0;for(let t=0;t<24;t+=1){Ko[qo+5*Qo]=(t+1)*(t+2)/2%64;const e=(2*qo+3*Qo)%5;qo=Qo%5,Qo=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)Yo[t+5*e]=e+(2*t+3*e)%5*5;let Xo=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&Xo){const o=(1<<t)-1;o<32?i^=1<<o:e^=1<<o-32}128&Xo?Xo=Xo<<1^113:Xo<<=1}Jo[t]=Ki.create(e,i)}const tn=[];for(let t=0;t<25;t+=1)tn[t]=Ki.create();class en extends Gi{constructor(t){super(Object.assign({outputLength:512},t))}_doReset(){this._state=[];const t=this._state;for(let e=0;e<25;e+=1)t[e]=new Ki;this.blockSize=(1600-2*this.cfg.outputLength)/32}_doProcessBlock(t,e){const i=this._state,o=this.blockSize/2;for(let n=0;n<o;n+=1){let o=t[e+2*n],s=t[e+2*n+1];o=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8);const r=i[n];r.high^=s,r.low^=o}for(let t=0;t<24;t+=1){for(let t=0;t<5;t+=1){let e=0,o=0;for(let n=0;n<5;n+=1){const s=i[t+5*n];e^=s.high,o^=s.low}const n=tn[t];n.high=e,n.low=o}for(let t=0;t<5;t+=1){const e=tn[(t+4)%5],o=tn[(t+1)%5],n=o.high,s=o.low,r=e.high^(n<<1|s>>>31),a=e.low^(s<<1|n>>>31);for(let e=0;e<5;e+=1){const o=i[t+5*e];o.high^=r,o.low^=a}}for(let t=1;t<25;t+=1){let e,o;const n=i[t],s=n.high,r=n.low,a=Ko[t];a<32?(e=s<<a|r>>>32-a,o=r<<a|s>>>32-a):(e=r<<a-32|s>>>64-a,o=s<<a-32|r>>>64-a);const l=tn[Yo[t]];l.high=e,l.low=o}const e=tn[0],o=i[0];e.high=o.high,e.low=o.low;for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1){const o=t+5*e,n=i[o],s=tn[o],r=tn[(t+1)%5+5*e],a=tn[(t+2)%5+5*e];n.high=s.high^~r.high&a.high,n.low=s.low^~r.low&a.low}const n=i[0],s=Jo[t];n.high^=s.high,n.low^=s.low}}_doFinalize(){const t=this._data,e=t.words,i=8*t.sigBytes,o=32*this.blockSize;e[i>>>5]|=1<<24-i%32,e[(Math.ceil((i+1)/o)*o>>>5)-1]|=128,t.sigBytes=4*e.length,this._process();const n=this._state,s=this.cfg.outputLength/8,r=s/8,a=[];for(let t=0;t<r;t+=1){const e=n[t];let i=e.high,o=e.low;i=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),o=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a.push(o),a.push(i)}return new Pi(a,s)}clone(){const t=super.clone.call(this);t._state=this._state.slice(0);const e=t._state;for(let t=0;t<25;t+=1)e[t]=e[t].clone();return t}}const on=Gi._createHelper(en),nn=Gi._createHmacHelper(en),sn=Pi.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),rn=Pi.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),an=Pi.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),ln=Pi.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),cn=Pi.create([0,1518500249,1859775393,2400959708,2840853838]),dn=Pi.create([1352829926,1548603684,1836072691,2053994217,0]),hn=(t,e,i)=>t^e^i,un=(t,e,i)=>t&e|~t&i,pn=(t,e,i)=>(t|~e)^i,vn=(t,e,i)=>t&i|e&~i,mn=(t,e,i)=>t^(e|~i),gn=(t,e)=>t<<e|t>>>32-e;class fn extends Gi{_doReset(){this._hash=Pi.create([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=t;for(let t=0;t<16;t+=1){const o=e+t,n=i[o];i[o]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}const o=this._hash.words,n=cn.words,s=dn.words,r=sn.words,a=rn.words,l=an.words,c=ln.words;let d,h=o[0],u=o[1],p=o[2],v=o[3],m=o[4],g=o[0],f=o[1],w=o[2],y=o[3],b=o[4];for(let t=0;t<80;t+=1)d=h+i[e+r[t]]|0,d+=t<16?hn(u,p,v)+n[0]:t<32?un(u,p,v)+n[1]:t<48?pn(u,p,v)+n[2]:t<64?vn(u,p,v)+n[3]:mn(u,p,v)+n[4],d|=0,d=gn(d,l[t]),d=d+m|0,h=m,m=v,v=gn(p,10),p=u,u=d,d=g+i[e+a[t]]|0,d+=t<16?mn(f,w,y)+s[0]:t<32?vn(f,w,y)+s[1]:t<48?pn(f,w,y)+s[2]:t<64?un(f,w,y)+s[3]:hn(f,w,y)+s[4],d|=0,d=gn(d,c[t]),d=d+b|0,g=b,b=y,y=gn(w,10),w=f,f=d;d=o[1]+p+y|0,o[1]=o[2]+v+b|0,o[2]=o[3]+m+g|0,o[3]=o[4]+h+f|0,o[4]=o[0]+u+w|0,o[0]=d}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,o=8*t.sigBytes;e[o>>>5]|=128<<24-o%32,e[14+(o+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t.sigBytes=4*(e.length+1),this._process();const n=this._hash,s=n.words;for(let t=0;t<5;t+=1){const e=s[t];s[t]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8)}return n}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const wn=Gi._createHelper(fn),yn=Gi._createHmacHelper(fn);class bn extends zi{constructor(t){super(),this.cfg=Object.assign(new zi,{keySize:4,hasher:ko,iterations:1},t)}compute(t,e){const{cfg:i}=this,o=Zi.create(i.hasher,t),n=Pi.create(),s=Pi.create([1]),r=n.words,a=s.words,{keySize:l,iterations:c}=i;for(;r.length<l;){const t=o.update(e).finalize(s);o.reset();const i=t.words,r=i.length;let l=t;for(let t=1;t<c;t+=1){l=o.finalize(l),o.reset();const t=l.words;for(let e=0;e<r;e+=1)i[e]^=t[e]}n.concat(t),a[0]+=1}return n.sigBytes=4*l,n}}const Cn=[],xn=[],En=[],kn=[],Sn=[],Mn=[],_n=[],Nn=[],Tn=[],In=[],Ln=[];for(let t=0;t<256;t+=1)Ln[t]=t<128?t<<1:t<<1^283;let An=0,On=0;for(let t=0;t<256;t+=1){let t=On^On<<1^On<<2^On<<3^On<<4;t=t>>>8^255&t^99,Cn[An]=t,xn[t]=An;const e=Ln[An],i=Ln[e],o=Ln[i];let n=257*Ln[t]^16843008*t;En[An]=n<<24|n>>>8,kn[An]=n<<16|n>>>16,Sn[An]=n<<8|n>>>24,Mn[An]=n,n=16843009*o^65537*i^257*e^16843008*An,_n[t]=n<<24|n>>>8,Nn[t]=n<<16|n>>>16,Tn[t]=n<<8|n>>>24,In[t]=n,An?(An=e^Ln[Ln[Ln[o^e]]],On^=Ln[Ln[On]]):(On=1,An=On)}const Fn=[0,1,2,4,8,16,32,64,128,27,54];class Dn extends po{_doReset(){let t;if(this._nRounds&&this._keyPriorReset===this._key)return;this._keyPriorReset=this._key;const e=this._keyPriorReset,i=e.words,o=e.sigBytes/4;this._nRounds=o+6;const n=4*(this._nRounds+1);this._keySchedule=[];const s=this._keySchedule;for(let e=0;e<n;e+=1)e<o?s[e]=i[e]:(t=s[e-1],e%o?o>6&&e%o==4&&(t=Cn[t>>>24]<<24|Cn[t>>>16&255]<<16|Cn[t>>>8&255]<<8|Cn[255&t]):(t=t<<8|t>>>24,t=Cn[t>>>24]<<24|Cn[t>>>16&255]<<16|Cn[t>>>8&255]<<8|Cn[255&t],t^=Fn[e/o|0]<<24),s[e]=s[e-o]^t);this._invKeySchedule=[];const r=this._invKeySchedule;for(let e=0;e<n;e+=1){const i=n-e;t=e%4?s[i]:s[i-4],r[e]=e<4||i<=4?t:_n[Cn[t>>>24]]^Nn[Cn[t>>>16&255]]^Tn[Cn[t>>>8&255]]^In[Cn[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,En,kn,Sn,Mn,Cn)}decryptBlock(t,e){const i=t;let o=i[e+1];i[e+1]=i[e+3],i[e+3]=o,this._doCryptBlock(i,e,this._invKeySchedule,_n,Nn,Tn,In,xn),o=i[e+1],i[e+1]=i[e+3],i[e+3]=o}_doCryptBlock(t,e,i,o,n,s,r,a){const l=t,c=this._nRounds;let d=l[e]^i[0],h=l[e+1]^i[1],u=l[e+2]^i[2],p=l[e+3]^i[3],v=4;for(let t=1;t<c;t+=1){const t=o[d>>>24]^n[h>>>16&255]^s[u>>>8&255]^r[255&p]^i[v];v+=1;const e=o[h>>>24]^n[u>>>16&255]^s[p>>>8&255]^r[255&d]^i[v];v+=1;const a=o[u>>>24]^n[p>>>16&255]^s[d>>>8&255]^r[255&h]^i[v];v+=1;const l=o[p>>>24]^n[d>>>16&255]^s[h>>>8&255]^r[255&u]^i[v];v+=1,d=t,h=e,u=a,p=l}const m=(a[d>>>24]<<24|a[h>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[v];v+=1;const g=(a[h>>>24]<<24|a[u>>>16&255]<<16|a[p>>>8&255]<<8|a[255&d])^i[v];v+=1;const f=(a[u>>>24]<<24|a[p>>>16&255]<<16|a[d>>>8&255]<<8|a[255&h])^i[v];v+=1;const w=(a[p>>>24]<<24|a[d>>>16&255]<<16|a[h>>>8&255]<<8|a[255&u])^i[v];v+=1,l[e]=m,l[e+1]=g,l[e+2]=f,l[e+3]=w}}Dn.keySize=8;const jn=po._createHelper(Dn),$n=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],Un=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],zn=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],Pn=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],Rn=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function Vn(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function Bn(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class Hn extends po{_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const o=$n[i]-1;e[i]=t[o>>>5]>>>31-o%32&1}this._subKeys=[];const i=this._subKeys;for(let t=0;t<16;t+=1){i[t]=[];const o=i[t],n=zn[t];for(let t=0;t<24;t+=1)o[t/6|0]|=e[(Un[t]-1+n)%28]<<31-t%6,o[4+(t/6|0)]|=e[28+(Un[t+24]-1+n)%28]<<31-t%6;o[0]=o[0]<<1|o[0]>>>31;for(let t=1;t<7;t+=1)o[t]>>>=4*(t-1)+3;o[7]=o[7]<<5|o[7]>>>27}this._invSubKeys=[];const o=this._invSubKeys;for(let t=0;t<16;t+=1)o[t]=i[15-t]}encryptBlock(t,e){this._doCryptBlock(t,e,this._subKeys)}decryptBlock(t,e){this._doCryptBlock(t,e,this._invSubKeys)}_doCryptBlock(t,e,i){const o=t;this._lBlock=t[e],this._rBlock=t[e+1],Vn.call(this,4,252645135),Vn.call(this,16,65535),Bn.call(this,2,858993459),Bn.call(this,8,16711935),Vn.call(this,1,1431655765);for(let t=0;t<16;t+=1){const e=i[t],o=this._lBlock,n=this._rBlock;let s=0;for(let t=0;t<8;t+=1)s|=Pn[t][((n^e[t])&Rn[t])>>>0];this._lBlock=n,this._rBlock=o^s}const n=this._lBlock;this._lBlock=this._rBlock,this._rBlock=n,Vn.call(this,1,1431655765),Bn.call(this,8,16711935),Bn.call(this,2,858993459),Vn.call(this,16,65535),Vn.call(this,4,252645135),o[e]=this._lBlock,o[e+1]=this._rBlock}}Hn.keySize=2,Hn.ivSize=2,Hn.blockSize=2;const Gn=po._createHelper(Hn);class Zn extends po{_doReset(){const t=this._key.words;if(2!==t.length&&4!==t.length&&t.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");const e=t.slice(0,2),i=t.length<4?t.slice(0,2):t.slice(2,4),o=t.length<6?t.slice(0,2):t.slice(4,6);this._des1=Hn.createEncryptor(Pi.create(e)),this._des2=Hn.createEncryptor(Pi.create(i)),this._des3=Hn.createEncryptor(Pi.create(o))}encryptBlock(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)}decryptBlock(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)}}Zn.keySize=6,Zn.ivSize=2,Zn.blockSize=2;const Wn=po._createHelper(Zn),Kn=[],Yn=[],Jn=[];function qn(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)Yn[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<Yn[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<Yn[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<Yn[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<Yn[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<Yn[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<Yn[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<Yn[6]>>>0?1:0)|0,this._b=e[7]>>>0<Yn[7]>>>0?1:0;for(let i=0;i<8;i+=1){const o=t[i]+e[i],n=65535&o,s=o>>>16,r=((n*n>>>17)+n*s>>>15)+s*s,a=((4294901760&o)*o|0)+((65535&o)*o|0);Jn[i]=r^a}t[0]=Jn[0]+(Jn[7]<<16|Jn[7]>>>16)+(Jn[6]<<16|Jn[6]>>>16)|0,t[1]=Jn[1]+(Jn[0]<<8|Jn[0]>>>24)+Jn[7]|0,t[2]=Jn[2]+(Jn[1]<<16|Jn[1]>>>16)+(Jn[0]<<16|Jn[0]>>>16)|0,t[3]=Jn[3]+(Jn[2]<<8|Jn[2]>>>24)+Jn[1]|0,t[4]=Jn[4]+(Jn[3]<<16|Jn[3]>>>16)+(Jn[2]<<16|Jn[2]>>>16)|0,t[5]=Jn[5]+(Jn[4]<<8|Jn[4]>>>24)+Jn[3]|0,t[6]=Jn[6]+(Jn[5]<<16|Jn[5]>>>16)+(Jn[4]<<16|Jn[4]>>>16)|0,t[7]=Jn[7]+(Jn[6]<<8|Jn[6]>>>24)+Jn[5]|0}class Qn extends ao{constructor(...t){super(...t),this.blockSize=4,this.ivSize=2}_doReset(){const t=this._key.words,{iv:e}=this.cfg;for(let e=0;e<4;e+=1)t[e]=16711935&(t[e]<<8|t[e]>>>24)|4278255360&(t[e]<<24|t[e]>>>8);this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const i=this._X;this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];const o=this._C;this._b=0;for(let t=0;t<4;t+=1)qn.call(this);for(let t=0;t<8;t+=1)o[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],n=t[1],s=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),a=s>>>16|4294901760&r,l=r<<16|65535&s;o[0]^=s,o[1]^=a,o[2]^=r,o[3]^=l,o[4]^=s,o[5]^=a,o[6]^=r,o[7]^=l;for(let t=0;t<4;t+=1)qn.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;qn.call(this),Kn[0]=o[0]^o[5]>>>16^o[3]<<16,Kn[1]=o[2]^o[7]>>>16^o[5]<<16,Kn[2]=o[4]^o[1]>>>16^o[7]<<16,Kn[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)Kn[t]=16711935&(Kn[t]<<8|Kn[t]>>>24)|4278255360&(Kn[t]<<24|Kn[t]>>>8),i[e+t]^=Kn[t]}}const Xn=ao._createHelper(Qn),ts=[],es=[],is=[];function os(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)es[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<es[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<es[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<es[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<es[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<es[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<es[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<es[6]>>>0?1:0)|0,this._b=e[7]>>>0<es[7]>>>0?1:0;for(let i=0;i<8;i+=1){const o=t[i]+e[i],n=65535&o,s=o>>>16,r=((n*n>>>17)+n*s>>>15)+s*s,a=((4294901760&o)*o|0)+((65535&o)*o|0);is[i]=r^a}t[0]=is[0]+(is[7]<<16|is[7]>>>16)+(is[6]<<16|is[6]>>>16)|0,t[1]=is[1]+(is[0]<<8|is[0]>>>24)+is[7]|0,t[2]=is[2]+(is[1]<<16|is[1]>>>16)+(is[0]<<16|is[0]>>>16)|0,t[3]=is[3]+(is[2]<<8|is[2]>>>24)+is[1]|0,t[4]=is[4]+(is[3]<<16|is[3]>>>16)+(is[2]<<16|is[2]>>>16)|0,t[5]=is[5]+(is[4]<<8|is[4]>>>24)+is[3]|0,t[6]=is[6]+(is[5]<<16|is[5]>>>16)+(is[4]<<16|is[4]>>>16)|0,t[7]=is[7]+(is[6]<<8|is[6]>>>24)+is[5]|0}class ns extends ao{constructor(...t){super(...t),this.blockSize=4,this.ivSize=2}_doReset(){const t=this._key.words,{iv:e}=this.cfg;this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const i=this._X;this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];const o=this._C;this._b=0;for(let t=0;t<4;t+=1)os.call(this);for(let t=0;t<8;t+=1)o[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],n=t[1],s=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),a=s>>>16|4294901760&r,l=r<<16|65535&s;o[0]^=s,o[1]^=a,o[2]^=r,o[3]^=l,o[4]^=s,o[5]^=a,o[6]^=r,o[7]^=l;for(let t=0;t<4;t+=1)os.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;os.call(this),ts[0]=o[0]^o[5]>>>16^o[3]<<16,ts[1]=o[2]^o[7]>>>16^o[5]<<16,ts[2]=o[4]^o[1]>>>16^o[7]<<16,ts[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)ts[t]=16711935&(ts[t]<<8|ts[t]>>>24)|4278255360&(ts[t]<<24|ts[t]>>>8),i[e+t]^=ts[t]}}const ss=ao._createHelper(ns);function rs(){const t=this._S;let e=this._i,i=this._j,o=0;for(let n=0;n<4;n+=1){e=(e+1)%256,i=(i+t[e])%256;const s=t[e];t[e]=t[i],t[i]=s,o|=t[(t[e]+t[i])%256]<<24-8*n}return this._i=e,this._j=i,o}class as extends ao{_doReset(){const t=this._key,e=t.words,i=t.sigBytes;this._S=[];const o=this._S;for(let t=0;t<256;t+=1)o[t]=t;for(let t=0,n=0;t<256;t+=1){const s=t%i,r=e[s>>>2]>>>24-s%4*8&255;n=(n+o[t]+r)%256;const a=o[t];o[t]=o[n],o[n]=a}this._j=0,this._i=this._j}_doProcessBlock(t,e){t[e]^=rs.call(this)}}as.keySize=8,as.ivSize=0;const ls=ao._createHelper(as);class cs extends as{constructor(...t){super(...t),Object.assign(this.cfg,{drop:192})}_doReset(){super._doReset.call(this);for(let t=this.cfg.drop;t>0;t-=1)rs.call(this)}}const ds=ao._createHelper(cs);function hs(t,e,i,o){const n=t;let s;const r=this._iv;r?(s=r.slice(0),this._iv=void 0):s=this._prevBlock,o.encryptBlock(s,0);for(let t=0;t<i;t+=1)n[e+t]^=s[t]}class us extends lo{}us.Encryptor=class extends us{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;hs.call(this,t,e,o,i),this._prevBlock=t.slice(e,e+o)}},us.Decryptor=class extends us{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);hs.call(this,t,e,o,i),this._prevBlock=n}};class ps extends lo{}ps.Encryptor=class extends ps{processBlock(t,e){const i=t,o=this._cipher,{blockSize:n}=o,s=this._iv;let r=this._counter;s&&(this._counter=s.slice(0),r=this._counter,this._iv=void 0);const a=r.slice(0);o.encryptBlock(a,0),r[n-1]=r[n-1]+1|0;for(let t=0;t<n;t+=1)i[e+t]^=a[t]}},ps.Decryptor=ps.Encryptor;const vs=t=>{let e=t;if(255==(t>>24&255)){let i=t>>16&255,o=t>>8&255,n=255&t;255===i?(i=0,255===o?(o=0,255===n?n=0:n+=1):o+=1):i+=1,e=0,e+=i<<16,e+=o<<8,e+=n}else e+=1<<24;return e};
903
903
  /** @preserve
904
904
  * Counter block mode compatible with Dr Brian Gladman fileenc.c
905
905
  * derived from CryptoJS.mode.CTR
906
906
  * Jan Hruby jhruby.web@gmail.com
907
907
  */
908
- class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o=this._cipher,{blockSize:n}=o,s=this._iv;let r=this._counter;s&&(this._counter=s.slice(0),r=this._counter,this._iv=void 0),(t=>{const e=t;e[0]=vs(e[0]),0===e[0]&&(e[1]=vs(e[1]))})(r);const a=r.slice(0);o.encryptBlock(a,0);for(let t=0;t<n;t+=1)i[e+t]^=a[t]}},ms.Decryptor=ms.Encryptor;class gs extends lo{}gs.Encryptor=class extends gs{processBlock(t,e){this._cipher.encryptBlock(t,e)}},gs.Decryptor=class extends gs{processBlock(t,e){this._cipher.decryptBlock(t,e)}};class fs extends lo{}fs.Encryptor=class extends fs{processBlock(t,e){const i=t,o=this._cipher,{blockSize:n}=o,s=this._iv;let r=this._keystream;s&&(this._keystream=s.slice(0),r=this._keystream,this._iv=void 0),o.encryptBlock(r,0);for(let t=0;t<n;t+=1)i[e+t]^=r[t]}},fs.Decryptor=fs.Encryptor;const ws={pad(t,e){const i=4*e,o=i-t.sigBytes%i;t.concat(Pi.random(o-1)).concat(Pi.create([o<<24],1))},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},ys={pad(t,e){const i=t,o=4*e;i.clamp(),i.sigBytes+=o-(t.sigBytes%o||o)},unpad(t){const e=t,i=e.words;for(let t=e.sigBytes-1;t>=0;t-=1)if(i[t>>>2]>>>24-t%4*8&255){e.sigBytes=t+1;break}}},bs={pad(t,e){t.concat(Pi.create([2147483648],1)),ys.pad(t,e)},unpad(t){const e=t;ys.unpad(e),e.sigBytes-=1}},Cs={stringify:t=>t.ciphertext.toString(Ri),parse(t){const e=Ri.parse(t);return vo.create({ciphertext:e})}};var xs={lib:{Base:zi,WordArray:Pi,BufferedBlockAlgorithm:Hi,Hasher:Gi,Cipher:ro,StreamCipher:ao,BlockCipherMode:lo,BlockCipher:po,CipherParams:vo,SerializableCipher:go,PasswordBasedCipher:wo},x64:{Word:Yi,WordArray:Wi},enc:{Hex:Ri,Latin1:Vi,Utf8:Bi,Utf16:Co,Utf16BE:bo,Utf16LE:xo,Base64:Ji},algo:{HMAC:Zi,MD5:io,SHA1:ko,SHA224:$o,SHA256:Fo,SHA384:Go,SHA512:Vo,SHA3:en,RIPEMD160:fn,PBKDF2:bn,EvpKDF:so,AES:Dn,DES:Hn,TripleDES:Zn,Rabbit:Qn,RabbitLegacy:ns,RC4:as,RC4Drop:cs},mode:{CBC:ho,CFB:us,CTR:ps,CTRGladman:ms,ECB:gs,OFB:fs},pad:{Pkcs7:uo,AnsiX923:{pad(t,e){const i=t,o=i.sigBytes,n=4*e,s=n-o%n,r=o+s-1;i.clamp(),i.words[r>>>2]|=s<<24-r%4*8,i.sigBytes+=s},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Iso10126:ws,Iso97971:bs,NoPadding:{pad(){},unpad(){}},ZeroPadding:ys},format:{OpenSSL:mo,Hex:Cs},kdf:{OpenSSL:fo},MD5:oo,HmacMD5:no,SHA1:So,HmacSHA1:Mo,SHA224:Uo,HmacSHA224:zo,SHA256:Do,HmacSHA256:jo,SHA384:Zo,HmacSHA384:Ko,SHA512:Bo,HmacSHA512:Ho,SHA3:on,HmacSHA3:nn,RIPEMD160:wn,HmacRIPEMD160:yn,PBKDF2:(t,e,i)=>bn.create(i).compute(t,e),EvpKDF:(t,e,i)=>so.create(i).compute(t,e),AES:jn,DES:Gn,TripleDES:Kn,Rabbit:Xn,RabbitLegacy:ss,RC4:ls,RC4Drop:ds};const Es=(t,e,i=!1,o="localStorage")=>{try{const n=i?btoa(e):e;"localStorage"===o?localStorage.setItem(t,n):sessionStorage.setItem(t,n)}catch(t){console.warn("Error in setLocalStorage: ",t),Us("Error in setLocalStorage: ",t)}},ks=(t,e=!1,i="localStorage")=>{try{let o=null;return o="localStorage"===i?localStorage.getItem(t):sessionStorage.getItem(t),o&&e?atob(o):o}catch(t){return console.warn("Error in getLocalStorage: ",t),Us("Error in getLocalStorage: ",t),null}},Ss=(t,e="localStorage")=>{try{"localStorage"===e?localStorage.removeItem(t):sessionStorage.removeItem(t)}catch(t){console.warn("Error in removeLocalStorageData: ",t),Us("Error in removeLocalStorageData: ",t)}},Ms=(...t)=>{if(t)switch(t.length){case 1:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1))`;case 2:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))`;case 3:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
908
+ class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o=this._cipher,{blockSize:n}=o,s=this._iv;let r=this._counter;s&&(this._counter=s.slice(0),r=this._counter,this._iv=void 0),(t=>{const e=t;e[0]=vs(e[0]),0===e[0]&&(e[1]=vs(e[1]))})(r);const a=r.slice(0);o.encryptBlock(a,0);for(let t=0;t<n;t+=1)i[e+t]^=a[t]}},ms.Decryptor=ms.Encryptor;class gs extends lo{}gs.Encryptor=class extends gs{processBlock(t,e){this._cipher.encryptBlock(t,e)}},gs.Decryptor=class extends gs{processBlock(t,e){this._cipher.decryptBlock(t,e)}};class fs extends lo{}fs.Encryptor=class extends fs{processBlock(t,e){const i=t,o=this._cipher,{blockSize:n}=o,s=this._iv;let r=this._keystream;s&&(this._keystream=s.slice(0),r=this._keystream,this._iv=void 0),o.encryptBlock(r,0);for(let t=0;t<n;t+=1)i[e+t]^=r[t]}},fs.Decryptor=fs.Encryptor;const ws={pad(t,e){const i=4*e,o=i-t.sigBytes%i;t.concat(Pi.random(o-1)).concat(Pi.create([o<<24],1))},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},ys={pad(t,e){const i=t,o=4*e;i.clamp(),i.sigBytes+=o-(t.sigBytes%o||o)},unpad(t){const e=t,i=e.words;for(let t=e.sigBytes-1;t>=0;t-=1)if(i[t>>>2]>>>24-t%4*8&255){e.sigBytes=t+1;break}}},bs={pad(t,e){t.concat(Pi.create([2147483648],1)),ys.pad(t,e)},unpad(t){const e=t;ys.unpad(e),e.sigBytes-=1}},Cs={stringify:t=>t.ciphertext.toString(Ri),parse(t){const e=Ri.parse(t);return vo.create({ciphertext:e})}};var xs={lib:{Base:zi,WordArray:Pi,BufferedBlockAlgorithm:Hi,Hasher:Gi,Cipher:ro,StreamCipher:ao,BlockCipherMode:lo,BlockCipher:po,CipherParams:vo,SerializableCipher:go,PasswordBasedCipher:wo},x64:{Word:Ki,WordArray:Yi},enc:{Hex:Ri,Latin1:Vi,Utf8:Bi,Utf16:Co,Utf16BE:bo,Utf16LE:xo,Base64:Ji},algo:{HMAC:Zi,MD5:io,SHA1:ko,SHA224:$o,SHA256:Fo,SHA384:Go,SHA512:Vo,SHA3:en,RIPEMD160:fn,PBKDF2:bn,EvpKDF:so,AES:Dn,DES:Hn,TripleDES:Zn,Rabbit:Qn,RabbitLegacy:ns,RC4:as,RC4Drop:cs},mode:{CBC:ho,CFB:us,CTR:ps,CTRGladman:ms,ECB:gs,OFB:fs},pad:{Pkcs7:uo,AnsiX923:{pad(t,e){const i=t,o=i.sigBytes,n=4*e,s=n-o%n,r=o+s-1;i.clamp(),i.words[r>>>2]|=s<<24-r%4*8,i.sigBytes+=s},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Iso10126:ws,Iso97971:bs,NoPadding:{pad(){},unpad(){}},ZeroPadding:ys},format:{OpenSSL:mo,Hex:Cs},kdf:{OpenSSL:fo},MD5:oo,HmacMD5:no,SHA1:So,HmacSHA1:Mo,SHA224:Uo,HmacSHA224:zo,SHA256:Do,HmacSHA256:jo,SHA384:Zo,HmacSHA384:Wo,SHA512:Bo,HmacSHA512:Ho,SHA3:on,HmacSHA3:nn,RIPEMD160:wn,HmacRIPEMD160:yn,PBKDF2:(t,e,i)=>bn.create(i).compute(t,e),EvpKDF:(t,e,i)=>so.create(i).compute(t,e),AES:jn,DES:Gn,TripleDES:Wn,Rabbit:Xn,RabbitLegacy:ss,RC4:ls,RC4Drop:ds};const Es=(t,e,i=!1,o="localStorage")=>{try{const n=i?btoa(e):e;"localStorage"===o?localStorage.setItem(t,n):sessionStorage.setItem(t,n)}catch(t){console.warn("Error in setLocalStorage: ",t),Us("Error in setLocalStorage: ",t)}},ks=(t,e=!1,i="localStorage")=>{try{let o=null;return o="localStorage"===i?localStorage.getItem(t):sessionStorage.getItem(t),o&&e?atob(o):o}catch(t){return console.warn("Error in getLocalStorage: ",t),Us("Error in getLocalStorage: ",t),null}},Ss=(t,e="localStorage")=>{try{"localStorage"===e?localStorage.removeItem(t):sessionStorage.removeItem(t)}catch(t){console.warn("Error in removeLocalStorageData: ",t),Us("Error in removeLocalStorageData: ",t)}},Ms=(...t)=>{if(t)switch(t.length){case 1:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1))`;case 2:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))`;case 3:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
909
909
  calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1))`;case 4:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
910
910
  calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[3]}rem * var(--snippyly-base-rem-unit, 1))`}return r`0`},_s=(t,e,i)=>{try{const o=xs.enc.Utf8.parse(e),n=xs.enc.Utf8.parse(i);return xs.AES.encrypt(xs.enc.Utf8.parse(t),o,{keySize:32,iv:n,mode:xs.mode.CBC,padding:xs.pad.Pkcs7}).toString()}catch(e){return console.warn("Error in encrypt: ",e),Us("Error in encrypt: ",e),t}},Ns=(t,e,i)=>{try{const o=xs.enc.Utf8.parse(e),n=xs.enc.Utf8.parse(i);return xs.AES.decrypt(t,o,{keySize:32,iv:n,mode:xs.mode.CBC,padding:xs.pad.Pkcs7}).toString(xs.enc.Utf8)}catch(t){return console.warn("Error in decrypt: ",t),Us("Error in decrypt: ",t),null}},Ts=()=>{try{const t=ks("_sfut",!0);if(t){const e=Ns(t,ut,pt);if(e)return JSON.parse(e);console.warn("Error in getUserFromToken: ","Invalid token."),Ss("_sfut")}else{const t=ks("snippyly-user",!0);if(t)return Is(),JSON.parse(t)}return null}catch(t){return console.warn("Error in getUserFromToken: ",t),Us("Error in getUserFromToken: ",t),null}},Is=()=>{try{const t=ks("snippyly-user",!0);if(t){const e=_s(t,ut,pt);Es("_sfut",e,!0)}Ss("snippyly-user")}catch(t){console.warn("Error in moveSnippylyUserToST: ",t),Us("Error in moveSnippylyUserToST: ",t)}},Ls=(t=!0)=>{try{const e=ks("_sfgut",!0);if(e){const t=Ns(e,ut,pt);return t?JSON.parse(t):null}if(t){const t=ct,e=t[Math.floor(Math.random()*t.length)],i=e.name,o=e.photoUrl,n={name:i,email:"guest@usesuperflow.com",userId:Math.floor(1e9*Math.random())+"",photoUrl:o,isGuest:!0},s=JSON.stringify(n),r=_s(s,ut,pt);return Es("_sfgut",r,!0),n}return null}catch(t){return console.warn("Error in getGuestUser: ",t),Us("Error in getGuestUser: ",t),null}},As=t=>{try{const e=t?JSON.stringify(t):"false";Es("sfCustomerMetadata",e)}catch(t){console.warn("Error in setCustomerMetadataToStorage: ",t),Us("Error in setCustomerMetadataToStorage: ",t)}},Os=function(t=function(t="[DEFAULT]"){const e=fe.get(t);if(!e&&"[DEFAULT]"===t)return Ee();if(!e)throw Ce.create("no-app",{appName:t});return e}(),e="us-central1"){const i=function(t,e){const i=t.container.getProvider("heartbeat").getImmediate({optional:!0});return i&&i.triggerHeartbeat(),t.container.getProvider(e)}(Rt(t),"functions"),o=i.getImmediate({identifier:e}),n=Lt("functions");return n&&function(t,e,i){!function(t,e,i){t.emulatorOrigin=`http://${e}:${i}`}(Rt(t),e,i)}(o,...n),o}(Ee({apiKey:"AIzaSyAzcW2n1JhY_zhkXmuFcwe550AkwmYeJ0w",projectId:"snipply-sdk-staging",messagingSenderId:"877538579326",appId:"1:877538579326:web:f793f73f2b7dc770c4992f"}));let Fs,Ds={};const js=(t={})=>{Ds={...Ds,...t}},$s=t=>{Fs=t},Us=(t,e,i={})=>{const o={error:t,message:(null==e?void 0:e.message)||e||t,...i};zs("error",o)},zs=(t,e={},i=!0)=>{try{if(null==Fs?void 0:Fs.userSnippylyId){e=i?{...Ds,...e}:e,e={...e,source:"superflowToolbar"};const o={userId:null==Fs?void 0:Fs.userSnippylyId,event:t,properties:e,sf:!0};Ps("track",o)}else console.warn("Untracked event: ",t,e)}catch(t){console.warn("Error in trackEvent: ",t)}},Ps=(t,e)=>{try{Ge(Os,vt)({type:t,data:e})}catch(t){console.warn("Error in setAnalytics: ",t)}},Rs=async(t,e,i,o,n)=>{try{const s=Ge(Os,yt),r=await s({apiKey:t,projectId:e,oldUser:i,newUser:o,deleteGuestUserFlag:n});return null==r?void 0:r.data}catch(t){return console.warn("Error in usermigration: ",t),null}},Vs=r`
911
911
 
@@ -2415,13 +2415,13 @@ class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o
2415
2415
  display: flex;
2416
2416
  }
2417
2417
  }
2418
- `;navigator.language.split("-")[0];const Hs=new Map;Hs.set("es",{Comment:"Comentario","Commenting is disabled. Contact admin.":"Los comentarios están deshabilitados. Póngase en contacto con el administrador.","Arrow feature is disabled. Contact admin.":"La función de flecha está desactivada. Póngase en contacto con el administrador.","All Comments":"Todos los comentarios","Signing In":"Iniciando sesión","Sign in again!":"¡Inicia sesión de nuevo!","Sign in to comment":"Inicia sesión para comentar",Superflow:"Superflujo","Sign in to comment on this page.":"Inicia sesión para comentar en esta página.","Join Community":"Únete a la comunidad","Open in Mobile":"Abrir en móvil","Exit Review Mode":"Salir del modo de revisión","Sign in":"Iniciar sesión","Try Superflow using the toolbar below.":"Prueba Superflujo usando la barra de herramientas de abajo.","Get ready to drop your first comment!":"¡Prepárate para dejar tu primer comentario!","But before you do that, you definitely deserve a high five!":"¡Pero antes de eso, definitivamente mereces un choca esos cinco!",Done:"Hecho","Sign in on the toolbar below and add":"Inicia sesión en la barra de herramientas de abajo y añade","comments on the design flaws.":"comentarios sobre los defectos de diseño.","Click to add comments on this page.":"Haz clic para añadir comentarios en esta página.",Ok:"Ok",Arrow:"Flecha","Live Huddle":"Encuentro en vivo",Recording:"Grabación","Open Comments":"Abrir comentarios",Views:"Vistas",Internal:"Interno",External:"Externo",All:"Todos",Upgrade:"Actualizar","You don't have access.":"No tienes acceso.","Reach out to the admin of this project.":"Contacta al administrador de este proyecto.","Your plan has expired! Please upgrade.":"¡Tu plan ha caducado! Por favor, actualiza.","Your plan has expired!":"¡Tu plan ha caducado!","Please contact the admin.":"Por favor, contacta al administrador.",Share:"Compartir","Add comments & recordings on this page.":"Añade comentarios y grabaciones en esta página.","Learn more":"Aprender más","View project":"Ver proyecto","Sign Out":"Cerrar sesión","You’re a SuperFlow installation wizard!":"¡Eres un mago de la instalación de Superflujo!",Next:"Siguiente"}),Hs.set("fr",{Comment:"Commentaire","Commenting is disabled. Contact admin.":"Les commentaires sont désactivés. Contactez l'administrateur.","Arrow feature is disabled. Contact admin.":"La fonction flèche est désactivée. Contactez l'administrateur.","All Comments":"Tous les commentaires","Signing In":"Connexion en cours","Sign in again!":"Connectez-vous à nouveau!","Sign in to comment":"Connectez-vous pour commenter",Superflow:"Superflux","Sign in to comment on this page.":"Connectez-vous pour commenter sur cette page.","Join Community":"Rejoindre la communauté","Open in Mobile":"Ouvrir sur mobile","Exit Review Mode":"Quitter le mode de révision","Sign in":"Se connecter","Try Superflow using the toolbar below.":"Essayez Superflux en utilisant la barre d'outils ci-dessous.","Get ready to drop your first comment!":"Préparez-vous à laisser votre premier commentaire!","But before you do that, you definitely deserve a high five!":"Mais avant cela, vous méritez certainement un tope-là!",Done:"Terminé","Sign in on the toolbar below and add":"Connectez-vous sur la barre d'outils ci-dessous et ajoutez","comments on the design flaws.":"des commentaires sur les défauts de conception.","Click to add comments on this page.":"Cliquez pour ajouter des commentaires sur cette page.",Ok:"Ok",Arrow:"Flèche","Live Huddle":"Discussion en direct",Recording:"Enregistrement","Open Comments":"Ouvrir les commentaires",Views:"Vues",Internal:"Interne",External:"Externe",All:"Tous",Upgrade:"Mettre à jour","You don't have access.":"Vous n'avez pas accès.","Reach out to the admin of this project.":"Contactez l'administrateur de ce projet.","Your plan has expired! Please upgrade.":"Votre plan a expiré! Veuillez mettre à jour.","Your plan has expired!":"Votre plan a expiré!","Please contact the admin.":"Veuillez contacter l'administrateur.",Share:"Partager","Add comments & recordings on this page.":"Ajoutez des commentaires et des enregistrements sur cette page.","Learn more":"En savoir plus","View project":"Voir le projet","Sign Out":"Se déconnecter","You’re a SuperFlow installation wizard!":"Vous êtes un sorcier d'installation de Superflux!",Next:"Suivant"}),Hs.set("hi",{Comment:"टिप्पणी","Commenting is disabled. Contact admin.":"टिप्पणी करना अक्षम है. व्यवस्थापक से संपर्क करें.","Arrow feature is disabled. Contact admin.":"तीर सुविधा अक्षम है. व्यवस्थापक से संपर्क करें.","All Comments":"सभी टिप्पणियाँ","Signing In":"साइन इन कर रहा है","Sign in again!":"फिर से साइन इन करें!","Sign in to comment":"टिप्पणी करने के लिए साइन इन करें",Superflow:"सुपरफ्लो","Sign in to comment on this page.":"इस पृष्ठ पर टिप्पणी करने के लिए साइन इन करें।","Join Community":"समुदाय में शामिल हों","Open in Mobile":"मोबाइल में खोलें","Exit Review Mode":"समीक्षा मोड से बाहर निकलें","Sign in":"साइन इन करें","Try Superflow using the toolbar below.":"टूलबार का उपयोग करके सुपरफ्लो का प्रयास करें।","Get ready to drop your first comment!":"अपनी पहली टिप्पणी डालने के लिए तैयार हो जाओ!","But before you do that, you definitely deserve a high five!":"लेकिन इससे पहले, आपको निश्चित रूप से एक उच्च पांच मिलता है!",Done:"किया हुआ","Sign in on the toolbar below and add":"टूलबार पर साइन इन करें और जोड़ें","comments on the design flaws.":"डिज़ाइन की खामियों पर टिप्पणियाँ।","Click to add comments on this page.":"इस पृष्ठ पर टिप्पणियाँ जोड़ने के लिए क्लिक करें।",Ok:"ठीक",Arrow:"तीर","Live Huddle":"लाइव हडल",Recording:"रेकॉर्डिंग","Open Comments":"टिप्पणियाँ खोलें",Views:"दृश्य",Internal:"आंतरिक",External:"बाहरी",All:"सब",Upgrade:"अपग्रेड","You don't have access.":"आपके पास पहुंच नहीं है।","Reach out to the admin of this project.":"इस परियोजना के व्यवस्थापक से संपर्क करें।","Your plan has expired! Please upgrade.":"आपकी योजना समाप्त हो गई है! कृपया अपग्रेड करें।","Your plan has expired!":"आपकी योजना समाप्त हो गई है!","Please contact the admin.":"कृपया व्यवस्थापक से संपर्क करें।",Share:"शेयर","Add comments & recordings on this page.":"इस पृष्ठ पर टिप्पणियाँ और रिकॉर्डिंग जोड़ें।","Learn more":"और अधिक जानें","View project":"परियोजना देखें","Sign Out":"साइन आउट","You’re a SuperFlow installation wizard!":"आप एक सुपरफ्लो स्थापना विज़ार्ड हैं!",Next:"आगामी"}),Hs.set("it",{Comment:"Commento","Commenting is disabled. Contact admin.":"I commenti sono disabilitati. Contatta l'amministratore.","Arrow feature is disabled. Contact admin.":"La funzione freccia è disabilitata. Contatta l'amministratore.","All Comments":"Tutti i commenti","Signing In":"Accesso in corso","Sign in again!":"Accedi di nuovo!","Sign in to comment":"Accedi per commentare",Superflow:"Superflusso","Sign in to comment on this page.":"Accedi per commentare su questa pagina.","Join Community":"Unisciti alla comunità","Open in Mobile":"Apri su mobile","Exit Review Mode":"Esci dalla modalità di revisione","Sign in":"Accedi","Try Superflow using the toolbar below.":"Prova Superflusso utilizzando la barra degli strumenti qui sotto.","Get ready to drop your first comment!":"Preparati a lasciare il tuo primo commento!","But before you do that, you definitely deserve a high five!":"Ma prima di farlo, meriti sicuramente un cinque in alto!",Done:"Fatto","Sign in on the toolbar below and add":"Accedi alla barra degli strumenti qui sotto e aggiungi","comments on the design flaws.":"commenti sui difetti di progettazione.","Click to add comments on this page.":"Clicca per aggiungere commenti su questa pagina.",Ok:"Ok",Arrow:"Freccia","Live Huddle":"Riunione dal vivo",Recording:"Registrazione","Open Comments":"Apri commenti",Views:"Visualizzazioni",Internal:"Interno",External:"Esterno",All:"Tutti",Upgrade:"Aggiorna","You don't have access.":"Non hai accesso.","Reach out to the admin of this project.":"Contatta l'amministratore di questo progetto.","Your plan has expired! Please upgrade.":"Il tuo piano è scaduto! Si prega di aggiornare.","Your plan has expired!":"Il tuo piano è scaduto!","Please contact the admin.":"Si prega di contattare l'amministratore.",Share:"Condividi","Add comments & recordings on this page.":"Aggiungi commenti e registrazioni su questa pagina.","Learn more":"Scopri di più","View project":"Visualizza progetto","Sign Out":"Disconnetti","You’re a SuperFlow installation wizard!":"Sei un mago dell'installazione di Superflusso!",Next:"Avanti"}),Hs.set("ru",{Comment:"Комментарий","Commenting is disabled. Contact admin.":"Комментирование отключено. Свяжитесь с админом.","Arrow feature is disabled. Contact admin.":"Функция стрелки отключена. Свяжитесь с администратором.","All Comments":"Все комментарии","Signing In":"Вход в систему","Sign in again!":"Войдите снова!","Sign in to comment":"Войдите, чтобы оставить комментарий",Superflow:"Суперпоток","Sign in to comment on this page.":"Войдите, чтобы оставить комментарий на этой странице.","Join Community":"Присоединиться к сообществу","Open in Mobile":"Открыть на мобильном","Exit Review Mode":"Выйти из режима обзора","Sign in":"Войти","Try Superflow using the toolbar below.":"Попробуйте Суперпоток, используя панель инструментов ниже.","Get ready to drop your first comment!":"Приготовьтесь оставить свой первый комментарий!","But before you do that, you definitely deserve a high five!":"Но перед этим вы определенно заслуживаете пять!",Done:"Сделано","Sign in on the toolbar below and add":"Войдите на панели инструментов ниже и добавьте","comments on the design flaws.":"комментарии об ошибках в дизайне.","Click to add comments on this page.":"Нажмите, чтобы добавить комментарии на этой странице.",Ok:"Ок",Arrow:"Стрелка","Live Huddle":"Прямой сбор",Recording:"Запись","Open Comments":"Открыть комментарии",Views:"Просмотры",Internal:"Внутренний",External:"Внешний",All:"Все",Upgrade:"Обновить","You don't have access.":"У вас нет доступа.","Reach out to the admin of this project.":"Обратитесь к администратору этого проекта.","Your plan has expired! Please upgrade.":"Ваш план истек! Пожалуйста, обновите.","Your plan has expired!":"Ваш план истек!","Please contact the admin.":"Пожалуйста, свяжитесь с администратором.",Share:"Поделиться","Add comments & recordings on this page.":"Добавьте комментарии и записи на этой странице.","Learn more":"Узнать больше","View project":"Посмотреть проект","Sign Out":"Выйти","You’re a SuperFlow installation wizard!":"Вы волшебник установки Суперпотока!",Next:"Далее"}),Hs.set("uk",{Comment:"Коментар","Commenting is disabled. Contact admin.":"Коментування вимкнено. Зв'язатися з адміном.","Arrow feature is disabled. Contact admin.":"Функція стрілки вимкнена. Зв'язатися з адміном.","All Comments":"Всі коментарі","Signing In":"Увійти в систему","Sign in again!":"Увійдіть знову!","Sign in to comment":"Увійдіть, щоб залишити коментар",Superflow:"Суперпотік","Sign in to comment on this page.":"Увійдіть, щоб залишити коментар на цій сторінці.","Join Community":"Приєднатися до спільноти","Open in Mobile":"Відкрити на мобільному","Exit Review Mode":"Вийти з режиму огляду","Sign in":"Увійти","Try Superflow using the toolbar below.":"Спробуйте Суперпотік, використовуючи панель інструментів нижче.","Get ready to drop your first comment!":"Приготуйтеся залишити свій перший коментар!","But before you do that, you definitely deserve a high five!":"Але перед тим, як ви це зробите, ви точно заслуговуєте на високу п'ятірку!",Done:"Готово","Sign in on the toolbar below and add":"Увійдіть в панель інструментів нижче і додайте","comments on the design flaws.":"коментарі про помилки в дизайні.","Click to add comments on this page.":"Натисніть, щоб додати коментарі на цій сторінці.",Ok:"Добре",Arrow:"Стрілка","Live Huddle":"Пряма група",Recording:"Запис","Open Comments":"Відкрити коментарі",Views:"Перегляди",Internal:"Внутрішній",External:"Зовнішній",All:"Все",Upgrade:"Оновити","You don't have access.":"У вас немає доступу.","Reach out to the admin of this project.":"Зверніться до адміністратора цього проекту.","Your plan has expired! Please upgrade.":"Термін дії вашого плану закінчився! Будь ласка, оновіть.","Your plan has expired!":"Термін дії вашого плану закінчився!","Please contact the admin.":"Будь ласка, зв'яжіться з адміністратором.",Share:"Поділитися","Add comments & recordings on this page.":"Додайте коментарі та записи на цій сторінці.","Learn more":"Дізнатися більше","View project":"Переглянути проект","Sign Out":"Вийти","You’re a SuperFlow installation wizard!":"Ви чарівник встановлення Суперпотоку!",Next:"Далі"});const Gs=t=>{try{return t}catch(e){return t}};class Zs{}Zs.Events={GUEST_MODE_SIGN_IN_DIALOG_SHOWN:"guestModeSignInDialogShown",GUEST_MODE_NAME_DIALOG_SHOWN:"guestModeNameDialogShown",GUEST_MODE_SIGN_IN_BANNER_SHOWN:"guestModeSignInBannerShown",GUEST_MODE_SIGN_IN_BUTTON_CLICKED:"guestModeSignInButtonClicked",GUEST_MODE_SKIP_BUTTON_CLICKED:"guestModeSkipButtonClicked",GUEST_MODE_NAME_ADDED:"guestModeNameAdded",TOOLBAR_NOTIFICATION_CLICKED:"toolbarNotificationClicked",PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED:"passwordProtectedModalCloseButtonClicked",PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED:"passwordProtectedModalOpenButtonClicked"};var Ks=function(t,e,i,o){for(var n,s=arguments.length,r=s<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o,a=t.length-1;a>=0;a--)(n=t[a])&&(r=(s<3?n(r):s>3?n(e,i,r):n(e,i))||r);return s>3&&r&&Object.defineProperty(e,i,r),r};class Ys extends Q{constructor(){super(),this._loadPlugin=!1,this.comments=[],this.addCommentMode=!1,this.showTourCommentTooltip=!1,this.allFeatureDisabled=!1,this.allFeatureRestricted=!1,this.guestMode=!1,this._expanded=!0,this.loading=!0,this._isPlanExpired=null,this.showOnboardingModal=!0,this.showLiveDemoModal=!1,this.showFigmaDemoModal=!1,this.showGuestModeSignInModal=!1,this.defaultGuestModeSignInModalConfig={title:"Sign in to notify your team",description:"Notify your team about your latest comments.",closeOnClickOutside:!1,showLeaveCommentButton:!0},this.guestModeSignInModalConfig=JSON.parse(JSON.stringify(this.defaultGuestModeSignInModalConfig)),this.showGuestModeNameModal=!1,this.guestModeSignInBannerVisible=!1,this.guestUserNameInput="",this.guestUserModelOpened=!1,this.guestUserNameUpdated=!1,this.guestUserNameUpdateLoading=!1,this.staging=true,this._autoLocation=!0,this.copyLinkTooltip="Copy Link",this.invalidApiKey=!1,this._isUserGlobalContact=!1,this.showQrCode=!1,this.customLoginEnabledLocally=null,this.customLoginEnabled=null,this.exitReviewModeCalled=!1,this.addCommentCount=0,this._privateCommentModeEnabled=!1,this.superflowToolbarMoved=!1,this._darkMode=!1,this.allowGuestModeSignIn=!0,this.toolbarEnabled=!1,this.passwordProtected=!1,this.isPasswordValid=!1,this.password="",this.validatingPasswordLoading=!1,this.showPasswordProtectedModal=!0,this.showInvalidPassword=!1,this.subscriptions=[],this.onApiKeyChange=()=>{try{this.apiKey&&(null===window||void 0===window?void 0:window.onSuperflowLoad)&&"function"==typeof window.onSuperflowLoad&&window.onSuperflowLoad()}catch(t){console.warn("Error in onApiKeyChange: ",t),Us("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await(t=>{const e={apiKey:t};return Ge(Os,bt)(e)})(this.apiKey);this.customLoginEnabled=!!(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.customLoginEnabled),this.customLoginEnabled&&this.loginWithCustomUser()}catch(t){this.customLoginEnabled=!1,console.warn("Error in checkCustomLoginEnabled: ",t),Us("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(Ss("_sfut"),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),Us("Error in loginWithCustomUser: ",t)}},this.addWindowClickEventListener=()=>{try{this.windowClickEventListener||(this.windowClickEventListener=()=>{this.menuOpenedId&&(this.menuOpenedId=void 0)},window.addEventListener("click",this.windowClickEventListener))}catch(t){console.warn("Error in addWindowClickEventListener: ",t),Us("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),Us("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),Us("Error in setWindowEventListner: ",t)}},this.urlChangeListener=()=>{try{const t=history.pushState;history.pushState=function(){const e=t.apply(this,arguments);return window.dispatchEvent(new Event("pushstate")),window.dispatchEvent(new Event("locationchange")),e};const e=history.replaceState;history.replaceState=function(){const t=e.apply(this,arguments);return window.dispatchEvent(new Event("replacestate")),window.dispatchEvent(new Event("locationchange")),t},window.addEventListener("popstate",(()=>{window.dispatchEvent(new Event("locationchange"))}))}catch(t){console.warn("Error in urlChangeListener: ",t),Us("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{const t=new URL(document.location),e=t.searchParams;if((null==e?void 0:e.has("sprojectInstall"))&&!ks("sprojectInstall")?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has("sflivedemo"))if(ks("sflivedemo",!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showLiveDemoModal=!0;else this.showLiveDemoModal=!1;if(null==e?void 0:e.has("sffigmademo"))if(ks("sffigmademo",!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showFigmaDemoModal=!0;else this.showFigmaDemoModal=!1;if(e.has("st")||e.has("snippyly_google_token")){if(e.has("st")){const t=decodeURIComponent(e.get("st")),i=Ns(t,ut,pt),o=i&&JSON.parse(i);if(o){const t={};t.userId=o.uid,t.name=o.displayName,t.email=o.email,t.photoUrl=null==o?void 0:o.photoURL;const e=JSON.stringify(t),i=_s(e,ut,pt);Es("_sfut",i,!0),Ss("sfUserAdmin")}}else if(e.has("snippyly_google_token")){const t=JSON.parse(atob(e.get("snippyly_google_token"))),i={};i.userId=t.uid,i.name=t.displayName,i.email=t.email,i.photoUrl=null==t?void 0:t.photoURL,Es("snippyly-user",JSON.stringify(i),!0)}e.delete("st"),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has("review")?(Es("review","true",!1),Ss("feedback"),e.delete("review"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has("feedback")||ks("review",!1)&&this.loadPluginUI(),e.has("feedback")?(Es("feedback","true",!1),Ss("review"),e.delete("feedback"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has("review")||ks("feedback",!1)&&this.loadPluginUI(),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),Us("Error in checkUrl: ",t)}},this.detectVersion=()=>{try{if(this.projectVersionKey){const t=new URL(document.location).searchParams;if(t.get(this.projectVersionKey))this.projectVersion=t.get(this.projectVersionKey);else if(window.snippylyInitialLoadUrl){const t=new URL(window.snippylyInitialLoadUrl).searchParams;t.get(this.projectVersionKey)&&(this.projectVersion=t.get(this.projectVersionKey))}this.projectVersion&&Es("projectVersion",this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has("review")||t.has("feedback"))&&t.has("sversion")&&(Es("projectVersionKey","sversion",!1,"sessionStorage"),this.projectVersion=t.get("sversion"),this.projectVersion&&Es("projectVersion",this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),Us("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||ks("projectVersionKey",!1,"sessionStorage"),e=this.projectVersion||ks("projectVersion",!1,"sessionStorage");if(t&&e){const i=new URL(document.location),o=i.searchParams;o.get(t)||(o.set(t,e),window.history.replaceState({},document.title,i.href))}}catch(t){console.warn("Error in setVersionInUrl: ",t),Us("Error in setVersionInUrl: ",t)}},this.loadPluginUI=async()=>{var t,e,i,o,n,s;try{if(!this.apiKey)return;if(this.loadPlugin)return this.generateLocation(),void this.setLocation();const r=Ts();if(r&&!(null==r?void 0:r.isAnonymous)&&(this.loading=!0),null===(t=this.getCustomerMetadata())||void 0===t||t.then((t=>{this.customerMetadata=t})).catch((t=>{console.warn("Error in getCustomerMetadata: ",t),Us("Error in getCustomerMetadata: ",t)})),ks("sfGuestMode",!0)&&ks("sfGuestModeAllowSignIn",!0)&&ks("sfPasswordProtected",!0)?(this.guestMode="true"===ks("sfGuestMode",!0),this.allowGuestModeSignIn="true"===ks("sfGuestModeAllowSignIn",!0),this.passwordProtected="true"===ks("sfPasswordProtected",!0)):(this.projectConfig=await(async(t,e)=>{try{const i=Ge(Os,Ct),o=await i({apiKey:t,projectId:e});return null==o?void 0:o.data}catch(t){return console.warn("Error in getProjectConfig: ",t),null}})(this.apiKey,this.projectId),this.guestMode=!!(null===(e=this.projectConfig)||void 0===e?void 0:e.guestMode),this.allowGuestModeSignIn=!!(null===(o=null===(i=this.projectConfig)||void 0===i?void 0:i.guestModeConfig)||void 0===o?void 0:o.allowSignIn),this.passwordProtected=!!(null===(s=null===(n=this.projectConfig)||void 0===n?void 0:n.passwordProtected)||void 0===s?void 0:s.enabled),Es("sfGuestMode",this.guestMode+"",!0),Es("sfGuestModeAllowSignIn",this.allowGuestModeSignIn+"",!0),Es("sfPasswordProtected",this.passwordProtected+"",!0)),this.loadPlugin=!0,!document.querySelector(rt.VELT_COMMENTS)){const t=document.createElement(rt.VELT_COMMENTS);null==t||t.addEventListener("onSignIn",(()=>{this.loginWithGoogle()})),null==t||t.addEventListener("onUpgrade",(()=>{this.onUpgradePlanClick()})),this.staging&&(t.addEventListener("onCommentAdd",(t=>{console.log("Comment added: ",null==t?void 0:t.detail),this.addCommentCount++})),t.addEventListener("onCommentUpdate",(t=>{var e,i;console.log("Comment updated: ",t.detail),(null===(e=this.snippylyUser)||void 0===e?void 0:e.isGuest)&&"add"===(null===(i=null==t?void 0:t.detail)||void 0===i?void 0:i.type)&&(this.addCommentCount>=2&&!ks("sfGuestUserModelOpened")&&(this.openGuestModeSignInModal(),Es("sfGuestUserModelOpened","true")),this.addCommentCount>=5&&!ks("sfGuestUserBannerOpened",!1,"sessionStorage")&&(this.showGuestModeSignInBanner(),Es("sfGuestUserBannerOpened","true",!1,"sessionStorage")))}))),window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_CURSOR)){const t=document.createElement(rt.VELT_CURSOR);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_HUDDLE)){const t=document.createElement(rt.VELT_HUDDLE);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_RECORDER_NOTES)){const t=document.createElement(rt.VELT_RECORDER_NOTES);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_RECORDER_CONTROL_PANEL)){const t=document.createElement(rt.VELT_RECORDER_CONTROL_PANEL);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_ARROWS)){const t=document.createElement(rt.VELT_ARROWS);window.document.body.appendChild(t)}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),Us("Error in loadPluginUI: ",t)}},this.initializeSnippyly=async()=>{var t,i,o,n,s,r,a,l,c,d,h,u,p,v,m,g;try{if(await e(this.apiKey,{options:{develop:this.staging,version:this.staging?"1.0.322":"latest",velt:!0}}),!window.Snippyly)return;if(this.autoTranslation&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.enableAutoTranslation)&&(null===Snippyly||void 0===Snippyly||Snippyly.enableAutoTranslation()),!document.querySelector(rt.VELT_COMMENTS_SIDEBAR)){const t=document.createElement(rt.VELT_COMMENTS_SIDEBAR);t.setAttribute(at.ENABLE_URL_NAVIGATION,"true"),t.setAttribute(at.CURRENT_LOCATION_SUFFIX,"true"),window.document.body.appendChild(t)}if(Snippyly){null===Snippyly||void 0===Snippyly||Snippyly.sf(!0);try{(null===window||void 0===window?void 0:window.onSnippylyLoad)&&(null===window||void 0===window||window.onSnippylyLoad(Snippyly))}catch(t){}document.body.style.setProperty("--velt-default-font-family","'Poppins', sans-serif"),(()=>{try{if(!document.getElementById("superflowFontLink1")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.googleapis.com",t.id="superflowFontLink1",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink2")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.gstatic.com",t.crossOrigin="anonymous",t.id="superflowFontLink2",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink3")){const t=document.createElement("link");t.rel="stylesheet",t.href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap",t.id="superflowFontLink3",document.head.appendChild(t)}}catch(t){console.warn("Error in loadPoppinsFont: ",t),Us("Error in loadPoppinsFont: ",t)}})()}Snippyly&&js({sdkVersion:null===Snippyly||void 0===Snippyly?void 0:Snippyly.version,sdkType:"client"}),this.documentId=((t,e=0)=>{try{let i=3735928559^e,o=1103547991^e;for(let e,n=0;n<t.length;n++)e=t.charCodeAt(n),i=Math.imul(i^e,2654435761),o=Math.imul(o^e,1597334677);return i=Math.imul(i^i>>>16,2246822507)^Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507)^Math.imul(i^i>>>13,3266489909),4294967296*(2097151&o)+(i>>>0)}catch(t){return console.warn("Error in cyrb53: ",t),Us("Error in cyrb53: ",t),0}})((t=>{let e;return e=t.includes("http")?new URL(t):new URL("http://"+t),e.hostname.replace("www.","")})(window.location.origin))+"",this.projectId&&(this.documentId=this.projectId+""),await(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setDocumentId(this.documentId+""));const f=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();if(js({documentId:f,clientDocumentId:this.documentId}),this.generateLocation(),this.setLocation(),this.commentElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getCommentElement(),this.contactElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getContactElement(),this.rewriterElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getRewriterElement(),this.presenceElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getPresenceElement(),this.commentElement){this.commentElement.enableTextComments(!0),this.customLoginEnabledLocally||this.commentElement.enableSignInButton(!0),this.commentElement.enableAttachments(!0),(null===(t=this.commentElement)||void 0===t?void 0:t.showScreenSizeInfo)&&this.commentElement.showScreenSizeInfo(!0),(null===(i=this.commentElement)||void 0===i?void 0:i.enableDeviceInfo)&&this.commentElement.enableDeviceInfo(!0),this.commentElement.enableCommentIndex(!0),this.commentElement.onCommentModeChange&&this.commentElement.onCommentModeChange().subscribe((t=>{this.addCommentMode=t})),(null===(o=this.commentElement)||void 0===o?void 0:o.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(null===(n=this.commentElement)||void 0===n?void 0:n.enableAutoCategorize)&&this.commentElement.enableAutoCategorize(),(null===(s=this.commentElement)||void 0===s?void 0:s.enablePersistentCommentMode)&&this.commentElement.enablePersistentCommentMode(),(null===(r=this.commentElement)||void 0===r?void 0:r.enableGhostComments)&&this.commentElement.enableGhostComments();const e=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;e&&"object"==typeof e&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatus)&&this.commentElement.setCustomStatus(e),(null===(l=this.commentElement)||void 0===l?void 0:l.enableMinimap)&&this.commentElement.enableMinimap(),(null===(c=this.commentElement)||void 0===c?void 0:c.setDStrategy)&&(null===(d=this.commentElement)||void 0===d||d.setDStrategy("dynamicId")),(null===(h=this.commentElement)||void 0===h?void 0:h.enableSidebarButtonOnCommentDialog)&&this.commentElement.enableSidebarButtonOnCommentDialog(),(null===(u=this.commentElement)||void 0===u?void 0:u.enableHotkey)&&this.commentElement.enableHotkey()}this.selectionElement=Snippyly.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(p=this.rewriterElement)||void 0===p||p.enableRewriter()),this.presenceElement&&(null===(v=this.presenceElement)||void 0===v?void 0:v.enableFlockMode)&&(null===(m=this.presenceElement)||void 0===m||m.enableFlockMode(!0)),null===(g=null===Snippyly||void 0===Snippyly?void 0:Snippyly.docService)||void 0===g||g.getDocumentMetadata$().subscribe((t=>{const e=(null==t?void 0:t.versions)?Object.values(null==t?void 0:t.versions):[],i=new URL(document.location).searchParams.get("version");if(i){const t=e.find((t=>t.versionId===i));t&&(this.version={id:t.versionId,name:t.versionName||t.versionId},this.setLocation())}})),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),Us("Error in initializeSnippyly: ",t)}},this.checkToEnableUpgradeButton=()=>{var t,e;try{this.isPlanExpired&&this.isUserGlobalContact?(null===(t=this.commentElement)||void 0===t?void 0:t.enableUpgradeButton)&&this.commentElement.enableUpgradeButton():(null===(e=this.commentElement)||void 0===e?void 0:e.disableUpgradeButton)&&this.commentElement.disableUpgradeButton()}catch(t){console.warn("Error in checkToEnableUpgradeButton: ",t),Us("Error in checkToEnableUpgradeButton: ",t)}},this.getCustomerMetadata=async()=>{try{let t=(()=>{try{const t=ks("sfCustomerMetadata");return t?"false"===t?JSON.parse(JSON.stringify(lt)):JSON.parse(t):null}catch(t){return console.warn("Error in getCustomerMetadataFromStorage: ",t),Us("Error in getCustomerMetadataFromStorage: ",t),null}})();return t||(t=await(async t=>{try{const e=Ge(Os,ft),i=await e({apiKey:t});return null==i?void 0:i.data}catch(t){return console.warn("Error in getCustomerMetadata: ",t),null}})(this.apiKey),As(t)),t}catch(t){console.warn("Error in getCustomerMetadata: ",t),Us("Error in getCustomerMetadata: ",t)}},this.setLogos=()=>{var t,e,i,o,n,s,r,a,l,c,d,h;try{let u="light";this.privateCommentModeEnabled&&(u="dark");const p=null===(i=null===(e=null===(t=this.customerMetadata)||void 0===t?void 0:t.customBranding)||void 0===e?void 0:e.logo)||void 0===i?void 0:i.logoMark,v=null===(s=null===(n=null===(o=null==dt?void 0:lt)||void 0===o?void 0:o.customBranding)||void 0===n?void 0:n.logo)||void 0===s?void 0:s.logoMark,m=null===(l=null===(a=null===(r=this.customerMetadata)||void 0===r?void 0:r.customBranding)||void 0===a?void 0:a.logo)||void 0===l?void 0:l.wordMark,g=null===(h=null===(d=null===(c=null==dt?void 0:lt)||void 0===c?void 0:c.customBranding)||void 0===d?void 0:d.logo)||void 0===h?void 0:h.wordMark;switch(u){case"light":this.logoMark=(null==p?void 0:p.lightUrl)||(null==p?void 0:p.darkUrl)||(null==v?void 0:v.lightUrl),this.wordMark=(null==m?void 0:m.lightUrl)||(null==m?void 0:m.darkUrl)||(null==g?void 0:g.lightUrl);break;case"dark":this.logoMark=(null==p?void 0:p.darkUrl)||(null==p?void 0:p.lightUrl)||(null==v?void 0:v.darkUrl),this.wordMark=(null==m?void 0:m.darkUrl)||(null==m?void 0:m.lightUrl)||(null==g?void 0:g.darkUrl)}}catch(t){console.warn("Error in setLogos: ",t),Us("Error in setLogos: ",t)}},this.generateLocation=()=>{try{if(this.autoLocation){const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete("review"),e.searchParams.delete("feedback"),e.searchParams.delete("sreviewId"),e.searchParams.delete("scommentId"),e.searchParams.delete("sprojectInstall"),e.searchParams.delete("sflivedemo");const i=t.get("sversion")||this.projectVersion;e.search="";let o=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),Us("Error in removeHashFromUrl: ",e),t}})(e.href);this.projectId&&(o=null==o?void 0:o.replace(window.location.origin,"")),this.location={url:o,version:i}}}catch(t){console.warn("Error in generateLocation: ",t),Us("Error in generateLocation: ",t)}},this.setLocation=()=>{var t,e,i,o;try{if(this.autoLocation&&window.Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setLocation)){if(this.version?(this.location||(this.location={}),this.location.version=this.version):this.location&&delete this.location.version,this.previousLocation&&(null===(t=this.previousLocation)||void 0===t?void 0:t.url)===(null===(e=this.location)||void 0===e?void 0:e.url)&&(null===(i=this.previousLocation)||void 0===i?void 0:i.version)===(null===(o=this.location)||void 0===o?void 0:o.version))return;null===Snippyly||void 0===Snippyly||Snippyly.setLocation(JSON.parse(JSON.stringify(this.location))),js({clientLocation:this.location}),this.previousLocation=JSON.parse(JSON.stringify(this.location))}}catch(t){console.warn("Error in setLocation: ",t),Us("Error in setLocation: ",t)}},this.identifySnippyly=async()=>{var t,e;let i="";try{this.invalidApiKey=!1;let e,o={name:"Anonymous User",email:"anonymous@snippyly.com",userId:"anonymous",isAnonymous:!0};if(e=this.customLoginEnabled&&this.providedUser?this.providedUser:Ts(),(null==e?void 0:e.email)&&(o=e),o.isAnonymous?delete o.groupId:o.groupId=Snippyly.getDocumentId()+"",this.customLoginEnabledLocally||(null===(t=null==o?void 0:o.contacts)||void 0===t?void 0:t.length)&&(o.contacts=[]),i=null==o?void 0:o.email,(null==o?void 0:o.isAnonymous)&&this.projectId&&this.guestMode){const t=Ls();t&&(o=JSON.parse(JSON.stringify(t)))}(null==o?void 0:o.isAnonymous)||(this.loading=!0);const n=await(async(t,e)=>{var i,o;try{const n=Ge(Os,wt),s=await n({apiKey:t,userId:e});return null===(o=null===(i=null==s?void 0:s.data)||void 0===i?void 0:i.data)||void 0===o?void 0:o.token}catch(t){return console.warn("Error in generateSuperflowAuthToken: ",t),null}})(this.apiKey,null==o?void 0:o.userId),s={};n&&(s.authToken=n);const r=await Snippyly.identify(o,s);$s(JSON.parse(JSON.stringify(r||{}))),(null==o?void 0:o.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(o)));const a=JSON.parse(JSON.stringify(r||{}));(null==a?void 0:a.userSnippylyId)&&!(null==a?void 0:a.isGuest)&&this.checkToMigrateGuestUser(a),Snippyly.getUserRole$().subscribe((t=>{var e;this.loading=!1,this.snippylyUserRole=t,null===(e=this.commentElement)||void 0===e||e.enablePriority()})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getFeaturesAccessLevelIam$)&&this.subscriptions.push(Snippyly.getFeaturesAccessLevelIam$().subscribe((async t=>{var e,i,o,n,s,r,a;this.allFeatureDisabled=!!(null===(e=null==t?void 0:t.all)||void 0===e?void 0:e.disabled),this.allFeatureRestricted=!!(null===(i=null==t?void 0:t.all)||void 0===i?void 0:i.restricted),this.guestMode=!!(null===(o=null==t?void 0:t.all)||void 0===o?void 0:o.guestMode),this.allowGuestModeSignIn=!!(null===(s=null===(n=null==t?void 0:t.all)||void 0===n?void 0:n.guestModeConfig)||void 0===s?void 0:s.allowSignIn),this.passwordProtected=!!(null===(a=null===(r=null==t?void 0:t.all)||void 0===r?void 0:r.passwordProtected)||void 0===a?void 0:a.enabled),Es("sfGuestMode",this.guestMode+"",!0),Es("sfGuestModeAllowSignIn",this.allowGuestModeSignIn+"",!0),Es("sfPasswordProtected",this.passwordProtected+"",!0)}),(t=>{this.loading=!1,console.warn("Error in getFeaturesAccessLevelIam$: ",t),Us("Error in getFeaturesAccessLevelIam$: ",t)}))),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.isPlanExpired$)&&(null===Snippyly||void 0===Snippyly||Snippyly.isPlanExpired$().subscribe((t=>{this.isPlanExpired=t}),(t=>{this.isPlanExpired=!1,console.warn("Error in isPlanExpired$: ",t),Us("Error in isPlanExpired$: ",t)}))),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getCustomerMetadata$)&&(null===Snippyly||void 0===Snippyly||Snippyly.getCustomerMetadata$().subscribe((t=>{As(t),t&&(this.customerMetadata=t)}),(t=>{console.warn("Error in getCustomerMetadata$: ",t),Us("Error in getCustomerMetadata$: ",t)}))),js({clientUserId:null==o?void 0:o.userId}),this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{ks("sfTourCommentTooltip")||(this.showTourCommentTooltip=!0)}),2e3)}catch(t){if(this.loading=!1,this.signInError=!0,t&&"string"==typeof t&&(null===(e=null==t?void 0:t.toLowerCase())||void 0===e?void 0:e.includes("invalid"))){this.invalidApiKey=!0,this.projectId&&(async(t,e)=>{try{const i=Ge(Os,mt);await i({apiKey:t,projectId:e})}catch(t){console.warn("Error in checkDomainWhitelisted: ",t)}})(this.apiKey,this.projectId);if(new URL(document.location).searchParams.has("sprojectInstall"))this.isSigningInUserAdmin=!0;else if(ks("sfUserAdmin"))this.isSigningInUserAdmin="true"===ks("sfUserAdmin",!0);else{const t=await(async(t,e,i)=>{try{const o=Ge(Os,gt),n=await o({apiKey:t,projectId:e,email:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in iam: ",t),null}})(this.apiKey,this.projectId||"",i);this.isSigningInUserAdmin=!!(null==t?void 0:t.isAdmin),Es("sfUserAdmin",this.isSigningInUserAdmin+"",!0)}}console.warn("Error in identifySnippyly: ",t),Us("Error in identifySnippyly: ",t)}},this.checkToMigrateGuestUser=async t=>{try{const e=Ls(!1);e&&(await Rs(this.apiKey,this.projectId||"",e,t,!0),Ss("_sfgut"))}catch(t){console.warn("Error in checkToMigrationGuestUser: ",t),Us("Error in checkToMigrationGuestUser: ",t)}},this.getComments=()=>{try{this.commentElement&&(this.commentSubscription&&this.commentSubscription.unsubscribe(),this.commentSubscription=this.commentElement.getAllCommentAnnotations(this.documentId).subscribe((t=>{this.comments=null==t?void 0:t.filter((t=>{var e;return["open","inProgress"].includes(null==t?void 0:t.status)||["default","ongoing"].includes(null===(e=null==t?void 0:t.status)||void 0===e?void 0:e.type)}))})))}catch(t){console.warn("Error in getComments: ",t),Us("Error in getComments: ",t)}},this.checkGlobalUserContact=()=>{try{this.contactElement&&this.contactElement.isUserGlobalContact().subscribe((t=>{this.isUserGlobalContact=t}))}catch(t){console.warn("Error in checkGlobalUserContact: ",t),Us("Error in checkGlobalUserContact: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),Us("Error in toggleSnippylyPluginToolbar: ",t)}},this.togglePrivateCommentMode=()=>{try{this.commentElement&&(this.privateCommentModeEnabled?(this.commentElement.disablePrivateCommentMode&&this.commentElement.disablePrivateCommentMode(),this.privateCommentModeEnabled=!1):(this.commentElement.enablePrivateCommentMode&&this.commentElement.enablePrivateCommentMode(),this.privateCommentModeEnabled=!0))}catch(t){console.warn("Error in togglePrivateCommentMode: ",t),Us("Error in togglePrivateCommentMode: ",t)}},this.loginWithGoogle=()=>{try{if(this.loading||this.customLoginEnabledLocally)return;window.open(this.signInUrl,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),Us("Error in loginWithGoogle: ",t)}},this.getQRCode=async()=>{try{const t=window.location.href;if(t){const e=_s(t,ut,pt),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getqrcode?text=${encodeURIComponent(e)}`),o=await i.json();(null==o?void 0:o.qrcode)&&(this.qrCode=null==o?void 0:o.qrcode)}}catch(t){console.warn("Error in getQRCode: ",t),Us("Error in getQRCode: ",t)}},this.toggleQRCodeVisibility=async()=>{try{this.showQrCode=!this.showQrCode,this.showQrCode&&!this.qrCode&&await this.getQRCode()}catch(t){console.warn("Error in toggleQRCodeVisibility: ",t),Us("Error in toggleQRCodeVisibility: ",t)}},this.onUserInviteToolClick=()=>{var t;(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)&&(this.guestModeSignInModalConfig.title="Sign in to invite others.",this.guestModeSignInModalConfig.description="Invite team members to comment on this project.",this.guestModeSignInModalConfig.showLeaveCommentButton=!1,this.guestModeSignInModalConfig.closeOnClickOutside=!0,this.openGuestModeSignInModal())},this.removeSnippyly=async()=>{try{this.exitReviewModeCalled=!0,Ss("review"),Ss("feedback"),Ss("sreviewId"),Ss("projectVersionKey","sessionStorage"),Ss("projectVersion","sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete("sreviewId"),e.delete("review"),e.delete("feedback"),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete("sversion"),e.delete("sprojectInstall"),e.delete("sflivedemo"),this.projectVersion=void 0,this.projectVersionKey=void 0,delete window.snippylyInitialLoadUrl,window.history.replaceState({},document.title,t.href),window.location.reload()}catch(t){console.warn("Error in removeSnippyly: ",t),Us("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{this.subscriptions.forEach((t=>{t&&t.unsubscribe&&(null==t||t.unsubscribe())})),await Snippyly.signOutUser(),Ss("snippyly-user"),Ss("_sfut"),Ss("sfUserAdmin"),this.snippylyUser=void 0,window.open(this.signOutUrl,"_self")}catch(t){console.warn("Error in signOutUser: ",t),Us("Error in signOutUser: ",t)}},this.toggleMenu=(t,e)=>{try{t.stopPropagation(),this.menuOpenedId===e?this.menuOpenedId=void 0:this.menuOpenedId=e}catch(t){console.warn("Error in toggleMenu: ",t),Us("Error in toggleMenu: ",t)}},this.copyLink=()=>{try{navigator.clipboard.writeText(window.location.href),this.copyLinkTooltip="Link copied!",setTimeout((()=>{this.copyLinkTooltip="Copy Link"}),2e3)}catch(t){console.warn("Error in copyLink: ",t),Us("Error in copyLink: ",t)}},this.goToAdminPortal=()=>{try{let t=`${ht}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){const e=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();e&&(t=`${ht}/dashboard/project/comment/${this.apiKey}/${e}`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),Us("Error in goToAdminPortal: ",t)}},this.goToAdminPortalDashboard=()=>{try{let t=`${ht}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId())&&(t=`${ht}/dashboard`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortalDashboard: ",t),Us("Error in goToAdminPortalDashboard: ",t)}},this.joinCommunity=()=>{try{window.open("https://join.slack.com/t/superflowusers/shared_invite/zt-1q3jzsddt-NEb~uu9RXscLfxOIDGQXJw","_blank")}catch(t){console.warn("Error in joinCommunity: ",t),Us("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,Es("sprojectInstall","true");const t=new URL(document.location);t.searchParams.delete("sprojectInstall"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),Us("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,Es("sflivedemo","true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),Us("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),Us("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://superflow-portal-staging-2023.web.app/dashboard/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),Us("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,Es("sfTourCommentTooltip","true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),Us("Error in onTourCommentTooltipClick: ",t)}},this.onGuestModeChipSignInButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeChipSignInButtonClick: ",t),Us("Error in onGuestModeChipSignInButtonClick: ",t)}},this.openGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!0,zs(Zs.Events.GUEST_MODE_SIGN_IN_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeSignInModal: ",t),Us("Error in openGuestModeSignInModal: ",t)}},this.closeGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!1,this.guestModeSignInModalConfig=JSON.parse(JSON.stringify(this.defaultGuestModeSignInModalConfig))}catch(t){console.warn("Error in closeGuestModeSignInModal: ",t),Us("Error in closeGuestModeSignInModal: ",t)}},this.onGuestModeSignInModalSignInButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeSignInModalSignInButtonClick: ",t),Us("Error in onGuestModeSignInModalSignInButtonClick: ",t)}},this.openGuestModeNameModel=t=>{try{t&&(t.stopPropagation(),t.preventDefault()),this.showGuestModeNameModal=!0,zs(Zs.Events.GUEST_MODE_NAME_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeNameModel: ",t),Us("Error in openGuestModeNameModel: ",t)}},this.closeGuestModeNameModel=()=>{try{this.showGuestModeNameModal=!1}catch(t){console.warn("Error in closeGuestModeNameModel: ",t),Us("Error in closeGuestModeNameModel: ",t)}},this.onGuestModeNameModalSkipButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SKIP_BUTTON_CLICKED),this.showGuestModeNameModal=!1}catch(t){console.warn("Error in onGuestModeNameModalSkipButtonClick: ",t),Us("Error in onGuestModeNameModalSkipButtonClick: ",t)}},this.onPasswordProtectedModalCloseButtonClick=()=>{try{zs(Zs.Events.PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED),this.showPasswordProtectedModal=!1,this.password="",this.showInvalidPassword=!1}catch(t){console.warn("Error in onPasswordProtectedModalCloseButtonClick: ",t),Us("Error in onPasswordProtectedModalCloseButtonClick: ",t)}},this.onPasswordProtectedModalOpenButtonClick=()=>{try{zs(Zs.Events.PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED),this.showPasswordProtectedModal=!0}catch(t){console.warn("Error in onPasswordProtectedModalOpenButtonClick: ",t),Us("Error in onPasswordProtectedModalOpenButtonClick: ",t)}},this.showGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!0,zs(Zs.Events.GUEST_MODE_SIGN_IN_BANNER_SHOWN)}catch(t){console.warn("Error in showGuestModeSignInBanner: ",t),Us("Error in showGuestModeSignInBanner: ",t)}},this.hideGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!1}catch(t){console.warn("Error in hideGuestModeSignInBanner: ",t),Us("Error in hideGuestModeSignInBanner: ",t)}},this.onGuestModeBannerSignInButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeBannerSignInButtonClick: ",t),Us("Error in onGuestModeBannerSignInButtonClick: ",t)}},this.updateGuestUserName=async()=>{var t;try{if(!(null===(t=this.guestUserNameInput)||void 0===t?void 0:t.trim()))return;if(this.guestUserNameUpdateLoading)return;const e=Ls();if(e){const t=JSON.parse(JSON.stringify(e));e.name=this.guestUserNameInput,e.photoUrl=null,this.guestUserNameUpdateLoading=!0,(t=>{try{const e=JSON.stringify(t),i=_s(e,ut,pt);Es("_sfgut",i,!0)}catch(t){console.warn("Error in updateGuestUser: ",t),Us("Error in updateGuestUser: ",t)}})(e),await Snippyly.identify(e),this.snippylyUser=JSON.parse(JSON.stringify(e)),await Rs(this.apiKey,this.projectId||"",t,e),this.showGuestModeNameModal=!1,this.guestUserNameUpdated=!0,this.guestUserNameUpdateLoading=!1,Es("sfGuestUserNameUpdated","true"),zs(Zs.Events.GUEST_MODE_NAME_ADDED,{oldName:null==t?void 0:t.name,newName:null==e?void 0:e.name})}this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateGuestUserName: ",t),Us("Error in updateGuestUserName: ",t)}},this.submitPassword=async()=>{var t;try{if(!(null===(t=this.password)||void 0===t?void 0:t.trim()))return;if(this.validatingPasswordLoading)return;this.validatingPasswordLoading=!0,this.isPasswordValid=await(async(t,e,i)=>{try{const o=Ge(Os,xt),n=await o({apiKey:t,projectId:e,password:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in validatePassword: ",t),null}})(this.apiKey,this.projectId,this.password),this.isPasswordValid?(this.password="",this.onPasswordProtectedModalCloseButtonClick(),this.showInvalidPassword=!1):this.showInvalidPassword=!0,this.validatingPasswordLoading=!1}catch(t){console.warn("Error in submitPassword: ",t),Us("Error in submitPassword: ",t)}},this.updateUserName=async()=>{var t;try{if(!(null===(t=this.guestUserNameInput)||void 0===t?void 0:t.trim()))return;if(this.guestUserNameUpdateLoading)return;this.guestUserNameUpdateLoading=!0;const e=JSON.parse(JSON.stringify(this.snippylyUser)),i=JSON.parse(JSON.stringify(this.snippylyUser));i.name=this.guestUserNameInput,await Rs(this.apiKey,this.projectId||"",e,i),await Snippyly.updateUser(i),this.snippylyUser=JSON.parse(JSON.stringify(i));const o=Ts();o.name=i.name;const n=JSON.stringify(o),s=_s(n,ut,pt);Es("_sfut",s,!0),this.guestUserNameUpdateLoading=!1,this.guestUserNameInput="",this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateUserName: ",t),Us("Error in updateUserName: ",t)}},this.disableCommentMode=()=>{var t;try{(null===(t=this.commentElement)||void 0===t?void 0:t.disableCommentMode)&&this.commentElement.disableCommentMode()}catch(t){console.warn("Error in disableAddCommentMode: ",t),Us("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?O`
2418
+ `;navigator.language.split("-")[0];const Hs=new Map;Hs.set("es",{Comment:"Comentario","Commenting is disabled. Contact admin.":"Los comentarios están deshabilitados. Póngase en contacto con el administrador.","Arrow feature is disabled. Contact admin.":"La función de flecha está desactivada. Póngase en contacto con el administrador.","All Comments":"Todos los comentarios","Signing In":"Iniciando sesión","Sign in again!":"¡Inicia sesión de nuevo!","Sign in to comment":"Inicia sesión para comentar",Superflow:"Superflujo","Sign in to comment on this page.":"Inicia sesión para comentar en esta página.","Join Community":"Únete a la comunidad","Open in Mobile":"Abrir en móvil","Exit Review Mode":"Salir del modo de revisión","Sign in":"Iniciar sesión","Try Superflow using the toolbar below.":"Prueba Superflujo usando la barra de herramientas de abajo.","Get ready to drop your first comment!":"¡Prepárate para dejar tu primer comentario!","But before you do that, you definitely deserve a high five!":"¡Pero antes de eso, definitivamente mereces un choca esos cinco!",Done:"Hecho","Sign in on the toolbar below and add":"Inicia sesión en la barra de herramientas de abajo y añade","comments on the design flaws.":"comentarios sobre los defectos de diseño.","Click to add comments on this page.":"Haz clic para añadir comentarios en esta página.",Ok:"Ok",Arrow:"Flecha","Live Huddle":"Encuentro en vivo",Recording:"Grabación","Open Comments":"Abrir comentarios",Views:"Vistas",Internal:"Interno",External:"Externo",All:"Todos",Upgrade:"Actualizar","You don't have access.":"No tienes acceso.","Reach out to the admin of this project.":"Contacta al administrador de este proyecto.","Your plan has expired! Please upgrade.":"¡Tu plan ha caducado! Por favor, actualiza.","Your plan has expired!":"¡Tu plan ha caducado!","Please contact the admin.":"Por favor, contacta al administrador.",Share:"Compartir","Add comments & recordings on this page.":"Añade comentarios y grabaciones en esta página.","Learn more":"Aprender más","View project":"Ver proyecto","Sign Out":"Cerrar sesión","You’re a SuperFlow installation wizard!":"¡Eres un mago de la instalación de Superflujo!",Next:"Siguiente"}),Hs.set("fr",{Comment:"Commentaire","Commenting is disabled. Contact admin.":"Les commentaires sont désactivés. Contactez l'administrateur.","Arrow feature is disabled. Contact admin.":"La fonction flèche est désactivée. Contactez l'administrateur.","All Comments":"Tous les commentaires","Signing In":"Connexion en cours","Sign in again!":"Connectez-vous à nouveau!","Sign in to comment":"Connectez-vous pour commenter",Superflow:"Superflux","Sign in to comment on this page.":"Connectez-vous pour commenter sur cette page.","Join Community":"Rejoindre la communauté","Open in Mobile":"Ouvrir sur mobile","Exit Review Mode":"Quitter le mode de révision","Sign in":"Se connecter","Try Superflow using the toolbar below.":"Essayez Superflux en utilisant la barre d'outils ci-dessous.","Get ready to drop your first comment!":"Préparez-vous à laisser votre premier commentaire!","But before you do that, you definitely deserve a high five!":"Mais avant cela, vous méritez certainement un tope-là!",Done:"Terminé","Sign in on the toolbar below and add":"Connectez-vous sur la barre d'outils ci-dessous et ajoutez","comments on the design flaws.":"des commentaires sur les défauts de conception.","Click to add comments on this page.":"Cliquez pour ajouter des commentaires sur cette page.",Ok:"Ok",Arrow:"Flèche","Live Huddle":"Discussion en direct",Recording:"Enregistrement","Open Comments":"Ouvrir les commentaires",Views:"Vues",Internal:"Interne",External:"Externe",All:"Tous",Upgrade:"Mettre à jour","You don't have access.":"Vous n'avez pas accès.","Reach out to the admin of this project.":"Contactez l'administrateur de ce projet.","Your plan has expired! Please upgrade.":"Votre plan a expiré! Veuillez mettre à jour.","Your plan has expired!":"Votre plan a expiré!","Please contact the admin.":"Veuillez contacter l'administrateur.",Share:"Partager","Add comments & recordings on this page.":"Ajoutez des commentaires et des enregistrements sur cette page.","Learn more":"En savoir plus","View project":"Voir le projet","Sign Out":"Se déconnecter","You’re a SuperFlow installation wizard!":"Vous êtes un sorcier d'installation de Superflux!",Next:"Suivant"}),Hs.set("hi",{Comment:"टिप्पणी","Commenting is disabled. Contact admin.":"टिप्पणी करना अक्षम है. व्यवस्थापक से संपर्क करें.","Arrow feature is disabled. Contact admin.":"तीर सुविधा अक्षम है. व्यवस्थापक से संपर्क करें.","All Comments":"सभी टिप्पणियाँ","Signing In":"साइन इन कर रहा है","Sign in again!":"फिर से साइन इन करें!","Sign in to comment":"टिप्पणी करने के लिए साइन इन करें",Superflow:"सुपरफ्लो","Sign in to comment on this page.":"इस पृष्ठ पर टिप्पणी करने के लिए साइन इन करें।","Join Community":"समुदाय में शामिल हों","Open in Mobile":"मोबाइल में खोलें","Exit Review Mode":"समीक्षा मोड से बाहर निकलें","Sign in":"साइन इन करें","Try Superflow using the toolbar below.":"टूलबार का उपयोग करके सुपरफ्लो का प्रयास करें।","Get ready to drop your first comment!":"अपनी पहली टिप्पणी डालने के लिए तैयार हो जाओ!","But before you do that, you definitely deserve a high five!":"लेकिन इससे पहले, आपको निश्चित रूप से एक उच्च पांच मिलता है!",Done:"किया हुआ","Sign in on the toolbar below and add":"टूलबार पर साइन इन करें और जोड़ें","comments on the design flaws.":"डिज़ाइन की खामियों पर टिप्पणियाँ।","Click to add comments on this page.":"इस पृष्ठ पर टिप्पणियाँ जोड़ने के लिए क्लिक करें।",Ok:"ठीक",Arrow:"तीर","Live Huddle":"लाइव हडल",Recording:"रेकॉर्डिंग","Open Comments":"टिप्पणियाँ खोलें",Views:"दृश्य",Internal:"आंतरिक",External:"बाहरी",All:"सब",Upgrade:"अपग्रेड","You don't have access.":"आपके पास पहुंच नहीं है।","Reach out to the admin of this project.":"इस परियोजना के व्यवस्थापक से संपर्क करें।","Your plan has expired! Please upgrade.":"आपकी योजना समाप्त हो गई है! कृपया अपग्रेड करें।","Your plan has expired!":"आपकी योजना समाप्त हो गई है!","Please contact the admin.":"कृपया व्यवस्थापक से संपर्क करें।",Share:"शेयर","Add comments & recordings on this page.":"इस पृष्ठ पर टिप्पणियाँ और रिकॉर्डिंग जोड़ें।","Learn more":"और अधिक जानें","View project":"परियोजना देखें","Sign Out":"साइन आउट","You’re a SuperFlow installation wizard!":"आप एक सुपरफ्लो स्थापना विज़ार्ड हैं!",Next:"आगामी"}),Hs.set("it",{Comment:"Commento","Commenting is disabled. Contact admin.":"I commenti sono disabilitati. Contatta l'amministratore.","Arrow feature is disabled. Contact admin.":"La funzione freccia è disabilitata. Contatta l'amministratore.","All Comments":"Tutti i commenti","Signing In":"Accesso in corso","Sign in again!":"Accedi di nuovo!","Sign in to comment":"Accedi per commentare",Superflow:"Superflusso","Sign in to comment on this page.":"Accedi per commentare su questa pagina.","Join Community":"Unisciti alla comunità","Open in Mobile":"Apri su mobile","Exit Review Mode":"Esci dalla modalità di revisione","Sign in":"Accedi","Try Superflow using the toolbar below.":"Prova Superflusso utilizzando la barra degli strumenti qui sotto.","Get ready to drop your first comment!":"Preparati a lasciare il tuo primo commento!","But before you do that, you definitely deserve a high five!":"Ma prima di farlo, meriti sicuramente un cinque in alto!",Done:"Fatto","Sign in on the toolbar below and add":"Accedi alla barra degli strumenti qui sotto e aggiungi","comments on the design flaws.":"commenti sui difetti di progettazione.","Click to add comments on this page.":"Clicca per aggiungere commenti su questa pagina.",Ok:"Ok",Arrow:"Freccia","Live Huddle":"Riunione dal vivo",Recording:"Registrazione","Open Comments":"Apri commenti",Views:"Visualizzazioni",Internal:"Interno",External:"Esterno",All:"Tutti",Upgrade:"Aggiorna","You don't have access.":"Non hai accesso.","Reach out to the admin of this project.":"Contatta l'amministratore di questo progetto.","Your plan has expired! Please upgrade.":"Il tuo piano è scaduto! Si prega di aggiornare.","Your plan has expired!":"Il tuo piano è scaduto!","Please contact the admin.":"Si prega di contattare l'amministratore.",Share:"Condividi","Add comments & recordings on this page.":"Aggiungi commenti e registrazioni su questa pagina.","Learn more":"Scopri di più","View project":"Visualizza progetto","Sign Out":"Disconnetti","You’re a SuperFlow installation wizard!":"Sei un mago dell'installazione di Superflusso!",Next:"Avanti"}),Hs.set("ru",{Comment:"Комментарий","Commenting is disabled. Contact admin.":"Комментирование отключено. Свяжитесь с админом.","Arrow feature is disabled. Contact admin.":"Функция стрелки отключена. Свяжитесь с администратором.","All Comments":"Все комментарии","Signing In":"Вход в систему","Sign in again!":"Войдите снова!","Sign in to comment":"Войдите, чтобы оставить комментарий",Superflow:"Суперпоток","Sign in to comment on this page.":"Войдите, чтобы оставить комментарий на этой странице.","Join Community":"Присоединиться к сообществу","Open in Mobile":"Открыть на мобильном","Exit Review Mode":"Выйти из режима обзора","Sign in":"Войти","Try Superflow using the toolbar below.":"Попробуйте Суперпоток, используя панель инструментов ниже.","Get ready to drop your first comment!":"Приготовьтесь оставить свой первый комментарий!","But before you do that, you definitely deserve a high five!":"Но перед этим вы определенно заслуживаете пять!",Done:"Сделано","Sign in on the toolbar below and add":"Войдите на панели инструментов ниже и добавьте","comments on the design flaws.":"комментарии об ошибках в дизайне.","Click to add comments on this page.":"Нажмите, чтобы добавить комментарии на этой странице.",Ok:"Ок",Arrow:"Стрелка","Live Huddle":"Прямой сбор",Recording:"Запись","Open Comments":"Открыть комментарии",Views:"Просмотры",Internal:"Внутренний",External:"Внешний",All:"Все",Upgrade:"Обновить","You don't have access.":"У вас нет доступа.","Reach out to the admin of this project.":"Обратитесь к администратору этого проекта.","Your plan has expired! Please upgrade.":"Ваш план истек! Пожалуйста, обновите.","Your plan has expired!":"Ваш план истек!","Please contact the admin.":"Пожалуйста, свяжитесь с администратором.",Share:"Поделиться","Add comments & recordings on this page.":"Добавьте комментарии и записи на этой странице.","Learn more":"Узнать больше","View project":"Посмотреть проект","Sign Out":"Выйти","You’re a SuperFlow installation wizard!":"Вы волшебник установки Суперпотока!",Next:"Далее"}),Hs.set("uk",{Comment:"Коментар","Commenting is disabled. Contact admin.":"Коментування вимкнено. Зв'язатися з адміном.","Arrow feature is disabled. Contact admin.":"Функція стрілки вимкнена. Зв'язатися з адміном.","All Comments":"Всі коментарі","Signing In":"Увійти в систему","Sign in again!":"Увійдіть знову!","Sign in to comment":"Увійдіть, щоб залишити коментар",Superflow:"Суперпотік","Sign in to comment on this page.":"Увійдіть, щоб залишити коментар на цій сторінці.","Join Community":"Приєднатися до спільноти","Open in Mobile":"Відкрити на мобільному","Exit Review Mode":"Вийти з режиму огляду","Sign in":"Увійти","Try Superflow using the toolbar below.":"Спробуйте Суперпотік, використовуючи панель інструментів нижче.","Get ready to drop your first comment!":"Приготуйтеся залишити свій перший коментар!","But before you do that, you definitely deserve a high five!":"Але перед тим, як ви це зробите, ви точно заслуговуєте на високу п'ятірку!",Done:"Готово","Sign in on the toolbar below and add":"Увійдіть в панель інструментів нижче і додайте","comments on the design flaws.":"коментарі про помилки в дизайні.","Click to add comments on this page.":"Натисніть, щоб додати коментарі на цій сторінці.",Ok:"Добре",Arrow:"Стрілка","Live Huddle":"Пряма група",Recording:"Запис","Open Comments":"Відкрити коментарі",Views:"Перегляди",Internal:"Внутрішній",External:"Зовнішній",All:"Все",Upgrade:"Оновити","You don't have access.":"У вас немає доступу.","Reach out to the admin of this project.":"Зверніться до адміністратора цього проекту.","Your plan has expired! Please upgrade.":"Термін дії вашого плану закінчився! Будь ласка, оновіть.","Your plan has expired!":"Термін дії вашого плану закінчився!","Please contact the admin.":"Будь ласка, зв'яжіться з адміністратором.",Share:"Поділитися","Add comments & recordings on this page.":"Додайте коментарі та записи на цій сторінці.","Learn more":"Дізнатися більше","View project":"Переглянути проект","Sign Out":"Вийти","You’re a SuperFlow installation wizard!":"Ви чарівник встановлення Суперпотоку!",Next:"Далі"});const Gs=t=>{try{return t}catch(e){return t}};class Zs{}Zs.Events={GUEST_MODE_SIGN_IN_DIALOG_SHOWN:"guestModeSignInDialogShown",GUEST_MODE_NAME_DIALOG_SHOWN:"guestModeNameDialogShown",GUEST_MODE_SIGN_IN_BANNER_SHOWN:"guestModeSignInBannerShown",GUEST_MODE_SIGN_IN_BUTTON_CLICKED:"guestModeSignInButtonClicked",GUEST_MODE_SKIP_BUTTON_CLICKED:"guestModeSkipButtonClicked",GUEST_MODE_NAME_ADDED:"guestModeNameAdded",TOOLBAR_NOTIFICATION_CLICKED:"toolbarNotificationClicked",PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED:"passwordProtectedModalCloseButtonClicked",PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED:"passwordProtectedModalOpenButtonClicked"};var Ws=function(t,e,i,o){for(var n,s=arguments.length,r=s<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o,a=t.length-1;a>=0;a--)(n=t[a])&&(r=(s<3?n(r):s>3?n(e,i,r):n(e,i))||r);return s>3&&r&&Object.defineProperty(e,i,r),r};class Ks extends Q{constructor(){super(),this._loadPlugin=!1,this.comments=[],this.addCommentMode=!1,this.showTourCommentTooltip=!1,this.allFeatureDisabled=!1,this.allFeatureRestricted=!1,this.guestMode=!1,this._expanded=!0,this.loading=!0,this._isPlanExpired=null,this.showOnboardingModal=!0,this.showLiveDemoModal=!1,this.showFigmaDemoModal=!1,this.showGuestModeSignInModal=!1,this.defaultGuestModeSignInModalConfig={title:"Sign in to notify your team",description:"Notify your team about your latest comments.",closeOnClickOutside:!1,showLeaveCommentButton:!0},this.guestModeSignInModalConfig=JSON.parse(JSON.stringify(this.defaultGuestModeSignInModalConfig)),this.showGuestModeNameModal=!1,this.guestModeSignInBannerVisible=!1,this.guestUserNameInput="",this.guestUserModelOpened=!1,this.guestUserNameUpdated=!1,this.guestUserNameUpdateLoading=!1,this.staging=true,this._autoLocation=!0,this.copyLinkTooltip="Copy Link",this.invalidApiKey=!1,this._isUserGlobalContact=!1,this.showQrCode=!1,this.customLoginEnabledLocally=null,this.customLoginEnabled=null,this.exitReviewModeCalled=!1,this.addCommentCount=0,this._privateCommentModeEnabled=!1,this.superflowToolbarMoved=!1,this._darkMode=!1,this.allowGuestModeSignIn=!0,this.toolbarEnabled=!1,this.passwordProtected=!1,this.isPasswordValid=!1,this.password="",this.validatingPasswordLoading=!1,this.showPasswordProtectedModal=!1,this.showInvalidPassword=!1,this.subscriptions=[],this.onApiKeyChange=()=>{try{this.apiKey&&(null===window||void 0===window?void 0:window.onSuperflowLoad)&&"function"==typeof window.onSuperflowLoad&&window.onSuperflowLoad()}catch(t){console.warn("Error in onApiKeyChange: ",t),Us("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await(t=>{const e={apiKey:t};return Ge(Os,bt)(e)})(this.apiKey);this.customLoginEnabled=!!(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.customLoginEnabled),this.customLoginEnabled&&this.loginWithCustomUser()}catch(t){this.customLoginEnabled=!1,console.warn("Error in checkCustomLoginEnabled: ",t),Us("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(Ss("_sfut"),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),Us("Error in loginWithCustomUser: ",t)}},this.addWindowClickEventListener=()=>{try{this.windowClickEventListener||(this.windowClickEventListener=()=>{this.menuOpenedId&&(this.menuOpenedId=void 0)},window.addEventListener("click",this.windowClickEventListener))}catch(t){console.warn("Error in addWindowClickEventListener: ",t),Us("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),Us("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),Us("Error in setWindowEventListner: ",t)}},this.urlChangeListener=()=>{try{const t=history.pushState;history.pushState=function(){const e=t.apply(this,arguments);return window.dispatchEvent(new Event("pushstate")),window.dispatchEvent(new Event("locationchange")),e};const e=history.replaceState;history.replaceState=function(){const t=e.apply(this,arguments);return window.dispatchEvent(new Event("replacestate")),window.dispatchEvent(new Event("locationchange")),t},window.addEventListener("popstate",(()=>{window.dispatchEvent(new Event("locationchange"))}))}catch(t){console.warn("Error in urlChangeListener: ",t),Us("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{const t=new URL(document.location),e=t.searchParams;if((null==e?void 0:e.has("sprojectInstall"))&&!ks("sprojectInstall")?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has("sflivedemo"))if(ks("sflivedemo",!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showLiveDemoModal=!0;else this.showLiveDemoModal=!1;if(null==e?void 0:e.has("sffigmademo"))if(ks("sffigmademo",!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showFigmaDemoModal=!0;else this.showFigmaDemoModal=!1;if(e.has("st")||e.has("snippyly_google_token")){if(e.has("st")){const t=decodeURIComponent(e.get("st")),i=Ns(t,ut,pt),o=i&&JSON.parse(i);if(o){const t={};t.userId=o.uid,t.name=o.displayName,t.email=o.email,t.photoUrl=null==o?void 0:o.photoURL;const e=JSON.stringify(t),i=_s(e,ut,pt);Es("_sfut",i,!0),Ss("sfUserAdmin")}}else if(e.has("snippyly_google_token")){const t=JSON.parse(atob(e.get("snippyly_google_token"))),i={};i.userId=t.uid,i.name=t.displayName,i.email=t.email,i.photoUrl=null==t?void 0:t.photoURL,Es("snippyly-user",JSON.stringify(i),!0)}e.delete("st"),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has("review")?(Es("review","true",!1),Ss("feedback"),e.delete("review"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has("feedback")||ks("review",!1)&&this.loadPluginUI(),e.has("feedback")?(Es("feedback","true",!1),Ss("review"),e.delete("feedback"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has("review")||ks("feedback",!1)&&this.loadPluginUI(),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),Us("Error in checkUrl: ",t)}},this.detectVersion=()=>{try{if(this.projectVersionKey){const t=new URL(document.location).searchParams;if(t.get(this.projectVersionKey))this.projectVersion=t.get(this.projectVersionKey);else if(window.snippylyInitialLoadUrl){const t=new URL(window.snippylyInitialLoadUrl).searchParams;t.get(this.projectVersionKey)&&(this.projectVersion=t.get(this.projectVersionKey))}this.projectVersion&&Es("projectVersion",this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has("review")||t.has("feedback"))&&t.has("sversion")&&(Es("projectVersionKey","sversion",!1,"sessionStorage"),this.projectVersion=t.get("sversion"),this.projectVersion&&Es("projectVersion",this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),Us("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||ks("projectVersionKey",!1,"sessionStorage"),e=this.projectVersion||ks("projectVersion",!1,"sessionStorage");if(t&&e){const i=new URL(document.location),o=i.searchParams;o.get(t)||(o.set(t,e),window.history.replaceState({},document.title,i.href))}}catch(t){console.warn("Error in setVersionInUrl: ",t),Us("Error in setVersionInUrl: ",t)}},this.loadPluginUI=async()=>{var t,e,i,o,n,s;try{if(!this.apiKey)return;if(this.loadPlugin)return this.generateLocation(),void this.setLocation();const r=Ts();if(r&&!(null==r?void 0:r.isAnonymous)&&(this.loading=!0),null===(t=this.getCustomerMetadata())||void 0===t||t.then((t=>{this.customerMetadata=t})).catch((t=>{console.warn("Error in getCustomerMetadata: ",t),Us("Error in getCustomerMetadata: ",t)})),ks("sfPasswordIsValid",!0)&&(this.isPasswordValid="true"===ks("sfPasswordIsValid",!0)),ks("sfGuestMode",!0)&&ks("sfGuestModeAllowSignIn",!0)&&ks("sfPasswordProtected",!0)?(this.guestMode="true"===ks("sfGuestMode",!0),this.allowGuestModeSignIn="true"===ks("sfGuestModeAllowSignIn",!0),this.passwordProtected="true"===ks("sfPasswordProtected",!0)):(this.projectConfig=await(async(t,e)=>{try{const i=Ge(Os,Ct),o=await i({apiKey:t,projectId:e});return null==o?void 0:o.data}catch(t){return console.warn("Error in getProjectConfig: ",t),null}})(this.apiKey,this.projectId),this.guestMode=!!(null===(e=this.projectConfig)||void 0===e?void 0:e.guestMode)||this.guestMode,this.allowGuestModeSignIn=!!(null===(o=null===(i=this.projectConfig)||void 0===i?void 0:i.guestModeConfig)||void 0===o?void 0:o.allowSignIn),this.passwordProtected=!!(null===(s=null===(n=this.projectConfig)||void 0===n?void 0:n.passwordProtected)||void 0===s?void 0:s.enabled),Es("sfGuestMode",this.guestMode+"",!0),Es("sfGuestModeAllowSignIn",this.allowGuestModeSignIn+"",!0),Es("sfPasswordProtected",this.passwordProtected+"",!0)),this.loadPlugin=!0,!document.querySelector(rt.VELT_COMMENTS)){const t=document.createElement(rt.VELT_COMMENTS);null==t||t.addEventListener("onSignIn",(()=>{this.loginWithGoogle()})),null==t||t.addEventListener("onUpgrade",(()=>{this.onUpgradePlanClick()})),this.staging&&(t.addEventListener("onCommentAdd",(t=>{console.log("Comment added: ",null==t?void 0:t.detail),this.addCommentCount++})),t.addEventListener("onCommentUpdate",(t=>{var e,i;console.log("Comment updated: ",t.detail),(null===(e=this.snippylyUser)||void 0===e?void 0:e.isGuest)&&"newlyAdded"===(null===(i=null==t?void 0:t.detail)||void 0===i?void 0:i.type)&&(this.addCommentCount>=2&&!ks("sfGuestUserModelOpened")&&(this.allowGuestModeSignIn?this.openGuestModeSignInModal():this.openGuestModeNameModel(),Es("sfGuestUserModelOpened","true")),this.addCommentCount>=5&&!ks("sfGuestUserBannerOpened",!1,"sessionStorage")&&(this.showGuestModeSignInBanner(),Es("sfGuestUserBannerOpened","true",!1,"sessionStorage")))}))),window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_CURSOR)){const t=document.createElement(rt.VELT_CURSOR);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_HUDDLE)){const t=document.createElement(rt.VELT_HUDDLE);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_RECORDER_NOTES)){const t=document.createElement(rt.VELT_RECORDER_NOTES);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_RECORDER_CONTROL_PANEL)){const t=document.createElement(rt.VELT_RECORDER_CONTROL_PANEL);window.document.body.appendChild(t)}if(!document.querySelector(rt.VELT_ARROWS)){const t=document.createElement(rt.VELT_ARROWS);window.document.body.appendChild(t)}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),Us("Error in loadPluginUI: ",t)}},this.initializeSnippyly=async()=>{var t,i,o,n,s,r,a,l,c,d,h,u,p,v,m,g;try{if(await e(this.apiKey,{options:{develop:this.staging,version:this.staging?"1.0.323":"latest",velt:!0}}),!window.Snippyly)return;if(this.autoTranslation&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.enableAutoTranslation)&&(null===Snippyly||void 0===Snippyly||Snippyly.enableAutoTranslation()),!document.querySelector(rt.VELT_COMMENTS_SIDEBAR)){const t=document.createElement(rt.VELT_COMMENTS_SIDEBAR);t.setAttribute(at.ENABLE_URL_NAVIGATION,"true"),t.setAttribute(at.CURRENT_LOCATION_SUFFIX,"true"),window.document.body.appendChild(t)}if(Snippyly){null===Snippyly||void 0===Snippyly||Snippyly.sf(!0);try{(null===window||void 0===window?void 0:window.onSnippylyLoad)&&(null===window||void 0===window||window.onSnippylyLoad(Snippyly))}catch(t){}document.body.style.setProperty("--velt-default-font-family","'Poppins', sans-serif"),(()=>{try{if(!document.getElementById("superflowFontLink1")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.googleapis.com",t.id="superflowFontLink1",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink2")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.gstatic.com",t.crossOrigin="anonymous",t.id="superflowFontLink2",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink3")){const t=document.createElement("link");t.rel="stylesheet",t.href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap",t.id="superflowFontLink3",document.head.appendChild(t)}}catch(t){console.warn("Error in loadPoppinsFont: ",t),Us("Error in loadPoppinsFont: ",t)}})()}Snippyly&&js({sdkVersion:null===Snippyly||void 0===Snippyly?void 0:Snippyly.version,sdkType:"client"}),this.documentId=((t,e=0)=>{try{let i=3735928559^e,o=1103547991^e;for(let e,n=0;n<t.length;n++)e=t.charCodeAt(n),i=Math.imul(i^e,2654435761),o=Math.imul(o^e,1597334677);return i=Math.imul(i^i>>>16,2246822507)^Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507)^Math.imul(i^i>>>13,3266489909),4294967296*(2097151&o)+(i>>>0)}catch(t){return console.warn("Error in cyrb53: ",t),Us("Error in cyrb53: ",t),0}})((t=>{let e;return e=t.includes("http")?new URL(t):new URL("http://"+t),e.hostname.replace("www.","")})(window.location.origin))+"",this.projectId&&(this.documentId=this.projectId+""),await(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setDocumentId(this.documentId+""));const f=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();if(js({documentId:f,clientDocumentId:this.documentId}),this.generateLocation(),this.setLocation(),this.commentElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getCommentElement(),this.contactElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getContactElement(),this.rewriterElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getRewriterElement(),this.presenceElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getPresenceElement(),this.commentElement){this.commentElement.enableTextComments(!0),this.customLoginEnabledLocally||this.commentElement.enableSignInButton(!0),this.commentElement.enableAttachments(!0),(null===(t=this.commentElement)||void 0===t?void 0:t.showScreenSizeInfo)&&this.commentElement.showScreenSizeInfo(!0),(null===(i=this.commentElement)||void 0===i?void 0:i.enableDeviceInfo)&&this.commentElement.enableDeviceInfo(!0),this.commentElement.enableCommentIndex(!0),this.commentElement.onCommentModeChange&&this.commentElement.onCommentModeChange().subscribe((t=>{this.addCommentMode=t})),(null===(o=this.commentElement)||void 0===o?void 0:o.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(null===(n=this.commentElement)||void 0===n?void 0:n.enableAutoCategorize)&&this.commentElement.enableAutoCategorize(),(null===(s=this.commentElement)||void 0===s?void 0:s.enablePersistentCommentMode)&&this.commentElement.enablePersistentCommentMode(),(null===(r=this.commentElement)||void 0===r?void 0:r.enableGhostComments)&&this.commentElement.enableGhostComments();const e=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;e&&"object"==typeof e&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatus)&&this.commentElement.setCustomStatus(e),(null===(l=this.commentElement)||void 0===l?void 0:l.enableMinimap)&&this.commentElement.enableMinimap(),(null===(c=this.commentElement)||void 0===c?void 0:c.setDStrategy)&&(null===(d=this.commentElement)||void 0===d||d.setDStrategy("dynamicId")),(null===(h=this.commentElement)||void 0===h?void 0:h.enableSidebarButtonOnCommentDialog)&&this.commentElement.enableSidebarButtonOnCommentDialog(),(null===(u=this.commentElement)||void 0===u?void 0:u.enableHotkey)&&this.commentElement.enableHotkey()}this.selectionElement=Snippyly.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(p=this.rewriterElement)||void 0===p||p.enableRewriter()),this.presenceElement&&(null===(v=this.presenceElement)||void 0===v?void 0:v.enableFlockMode)&&(null===(m=this.presenceElement)||void 0===m||m.enableFlockMode(!0)),null===(g=null===Snippyly||void 0===Snippyly?void 0:Snippyly.docService)||void 0===g||g.getDocumentMetadata$().subscribe((t=>{const e=(null==t?void 0:t.versions)?Object.values(null==t?void 0:t.versions):[],i=new URL(document.location).searchParams.get("version");if(i){const t=e.find((t=>t.versionId===i));t&&(this.version={id:t.versionId,name:t.versionName||t.versionId},this.setLocation())}})),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),Us("Error in initializeSnippyly: ",t)}},this.checkToEnableUpgradeButton=()=>{var t,e;try{this.isPlanExpired&&this.isUserGlobalContact?(null===(t=this.commentElement)||void 0===t?void 0:t.enableUpgradeButton)&&this.commentElement.enableUpgradeButton():(null===(e=this.commentElement)||void 0===e?void 0:e.disableUpgradeButton)&&this.commentElement.disableUpgradeButton()}catch(t){console.warn("Error in checkToEnableUpgradeButton: ",t),Us("Error in checkToEnableUpgradeButton: ",t)}},this.getCustomerMetadata=async()=>{try{let t=(()=>{try{const t=ks("sfCustomerMetadata");return t?"false"===t?JSON.parse(JSON.stringify(lt)):JSON.parse(t):null}catch(t){return console.warn("Error in getCustomerMetadataFromStorage: ",t),Us("Error in getCustomerMetadataFromStorage: ",t),null}})();return t||(t=await(async t=>{try{const e=Ge(Os,ft),i=await e({apiKey:t});return null==i?void 0:i.data}catch(t){return console.warn("Error in getCustomerMetadata: ",t),null}})(this.apiKey),As(t)),t}catch(t){console.warn("Error in getCustomerMetadata: ",t),Us("Error in getCustomerMetadata: ",t)}},this.setLogos=()=>{var t,e,i,o,n,s,r,a,l,c,d,h;try{let u="light";this.privateCommentModeEnabled&&(u="dark");const p=null===(i=null===(e=null===(t=this.customerMetadata)||void 0===t?void 0:t.customBranding)||void 0===e?void 0:e.logo)||void 0===i?void 0:i.logoMark,v=null===(s=null===(n=null===(o=null==dt?void 0:lt)||void 0===o?void 0:o.customBranding)||void 0===n?void 0:n.logo)||void 0===s?void 0:s.logoMark,m=null===(l=null===(a=null===(r=this.customerMetadata)||void 0===r?void 0:r.customBranding)||void 0===a?void 0:a.logo)||void 0===l?void 0:l.wordMark,g=null===(h=null===(d=null===(c=null==dt?void 0:lt)||void 0===c?void 0:c.customBranding)||void 0===d?void 0:d.logo)||void 0===h?void 0:h.wordMark;switch(u){case"light":this.logoMark=(null==p?void 0:p.lightUrl)||(null==p?void 0:p.darkUrl)||(null==v?void 0:v.lightUrl),this.wordMark=(null==m?void 0:m.lightUrl)||(null==m?void 0:m.darkUrl)||(null==g?void 0:g.lightUrl);break;case"dark":this.logoMark=(null==p?void 0:p.darkUrl)||(null==p?void 0:p.lightUrl)||(null==v?void 0:v.darkUrl),this.wordMark=(null==m?void 0:m.darkUrl)||(null==m?void 0:m.lightUrl)||(null==g?void 0:g.darkUrl)}}catch(t){console.warn("Error in setLogos: ",t),Us("Error in setLogos: ",t)}},this.generateLocation=()=>{try{if(this.autoLocation){const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete("review"),e.searchParams.delete("feedback"),e.searchParams.delete("sreviewId"),e.searchParams.delete("scommentId"),e.searchParams.delete("sprojectInstall"),e.searchParams.delete("sflivedemo");const i=t.get("sversion")||this.projectVersion;e.search="";let o=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),Us("Error in removeHashFromUrl: ",e),t}})(e.href);this.projectId&&(o=null==o?void 0:o.replace(window.location.origin,"")),this.location={url:o,version:i}}}catch(t){console.warn("Error in generateLocation: ",t),Us("Error in generateLocation: ",t)}},this.setLocation=()=>{var t,e,i,o;try{if(this.autoLocation&&window.Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setLocation)){if(this.version?(this.location||(this.location={}),this.location.version=this.version):this.location&&delete this.location.version,this.previousLocation&&(null===(t=this.previousLocation)||void 0===t?void 0:t.url)===(null===(e=this.location)||void 0===e?void 0:e.url)&&(null===(i=this.previousLocation)||void 0===i?void 0:i.version)===(null===(o=this.location)||void 0===o?void 0:o.version))return;null===Snippyly||void 0===Snippyly||Snippyly.setLocation(JSON.parse(JSON.stringify(this.location))),js({clientLocation:this.location}),this.previousLocation=JSON.parse(JSON.stringify(this.location))}}catch(t){console.warn("Error in setLocation: ",t),Us("Error in setLocation: ",t)}},this.identifySnippyly=async()=>{var t,e;let i="";try{this.invalidApiKey=!1;let e,o={name:"Anonymous User",email:"anonymous@snippyly.com",userId:"anonymous",isAnonymous:!0};if(e=this.customLoginEnabled&&this.providedUser?this.providedUser:Ts(),(null==e?void 0:e.email)&&(o=e),o.isAnonymous?delete o.groupId:o.groupId=Snippyly.getDocumentId()+"",this.customLoginEnabledLocally||(null===(t=null==o?void 0:o.contacts)||void 0===t?void 0:t.length)&&(o.contacts=[]),i=null==o?void 0:o.email,(null==o?void 0:o.isAnonymous)&&this.projectId&&this.guestMode){const t=Ls();t&&(o=JSON.parse(JSON.stringify(t)))}(null==o?void 0:o.isAnonymous)||(this.loading=!0);const n=await(async(t,e)=>{var i,o;try{const n=Ge(Os,wt),s=await n({apiKey:t,userId:e});return null===(o=null===(i=null==s?void 0:s.data)||void 0===i?void 0:i.data)||void 0===o?void 0:o.token}catch(t){return console.warn("Error in generateSuperflowAuthToken: ",t),null}})(this.apiKey,null==o?void 0:o.userId),s={};n&&(s.authToken=n);const r=await Snippyly.identify(o,s);$s(JSON.parse(JSON.stringify(r||{}))),(null==o?void 0:o.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(o)));const a=JSON.parse(JSON.stringify(r||{}));(null==a?void 0:a.userSnippylyId)&&!(null==a?void 0:a.isGuest)&&this.checkToMigrateGuestUser(a),Snippyly.getUserRole$().subscribe((t=>{var e;this.loading=!1,this.snippylyUserRole=t,null===(e=this.commentElement)||void 0===e||e.enablePriority()})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getFeaturesAccessLevelIam$)&&this.subscriptions.push(Snippyly.getFeaturesAccessLevelIam$().subscribe((async t=>{var e,i,o,n,s,r,a;this.allFeatureDisabled=!!(null===(e=null==t?void 0:t.all)||void 0===e?void 0:e.disabled),this.allFeatureRestricted=!!(null===(i=null==t?void 0:t.all)||void 0===i?void 0:i.restricted),this.guestMode=!!(null===(o=null==t?void 0:t.all)||void 0===o?void 0:o.guestMode),this.allowGuestModeSignIn=!!(null===(s=null===(n=null==t?void 0:t.all)||void 0===n?void 0:n.guestModeConfig)||void 0===s?void 0:s.allowSignIn),this.passwordProtected=!!(null===(a=null===(r=null==t?void 0:t.all)||void 0===r?void 0:r.passwordProtected)||void 0===a?void 0:a.enabled),Es("sfGuestMode",this.guestMode+"",!0),Es("sfGuestModeAllowSignIn",this.allowGuestModeSignIn+"",!0),Es("sfPasswordProtected",this.passwordProtected+"",!0)}),(t=>{this.loading=!1,console.warn("Error in getFeaturesAccessLevelIam$: ",t),Us("Error in getFeaturesAccessLevelIam$: ",t)}))),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.isPlanExpired$)&&(null===Snippyly||void 0===Snippyly||Snippyly.isPlanExpired$().subscribe((t=>{this.isPlanExpired=t}),(t=>{this.isPlanExpired=!1,console.warn("Error in isPlanExpired$: ",t),Us("Error in isPlanExpired$: ",t)}))),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getCustomerMetadata$)&&(null===Snippyly||void 0===Snippyly||Snippyly.getCustomerMetadata$().subscribe((t=>{As(t),t&&(this.customerMetadata=t)}),(t=>{console.warn("Error in getCustomerMetadata$: ",t),Us("Error in getCustomerMetadata$: ",t)}))),js({clientUserId:null==o?void 0:o.userId}),this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{ks("sfTourCommentTooltip")||(this.showTourCommentTooltip=!0)}),2e3)}catch(t){if(this.loading=!1,this.signInError=!0,t&&"string"==typeof t&&(null===(e=null==t?void 0:t.toLowerCase())||void 0===e?void 0:e.includes("invalid"))){this.invalidApiKey=!0,this.projectId&&(async(t,e)=>{try{const i=Ge(Os,mt);await i({apiKey:t,projectId:e})}catch(t){console.warn("Error in checkDomainWhitelisted: ",t)}})(this.apiKey,this.projectId);if(new URL(document.location).searchParams.has("sprojectInstall"))this.isSigningInUserAdmin=!0;else if(ks("sfUserAdmin"))this.isSigningInUserAdmin="true"===ks("sfUserAdmin",!0);else{const t=await(async(t,e,i)=>{try{const o=Ge(Os,gt),n=await o({apiKey:t,projectId:e,email:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in iam: ",t),null}})(this.apiKey,this.projectId||"",i);this.isSigningInUserAdmin=!!(null==t?void 0:t.isAdmin),Es("sfUserAdmin",this.isSigningInUserAdmin+"",!0)}}console.warn("Error in identifySnippyly: ",t),Us("Error in identifySnippyly: ",t)}},this.checkToMigrateGuestUser=async t=>{try{const e=Ls(!1);e&&(await Rs(this.apiKey,this.projectId||"",e,t,!0),Ss("_sfgut"))}catch(t){console.warn("Error in checkToMigrationGuestUser: ",t),Us("Error in checkToMigrationGuestUser: ",t)}},this.getComments=()=>{try{this.commentElement&&(this.commentSubscription&&this.commentSubscription.unsubscribe(),this.commentSubscription=this.commentElement.getAllCommentAnnotations(this.documentId).subscribe((t=>{this.comments=null==t?void 0:t.filter((t=>{var e;return["open","inProgress"].includes(null==t?void 0:t.status)||["default","ongoing"].includes(null===(e=null==t?void 0:t.status)||void 0===e?void 0:e.type)}))})))}catch(t){console.warn("Error in getComments: ",t),Us("Error in getComments: ",t)}},this.checkGlobalUserContact=()=>{try{this.contactElement&&this.contactElement.isUserGlobalContact().subscribe((t=>{this.isUserGlobalContact=t}))}catch(t){console.warn("Error in checkGlobalUserContact: ",t),Us("Error in checkGlobalUserContact: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),Us("Error in toggleSnippylyPluginToolbar: ",t)}},this.togglePrivateCommentMode=()=>{try{this.commentElement&&(this.privateCommentModeEnabled?(this.commentElement.disablePrivateCommentMode&&this.commentElement.disablePrivateCommentMode(),this.privateCommentModeEnabled=!1):(this.commentElement.enablePrivateCommentMode&&this.commentElement.enablePrivateCommentMode(),this.privateCommentModeEnabled=!0))}catch(t){console.warn("Error in togglePrivateCommentMode: ",t),Us("Error in togglePrivateCommentMode: ",t)}},this.loginWithGoogle=()=>{try{if(this.loading||this.customLoginEnabledLocally)return;window.open(this.signInUrl,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),Us("Error in loginWithGoogle: ",t)}},this.getQRCode=async()=>{try{const t=window.location.href;if(t){const e=_s(t,ut,pt),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getqrcode?text=${encodeURIComponent(e)}`),o=await i.json();(null==o?void 0:o.qrcode)&&(this.qrCode=null==o?void 0:o.qrcode)}}catch(t){console.warn("Error in getQRCode: ",t),Us("Error in getQRCode: ",t)}},this.toggleQRCodeVisibility=async()=>{try{this.showQrCode=!this.showQrCode,this.showQrCode&&!this.qrCode&&await this.getQRCode()}catch(t){console.warn("Error in toggleQRCodeVisibility: ",t),Us("Error in toggleQRCodeVisibility: ",t)}},this.onUserInviteToolClick=()=>{var t;(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)&&(this.guestModeSignInModalConfig.title="Sign in to invite others.",this.guestModeSignInModalConfig.description="Invite team members to comment on this project.",this.guestModeSignInModalConfig.showLeaveCommentButton=!1,this.guestModeSignInModalConfig.closeOnClickOutside=!0,this.openGuestModeSignInModal())},this.removeSnippyly=async()=>{try{this.exitReviewModeCalled=!0,Ss("review"),Ss("feedback"),Ss("sreviewId"),Ss("projectVersionKey","sessionStorage"),Ss("projectVersion","sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete("sreviewId"),e.delete("review"),e.delete("feedback"),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete("sversion"),e.delete("sprojectInstall"),e.delete("sflivedemo"),this.projectVersion=void 0,this.projectVersionKey=void 0,delete window.snippylyInitialLoadUrl,window.history.replaceState({},document.title,t.href),window.location.reload()}catch(t){console.warn("Error in removeSnippyly: ",t),Us("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{this.subscriptions.forEach((t=>{t&&t.unsubscribe&&(null==t||t.unsubscribe())})),await Snippyly.signOutUser(),Ss("snippyly-user"),Ss("_sfut"),Ss("sfUserAdmin"),this.snippylyUser=void 0,window.open(this.signOutUrl,"_self")}catch(t){console.warn("Error in signOutUser: ",t),Us("Error in signOutUser: ",t)}},this.toggleMenu=(t,e)=>{try{t.stopPropagation(),this.menuOpenedId===e?this.menuOpenedId=void 0:this.menuOpenedId=e}catch(t){console.warn("Error in toggleMenu: ",t),Us("Error in toggleMenu: ",t)}},this.copyLink=()=>{try{navigator.clipboard.writeText(window.location.href),this.copyLinkTooltip="Link copied!",setTimeout((()=>{this.copyLinkTooltip="Copy Link"}),2e3)}catch(t){console.warn("Error in copyLink: ",t),Us("Error in copyLink: ",t)}},this.goToAdminPortal=()=>{try{let t=`${ht}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){const e=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();e&&(t=`${ht}/dashboard/project/comment/${this.apiKey}/${e}`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),Us("Error in goToAdminPortal: ",t)}},this.goToAdminPortalDashboard=()=>{try{let t=`${ht}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId())&&(t=`${ht}/dashboard`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortalDashboard: ",t),Us("Error in goToAdminPortalDashboard: ",t)}},this.joinCommunity=()=>{try{window.open("https://join.slack.com/t/superflowusers/shared_invite/zt-1q3jzsddt-NEb~uu9RXscLfxOIDGQXJw","_blank")}catch(t){console.warn("Error in joinCommunity: ",t),Us("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,Es("sprojectInstall","true");const t=new URL(document.location);t.searchParams.delete("sprojectInstall"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),Us("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,Es("sflivedemo","true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),Us("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),Us("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://superflow-portal-staging-2023.web.app/dashboard/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),Us("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,Es("sfTourCommentTooltip","true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),Us("Error in onTourCommentTooltipClick: ",t)}},this.onGuestModeChipSignInButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeChipSignInButtonClick: ",t),Us("Error in onGuestModeChipSignInButtonClick: ",t)}},this.openGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!0,zs(Zs.Events.GUEST_MODE_SIGN_IN_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeSignInModal: ",t),Us("Error in openGuestModeSignInModal: ",t)}},this.closeGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!1,this.guestModeSignInModalConfig=JSON.parse(JSON.stringify(this.defaultGuestModeSignInModalConfig))}catch(t){console.warn("Error in closeGuestModeSignInModal: ",t),Us("Error in closeGuestModeSignInModal: ",t)}},this.onGuestModeSignInModalSignInButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeSignInModalSignInButtonClick: ",t),Us("Error in onGuestModeSignInModalSignInButtonClick: ",t)}},this.openGuestModeNameModel=t=>{try{t&&(t.stopPropagation(),t.preventDefault()),this.showGuestModeNameModal=!0,zs(Zs.Events.GUEST_MODE_NAME_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeNameModel: ",t),Us("Error in openGuestModeNameModel: ",t)}},this.closeGuestModeNameModel=()=>{try{this.showGuestModeNameModal=!1}catch(t){console.warn("Error in closeGuestModeNameModel: ",t),Us("Error in closeGuestModeNameModel: ",t)}},this.onGuestModeNameModalSkipButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SKIP_BUTTON_CLICKED),this.showGuestModeNameModal=!1}catch(t){console.warn("Error in onGuestModeNameModalSkipButtonClick: ",t),Us("Error in onGuestModeNameModalSkipButtonClick: ",t)}},this.onPasswordProtectedModalCloseButtonClick=()=>{try{zs(Zs.Events.PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED),this.showPasswordProtectedModal=!1,this.password="",this.showInvalidPassword=!1}catch(t){console.warn("Error in onPasswordProtectedModalCloseButtonClick: ",t),Us("Error in onPasswordProtectedModalCloseButtonClick: ",t)}},this.onPasswordProtectedModalOpenButtonClick=()=>{try{zs(Zs.Events.PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED),this.showPasswordProtectedModal=!0}catch(t){console.warn("Error in onPasswordProtectedModalOpenButtonClick: ",t),Us("Error in onPasswordProtectedModalOpenButtonClick: ",t)}},this.showGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!0,zs(Zs.Events.GUEST_MODE_SIGN_IN_BANNER_SHOWN)}catch(t){console.warn("Error in showGuestModeSignInBanner: ",t),Us("Error in showGuestModeSignInBanner: ",t)}},this.hideGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!1}catch(t){console.warn("Error in hideGuestModeSignInBanner: ",t),Us("Error in hideGuestModeSignInBanner: ",t)}},this.onGuestModeBannerSignInButtonClick=()=>{try{zs(Zs.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeBannerSignInButtonClick: ",t),Us("Error in onGuestModeBannerSignInButtonClick: ",t)}},this.updateGuestUserName=async()=>{var t;try{if(!(null===(t=this.guestUserNameInput)||void 0===t?void 0:t.trim()))return;if(this.guestUserNameUpdateLoading)return;const e=Ls();if(e){const t=JSON.parse(JSON.stringify(e));e.name=this.guestUserNameInput,e.photoUrl=null,this.guestUserNameUpdateLoading=!0,(t=>{try{const e=JSON.stringify(t),i=_s(e,ut,pt);Es("_sfgut",i,!0)}catch(t){console.warn("Error in updateGuestUser: ",t),Us("Error in updateGuestUser: ",t)}})(e),await Snippyly.identify(e),this.snippylyUser=JSON.parse(JSON.stringify(e)),await Rs(this.apiKey,this.projectId||"",t,e),this.showGuestModeNameModal=!1,this.guestUserNameUpdated=!0,this.guestUserNameUpdateLoading=!1,Es("sfGuestUserNameUpdated","true"),zs(Zs.Events.GUEST_MODE_NAME_ADDED,{oldName:null==t?void 0:t.name,newName:null==e?void 0:e.name})}this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateGuestUserName: ",t),Us("Error in updateGuestUserName: ",t)}},this.submitPassword=async()=>{var t;try{if(!(null===(t=this.password)||void 0===t?void 0:t.trim()))return;if(this.validatingPasswordLoading)return;this.validatingPasswordLoading=!0,this.isPasswordValid=await(async(t,e,i)=>{try{const o=Ge(Os,xt),n=await o({apiKey:t,projectId:e,password:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in validatePassword: ",t),null}})(this.apiKey,this.projectId,this.password),Es("sfPasswordIsValid",this.isPasswordValid+"",!0),this.isPasswordValid?(this.password="",this.onPasswordProtectedModalCloseButtonClick(),this.showInvalidPassword=!1):this.showInvalidPassword=!0,this.validatingPasswordLoading=!1}catch(t){console.warn("Error in submitPassword: ",t),Us("Error in submitPassword: ",t)}},this.updateUserName=async()=>{var t;try{if(!(null===(t=this.guestUserNameInput)||void 0===t?void 0:t.trim()))return;if(this.guestUserNameUpdateLoading)return;this.guestUserNameUpdateLoading=!0;const e=JSON.parse(JSON.stringify(this.snippylyUser)),i=JSON.parse(JSON.stringify(this.snippylyUser));i.name=this.guestUserNameInput,await Rs(this.apiKey,this.projectId||"",e,i),await Snippyly.updateUser(i),this.snippylyUser=JSON.parse(JSON.stringify(i));const o=Ts();o.name=i.name;const n=JSON.stringify(o),s=_s(n,ut,pt);Es("_sfut",s,!0),this.guestUserNameUpdateLoading=!1,this.guestUserNameInput="",this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateUserName: ",t),Us("Error in updateUserName: ",t)}},this.disableCommentMode=()=>{var t;try{(null===(t=this.commentElement)||void 0===t?void 0:t.disableCommentMode)&&this.commentElement.disableCommentMode()}catch(t){console.warn("Error in disableAddCommentMode: ",t),Us("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?O`
2419
2419
  <div class="disable-add-comment-button" @click=${()=>this.disableCommentMode()}>
2420
2420
  <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2421
2421
  <path fill-rule="evenodd" clip-rule="evenodd" d="M3.52861 3.52858C3.78896 3.26823 4.21107 3.26823 4.47141 3.52858L8.00001 7.05717L11.5286 3.52858C11.789 3.26823 12.2111 3.26823 12.4714 3.52858C12.7318 3.78892 12.7318 4.21103 12.4714 4.47138L8.94282 7.99998L12.4714 11.5286C12.7318 11.7889 12.7318 12.211 12.4714 12.4714C12.2111 12.7317 11.789 12.7317 11.5286 12.4714L8.00001 8.94279L4.47141 12.4714C4.21107 12.7317 3.78896 12.7317 3.52861 12.4714C3.26826 12.211 3.26826 11.7889 3.52861 11.5286L7.0572 7.99998L3.52861 4.47138C3.26826 4.21103 3.26826 3.78892 3.52861 3.52858Z" fill="#FAFBFF"/>
2422
2422
  </svg>
2423
2423
  </div>
2424
- `:O``}catch(t){return console.warn("Error in disableAddCommentModeButton: ",t),Us("Error in disableAddCommentModeButton: ",t),O``}},this.addStyles=()=>{var t,e;try{const i=document.createElement("style");i.textContent=Vs.cssText,null===(t=this.shadowRoot)||void 0===t||t.appendChild(i);const o=document.createElement("style");o.textContent=Bs.cssText,null===(e=this.shadowRoot)||void 0===e||e.appendChild(o)}catch(t){console.warn("Error in addStyles: ",t),Us("Error in addStyles: ",t)}},this.guestUserNameUpdated=!!ks("sfGuestUserNameUpdated");const t=new URL(document.location);t.searchParams.has("st")&&t.searchParams.delete("st"),this.signInUrl=`${ht}/signin?redirect_url=${encodeURIComponent(null==t?void 0:t.toString())}&source=sf`,this.signOutUrl=`${ht}/signout?redirect_url=${encodeURIComponent(null==t?void 0:t.toString())}&source=sf`,window.Superflow={enableCustomLogin:async()=>{this.customLoginEnabledLocally=!0,Ss("_sfut"),await this.checkCustomLoginEnabled()},identify:async t=>{this.providedUser=t,this.customLoginEnabled&&this.loginWithCustomUser()},signInUrl:this.signInUrl,signOutUrl:this.signOutUrl};try{this.detectVersion(),this.setWindowEventListner(),this.urlChangeListener(),this.checkUrl(),console.log("*** Staging Mode ON! ***")}catch(t){console.warn("Error in constructor: ",t),Us("Error in constructor: ",t)}}get loadPlugin(){return this._loadPlugin}set loadPlugin(t){var e,i,o,n,s,r,a,l,c,d;this._loadPlugin=t,this.loadPlugin?(this.classList.add("visible"),null===(i=null===(e=null===document||void 0===document?void 0:document.body)||void 0===e?void 0:e.style)||void 0===i||i.setProperty("transform","none","important"),null===(s=null===(n=null===(o=null===document||void 0===document?void 0:document.body)||void 0===o?void 0:o.parentElement)||void 0===n?void 0:n.style)||void 0===s||s.setProperty("transform","none","important"),null===(a=null===(r=null===document||void 0===document?void 0:document.body)||void 0===r?void 0:r.style)||void 0===a||a.setProperty("perspective","none","important"),null===(d=null===(c=null===(l=null===document||void 0===document?void 0:document.body)||void 0===l?void 0:l.parentElement)||void 0===c?void 0:c.style)||void 0===d||d.setProperty("perspective","none","important")):this.classList.remove("visible")}get expanded(){return this._expanded}set expanded(t){this._expanded=t,this.expanded?this.classList.add("expanded"):this.classList.remove("expanded")}get isPlanExpired(){return this._isPlanExpired}set isPlanExpired(t){this._isPlanExpired=t,this.checkToEnableUpgradeButton()}get apiKey(){return this._apiKey}set apiKey(t){this._apiKey=t,this.onApiKeyChange(),js({apiKey:this.apiKey}),this.checkUrl(),this.detectToolbarEnabled()}get projectId(){return this._projectId}set projectId(t){this._projectId=t,this.detectToolbarEnabled()}get projectVersionKey(){return this._projectVersionKey}set projectVersionKey(t){try{this._projectVersionKey=t,this.projectVersionKey&&Es("projectVersionKey",this.projectVersionKey,!1,"sessionStorage"),this.exitReviewModeCalled||this.detectVersion()}catch(t){console.warn("Error in set projectVersionKey: ",t),Us("Error in set projectVersionKey: ",t)}}get autoLocation(){return this._autoLocation}set autoLocation(t){this._autoLocation="true"===t||!0===t}get menuOpenedId(){return this._menuOpenedId}set menuOpenedId(t){this._menuOpenedId=t,this.menuOpenedId?this.addWindowClickEventListener():this.removeWindowClickEventListener()}get isUserGlobalContact(){return this._isUserGlobalContact}set isUserGlobalContact(t){this._isUserGlobalContact=t,this.checkToEnableUpgradeButton()}get privateCommentModeEnabled(){return this._privateCommentModeEnabled}set privateCommentModeEnabled(t){this._privateCommentModeEnabled=t,this.darkMode=!!this.privateCommentModeEnabled}get customerMetadata(){return this._customerMetadata}set customerMetadata(t){this._customerMetadata=t,this.setLogos()}get darkMode(){return this._darkMode}set darkMode(t){this._darkMode=t,this.setLogos()}connectedCallback(){super.connectedCallback(),this.expanded=!0,this.setAttribute("data-velt-comment-disabled","true"),this.style.zIndex="2147483647",setTimeout((()=>{if(!this.superflowToolbarMoved){this.superflowToolbarMoved=!0,document.body.appendChild(this);const t=document.querySelector(".cdk-overlay-container");t&&document.body.appendChild(t)}}),5e3);const t=document.createElement("style");t.innerHTML='body[data-velt-ongoing-recording="screen"] superflow-toolbar { display: none !important; }',document.head.appendChild(t),this.addStyles(),setTimeout((()=>{const t=document.querySelectorAll('script[src*="snippyly.min.js"]');(null==t?void 0:t.length)>1&&console.warn("Multiple superflow scripts installed.")}),1e3)}async detectToolbarEnabled(){try{if(this.projectId&&this.apiKey){const t=document.location.toString();this.toolbarEnabled=await(async(t,e,i)=>{try{const o=Ge(Os,Et),n=await o({apiKey:t,projectId:e,url:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in checkToolbarEnabled: ",t),null}})(this.apiKey,this.projectId,t)}}catch(t){console.warn("Error in detectToolbarEnabled: ",t),Us("Error in detectToolbarEnabled: ",t)}}render(){var t,e,i,o,n,s,r,a,l,c,d,h,u,p,v,m,g,f;return this.loadPlugin&&this.toolbarEnabled?!this.snippylyUser||this.loading||null===this.isPlanExpired?O`
2424
+ `:O``}catch(t){return console.warn("Error in disableAddCommentModeButton: ",t),Us("Error in disableAddCommentModeButton: ",t),O``}},this.addStyles=()=>{var t,e;try{const i=document.createElement("style");i.textContent=Vs.cssText,null===(t=this.shadowRoot)||void 0===t||t.appendChild(i);const o=document.createElement("style");o.textContent=Bs.cssText,null===(e=this.shadowRoot)||void 0===e||e.appendChild(o)}catch(t){console.warn("Error in addStyles: ",t),Us("Error in addStyles: ",t)}},this.guestUserNameUpdated=!!ks("sfGuestUserNameUpdated");const t=new URL(document.location);t.searchParams.has("st")&&t.searchParams.delete("st"),this.signInUrl=`${ht}/signin?redirect_url=${encodeURIComponent(null==t?void 0:t.toString())}&source=sf`,this.signOutUrl=`${ht}/signout?redirect_url=${encodeURIComponent(null==t?void 0:t.toString())}&source=sf`,window.Superflow={enableCustomLogin:async()=>{this.customLoginEnabledLocally=!0,Ss("_sfut"),await this.checkCustomLoginEnabled()},identify:async t=>{this.providedUser=t,this.customLoginEnabled&&this.loginWithCustomUser()},signInUrl:this.signInUrl,signOutUrl:this.signOutUrl};try{this.detectVersion(),this.setWindowEventListner(),this.urlChangeListener(),this.checkUrl(),console.log("*** Staging Mode ON! ***")}catch(t){console.warn("Error in constructor: ",t),Us("Error in constructor: ",t)}}get loadPlugin(){return this._loadPlugin}set loadPlugin(t){var e,i,o,n,s,r,a,l,c,d;this._loadPlugin=t,this.loadPlugin?(this.classList.add("visible"),null===(i=null===(e=null===document||void 0===document?void 0:document.body)||void 0===e?void 0:e.style)||void 0===i||i.setProperty("transform","none","important"),null===(s=null===(n=null===(o=null===document||void 0===document?void 0:document.body)||void 0===o?void 0:o.parentElement)||void 0===n?void 0:n.style)||void 0===s||s.setProperty("transform","none","important"),null===(a=null===(r=null===document||void 0===document?void 0:document.body)||void 0===r?void 0:r.style)||void 0===a||a.setProperty("perspective","none","important"),null===(d=null===(c=null===(l=null===document||void 0===document?void 0:document.body)||void 0===l?void 0:l.parentElement)||void 0===c?void 0:c.style)||void 0===d||d.setProperty("perspective","none","important")):this.classList.remove("visible")}get expanded(){return this._expanded}set expanded(t){this._expanded=t,this.expanded?this.classList.add("expanded"):this.classList.remove("expanded")}get isPlanExpired(){return this._isPlanExpired}set isPlanExpired(t){this._isPlanExpired=t,this.checkToEnableUpgradeButton()}get apiKey(){return this._apiKey}set apiKey(t){this._apiKey=t,this.onApiKeyChange(),js({apiKey:this.apiKey}),this.checkUrl(),this.detectToolbarEnabled()}get projectId(){return this._projectId}set projectId(t){this._projectId=t,this.checkUrl(),this.detectToolbarEnabled()}get projectVersionKey(){return this._projectVersionKey}set projectVersionKey(t){try{this._projectVersionKey=t,this.projectVersionKey&&Es("projectVersionKey",this.projectVersionKey,!1,"sessionStorage"),this.exitReviewModeCalled||this.detectVersion()}catch(t){console.warn("Error in set projectVersionKey: ",t),Us("Error in set projectVersionKey: ",t)}}get autoLocation(){return this._autoLocation}set autoLocation(t){this._autoLocation="true"===t||!0===t}get menuOpenedId(){return this._menuOpenedId}set menuOpenedId(t){this._menuOpenedId=t,this.menuOpenedId?this.addWindowClickEventListener():this.removeWindowClickEventListener()}get isUserGlobalContact(){return this._isUserGlobalContact}set isUserGlobalContact(t){this._isUserGlobalContact=t,this.checkToEnableUpgradeButton()}get privateCommentModeEnabled(){return this._privateCommentModeEnabled}set privateCommentModeEnabled(t){this._privateCommentModeEnabled=t,this.darkMode=!!this.privateCommentModeEnabled}get customerMetadata(){return this._customerMetadata}set customerMetadata(t){this._customerMetadata=t,this.setLogos()}get darkMode(){return this._darkMode}set darkMode(t){this._darkMode=t,this.setLogos()}connectedCallback(){super.connectedCallback(),this.expanded=!0,this.setAttribute("data-velt-comment-disabled","true"),this.style.zIndex="2147483647",setTimeout((()=>{if(!this.superflowToolbarMoved){this.superflowToolbarMoved=!0,document.body.appendChild(this);const t=document.querySelector(".cdk-overlay-container");t&&document.body.appendChild(t)}}),5e3);const t=document.createElement("style");t.innerHTML='body[data-velt-ongoing-recording="screen"] superflow-toolbar { display: none !important; }',document.head.appendChild(t),this.addStyles(),setTimeout((()=>{const t=document.querySelectorAll('script[src*="snippyly.min.js"]');(null==t?void 0:t.length)>1&&console.warn("Multiple superflow scripts installed.")}),1e3)}async detectToolbarEnabled(){try{if(this.projectId&&this.apiKey){const t=document.location.toString();this.toolbarEnabled=await(async(t,e,i)=>{try{const o=Ge(Os,Et),n=await o({apiKey:t,projectId:e,url:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in checkToolbarEnabled: ",t),null}})(this.apiKey,this.projectId,t)}}catch(t){console.warn("Error in detectToolbarEnabled: ",t),Us("Error in detectToolbarEnabled: ",t)}}render(){var t,e,i,o,n,s,r,a,l,c,d,h,u,p,v,m,g,f;return this.loadPlugin&&this.toolbarEnabled?!this.snippylyUser||this.loading||null===this.isPlanExpired?O`
2425
2425
  <div class="snippyly-plugin-container" part="superflow-toolbar-container">
2426
2426
  <div class="toolbar" id="smallToolbar">
2427
2427
  <!-- <div class="toolbar-section">
@@ -2650,7 +2650,7 @@ class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o
2650
2650
  </svg>
2651
2651
  </div>
2652
2652
 
2653
- ${(!(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)&&!(null===(e=this.snippylyUser)||void 0===e?void 0:e.name)||(null===(i=this.snippylyUser)||void 0===i?void 0:i.isGuest)&&!this.guestUserNameUpdated)&&this.passwordProtected&&this.isPasswordValid?O`
2653
+ ${!(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)&&!(null===(e=this.snippylyUser)||void 0===e?void 0:e.name)||(null===(i=this.snippylyUser)||void 0===i?void 0:i.isGuest)&&!this.guestUserNameUpdated?O`
2654
2654
  <div class="toolbar-section snippyly-logo ${st({"d-xs-none":this.expanded})}" @click=${()=>{zs(Zs.Events.TOOLBAR_NOTIFICATION_CLICKED),this.openGuestModeNameModel()}}>
2655
2655
 
2656
2656
  <div class="notification-container">
@@ -2669,7 +2669,43 @@ class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o
2669
2669
 
2670
2670
  <!-- Below features should only be allowed if user role is available -->
2671
2671
 
2672
- ${this.snippylyUserRole&&!this.isPlanExpired&&!this.allFeatureDisabled&&!this.passwordProtected||this.passwordProtected&&this.isPasswordValid&&!this.allFeatureRestricted?O`
2672
+ ${!this.snippylyUserRole||this.isPlanExpired||this.allFeatureDisabled||this.allFeatureRestricted||!(!this.passwordProtected||this.passwordProtected&&this.isPasswordValid)?O`
2673
+ ${this.isPlanExpired?O`
2674
+ <div class="tooltip">
2675
+ <div class="tooltiptext">
2676
+ ${this.isUserGlobalContact?O`Your current plan has <br/> expired, please renew <br/> plan to continue.`:O`Your current plan has expired, <br/> please contact admin.`}
2677
+ </div>
2678
+ <div class="s-alert-btn">
2679
+ <div class='error-container'>
2680
+ <svg class="error-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2681
+ <path d="M12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36628 6.91131 3.68509 8.55585C3.0039 10.2004 2.82567 12.01 3.17294 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89471 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12C20.9975 9.61382 20.0485 7.3261 18.3612 5.63882C16.6739 3.95154 14.3862 3.00252 12 3ZM12 19.6154C10.4938 19.6154 9.02146 19.1687 7.76912 18.332C6.51678 17.4952 5.5407 16.3058 4.96431 14.9143C4.38792 13.5227 4.23711 11.9916 4.53095 10.5143C4.82479 9.03707 5.55008 7.68014 6.61511 6.61511C7.68014 5.55008 9.03708 4.82478 10.5143 4.53094C11.9916 4.2371 13.5228 4.38791 14.9143 4.9643C16.3058 5.54069 17.4952 6.51677 18.332 7.76912C19.1688 9.02146 19.6154 10.4938 19.6154 12C19.6131 14.019 18.81 15.9547 17.3824 17.3824C15.9547 18.81 14.019 19.6131 12 19.6154ZM11.3077 12.6923V7.84615C11.3077 7.66254 11.3806 7.48645 11.5105 7.35662C11.6403 7.22678 11.8164 7.15385 12 7.15385C12.1836 7.15385 12.3597 7.22678 12.4895 7.35662C12.6194 7.48645 12.6923 7.66254 12.6923 7.84615V12.6923C12.6923 12.8759 12.6194 13.052 12.4895 13.1818C12.3597 13.3117 12.1836 13.3846 12 13.3846C11.8164 13.3846 11.6403 13.3117 11.5105 13.1818C11.3806 13.052 11.3077 12.8759 11.3077 12.6923ZM13.0385 15.8077C13.0385 16.0131 12.9776 16.2139 12.8635 16.3846C12.7493 16.5554 12.5872 16.6885 12.3974 16.7671C12.2076 16.8457 11.9988 16.8663 11.7974 16.8262C11.596 16.7861 11.4109 16.6872 11.2657 16.542C11.1205 16.3968 11.0216 16.2117 10.9815 16.0103C10.9414 15.8088 10.962 15.6 11.0406 15.4103C11.1192 15.2205 11.2523 15.0583 11.4231 14.9442C11.5938 14.8301 11.7946 14.7692 12 14.7692C12.2754 14.7692 12.5396 14.8786 12.7343 15.0734C12.9291 15.2681 13.0385 15.5323 13.0385 15.8077Z" fill="currentColor"/>
2682
+ </svg>
2683
+ <div class="error-message">Expired</div>
2684
+ </div>
2685
+ ${this.isUserGlobalContact?O`
2686
+ <div class="s-cta-btn" @click=${()=>this.onUpgradePlanClick()}>
2687
+ Renew Plan
2688
+ </div>
2689
+ `:null}
2690
+ </div>
2691
+ </div>
2692
+ `:null}
2693
+ ${this.snippylyUserRole?null:O`
2694
+ <div class="tooltip ${st({"d-none":!this.expanded||this.addCommentMode})}">
2695
+ <div class="tooltiptext">
2696
+ ${this.snippylyUserRole?null:O`${Gs("You don't have access to this project.")} <br/> ${Gs("Please contact admin.")}`}
2697
+ </div>
2698
+ <div class="s-alert-btn">
2699
+ <div class='error-container'>
2700
+ <svg class="error-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2701
+ <path d="M12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36628 6.91131 3.68509 8.55585C3.0039 10.2004 2.82567 12.01 3.17294 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89471 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12C20.9975 9.61382 20.0485 7.3261 18.3612 5.63882C16.6739 3.95154 14.3862 3.00252 12 3ZM12 19.6154C10.4938 19.6154 9.02146 19.1687 7.76912 18.332C6.51678 17.4952 5.5407 16.3058 4.96431 14.9143C4.38792 13.5227 4.23711 11.9916 4.53095 10.5143C4.82479 9.03707 5.55008 7.68014 6.61511 6.61511C7.68014 5.55008 9.03708 4.82478 10.5143 4.53094C11.9916 4.2371 13.5228 4.38791 14.9143 4.9643C16.3058 5.54069 17.4952 6.51677 18.332 7.76912C19.1688 9.02146 19.6154 10.4938 19.6154 12C19.6131 14.019 18.81 15.9547 17.3824 17.3824C15.9547 18.81 14.019 19.6131 12 19.6154ZM11.3077 12.6923V7.84615C11.3077 7.66254 11.3806 7.48645 11.5105 7.35662C11.6403 7.22678 11.8164 7.15385 12 7.15385C12.1836 7.15385 12.3597 7.22678 12.4895 7.35662C12.6194 7.48645 12.6923 7.66254 12.6923 7.84615V12.6923C12.6923 12.8759 12.6194 13.052 12.4895 13.1818C12.3597 13.3117 12.1836 13.3846 12 13.3846C11.8164 13.3846 11.6403 13.3117 11.5105 13.1818C11.3806 13.052 11.3077 12.8759 11.3077 12.6923ZM13.0385 15.8077C13.0385 16.0131 12.9776 16.2139 12.8635 16.3846C12.7493 16.5554 12.5872 16.6885 12.3974 16.7671C12.2076 16.8457 11.9988 16.8663 11.7974 16.8262C11.596 16.7861 11.4109 16.6872 11.2657 16.542C11.1205 16.3968 11.0216 16.2117 10.9815 16.0103C10.9414 15.8088 10.962 15.6 11.0406 15.4103C11.1192 15.2205 11.2523 15.0583 11.4231 14.9442C11.5938 14.8301 11.7946 14.7692 12 14.7692C12.2754 14.7692 12.5396 14.8786 12.7343 15.0734C12.9291 15.2681 13.0385 15.5323 13.0385 15.8077Z" fill="currentColor"/>
2702
+ </svg>
2703
+ <div class="error-message">Request Access</div>
2704
+ </div>
2705
+ </div>
2706
+ </div>
2707
+ `}
2708
+ `:O`
2673
2709
  <!-- divider -->
2674
2710
  <div class="toolbar-section d-xs-none ${st({"d-none":!this.expanded})}">
2675
2711
  <div class="toolbar-divider"></div>
@@ -2788,43 +2824,7 @@ class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o
2788
2824
  <!-- divider -->
2789
2825
  <div class="toolbar-section ${st({"d-none":!this.expanded||this.addCommentMode})}">
2790
2826
  <div class="toolbar-divider"></div>
2791
- </div>`:O`
2792
- ${this.isPlanExpired?O`
2793
- <div class="tooltip">
2794
- <div class="tooltiptext">
2795
- ${this.isUserGlobalContact?O`Your current plan has <br/> expired, please renew <br/> plan to continue.`:O`Your current plan has expired, <br/> please contact admin.`}
2796
- </div>
2797
- <div class="s-alert-btn">
2798
- <div class='error-container'>
2799
- <svg class="error-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2800
- <path d="M12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36628 6.91131 3.68509 8.55585C3.0039 10.2004 2.82567 12.01 3.17294 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89471 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12C20.9975 9.61382 20.0485 7.3261 18.3612 5.63882C16.6739 3.95154 14.3862 3.00252 12 3ZM12 19.6154C10.4938 19.6154 9.02146 19.1687 7.76912 18.332C6.51678 17.4952 5.5407 16.3058 4.96431 14.9143C4.38792 13.5227 4.23711 11.9916 4.53095 10.5143C4.82479 9.03707 5.55008 7.68014 6.61511 6.61511C7.68014 5.55008 9.03708 4.82478 10.5143 4.53094C11.9916 4.2371 13.5228 4.38791 14.9143 4.9643C16.3058 5.54069 17.4952 6.51677 18.332 7.76912C19.1688 9.02146 19.6154 10.4938 19.6154 12C19.6131 14.019 18.81 15.9547 17.3824 17.3824C15.9547 18.81 14.019 19.6131 12 19.6154ZM11.3077 12.6923V7.84615C11.3077 7.66254 11.3806 7.48645 11.5105 7.35662C11.6403 7.22678 11.8164 7.15385 12 7.15385C12.1836 7.15385 12.3597 7.22678 12.4895 7.35662C12.6194 7.48645 12.6923 7.66254 12.6923 7.84615V12.6923C12.6923 12.8759 12.6194 13.052 12.4895 13.1818C12.3597 13.3117 12.1836 13.3846 12 13.3846C11.8164 13.3846 11.6403 13.3117 11.5105 13.1818C11.3806 13.052 11.3077 12.8759 11.3077 12.6923ZM13.0385 15.8077C13.0385 16.0131 12.9776 16.2139 12.8635 16.3846C12.7493 16.5554 12.5872 16.6885 12.3974 16.7671C12.2076 16.8457 11.9988 16.8663 11.7974 16.8262C11.596 16.7861 11.4109 16.6872 11.2657 16.542C11.1205 16.3968 11.0216 16.2117 10.9815 16.0103C10.9414 15.8088 10.962 15.6 11.0406 15.4103C11.1192 15.2205 11.2523 15.0583 11.4231 14.9442C11.5938 14.8301 11.7946 14.7692 12 14.7692C12.2754 14.7692 12.5396 14.8786 12.7343 15.0734C12.9291 15.2681 13.0385 15.5323 13.0385 15.8077Z" fill="currentColor"/>
2801
- </svg>
2802
- <div class="error-message">Expired</div>
2803
- </div>
2804
- ${this.isUserGlobalContact?O`
2805
- <div class="s-cta-btn" @click=${()=>this.onUpgradePlanClick()}>
2806
- Renew Plan
2807
- </div>
2808
- `:null}
2809
- </div>
2810
- </div>
2811
- `:null}
2812
- ${this.snippylyUserRole?null:O`
2813
- <div class="tooltip ${st({"d-none":!this.expanded||this.addCommentMode})}">
2814
- <div class="tooltiptext">
2815
- ${this.snippylyUserRole?null:O`${Gs("You don't have access to this project.")} <br/> ${Gs("Please contact admin.")}`}
2816
- </div>
2817
- <div class="s-alert-btn">
2818
- <div class='error-container'>
2819
- <svg class="error-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2820
- <path d="M12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36628 6.91131 3.68509 8.55585C3.0039 10.2004 2.82567 12.01 3.17294 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89471 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12C20.9975 9.61382 20.0485 7.3261 18.3612 5.63882C16.6739 3.95154 14.3862 3.00252 12 3ZM12 19.6154C10.4938 19.6154 9.02146 19.1687 7.76912 18.332C6.51678 17.4952 5.5407 16.3058 4.96431 14.9143C4.38792 13.5227 4.23711 11.9916 4.53095 10.5143C4.82479 9.03707 5.55008 7.68014 6.61511 6.61511C7.68014 5.55008 9.03708 4.82478 10.5143 4.53094C11.9916 4.2371 13.5228 4.38791 14.9143 4.9643C16.3058 5.54069 17.4952 6.51677 18.332 7.76912C19.1688 9.02146 19.6154 10.4938 19.6154 12C19.6131 14.019 18.81 15.9547 17.3824 17.3824C15.9547 18.81 14.019 19.6131 12 19.6154ZM11.3077 12.6923V7.84615C11.3077 7.66254 11.3806 7.48645 11.5105 7.35662C11.6403 7.22678 11.8164 7.15385 12 7.15385C12.1836 7.15385 12.3597 7.22678 12.4895 7.35662C12.6194 7.48645 12.6923 7.66254 12.6923 7.84615V12.6923C12.6923 12.8759 12.6194 13.052 12.4895 13.1818C12.3597 13.3117 12.1836 13.3846 12 13.3846C11.8164 13.3846 11.6403 13.3117 11.5105 13.1818C11.3806 13.052 11.3077 12.8759 11.3077 12.6923ZM13.0385 15.8077C13.0385 16.0131 12.9776 16.2139 12.8635 16.3846C12.7493 16.5554 12.5872 16.6885 12.3974 16.7671C12.2076 16.8457 11.9988 16.8663 11.7974 16.8262C11.596 16.7861 11.4109 16.6872 11.2657 16.542C11.1205 16.3968 11.0216 16.2117 10.9815 16.0103C10.9414 15.8088 10.962 15.6 11.0406 15.4103C11.1192 15.2205 11.2523 15.0583 11.4231 14.9442C11.5938 14.8301 11.7946 14.7692 12 14.7692C12.2754 14.7692 12.5396 14.8786 12.7343 15.0734C12.9291 15.2681 13.0385 15.5323 13.0385 15.8077Z" fill="currentColor"/>
2821
- </svg>
2822
- <div class="error-message">Request Access</div>
2823
- </div>
2824
- </div>
2825
- </div>
2826
- `}
2827
- `}
2827
+ </div>`}
2828
2828
 
2829
2829
  ${this.allFeatureDisabled?O`
2830
2830
  <div class="s-alert-btn">
@@ -3226,4 +3226,4 @@ class ms extends lo{}ms.Encryptor=class extends ms{processBlock(t,e){const i=t,o
3226
3226
  </div>
3227
3227
  </div>
3228
3228
  `:O``}
3229
- `:O``}}Ys.styles=[Vs,Bs],Ks([it()],Ys.prototype,"loadPlugin",null),Ks([it()],Ys.prototype,"comments",void 0),Ks([it()],Ys.prototype,"commentElement",void 0),Ks([it()],Ys.prototype,"contactElement",void 0),Ks([it()],Ys.prototype,"rewriterElement",void 0),Ks([it()],Ys.prototype,"presenceElement",void 0),Ks([it()],Ys.prototype,"commentSubscription",void 0),Ks([it()],Ys.prototype,"selectionElement",void 0),Ks([it()],Ys.prototype,"addCommentMode",void 0),Ks([it()],Ys.prototype,"showTourCommentTooltip",void 0),Ks([it()],Ys.prototype,"allFeatureDisabled",void 0),Ks([it()],Ys.prototype,"allFeatureRestricted",void 0),Ks([it()],Ys.prototype,"guestMode",void 0),Ks([it()],Ys.prototype,"_expanded",void 0),Ks([it()],Ys.prototype,"loading",void 0),Ks([it()],Ys.prototype,"signInError",void 0),Ks([it()],Ys.prototype,"snippylyUser",void 0),Ks([it()],Ys.prototype,"snippylyUserRole",void 0),Ks([it()],Ys.prototype,"_isPlanExpired",void 0),Ks([it()],Ys.prototype,"showOnboardingModal",void 0),Ks([it()],Ys.prototype,"showLiveDemoModal",void 0),Ks([it()],Ys.prototype,"showFigmaDemoModal",void 0),Ks([it()],Ys.prototype,"showGuestModeSignInModal",void 0),Ks([it()],Ys.prototype,"guestModeSignInModalConfig",void 0),Ks([it()],Ys.prototype,"showGuestModeNameModal",void 0),Ks([it()],Ys.prototype,"guestModeSignInBannerVisible",void 0),Ks([it()],Ys.prototype,"guestUserNameInput",void 0),Ks([it()],Ys.prototype,"guestUserModelOpened",void 0),Ks([it()],Ys.prototype,"guestUserNameUpdated",void 0),Ks([it()],Ys.prototype,"guestUserNameUpdateLoading",void 0),Ks([et()],Ys.prototype,"apiKey",null),Ks([et()],Ys.prototype,"projectId",null),Ks([it()],Ys.prototype,"staging",void 0),Ks([et()],Ys.prototype,"projectVersionKey",null),Ks([it()],Ys.prototype,"projectVersion",void 0),Ks([it()],Ys.prototype,"version",void 0),Ks([et()],Ys.prototype,"autoLocation",null),Ks([it()],Ys.prototype,"_menuOpenedId",void 0),Ks([it()],Ys.prototype,"copyLinkTooltip",void 0),Ks([it()],Ys.prototype,"invalidApiKey",void 0),Ks([it()],Ys.prototype,"documentId",void 0),Ks([it()],Ys.prototype,"_isUserGlobalContact",void 0),Ks([it()],Ys.prototype,"location",void 0),Ks([it()],Ys.prototype,"qrCode",void 0),Ks([it()],Ys.prototype,"showQrCode",void 0),Ks([it()],Ys.prototype,"customLoginEnabledLocally",void 0),Ks([et()],Ys.prototype,"customLoginEnabled",void 0),Ks([it()],Ys.prototype,"providedUser",void 0),Ks([it()],Ys.prototype,"autoTranslation",void 0),Ks([it()],Ys.prototype,"addCommentCount",void 0),Ks([it()],Ys.prototype,"isSigningInUserAdmin",void 0),Ks([it()],Ys.prototype,"_privateCommentModeEnabled",void 0),Ks([it()],Ys.prototype,"superflowToolbarMoved",void 0),Ks([it()],Ys.prototype,"_customerMetadata",void 0),Ks([it()],Ys.prototype,"logoMark",void 0),Ks([it()],Ys.prototype,"wordMark",void 0),Ks([it()],Ys.prototype,"_darkMode",void 0),Ks([it()],Ys.prototype,"projectConfig",void 0),Ks([it()],Ys.prototype,"allowGuestModeSignIn",void 0),Ks([it()],Ys.prototype,"toolbarEnabled",void 0),Ks([it()],Ys.prototype,"passwordProtected",void 0),Ks([it()],Ys.prototype,"isPasswordValid",void 0),Ks([it()],Ys.prototype,"password",void 0),Ks([it()],Ys.prototype,"validatingPasswordLoading",void 0),Ks([it()],Ys.prototype,"showPasswordProtectedModal",void 0),Ks([it()],Ys.prototype,"showInvalidPassword",void 0),(t=>{if(customElements.get("superflow-toolbar")||customElements.get("snippyly-plugin"))return;const e={allow:["sdkUrl","windowVariables","snippylyPlugin"],loaders:{windowVariables:()=>{const t=null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_API_KEY;return{valid:!!t,type:"windowVariables",apiKey:t,staging:!!(null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_STAGING),projectVersionKey:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_PROJECT_VERSION_KEY,projectId:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_PROJECT_ID,autoLocation:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_AUTO_LOCATION}},snippylyPlugin:()=>{const t=document.querySelector("snippyly-plugin");if(!t)return;const e=t.getAttribute("apiKey"),i=!!t.getAttribute("staging"),o=t.getAttribute("projectVersionKey"),n=t.getAttribute("projectId"),s=t.getAttribute("autoLocation");return null==t||t.remove(),{valid:!!e,type:"snippylyPlugin",apiKey:e,staging:i,projectVersionKey:o,projectId:n,autoLocation:s}},sdkUrl:()=>{const t=document.getElementById("superflowToolbarScript");if(!t)return;const e=null==t?void 0:t.src,i=new URL(e).searchParams,o=i.has("apiKey")?i.get("apiKey"):void 0;return{valid:!!o,type:"sdkUrl",apiKey:o,staging:void 0,projectVersionKey:void 0,projectId:i.has("projectId")?i.get("projectId"):void 0,autoLocation:i.has("autoLocation")?i.get("autoLocation"):void 0}}},load:()=>{for(let t=0;t<e.allow.length;t++){const i=e.allow[t],o=e.loaders[i]();if(o&&o.valid)return o}}},i=()=>{try{const i=e.load();if(customElements.define("superflow-toolbar",t),i&&i.valid){(()=>{try{document.querySelectorAll("superflow-toolbar").forEach((t=>{t.remove()})),document.querySelectorAll("snippyly-plugin").forEach((t=>{t.remove()}))}catch(t){console.warn("Error in removeSuperflowToolbarTag: ",t)}})();const t={};return t.apiKey=i.apiKey,i.staging&&(t.staging="true"),i.projectVersionKey&&(t.projectVersionKey=i.projectVersionKey),i.projectId&&(t.projectId=i.projectId),(null==i?void 0:i.autoLocation)&&(t.autoLocation=i.autoLocation),void((t={})=>{try{const e=document.createElement("superflow-toolbar");Object.keys(t||{}).forEach((i=>{e.setAttribute(i,t[i])})),document.body.appendChild(e)}catch(t){console.warn("Error in loadSuperflowToolbarTag: ",t)}})(t)}}catch(t){console.warn("Error in initSuperflow: ",t)}};(null===document||void 0===document?void 0:document.body)?i():null===document||void 0===document||document.addEventListener("DOMContentLoaded",(()=>{i()}))})(Ys);class Ws extends Q{}customElements.get("snippyly-plugin")||customElements.define("snippyly-plugin",Ws);export{Ws as SnippylyPlugin,Ys as SuperflowToolbar};
3229
+ `:O``}}Ks.styles=[Vs,Bs],Ws([it()],Ks.prototype,"loadPlugin",null),Ws([it()],Ks.prototype,"comments",void 0),Ws([it()],Ks.prototype,"commentElement",void 0),Ws([it()],Ks.prototype,"contactElement",void 0),Ws([it()],Ks.prototype,"rewriterElement",void 0),Ws([it()],Ks.prototype,"presenceElement",void 0),Ws([it()],Ks.prototype,"commentSubscription",void 0),Ws([it()],Ks.prototype,"selectionElement",void 0),Ws([it()],Ks.prototype,"addCommentMode",void 0),Ws([it()],Ks.prototype,"showTourCommentTooltip",void 0),Ws([it()],Ks.prototype,"allFeatureDisabled",void 0),Ws([it()],Ks.prototype,"allFeatureRestricted",void 0),Ws([it()],Ks.prototype,"guestMode",void 0),Ws([it()],Ks.prototype,"_expanded",void 0),Ws([it()],Ks.prototype,"loading",void 0),Ws([it()],Ks.prototype,"signInError",void 0),Ws([it()],Ks.prototype,"snippylyUser",void 0),Ws([it()],Ks.prototype,"snippylyUserRole",void 0),Ws([it()],Ks.prototype,"_isPlanExpired",void 0),Ws([it()],Ks.prototype,"showOnboardingModal",void 0),Ws([it()],Ks.prototype,"showLiveDemoModal",void 0),Ws([it()],Ks.prototype,"showFigmaDemoModal",void 0),Ws([it()],Ks.prototype,"showGuestModeSignInModal",void 0),Ws([it()],Ks.prototype,"guestModeSignInModalConfig",void 0),Ws([it()],Ks.prototype,"showGuestModeNameModal",void 0),Ws([it()],Ks.prototype,"guestModeSignInBannerVisible",void 0),Ws([it()],Ks.prototype,"guestUserNameInput",void 0),Ws([it()],Ks.prototype,"guestUserModelOpened",void 0),Ws([it()],Ks.prototype,"guestUserNameUpdated",void 0),Ws([it()],Ks.prototype,"guestUserNameUpdateLoading",void 0),Ws([et()],Ks.prototype,"apiKey",null),Ws([et()],Ks.prototype,"projectId",null),Ws([it()],Ks.prototype,"staging",void 0),Ws([et()],Ks.prototype,"projectVersionKey",null),Ws([it()],Ks.prototype,"projectVersion",void 0),Ws([it()],Ks.prototype,"version",void 0),Ws([et()],Ks.prototype,"autoLocation",null),Ws([it()],Ks.prototype,"_menuOpenedId",void 0),Ws([it()],Ks.prototype,"copyLinkTooltip",void 0),Ws([it()],Ks.prototype,"invalidApiKey",void 0),Ws([it()],Ks.prototype,"documentId",void 0),Ws([it()],Ks.prototype,"_isUserGlobalContact",void 0),Ws([it()],Ks.prototype,"location",void 0),Ws([it()],Ks.prototype,"qrCode",void 0),Ws([it()],Ks.prototype,"showQrCode",void 0),Ws([it()],Ks.prototype,"customLoginEnabledLocally",void 0),Ws([et()],Ks.prototype,"customLoginEnabled",void 0),Ws([it()],Ks.prototype,"providedUser",void 0),Ws([it()],Ks.prototype,"autoTranslation",void 0),Ws([it()],Ks.prototype,"addCommentCount",void 0),Ws([it()],Ks.prototype,"isSigningInUserAdmin",void 0),Ws([it()],Ks.prototype,"_privateCommentModeEnabled",void 0),Ws([it()],Ks.prototype,"superflowToolbarMoved",void 0),Ws([it()],Ks.prototype,"_customerMetadata",void 0),Ws([it()],Ks.prototype,"logoMark",void 0),Ws([it()],Ks.prototype,"wordMark",void 0),Ws([it()],Ks.prototype,"_darkMode",void 0),Ws([it()],Ks.prototype,"projectConfig",void 0),Ws([it()],Ks.prototype,"allowGuestModeSignIn",void 0),Ws([it()],Ks.prototype,"toolbarEnabled",void 0),Ws([it()],Ks.prototype,"passwordProtected",void 0),Ws([it()],Ks.prototype,"isPasswordValid",void 0),Ws([it()],Ks.prototype,"password",void 0),Ws([it()],Ks.prototype,"validatingPasswordLoading",void 0),Ws([it()],Ks.prototype,"showPasswordProtectedModal",void 0),Ws([it()],Ks.prototype,"showInvalidPassword",void 0),(t=>{if(customElements.get("superflow-toolbar")||customElements.get("snippyly-plugin"))return;const e={allow:["sdkUrl","windowVariables","snippylyPlugin"],loaders:{windowVariables:()=>{const t=null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_API_KEY;return{valid:!!t,type:"windowVariables",apiKey:t,staging:!!(null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_STAGING),projectVersionKey:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_PROJECT_VERSION_KEY,projectId:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_PROJECT_ID,autoLocation:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_AUTO_LOCATION}},snippylyPlugin:()=>{const t=document.querySelector("snippyly-plugin");if(!t)return;const e=t.getAttribute("apiKey"),i=!!t.getAttribute("staging"),o=t.getAttribute("projectVersionKey"),n=t.getAttribute("projectId"),s=t.getAttribute("autoLocation");return null==t||t.remove(),{valid:!!e,type:"snippylyPlugin",apiKey:e,staging:i,projectVersionKey:o,projectId:n,autoLocation:s}},sdkUrl:()=>{const t=document.getElementById("superflowToolbarScript");if(!t)return;const e=null==t?void 0:t.src,i=new URL(e).searchParams,o=i.has("apiKey")?i.get("apiKey"):void 0;return{valid:!!o,type:"sdkUrl",apiKey:o,staging:void 0,projectVersionKey:void 0,projectId:i.has("projectId")?i.get("projectId"):void 0,autoLocation:i.has("autoLocation")?i.get("autoLocation"):void 0}}},load:()=>{for(let t=0;t<e.allow.length;t++){const i=e.allow[t],o=e.loaders[i]();if(o&&o.valid)return o}}},i=()=>{try{const i=e.load();if(customElements.define("superflow-toolbar",t),i&&i.valid){(()=>{try{document.querySelectorAll("superflow-toolbar").forEach((t=>{t.remove()})),document.querySelectorAll("snippyly-plugin").forEach((t=>{t.remove()}))}catch(t){console.warn("Error in removeSuperflowToolbarTag: ",t)}})();const t={};return t.apiKey=i.apiKey,i.staging&&(t.staging="true"),i.projectVersionKey&&(t.projectVersionKey=i.projectVersionKey),i.projectId&&(t.projectId=i.projectId),(null==i?void 0:i.autoLocation)&&(t.autoLocation=i.autoLocation),void((t={})=>{try{const e=document.createElement("superflow-toolbar");Object.keys(t||{}).forEach((i=>{e.setAttribute(i,t[i])})),document.body.appendChild(e)}catch(t){console.warn("Error in loadSuperflowToolbarTag: ",t)}})(t)}}catch(t){console.warn("Error in initSuperflow: ",t)}};(null===document||void 0===document?void 0:document.body)?i():null===document||void 0===document||document.addEventListener("DOMContentLoaded",(()=>{i()}))})(Ks);class Ys extends Q{}customElements.get("snippyly-plugin")||customElements.define("snippyly-plugin",Ys);export{Ys as SnippylyPlugin,Ks as SuperflowToolbar};