@usesuperflow/toolbar-staging 1.0.669 → 1.0.671
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/superflow.js +210 -157
- package/superflow.min.js +337 -284
package/superflow.js
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
var t=function(t){return new Promise((function(e,i){var
|
|
1
|
+
var t=function(t){return new Promise((function(e,i){var o=document.getElementById("veltScript"),n=!1,s=!1,r="latest",a="";if(t&&(t.staging&&(n=t.staging),t.version&&(r=t.version),t.develop&&(s=t.develop),t.proxyDomain&&(a=t.proxyDomain)),(null==t?void 0:t.version)||(r="1.0.120"),o)e();else{var l=document.createElement("script");n?l.src="https://us-central1-snipply-sdk-staging.cloudfunctions.net/getprivatenpmpackagefile?packageName=sdk-staging&packageVersion=".concat(r&&"latest"!==r?r:"1.0.1","&filePath=velt.js&orgName=@veltdev"):s?l.src="https://us-central1-snipply-sdk-staging.cloudfunctions.net/getprivatenpmpackagefile?packageName=sdk-dev&packageVersion=".concat(r&&"latest"!==r?r:"1.0.1","&filePath=velt.js&orgName=@veltdev"):a?("/"===a[a.length-1]&&(a=a.slice(0,-1)),l.src="".concat(a,"/lib/sdk@").concat(r,"/velt.js")):l.src="https://cdn.jsdelivr.net/npm/@veltdev/sdk@".concat(r,"/velt.js"),l.id="veltScript",l.type="module",document.body.appendChild(l),l.onload=function(){e()},l.onerror=function(){i(new Error("Failed to load Velt script"))}}}))},e=function(e,i){return function(t,e,i,o){return new(i||(i=Promise))((function(e,n){function s(t){try{a(o.next(t))}catch(t){n(t)}}function r(t){try{a(o.throw(t))}catch(t){n(t)}}function a(t){var o;t.done?e(t.value):(o=t.value,o instanceof i?o:new i((function(t){t(o)}))).then(s,r)}a((o=o.apply(t,[])).next())}))}(void 0,0,void 0,(function(){var o,n;return function(t,e){var i,o,n,s,r={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(l){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(r=0)),r;)try{if(i=1,o&&(n=2&a[0]?o.return:a[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,a[1])).done)return n;switch(o=0,n&&(a=[2&a[0],n.value]),a[0]){case 0:case 1:n=a;break;case 4:return r.label++,{value:a[1],done:!1};case 5:r.label++,o=a[1],a=[0];continue;case 7:a=r.ops.pop(),r.trys.pop();continue;default:if(!((n=(n=r.trys).length>0&&n[n.length-1])||6!==a[0]&&2!==a[0])){r=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]<n[3])){r.label=a[1];break}if(6===a[0]&&r.label<n[1]){r.label=n[1],n=a;break}if(n&&r.label<n[2]){r.label=n[2],r.ops.push(a);break}n[2]&&r.ops.pop(),r.trys.pop();continue}a=e.call(t,r)}catch(t){a=[6,t],o=0}finally{i=n=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}}(this,(function(s){switch(s.label){case 0:return s.trys.push([0,6,,7]),[4,t(null==i?void 0:i.options)];case 1:return s.sent(),o=window.Velt,i?[4,null==o?void 0:o.init(e,i)]:[3,3];case 2:return s.sent(),[3,5];case 3:return[4,null==o?void 0:o.init(e)];case 4:s.sent(),s.label=5;case 5:return(null==o?void 0:o.st)&&(null==o||o.st("client")),[2,o];case 6:return n=s.sent(),console.error(n),[2,null];case 7:return[2]}}))}))};
|
|
2
2
|
/**
|
|
3
3
|
* @license
|
|
4
4
|
* Copyright 2019 Google LLC
|
|
5
5
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
-
*/const i=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,
|
|
6
|
+
*/const i=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,o=Symbol(),n=new Map;let s=class{constructor(t,e){if(this._$cssResult$=!0,e!==o)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t}get styleSheet(){let t=n.get(this.cssText);return i&&void 0===t&&(n.set(this.cssText,t=new CSSStyleSheet),t.replaceSync(this.cssText)),t}toString(){return this.cssText}};const r=(t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[o+1]),t[0]);return new s(i,o)},a=i?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new s("string"==typeof t?t:t+"",o))(e)})(t):t
|
|
7
7
|
/**
|
|
8
8
|
* @license
|
|
9
9
|
* Copyright 2017 Google LLC
|
|
10
10
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
11
|
-
*/;var l;const c=window.trustedTypes,d=c?c.emptyScript:"",
|
|
11
|
+
*/;var l;const c=window.trustedTypes,d=c?c.emptyScript:"",h=window.reactiveElementPolyfillSupport,u={toAttribute(t,e){switch(e){case Boolean:t=t?d:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},p=(t,e)=>e!==t&&(e==e||t==t),v={attribute:!0,type:String,converter:u,reflect:!1,hasChanged:p};let g=class extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var e;null!==(e=this.l)&&void 0!==e||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,i)=>{const o=this._$Eh(i,e);void 0!==o&&(this._$Eu.set(o,i),t.push(o))})),t}static createProperty(t,e=v){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const i="symbol"==typeof t?Symbol():"__"+t,o=this.getPropertyDescriptor(t,i,e);void 0!==o&&Object.defineProperty(this.prototype,t,o)}}static getPropertyDescriptor(t,e,i){return{get(){return this[e]},set(o){const n=this[t];this[e]=o,this.requestUpdate(t,n,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||v}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const i of e)this.createProperty(i,t[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift(a(t))}else void 0!==t&&e.push(a(t));return e}static _$Eh(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,i;(null!==(e=this._$Eg)&&void 0!==e?e:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(i=t.hostConnected)||void 0===i||i.call(t))}removeController(t){var e;null===(e=this._$Eg)||void 0===e||e.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Et.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const e=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return((t,e)=>{i?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((e=>{const i=document.createElement("style"),o=window.litNonce;void 0!==o&&i.setAttribute("nonce",o),i.textContent=e.cssText,t.appendChild(i)}))})(e,this.constructor.elementStyles),e}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$ES(t,e,i=v){var o,n;const s=this.constructor._$Eh(t,i);if(void 0!==s&&!0===i.reflect){const r=(null!==(n=null===(o=i.converter)||void 0===o?void 0:o.toAttribute)&&void 0!==n?n:u.toAttribute)(e,i.type);this._$Ei=t,null==r?this.removeAttribute(s):this.setAttribute(s,r),this._$Ei=null}}_$AK(t,e){var i,o,n;const s=this.constructor,r=s._$Eu.get(t);if(void 0!==r&&this._$Ei!==r){const t=s.getPropertyOptions(r),a=t.converter,l=null!==(n=null!==(o=null===(i=a)||void 0===i?void 0:i.fromAttribute)&&void 0!==o?o:"function"==typeof a?a:null)&&void 0!==n?n:u.fromAttribute;this._$Ei=r,this[r]=l(e,t.type),this._$Ei=null}}requestUpdate(t,e,i){let o=!0;void 0!==t&&(((i=i||this.constructor.getPropertyOptions(t)).hasChanged||p)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===i.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,i))):o=!1),!this.isUpdatePending&&o&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,e)=>this[e]=t)),this._$Et=void 0);let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(i)):this._$EU()}catch(t){throw e=!1,this._$EU(),t}e&&this._$AE(i)}willUpdate(t){}_$AE(t){var e;null===(e=this._$Eg)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$ES(e,this[e],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}};
|
|
12
12
|
/**
|
|
13
13
|
* @license
|
|
14
14
|
* Copyright 2017 Google LLC
|
|
15
15
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
16
16
|
*/
|
|
17
|
-
var
|
|
17
|
+
var f;g.finalized=!0,g.elementProperties=new Map,g.elementStyles=[],g.shadowRootOptions={mode:"open"},null==h||h({ReactiveElement:g}),(null!==(l=globalThis.reactiveElementVersions)&&void 0!==l?l:globalThis.reactiveElementVersions=[]).push("1.3.2");const m=globalThis.trustedTypes,w=m?m.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,T=/-->/g,_=/>/g,I=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,N=/'/g,A=/"/g,O=/^(?:script|style|textarea|title)$/i,L=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),$=Symbol.for("lit-noChange"),D=Symbol.for("lit-nothing"),V=new WeakMap,F=x.createTreeWalker(x,129,null,!1),P=(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=T:void 0!==l[1]?r=_:void 0!==l[2]?(O.test(l[2])&&(n=RegExp("</"+l[2],"g")),r=I):void 0!==l[3]&&(r=I):r===I?">"===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]?I:'"'===l[3]?A:N):r===A||r===N?r=I:r===T||r===_?r=M:(r=I,n=void 0);const h=r===I&&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 j{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]=P(t,e);if(this.el=j.createElement(l,i),F.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(o=F.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]?G:"@"===e[1]?K:B})}else a.push({type:6,index:n})}for(const e of t)o.removeAttribute(e)}if(O.test(o.tagName)){const t=o.textContent.split(y),e=t.length-1;if(e>0){o.textContent=m?m.emptyScript:"";for(let i=0;i<e;i++)o.append(t[i],E()),F.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 R(t,e,i=t,o){var n,s,r,a;if(e===$)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=R(t,l._$AS(t,e.values),l,o)),e}class U{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);F.currentNode=n;let s=F.nextNode(),r=0,a=0,l=o[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new z(s,s.nextSibling,this,t):1===l.type?e=new l.ctor(s,l.name,l.strings,this,t):6===l.type&&(e=new Z(s,this,t)),this.v.push(e),l=o[++a]}r!==(null==l?void 0:l.index)&&(s=F.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++}}let z=class t{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=R(this,t,e),k(t)?t===D||null==t||""===t?(this._$AH!==D&&this._$AR(),this._$AH=D):t!==this._$AH&&t!==$&&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=j.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 U(n,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=V.get(t.strings);return void 0===e&&V.set(t.strings,e=new j(t)),e}S(e){S(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let o,n=0;for(const s of e)n===i.length?i.push(o=new t(this.M(E()),this.M(E()),this,this.options)):o=i[n],o._$AI(s),n++;n<i.length&&(this._$AR(o&&o._$AB.nextSibling,n),i.length=n)}_$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))}},B=class{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=R(this,t,e,0),s=!k(t)||t!==this._$AH&&t!==$,s&&(this._$AH=t);else{const o=t;let r,a;for(t=n[0],r=0;r<n.length-1;r++)a=R(this,o[i+r],e,r),a===$&&(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 W=m?m.emptyScript:"";let G=class extends B{constructor(){super(...arguments),this.type=4}C(t){t&&t!==D?this.element.setAttribute(this.name,W):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=R(this,t,e,0))&&void 0!==i?i:D)===$)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 Z{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){R(this,t)}}const J=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
|
|
23
|
+
var Y,q;null==J||J(j,z),(null!==(f=globalThis.litHtmlVersions)&&void 0!==f?f:globalThis.litHtmlVersions=[]).push("2.2.6");class Q extends g{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 z(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 $}}Q.finalized=!0,Q._$litElement$=!0,null===(Y=globalThis.litElementHydrateSupport)||void 0===Y||Y.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
|
|
27
27
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
28
28
|
*/
|
|
29
|
-
const tt=t=>e=>"function"==typeof e?((t,e)=>(window.customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:i,elements:
|
|
29
|
+
const tt=t=>e=>"function"==typeof e?((t,e)=>(window.customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:i,elements:o}=e;return{kind:i,elements:o,finisher(e){window.customElements.define(t,e)}}})(t,e)
|
|
30
30
|
/**
|
|
31
31
|
* @license
|
|
32
32
|
* Copyright 2017 Google LLC
|
|
@@ -36,7 +36,7 @@ const tt=t=>e=>"function"==typeof e?((t,e)=>(window.customElements.define(t,e),e
|
|
|
36
36
|
* @license
|
|
37
37
|
* Copyright 2017 Google LLC
|
|
38
38
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
39
|
-
*/}function
|
|
39
|
+
*/}function ot(t){return it({...t,state:!0})}
|
|
40
40
|
/**
|
|
41
41
|
* @license
|
|
42
42
|
* Copyright 2017 Google LLC
|
|
@@ -47,28 +47,28 @@ const tt=t=>e=>"function"==typeof e?((t,e)=>(window.customElements.define(t,e),e
|
|
|
47
47
|
* Copyright 2017 Google LLC
|
|
48
48
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
49
49
|
*/
|
|
50
|
-
function
|
|
50
|
+
function nt(t,e){return(({finisher:t,descriptor:e})=>(i,o)=>{var n;if(void 0===o){const o=null!==(n=i.originalKey)&&void 0!==n?n:i.key,s=null!=e?{kind:"method",placement:"prototype",key:o,descriptor:e(i.key)}:{...i,key:o};return null!=t&&(s.finisher=function(e){t(e,o)}),s}{const n=i.constructor;void 0!==e&&Object.defineProperty(i,o,e(o)),null==t||t(n,o)}})({descriptor:e=>{const i={get(){var e,i;return null!==(i=null===(e=this.renderRoot)||void 0===e?void 0:e.querySelector(t))&&void 0!==i?i:null},enumerable:!0,configurable:!0};return i}})}
|
|
51
51
|
/**
|
|
52
52
|
* @license
|
|
53
53
|
* Copyright 2021 Google LLC
|
|
54
54
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
55
|
-
*/var
|
|
55
|
+
*/var st;null===(st=window.HTMLSlotElement)||void 0===st||st.prototype.assignedElements;
|
|
56
56
|
/**
|
|
57
57
|
* @license
|
|
58
58
|
* Copyright 2017 Google LLC
|
|
59
59
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
60
60
|
*/
|
|
61
|
-
const
|
|
61
|
+
const rt=1,at=2,lt=t=>(...e)=>({_$litDirective$:t,values:e});class ct{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)}}
|
|
62
62
|
/**
|
|
63
63
|
* @license
|
|
64
64
|
* Copyright 2018 Google LLC
|
|
65
65
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
66
|
-
*/const dt=lt(class extends ct{constructor(t){var e;if(super(t),t.type!==
|
|
66
|
+
*/const dt=lt(class extends ct{constructor(t){var e;if(super(t),t.type!==rt||"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 $}});
|
|
67
67
|
/**
|
|
68
68
|
* @license
|
|
69
69
|
* Copyright 2017 Google LLC
|
|
70
70
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
71
|
-
*/class ut extends ct{constructor(t){if(super(t),this.it=F,t.type!==at)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===F||null==t)return this.ft=void 0,this.it=t;if(t===O)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.ft;this.it=t;const e=[t];return e.raw=e,this.ft={_$litType$:this.constructor.resultType,strings:e,values:[]}}}ut.directiveName="unsafeHTML",ut.resultType=1;const ht=lt(ut);class pt{}pt.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",PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED:"passwordProtectedModalCloseButtonClicked",PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED:"passwordProtectedModalOpenButtonClicked",TOOLBAR_EXPANDED:"toolbarExpanded",TOOLBAR_COLLAPSED:"toolbarCollapsed",TOOLBAR_NOTIFICATION_CLICKED:"toolbarNotificationClicked",GUEST_MODE_SKIP_BUTTON_CLICKED:"guestModeSkipButtonClicked",GUEST_MODE_SIGN_IN_NUDGE_SHOWN:"guestModeSignInNudgeShown",GUEST_MODE_NAME_NUDGE_SHOWN:"guestModeNameNudgeShown",GUEST_MODE_SIGN_IN_CLICKED:"guestModeSignInClicked",GUEST_MODE_PRESENT:"guestModePresent",GUEST_MODE_NAME_ADDED:"guestModeNameAdded",REVIEW_PASSWORD_ADDED:"reviewPasswordAdded",REVIEW_PASSWORD_REJECTED:"reviewPasswordRejected",REVIEW_PASSWORD_ACCEPTED:"reviewPasswordAccepted",PRIVATE_MODE_ENABLED:"privateModeEnabled",PRIVATE_MODE_DISABLED:"privateModeDisabled",VISIBILITY_OPTIONS_ENABLED:"visibilityOptionsEnabled",VISIBILITY_OPTIONS_DISABLED:"visibilityOptionsDisabled",VIEW_PROJECT_CLICKED:"viewProjectClicked",OPEN_MOBILE_CLICKED:"openMobileClicked",EXIT_REVIEW_MODE_CLICKED:"exitReviewModeClicked",SIGNOUT_CLICKED:"signoutClicked",SIGNIN_CLICKED:"signinClicked",SIGN_IN_REQUIRED:"signInRequired",USER_EMAIL_NOT_WHITELISTED:"userEmailNotWhitelisted",DOMAIN_NOT_WHITELISTED:"domainNotWhitelisted",DUPLICATE_SCRIPT_INSTALLED:"duplicateScriptInstalled",TOOLBAR_DISABLED:"toolbarDisabled",INVITE_MODAL_OPENED:"inviteModalOpened",INVITE_SENT:"inviteSent",QUALITY_CHECK_RUN_TOOLBAR_CLICKED:"qualityCheckRunFromToolbarClicked"};const ft="1.0.669",vt="5.0.2-beta.95",mt="1.0.120",gt=["v3ogId1G43AFHehEOewv","rNYzMJd13L27xtfipmSK","aU1MxKP0rca2UXwKi8bl"],wt="review",yt="feedback",bt="sreviewId",Ct="scommentId",xt="snippyly-user",kt="st",Et="_sfut",St="_sfgut",Mt="projectVersionKey",$t="projectVersion",Tt="sversion",It="sprojectInstall",_t="sflivedemo",Nt="sffigmademo",At="sfTourCommentTooltip",Lt="sfUserAdmin",Ot="sfGuestMode",Ft="sfPasswordProtected",Dt="sfQueryParamsComments",Pt="sfUsePageTitleAsLocationName",Rt="sfPasswordIsValid",jt="sfPrivateMode",Vt="organizationPrivate",Ut="sfGuestModeAllowSignIn",zt="sfGuestUserModelOpened",Bt="sfGuestUserNameUpdated",Ht="sfGuestUserBannerOpened",Wt="sfCustomerMetadata",Gt="sfContentWarningSidebarOpen",Kt="sfSamlConfig",Zt="superflow-file-viewer-staging.web.app",Yt="superflow-portal-v2-staging.firebaseapp.com/drive",Jt="app.usesuperflow.com/drive",qt="drive.usesuperflow.com",Qt="terminal",Xt="suggestion",te={AGENT:"agent:",AGENT_TYPE_CUSTOM:"agentType:custom"},ee={SPELL_CHECK:"spell-check",BROKEN_LINKS:"broken-links",GRAMMAR_CHECK:"grammar-check"},ie={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",VELT_NOTIFICATIONS_HISTORY_PANEL:"velt-notifications-history-panel"},ne={ENABLE_URL_NAVIGATION:"enable-url-navigation",CURRENT_LOCATION_SUFFIX:"current-location-suffix",SIDEBAR_BUTTON_COUNT_TYPE:"sidebar-button-count-type",CUSTOM_ACTIONS:"custom-actions"},oe="filter",re={customBranding:{logo:{logoMark:{lightUrl:'\n\t\t\t\t<svg viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 8C8 3.58172 11.5817 0 16 0V0C20.4183 0 24 3.58172 24 8V16H16C11.5817 16 8 12.4183 8 8V8Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 29C0 22.3726 5.37258 17 12 17H24V29C24 35.6274 18.6274 41 12 41V41C5.37258 41 0 35.6274 0 29V29Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 19C25 12.3726 30.3726 7 37 7V7C43.6274 7 49 12.3726 49 19V19C49 25.6274 43.6274 31 37 31H25V19Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 32H33C37.4183 32 41 35.5817 41 40V40C41 44.4183 37.4183 48 33 48V48C28.5817 48 25 44.4183 25 40V32Z" fill="#0DCF82"/>\n\t\t\t\t</svg>\n\t\t\t\t',darkUrl:'\n\t\t\t\t<svg viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 8C8 3.58172 11.5817 0 16 0V0C20.4183 0 24 3.58172 24 8V16H16C11.5817 16 8 12.4183 8 8V8Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 29C0 22.3726 5.37258 17 12 17H24V29C24 35.6274 18.6274 41 12 41V41C5.37258 41 0 35.6274 0 29V29Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 19C25 12.3726 30.3726 7 37 7V7C43.6274 7 49 12.3726 49 19V19C49 25.6274 43.6274 31 37 31H25V19Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 32H33C37.4183 32 41 35.5817 41 40V40C41 44.4183 37.4183 48 33 48V48C28.5817 48 25 44.4183 25 40V32Z" fill="#0DCF82"/>\n\t\t\t\t</svg>\n\t\t\t\t'},wordMark:{lightUrl:'\n\t\t\t\t<svg width="257" height="65" viewBox="0 0 257 65" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 16C8 11.5817 11.5817 8 16 8V8C20.4183 8 24 11.5817 24 16V24H16C11.5817 24 8 20.4183 8 16V16Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 37C0 30.3726 5.37258 25 12 25H24V37C24 43.6274 18.6274 49 12 49V49C5.37258 49 0 43.6274 0 37V37Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 27C25 20.3726 30.3726 15 37 15V15C43.6274 15 49 20.3726 49 27V27C49 33.6274 43.6274 39 37 39H25V27Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 40H33C37.4183 40 41 43.5817 41 48V48C41 52.4183 37.4183 56 33 56V56C28.5817 56 25 52.4183 25 48V40Z" fill="#0DCF82"/>\n\t\t\t\t\t<path d="M73.4 46.28C71.4533 46.28 69.6933 45.9467 68.12 45.28C66.5733 44.6133 65.3467 43.6533 64.44 42.4C63.5333 41.1467 63.0667 39.6667 63.04 37.96H69.04C69.12 39.1067 69.52 40.0133 70.24 40.68C70.9867 41.3467 72 41.68 73.28 41.68C74.5867 41.68 75.6133 41.3733 76.36 40.76C77.1067 40.12 77.48 39.2933 77.48 38.28C77.48 37.4533 77.2267 36.7733 76.72 36.24C76.2133 35.7067 75.5733 35.2933 74.8 35C74.0533 34.68 73.0133 34.3333 71.68 33.96C69.8667 33.4267 68.3867 32.9067 67.24 32.4C66.12 31.8667 65.1467 31.08 64.32 30.04C63.52 28.9733 63.12 27.56 63.12 25.8C63.12 24.1467 63.5333 22.7067 64.36 21.48C65.1867 20.2533 66.3467 19.32 67.84 18.68C69.3333 18.0133 71.04 17.68 72.96 17.68C75.84 17.68 78.1733 18.3867 79.96 19.8C81.7733 21.1867 82.7733 23.1333 82.96 25.64H76.8C76.7467 24.68 76.3333 23.8933 75.56 23.28C74.8133 22.64 73.8133 22.32 72.56 22.32C71.4667 22.32 70.5867 22.6 69.92 23.16C69.28 23.72 68.96 24.5333 68.96 25.6C68.96 26.3467 69.2 26.9733 69.68 27.48C70.1867 27.96 70.8 28.36 71.52 28.68C72.2667 28.9733 73.3067 29.32 74.64 29.72C76.4533 30.2533 77.9333 30.7867 79.08 31.32C80.2267 31.8533 81.2133 32.6533 82.04 33.72C82.8667 34.7867 83.28 36.1867 83.28 37.92C83.28 39.4133 82.8933 40.8 82.12 42.08C81.3467 43.36 80.2133 44.3867 78.72 45.16C77.2267 45.9067 75.4533 46.28 73.4 46.28ZM107.855 23.84V46H102.215V43.2C101.495 44.16 100.548 44.92 99.375 45.48C98.2283 46.0133 96.975 46.28 95.615 46.28C93.8817 46.28 92.3483 45.92 91.015 45.2C89.6817 44.4533 88.6283 43.3733 87.855 41.96C87.1083 40.52 86.735 38.8133 86.735 36.84V23.84H92.335V36.04C92.335 37.8 92.775 39.16 93.655 40.12C94.535 41.0533 95.735 41.52 97.255 41.52C98.8017 41.52 100.015 41.0533 100.895 40.12C101.775 39.16 102.215 37.8 102.215 36.04V23.84H107.855ZM116.98 27.04C117.7 26.0267 118.687 25.1867 119.94 24.52C121.22 23.8267 122.674 23.48 124.3 23.48C126.194 23.48 127.9 23.9467 129.42 24.88C130.967 25.8133 132.18 27.1467 133.06 28.88C133.967 30.5867 134.42 32.5733 134.42 34.84C134.42 37.1067 133.967 39.12 133.06 40.88C132.18 42.6133 130.967 43.96 129.42 44.92C127.9 45.88 126.194 46.36 124.3 46.36C122.674 46.36 121.234 46.0267 119.98 45.36C118.754 44.6933 117.754 43.8533 116.98 42.84V56.56H111.38V23.84H116.98V27.04ZM128.7 34.84C128.7 33.5067 128.42 32.36 127.86 31.4C127.327 30.4133 126.607 29.6667 125.7 29.16C124.82 28.6533 123.86 28.4 122.82 28.4C121.807 28.4 120.847 28.6667 119.94 29.2C119.06 29.7067 118.34 30.4533 117.78 31.44C117.247 32.4267 116.98 33.5867 116.98 34.92C116.98 36.2533 117.247 37.4133 117.78 38.4C118.34 39.3867 119.06 40.1467 119.94 40.68C120.847 41.1867 121.807 41.44 122.82 41.44C123.86 41.44 124.82 41.1733 125.7 40.64C126.607 40.1067 127.327 39.3467 127.86 38.36C128.42 37.3733 128.7 36.2 128.7 34.84ZM158.29 34.44C158.29 35.24 158.236 35.96 158.13 36.6H141.93C142.063 38.2 142.623 39.4533 143.61 40.36C144.596 41.2667 145.81 41.72 147.25 41.72C149.33 41.72 150.81 40.8267 151.69 39.04H157.73C157.09 41.1733 155.863 42.9333 154.05 44.32C152.236 45.68 150.01 46.36 147.37 46.36C145.236 46.36 143.316 45.8933 141.61 44.96C139.93 44 138.61 42.6533 137.65 40.92C136.716 39.1867 136.25 37.1867 136.25 34.92C136.25 32.6267 136.716 30.6133 137.65 28.88C138.583 27.1467 139.89 25.8133 141.57 24.88C143.25 23.9467 145.183 23.48 147.37 23.48C149.476 23.48 151.356 23.9333 153.01 24.84C154.69 25.7467 155.983 27.04 156.89 28.72C157.823 30.3733 158.29 32.28 158.29 34.44ZM152.49 32.84C152.463 31.4 151.943 30.2533 150.93 29.4C149.916 28.52 148.676 28.08 147.21 28.08C145.823 28.08 144.65 28.5067 143.69 29.36C142.756 30.1867 142.183 31.3467 141.97 32.84H152.49ZM167.177 27.28C167.897 26.1067 168.831 25.1867 169.977 24.52C171.151 23.8533 172.484 23.52 173.977 23.52V29.4H172.497C170.737 29.4 169.404 29.8133 168.497 30.64C167.617 31.4667 167.177 32.9067 167.177 34.96V46H161.577V23.84H167.177V27.28ZM188.309 28.44H184.429V46H178.749V28.44H176.229V23.84H178.749V22.72C178.749 20 179.522 18 181.069 16.72C182.616 15.44 184.949 14.84 188.069 14.92V19.64C186.709 19.6133 185.762 19.84 185.229 20.32C184.696 20.8 184.429 21.6667 184.429 22.92V23.84H188.309V28.44ZM197.538 16.4V46H191.938V16.4H197.538ZM211.711 46.36C209.578 46.36 207.658 45.8933 205.951 44.96C204.244 44 202.898 42.6533 201.911 40.92C200.951 39.1867 200.471 37.1867 200.471 34.92C200.471 32.6533 200.964 30.6533 201.951 28.92C202.964 27.1867 204.338 25.8533 206.071 24.92C207.804 23.96 209.738 23.48 211.871 23.48C214.004 23.48 215.938 23.96 217.671 24.92C219.404 25.8533 220.764 27.1867 221.751 28.92C222.764 30.6533 223.271 32.6533 223.271 34.92C223.271 37.1867 222.751 39.1867 221.711 40.92C220.698 42.6533 219.311 44 217.551 44.96C215.818 45.8933 213.871 46.36 211.711 46.36ZM211.711 41.48C212.724 41.48 213.671 41.24 214.551 40.76C215.458 40.2533 216.178 39.5067 216.711 38.52C217.244 37.5333 217.511 36.3333 217.511 34.92C217.511 32.8133 216.951 31.2 215.831 30.08C214.738 28.9333 213.391 28.36 211.791 28.36C210.191 28.36 208.844 28.9333 207.751 30.08C206.684 31.2 206.151 32.8133 206.151 34.92C206.151 37.0267 206.671 38.6533 207.711 39.8C208.778 40.92 210.111 41.48 211.711 41.48ZM256.499 23.84L250.019 46H243.979L239.939 30.52L235.899 46H229.819L223.299 23.84H228.979L232.899 40.72L237.139 23.84H243.059L247.219 40.68L251.139 23.84H256.499Z" fill="#141416"/>\n\t\t\t\t</svg>\n\t\t\t\t',darkUrl:'\n\t\t\t\t<svg width="257" height="65" viewBox="0 0 257 65" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 16C8 11.5817 11.5817 8 16 8V8C20.4183 8 24 11.5817 24 16V24H16C11.5817 24 8 20.4183 8 16V16Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 37C0 30.3726 5.37258 25 12 25H24V37C24 43.6274 18.6274 49 12 49V49C5.37258 49 0 43.6274 0 37V37Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 27C25 20.3726 30.3726 15 37 15V15C43.6274 15 49 20.3726 49 27V27C49 33.6274 43.6274 39 37 39H25V27Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 40H33C37.4183 40 41 43.5817 41 48V48C41 52.4183 37.4183 56 33 56V56C28.5817 56 25 52.4183 25 48V40Z" fill="#0DCF82"/>\n\t\t\t\t\t<path d="M73.4 46.28C71.4533 46.28 69.6933 45.9467 68.12 45.28C66.5733 44.6133 65.3467 43.6533 64.44 42.4C63.5333 41.1467 63.0667 39.6667 63.04 37.96H69.04C69.12 39.1067 69.52 40.0133 70.24 40.68C70.9867 41.3467 72 41.68 73.28 41.68C74.5867 41.68 75.6133 41.3733 76.36 40.76C77.1067 40.12 77.48 39.2933 77.48 38.28C77.48 37.4533 77.2267 36.7733 76.72 36.24C76.2133 35.7067 75.5733 35.2933 74.8 35C74.0533 34.68 73.0133 34.3333 71.68 33.96C69.8667 33.4267 68.3867 32.9067 67.24 32.4C66.12 31.8667 65.1467 31.08 64.32 30.04C63.52 28.9733 63.12 27.56 63.12 25.8C63.12 24.1467 63.5333 22.7067 64.36 21.48C65.1867 20.2533 66.3467 19.32 67.84 18.68C69.3333 18.0133 71.04 17.68 72.96 17.68C75.84 17.68 78.1733 18.3867 79.96 19.8C81.7733 21.1867 82.7733 23.1333 82.96 25.64H76.8C76.7467 24.68 76.3333 23.8933 75.56 23.28C74.8133 22.64 73.8133 22.32 72.56 22.32C71.4667 22.32 70.5867 22.6 69.92 23.16C69.28 23.72 68.96 24.5333 68.96 25.6C68.96 26.3467 69.2 26.9733 69.68 27.48C70.1867 27.96 70.8 28.36 71.52 28.68C72.2667 28.9733 73.3067 29.32 74.64 29.72C76.4533 30.2533 77.9333 30.7867 79.08 31.32C80.2267 31.8533 81.2133 32.6533 82.04 33.72C82.8667 34.7867 83.28 36.1867 83.28 37.92C83.28 39.4133 82.8933 40.8 82.12 42.08C81.3467 43.36 80.2133 44.3867 78.72 45.16C77.2267 45.9067 75.4533 46.28 73.4 46.28ZM107.855 23.84V46H102.215V43.2C101.495 44.16 100.548 44.92 99.375 45.48C98.2283 46.0133 96.975 46.28 95.615 46.28C93.8817 46.28 92.3483 45.92 91.015 45.2C89.6817 44.4533 88.6283 43.3733 87.855 41.96C87.1083 40.52 86.735 38.8133 86.735 36.84V23.84H92.335V36.04C92.335 37.8 92.775 39.16 93.655 40.12C94.535 41.0533 95.735 41.52 97.255 41.52C98.8017 41.52 100.015 41.0533 100.895 40.12C101.775 39.16 102.215 37.8 102.215 36.04V23.84H107.855ZM116.98 27.04C117.7 26.0267 118.687 25.1867 119.94 24.52C121.22 23.8267 122.674 23.48 124.3 23.48C126.194 23.48 127.9 23.9467 129.42 24.88C130.967 25.8133 132.18 27.1467 133.06 28.88C133.967 30.5867 134.42 32.5733 134.42 34.84C134.42 37.1067 133.967 39.12 133.06 40.88C132.18 42.6133 130.967 43.96 129.42 44.92C127.9 45.88 126.194 46.36 124.3 46.36C122.674 46.36 121.234 46.0267 119.98 45.36C118.754 44.6933 117.754 43.8533 116.98 42.84V56.56H111.38V23.84H116.98V27.04ZM128.7 34.84C128.7 33.5067 128.42 32.36 127.86 31.4C127.327 30.4133 126.607 29.6667 125.7 29.16C124.82 28.6533 123.86 28.4 122.82 28.4C121.807 28.4 120.847 28.6667 119.94 29.2C119.06 29.7067 118.34 30.4533 117.78 31.44C117.247 32.4267 116.98 33.5867 116.98 34.92C116.98 36.2533 117.247 37.4133 117.78 38.4C118.34 39.3867 119.06 40.1467 119.94 40.68C120.847 41.1867 121.807 41.44 122.82 41.44C123.86 41.44 124.82 41.1733 125.7 40.64C126.607 40.1067 127.327 39.3467 127.86 38.36C128.42 37.3733 128.7 36.2 128.7 34.84ZM158.29 34.44C158.29 35.24 158.236 35.96 158.13 36.6H141.93C142.063 38.2 142.623 39.4533 143.61 40.36C144.596 41.2667 145.81 41.72 147.25 41.72C149.33 41.72 150.81 40.8267 151.69 39.04H157.73C157.09 41.1733 155.863 42.9333 154.05 44.32C152.236 45.68 150.01 46.36 147.37 46.36C145.236 46.36 143.316 45.8933 141.61 44.96C139.93 44 138.61 42.6533 137.65 40.92C136.716 39.1867 136.25 37.1867 136.25 34.92C136.25 32.6267 136.716 30.6133 137.65 28.88C138.583 27.1467 139.89 25.8133 141.57 24.88C143.25 23.9467 145.183 23.48 147.37 23.48C149.476 23.48 151.356 23.9333 153.01 24.84C154.69 25.7467 155.983 27.04 156.89 28.72C157.823 30.3733 158.29 32.28 158.29 34.44ZM152.49 32.84C152.463 31.4 151.943 30.2533 150.93 29.4C149.916 28.52 148.676 28.08 147.21 28.08C145.823 28.08 144.65 28.5067 143.69 29.36C142.756 30.1867 142.183 31.3467 141.97 32.84H152.49ZM167.177 27.28C167.897 26.1067 168.831 25.1867 169.977 24.52C171.151 23.8533 172.484 23.52 173.977 23.52V29.4H172.497C170.737 29.4 169.404 29.8133 168.497 30.64C167.617 31.4667 167.177 32.9067 167.177 34.96V46H161.577V23.84H167.177V27.28ZM188.309 28.44H184.429V46H178.749V28.44H176.229V23.84H178.749V22.72C178.749 20 179.522 18 181.069 16.72C182.616 15.44 184.949 14.84 188.069 14.92V19.64C186.709 19.6133 185.762 19.84 185.229 20.32C184.696 20.8 184.429 21.6667 184.429 22.92V23.84H188.309V28.44ZM197.538 16.4V46H191.938V16.4H197.538ZM211.711 46.36C209.578 46.36 207.658 45.8933 205.951 44.96C204.244 44 202.898 42.6533 201.911 40.92C200.951 39.1867 200.471 37.1867 200.471 34.92C200.471 32.6533 200.964 30.6533 201.951 28.92C202.964 27.1867 204.338 25.8533 206.071 24.92C207.804 23.96 209.738 23.48 211.871 23.48C214.004 23.48 215.938 23.96 217.671 24.92C219.404 25.8533 220.764 27.1867 221.751 28.92C222.764 30.6533 223.271 32.6533 223.271 34.92C223.271 37.1867 222.751 39.1867 221.711 40.92C220.698 42.6533 219.311 44 217.551 44.96C215.818 45.8933 213.871 46.36 211.711 46.36ZM211.711 41.48C212.724 41.48 213.671 41.24 214.551 40.76C215.458 40.2533 216.178 39.5067 216.711 38.52C217.244 37.5333 217.511 36.3333 217.511 34.92C217.511 32.8133 216.951 31.2 215.831 30.08C214.738 28.9333 213.391 28.36 211.791 28.36C210.191 28.36 208.844 28.9333 207.751 30.08C206.684 31.2 206.151 32.8133 206.151 34.92C206.151 37.0267 206.671 38.6533 207.711 39.8C208.778 40.92 210.111 41.48 211.711 41.48ZM256.499 23.84L250.019 46H243.979L239.939 30.52L235.899 46H229.819L223.299 23.84H228.979L232.899 40.72L237.139 23.84H243.059L247.219 40.68L251.139 23.84H256.499Z" fill="white"/>\n\t\t\t\t</svg>\n\t\t\t\t'}}}},se=[{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 ae=Object.freeze({__proto__:null,AGENT_FIELD_PREFIXES:te,ANNOTATION_STATUS_TERMINAL:Qt,ANNOTATION_TYPE_SUGGESTION:Xt,ATTRIBUTES:ne,COMMENT_PRIVATE_MODE_TYPE_ORGANIZATION:Vt,DEFAULT_CUSTOMER_METADATA:re,DOCUMENT_TITLE_CHANGE_LISTENER_API_KEYS:gt,DRIVE_NEW_PROD_URL:Jt,DRIVE_NEW_STAGING_URL:Yt,DRIVE_PROD_URL:qt,DRIVE_STAGING_URL:Zt,EXCLUDED_API_KEYS_FROM_LATEST_VERSION:["I9R2VqG45F5AgpIicnht"],FEEDBACK_MODE:yt,FIGMA_DEMO_MODAL:Nt,GUEST_USERS:se,LIVE_DEMO_MODAL:_t,PROJECT_INSTALL:It,PROJECT_VERSION:$t,PROJECT_VERSION_DEFAULT_KEY:Tt,PROJECT_VERSION_KEY:Mt,REVIEW_DOC_ID:bt,REVIEW_MODE:wt,SIDEBAR_BUTTON_COUNT_TYPE_FILTER:oe,SNIPPYLY_COMMENT_ID:Ct,SNIPPYLY_TOKEN:kt,SNIPPYLY_USER:xt,SUPERFLOW_CONTENT_WARNING_SIDEBAR_OPEN:Gt,SUPERFLOW_CUSTOMER_METADATA:Wt,SUPERFLOW_DOCUMENT_METADATA:"sfDocumentMetadata",SUPERFLOW_GUEST_MODE:Ot,SUPERFLOW_GUEST_MODE_ALLOW_SIGN_IN:Ut,SUPERFLOW_GUEST_USER_BANNER_OPENED:Ht,SUPERFLOW_GUEST_USER_MODEL_OPENED:zt,SUPERFLOW_GUEST_USER_NAME_MODEL_OPENED:"sfGuestUserNameModelOpened",SUPERFLOW_GUEST_USER_NAME_UPDATED:Bt,SUPERFLOW_GUEST_USER_TOKEN:St,SUPERFLOW_PASSWORD_IS_VALID:Rt,SUPERFLOW_PASSWORD_PROTECTED:Ft,SUPERFLOW_PRIVATE_MODE:jt,SUPERFLOW_QUERY_PARAMS_COMMENTS:Dt,SUPERFLOW_SAML_CONFIG:Kt,SUPERFLOW_USER_ADMIN:Lt,SUPERFLOW_USER_TOKEN:Et,SUPERFLOW_USE_PAGE_TITLE_AS_LOCATION_NAME:Pt,SUPERFLOW_VERSION:ft,SYSTEM_AGENT_IDS:ee,TAGS:ie,TOUR_COMMENT_TOOLTIP:At,VELT_SDK_DEVELOP_VERSION:vt,VELT_SDK_PROD_VERSION:mt,VELT_SDK_STAGING_VERSION:"3.0.92"});const le=!0,ce="https://superflow-portal-v2-staging.firebaseapp.com/",de="9dbcd2509e0fa90a5c81f038ce618e3f",ue="6d24f74f12f6fb84c87efa8f791cfb2e",he="https://us-central1-snipply-sdk-staging.cloudfunctions.net/sa",pe="https://us-central1-snipply-sdk-staging.cloudfunctions.net/superflowtoolbarhandler",fe=function(t){const e=[];let i=0;for(let n=0;n<t.length;n++){let o=t.charCodeAt(n);o<128?e[i++]=o:o<2048?(e[i++]=o>>6|192,e[i++]=63&o|128):55296==(64512&o)&&n+1<t.length&&56320==(64512&t.charCodeAt(n+1))?(o=65536+((1023&o)<<10)+(1023&t.charCodeAt(++n)),e[i++]=o>>18|240,e[i++]=o>>12&63|128,e[i++]=o>>6&63|128,e[i++]=63&o|128):(e[i++]=o>>12|224,e[i++]=o>>6&63|128,e[i++]=63&o|128)}return e},ve={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_,n=[];for(let e=0;e<t.length;e+=3){const o=t[e],r=e+1<t.length,s=r?t[e+1]:0,a=e+2<t.length,l=a?t[e+2]:0,c=o>>2,d=(3&o)<<4|s>>4;let u=(15&s)<<2|l>>6,h=63&l;a||(h=64,r||(u=64)),n.push(i[c],i[d],i[u],i[h])}return n.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(fe(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):function(t){const e=[];let i=0,n=0;for(;i<t.length;){const o=t[i++];if(o<128)e[n++]=String.fromCharCode(o);else if(o>191&&o<224){const r=t[i++];e[n++]=String.fromCharCode((31&o)<<6|63&r)}else if(o>239&&o<365){const r=((7&o)<<18|(63&t[i++])<<12|(63&t[i++])<<6|63&t[i++])-65536;e[n++]=String.fromCharCode(55296+(r>>10)),e[n++]=String.fromCharCode(56320+(1023&r))}else{const r=t[i++],s=t[i++];e[n++]=String.fromCharCode((15&o)<<12|(63&r)<<6|63&s)}}return e.join("")}(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();const i=e?this.charToByteMapWebSafe_:this.charToByteMap_,n=[];for(let e=0;e<t.length;){const o=i[t.charAt(e++)],r=e<t.length?i[t.charAt(e)]:0;++e;const s=e<t.length?i[t.charAt(e)]:64;++e;const a=e<t.length?i[t.charAt(e)]:64;if(++e,null==o||null==r||null==s||null==a)throw new me;const l=o<<2|r>>4;if(n.push(l),64!==s){const t=r<<4&240|s>>2;if(n.push(t),64!==a){const t=s<<6&192|a;n.push(t)}}}return n},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)}}};class me extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const ge=function(t){return function(t){const e=fe(t);return ve.encodeByteArray(e,!0)}(t).replace(/\./g,"")},we=function(t){try{return ve.decodeString(t,!0)}catch(t){console.error("base64Decode failed: ",t)}return null};
|
|
71
|
+
*/class ht extends ct{constructor(t){if(super(t),this.it=D,t.type!==at)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===D||null==t)return this.ft=void 0,this.it=t;if(t===$)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.ft;this.it=t;const e=[t];return e.raw=e,this.ft={_$litType$:this.constructor.resultType,strings:e,values:[]}}}ht.directiveName="unsafeHTML",ht.resultType=1;const ut=lt(ht);class pt{}pt.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",PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED:"passwordProtectedModalCloseButtonClicked",PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED:"passwordProtectedModalOpenButtonClicked",TOOLBAR_EXPANDED:"toolbarExpanded",TOOLBAR_COLLAPSED:"toolbarCollapsed",TOOLBAR_NOTIFICATION_CLICKED:"toolbarNotificationClicked",GUEST_MODE_SKIP_BUTTON_CLICKED:"guestModeSkipButtonClicked",GUEST_MODE_SIGN_IN_NUDGE_SHOWN:"guestModeSignInNudgeShown",GUEST_MODE_NAME_NUDGE_SHOWN:"guestModeNameNudgeShown",GUEST_MODE_SIGN_IN_CLICKED:"guestModeSignInClicked",GUEST_MODE_PRESENT:"guestModePresent",GUEST_MODE_NAME_ADDED:"guestModeNameAdded",REVIEW_PASSWORD_ADDED:"reviewPasswordAdded",REVIEW_PASSWORD_REJECTED:"reviewPasswordRejected",REVIEW_PASSWORD_ACCEPTED:"reviewPasswordAccepted",PRIVATE_MODE_ENABLED:"privateModeEnabled",PRIVATE_MODE_DISABLED:"privateModeDisabled",VISIBILITY_OPTIONS_ENABLED:"visibilityOptionsEnabled",VISIBILITY_OPTIONS_DISABLED:"visibilityOptionsDisabled",VIEW_PROJECT_CLICKED:"viewProjectClicked",OPEN_MOBILE_CLICKED:"openMobileClicked",EXIT_REVIEW_MODE_CLICKED:"exitReviewModeClicked",SIGNOUT_CLICKED:"signoutClicked",SIGNIN_CLICKED:"signinClicked",SIGN_IN_REQUIRED:"signInRequired",USER_EMAIL_NOT_WHITELISTED:"userEmailNotWhitelisted",DOMAIN_NOT_WHITELISTED:"domainNotWhitelisted",DUPLICATE_SCRIPT_INSTALLED:"duplicateScriptInstalled",TOOLBAR_DISABLED:"toolbarDisabled",INVITE_MODAL_OPENED:"inviteModalOpened",INVITE_SENT:"inviteSent",QUALITY_CHECK_RUN_TOOLBAR_CLICKED:"qualityCheckRunFromToolbarClicked"};const vt="1.0.671",gt="5.0.2-beta.95",ft="1.0.120",mt=["v3ogId1G43AFHehEOewv","rNYzMJd13L27xtfipmSK","aU1MxKP0rca2UXwKi8bl"],wt="review",yt="feedback",bt="sreviewId",Ct="scommentId",xt="snippyly-user",Et="st",kt="_sfut",St="_sfgut",Mt="projectVersionKey",Tt="projectVersion",_t="sversion",It="sprojectInstall",Nt="sflivedemo",At="sffigmademo",Ot="sfTourCommentTooltip",Lt="sfUserAdmin",$t="sfGuestMode",Dt="sfPasswordProtected",Vt="sfQueryParamsComments",Ft="sfUsePageTitleAsLocationName",Pt="sfPasswordIsValid",jt="sfPrivateMode",Rt="organizationPrivate",Ut="sfGuestModeAllowSignIn",zt="sfGuestUserModelOpened",Bt="sfGuestUserNameUpdated",Ht="sfGuestUserBannerOpened",Wt="sfCustomerMetadata",Gt="sfContentWarningSidebarOpen",Kt="sfSamlConfig",Zt="superflow-file-viewer-staging.web.app",Jt="superflow-portal-v2-staging.firebaseapp.com/drive",Yt="app.usesuperflow.com/drive",qt="drive.usesuperflow.com",Qt="terminal",Xt="suggestion",te={AGENT:"agent:",AGENT_TYPE_CUSTOM:"agentType:custom"},ee={SPELL_CHECK:"spell-check",BROKEN_LINKS:"broken-links",GRAMMAR_CHECK:"grammar-check"},ie={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",VELT_NOTIFICATIONS_HISTORY_PANEL:"velt-notifications-history-panel"},oe={ENABLE_URL_NAVIGATION:"enable-url-navigation",CURRENT_LOCATION_SUFFIX:"current-location-suffix",SIDEBAR_BUTTON_COUNT_TYPE:"sidebar-button-count-type",CUSTOM_ACTIONS:"custom-actions"},ne="filter",se={customBranding:{logo:{logoMark:{lightUrl:'\n\t\t\t\t<svg viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 8C8 3.58172 11.5817 0 16 0V0C20.4183 0 24 3.58172 24 8V16H16C11.5817 16 8 12.4183 8 8V8Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 29C0 22.3726 5.37258 17 12 17H24V29C24 35.6274 18.6274 41 12 41V41C5.37258 41 0 35.6274 0 29V29Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 19C25 12.3726 30.3726 7 37 7V7C43.6274 7 49 12.3726 49 19V19C49 25.6274 43.6274 31 37 31H25V19Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 32H33C37.4183 32 41 35.5817 41 40V40C41 44.4183 37.4183 48 33 48V48C28.5817 48 25 44.4183 25 40V32Z" fill="#0DCF82"/>\n\t\t\t\t</svg>\n\t\t\t\t',darkUrl:'\n\t\t\t\t<svg viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 8C8 3.58172 11.5817 0 16 0V0C20.4183 0 24 3.58172 24 8V16H16C11.5817 16 8 12.4183 8 8V8Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 29C0 22.3726 5.37258 17 12 17H24V29C24 35.6274 18.6274 41 12 41V41C5.37258 41 0 35.6274 0 29V29Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 19C25 12.3726 30.3726 7 37 7V7C43.6274 7 49 12.3726 49 19V19C49 25.6274 43.6274 31 37 31H25V19Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 32H33C37.4183 32 41 35.5817 41 40V40C41 44.4183 37.4183 48 33 48V48C28.5817 48 25 44.4183 25 40V32Z" fill="#0DCF82"/>\n\t\t\t\t</svg>\n\t\t\t\t'},wordMark:{lightUrl:'\n\t\t\t\t<svg width="257" height="65" viewBox="0 0 257 65" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 16C8 11.5817 11.5817 8 16 8V8C20.4183 8 24 11.5817 24 16V24H16C11.5817 24 8 20.4183 8 16V16Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 37C0 30.3726 5.37258 25 12 25H24V37C24 43.6274 18.6274 49 12 49V49C5.37258 49 0 43.6274 0 37V37Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 27C25 20.3726 30.3726 15 37 15V15C43.6274 15 49 20.3726 49 27V27C49 33.6274 43.6274 39 37 39H25V27Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 40H33C37.4183 40 41 43.5817 41 48V48C41 52.4183 37.4183 56 33 56V56C28.5817 56 25 52.4183 25 48V40Z" fill="#0DCF82"/>\n\t\t\t\t\t<path d="M73.4 46.28C71.4533 46.28 69.6933 45.9467 68.12 45.28C66.5733 44.6133 65.3467 43.6533 64.44 42.4C63.5333 41.1467 63.0667 39.6667 63.04 37.96H69.04C69.12 39.1067 69.52 40.0133 70.24 40.68C70.9867 41.3467 72 41.68 73.28 41.68C74.5867 41.68 75.6133 41.3733 76.36 40.76C77.1067 40.12 77.48 39.2933 77.48 38.28C77.48 37.4533 77.2267 36.7733 76.72 36.24C76.2133 35.7067 75.5733 35.2933 74.8 35C74.0533 34.68 73.0133 34.3333 71.68 33.96C69.8667 33.4267 68.3867 32.9067 67.24 32.4C66.12 31.8667 65.1467 31.08 64.32 30.04C63.52 28.9733 63.12 27.56 63.12 25.8C63.12 24.1467 63.5333 22.7067 64.36 21.48C65.1867 20.2533 66.3467 19.32 67.84 18.68C69.3333 18.0133 71.04 17.68 72.96 17.68C75.84 17.68 78.1733 18.3867 79.96 19.8C81.7733 21.1867 82.7733 23.1333 82.96 25.64H76.8C76.7467 24.68 76.3333 23.8933 75.56 23.28C74.8133 22.64 73.8133 22.32 72.56 22.32C71.4667 22.32 70.5867 22.6 69.92 23.16C69.28 23.72 68.96 24.5333 68.96 25.6C68.96 26.3467 69.2 26.9733 69.68 27.48C70.1867 27.96 70.8 28.36 71.52 28.68C72.2667 28.9733 73.3067 29.32 74.64 29.72C76.4533 30.2533 77.9333 30.7867 79.08 31.32C80.2267 31.8533 81.2133 32.6533 82.04 33.72C82.8667 34.7867 83.28 36.1867 83.28 37.92C83.28 39.4133 82.8933 40.8 82.12 42.08C81.3467 43.36 80.2133 44.3867 78.72 45.16C77.2267 45.9067 75.4533 46.28 73.4 46.28ZM107.855 23.84V46H102.215V43.2C101.495 44.16 100.548 44.92 99.375 45.48C98.2283 46.0133 96.975 46.28 95.615 46.28C93.8817 46.28 92.3483 45.92 91.015 45.2C89.6817 44.4533 88.6283 43.3733 87.855 41.96C87.1083 40.52 86.735 38.8133 86.735 36.84V23.84H92.335V36.04C92.335 37.8 92.775 39.16 93.655 40.12C94.535 41.0533 95.735 41.52 97.255 41.52C98.8017 41.52 100.015 41.0533 100.895 40.12C101.775 39.16 102.215 37.8 102.215 36.04V23.84H107.855ZM116.98 27.04C117.7 26.0267 118.687 25.1867 119.94 24.52C121.22 23.8267 122.674 23.48 124.3 23.48C126.194 23.48 127.9 23.9467 129.42 24.88C130.967 25.8133 132.18 27.1467 133.06 28.88C133.967 30.5867 134.42 32.5733 134.42 34.84C134.42 37.1067 133.967 39.12 133.06 40.88C132.18 42.6133 130.967 43.96 129.42 44.92C127.9 45.88 126.194 46.36 124.3 46.36C122.674 46.36 121.234 46.0267 119.98 45.36C118.754 44.6933 117.754 43.8533 116.98 42.84V56.56H111.38V23.84H116.98V27.04ZM128.7 34.84C128.7 33.5067 128.42 32.36 127.86 31.4C127.327 30.4133 126.607 29.6667 125.7 29.16C124.82 28.6533 123.86 28.4 122.82 28.4C121.807 28.4 120.847 28.6667 119.94 29.2C119.06 29.7067 118.34 30.4533 117.78 31.44C117.247 32.4267 116.98 33.5867 116.98 34.92C116.98 36.2533 117.247 37.4133 117.78 38.4C118.34 39.3867 119.06 40.1467 119.94 40.68C120.847 41.1867 121.807 41.44 122.82 41.44C123.86 41.44 124.82 41.1733 125.7 40.64C126.607 40.1067 127.327 39.3467 127.86 38.36C128.42 37.3733 128.7 36.2 128.7 34.84ZM158.29 34.44C158.29 35.24 158.236 35.96 158.13 36.6H141.93C142.063 38.2 142.623 39.4533 143.61 40.36C144.596 41.2667 145.81 41.72 147.25 41.72C149.33 41.72 150.81 40.8267 151.69 39.04H157.73C157.09 41.1733 155.863 42.9333 154.05 44.32C152.236 45.68 150.01 46.36 147.37 46.36C145.236 46.36 143.316 45.8933 141.61 44.96C139.93 44 138.61 42.6533 137.65 40.92C136.716 39.1867 136.25 37.1867 136.25 34.92C136.25 32.6267 136.716 30.6133 137.65 28.88C138.583 27.1467 139.89 25.8133 141.57 24.88C143.25 23.9467 145.183 23.48 147.37 23.48C149.476 23.48 151.356 23.9333 153.01 24.84C154.69 25.7467 155.983 27.04 156.89 28.72C157.823 30.3733 158.29 32.28 158.29 34.44ZM152.49 32.84C152.463 31.4 151.943 30.2533 150.93 29.4C149.916 28.52 148.676 28.08 147.21 28.08C145.823 28.08 144.65 28.5067 143.69 29.36C142.756 30.1867 142.183 31.3467 141.97 32.84H152.49ZM167.177 27.28C167.897 26.1067 168.831 25.1867 169.977 24.52C171.151 23.8533 172.484 23.52 173.977 23.52V29.4H172.497C170.737 29.4 169.404 29.8133 168.497 30.64C167.617 31.4667 167.177 32.9067 167.177 34.96V46H161.577V23.84H167.177V27.28ZM188.309 28.44H184.429V46H178.749V28.44H176.229V23.84H178.749V22.72C178.749 20 179.522 18 181.069 16.72C182.616 15.44 184.949 14.84 188.069 14.92V19.64C186.709 19.6133 185.762 19.84 185.229 20.32C184.696 20.8 184.429 21.6667 184.429 22.92V23.84H188.309V28.44ZM197.538 16.4V46H191.938V16.4H197.538ZM211.711 46.36C209.578 46.36 207.658 45.8933 205.951 44.96C204.244 44 202.898 42.6533 201.911 40.92C200.951 39.1867 200.471 37.1867 200.471 34.92C200.471 32.6533 200.964 30.6533 201.951 28.92C202.964 27.1867 204.338 25.8533 206.071 24.92C207.804 23.96 209.738 23.48 211.871 23.48C214.004 23.48 215.938 23.96 217.671 24.92C219.404 25.8533 220.764 27.1867 221.751 28.92C222.764 30.6533 223.271 32.6533 223.271 34.92C223.271 37.1867 222.751 39.1867 221.711 40.92C220.698 42.6533 219.311 44 217.551 44.96C215.818 45.8933 213.871 46.36 211.711 46.36ZM211.711 41.48C212.724 41.48 213.671 41.24 214.551 40.76C215.458 40.2533 216.178 39.5067 216.711 38.52C217.244 37.5333 217.511 36.3333 217.511 34.92C217.511 32.8133 216.951 31.2 215.831 30.08C214.738 28.9333 213.391 28.36 211.791 28.36C210.191 28.36 208.844 28.9333 207.751 30.08C206.684 31.2 206.151 32.8133 206.151 34.92C206.151 37.0267 206.671 38.6533 207.711 39.8C208.778 40.92 210.111 41.48 211.711 41.48ZM256.499 23.84L250.019 46H243.979L239.939 30.52L235.899 46H229.819L223.299 23.84H228.979L232.899 40.72L237.139 23.84H243.059L247.219 40.68L251.139 23.84H256.499Z" fill="#141416"/>\n\t\t\t\t</svg>\n\t\t\t\t',darkUrl:'\n\t\t\t\t<svg width="257" height="65" viewBox="0 0 257 65" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t<path d="M8 16C8 11.5817 11.5817 8 16 8V8C20.4183 8 24 11.5817 24 16V24H16C11.5817 24 8 20.4183 8 16V16Z" fill="#FFCD2E"/>\n\t\t\t\t\t<path d="M0 37C0 30.3726 5.37258 25 12 25H24V37C24 43.6274 18.6274 49 12 49V49C5.37258 49 0 43.6274 0 37V37Z" fill="#A259FE"/>\n\t\t\t\t\t<path d="M25 27C25 20.3726 30.3726 15 37 15V15C43.6274 15 49 20.3726 49 27V27C49 33.6274 43.6274 39 37 39H25V27Z" fill="#FF7162"/>\n\t\t\t\t\t<path d="M25 40H33C37.4183 40 41 43.5817 41 48V48C41 52.4183 37.4183 56 33 56V56C28.5817 56 25 52.4183 25 48V40Z" fill="#0DCF82"/>\n\t\t\t\t\t<path d="M73.4 46.28C71.4533 46.28 69.6933 45.9467 68.12 45.28C66.5733 44.6133 65.3467 43.6533 64.44 42.4C63.5333 41.1467 63.0667 39.6667 63.04 37.96H69.04C69.12 39.1067 69.52 40.0133 70.24 40.68C70.9867 41.3467 72 41.68 73.28 41.68C74.5867 41.68 75.6133 41.3733 76.36 40.76C77.1067 40.12 77.48 39.2933 77.48 38.28C77.48 37.4533 77.2267 36.7733 76.72 36.24C76.2133 35.7067 75.5733 35.2933 74.8 35C74.0533 34.68 73.0133 34.3333 71.68 33.96C69.8667 33.4267 68.3867 32.9067 67.24 32.4C66.12 31.8667 65.1467 31.08 64.32 30.04C63.52 28.9733 63.12 27.56 63.12 25.8C63.12 24.1467 63.5333 22.7067 64.36 21.48C65.1867 20.2533 66.3467 19.32 67.84 18.68C69.3333 18.0133 71.04 17.68 72.96 17.68C75.84 17.68 78.1733 18.3867 79.96 19.8C81.7733 21.1867 82.7733 23.1333 82.96 25.64H76.8C76.7467 24.68 76.3333 23.8933 75.56 23.28C74.8133 22.64 73.8133 22.32 72.56 22.32C71.4667 22.32 70.5867 22.6 69.92 23.16C69.28 23.72 68.96 24.5333 68.96 25.6C68.96 26.3467 69.2 26.9733 69.68 27.48C70.1867 27.96 70.8 28.36 71.52 28.68C72.2667 28.9733 73.3067 29.32 74.64 29.72C76.4533 30.2533 77.9333 30.7867 79.08 31.32C80.2267 31.8533 81.2133 32.6533 82.04 33.72C82.8667 34.7867 83.28 36.1867 83.28 37.92C83.28 39.4133 82.8933 40.8 82.12 42.08C81.3467 43.36 80.2133 44.3867 78.72 45.16C77.2267 45.9067 75.4533 46.28 73.4 46.28ZM107.855 23.84V46H102.215V43.2C101.495 44.16 100.548 44.92 99.375 45.48C98.2283 46.0133 96.975 46.28 95.615 46.28C93.8817 46.28 92.3483 45.92 91.015 45.2C89.6817 44.4533 88.6283 43.3733 87.855 41.96C87.1083 40.52 86.735 38.8133 86.735 36.84V23.84H92.335V36.04C92.335 37.8 92.775 39.16 93.655 40.12C94.535 41.0533 95.735 41.52 97.255 41.52C98.8017 41.52 100.015 41.0533 100.895 40.12C101.775 39.16 102.215 37.8 102.215 36.04V23.84H107.855ZM116.98 27.04C117.7 26.0267 118.687 25.1867 119.94 24.52C121.22 23.8267 122.674 23.48 124.3 23.48C126.194 23.48 127.9 23.9467 129.42 24.88C130.967 25.8133 132.18 27.1467 133.06 28.88C133.967 30.5867 134.42 32.5733 134.42 34.84C134.42 37.1067 133.967 39.12 133.06 40.88C132.18 42.6133 130.967 43.96 129.42 44.92C127.9 45.88 126.194 46.36 124.3 46.36C122.674 46.36 121.234 46.0267 119.98 45.36C118.754 44.6933 117.754 43.8533 116.98 42.84V56.56H111.38V23.84H116.98V27.04ZM128.7 34.84C128.7 33.5067 128.42 32.36 127.86 31.4C127.327 30.4133 126.607 29.6667 125.7 29.16C124.82 28.6533 123.86 28.4 122.82 28.4C121.807 28.4 120.847 28.6667 119.94 29.2C119.06 29.7067 118.34 30.4533 117.78 31.44C117.247 32.4267 116.98 33.5867 116.98 34.92C116.98 36.2533 117.247 37.4133 117.78 38.4C118.34 39.3867 119.06 40.1467 119.94 40.68C120.847 41.1867 121.807 41.44 122.82 41.44C123.86 41.44 124.82 41.1733 125.7 40.64C126.607 40.1067 127.327 39.3467 127.86 38.36C128.42 37.3733 128.7 36.2 128.7 34.84ZM158.29 34.44C158.29 35.24 158.236 35.96 158.13 36.6H141.93C142.063 38.2 142.623 39.4533 143.61 40.36C144.596 41.2667 145.81 41.72 147.25 41.72C149.33 41.72 150.81 40.8267 151.69 39.04H157.73C157.09 41.1733 155.863 42.9333 154.05 44.32C152.236 45.68 150.01 46.36 147.37 46.36C145.236 46.36 143.316 45.8933 141.61 44.96C139.93 44 138.61 42.6533 137.65 40.92C136.716 39.1867 136.25 37.1867 136.25 34.92C136.25 32.6267 136.716 30.6133 137.65 28.88C138.583 27.1467 139.89 25.8133 141.57 24.88C143.25 23.9467 145.183 23.48 147.37 23.48C149.476 23.48 151.356 23.9333 153.01 24.84C154.69 25.7467 155.983 27.04 156.89 28.72C157.823 30.3733 158.29 32.28 158.29 34.44ZM152.49 32.84C152.463 31.4 151.943 30.2533 150.93 29.4C149.916 28.52 148.676 28.08 147.21 28.08C145.823 28.08 144.65 28.5067 143.69 29.36C142.756 30.1867 142.183 31.3467 141.97 32.84H152.49ZM167.177 27.28C167.897 26.1067 168.831 25.1867 169.977 24.52C171.151 23.8533 172.484 23.52 173.977 23.52V29.4H172.497C170.737 29.4 169.404 29.8133 168.497 30.64C167.617 31.4667 167.177 32.9067 167.177 34.96V46H161.577V23.84H167.177V27.28ZM188.309 28.44H184.429V46H178.749V28.44H176.229V23.84H178.749V22.72C178.749 20 179.522 18 181.069 16.72C182.616 15.44 184.949 14.84 188.069 14.92V19.64C186.709 19.6133 185.762 19.84 185.229 20.32C184.696 20.8 184.429 21.6667 184.429 22.92V23.84H188.309V28.44ZM197.538 16.4V46H191.938V16.4H197.538ZM211.711 46.36C209.578 46.36 207.658 45.8933 205.951 44.96C204.244 44 202.898 42.6533 201.911 40.92C200.951 39.1867 200.471 37.1867 200.471 34.92C200.471 32.6533 200.964 30.6533 201.951 28.92C202.964 27.1867 204.338 25.8533 206.071 24.92C207.804 23.96 209.738 23.48 211.871 23.48C214.004 23.48 215.938 23.96 217.671 24.92C219.404 25.8533 220.764 27.1867 221.751 28.92C222.764 30.6533 223.271 32.6533 223.271 34.92C223.271 37.1867 222.751 39.1867 221.711 40.92C220.698 42.6533 219.311 44 217.551 44.96C215.818 45.8933 213.871 46.36 211.711 46.36ZM211.711 41.48C212.724 41.48 213.671 41.24 214.551 40.76C215.458 40.2533 216.178 39.5067 216.711 38.52C217.244 37.5333 217.511 36.3333 217.511 34.92C217.511 32.8133 216.951 31.2 215.831 30.08C214.738 28.9333 213.391 28.36 211.791 28.36C210.191 28.36 208.844 28.9333 207.751 30.08C206.684 31.2 206.151 32.8133 206.151 34.92C206.151 37.0267 206.671 38.6533 207.711 39.8C208.778 40.92 210.111 41.48 211.711 41.48ZM256.499 23.84L250.019 46H243.979L239.939 30.52L235.899 46H229.819L223.299 23.84H228.979L232.899 40.72L237.139 23.84H243.059L247.219 40.68L251.139 23.84H256.499Z" fill="white"/>\n\t\t\t\t</svg>\n\t\t\t\t'}}}},re=[{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 ae=Object.freeze({__proto__:null,AGENT_FIELD_PREFIXES:te,ANNOTATION_STATUS_TERMINAL:Qt,ANNOTATION_TYPE_SUGGESTION:Xt,ATTRIBUTES:oe,COMMENT_PRIVATE_MODE_TYPE_ORGANIZATION:Rt,DEFAULT_CUSTOMER_METADATA:se,DOCUMENT_TITLE_CHANGE_LISTENER_API_KEYS:mt,DRIVE_NEW_PROD_URL:Yt,DRIVE_NEW_STAGING_URL:Jt,DRIVE_PROD_URL:qt,DRIVE_STAGING_URL:Zt,EXCLUDED_API_KEYS_FROM_LATEST_VERSION:["I9R2VqG45F5AgpIicnht"],FEEDBACK_MODE:yt,FIGMA_DEMO_MODAL:At,GUEST_USERS:re,LIVE_DEMO_MODAL:Nt,PROJECT_INSTALL:It,PROJECT_VERSION:Tt,PROJECT_VERSION_DEFAULT_KEY:_t,PROJECT_VERSION_KEY:Mt,REVIEW_DOC_ID:bt,REVIEW_MODE:wt,SIDEBAR_BUTTON_COUNT_TYPE_FILTER:ne,SNIPPYLY_COMMENT_ID:Ct,SNIPPYLY_TOKEN:Et,SNIPPYLY_USER:xt,SUPERFLOW_CONTENT_WARNING_SIDEBAR_OPEN:Gt,SUPERFLOW_CUSTOMER_METADATA:Wt,SUPERFLOW_DOCUMENT_METADATA:"sfDocumentMetadata",SUPERFLOW_GUEST_MODE:$t,SUPERFLOW_GUEST_MODE_ALLOW_SIGN_IN:Ut,SUPERFLOW_GUEST_USER_BANNER_OPENED:Ht,SUPERFLOW_GUEST_USER_MODEL_OPENED:zt,SUPERFLOW_GUEST_USER_NAME_MODEL_OPENED:"sfGuestUserNameModelOpened",SUPERFLOW_GUEST_USER_NAME_UPDATED:Bt,SUPERFLOW_GUEST_USER_TOKEN:St,SUPERFLOW_PASSWORD_IS_VALID:Pt,SUPERFLOW_PASSWORD_PROTECTED:Dt,SUPERFLOW_PRIVATE_MODE:jt,SUPERFLOW_QUERY_PARAMS_COMMENTS:Vt,SUPERFLOW_SAML_CONFIG:Kt,SUPERFLOW_USER_ADMIN:Lt,SUPERFLOW_USER_TOKEN:kt,SUPERFLOW_USE_PAGE_TITLE_AS_LOCATION_NAME:Ft,SUPERFLOW_VERSION:vt,SYSTEM_AGENT_IDS:ee,TAGS:ie,TOUR_COMMENT_TOOLTIP:Ot,VELT_SDK_DEVELOP_VERSION:gt,VELT_SDK_PROD_VERSION:ft,VELT_SDK_STAGING_VERSION:"3.0.92"});const le=!0,ce="https://superflow-portal-v2-staging.firebaseapp.com/",de="9dbcd2509e0fa90a5c81f038ce618e3f",he="6d24f74f12f6fb84c87efa8f791cfb2e",ue="https://us-central1-snipply-sdk-staging.cloudfunctions.net/sa",pe="https://us-central1-snipply-sdk-staging.cloudfunctions.net/superflowtoolbarhandler",ve=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},ge={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(ve(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 new fe;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)}}};class fe extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const me=function(t){return function(t){const e=ve(t);return ge.encodeByteArray(e,!0)}(t).replace(/\./g,"")},we=function(t){try{return ge.decodeString(t,!0)}catch(t){console.error("base64Decode failed: ",t)}return null};
|
|
72
72
|
/**
|
|
73
73
|
* @license
|
|
74
74
|
* Copyright 2022 Google LLC
|
|
@@ -102,7 +102,7 @@ const ye=()=>
|
|
|
102
102
|
* See the License for the specific language governing permissions and
|
|
103
103
|
* limitations under the License.
|
|
104
104
|
*/
|
|
105
|
-
function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("Unable to locate global object.")}().t,be=()=>{try{return ye()||(()=>{if("undefined"==typeof process||void 0===process.env)return;const t=process.env.t;return t?JSON.parse(t):void 0})()||(()=>{if("undefined"==typeof document)return;let t;try{t=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch(t){return}const e=t&&we(t[1]);return e&&JSON.parse(e)})()}catch(t){return void console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${t}`)}},Ce=t=>{var e,i;return null===(i=null===(e=be())||void 0===e?void 0:e.emulatorHosts)||void 0===i?void 0:i[t]},xe=()=>{var t;return null===(t=be())||void 0===t?void 0:t.config},
|
|
105
|
+
function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("Unable to locate global object.")}().t,be=()=>{try{return ye()||(()=>{if("undefined"==typeof process||void 0===process.env)return;const t=process.env.t;return t?JSON.parse(t):void 0})()||(()=>{if("undefined"==typeof document)return;let t;try{t=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch(t){return}const e=t&&we(t[1]);return e&&JSON.parse(e)})()}catch(t){return void console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${t}`)}},Ce=t=>{var e,i;return null===(i=null===(e=be())||void 0===e?void 0:e.emulatorHosts)||void 0===i?void 0:i[t]},xe=()=>{var t;return null===(t=be())||void 0===t?void 0:t.config},Ee=t=>{var e;return null===(e=be())||void 0===e?void 0:e[`_${t}`]};
|
|
106
106
|
/**
|
|
107
107
|
* @license
|
|
108
108
|
* Copyright 2017 Google LLC
|
|
@@ -119,7 +119,7 @@ function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window
|
|
|
119
119
|
* See the License for the specific language governing permissions and
|
|
120
120
|
* limitations under the License.
|
|
121
121
|
*/
|
|
122
|
-
class
|
|
122
|
+
class ke{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise(((t,e)=>{this.resolve=t,this.reject=e}))}wrapCallback(t){return(e,i)=>{e?this.reject(e):this.resolve(i),"function"==typeof t&&(this.promise.catch((()=>{})),1===t.length?t(e):t(e,i))}}}
|
|
123
123
|
/**
|
|
124
124
|
* @license
|
|
125
125
|
* Copyright 2017 Google LLC
|
|
@@ -135,7 +135,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
135
135
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
136
136
|
* See the License for the specific language governing permissions and
|
|
137
137
|
* limitations under the License.
|
|
138
|
-
*/function Se(){return"undefined"!=typeof navigator&&"string"==typeof navigator.userAgent?navigator.userAgent:""}class Me extends Error{constructor(t,e,i){super(e),this.code=t,this.customData=i,this.name="FirebaseError",Object.setPrototypeOf(this,Me.prototype),Error.captureStackTrace&&Error.captureStackTrace(this
|
|
138
|
+
*/function Se(){return"undefined"!=typeof navigator&&"string"==typeof navigator.userAgent?navigator.userAgent:""}class Me extends Error{constructor(t,e,i){super(e),this.code=t,this.customData=i,this.name="FirebaseError",Object.setPrototypeOf(this,Me.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,Te.prototype.create)}}class Te{constructor(t,e,i){this.service=t,this.serviceName=e,this.errors=i}create(t,...e){const i=e[0]||{},o=`${this.service}/${t}`,n=this.errors[t],s=n?function(t,e){return t.replace(_e,((t,i)=>{const o=e[i];return null!=o?String(o):`<${i}?>`}))}(n,i):"Error",r=`${this.serviceName}: ${s} (${o}).`;return new Me(o,r,i)}}const _e=/\{\$([^}]+)}/g;function Ie(t,e){if(t===e)return!0;const i=Object.keys(t),o=Object.keys(e);for(const n of i){if(!o.includes(n))return!1;const i=t[n],s=e[n];if(Ne(i)&&Ne(s)){if(!Ie(i,s))return!1}else if(i!==s)return!1}for(const t of o)if(!i.includes(t))return!1;return!0}function Ne(t){return null!==t&&"object"==typeof t}
|
|
139
139
|
/**
|
|
140
140
|
* @license
|
|
141
141
|
* Copyright 2017 Google LLC
|
|
@@ -151,7 +151,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
151
151
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
152
152
|
* See the License for the specific language governing permissions and
|
|
153
153
|
* limitations under the License.
|
|
154
|
-
*/function
|
|
154
|
+
*/function Ae(t){const e=[];for(const[i,o]of Object.entries(t))Array.isArray(o)?o.forEach((t=>{e.push(encodeURIComponent(i)+"="+encodeURIComponent(t))})):e.push(encodeURIComponent(i)+"="+encodeURIComponent(o));return e.length?"&"+e.join("&"):""}class Oe{constructor(t,e){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=e,this.task.then((()=>{t(this)})).catch((t=>{this.error(t)}))}next(t){this.forEachObserver((e=>{e.next(t)}))}error(t){this.forEachObserver((e=>{e.error(t)})),this.close(t)}complete(){this.forEachObserver((t=>{t.complete()})),this.close()}subscribe(t,e,i){let o;if(void 0===t&&void 0===e&&void 0===i)throw new Error("Missing Observer.");o=function(t,e){if("object"!=typeof t||null===t)return!1;for(const i of e)if(i in t&&"function"==typeof t[i])return!0;return!1}(t,["next","error","complete"])?t:{next:t,error:e,complete:i},void 0===o.next&&(o.next=Le),void 0===o.error&&(o.error=Le),void 0===o.complete&&(o.complete=Le);const n=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then((()=>{try{this.finalError?o.error(this.finalError):o.complete()}catch(t){}})),this.observers.push(o),n}unsubscribeOne(t){void 0!==this.observers&&void 0!==this.observers[t]&&(delete this.observers[t],this.observerCount-=1,0===this.observerCount&&void 0!==this.onNoObservers&&this.onNoObservers(this))}forEachObserver(t){if(!this.finalized)for(let e=0;e<this.observers.length;e++)this.sendOne(e,t)}sendOne(t,e){this.task.then((()=>{if(void 0!==this.observers&&void 0!==this.observers[t])try{e(this.observers[t])}catch(t){"undefined"!=typeof console&&console.error&&console.error(t)}}))}close(t){this.finalized||(this.finalized=!0,void 0!==t&&(this.finalError=t),this.task.then((()=>{this.observers=void 0,this.onNoObservers=void 0})))}}function Le(){}
|
|
155
155
|
/**
|
|
156
156
|
* @license
|
|
157
157
|
* Copyright 2021 Google LLC
|
|
@@ -167,7 +167,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
167
167
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
168
168
|
* See the License for the specific language governing permissions and
|
|
169
169
|
* limitations under the License.
|
|
170
|
-
*/function
|
|
170
|
+
*/function $e(t){return t&&t._delegate?t._delegate:t}class De{constructor(t,e,i){this.name=t,this.instanceFactory=e,this.type=i,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(t){return this.instantiationMode=t,this}setMultipleInstances(t){return this.multipleInstances=t,this}setServiceProps(t){return this.serviceProps=t,this}setInstanceCreatedCallback(t){return this.onInstanceCreated=t,this}}
|
|
171
171
|
/**
|
|
172
172
|
* @license
|
|
173
173
|
* Copyright 2019 Google LLC
|
|
@@ -183,7 +183,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
183
183
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
184
184
|
* See the License for the specific language governing permissions and
|
|
185
185
|
* limitations under the License.
|
|
186
|
-
*/const
|
|
186
|
+
*/const Ve="[DEFAULT]";
|
|
187
187
|
/**
|
|
188
188
|
* @license
|
|
189
189
|
* Copyright 2019 Google LLC
|
|
@@ -199,7 +199,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
199
199
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
200
200
|
* See the License for the specific language governing permissions and
|
|
201
201
|
* limitations under the License.
|
|
202
|
-
*/class
|
|
202
|
+
*/class Fe{constructor(t,e){this.name=t,this.container=e,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(t){const e=this.normalizeInstanceIdentifier(t);if(!this.instancesDeferred.has(e)){const t=new ke;if(this.instancesDeferred.set(e,t),this.isInitialized(e)||this.shouldAutoInitialize())try{const i=this.getOrInitializeService({instanceIdentifier:e});i&&t.resolve(i)}catch(t){}}return this.instancesDeferred.get(e).promise}getImmediate(t){var e;const i=this.normalizeInstanceIdentifier(null==t?void 0:t.identifier),o=null!==(e=null==t?void 0:t.optional)&&void 0!==e&&e;if(!this.isInitialized(i)&&!this.shouldAutoInitialize()){if(o)return null;throw Error(`Service ${this.name} is not available`)}try{return this.getOrInitializeService({instanceIdentifier:i})}catch(t){if(o)return null;throw t}}getComponent(){return this.component}setComponent(t){if(t.name!==this.name)throw Error(`Mismatching Component ${t.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=t,this.shouldAutoInitialize()){if(function(t){return"EAGER"===t.instantiationMode}
|
|
203
203
|
/**
|
|
204
204
|
* @license
|
|
205
205
|
* Copyright 2019 Google LLC
|
|
@@ -215,7 +215,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
215
215
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
216
216
|
* See the License for the specific language governing permissions and
|
|
217
217
|
* limitations under the License.
|
|
218
|
-
*/(t))try{this.getOrInitializeService({instanceIdentifier:
|
|
218
|
+
*/(t))try{this.getOrInitializeService({instanceIdentifier:Ve})}catch(t){}for(const[t,e]of this.instancesDeferred.entries()){const i=this.normalizeInstanceIdentifier(t);try{const t=this.getOrInitializeService({instanceIdentifier:i});e.resolve(t)}catch(t){}}}}clearInstance(t=Ve){this.instancesDeferred.delete(t),this.instancesOptions.delete(t),this.instances.delete(t)}async delete(){const t=Array.from(this.instances.values());await Promise.all([...t.filter((t=>"INTERNAL"in t)).map((t=>t.INTERNAL.delete())),...t.filter((t=>"_delete"in t)).map((t=>t._delete()))])}isComponentSet(){return null!=this.component}isInitialized(t=Ve){return this.instances.has(t)}getOptions(t=Ve){return this.instancesOptions.get(t)||{}}initialize(t={}){const{options:e={}}=t,i=this.normalizeInstanceIdentifier(t.instanceIdentifier);if(this.isInitialized(i))throw Error(`${this.name}(${i}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const o=this.getOrInitializeService({instanceIdentifier:i,options:e});for(const[t,e]of this.instancesDeferred.entries()){i===this.normalizeInstanceIdentifier(t)&&e.resolve(o)}return o}onInit(t,e){var i;const o=this.normalizeInstanceIdentifier(e),n=null!==(i=this.onInitCallbacks.get(o))&&void 0!==i?i:new Set;n.add(t),this.onInitCallbacks.set(o,n);const s=this.instances.get(o);return s&&t(s,o),()=>{n.delete(t)}}invokeOnInitCallbacks(t,e){const i=this.onInitCallbacks.get(e);if(i)for(const o of i)try{o(t,e)}catch(t){}}getOrInitializeService({instanceIdentifier:t,options:e={}}){let i=this.instances.get(t);if(!i&&this.component&&(i=this.component.instanceFactory(this.container,{instanceIdentifier:(o=t,o===Ve?void 0:o),options:e}),this.instances.set(t,i),this.instancesOptions.set(t,e),this.invokeOnInitCallbacks(i,t),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,t,i)}catch(t){}var o;return i||null}normalizeInstanceIdentifier(t=Ve){return this.component?this.component.multipleInstances?t:Ve:t}shouldAutoInitialize(){return!!this.component&&"EXPLICIT"!==this.component.instantiationMode}}class Pe{constructor(t){this.name=t,this.providers=new Map}addComponent(t){const e=this.getProvider(t.name);if(e.isComponentSet())throw new Error(`Component ${t.name} has already been registered with ${this.name}`);e.setComponent(t)}addOrOverwriteComponent(t){this.getProvider(t.name).isComponentSet()&&this.providers.delete(t.name),this.addComponent(t)}getProvider(t){if(this.providers.has(t))return this.providers.get(t);const e=new Fe(t,this);return this.providers.set(t,e),e}getProviders(){return Array.from(this.providers.values())}}
|
|
219
219
|
/**
|
|
220
220
|
* @license
|
|
221
221
|
* Copyright 2017 Google LLC
|
|
@@ -231,7 +231,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
231
231
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
232
232
|
* See the License for the specific language governing permissions and
|
|
233
233
|
* limitations under the License.
|
|
234
|
-
*/var je;!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"}(je||(je={}));const
|
|
234
|
+
*/var je;!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"}(je||(je={}));const Re={debug:je.DEBUG,verbose:je.VERBOSE,info:je.INFO,warn:je.WARN,error:je.ERROR,silent:je.SILENT},Ue=je.INFO,ze={[je.DEBUG]:"log",[je.VERBOSE]:"log",[je.INFO]:"info",[je.WARN]:"warn",[je.ERROR]:"error"},Be=(t,e,...i)=>{if(e<t.logLevel)return;const o=(new Date).toISOString(),n=ze[e];if(!n)throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`);console[n](`[${o}] ${t.name}:`,...i)};class He{constructor(t){this.name=t,this._logLevel=Ue,this._logHandler=Be,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(t){if(!(t in je))throw new TypeError(`Invalid value "${t}" assigned to \`logLevel\``);this._logLevel=t}setLogLevel(t){this._logLevel="string"==typeof t?Re[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,je.DEBUG,...t),this._logHandler(this,je.DEBUG,...t)}log(...t){this._userLogHandler&&this._userLogHandler(this,je.VERBOSE,...t),this._logHandler(this,je.VERBOSE,...t)}info(...t){this._userLogHandler&&this._userLogHandler(this,je.INFO,...t),this._logHandler(this,je.INFO,...t)}warn(...t){this._userLogHandler&&this._userLogHandler(this,je.WARN,...t),this._logHandler(this,je.WARN,...t)}error(...t){this._userLogHandler&&this._userLogHandler(this,je.ERROR,...t),this._logHandler(this,je.ERROR,...t)}}let We,Ge;const Ke=new WeakMap,Ze=new WeakMap,Je=new WeakMap,Ye=new WeakMap,qe=new WeakMap;let Qe={get(t,e,i){if(t instanceof IDBTransaction){if("done"===e)return Ze.get(t);if("objectStoreNames"===e)return t.objectStoreNames||Je.get(t);if("store"===e)return i.objectStoreNames[1]?void 0:i.objectStore(i.objectStoreNames[0])}return ei(t[e])},set:(t,e,i)=>(t[e]=i,!0),has:(t,e)=>t instanceof IDBTransaction&&("done"===e||"store"===e)||e in t};function Xe(t){return t!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Ge||(Ge=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(ii(this),e),ei(Ke.get(this))}:function(...e){return ei(t.apply(ii(this),e))}:function(e,...i){const o=t.call(ii(this),e,...i);return Je.set(o,e.sort?e.sort():[e]),ei(o)}}function ti(t){return"function"==typeof t?Xe(t):(t instanceof IDBTransaction&&function(t){if(Ze.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)}));Ze.set(t,e)}(t),e=t,(We||(We=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some((t=>e instanceof t))?new Proxy(t,Qe):t);var e}function ei(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(ei(t.result)),o()},s=()=>{i(t.error),o()};t.addEventListener("success",n),t.addEventListener("error",s)}));return e.then((e=>{e instanceof IDBCursor&&Ke.set(e,t)})).catch((()=>{})),qe.set(e,t),e}(t);if(Ye.has(t))return Ye.get(t);const e=ti(t);return e!==t&&(Ye.set(t,e),qe.set(e,t)),e}const ii=t=>qe.get(t);const oi=["get","getKey","getAll","getAllKeys","count"],ni=["put","add","delete","clear"],si=new Map;function ri(t,e){if(!(t instanceof IDBDatabase)||e in t||"string"!=typeof e)return;if(si.get(e))return si.get(e);const i=e.replace(/FromIndex$/,""),o=e!==i,n=ni.includes(i);if(!(i in(o?IDBIndex:IDBObjectStore).prototype)||!n&&!oi.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 si.set(e,s),s}Qe=(t=>({...t,get:(e,i,o)=>ri(e,i)||t.get(e,i,o),has:(e,i)=>!!ri(e,i)||t.has(e,i)}))(Qe);
|
|
235
235
|
/**
|
|
236
236
|
* @license
|
|
237
237
|
* Copyright 2019 Google LLC
|
|
@@ -248,7 +248,7 @@ class Ee{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
248
248
|
* See the License for the specific language governing permissions and
|
|
249
249
|
* limitations under the License.
|
|
250
250
|
*/
|
|
251
|
-
class ai{constructor(t){this.container=t}getPlatformInfoString(){return this.container.getProviders().map((t=>{if(function(t){const e=t.getComponent();return"VERSION"===(null==e?void 0:e.type)}(t)){const e=t.getImmediate();return`${e.library}/${e.version}`}return null})).filter((t=>t)).join(" ")}}const li="@firebase/app",ci="0.11.4",di=new He("@firebase/app"),
|
|
251
|
+
class ai{constructor(t){this.container=t}getPlatformInfoString(){return this.container.getProviders().map((t=>{if(function(t){const e=t.getComponent();return"VERSION"===(null==e?void 0:e.type)}(t)){const e=t.getImmediate();return`${e.library}/${e.version}`}return null})).filter((t=>t)).join(" ")}}const li="@firebase/app",ci="0.11.4",di=new He("@firebase/app"),hi="@firebase/app-compat",ui="@firebase/analytics-compat",pi="@firebase/analytics",vi="@firebase/app-check-compat",gi="@firebase/app-check",fi="@firebase/auth",mi="@firebase/auth-compat",wi="@firebase/database",yi="@firebase/data-connect",bi="@firebase/database-compat",Ci="@firebase/functions",xi="@firebase/functions-compat",Ei="@firebase/installations",ki="@firebase/installations-compat",Si="@firebase/messaging",Mi="@firebase/messaging-compat",Ti="@firebase/performance",_i="@firebase/performance-compat",Ii="@firebase/remote-config",Ni="@firebase/remote-config-compat",Ai="@firebase/storage",Oi="@firebase/storage-compat",Li="@firebase/firestore",$i="@firebase/vertexai",Di="@firebase/firestore-compat",Vi="firebase",Fi="[DEFAULT]",Pi={[li]:"fire-core",[hi]:"fire-core-compat",[pi]:"fire-analytics",[ui]:"fire-analytics-compat",[gi]:"fire-app-check",[vi]:"fire-app-check-compat",[fi]:"fire-auth",[mi]:"fire-auth-compat",[wi]:"fire-rtdb",[yi]:"fire-data-connect",[bi]:"fire-rtdb-compat",[Ci]:"fire-fn",[xi]:"fire-fn-compat",[Ei]:"fire-iid",[ki]:"fire-iid-compat",[Si]:"fire-fcm",[Mi]:"fire-fcm-compat",[Ti]:"fire-perf",[_i]:"fire-perf-compat",[Ii]:"fire-rc",[Ni]:"fire-rc-compat",[Ai]:"fire-gcs",[Oi]:"fire-gcs-compat",[Li]:"fire-fst",[Di]:"fire-fst-compat",[$i]:"fire-vertex","fire-js":"fire-js",[Vi]:"fire-js-all"},ji=new Map,Ri=new Map,Ui=new Map;function zi(t,e){try{t.container.addComponent(e)}catch(i){di.debug(`Component ${e.name} failed to register with FirebaseApp ${t.name}`,i)}}function Bi(t){const e=t.name;if(Ui.has(e))return di.debug(`There were multiple attempts to register component ${e}.`),!1;Ui.set(e,t);for(const e of ji.values())zi(e,t);for(const e of Ri.values())zi(e,t);return!0}function Hi(t,e){const i=t.container.getProvider("heartbeat").getImmediate({optional:!0});return i&&i.triggerHeartbeat(),t.container.getProvider(e)}function Wi(t){return null!=t&&void 0!==t.settings}
|
|
252
252
|
/**
|
|
253
253
|
* @license
|
|
254
254
|
* Copyright 2019 Google LLC
|
|
@@ -264,7 +264,7 @@ class ai{constructor(t){this.container=t}getPlatformInfoString(){return this.con
|
|
|
264
264
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
265
265
|
* See the License for the specific language governing permissions and
|
|
266
266
|
* limitations under the License.
|
|
267
|
-
*/const Gi=new
|
|
267
|
+
*/const Gi=new Te("app","Firebase",{"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}'","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","server-app-deleted":"Firebase Server App has been deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invalid-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.","finalization-registry-not-supported":"FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.","invalid-server-app-environment":"FirebaseServerApp is not for use in browser environments."});
|
|
268
268
|
/**
|
|
269
269
|
* @license
|
|
270
270
|
* Copyright 2019 Google LLC
|
|
@@ -281,7 +281,7 @@ class ai{constructor(t){this.container=t}getPlatformInfoString(){return this.con
|
|
|
281
281
|
* See the License for the specific language governing permissions and
|
|
282
282
|
* limitations under the License.
|
|
283
283
|
*/
|
|
284
|
-
class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t),this._config=Object.assign({},e),this._name=e.name,this._automaticDataCollectionEnabled=e.automaticDataCollectionEnabled,this._container=i,this.container.addComponent(new
|
|
284
|
+
class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t),this._config=Object.assign({},e),this._name=e.name,this._automaticDataCollectionEnabled=e.automaticDataCollectionEnabled,this._container=i,this.container.addComponent(new De("app",(()=>this),"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(t){this.checkDestroyed(),this._automaticDataCollectionEnabled=t}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(t){this._isDeleted=t}checkDestroyed(){if(this.isDeleted)throw Gi.create("app-deleted",{appName:this._name})}}
|
|
285
285
|
/**
|
|
286
286
|
* @license
|
|
287
287
|
* Copyright 2019 Google LLC
|
|
@@ -297,7 +297,7 @@ class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
297
297
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
298
298
|
* See the License for the specific language governing permissions and
|
|
299
299
|
* limitations under the License.
|
|
300
|
-
*/const Zi="11.6.0";function
|
|
300
|
+
*/const Zi="11.6.0";function Ji(t,e={}){let i=t;if("object"!=typeof e){e={name:e}}const o=Object.assign({name:Fi,automaticDataCollectionEnabled:!1},e),n=o.name;if("string"!=typeof n||!n)throw Gi.create("bad-app-name",{appName:String(n)});if(i||(i=xe()),!i)throw Gi.create("no-options");const s=ji.get(n);if(s){if(Ie(i,s.options)&&Ie(o,s.config))return s;throw Gi.create("duplicate-app",{appName:n})}const r=new Pe(n);for(const t of Ui.values())r.addComponent(t);const a=new Ki(i,o,r);return ji.set(n,a),a}function Yi(t=Fi){const e=ji.get(t);if(!e&&t===Fi&&xe())return Ji();if(!e)throw Gi.create("no-app",{appName:t});return e}function qi(t,e,i){var o;let n=null!==(o=Pi[t])&&void 0!==o?o:t;i&&(n+=`-${i}`);const s=n.match(/\s|\//),r=e.match(/\s|\//);if(s||r){const t=[`Unable to register library "${n}" with version "${e}":`];return s&&t.push(`library name "${n}" contains illegal characters (whitespace or "/")`),s&&r&&t.push("and"),r&&t.push(`version name "${e}" contains illegal characters (whitespace or "/")`),void di.warn(t.join(" "))}Bi(new De(`${n}-version`,(()=>({library:n,version:e})),"VERSION"))}
|
|
301
301
|
/**
|
|
302
302
|
* @license
|
|
303
303
|
* Copyright 2021 Google LLC
|
|
@@ -313,7 +313,7 @@ class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
313
313
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
314
314
|
* See the License for the specific language governing permissions and
|
|
315
315
|
* limitations under the License.
|
|
316
|
-
*/const Qi="firebase-heartbeat-store";let Xi=null;function
|
|
316
|
+
*/const Qi="firebase-heartbeat-store";let Xi=null;function to(){return Xi||(Xi=function(t,e,{blocked:i,upgrade:o,blocking:n,terminated:s}={}){const r=indexedDB.open(t,e),a=ei(r);return o&&r.addEventListener("upgradeneeded",(t=>{o(ei(r.result),t.oldVersion,t.newVersion,ei(r.transaction),t)})),i&&r.addEventListener("blocked",(t=>i(t.oldVersion,t.newVersion,t))),a.then((t=>{s&&t.addEventListener("close",(()=>s())),n&&t.addEventListener("versionchange",(t=>n(t.oldVersion,t.newVersion,t)))})).catch((()=>{})),a}("firebase-heartbeat-database",1,{upgrade:(t,e)=>{if(0===e)try{t.createObjectStore(Qi)}catch(t){console.warn(t)}}}).catch((t=>{throw Gi.create("idb-open",{originalErrorMessage:t.message})}))),Xi}async function eo(t,e){try{const i=(await to()).transaction(Qi,"readwrite"),o=i.objectStore(Qi);await o.put(e,io(t)),await i.done}catch(t){if(t instanceof Me)di.warn(t.message);else{const e=Gi.create("idb-set",{originalErrorMessage:null==t?void 0:t.message});di.warn(e.message)}}}function io(t){return`${t.name}!${t.options.appId}`}
|
|
317
317
|
/**
|
|
318
318
|
* @license
|
|
319
319
|
* Copyright 2021 Google LLC
|
|
@@ -329,7 +329,7 @@ class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
329
329
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
330
330
|
* See the License for the specific language governing permissions and
|
|
331
331
|
* limitations under the License.
|
|
332
|
-
*/class
|
|
332
|
+
*/class oo{constructor(t){this.container=t,this._heartbeatsCache=null;const e=this.container.getProvider("app").getImmediate();this._storage=new so(e),this._heartbeatsCachePromise=this._storage.read().then((t=>(this._heartbeatsCache=t,t)))}async triggerHeartbeat(){var t,e;try{const i=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),o=no();if(null==(null===(t=this._heartbeatsCache)||void 0===t?void 0:t.heartbeats)&&(this._heartbeatsCache=await this._heartbeatsCachePromise,null==(null===(e=this._heartbeatsCache)||void 0===e?void 0:e.heartbeats)))return;if(this._heartbeatsCache.lastSentHeartbeatDate===o||this._heartbeatsCache.heartbeats.some((t=>t.date===o)))return;if(this._heartbeatsCache.heartbeats.push({date:o,agent:i}),this._heartbeatsCache.heartbeats.length>30){const t=function(t){if(0===t.length)return-1;let e=0,i=t[0].date;for(let o=1;o<t.length;o++)t[o].date<i&&(i=t[o].date,e=o);return e}
|
|
333
333
|
/**
|
|
334
334
|
* @license
|
|
335
335
|
* Copyright 2019 Google LLC
|
|
@@ -345,7 +345,7 @@ class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
345
345
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
346
346
|
* See the License for the specific language governing permissions and
|
|
347
347
|
* limitations under the License.
|
|
348
|
-
*/(this._heartbeatsCache.heartbeats);this._heartbeatsCache.heartbeats.splice(t,1)}return this._storage.overwrite(this._heartbeatsCache)}catch(t){di.warn(t)}}async getHeartbeatsHeader(){var t;try{if(null===this._heartbeatsCache&&await this._heartbeatsCachePromise,null==(null===(t=this._heartbeatsCache)||void 0===t?void 0:t.heartbeats)||0===this._heartbeatsCache.heartbeats.length)return"";const e=
|
|
348
|
+
*/(this._heartbeatsCache.heartbeats);this._heartbeatsCache.heartbeats.splice(t,1)}return this._storage.overwrite(this._heartbeatsCache)}catch(t){di.warn(t)}}async getHeartbeatsHeader(){var t;try{if(null===this._heartbeatsCache&&await this._heartbeatsCachePromise,null==(null===(t=this._heartbeatsCache)||void 0===t?void 0:t.heartbeats)||0===this._heartbeatsCache.heartbeats.length)return"";const e=no(),{heartbeatsToSend:i,unsentEntries:o}=function(t,e=1024){const i=[];let o=t.slice();for(const n of t){const t=i.find((t=>t.agent===n.agent));if(t){if(t.dates.push(n.date),ro(i)>e){t.dates.pop();break}}else if(i.push({agent:n.agent,dates:[n.date]}),ro(i)>e){i.pop();break}o=o.slice(1)}return{heartbeatsToSend:i,unsentEntries:o}}(this._heartbeatsCache.heartbeats),n=me(JSON.stringify({version:2,heartbeats:i}));return this._heartbeatsCache.lastSentHeartbeatDate=e,o.length>0?(this._heartbeatsCache.heartbeats=o,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),n}catch(t){return di.warn(t),""}}}function no(){return(new Date).toISOString().substring(0,10)}class so{constructor(t){this.app=t,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return!!function(){try{return"object"==typeof indexedDB}catch(t){return!1}}()&&new Promise(((t,e)=>{try{let i=!0;const o="validate-browser-context-for-indexeddb-analytics-module",n=self.indexedDB.open(o);n.onsuccess=()=>{n.result.close(),i||self.indexedDB.deleteDatabase(o),t(!0)},n.onupgradeneeded=()=>{i=!1},n.onerror=()=>{var t;e((null===(t=n.error)||void 0===t?void 0:t.message)||"")}}catch(t){e(t)}})).then((()=>!0)).catch((()=>!1))}async read(){if(await this._canUseIndexedDBPromise){const t=await async function(t){try{const e=(await to()).transaction(Qi),i=await e.objectStore(Qi).get(io(t));return await e.done,i}catch(t){if(t instanceof Me)di.warn(t.message);else{const e=Gi.create("idb-get",{originalErrorMessage:null==t?void 0:t.message});di.warn(e.message)}}}(this.app);return(null==t?void 0:t.heartbeats)?t:{heartbeats:[]}}return{heartbeats:[]}}async overwrite(t){var e;if(await this._canUseIndexedDBPromise){const i=await this.read();return eo(this.app,{lastSentHeartbeatDate:null!==(e=t.lastSentHeartbeatDate)&&void 0!==e?e:i.lastSentHeartbeatDate,heartbeats:t.heartbeats})}}async add(t){var e;if(await this._canUseIndexedDBPromise){const i=await this.read();return eo(this.app,{lastSentHeartbeatDate:null!==(e=t.lastSentHeartbeatDate)&&void 0!==e?e:i.lastSentHeartbeatDate,heartbeats:[...i.heartbeats,...t.heartbeats]})}}}function ro(t){return me(JSON.stringify({version:2,heartbeats:t})).length}var ao;ao="",Bi(new De("platform-logger",(t=>new ai(t)),"PRIVATE")),Bi(new De("heartbeat",(t=>new oo(t)),"PRIVATE")),qi(li,ci,ao),qi(li,ci,"esm2017"),qi("fire-js","");
|
|
349
349
|
/**
|
|
350
350
|
* @license
|
|
351
351
|
* Copyright 2020 Google LLC
|
|
@@ -362,7 +362,7 @@ class Ki{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
362
362
|
* See the License for the specific language governing permissions and
|
|
363
363
|
* limitations under the License.
|
|
364
364
|
*/
|
|
365
|
-
qi("firebase","11.6.0","app");function
|
|
365
|
+
qi("firebase","11.6.0","app");function lo(t,e){const i={};for(const o in t)t.hasOwnProperty(o)&&(i[o]=e(t[o]));return i}function co(t){if(null==t)return null;if(t instanceof Number&&(t=t.valueOf()),"number"==typeof t&&isFinite(t))return t;if(!0===t||!1===t)return t;if("[object String]"===Object.prototype.toString.call(t))return t;if(t instanceof Date)return t.toISOString();if(Array.isArray(t))return t.map((t=>co(t)));if("function"==typeof t||"object"==typeof t)return lo(t,(t=>co(t)));throw new Error("Data cannot be encoded in JSON: "+t)}function ho(t){if(null==t)return t;if(t["@type"])switch(t["@type"]){case"type.googleapis.com/google.protobuf.Int64Value":case"type.googleapis.com/google.protobuf.UInt64Value":{const e=Number(t.value);if(isNaN(e))throw new Error("Data cannot be decoded from JSON: "+t);return e}default:throw new Error("Data cannot be decoded from JSON: "+t)}return Array.isArray(t)?t.map((t=>ho(t))):"function"==typeof t||"object"==typeof t?lo(t,(t=>ho(t))):t}
|
|
366
366
|
/**
|
|
367
367
|
* @license
|
|
368
368
|
* Copyright 2020 Google LLC
|
|
@@ -378,7 +378,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
378
378
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
379
379
|
* See the License for the specific language governing permissions and
|
|
380
380
|
* limitations under the License.
|
|
381
|
-
*/const
|
|
381
|
+
*/const uo="functions",po={OK:"ok",CANCELLED:"cancelled",UNKNOWN:"unknown",INVALID_ARGUMENT:"invalid-argument",DEADLINE_EXCEEDED:"deadline-exceeded",NOT_FOUND:"not-found",ALREADY_EXISTS:"already-exists",PERMISSION_DENIED:"permission-denied",UNAUTHENTICATED:"unauthenticated",RESOURCE_EXHAUSTED:"resource-exhausted",FAILED_PRECONDITION:"failed-precondition",ABORTED:"aborted",OUT_OF_RANGE:"out-of-range",UNIMPLEMENTED:"unimplemented",INTERNAL:"internal",UNAVAILABLE:"unavailable",DATA_LOSS:"data-loss"};
|
|
382
382
|
/**
|
|
383
383
|
* @license
|
|
384
384
|
* Copyright 2017 Google LLC
|
|
@@ -394,7 +394,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
394
394
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
395
395
|
* See the License for the specific language governing permissions and
|
|
396
396
|
* limitations under the License.
|
|
397
|
-
*/class
|
|
397
|
+
*/class vo extends Me{constructor(t,e,i){super(`${uo}/${t}`,e||""),this.details=i,Object.setPrototypeOf(this,vo.prototype)}}function go(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(!po[e])return new vo("internal","internal");o=po[e],n=e}const s=t.message;"string"==typeof s&&(n=s),i=t.details,void 0!==i&&(i=ho(i))}}catch(t){}return"ok"===o?null:new vo(o,n,i)}
|
|
398
398
|
/**
|
|
399
399
|
* @license
|
|
400
400
|
* Copyright 2017 Google LLC
|
|
@@ -410,7 +410,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
410
410
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
411
411
|
* See the License for the specific language governing permissions and
|
|
412
412
|
* limitations under the License.
|
|
413
|
-
*/class
|
|
413
|
+
*/class fo{constructor(t,e,i,o){this.app=t,this.auth=null,this.messaging=null,this.appCheck=null,this.serverAppAppCheckToken=null,Wi(t)&&t.settings.appCheckToken&&(this.serverAppAppCheckToken=t.settings.appCheckToken),this.auth=e.getImmediate({optional:!0}),this.messaging=i.getImmediate({optional:!0}),this.auth||e.get().then((t=>this.auth=t),(()=>{})),this.messaging||i.get().then((t=>this.messaging=t),(()=>{})),this.appCheck||null==o||o.get().then((t=>this.appCheck=t),(()=>{}))}async getAuthToken(){if(this.auth)try{const t=await this.auth.getToken();return null==t?void 0:t.accessToken}catch(t){return}}async getMessagingToken(){if(this.messaging&&"Notification"in self&&"granted"===Notification.permission)try{return await this.messaging.getToken()}catch(t){return}}async getAppCheckToken(t){if(this.serverAppAppCheckToken)return this.serverAppAppCheckToken;if(this.appCheck){const e=t?await this.appCheck.getLimitedUseToken():await this.appCheck.getToken();return e.error?null:e.token}return null}async getContext(t){return{authToken:await this.getAuthToken(),messagingToken:await this.getMessagingToken(),appCheckToken:await this.getAppCheckToken(t)}}}
|
|
414
414
|
/**
|
|
415
415
|
* @license
|
|
416
416
|
* Copyright 2017 Google LLC
|
|
@@ -426,7 +426,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
426
426
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
427
427
|
* See the License for the specific language governing permissions and
|
|
428
428
|
* limitations under the License.
|
|
429
|
-
*/const
|
|
429
|
+
*/const mo="us-central1",wo=/^data: (.*?)(?:\n|$)/;class yo{constructor(t,e,i,o,n=mo,s=(...t)=>fetch(...t)){this.app=t,this.fetchImpl=s,this.emulatorOrigin=null,this.contextProvider=new fo(t,e,i,o),this.cancelAllRequests=new Promise((t=>{this.deleteService=()=>Promise.resolve(t())}));try{const t=new URL(n);this.customDomain=t.origin+("/"===t.pathname?"":t.pathname),this.region=mo}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 bo(t,e,i){const o=o=>async function(t,e,i,o){i=co(i);const n={data:i},s=await xo(t,o),r=o.timeout||7e4,a=function(t){let e=null;return{promise:new Promise(((i,o)=>{e=setTimeout((()=>{o(new vo("deadline-exceeded","deadline-exceeded"))}),t)})),cancel:()=>{e&&clearTimeout(e)}}}(r),l=await Promise.race([Co(e,n,s,t.fetchImpl),a.promise,t.cancelAllRequests]);if(a.cancel(),!l)throw new vo("cancelled","Firebase Functions instance was deleted.");const c=go(l.status,l.json);if(c)throw c;if(!l.json)throw new vo("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 vo("internal","Response is missing data field.");return{data:ho(d)}}(t,e,o,i||{});return o.stream=(i,o)=>async function(t,e,i,o){var n;i=co(i);const s={data:i},r=await xo(t,o);let a,l,c;r["Content-Type"]="application/json",r.Accept="text/event-stream";try{a=await t.fetchImpl(e,{method:"POST",body:JSON.stringify(s),headers:r,signal:null==o?void 0:o.signal})}catch(t){if(t instanceof Error&&"AbortError"===t.name){const t=new vo("cancelled","Request was cancelled.");return{data:Promise.reject(t),stream:{[Symbol.asyncIterator]:()=>({next:()=>Promise.reject(t)})}}}const e=go(0,null);return{data:Promise.reject(e),stream:{[Symbol.asyncIterator]:()=>({next:()=>Promise.reject(e)})}}}const d=new Promise(((t,e)=>{l=t,c=e}));null===(n=null==o?void 0:o.signal)||void 0===n||n.addEventListener("abort",(()=>{const t=new vo("cancelled","Request was cancelled.");c(t)}));const h=function(t,e,i,o){const n=(t,o)=>{const n=t.match(wo);if(!n)return;const s=n[1];try{const t=JSON.parse(s);if("result"in t)return void e(ho(t.result));if("message"in t)return void o.enqueue(ho(t.message));if("error"in t){const e=go(0,t);return o.error(e),void i(e)}}catch(t){if(t instanceof vo)return o.error(t),void i(t)}},s=new TextDecoder;return new ReadableStream({start(e){let r="";return a();async function a(){if(null==o?void 0:o.aborted){const t=new vo("cancelled","Request was cancelled");return e.error(t),i(t),Promise.resolve()}try{const{value:l,done:c}=await t.read();if(c)return r.trim()&&n(r.trim(),e),void e.close();if(null==o?void 0:o.aborted){const o=new vo("cancelled","Request was cancelled");return e.error(o),i(o),void await t.cancel()}r+=s.decode(l,{stream:!0});const d=r.split("\n");r=d.pop()||"";for(const t of d)t.trim()&&n(t.trim(),e);return a()}catch(t){const o=t instanceof vo?t:go(0,null);e.error(o),i(o)}}},cancel:()=>t.cancel()})}(a.body.getReader(),l,c,null==o?void 0:o.signal);return{stream:{[Symbol.asyncIterator](){const t=h.getReader();return{async next(){const{value:e,done:i}=await t.read();return{value:e,done:i}},return:async()=>(await t.cancel(),{done:!0,value:void 0})}}},data:d}}(t,e,i,o||{}),o}async function Co(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}}async function xo(t,e){const i={},o=await t.contextProvider.getContext(e.limitedUseAppCheckTokens);return o.authToken&&(i.Authorization="Bearer "+o.authToken),o.messagingToken&&(i["Firebase-Instance-ID-Token"]=o.messagingToken),null!==o.appCheckToken&&(i["X-Firebase-AppCheck"]=o.appCheckToken),i}const Eo="@firebase/functions",ko="0.12.3";function So(t,e,i){return bo($e(t),e,i)}function Mo(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 To(){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){Bi(new De(uo,((t,{instanceIdentifier:e})=>{const i=t.getProvider("app").getImmediate(),o=t.getProvider("auth-internal"),n=t.getProvider("messaging-internal"),s=t.getProvider("app-check-internal");return new yo(i,o,n,s,e)}),"PUBLIC").setMultipleInstances(!0)),qi(Eo,ko,t),qi(Eo,ko,"esm2017")}
|
|
430
430
|
/**
|
|
431
431
|
* @license
|
|
432
432
|
* Copyright 2020 Google LLC
|
|
@@ -442,7 +442,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
442
442
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
443
443
|
* See the License for the specific language governing permissions and
|
|
444
444
|
* limitations under the License.
|
|
445
|
-
*/(),"function"==typeof SuppressedError&&SuppressedError;const
|
|
445
|
+
*/(),"function"==typeof SuppressedError&&SuppressedError;const _o=To,Io=new Te("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."}),No=new He("@firebase/auth");function Ao(t,...e){No.logLevel<=je.ERROR&&No.error(`Auth (${Zi}): ${t}`,...e)}
|
|
446
446
|
/**
|
|
447
447
|
* @license
|
|
448
448
|
* Copyright 2020 Google LLC
|
|
@@ -458,7 +458,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
458
458
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
459
459
|
* See the License for the specific language governing permissions and
|
|
460
460
|
* limitations under the License.
|
|
461
|
-
*/function
|
|
461
|
+
*/function Oo(t,...e){throw Vo(t,...e)}function Lo(t,...e){return Vo(t,...e)}function $o(t,e,i){const o=Object.assign(Object.assign({},_o()),{[e]:i});return new Te("auth","Firebase",o).create(e,{appName:t.name})}function Do(t){return $o(t,"operation-not-supported-in-this-environment","Operations that alter the current user are not supported in conjunction with FirebaseServerApp")}function Vo(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 Io.create(t,...e)}function Fo(t,e,...i){if(!t)throw Vo(e,...i)}function Po(t){const e="INTERNAL ASSERTION FAILED: "+t;throw Ao(e),new Error(e)}function jo(t,e){t||Po(e)}
|
|
462
462
|
/**
|
|
463
463
|
* @license
|
|
464
464
|
* Copyright 2020 Google LLC
|
|
@@ -474,7 +474,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
474
474
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
475
475
|
* See the License for the specific language governing permissions and
|
|
476
476
|
* limitations under the License.
|
|
477
|
-
*/function
|
|
477
|
+
*/function Ro(){var t;return"undefined"!=typeof self&&(null===(t=self.location)||void 0===t?void 0:t.href)||""}function Uo(){var t;return"undefined"!=typeof self&&(null===(t=self.location)||void 0===t?void 0:t.protocol)||null}
|
|
478
478
|
/**
|
|
479
479
|
* @license
|
|
480
480
|
* Copyright 2020 Google LLC
|
|
@@ -490,7 +490,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
490
490
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
491
491
|
* See the License for the specific language governing permissions and
|
|
492
492
|
* limitations under the License.
|
|
493
|
-
*/function
|
|
493
|
+
*/function zo(){return"undefined"==typeof navigator||!navigator||!("onLine"in navigator)||"boolean"!=typeof navigator.onLine||"http:"!==Uo()&&"https:"!==Uo()&&!function(){const t="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof t&&void 0!==t.id}()&&!("connection"in navigator)||navigator.onLine}
|
|
494
494
|
/**
|
|
495
495
|
* @license
|
|
496
496
|
* Copyright 2020 Google LLC
|
|
@@ -507,7 +507,7 @@ qi("firebase","11.6.0","app");function cn(t,e){const i={};for(const n in t)t.has
|
|
|
507
507
|
* See the License for the specific language governing permissions and
|
|
508
508
|
* limitations under the License.
|
|
509
509
|
*/
|
|
510
|
-
class
|
|
510
|
+
class Bo{constructor(t,e){this.shortDelay=t,this.longDelay=e,jo(e>t,"Short delay should be less than long delay!"),this.isMobile="undefined"!=typeof window&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(Se())||"object"==typeof navigator&&"ReactNative"===navigator.product}get(){return zo()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}}
|
|
511
511
|
/**
|
|
512
512
|
* @license
|
|
513
513
|
* Copyright 2020 Google LLC
|
|
@@ -523,7 +523,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
523
523
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
524
524
|
* See the License for the specific language governing permissions and
|
|
525
525
|
* limitations under the License.
|
|
526
|
-
*/function
|
|
526
|
+
*/function Ho(t,e){jo(t.emulator,"Emulator should always be set here");const{url:i}=t.emulator;return e?`${i}${e.startsWith("/")?e.slice(1):e}`:i}
|
|
527
527
|
/**
|
|
528
528
|
* @license
|
|
529
529
|
* Copyright 2020 Google LLC
|
|
@@ -539,7 +539,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
539
539
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
540
540
|
* See the License for the specific language governing permissions and
|
|
541
541
|
* limitations under the License.
|
|
542
|
-
*/class
|
|
542
|
+
*/class Wo{static initialize(t,e,i){this.fetchImpl=t,e&&(this.headersImpl=e),i&&(this.responseImpl=i)}static fetch(){return this.fetchImpl?this.fetchImpl:"undefined"!=typeof self&&"fetch"in self?self.fetch:"undefined"!=typeof globalThis&&globalThis.fetch?globalThis.fetch:"undefined"!=typeof fetch?fetch:void Po("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){return this.headersImpl?this.headersImpl:"undefined"!=typeof self&&"Headers"in self?self.Headers:"undefined"!=typeof globalThis&&globalThis.Headers?globalThis.Headers:"undefined"!=typeof Headers?Headers:void Po("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){return this.responseImpl?this.responseImpl:"undefined"!=typeof self&&"Response"in self?self.Response:"undefined"!=typeof globalThis&&globalThis.Response?globalThis.Response:"undefined"!=typeof Response?Response:void Po("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}}
|
|
543
543
|
/**
|
|
544
544
|
* @license
|
|
545
545
|
* Copyright 2020 Google LLC
|
|
@@ -555,7 +555,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
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
|
-
*/const
|
|
558
|
+
*/const Go={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"missing-password",INVALID_LOGIN_CREDENTIALS:"invalid-credential",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",PASSWORD_DOES_NOT_MEET_REQUIREMENTS:"password-does-not-meet-requirements",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error",RECAPTCHA_NOT_ENABLED:"recaptcha-not-enabled",MISSING_RECAPTCHA_TOKEN:"missing-recaptcha-token",INVALID_RECAPTCHA_TOKEN:"invalid-recaptcha-token",INVALID_RECAPTCHA_ACTION:"invalid-recaptcha-action",MISSING_CLIENT_TYPE:"missing-client-type",MISSING_RECAPTCHA_VERSION:"missing-recaptcha-version",INVALID_RECAPTCHA_VERSION:"invalid-recaptcha-version",INVALID_REQ_TYPE:"invalid-req-type"},Ko=["/v1/accounts:signInWithCustomToken","/v1/accounts:signInWithEmailLink","/v1/accounts:signInWithIdp","/v1/accounts:signInWithPassword","/v1/accounts:signInWithPhoneNumber","/v1/token"],Zo=new Bo(3e4,6e4);
|
|
559
559
|
/**
|
|
560
560
|
* @license
|
|
561
561
|
* Copyright 2020 Google LLC
|
|
@@ -571,7 +571,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
571
571
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
572
572
|
* See the License for the specific language governing permissions and
|
|
573
573
|
* limitations under the License.
|
|
574
|
-
*/function
|
|
574
|
+
*/function Jo(t,e){return t.tenantId&&!e.tenantId?Object.assign(Object.assign({},e),{tenantId:t.tenantId}):e}async function Yo(t,e,i,o,n={}){return qo(t,n,(async()=>{let n={},s={};o&&("GET"===e?s=o:n={body:JSON.stringify(o)});const r=Ae(Object.assign({key:t.config.apiKey},s)).slice(1),a=await t._getAdditionalHeaders();a["Content-Type"]="application/json",t.languageCode&&(a["X-Firebase-Locale"]=t.languageCode);const l=Object.assign({method:e,headers:a},n);return"undefined"!=typeof navigator&&"Cloudflare-Workers"===navigator.userAgent||(l.referrerPolicy="no-referrer"),Wo.fetch()(await Qo(t,t.config.apiHost,i,r),l)}))}async function qo(t,e,i){t._canInitEmulator=!1;const o=Object.assign(Object.assign({},Go),e);try{const e=new Xo(t),n=await Promise.race([i(),e.promise]);e.clearNetworkTimeout();const s=await n.json();if("needConfirmation"in s)throw tn(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 tn(t,"credential-already-in-use",s);if("EMAIL_EXISTS"===i)throw tn(t,"email-already-in-use",s);if("USER_DISABLED"===i)throw tn(t,"user-disabled",s);const a=o[i]||i.toLowerCase().replace(/[_\s]+/g,"-");if(r)throw $o(t,a,r);Oo(t,a)}}catch(e){if(e instanceof Me)throw e;Oo(t,"network-request-failed",{message:String(e)})}}async function Qo(t,e,i,o){const n=`${e}${i}?${o}`,s=t,r=s.config.emulator?Ho(t.config,n):`${t.config.apiScheme}://${n}`;if(Ko.includes(i)&&(await s._persistenceManagerAvailable,"COOKIE"===s._getPersistenceType())){return s._getPersistence()._getFinalTarget(r).toString()}return r}class Xo{clearNetworkTimeout(){clearTimeout(this.timer)}constructor(t){this.auth=t,this.timer=null,this.promise=new Promise(((t,e)=>{this.timer=setTimeout((()=>e(Lo(this.auth,"network-request-failed"))),Zo.get())}))}}function tn(t,e,i){const o={appName:t.name};i.email&&(o.email=i.email),i.phoneNumber&&(o.phoneNumber=i.phoneNumber);const n=Lo(t,e,o);return n.customData._tokenResponse=i,n}
|
|
575
575
|
/**
|
|
576
576
|
* @license
|
|
577
577
|
* Copyright 2020 Google LLC
|
|
@@ -587,7 +587,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
587
587
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
588
588
|
* See the License for the specific language governing permissions and
|
|
589
589
|
* limitations under the License.
|
|
590
|
-
*/async function
|
|
590
|
+
*/async function en(t,e){return Yo(t,"POST","/v1/accounts:lookup",e)}
|
|
591
591
|
/**
|
|
592
592
|
* @license
|
|
593
593
|
* Copyright 2020 Google LLC
|
|
@@ -603,7 +603,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
603
603
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
604
604
|
* See the License for the specific language governing permissions and
|
|
605
605
|
* limitations under the License.
|
|
606
|
-
*/function
|
|
606
|
+
*/function on(t){if(t)try{const e=new Date(Number(t));if(!isNaN(e.getTime()))return e.toUTCString()}catch(t){}}function nn(t){return 1e3*Number(t)}function sn(t){const[e,i,o]=t.split(".");if(void 0===e||void 0===i||void 0===o)return Ao("JWT malformed, contained fewer than 3 sections"),null;try{const t=we(i);return t?JSON.parse(t):(Ao("Failed to decode base64 JWT payload"),null)}catch(t){return Ao("Caught error parsing JWT payload as JSON",null==t?void 0:t.toString()),null}}function rn(t){const e=sn(t);return Fo(e,"internal-error"),Fo(void 0!==e.exp,"internal-error"),Fo(void 0!==e.iat,"internal-error"),Number(e.exp)-Number(e.iat)}
|
|
607
607
|
/**
|
|
608
608
|
* @license
|
|
609
609
|
* Copyright 2020 Google LLC
|
|
@@ -619,7 +619,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
619
619
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
620
620
|
* See the License for the specific language governing permissions and
|
|
621
621
|
* limitations under the License.
|
|
622
|
-
*/async function
|
|
622
|
+
*/async function an(t,e,i=!1){if(i)return e;try{return await e}catch(e){throw e instanceof Me&&function({code:t}){return"auth/user-disabled"===t||"auth/user-token-expired"===t}
|
|
623
623
|
/**
|
|
624
624
|
* @license
|
|
625
625
|
* Copyright 2020 Google LLC
|
|
@@ -635,7 +635,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
635
635
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
636
636
|
* See the License for the specific language governing permissions and
|
|
637
637
|
* limitations under the License.
|
|
638
|
-
*/(e)&&t.auth.currentUser===t&&await t.auth.signOut(),e}}class
|
|
638
|
+
*/(e)&&t.auth.currentUser===t&&await t.auth.signOut(),e}}class ln{constructor(t){this.user=t,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,null!==this.timerId&&clearTimeout(this.timerId))}getInterval(t){var e;if(t){const t=this.errorBackoff;return this.errorBackoff=Math.min(2*this.errorBackoff,96e4),t}{this.errorBackoff=3e4;const t=(null!==(e=this.user.stsTokenManager.expirationTime)&&void 0!==e?e:0)-Date.now()-3e5;return Math.max(0,t)}}schedule(t=!1){if(!this.isRunning)return;const e=this.getInterval(t);this.timerId=setTimeout((async()=>{await this.iteration()}),e)}async iteration(){try{await this.user.getIdToken(!0)}catch(t){return void("auth/network-request-failed"===(null==t?void 0:t.code)&&this.schedule(!0))}this.schedule()}}
|
|
639
639
|
/**
|
|
640
640
|
* @license
|
|
641
641
|
* Copyright 2020 Google LLC
|
|
@@ -651,7 +651,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
651
651
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
652
652
|
* See the License for the specific language governing permissions and
|
|
653
653
|
* limitations under the License.
|
|
654
|
-
*/class
|
|
654
|
+
*/class cn{constructor(t,e){this.createdAt=t,this.lastLoginAt=e,this._initializeTime()}_initializeTime(){this.lastSignInTime=on(this.lastLoginAt),this.creationTime=on(this.createdAt)}_copy(t){this.createdAt=t.createdAt,this.lastLoginAt=t.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}}
|
|
655
655
|
/**
|
|
656
656
|
* @license
|
|
657
657
|
* Copyright 2019 Google LLC
|
|
@@ -667,7 +667,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
667
667
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
668
668
|
* See the License for the specific language governing permissions and
|
|
669
669
|
* limitations under the License.
|
|
670
|
-
*/async function
|
|
670
|
+
*/async function dn(t){var e;const i=t.auth,o=await t.getIdToken(),n=await an(t,en(i,{idToken:o}));Fo(null==n?void 0:n.users.length,i,"internal-error");const s=n.users[0];t._notifyReloadListener(s);const r=(null===(e=s.providerUserInfo)||void 0===e?void 0:e.length)?hn(s.providerUserInfo):[],a=function(t,e){const i=t.filter((t=>!e.some((e=>e.providerId===t.providerId))));return[...i,...e]}(t.providerData,r),l=t.isAnonymous,c=!(t.email&&s.passwordHash||(null==a?void 0:a.length)),d=!!l&&c,h={uid:s.localId,displayName:s.displayName||null,photoURL:s.photoUrl||null,email:s.email||null,emailVerified:s.emailVerified||!1,phoneNumber:s.phoneNumber||null,tenantId:s.tenantId||null,providerData:a,metadata:new cn(s.createdAt,s.lastLoginAt),isAnonymous:d};Object.assign(t,h)}function hn(t){return t.map((t=>{var{providerId:e}=t,i=Mo(t,["providerId"]);return{providerId:e,uid:i.rawId||"",displayName:i.displayName||null,email:i.email||null,phoneNumber:i.phoneNumber||null,photoURL:i.photoUrl||null}}))}
|
|
671
671
|
/**
|
|
672
672
|
* @license
|
|
673
673
|
* Copyright 2020 Google LLC
|
|
@@ -700,7 +700,7 @@ class Bn{constructor(t,e){this.shortDelay=t,this.longDelay=e,jn(e>t,"Short delay
|
|
|
700
700
|
* See the License for the specific language governing permissions and
|
|
701
701
|
* limitations under the License.
|
|
702
702
|
*/
|
|
703
|
-
class
|
|
703
|
+
class un{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(t){Fo(t.idToken,"internal-error"),Fo(void 0!==t.idToken,"internal-error"),Fo(void 0!==t.refreshToken,"internal-error");const e="expiresIn"in t&&void 0!==t.expiresIn?Number(t.expiresIn):rn(t.idToken);this.updateTokensAndExpiration(t.idToken,t.refreshToken,e)}updateFromIdToken(t){Fo(0!==t.length,"internal-error");const e=rn(t);this.updateTokensAndExpiration(t,null,e)}async getToken(t,e=!1){return e||!this.accessToken||this.isExpired?(Fo(this.refreshToken,t,"user-token-expired"),this.refreshToken?(await this.refresh(t,this.refreshToken),this.accessToken):null):this.accessToken}clearRefreshToken(){this.refreshToken=null}async refresh(t,e){const{accessToken:i,refreshToken:o,expiresIn:n}=await async function(t,e){const i=await qo(t,{},(async()=>{const i=Ae({grant_type:"refresh_token",refresh_token:e}).slice(1),{tokenApiHost:o,apiKey:n}=t.config,s=await Qo(t,o,"/v1/token",`key=${n}`),r=await t._getAdditionalHeaders();return r["Content-Type"]="application/x-www-form-urlencoded",Wo.fetch()(s,{method:"POST",headers:r,body:i})}));return{accessToken:i.access_token,expiresIn:i.expires_in,refreshToken:i.refresh_token}}(t,e);this.updateTokensAndExpiration(i,o,Number(n))}updateTokensAndExpiration(t,e,i){this.refreshToken=e||null,this.accessToken=t||null,this.expirationTime=Date.now()+1e3*i}static fromJSON(t,e){const{refreshToken:i,accessToken:o,expirationTime:n}=e,s=new un;return i&&(Fo("string"==typeof i,"internal-error",{appName:t}),s.refreshToken=i),o&&(Fo("string"==typeof o,"internal-error",{appName:t}),s.accessToken=o),n&&(Fo("number"==typeof n,"internal-error",{appName:t}),s.expirationTime=n),s}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(t){this.accessToken=t.accessToken,this.refreshToken=t.refreshToken,this.expirationTime=t.expirationTime}_clone(){return Object.assign(new un,this.toJSON())}_performRefresh(){return Po("not implemented")}}
|
|
704
704
|
/**
|
|
705
705
|
* @license
|
|
706
706
|
* Copyright 2020 Google LLC
|
|
@@ -716,7 +716,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
716
716
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
717
717
|
* See the License for the specific language governing permissions and
|
|
718
718
|
* limitations under the License.
|
|
719
|
-
*/function
|
|
719
|
+
*/function pn(t,e){Fo("string"==typeof t||void 0===t,"internal-error",{appName:e})}class vn{constructor(t){var{uid:e,auth:i,stsTokenManager:o}=t,n=Mo(t,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.proactiveRefresh=new ln(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=e,this.auth=i,this.stsTokenManager=o,this.accessToken=o.accessToken,this.displayName=n.displayName||null,this.email=n.email||null,this.emailVerified=n.emailVerified||!1,this.phoneNumber=n.phoneNumber||null,this.photoURL=n.photoURL||null,this.isAnonymous=n.isAnonymous||!1,this.tenantId=n.tenantId||null,this.providerData=n.providerData?[...n.providerData]:[],this.metadata=new cn(n.createdAt||void 0,n.lastLoginAt||void 0)}async getIdToken(t){const e=await an(this,this.stsTokenManager.getToken(this.auth,t));return Fo(e,this.auth,"internal-error"),this.accessToken!==e&&(this.accessToken=e,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),e}getIdTokenResult(t){return async function(t,e=!1){const i=$e(t),o=await i.getIdToken(e),n=sn(o);Fo(n&&n.exp&&n.auth_time&&n.iat,i.auth,"internal-error");const s="object"==typeof n.firebase?n.firebase:void 0,r=null==s?void 0:s.sign_in_provider;return{claims:n,token:o,authTime:on(nn(n.auth_time)),issuedAtTime:on(nn(n.iat)),expirationTime:on(nn(n.exp)),signInProvider:r||null,signInSecondFactor:(null==s?void 0:s.sign_in_second_factor)||null}}(this,t)}reload(){return async function(t){const e=$e(t);await dn(e),await e.auth._persistUserIfCurrent(e),e.auth._notifyListenersIfCurrent(e)}(this)}_assign(t){this!==t&&(Fo(this.uid===t.uid,this.auth,"internal-error"),this.displayName=t.displayName,this.photoURL=t.photoURL,this.email=t.email,this.emailVerified=t.emailVerified,this.phoneNumber=t.phoneNumber,this.isAnonymous=t.isAnonymous,this.tenantId=t.tenantId,this.providerData=t.providerData.map((t=>Object.assign({},t))),this.metadata._copy(t.metadata),this.stsTokenManager._assign(t.stsTokenManager))}_clone(t){const e=new vn(Object.assign(Object.assign({},this),{auth:t,stsTokenManager:this.stsTokenManager._clone()}));return e.metadata._copy(this.metadata),e}_onReload(t){Fo(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=t,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(t){this.reloadListener?this.reloadListener(t):this.reloadUserInfo=t}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}async _updateTokensIfNecessary(t,e=!1){let i=!1;t.idToken&&t.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(t),i=!0),e&&await dn(this),await this.auth._persistUserIfCurrent(this),i&&this.auth._notifyListenersIfCurrent(this)}async delete(){if(Wi(this.auth.app))return Promise.reject(Do(this.auth));const t=await this.getIdToken();return await an(this,async function(t,e){return Yo(t,"POST","/v1/accounts:delete",e)}(this.auth,{idToken:t})),this.stsTokenManager.clearRefreshToken(),this.auth.signOut()}toJSON(){return Object.assign(Object.assign({uid:this.uid,email:this.email||void 0,emailVerified:this.emailVerified,displayName:this.displayName||void 0,isAnonymous:this.isAnonymous,photoURL:this.photoURL||void 0,phoneNumber:this.phoneNumber||void 0,tenantId:this.tenantId||void 0,providerData:this.providerData.map((t=>Object.assign({},t))),stsTokenManager:this.stsTokenManager.toJSON(),_redirectEventId:this._redirectEventId},this.metadata.toJSON()),{apiKey:this.auth.config.apiKey,appName:this.auth.name})}get refreshToken(){return this.stsTokenManager.refreshToken||""}static _fromJSON(t,e){var i,o,n,s,r,a,l,c;const d=null!==(i=e.displayName)&&void 0!==i?i:void 0,h=null!==(o=e.email)&&void 0!==o?o:void 0,u=null!==(n=e.phoneNumber)&&void 0!==n?n:void 0,p=null!==(s=e.photoURL)&&void 0!==s?s:void 0,v=null!==(r=e.tenantId)&&void 0!==r?r:void 0,g=null!==(a=e._redirectEventId)&&void 0!==a?a:void 0,f=null!==(l=e.createdAt)&&void 0!==l?l:void 0,m=null!==(c=e.lastLoginAt)&&void 0!==c?c:void 0,{uid:w,emailVerified:y,isAnonymous:b,providerData:C,stsTokenManager:x}=e;Fo(w&&x,t,"internal-error");const E=un.fromJSON(this.name,x);Fo("string"==typeof w,t,"internal-error"),pn(d,t.name),pn(h,t.name),Fo("boolean"==typeof y,t,"internal-error"),Fo("boolean"==typeof b,t,"internal-error"),pn(u,t.name),pn(p,t.name),pn(v,t.name),pn(g,t.name),pn(f,t.name),pn(m,t.name);const k=new vn({uid:w,auth:t,email:h,emailVerified:y,displayName:d,isAnonymous:b,photoURL:p,phoneNumber:u,tenantId:v,stsTokenManager:E,createdAt:f,lastLoginAt:m});return C&&Array.isArray(C)&&(k.providerData=C.map((t=>Object.assign({},t)))),g&&(k._redirectEventId=g),k}static async _fromIdTokenResponse(t,e,i=!1){const o=new un;o.updateFromServerResponse(e);const n=new vn({uid:e.localId,auth:t,stsTokenManager:o,isAnonymous:i});return await dn(n),n}static async _fromGetAccountInfoResponse(t,e,i){const o=e.users[0];Fo(void 0!==o.localId,"internal-error");const n=void 0!==o.providerUserInfo?hn(o.providerUserInfo):[],s=!(o.email&&o.passwordHash||(null==n?void 0:n.length)),r=new un;r.updateFromIdToken(i);const a=new vn({uid:o.localId,auth:t,stsTokenManager:r,isAnonymous:s}),l={uid:o.localId,displayName:o.displayName||null,photoURL:o.photoUrl||null,email:o.email||null,emailVerified:o.emailVerified||!1,phoneNumber:o.phoneNumber||null,tenantId:o.tenantId||null,providerData:n,metadata:new cn(o.createdAt,o.lastLoginAt),isAnonymous:!(o.email&&o.passwordHash||(null==n?void 0:n.length))};return Object.assign(a,l),a}}
|
|
720
720
|
/**
|
|
721
721
|
* @license
|
|
722
722
|
* Copyright 2020 Google LLC
|
|
@@ -732,7 +732,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
732
732
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
733
733
|
* See the License for the specific language governing permissions and
|
|
734
734
|
* limitations under the License.
|
|
735
|
-
*/const
|
|
735
|
+
*/const gn=new Map;function fn(t){jo(t instanceof Function,"Expected a class definition");let e=gn.get(t);return e?(jo(e instanceof t,"Instance stored in cache mismatched with class"),e):(e=new t,gn.set(t,e),e)}
|
|
736
736
|
/**
|
|
737
737
|
* @license
|
|
738
738
|
* Copyright 2019 Google LLC
|
|
@@ -748,7 +748,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
748
748
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
749
749
|
* See the License for the specific language governing permissions and
|
|
750
750
|
* limitations under the License.
|
|
751
|
-
*/class
|
|
751
|
+
*/class mn{constructor(){this.type="NONE",this.storage={}}async _isAvailable(){return!0}async _set(t,e){this.storage[t]=e}async _get(t){const e=this.storage[t];return void 0===e?null:e}async _remove(t){delete this.storage[t]}_addListener(t,e){}_removeListener(t,e){}}mn.type="NONE";const wn=mn;
|
|
752
752
|
/**
|
|
753
753
|
* @license
|
|
754
754
|
* Copyright 2019 Google LLC
|
|
@@ -764,7 +764,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
764
764
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
765
765
|
* See the License for the specific language governing permissions and
|
|
766
766
|
* limitations under the License.
|
|
767
|
-
*/function
|
|
767
|
+
*/function yn(t,e,i){return`firebase:${t}:${e}:${i}`}class bn{constructor(t,e,i){this.persistence=t,this.auth=e,this.userKey=i;const{config:o,name:n}=this.auth;this.fullUserKey=yn(this.userKey,o.apiKey,n),this.fullPersistenceKey=yn("persistence",o.apiKey,n),this.boundEventHandler=e._onStorageEvent.bind(e),this.persistence._addListener(this.fullUserKey,this.boundEventHandler)}setCurrentUser(t){return this.persistence._set(this.fullUserKey,t.toJSON())}async getCurrentUser(){const t=await this.persistence._get(this.fullUserKey);if(!t)return null;if("string"==typeof t){const e=await en(this.auth,{idToken:t}).catch((()=>{}));return e?vn._fromGetAccountInfoResponse(this.auth,e,t):null}return vn._fromJSON(this.auth,t)}removeCurrentUser(){return this.persistence._remove(this.fullUserKey)}savePersistenceForRedirect(){return this.persistence._set(this.fullPersistenceKey,this.persistence.type)}async setPersistence(t){if(this.persistence===t)return;const e=await this.getCurrentUser();return await this.removeCurrentUser(),this.persistence=t,e?this.setCurrentUser(e):void 0}delete(){this.persistence._removeListener(this.fullUserKey,this.boundEventHandler)}static async create(t,e,i="authUser"){if(!e.length)return new bn(fn(wn),t,i);const o=(await Promise.all(e.map((async t=>{if(await t._isAvailable())return t})))).filter((t=>t));let n=o[0]||fn(wn);const s=yn(i,t.config.apiKey,t.name);let r=null;for(const i of e)try{const e=await i._get(s);if(e){let o;if("string"==typeof e){const i=await en(t,{idToken:e}).catch((()=>{}));if(!i)break;o=await vn._fromGetAccountInfoResponse(t,i,e)}else o=vn._fromJSON(t,e);i!==n&&(r=o),n=i;break}}catch(t){}const a=o.filter((t=>t._shouldAllowMigration));return n._shouldAllowMigration&&a.length?(n=a[0],r&&await n._set(s,r.toJSON()),await Promise.all(e.map((async t=>{if(t!==n)try{await t._remove(s)}catch(t){}}))),new bn(n,t,i)):new bn(n,t,i)}}
|
|
768
768
|
/**
|
|
769
769
|
* @license
|
|
770
770
|
* Copyright 2020 Google LLC
|
|
@@ -780,7 +780,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
780
780
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
781
781
|
* See the License for the specific language governing permissions and
|
|
782
782
|
* limitations under the License.
|
|
783
|
-
*/function
|
|
783
|
+
*/function Cn(t){const e=t.toLowerCase();if(e.includes("opera/")||e.includes("opr/")||e.includes("opios/"))return"Opera";if(Sn(e))return"IEMobile";if(e.includes("msie")||e.includes("trident/"))return"IE";if(e.includes("edge/"))return"Edge";if(xn(e))return"Firefox";if(e.includes("silk/"))return"Silk";if(Tn(e))return"Blackberry";if(_n(e))return"Webos";if(En(e))return"Safari";if((e.includes("chrome/")||kn(e))&&!e.includes("edge/"))return"Chrome";if(Mn(e))return"Android";{const e=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,i=t.match(e);if(2===(null==i?void 0:i.length))return i[1]}return"Other"}function xn(t=Se()){return/firefox\//i.test(t)}function En(t=Se()){const e=t.toLowerCase();return e.includes("safari/")&&!e.includes("chrome/")&&!e.includes("crios/")&&!e.includes("android")}function kn(t=Se()){return/crios\//i.test(t)}function Sn(t=Se()){return/iemobile/i.test(t)}function Mn(t=Se()){return/android/i.test(t)}function Tn(t=Se()){return/blackberry/i.test(t)}function _n(t=Se()){return/webos/i.test(t)}function In(t=Se()){return/iphone|ipad|ipod/i.test(t)||/macintosh/i.test(t)&&/mobile/i.test(t)}function Nn(){return function(){const t=Se();return t.indexOf("MSIE ")>=0||t.indexOf("Trident/")>=0}()&&10===document.documentMode}function An(t=Se()){return In(t)||Mn(t)||_n(t)||Tn(t)||/windows phone/i.test(t)||Sn(t)}
|
|
784
784
|
/**
|
|
785
785
|
* @license
|
|
786
786
|
* Copyright 2020 Google LLC
|
|
@@ -796,7 +796,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
796
796
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
797
797
|
* See the License for the specific language governing permissions and
|
|
798
798
|
* limitations under the License.
|
|
799
|
-
*/function
|
|
799
|
+
*/function On(t,e=[]){let i;switch(t){case"Browser":i=Cn(Se());break;case"Worker":i=`${Cn(Se())}-${t}`;break;default:i=t}const o=e.length?e.join(","):"FirebaseCore-web";return`${i}/JsCore/${Zi}/${o}`}
|
|
800
800
|
/**
|
|
801
801
|
* @license
|
|
802
802
|
* Copyright 2022 Google LLC
|
|
@@ -812,7 +812,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
812
812
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
813
813
|
* See the License for the specific language governing permissions and
|
|
814
814
|
* limitations under the License.
|
|
815
|
-
*/class
|
|
815
|
+
*/class Ln{constructor(t){this.auth=t,this.queue=[]}pushCallback(t,e){const i=e=>new Promise(((i,o)=>{try{i(t(e))}catch(t){o(t)}}));i.onAbort=e,this.queue.push(i);const o=this.queue.length-1;return()=>{this.queue[o]=()=>Promise.resolve()}}async runMiddleware(t){if(this.auth.currentUser===t)return;const e=[];try{for(const i of this.queue)await i(t),i.onAbort&&e.push(i.onAbort)}catch(t){e.reverse();for(const t of e)try{t()}catch(t){}throw this.auth._errorFactory.create("login-blocked",{originalMessage:null==t?void 0:t.message})}}}
|
|
816
816
|
/**
|
|
817
817
|
* @license
|
|
818
818
|
* Copyright 2023 Google LLC
|
|
@@ -828,7 +828,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
828
828
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
829
829
|
* See the License for the specific language governing permissions and
|
|
830
830
|
* limitations under the License.
|
|
831
|
-
*/class
|
|
831
|
+
*/class $n{constructor(t){var e,i,o,n;const s=t.customStrengthOptions;this.customStrengthOptions={},this.customStrengthOptions.minPasswordLength=null!==(e=s.minPasswordLength)&&void 0!==e?e:6,s.maxPasswordLength&&(this.customStrengthOptions.maxPasswordLength=s.maxPasswordLength),void 0!==s.containsLowercaseCharacter&&(this.customStrengthOptions.containsLowercaseLetter=s.containsLowercaseCharacter),void 0!==s.containsUppercaseCharacter&&(this.customStrengthOptions.containsUppercaseLetter=s.containsUppercaseCharacter),void 0!==s.containsNumericCharacter&&(this.customStrengthOptions.containsNumericCharacter=s.containsNumericCharacter),void 0!==s.containsNonAlphanumericCharacter&&(this.customStrengthOptions.containsNonAlphanumericCharacter=s.containsNonAlphanumericCharacter),this.enforcementState=t.enforcementState,"ENFORCEMENT_STATE_UNSPECIFIED"===this.enforcementState&&(this.enforcementState="OFF"),this.allowedNonAlphanumericCharacters=null!==(o=null===(i=t.allowedNonAlphanumericCharacters)||void 0===i?void 0:i.join(""))&&void 0!==o?o:"",this.forceUpgradeOnSignin=null!==(n=t.forceUpgradeOnSignin)&&void 0!==n&&n,this.schemaVersion=t.schemaVersion}validatePassword(t){var e,i,o,n,s,r;const a={isValid:!0,passwordPolicy:this};return this.validatePasswordLengthOptions(t,a),this.validatePasswordCharacterOptions(t,a),a.isValid&&(a.isValid=null===(e=a.meetsMinPasswordLength)||void 0===e||e),a.isValid&&(a.isValid=null===(i=a.meetsMaxPasswordLength)||void 0===i||i),a.isValid&&(a.isValid=null===(o=a.containsLowercaseLetter)||void 0===o||o),a.isValid&&(a.isValid=null===(n=a.containsUppercaseLetter)||void 0===n||n),a.isValid&&(a.isValid=null===(s=a.containsNumericCharacter)||void 0===s||s),a.isValid&&(a.isValid=null===(r=a.containsNonAlphanumericCharacter)||void 0===r||r),a}validatePasswordLengthOptions(t,e){const i=this.customStrengthOptions.minPasswordLength,o=this.customStrengthOptions.maxPasswordLength;i&&(e.meetsMinPasswordLength=t.length>=i),o&&(e.meetsMaxPasswordLength=t.length<=o)}validatePasswordCharacterOptions(t,e){let i;this.updatePasswordCharacterOptionsStatuses(e,!1,!1,!1,!1);for(let o=0;o<t.length;o++)i=t.charAt(o),this.updatePasswordCharacterOptionsStatuses(e,i>="a"&&i<="z",i>="A"&&i<="Z",i>="0"&&i<="9",this.allowedNonAlphanumericCharacters.includes(i))}updatePasswordCharacterOptionsStatuses(t,e,i,o,n){this.customStrengthOptions.containsLowercaseLetter&&(t.containsLowercaseLetter||(t.containsLowercaseLetter=e)),this.customStrengthOptions.containsUppercaseLetter&&(t.containsUppercaseLetter||(t.containsUppercaseLetter=i)),this.customStrengthOptions.containsNumericCharacter&&(t.containsNumericCharacter||(t.containsNumericCharacter=o)),this.customStrengthOptions.containsNonAlphanumericCharacter&&(t.containsNonAlphanumericCharacter||(t.containsNonAlphanumericCharacter=n))}}
|
|
832
832
|
/**
|
|
833
833
|
* @license
|
|
834
834
|
* Copyright 2020 Google LLC
|
|
@@ -844,7 +844,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
844
844
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
845
845
|
* See the License for the specific language governing permissions and
|
|
846
846
|
* limitations under the License.
|
|
847
|
-
*/class
|
|
847
|
+
*/class Dn{constructor(t,e,i,o){this.app=t,this.heartbeatServiceProvider=e,this.appCheckServiceProvider=i,this.config=o,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new Fn(this),this.idTokenSubscription=new Fn(this),this.beforeStateQueue=new Ln(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION=1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=Io,this._agentRecaptchaConfig=null,this._tenantRecaptchaConfigs={},this._projectPasswordPolicy=null,this._tenantPasswordPolicies={},this._resolvePersistenceManagerAvailable=void 0,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=t.name,this.clientVersion=o.sdkClientVersion,this._persistenceManagerAvailable=new Promise((t=>this._resolvePersistenceManagerAvailable=t))}_initializeWithPersistence(t,e){return e&&(this._popupRedirectResolver=fn(e)),this._initializationPromise=this.queue((async()=>{var i,o,n;if(!this._deleted&&(this.persistenceManager=await bn.create(this,t),null===(i=this._resolvePersistenceManagerAvailable)||void 0===i||i.call(this),!this._deleted)){if(null===(o=this._popupRedirectResolver)||void 0===o?void 0:o._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch(t){}await this.initializeCurrentUser(e),this.lastNotifiedUid=(null===(n=this.currentUser)||void 0===n?void 0:n.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 initializeCurrentUserFromIdToken(t){try{const e=await en(this,{idToken:t}),i=await vn._fromGetAccountInfoResponse(this,e,t);await this.directlySetCurrentUser(i)}catch(t){console.warn("FirebaseServerApp could not login user with provided authIdToken: ",t),await this.directlySetCurrentUser(null)}}async initializeCurrentUser(t){var e;if(Wi(this.app)){const t=this.app.settings.authIdToken;return t?new Promise((e=>{setTimeout((()=>this.initializeCurrentUserFromIdToken(t).then(e,e)))})):this.directlySetCurrentUser(null)}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 Fo(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 dn(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){if(Wi(this.app))return Promise.reject(Do(this));const e=t?$e(t):null;return e&&Fo(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&&Fo(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 Wi(this.app)?Promise.reject(Do(this)):(await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0))}setPersistence(t){return Wi(this.app)?Promise.reject(Do(this)):this.queue((async()=>{await this.assertedPersistence.setPersistence(fn(t))}))}_getRecaptchaConfig(){return null==this.tenantId?this._agentRecaptchaConfig:this._tenantRecaptchaConfigs[this.tenantId]}async validatePassword(t){this._getPasswordPolicyInternal()||await this._updatePasswordPolicy();const e=this._getPasswordPolicyInternal();return e.schemaVersion!==this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION?Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version",{})):e.validatePassword(t)}_getPasswordPolicyInternal(){return null===this.tenantId?this._projectPasswordPolicy:this._tenantPasswordPolicies[this.tenantId]}async _updatePasswordPolicy(){const t=await async function(t,e={}){return Yo(t,"GET","/v2/passwordPolicy",Jo(t,e))}
|
|
848
848
|
/**
|
|
849
849
|
* @license
|
|
850
850
|
* Copyright 2023 Google LLC
|
|
@@ -860,7 +860,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
860
860
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
861
861
|
* See the License for the specific language governing permissions and
|
|
862
862
|
* limitations under the License.
|
|
863
|
-
*/(this),e=new
|
|
863
|
+
*/(this),e=new $n(t);null===this.tenantId?this._projectPasswordPolicy=e:this._tenantPasswordPolicies[this.tenantId]=e}_getPersistenceType(){return this.assertedPersistence.persistence.type}_getPersistence(){return this.assertedPersistence.persistence}_updateErrorMap(t){this._errorFactory=new Te("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)}authStateReady(){return new Promise(((t,e)=>{if(this.currentUser)t();else{const i=this.onAuthStateChanged((()=>{i(),t()}),e)}}))}async revokeAccessToken(t){if(this.currentUser){const e={providerId:"apple.com",tokenType:"ACCESS_TOKEN",token:t,idToken:await this.currentUser.getIdToken()};null!=this.tenantId&&(e.tenantId=this.tenantId),await async function(t,e){return Yo(t,"POST","/v2/accounts:revokeToken",Jo(t,e))}(this,e)}}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&&fn(t)||this._popupRedirectResolver;Fo(e,this,"argument-error"),this.redirectPersistenceManager=await bn.create(this,[fn(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);let s=!1;const r=this._isInitialized?Promise.resolve():this._initializationPromise;if(Fo(r,this,"internal-error"),r.then((()=>{s||n(this.currentUser)})),"function"==typeof e){const n=t.addObserver(e,i,o);return()=>{s=!0,n()}}{const i=t.addObserver(e);return()=>{s=!0,i()}}}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 Fo(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(t){t&&!this.frameworks.includes(t)&&(this.frameworks.push(t),this.frameworks.sort(),this.clientVersion=On(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());i&&(e["X-Firebase-Client"]=i);const o=await this._getAppCheckToken();return o&&(e["X-Firebase-AppCheck"]=o),e}async _getAppCheckToken(){var t;if(Wi(this.app)&&this.app.settings.appCheckToken)return this.app.settings.appCheckToken;const e=await(null===(t=this.appCheckServiceProvider.getImmediate({optional:!0}))||void 0===t?void 0:t.getToken());return(null==e?void 0:e.error)&&function(t,...e){No.logLevel<=je.WARN&&No.warn(`Auth (${Zi}): ${t}`,...e)}(`Error while retrieving App Check token: ${e.error}`),null==e?void 0:e.token}}function Vn(t){return $e(t)}class Fn{constructor(t){this.auth=t,this.observer=null,this.addObserver=function(t,e){const i=new Oe(t,e);return i.subscribe.bind(i)}((t=>this.observer=t))}get next(){return Fo(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}
|
|
864
864
|
/**
|
|
865
865
|
* @license
|
|
866
866
|
* Copyright 2020 Google LLC
|
|
@@ -876,7 +876,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
876
876
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
877
877
|
* See the License for the specific language governing permissions and
|
|
878
878
|
* limitations under the License.
|
|
879
|
-
*/let
|
|
879
|
+
*/let Pn={async loadJS(){throw new Error("Unable to load external scripts")},recaptchaV2Script:"",recaptchaEnterpriseScript:"",gapiScript:""};function jn(t,e,i){const o=Vn(t);Fo(/^https?:\/\//.test(e),o,"invalid-emulator-scheme");const n=Rn(e),{host:s,port:r}=function(t){const e=Rn(t),i=/(\/\/)?([^?#/]+)/.exec(t.substr(e.length));if(!i)return{host:"",port:null};const o=i[2].split("@").pop()||"",n=/^(\[[^\]]+\])(:|$)/.exec(o);if(n){const t=n[1];return{host:t,port:Un(o.substr(t.length+1))}}{const[t,e]=o.split(":");return{host:t,port:Un(e)}}}(e),a={url:`${n}//${s}${null===r?"":`:${r}`}/`},l=Object.freeze({host:s,port:r,protocol:n.replace(":",""),options:Object.freeze({disableWarnings:!1})});if(!o._canInitEmulator)return Fo(o.config.emulator&&o.emulatorConfig,o,"emulator-config-failed"),void Fo(Ie(a,o.config.emulator)&&Ie(l,o.emulatorConfig),o,"emulator-config-failed");o.config.emulator=a,o.emulatorConfig=l,o.settings.appVerificationDisabledForTesting=!0,function(){function t(){const t=document.createElement("p"),e=t.style;t.innerText="Running in emulator mode. Do not use with production credentials.",e.position="fixed",e.width="100%",e.backgroundColor="#ffffff",e.border=".1em solid #000000",e.color="#b50000",e.bottom="0px",e.left="0px",e.margin="0px",e.zIndex="10000",e.textAlign="center",t.classList.add("firebase-emulator-warning"),document.body.appendChild(t)}"undefined"!=typeof console&&"function"==typeof console.info&&console.info("WARNING: You are using the Auth Emulator, which is intended for local testing only. Do not use with production credentials.");"undefined"!=typeof window&&"undefined"!=typeof document&&("loading"===document.readyState?window.addEventListener("DOMContentLoaded",t):t())}
|
|
880
880
|
/**
|
|
881
881
|
* @license
|
|
882
882
|
* Copyright 2020 Google LLC
|
|
@@ -892,7 +892,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
892
892
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
893
893
|
* See the License for the specific language governing permissions and
|
|
894
894
|
* limitations under the License.
|
|
895
|
-
*/()}function
|
|
895
|
+
*/()}function Rn(t){const e=t.indexOf(":");return e<0?"":t.substr(0,e+1)}function Un(t){if(!t)return null;const e=Number(t);return isNaN(e)?null:e}class zn{constructor(t,e){this.providerId=t,this.signInMethod=e}toJSON(){return Po("not implemented")}_getIdTokenResponse(t){return Po("not implemented")}_linkToIdToken(t,e){return Po("not implemented")}_getReauthenticationResolver(t){return Po("not implemented")}}
|
|
896
896
|
/**
|
|
897
897
|
* @license
|
|
898
898
|
* Copyright 2020 Google LLC
|
|
@@ -908,7 +908,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
908
908
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
909
909
|
* See the License for the specific language governing permissions and
|
|
910
910
|
* limitations under the License.
|
|
911
|
-
*/async function
|
|
911
|
+
*/async function Bn(t,e){return async function(t,e,i,o,n={}){const s=await Yo(t,e,i,o,n);return"mfaPendingCredential"in s&&Oo(t,"multi-factor-auth-required",{_serverResponse:s}),s}(t,"POST","/v1/accounts:signInWithIdp",Jo(t,e))}
|
|
912
912
|
/**
|
|
913
913
|
* @license
|
|
914
914
|
* Copyright 2020 Google LLC
|
|
@@ -924,7 +924,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
924
924
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
925
925
|
* See the License for the specific language governing permissions and
|
|
926
926
|
* limitations under the License.
|
|
927
|
-
*/class
|
|
927
|
+
*/class Hn extends zn{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(t){const e=new Hn(t.providerId,t.signInMethod);return t.idToken||t.accessToken?(t.idToken&&(e.idToken=t.idToken),t.accessToken&&(e.accessToken=t.accessToken),t.nonce&&!t.pendingToken&&(e.nonce=t.nonce),t.pendingToken&&(e.pendingToken=t.pendingToken)):t.oauthToken&&t.oauthTokenSecret?(e.accessToken=t.oauthToken,e.secret=t.oauthTokenSecret):Oo("argument-error"),e}toJSON(){return{idToken:this.idToken,accessToken:this.accessToken,secret:this.secret,nonce:this.nonce,pendingToken:this.pendingToken,providerId:this.providerId,signInMethod:this.signInMethod}}static fromJSON(t){const e="string"==typeof t?JSON.parse(t):t,{providerId:i,signInMethod:o}=e,n=Mo(e,["providerId","signInMethod"]);if(!i||!o)return null;const s=new Hn(i,o);return s.idToken=n.idToken||void 0,s.accessToken=n.accessToken||void 0,s.secret=n.secret,s.nonce=n.nonce,s.pendingToken=n.pendingToken||null,s}_getIdTokenResponse(t){return Bn(t,this.buildRequest())}_linkToIdToken(t,e){const i=this.buildRequest();return i.idToken=e,Bn(t,i)}_getReauthenticationResolver(t){const e=this.buildRequest();return e.autoCreate=!1,Bn(t,e)}buildRequest(){const t={requestUri:"http://localhost",returnSecureToken:!0};if(this.pendingToken)t.pendingToken=this.pendingToken;else{const e={};this.idToken&&(e.id_token=this.idToken),this.accessToken&&(e.access_token=this.accessToken),this.secret&&(e.oauth_token_secret=this.secret),e.providerId=this.providerId,this.nonce&&!this.pendingToken&&(e.nonce=this.nonce),t.postBody=Ae(e)}return t}}
|
|
928
928
|
/**
|
|
929
929
|
* @license
|
|
930
930
|
* Copyright 2020 Google LLC
|
|
@@ -940,7 +940,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
940
940
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
941
941
|
* See the License for the specific language governing permissions and
|
|
942
942
|
* limitations under the License.
|
|
943
|
-
*/class
|
|
943
|
+
*/class Wn{constructor(t){this.providerId=t,this.defaultLanguageCode=null,this.customParameters={}}setDefaultLanguage(t){this.defaultLanguageCode=t}setCustomParameters(t){return this.customParameters=t,this}getCustomParameters(){return this.customParameters}}
|
|
944
944
|
/**
|
|
945
945
|
* @license
|
|
946
946
|
* Copyright 2019 Google LLC
|
|
@@ -956,7 +956,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
956
956
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
957
957
|
* See the License for the specific language governing permissions and
|
|
958
958
|
* limitations under the License.
|
|
959
|
-
*/class
|
|
959
|
+
*/class Gn extends Wn{constructor(){super(...arguments),this.scopes=[]}addScope(t){return this.scopes.includes(t)||this.scopes.push(t),this}getScopes(){return[...this.scopes]}}
|
|
960
960
|
/**
|
|
961
961
|
* @license
|
|
962
962
|
* Copyright 2020 Google LLC
|
|
@@ -972,7 +972,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
972
972
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
973
973
|
* See the License for the specific language governing permissions and
|
|
974
974
|
* limitations under the License.
|
|
975
|
-
*/class
|
|
975
|
+
*/class Kn extends Gn{constructor(){super("facebook.com")}static credential(t){return Hn._fromParams({providerId:Kn.PROVIDER_ID,signInMethod:Kn.FACEBOOK_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return Kn.credentialFromTaggedObject(t)}static credentialFromError(t){return Kn.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t))return null;if(!t.oauthAccessToken)return null;try{return Kn.credential(t.oauthAccessToken)}catch(t){return null}}}Kn.FACEBOOK_SIGN_IN_METHOD="facebook.com",Kn.PROVIDER_ID="facebook.com";
|
|
976
976
|
/**
|
|
977
977
|
* @license
|
|
978
978
|
* Copyright 2020 Google LLC
|
|
@@ -989,7 +989,7 @@ class ho{constructor(){this.refreshToken=null,this.accessToken=null,this.expirat
|
|
|
989
989
|
* See the License for the specific language governing permissions and
|
|
990
990
|
* limitations under the License.
|
|
991
991
|
*/
|
|
992
|
-
class
|
|
992
|
+
class Zn extends Gn{constructor(){super("google.com"),this.addScope("profile")}static credential(t,e){return Hn._fromParams({providerId:Zn.PROVIDER_ID,signInMethod:Zn.GOOGLE_SIGN_IN_METHOD,idToken:t,accessToken:e})}static credentialFromResult(t){return Zn.credentialFromTaggedObject(t)}static credentialFromError(t){return Zn.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;const{oauthIdToken:e,oauthAccessToken:i}=t;if(!e&&!i)return null;try{return Zn.credential(e,i)}catch(t){return null}}}Zn.GOOGLE_SIGN_IN_METHOD="google.com",Zn.PROVIDER_ID="google.com";
|
|
993
993
|
/**
|
|
994
994
|
* @license
|
|
995
995
|
* Copyright 2020 Google LLC
|
|
@@ -1006,7 +1006,7 @@ class Zo extends Go{constructor(){super("google.com"),this.addScope("profile")}s
|
|
|
1006
1006
|
* See the License for the specific language governing permissions and
|
|
1007
1007
|
* limitations under the License.
|
|
1008
1008
|
*/
|
|
1009
|
-
class
|
|
1009
|
+
class Jn extends Gn{constructor(){super("github.com")}static credential(t){return Hn._fromParams({providerId:Jn.PROVIDER_ID,signInMethod:Jn.GITHUB_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return Jn.credentialFromTaggedObject(t)}static credentialFromError(t){return Jn.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t))return null;if(!t.oauthAccessToken)return null;try{return Jn.credential(t.oauthAccessToken)}catch(t){return null}}}Jn.GITHUB_SIGN_IN_METHOD="github.com",Jn.PROVIDER_ID="github.com";
|
|
1010
1010
|
/**
|
|
1011
1011
|
* @license
|
|
1012
1012
|
* Copyright 2020 Google LLC
|
|
@@ -1023,7 +1023,7 @@ class Yo extends Go{constructor(){super("github.com")}static credential(t){retur
|
|
|
1023
1023
|
* See the License for the specific language governing permissions and
|
|
1024
1024
|
* limitations under the License.
|
|
1025
1025
|
*/
|
|
1026
|
-
class
|
|
1026
|
+
class Yn extends Gn{constructor(){super("twitter.com")}static credential(t,e){return Hn._fromParams({providerId:Yn.PROVIDER_ID,signInMethod:Yn.TWITTER_SIGN_IN_METHOD,oauthToken:t,oauthTokenSecret:e})}static credentialFromResult(t){return Yn.credentialFromTaggedObject(t)}static credentialFromError(t){return Yn.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;const{oauthAccessToken:e,oauthTokenSecret:i}=t;if(!e||!i)return null;try{return Yn.credential(e,i)}catch(t){return null}}}Yn.TWITTER_SIGN_IN_METHOD="twitter.com",Yn.PROVIDER_ID="twitter.com";
|
|
1027
1027
|
/**
|
|
1028
1028
|
* @license
|
|
1029
1029
|
* Copyright 2020 Google LLC
|
|
@@ -1040,7 +1040,7 @@ class Jo extends Go{constructor(){super("twitter.com")}static credential(t,e){re
|
|
|
1040
1040
|
* See the License for the specific language governing permissions and
|
|
1041
1041
|
* limitations under the License.
|
|
1042
1042
|
*/
|
|
1043
|
-
class
|
|
1043
|
+
class qn{constructor(t){this.user=t.user,this.providerId=t.providerId,this._tokenResponse=t._tokenResponse,this.operationType=t.operationType}static async _fromIdTokenResponse(t,e,i,o=!1){const n=await vn._fromIdTokenResponse(t,i,o),s=Qn(i);return new qn({user:n,providerId:s,_tokenResponse:i,operationType:e})}static async _forOperation(t,e,i){await t._updateTokensIfNecessary(i,!0);const o=Qn(i);return new qn({user:t,providerId:o,_tokenResponse:i,operationType:e})}}function Qn(t){return t.providerId?t.providerId:"phoneNumber"in t?"phone":null}
|
|
1044
1044
|
/**
|
|
1045
1045
|
* @license
|
|
1046
1046
|
* Copyright 2020 Google LLC
|
|
@@ -1056,7 +1056,7 @@ class qo{constructor(t){this.user=t.user,this.providerId=t.providerId,this._toke
|
|
|
1056
1056
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1057
1057
|
* See the License for the specific language governing permissions and
|
|
1058
1058
|
* limitations under the License.
|
|
1059
|
-
*/class
|
|
1059
|
+
*/class Xn extends Me{constructor(t,e,i,o){var n;super(e.code,e.message),this.operationType=i,this.user=o,Object.setPrototypeOf(this,Xn.prototype),this.customData={appName:t.name,tenantId:null!==(n=t.tenantId)&&void 0!==n?n:void 0,_serverResponse:e.customData._serverResponse,operationType:i}}static _fromErrorAndOperation(t,e,i,o){return new Xn(t,e,i,o)}}function ts(t,e,i,o){return("reauthenticate"===e?i._getReauthenticationResolver(t):i._getIdTokenResponse(t)).catch((i=>{if("auth/multi-factor-auth-required"===i.code)throw Xn._fromErrorAndOperation(t,i,e,o);throw i}))}const es="__sak";
|
|
1060
1060
|
/**
|
|
1061
1061
|
* @license
|
|
1062
1062
|
* Copyright 2019 Google LLC
|
|
@@ -1072,7 +1072,7 @@ class qo{constructor(t){this.user=t.user,this.providerId=t.providerId,this._toke
|
|
|
1072
1072
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1073
1073
|
* See the License for the specific language governing permissions and
|
|
1074
1074
|
* limitations under the License.
|
|
1075
|
-
*/class
|
|
1075
|
+
*/class is{constructor(t,e){this.storageRetriever=t,this.type=e}_isAvailable(){try{return this.storage?(this.storage.setItem(es,"1"),this.storage.removeItem(es),Promise.resolve(!0)):Promise.resolve(!1)}catch(t){return Promise.resolve(!1)}}_set(t,e){return this.storage.setItem(t,JSON.stringify(e)),Promise.resolve()}_get(t){const e=this.storage.getItem(t);return Promise.resolve(e?JSON.parse(e):null)}_remove(t){return this.storage.removeItem(t),Promise.resolve()}get storage(){return this.storageRetriever()}}
|
|
1076
1076
|
/**
|
|
1077
1077
|
* @license
|
|
1078
1078
|
* Copyright 2020 Google LLC
|
|
@@ -1088,7 +1088,7 @@ class qo{constructor(t){this.user=t.user,this.providerId=t.providerId,this._toke
|
|
|
1088
1088
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1089
1089
|
* See the License for the specific language governing permissions and
|
|
1090
1090
|
* limitations under the License.
|
|
1091
|
-
*/class
|
|
1091
|
+
*/class os extends is{constructor(){super((()=>window.localStorage),"LOCAL"),this.boundEventHandler=(t,e)=>this.onStorageEvent(t,e),this.listeners={},this.localCache={},this.pollTimer=null,this.fallbackToPolling=An(),this._shouldAllowMigration=!0}forAllChangedKeys(t){for(const e of Object.keys(this.listeners)){const i=this.storage.getItem(e),o=this.localCache[e];i!==o&&t(e,o,i)}}onStorageEvent(t,e=!1){if(!t.key)return void this.forAllChangedKeys(((t,e,i)=>{this.notifyListeners(t,i)}));const i=t.key;e?this.detachListener():this.stopPolling();const o=()=>{const t=this.storage.getItem(i);(e||this.localCache[i]!==t)&&this.notifyListeners(i,t)},n=this.storage.getItem(i);Nn()&&n!==t.newValue&&t.newValue!==t.oldValue?setTimeout(o,10):o()}notifyListeners(t,e){this.localCache[t]=e;const i=this.listeners[t];if(i)for(const t of Array.from(i))t(e?JSON.parse(e):e)}startPolling(){this.stopPolling(),this.pollTimer=setInterval((()=>{this.forAllChangedKeys(((t,e,i)=>{this.onStorageEvent(new StorageEvent("storage",{key:t,oldValue:e,newValue:i}),!0)}))}),1e3)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(t,e){0===Object.keys(this.listeners).length&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[t]||(this.listeners[t]=new Set,this.localCache[t]=this.storage.getItem(t)),this.listeners[t].add(e)}_removeListener(t,e){this.listeners[t]&&(this.listeners[t].delete(e),0===this.listeners[t].size&&delete this.listeners[t]),0===Object.keys(this.listeners).length&&(this.detachListener(),this.stopPolling())}async _set(t,e){await super._set(t,e),this.localCache[t]=JSON.stringify(e)}async _get(t){const e=await super._get(t);return this.localCache[t]=JSON.stringify(e),e}async _remove(t){await super._remove(t),delete this.localCache[t]}}os.type="LOCAL";const ns=os;
|
|
1092
1092
|
/**
|
|
1093
1093
|
* @license
|
|
1094
1094
|
* Copyright 2020 Google LLC
|
|
@@ -1104,7 +1104,7 @@ class qo{constructor(t){this.user=t.user,this.providerId=t.providerId,this._toke
|
|
|
1104
1104
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1105
1105
|
* See the License for the specific language governing permissions and
|
|
1106
1106
|
* limitations under the License.
|
|
1107
|
-
*/class
|
|
1107
|
+
*/class ss extends is{constructor(){super((()=>window.sessionStorage),"SESSION")}_addListener(t,e){}_removeListener(t,e){}}ss.type="SESSION";const rs=ss;
|
|
1108
1108
|
/**
|
|
1109
1109
|
* @license
|
|
1110
1110
|
* Copyright 2019 Google LLC
|
|
@@ -1137,7 +1137,7 @@ class qo{constructor(t){this.user=t.user,this.providerId=t.providerId,this._toke
|
|
|
1137
1137
|
* See the License for the specific language governing permissions and
|
|
1138
1138
|
* limitations under the License.
|
|
1139
1139
|
*/
|
|
1140
|
-
class
|
|
1140
|
+
class as{constructor(t){this.eventTarget=t,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(t){const e=this.receivers.find((e=>e.isListeningto(t)));if(e)return e;const i=new as(t);return this.receivers.push(i),i}isListeningto(t){return this.eventTarget===t}async handleEvent(t){const e=t,{eventId:i,eventType:o,data:n}=e.data,s=this.handlersMap[o];if(!(null==s?void 0:s.size))return;e.ports[0].postMessage({status:"ack",eventId:i,eventType:o});const r=Array.from(s).map((async t=>t(e.origin,n))),a=await function(t){return Promise.all(t.map((async t=>{try{return{fulfilled:!0,value:await t}}catch(t){return{fulfilled:!1,reason:t}}})))}(r);e.ports[0].postMessage({status:"done",eventId:i,eventType:o,response:a})}_subscribe(t,e){0===Object.keys(this.handlersMap).length&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[t]||(this.handlersMap[t]=new Set),this.handlersMap[t].add(e)}_unsubscribe(t,e){this.handlersMap[t]&&e&&this.handlersMap[t].delete(e),e&&0!==this.handlersMap[t].size||delete this.handlersMap[t],0===Object.keys(this.handlersMap).length&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}}
|
|
1141
1141
|
/**
|
|
1142
1142
|
* @license
|
|
1143
1143
|
* Copyright 2020 Google LLC
|
|
@@ -1154,7 +1154,7 @@ class ar{constructor(t){this.eventTarget=t,this.handlersMap={},this.boundEventHa
|
|
|
1154
1154
|
* See the License for the specific language governing permissions and
|
|
1155
1155
|
* limitations under the License.
|
|
1156
1156
|
*/
|
|
1157
|
-
function
|
|
1157
|
+
function ls(t="",e=10){let i="";for(let t=0;t<e;t++)i+=Math.floor(10*Math.random());return t+i}
|
|
1158
1158
|
/**
|
|
1159
1159
|
* @license
|
|
1160
1160
|
* Copyright 2019 Google LLC
|
|
@@ -1170,7 +1170,7 @@ function lr(t="",e=10){let i="";for(let t=0;t<e;t++)i+=Math.floor(10*Math.random
|
|
|
1170
1170
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1171
1171
|
* See the License for the specific language governing permissions and
|
|
1172
1172
|
* limitations under the License.
|
|
1173
|
-
*/
|
|
1173
|
+
*/as.receivers=[];class cs{constructor(t){this.target=t,this.handlers=new Set}removeMessageHandler(t){t.messageChannel&&(t.messageChannel.port1.removeEventListener("message",t.onMessage),t.messageChannel.port1.close()),this.handlers.delete(t)}async _send(t,e,i=50){const o="undefined"!=typeof MessageChannel?new MessageChannel:null;if(!o)throw new Error("connection_unavailable");let n,s;return new Promise(((r,a)=>{const l=ls("",20);o.port1.start();const c=setTimeout((()=>{a(new Error("unsupported_event"))}),i);s={messageChannel:o,onMessage(t){const e=t;if(e.data.eventId===l)switch(e.data.status){case"ack":clearTimeout(c),n=setTimeout((()=>{a(new Error("timeout"))}),3e3);break;case"done":clearTimeout(n),r(e.data.response);break;default:clearTimeout(c),clearTimeout(n),a(new Error("invalid_response"))}}},this.handlers.add(s),o.port1.addEventListener("message",s.onMessage),this.target.postMessage({eventType:t,eventId:l,data:e},[o.port2])})).finally((()=>{s&&this.removeMessageHandler(s)}))}}
|
|
1174
1174
|
/**
|
|
1175
1175
|
* @license
|
|
1176
1176
|
* Copyright 2020 Google LLC
|
|
@@ -1186,7 +1186,7 @@ function lr(t="",e=10){let i="";for(let t=0;t<e;t++)i+=Math.floor(10*Math.random
|
|
|
1186
1186
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1187
1187
|
* See the License for the specific language governing permissions and
|
|
1188
1188
|
* limitations under the License.
|
|
1189
|
-
*/function
|
|
1189
|
+
*/function ds(){return window}
|
|
1190
1190
|
/**
|
|
1191
1191
|
* @license
|
|
1192
1192
|
* Copyright 2020 Google LLC.
|
|
@@ -1203,7 +1203,7 @@ function lr(t="",e=10){let i="";for(let t=0;t<e;t++)i+=Math.floor(10*Math.random
|
|
|
1203
1203
|
* See the License for the specific language governing permissions and
|
|
1204
1204
|
* limitations under the License.
|
|
1205
1205
|
*/
|
|
1206
|
-
function
|
|
1206
|
+
function hs(){return void 0!==ds().WorkerGlobalScope&&"function"==typeof ds().importScripts}
|
|
1207
1207
|
/**
|
|
1208
1208
|
* @license
|
|
1209
1209
|
* Copyright 2019 Google LLC
|
|
@@ -1220,7 +1220,7 @@ function ur(){return void 0!==dr().WorkerGlobalScope&&"function"==typeof dr().im
|
|
|
1220
1220
|
* See the License for the specific language governing permissions and
|
|
1221
1221
|
* limitations under the License.
|
|
1222
1222
|
*/
|
|
1223
|
-
const
|
|
1223
|
+
const us="firebaseLocalStorageDb",ps="firebaseLocalStorage",vs="fbase_key";class gs{constructor(t){this.request=t}toPromise(){return new Promise(((t,e)=>{this.request.addEventListener("success",(()=>{t(this.request.result)})),this.request.addEventListener("error",(()=>{e(this.request.error)}))}))}}function fs(t,e){return t.transaction([ps],e?"readwrite":"readonly").objectStore(ps)}function ms(){const t=indexedDB.open(us,1);return new Promise(((e,i)=>{t.addEventListener("error",(()=>{i(t.error)})),t.addEventListener("upgradeneeded",(()=>{const e=t.result;try{e.createObjectStore(ps,{keyPath:vs})}catch(t){i(t)}})),t.addEventListener("success",(async()=>{const i=t.result;i.objectStoreNames.contains(ps)?e(i):(i.close(),await function(){const t=indexedDB.deleteDatabase(us);return new gs(t).toPromise()}(),e(await ms()))}))}))}async function ws(t,e,i){const o=fs(t,!0).put({[vs]:e,value:i});return new gs(o).toPromise()}function ys(t,e){const i=fs(t,!0).delete(e);return new gs(i).toPromise()}class bs{constructor(){this.type="LOCAL",this._shouldAllowMigration=!0,this.listeners={},this.localCache={},this.pollTimer=null,this.pendingWrites=0,this.receiver=null,this.sender=null,this.serviceWorkerReceiverAvailable=!1,this.activeServiceWorker=null,this._workerInitializationPromise=this.initializeServiceWorkerMessaging().then((()=>{}),(()=>{}))}async _openDb(){return this.db||(this.db=await ms()),this.db}async _withRetries(t){let e=0;for(;;)try{const e=await this._openDb();return await t(e)}catch(t){if(e++>3)throw t;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return hs()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=as._getInstance(hs()?self:null),this.receiver._subscribe("keyChanged",(async(t,e)=>({keyProcessed:(await this._poll()).includes(e.key)}))),this.receiver._subscribe("ping",(async(t,e)=>["keyChanged"]))}async initializeSender(){var t,e;if(this.activeServiceWorker=await async function(){if(!(null===navigator||void 0===navigator?void 0:navigator.serviceWorker))return null;try{return(await navigator.serviceWorker.ready).active}catch(t){return null}}(),!this.activeServiceWorker)return;this.sender=new cs(this.activeServiceWorker);const i=await this.sender._send("ping",{},800);i&&(null===(t=i[0])||void 0===t?void 0:t.fulfilled)&&(null===(e=i[0])||void 0===e?void 0:e.value.includes("keyChanged"))&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(t){var e;if(this.sender&&this.activeServiceWorker&&((null===(e=null===navigator||void 0===navigator?void 0:navigator.serviceWorker)||void 0===e?void 0:e.controller)||null)===this.activeServiceWorker)try{await this.sender._send("keyChanged",{key:t},this.serviceWorkerReceiverAvailable?800:50)}catch(e){}}async _isAvailable(){try{if(!indexedDB)return!1;const t=await ms();return await ws(t,es,"1"),await ys(t,es),!0}catch(t){}return!1}async _withPendingWrite(t){this.pendingWrites++;try{await t()}finally{this.pendingWrites--}}async _set(t,e){return this._withPendingWrite((async()=>(await this._withRetries((i=>ws(i,t,e))),this.localCache[t]=e,this.notifyServiceWorker(t))))}async _get(t){const e=await this._withRetries((e=>async function(t,e){const i=fs(t,!1).get(e),o=await new gs(i).toPromise();return void 0===o?null:o.value}(e,t)));return this.localCache[t]=e,e}async _remove(t){return this._withPendingWrite((async()=>(await this._withRetries((e=>ys(e,t))),delete this.localCache[t],this.notifyServiceWorker(t))))}async _poll(){const t=await this._withRetries((t=>{const e=fs(t,!1).getAll();return new gs(e).toPromise()}));if(!t)return[];if(0!==this.pendingWrites)return[];const e=[],i=new Set;if(0!==t.length)for(const{fbase_key:o,value:n}of t)i.add(o),JSON.stringify(this.localCache[o])!==JSON.stringify(n)&&(this.notifyListeners(o,n),e.push(o));for(const t of Object.keys(this.localCache))this.localCache[t]&&!i.has(t)&&(this.notifyListeners(t,null),e.push(t));return e}notifyListeners(t,e){this.localCache[t]=e;const i=this.listeners[t];if(i)for(const t of Array.from(i))t(e)}startPolling(){this.stopPolling(),this.pollTimer=setInterval((async()=>this._poll()),800)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(t,e){0===Object.keys(this.listeners).length&&this.startPolling(),this.listeners[t]||(this.listeners[t]=new Set,this._get(t)),this.listeners[t].add(e)}_removeListener(t,e){this.listeners[t]&&(this.listeners[t].delete(e),0===this.listeners[t].size&&delete this.listeners[t]),0===Object.keys(this.listeners).length&&this.stopPolling()}}bs.type="LOCAL";const Cs=bs;new Bo(3e4,6e4);
|
|
1224
1224
|
/**
|
|
1225
1225
|
* @license
|
|
1226
1226
|
* Copyright 2019 Google LLC
|
|
@@ -1237,7 +1237,7 @@ const hr="firebaseLocalStorageDb",pr="firebaseLocalStorage",fr="fbase_key";class
|
|
|
1237
1237
|
* See the License for the specific language governing permissions and
|
|
1238
1238
|
* limitations under the License.
|
|
1239
1239
|
*/
|
|
1240
|
-
class
|
|
1240
|
+
class xs extends zn{constructor(t){super("custom","custom"),this.params=t}_getIdTokenResponse(t){return Bn(t,this._buildIdpRequest())}_linkToIdToken(t,e){return Bn(t,this._buildIdpRequest(e))}_getReauthenticationResolver(t){return Bn(t,this._buildIdpRequest())}_buildIdpRequest(t){const e={requestUri:this.params.requestUri,sessionId:this.params.sessionId,postBody:this.params.postBody,tenantId:this.params.tenantId,pendingToken:this.params.pendingToken,returnSecureToken:!0,returnIdpCredential:!0};return t&&(e.idToken=t),e}}function Es(t){
|
|
1241
1241
|
/**
|
|
1242
1242
|
* @license
|
|
1243
1243
|
* Copyright 2020 Google LLC
|
|
@@ -1254,7 +1254,7 @@ class xr extends zo{constructor(t){super("custom","custom"),this.params=t}_getId
|
|
|
1254
1254
|
* See the License for the specific language governing permissions and
|
|
1255
1255
|
* limitations under the License.
|
|
1256
1256
|
*/
|
|
1257
|
-
return async function(t,e,i=!1){if(Wi(t.app))return Promise.reject(
|
|
1257
|
+
return async function(t,e,i=!1){if(Wi(t.app))return Promise.reject(Do(t));const o="signIn",n=await ts(t,o,e),s=await qn._fromIdTokenResponse(t,o,n);return i||await t._updateCurrentUser(s.user),s}(t.auth,new xs(t),t.bypassAuthState)}function ks(t){const{auth:e,user:i}=t;return Fo(i,e,"internal-error"),
|
|
1258
1258
|
/**
|
|
1259
1259
|
* @license
|
|
1260
1260
|
* Copyright 2019 Google LLC
|
|
@@ -1271,7 +1271,7 @@ return async function(t,e,i=!1){if(Wi(t.app))return Promise.reject(Fn(t));const
|
|
|
1271
1271
|
* See the License for the specific language governing permissions and
|
|
1272
1272
|
* limitations under the License.
|
|
1273
1273
|
*/
|
|
1274
|
-
async function(t,e,i=!1){const{auth:
|
|
1274
|
+
async function(t,e,i=!1){const{auth:o}=t;if(Wi(o.app))return Promise.reject(Do(o));const n="reauthenticate";try{const s=await an(t,ts(o,n,e,t),i);Fo(s.idToken,o,"internal-error");const r=sn(s.idToken);Fo(r,o,"internal-error");const{sub:a}=r;return Fo(t.uid===a,o,"user-mismatch"),qn._forOperation(t,n,s)}catch(t){throw"auth/user-not-found"===(null==t?void 0:t.code)&&Oo(o,"user-mismatch"),t}}(i,new xs(t),t.bypassAuthState)}async function Ss(t){const{auth:e,user:i}=t;return Fo(i,e,"internal-error"),async function(t,e,i=!1){const o=await an(t,e._linkToIdToken(t.auth,await t.getIdToken()),i);return qn._forOperation(t,"link",o)}(i,new xs(t),t.bypassAuthState)}
|
|
1275
1275
|
/**
|
|
1276
1276
|
* @license
|
|
1277
1277
|
* Copyright 2020 Google LLC
|
|
@@ -1287,7 +1287,7 @@ async function(t,e,i=!1){const{auth:n}=t;if(Wi(n.app))return Promise.reject(Fn(n
|
|
|
1287
1287
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1288
1288
|
* See the License for the specific language governing permissions and
|
|
1289
1289
|
* limitations under the License.
|
|
1290
|
-
*/class
|
|
1290
|
+
*/class Ms{constructor(t,e,i,o,n=!1){this.auth=t,this.resolver=i,this.user=o,this.bypassAuthState=n,this.pendingPromise=null,this.eventManager=null,this.filter=Array.isArray(e)?e:[e]}execute(){return new Promise((async(t,e)=>{this.pendingPromise={resolve:t,reject:e};try{this.eventManager=await this.resolver._initialize(this.auth),await this.onExecution(),this.eventManager.registerConsumer(this)}catch(t){this.reject(t)}}))}async onAuthEvent(t){const{urlResponse:e,sessionId:i,postBody:o,tenantId:n,error:s,type:r}=t;if(s)return void this.reject(s);const a={auth:this.auth,requestUri:e,sessionId:i,tenantId:n||void 0,postBody:o||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(r)(a))}catch(t){this.reject(t)}}onError(t){this.reject(t)}getIdpTask(t){switch(t){case"signInViaPopup":case"signInViaRedirect":return Es;case"linkViaPopup":case"linkViaRedirect":return Ss;case"reauthViaPopup":case"reauthViaRedirect":return ks;default:Oo(this.auth,"internal-error")}}resolve(t){jo(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(t),this.unregisterAndCleanUp()}reject(t){jo(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.reject(t),this.unregisterAndCleanUp()}unregisterAndCleanUp(){this.eventManager&&this.eventManager.unregisterConsumer(this),this.pendingPromise=null,this.cleanUp()}}
|
|
1291
1291
|
/**
|
|
1292
1292
|
* @license
|
|
1293
1293
|
* Copyright 2020 Google LLC
|
|
@@ -1303,7 +1303,7 @@ async function(t,e,i=!1){const{auth:n}=t;if(Wi(n.app))return Promise.reject(Fn(n
|
|
|
1303
1303
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1304
1304
|
* See the License for the specific language governing permissions and
|
|
1305
1305
|
* limitations under the License.
|
|
1306
|
-
*/const
|
|
1306
|
+
*/const Ts=new Bo(2e3,1e4);class _s extends Ms{constructor(t,e,i,o,n){super(t,e,o,n),this.provider=i,this.authWindow=null,this.pollId=null,_s.currentPopupAction&&_s.currentPopupAction.cancel(),_s.currentPopupAction=this}async executeNotNull(){const t=await this.execute();return Fo(t,this.auth,"internal-error"),t}async onExecution(){jo(1===this.filter.length,"Popup operations only handle one event");const t=ls();this.authWindow=await this.resolver._openPopup(this.auth,this.provider,this.filter[0],t),this.authWindow.associatedEvent=t,this.resolver._originValidation(this.auth).catch((t=>{this.reject(t)})),this.resolver._isIframeWebStorageSupported(this.auth,(t=>{t||this.reject(Lo(this.auth,"web-storage-unsupported"))})),this.pollUserCancellation()}get eventId(){var t;return(null===(t=this.authWindow)||void 0===t?void 0:t.associatedEvent)||null}cancel(){this.reject(Lo(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,_s.currentPopupAction=null}pollUserCancellation(){const t=()=>{var e,i;(null===(i=null===(e=this.authWindow)||void 0===e?void 0:e.window)||void 0===i?void 0:i.closed)?this.pollId=window.setTimeout((()=>{this.pollId=null,this.reject(Lo(this.auth,"popup-closed-by-user"))}),8e3):this.pollId=window.setTimeout(t,Ts.get())};t()}}_s.currentPopupAction=null;
|
|
1307
1307
|
/**
|
|
1308
1308
|
* @license
|
|
1309
1309
|
* Copyright 2020 Google LLC
|
|
@@ -1320,7 +1320,7 @@ async function(t,e,i=!1){const{auth:n}=t;if(Wi(n.app))return Promise.reject(Fn(n
|
|
|
1320
1320
|
* See the License for the specific language governing permissions and
|
|
1321
1321
|
* limitations under the License.
|
|
1322
1322
|
*/
|
|
1323
|
-
const
|
|
1323
|
+
const Is="pendingRedirect",Ns=new Map;class As extends Ms{constructor(t,e,i=!1){super(t,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],e,void 0,i),this.eventId=null}async execute(){let t=Ns.get(this.auth._key());if(!t){try{const e=await async function(t,e){const i=function(t){return yn(Is,t.config.apiKey,t.name)}(e),o=function(t){return fn(t._redirectPersistence)}(t);if(!await o._isAvailable())return!1;const n="true"===await o._get(i);return await o._remove(i),n}(this.resolver,this.auth),i=e?await super.execute():null;t=()=>Promise.resolve(i)}catch(e){t=()=>Promise.reject(e)}Ns.set(this.auth._key(),t)}return this.bypassAuthState||Ns.set(this.auth._key(),(()=>Promise.resolve(null))),t()}async onAuthEvent(t){if("signInViaRedirect"===t.type)return super.onAuthEvent(t);if("unknown"!==t.type){if(t.eventId){const e=await this.auth._redirectUserForId(t.eventId);if(e)return this.user=e,super.onAuthEvent(t);this.resolve(null)}}else this.resolve(null)}async onExecution(){}cleanUp(){}}function Os(t,e){Ns.set(t._key(),e)}async function Ls(t,e,i=!1){if(Wi(t.app))return Promise.reject(Do(t));const o=Vn(t),n=
|
|
1324
1324
|
/**
|
|
1325
1325
|
* @license
|
|
1326
1326
|
* Copyright 2021 Google LLC
|
|
@@ -1337,7 +1337,7 @@ const Ir="pendingRedirect",_r=new Map;class Nr extends Mr{constructor(t,e,i=!1){
|
|
|
1337
1337
|
* See the License for the specific language governing permissions and
|
|
1338
1338
|
* limitations under the License.
|
|
1339
1339
|
*/
|
|
1340
|
-
function(t,e){return e?
|
|
1340
|
+
function(t,e){return e?fn(e):(Fo(t._popupRedirectResolver,t,"argument-error"),t._popupRedirectResolver)}(o,e),s=new As(o,n,i),r=await s.execute();return r&&!i&&(delete r.user._redirectEventId,await o._persistUserIfCurrent(r.user),await o._setRedirectUser(null,e)),r}
|
|
1341
1341
|
/**
|
|
1342
1342
|
* @license
|
|
1343
1343
|
* Copyright 2020 Google LLC
|
|
@@ -1353,7 +1353,7 @@ function(t,e){return e?mo(e):(Pn(t._popupRedirectResolver,t,"argument-error"),t.
|
|
|
1353
1353
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1354
1354
|
* See the License for the specific language governing permissions and
|
|
1355
1355
|
* limitations under the License.
|
|
1356
|
-
*/class
|
|
1356
|
+
*/class $s{constructor(t){this.auth=t,this.cachedEventUids=new Set,this.consumers=new Set,this.queuedRedirectEvent=null,this.hasHandledPotentialRedirect=!1,this.lastProcessedEventTime=Date.now()}registerConsumer(t){this.consumers.add(t),this.queuedRedirectEvent&&this.isEventForConsumer(this.queuedRedirectEvent,t)&&(this.sendToConsumer(this.queuedRedirectEvent,t),this.saveEventToCache(this.queuedRedirectEvent),this.queuedRedirectEvent=null)}unregisterConsumer(t){this.consumers.delete(t)}onEvent(t){if(this.hasEventBeenHandled(t))return!1;let e=!1;return this.consumers.forEach((i=>{this.isEventForConsumer(t,i)&&(e=!0,this.sendToConsumer(t,i),this.saveEventToCache(t))})),this.hasHandledPotentialRedirect||!function(t){switch(t.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return Vs(t);default:return!1}}
|
|
1357
1357
|
/**
|
|
1358
1358
|
* @license
|
|
1359
1359
|
* Copyright 2020 Google LLC
|
|
@@ -1369,7 +1369,7 @@ function(t,e){return e?mo(e):(Pn(t._popupRedirectResolver,t,"argument-error"),t.
|
|
|
1369
1369
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1370
1370
|
* See the License for the specific language governing permissions and
|
|
1371
1371
|
* limitations under the License.
|
|
1372
|
-
*/(t)||(this.hasHandledPotentialRedirect=!0,e||(this.queuedRedirectEvent=t,e=!0)),e}sendToConsumer(t,e){var i;if(t.error&&!
|
|
1372
|
+
*/(t)||(this.hasHandledPotentialRedirect=!0,e||(this.queuedRedirectEvent=t,e=!0)),e}sendToConsumer(t,e){var i;if(t.error&&!Vs(t)){const o=(null===(i=t.error.code)||void 0===i?void 0:i.split("auth/")[1])||"internal-error";e.onError(Lo(this.auth,o))}else e.onAuthEvent(t)}isEventForConsumer(t,e){const i=null===e.eventId||!!t.eventId&&t.eventId===e.eventId;return e.filter.includes(t.type)&&i}hasEventBeenHandled(t){return Date.now()-this.lastProcessedEventTime>=6e5&&this.cachedEventUids.clear(),this.cachedEventUids.has(Ds(t))}saveEventToCache(t){this.cachedEventUids.add(Ds(t)),this.lastProcessedEventTime=Date.now()}}function Ds(t){return[t.type,t.eventId,t.sessionId,t.tenantId].filter((t=>t)).join("-")}function Vs({type:t,error:e}){return"unknown"===t&&"auth/no-auth-event"===(null==e?void 0:e.code)}
|
|
1373
1373
|
/**
|
|
1374
1374
|
* @license
|
|
1375
1375
|
* Copyright 2020 Google LLC
|
|
@@ -1386,7 +1386,7 @@ function(t,e){return e?mo(e):(Pn(t._popupRedirectResolver,t,"argument-error"),t.
|
|
|
1386
1386
|
* See the License for the specific language governing permissions and
|
|
1387
1387
|
* limitations under the License.
|
|
1388
1388
|
*/
|
|
1389
|
-
const
|
|
1389
|
+
const Fs=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,Ps=/^https?/;async function js(t){if(t.config.emulator)return;const{authorizedDomains:e}=await async function(t,e={}){return Yo(t,"GET","/v1/projects",e)}(t);for(const t of e)try{if(Rs(t))return}catch(t){}Oo(t,"unauthorized-domain")}function Rs(t){const e=Ro(),{protocol:i,hostname:o}=new URL(e);if(t.startsWith("chrome-extension://")){const n=new URL(t);return""===n.hostname&&""===o?"chrome-extension:"===i&&t.replace("chrome-extension://","")===e.replace("chrome-extension://",""):"chrome-extension:"===i&&n.hostname===o}if(!Ps.test(i))return!1;if(Fs.test(t))return o===t;const n=t.replace(/\./g,"\\.");return new RegExp("^(.+\\."+n+"|"+n+")$","i").test(o)}
|
|
1390
1390
|
/**
|
|
1391
1391
|
* @license
|
|
1392
1392
|
* Copyright 2020 Google LLC.
|
|
@@ -1402,7 +1402,7 @@ const Pr=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,Rr=/^https?/;async function jr(t
|
|
|
1402
1402
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1403
1403
|
* See the License for the specific language governing permissions and
|
|
1404
1404
|
* limitations under the License.
|
|
1405
|
-
*/const
|
|
1405
|
+
*/const Us=new Bo(3e4,6e4);function zs(){const t=ds().i;if(null==t?void 0:t.H)for(const e of Object.keys(t.H))if(t.H[e].r=t.H[e].r||[],t.H[e].L=t.H[e].L||[],t.H[e].r=[...t.H[e].L],t.CP)for(let e=0;e<t.CP.length;e++)t.CP[e]=null}function Bs(t){return new Promise(((e,i)=>{var o,n,s,r;function a(){zs(),gapi.load("gapi.iframes",{callback:()=>{e(gapi.iframes.getContext())},ontimeout:()=>{zs(),i(Lo(t,"network-request-failed"))},timeout:Us.get()})}if(null===(n=null===(o=ds().gapi)||void 0===o?void 0:o.iframes)||void 0===n?void 0:n.Iframe)e(gapi.iframes.getContext());else{if(!(null===(s=ds().gapi)||void 0===s?void 0:s.load)){const e=`__${"iframefcb"}${Math.floor(1e6*Math.random())}`;return ds()[e]=()=>{gapi.load?a():i(Lo(t,"network-request-failed"))},(r=`${Pn.gapiScript}?onload=${e}`,Pn.loadJS(r)).catch((t=>i(t)))}a()}})).catch((t=>{throw Hs=null,t}))}let Hs=null;
|
|
1406
1406
|
/**
|
|
1407
1407
|
* @license
|
|
1408
1408
|
* Copyright 2020 Google LLC.
|
|
@@ -1419,7 +1419,7 @@ const Pr=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,Rr=/^https?/;async function jr(t
|
|
|
1419
1419
|
* See the License for the specific language governing permissions and
|
|
1420
1420
|
* limitations under the License.
|
|
1421
1421
|
*/
|
|
1422
|
-
const
|
|
1422
|
+
const Ws=new Bo(5e3,15e3),Gs={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"},"aria-hidden":"true",tabindex:"-1"},Ks=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function Zs(t){const e=t.config;Fo(e.authDomain,t,"auth-domain-config-required");const i=e.emulator?Ho(e,"emulator/auth/iframe"):`https://${t.config.authDomain}/__/auth/iframe`,o={apiKey:e.apiKey,appName:t.name,v:Zi},n=Ks.get(t.config.apiHost);n&&(o.eid=n);const s=t._getFrameworks();return s.length&&(o.fw=s.join(",")),`${i}?${Ae(o).slice(1)}`}async function Js(t){const e=await function(t){return Hs=Hs||Bs(t),Hs}(t),i=ds().gapi;return Fo(i,t,"internal-error"),e.open({where:document.body,url:Zs(t),messageHandlersFilter:i.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:Gs,dontclear:!0},(e=>new Promise((async(i,o)=>{await e.restyle({setHideOnLeave:!1});const n=Lo(t,"network-request-failed"),s=ds().setTimeout((()=>{o(n)}),Ws.get());function r(){ds().clearTimeout(s),i(e)}e.ping(r).then(r,(()=>{o(n)}))}))))}
|
|
1423
1423
|
/**
|
|
1424
1424
|
* @license
|
|
1425
1425
|
* Copyright 2020 Google LLC.
|
|
@@ -1435,7 +1435,7 @@ const Wr=new Bn(5e3,15e3),Gr={style:{position:"absolute",top:"-100px",width:"1px
|
|
|
1435
1435
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1436
1436
|
* See the License for the specific language governing permissions and
|
|
1437
1437
|
* limitations under the License.
|
|
1438
|
-
*/const
|
|
1438
|
+
*/const Ys={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"};class qs{constructor(t){this.window=t,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch(t){}}}function Qs(t,e,i,o=500,n=600){const s=Math.max((window.screen.availHeight-n)/2,0).toString(),r=Math.max((window.screen.availWidth-o)/2,0).toString();let a="";const l=Object.assign(Object.assign({},Ys),{width:o.toString(),height:n.toString(),top:s,left:r}),c=Se().toLowerCase();i&&(a=kn(c)?"_blank":i),xn(c)&&(e=e||"http://localhost",l.scrollbars="yes");const d=Object.entries(l).reduce(((t,[e,i])=>`${t}${e}=${i},`),"");if(function(t=Se()){var e;return In(t)&&!!(null===(e=window.navigator)||void 0===e?void 0:e.standalone)}(c)&&"_self"!==a)return function(t,e){const i=document.createElement("a");i.href=t,i.target=e;const o=document.createEvent("MouseEvent");o.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),i.dispatchEvent(o)}
|
|
1439
1439
|
/**
|
|
1440
1440
|
* @license
|
|
1441
1441
|
* Copyright 2021 Google LLC
|
|
@@ -1451,7 +1451,7 @@ const Wr=new Bn(5e3,15e3),Gr={style:{position:"absolute",top:"-100px",width:"1px
|
|
|
1451
1451
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1452
1452
|
* See the License for the specific language governing permissions and
|
|
1453
1453
|
* limitations under the License.
|
|
1454
|
-
*/(e||"",a),new
|
|
1454
|
+
*/(e||"",a),new qs(null);const h=window.open(e||"",a,d);Fo(h,t,"popup-blocked");try{h.focus()}catch(t){}return new qs(h)}const Xs="__/auth/handler",tr="emulator/auth/handler",er=encodeURIComponent("fac");async function ir(t,e,i,o,n,s){Fo(t.config.authDomain,t,"auth-domain-config-required"),Fo(t.config.apiKey,t,"invalid-api-key");const r={apiKey:t.config.apiKey,appName:t.name,authType:i,redirectUrl:o,v:Zi,eventId:n};if(e instanceof Wn){e.setDefaultLanguage(t.languageCode),r.providerId=e.providerId||"",function(t){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}(e.getCustomParameters())||(r.customParameters=JSON.stringify(e.getCustomParameters()));for(const[t,e]of Object.entries({}))r[t]=e}if(e instanceof Gn){const t=e.getScopes().filter((t=>""!==t));t.length>0&&(r.scopes=t.join(","))}t.tenantId&&(r.tid=t.tenantId);const a=r;for(const t of Object.keys(a))void 0===a[t]&&delete a[t];const l=await t._getAppCheckToken(),c=l?`#${er}=${encodeURIComponent(l)}`:"";return`${function({config:t}){if(!t.emulator)return`https://${t.authDomain}/${Xs}`;return Ho(t,tr)}
|
|
1455
1455
|
/**
|
|
1456
1456
|
* @license
|
|
1457
1457
|
* Copyright 2020 Google LLC
|
|
@@ -1467,7 +1467,7 @@ const Wr=new Bn(5e3,15e3),Gr={style:{position:"absolute",top:"-100px",width:"1px
|
|
|
1467
1467
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1468
1468
|
* See the License for the specific language governing permissions and
|
|
1469
1469
|
* limitations under the License.
|
|
1470
|
-
*/(t)}?${
|
|
1470
|
+
*/(t)}?${Ae(a).slice(1)}${c}`}const or="webStorageSupport";const nr=class{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=rs,this._completeRedirectFn=Ls,this._overrideRedirectResult=Os}async _openPopup(t,e,i,o){var n;jo(null===(n=this.eventManagers[t._key()])||void 0===n?void 0:n.manager,"_initialize() not called before _openPopup()");return Qs(t,await ir(t,e,i,Ro(),o),ls())}async _openRedirect(t,e,i,o){await this._originValidation(t);return function(t){ds().location.href=t}(await ir(t,e,i,Ro(),o)),new Promise((()=>{}))}_initialize(t){const e=t._key();if(this.eventManagers[e]){const{manager:t,promise:i}=this.eventManagers[e];return t?Promise.resolve(t):(jo(i,"If manager is not set, promise should be"),i)}const i=this.initAndGetManager(t);return this.eventManagers[e]={promise:i},i.catch((()=>{delete this.eventManagers[e]})),i}async initAndGetManager(t){const e=await Js(t),i=new $s(t);return e.register("authEvent",(e=>{Fo(null==e?void 0:e.authEvent,t,"invalid-auth-event");return{status:i.onEvent(e.authEvent)?"ACK":"ERROR"}}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER),this.eventManagers[t._key()]={manager:i},this.iframes[t._key()]=e,i}_isIframeWebStorageSupported(t,e){this.iframes[t._key()].send(or,{type:or},(i=>{var o;const n=null===(o=null==i?void 0:i[0])||void 0===o?void 0:o[or];void 0!==n&&e(!!n),Oo(t,"internal-error")}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(t){const e=t._key();return this.originValidationPromises[e]||(this.originValidationPromises[e]=js(t)),this.originValidationPromises[e]}get _shouldInitProactively(){return An()||En()||In()}};var sr="@firebase/auth",rr="1.10.0";
|
|
1471
1471
|
/**
|
|
1472
1472
|
* @license
|
|
1473
1473
|
* Copyright 2020 Google LLC
|
|
@@ -1484,7 +1484,7 @@ const Wr=new Bn(5e3,15e3),Gr={style:{position:"absolute",top:"-100px",width:"1px
|
|
|
1484
1484
|
* See the License for the specific language governing permissions and
|
|
1485
1485
|
* limitations under the License.
|
|
1486
1486
|
*/
|
|
1487
|
-
class
|
|
1487
|
+
class ar{constructor(t){this.auth=t,this.internalListeners=new Map}getUid(){var t;return this.assertAuthConfigured(),(null===(t=this.auth.currentUser)||void 0===t?void 0:t.uid)||null}async getToken(t){if(this.assertAuthConfigured(),await this.auth._initializationPromise,!this.auth.currentUser)return null;return{accessToken:await this.auth.currentUser.getIdToken(t)}}addAuthTokenListener(t){if(this.assertAuthConfigured(),this.internalListeners.has(t))return;const e=this.auth.onIdTokenChanged((e=>{t((null==e?void 0:e.stsTokenManager.accessToken)||null)}));this.internalListeners.set(t,e),this.updateProactiveRefresh()}removeAuthTokenListener(t){this.assertAuthConfigured();const e=this.internalListeners.get(t);e&&(this.internalListeners.delete(t),e(),this.updateProactiveRefresh())}assertAuthConfigured(){Fo(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}}
|
|
1488
1488
|
/**
|
|
1489
1489
|
* @license
|
|
1490
1490
|
* Copyright 2020 Google LLC
|
|
@@ -1517,7 +1517,7 @@ class as{constructor(t){this.auth=t,this.internalListeners=new Map}getUid(){var
|
|
|
1517
1517
|
* See the License for the specific language governing permissions and
|
|
1518
1518
|
* limitations under the License.
|
|
1519
1519
|
*/
|
|
1520
|
-
const
|
|
1520
|
+
const lr=Ee("authIdTokenMaxAge")||300;let cr=null;function dr(t=Yi()){const e=Hi(t,"auth");if(e.isInitialized())return e.getImmediate();const i=
|
|
1521
1521
|
/**
|
|
1522
1522
|
* @license
|
|
1523
1523
|
* Copyright 2020 Google LLC
|
|
@@ -1534,15 +1534,15 @@ const ls=ke("authIdTokenMaxAge")||300;let cs=null;function ds(t=Ji()){const e=Hi
|
|
|
1534
1534
|
* See the License for the specific language governing permissions and
|
|
1535
1535
|
* limitations under the License.
|
|
1536
1536
|
*/
|
|
1537
|
-
function(t,e){const i=Hi(t,"auth");if(i.isInitialized()){const t=i.getImmediate();if(Ie(i.getOptions(),null!=e?e:{}))return t;An(t,"already-initialized")}return i.initialize({options:e})}(t,{popupRedirectResolver:os,persistence:[Cr,or,sr]}),n=ke("authTokenSyncURL");if(n&&"boolean"==typeof isSecureContext&&isSecureContext){const t=new URL(n,location.origin);if(location.origin===t.origin){const e=(o=t.toString(),async t=>{const e=t&&await t.getIdTokenResult(),i=e&&((new Date).getTime()-Date.parse(e.issuedAtTime))/1e3;if(i&&i>ls)return;const n=null==e?void 0:e.token;cs!==n&&(cs=n,await fetch(o,{method:n?"POST":"DELETE",headers:n?{Authorization:`Bearer ${n}`}:{}}))});!function(t,e,i){Oe(t).beforeAuthStateChanged(e,i)}(i,e,(()=>e(i.currentUser))),function(t,e,i,n){Oe(t).onIdTokenChanged(e,i,n)}(i,(t=>e(t)))}}var o;const r=Ce("auth");return r&&jo(i,`http://${r}`),i}var us;!function(t){Ro=t}({loadJS:t=>new Promise(((e,i)=>{const n=document.createElement("script");var o,r;n.setAttribute("src",t),n.onload=e,n.onerror=t=>{const e=Ln("internal-error");e.customData=t,i(e)},n.type="text/javascript",n.charset="UTF-8",(null!==(r=null===(o=document.getElementsByTagName("head"))||void 0===o?void 0:o[0])&&void 0!==r?r:document).appendChild(n)})),gapiScript:"https://apis.google.com/js/api.js",recaptchaV2Script:"https://www.google.com/recaptcha/api.js",recaptchaEnterpriseScript:"https://www.google.com/recaptcha/enterprise.js?render="}),us="Browser",Bi(new Fe("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),n=t.getProvider("heartbeat"),o=t.getProvider("app-check-internal"),{apiKey:r,authDomain:s}=i.options;Pn(r&&!r.includes(":"),"invalid-api-key",{appName:i.name});const a={apiKey:r,authDomain:s,clientPlatform:us,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:Ao(us)},l=new Fo(i,n,o,a);return function(t,e){const i=(null==e?void 0:e.persistence)||[],n=(Array.isArray(i)?i:[i]).map(mo);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(n,null==e?void 0:e.popupRedirectResolver)}(l,e),l}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),Bi(new Fe("auth-internal",(t=>(t=>new as(t))(Do(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),qi(rs,ss,function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";case"WebExtension":return"web-extension";default:return}}(us)),qi(rs,ss,"esm2017");const hs=("undefined"!=typeof globalThis?globalThis:void 0)?.crypto||("undefined"!=typeof global?global:void 0)?.crypto||("undefined"!=typeof window?window:void 0)?.crypto||("undefined"!=typeof self?self:void 0)?.crypto||("undefined"!=typeof frames?frames:void 0)?.[0]?.crypto;let ps;ps=hs?t=>{const e=[];for(let i=0;i<t;i+=4)e.push(hs.getRandomValues(new Uint32Array(1))[0]);return new vs(e,t)}:t=>{const e=[],i=t=>{let e=t,i=987654321;const n=4294967295;return()=>{i=36969*(65535&i)+(i>>16)&n,e=18e3*(65535&e)+(e>>16)&n;let t=(i<<16)+e&n;return t/=4294967296,t+=.5,t*(Math.random()>.5?1:-1)}};for(let n,o=0;o<t;o+=4){const t=i(4294967296*(n||Math.random()));n=987654071*t(),e.push(4294967296*t()|0)}return new vs(e,t)};class fs{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 vs extends fs{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 n=0;n<t;n+=1)e[n>>>2]|=i[n]<<24-n%4*8;this.words=e,this.sigBytes=t}else this.words=t,this.sigBytes=e}static random=ps;toString(t=ms){return t.stringify(this)}concat(t){const e=this.words,i=t.words,n=this.sigBytes,o=t.sigBytes;if(this.clamp(),n%4)for(let t=0;t<o;t+=1){const o=i[t>>>2]>>>24-t%4*8&255;e[n+t>>>2]|=o<<24-(n+t)%4*8}else for(let t=0;t<o;t+=4)e[n+t>>>2]=i[t>>>2];return this.sigBytes+=o,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 ms={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=2)i[n>>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new vs(i,e/2)}},gs={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;n.push(String.fromCharCode(i))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=1)i[n>>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new vs(i,e)}},ws={stringify(t){try{return decodeURIComponent(escape(gs.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>gs.parse(unescape(encodeURIComponent(t)))};class ys extends fs{constructor(){super(),this._minBufferSize=0}reset(){this._data=new vs,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=ws.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes}_process(t){let e;const{_data:i,blockSize:n}=this,o=i.words,r=i.sigBytes;let s=r/(4*n);s=t?Math.ceil(s):Math.max((0|s)-this._minBufferSize,0);const a=s*n,l=Math.min(4*a,r);if(a){for(let t=0;t<a;t+=n)this._doProcessBlock(o,t);e=o.splice(0,a),i.sigBytes-=l}return new vs(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class bs extends ys{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new fs,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new Cs(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 Cs extends fs{constructor(t,e){super();const i=new t;this._hasher=i;let n=e;"string"==typeof n&&(n=ws.parse(n));const o=i.blockSize,r=4*o;n.sigBytes>r&&(n=i.finalize(e)),n.clamp();const s=n.clone();this._oKey=s;const a=n.clone();this._iKey=a;const l=s.words,c=a.words;for(let t=0;t<o;t+=1)l[t]^=1549556828,c[t]^=909522486;s.sigBytes=r,a.sigBytes=r,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 xs=vs;class ks extends fs{constructor(t,e){super(),this.high=t,this.low=e}}class Es extends fs{constructor(t=[],e=8*t.length){super(),this.words=t,this.sigBytes=e}toX32(){const t=this.words,e=t.length,i=[];for(let n=0;n<e;n+=1){const e=t[n];i.push(e.high),i.push(e.low)}return xs.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 Ss=(t,e,i)=>{const n=[];let o=0;for(let r=0;r<e;r+=1)if(r%4){const e=i[t.charCodeAt(r-1)]<<r%4*2|i[t.charCodeAt(r)]>>>6-r%4*2;n[o>>>2]|=e<<24-o%4*8,o+=1}return vs.create(n,o)},Ms={stringify(t){const{words:e,sigBytes:i}=t,n=this._map;t.clamp();const o=[];for(let t=0;t<i;t+=3){const r=(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)o.push(n.charAt(r>>>6*(3-e)&63))}const r=n.charAt(64);if(r)for(;o.length%4;)o.push(r);return o.join("")},parse(t){let e=t.length;const i=this._map;let n=this._reverseMap;if(!n){this._reverseMap=[],n=this._reverseMap;for(let t=0;t<i.length;t+=1)n[i.charCodeAt(t)]=t}const o=i.charAt(64);if(o){const i=t.indexOf(o);-1!==i&&(e=i)}return Ss(t,e,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},$s=[];for(let t=0;t<64;t+=1)$s[t]=4294967296*Math.abs(Math.sin(t+1))|0;const Ts=(t,e,i,n,o,r,s)=>{const a=t+(e&i|~e&n)+o+s;return(a<<r|a>>>32-r)+e},Is=(t,e,i,n,o,r,s)=>{const a=t+(e&n|i&~n)+o+s;return(a<<r|a>>>32-r)+e},_s=(t,e,i,n,o,r,s)=>{const a=t+(e^i^n)+o+s;return(a<<r|a>>>32-r)+e},Ns=(t,e,i,n,o,r,s)=>{const a=t+(i^(e|~n))+o+s;return(a<<r|a>>>32-r)+e};class As extends bs{_doReset(){this._hash=new vs([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const i=t;for(let n=0;n<16;n+=1){const o=e+n,r=t[o];i[o]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8)}const n=this._hash.words,o=i[e+0],r=i[e+1],s=i[e+2],a=i[e+3],l=i[e+4],c=i[e+5],d=i[e+6],u=i[e+7],h=i[e+8],p=i[e+9],f=i[e+10],v=i[e+11],m=i[e+12],g=i[e+13],w=i[e+14],y=i[e+15];let b=n[0],C=n[1],x=n[2],k=n[3];b=Ts(b,C,x,k,o,7,$s[0]),k=Ts(k,b,C,x,r,12,$s[1]),x=Ts(x,k,b,C,s,17,$s[2]),C=Ts(C,x,k,b,a,22,$s[3]),b=Ts(b,C,x,k,l,7,$s[4]),k=Ts(k,b,C,x,c,12,$s[5]),x=Ts(x,k,b,C,d,17,$s[6]),C=Ts(C,x,k,b,u,22,$s[7]),b=Ts(b,C,x,k,h,7,$s[8]),k=Ts(k,b,C,x,p,12,$s[9]),x=Ts(x,k,b,C,f,17,$s[10]),C=Ts(C,x,k,b,v,22,$s[11]),b=Ts(b,C,x,k,m,7,$s[12]),k=Ts(k,b,C,x,g,12,$s[13]),x=Ts(x,k,b,C,w,17,$s[14]),C=Ts(C,x,k,b,y,22,$s[15]),b=Is(b,C,x,k,r,5,$s[16]),k=Is(k,b,C,x,d,9,$s[17]),x=Is(x,k,b,C,v,14,$s[18]),C=Is(C,x,k,b,o,20,$s[19]),b=Is(b,C,x,k,c,5,$s[20]),k=Is(k,b,C,x,f,9,$s[21]),x=Is(x,k,b,C,y,14,$s[22]),C=Is(C,x,k,b,l,20,$s[23]),b=Is(b,C,x,k,p,5,$s[24]),k=Is(k,b,C,x,w,9,$s[25]),x=Is(x,k,b,C,a,14,$s[26]),C=Is(C,x,k,b,h,20,$s[27]),b=Is(b,C,x,k,g,5,$s[28]),k=Is(k,b,C,x,s,9,$s[29]),x=Is(x,k,b,C,u,14,$s[30]),C=Is(C,x,k,b,m,20,$s[31]),b=_s(b,C,x,k,c,4,$s[32]),k=_s(k,b,C,x,h,11,$s[33]),x=_s(x,k,b,C,v,16,$s[34]),C=_s(C,x,k,b,w,23,$s[35]),b=_s(b,C,x,k,r,4,$s[36]),k=_s(k,b,C,x,l,11,$s[37]),x=_s(x,k,b,C,u,16,$s[38]),C=_s(C,x,k,b,f,23,$s[39]),b=_s(b,C,x,k,g,4,$s[40]),k=_s(k,b,C,x,o,11,$s[41]),x=_s(x,k,b,C,a,16,$s[42]),C=_s(C,x,k,b,d,23,$s[43]),b=_s(b,C,x,k,p,4,$s[44]),k=_s(k,b,C,x,m,11,$s[45]),x=_s(x,k,b,C,y,16,$s[46]),C=_s(C,x,k,b,s,23,$s[47]),b=Ns(b,C,x,k,o,6,$s[48]),k=Ns(k,b,C,x,u,10,$s[49]),x=Ns(x,k,b,C,w,15,$s[50]),C=Ns(C,x,k,b,c,21,$s[51]),b=Ns(b,C,x,k,m,6,$s[52]),k=Ns(k,b,C,x,a,10,$s[53]),x=Ns(x,k,b,C,f,15,$s[54]),C=Ns(C,x,k,b,r,21,$s[55]),b=Ns(b,C,x,k,h,6,$s[56]),k=Ns(k,b,C,x,y,10,$s[57]),x=Ns(x,k,b,C,d,15,$s[58]),C=Ns(C,x,k,b,g,21,$s[59]),b=Ns(b,C,x,k,l,6,$s[60]),k=Ns(k,b,C,x,v,10,$s[61]),x=Ns(x,k,b,C,s,15,$s[62]),C=Ns(C,x,k,b,p,21,$s[63]),n[0]=n[0]+b|0,n[1]=n[1]+C|0,n[2]=n[2]+x|0,n[3]=n[3]+k|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32;const o=Math.floor(i/4294967296),r=i;e[15+(n+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),e[14+(n+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(e.length+1),this._process();const s=this._hash,a=s.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 s}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Ls=bs._createHelper(As),Os=bs._createHmacHelper(As);class Fs extends fs{constructor(t){super(),this.cfg=Object.assign(new fs,{keySize:4,hasher:As,iterations:1},t)}compute(t,e){let i;const{cfg:n}=this,o=n.hasher.create(),r=vs.create(),s=r.words,{keySize:a,iterations:l}=n;for(;s.length<a;){i&&o.update(i),i=o.update(t).finalize(e),o.reset();for(let t=1;t<l;t+=1)i=o.finalize(i),o.reset();r.concat(i)}return r.sigBytes=4*a,r}}class Ds extends ys{constructor(t,e,i){super(),this.cfg=Object.assign(new fs,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?Ks:Ws;return{encrypt:(i,n,o)=>e(n).encrypt(t,i,n,o),decrypt:(i,n,o)=>e(n).decrypt(t,i,n,o)}}reset(){super.reset.call(this),this._doReset()}process(t){return this._append(t),this._process()}finalize(t){t&&this._append(t);return this._doFinalize()}}Ds._ENC_XFORM_MODE=1,Ds._DEC_XFORM_MODE=2,Ds.keySize=4,Ds.ivSize=4;class Ps extends Ds{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class Rs extends fs{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 js(t,e,i){const n=t;let o;const r=this._iv;r?(o=r,this._iv=void 0):o=this._prevBlock;for(let t=0;t<i;t+=1)n[e+t]^=o[t]}class Vs extends Rs{}Vs.Encryptor=class extends Vs{processBlock(t,e){const i=this._cipher,{blockSize:n}=i;js.call(this,t,e,n),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+n)}},Vs.Decryptor=class extends Vs{processBlock(t,e){const i=this._cipher,{blockSize:n}=i,o=t.slice(e,e+n);i.decryptBlock(t,e),js.call(this,t,e,n),this._prevBlock=o}};const Us={pad(t,e){const i=4*e,n=i-t.sigBytes%i,o=n<<24|n<<16|n<<8|n,r=[];for(let t=0;t<n;t+=4)r.push(o);const s=vs.create(r,n);t.concat(s)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class zs extends Ds{constructor(t,e,i){super(t,e,Object.assign({mode:Vs,padding:Us},i)),this.blockSize=4}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:i,mode:n}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=n.createEncryptor:(t=n.createDecryptor,this._minBufferSize=1),this._mode=t.call(n,this,i&&i.words),this._mode.u=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 Bs extends fs{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const Hs={stringify(t){let e;const{ciphertext:i,salt:n}=t;return e=n?vs.create([1398893684,1701076831]).concat(n).concat(i):i,e.toString(Ms)},parse(t){let e;const i=Ms.parse(t),n=i.words;return 1398893684===n[0]&&1701076831===n[1]&&(e=vs.create(n.slice(2,4)),n.splice(0,4),i.sigBytes-=16),Bs.create({ciphertext:i,salt:e})}};class Ws extends fs{static encrypt(t,e,i,n){const o=Object.assign(new fs,this.cfg,n),r=t.createEncryptor(i,o),s=r.finalize(e),a=r.cfg;return Bs.create({ciphertext:s,key:i,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:r.blockSize,formatter:o.format})}static decrypt(t,e,i,n){let o=e;const r=Object.assign(new fs,this.cfg,n);o=this._parse(o,r.format);return t.createDecryptor(i,r).finalize(o.ciphertext)}static _parse(t,e){return"string"==typeof t?e.parse(t,this):t}}Ws.cfg=Object.assign(new fs,{format:Hs});const Gs={execute(t,e,i,n,o){let r,s=n;s||(s=vs.random(8)),r=o?Fs.create({keySize:e+i,hasher:o}).compute(t,s):Fs.create({keySize:e+i}).compute(t,s);const a=vs.create(r.words.slice(e),4*i);return r.sigBytes=4*e,Bs.create({key:r,iv:a,salt:s})}};class Ks extends Ws{static encrypt(t,e,i,n){const o=Object.assign(new fs,this.cfg,n),r=o.kdf.execute(i,t.keySize,t.ivSize,o.salt,o.hasher);o.iv=r.iv;const s=Ws.encrypt.call(this,t,e,r.key,o);return s.mixIn(r),s}static decrypt(t,e,i,n){let o=e;const r=Object.assign(new fs,this.cfg,n);o=this._parse(o,r.format);const s=r.kdf.execute(i,t.keySize,t.ivSize,o.salt,r.hasher);r.iv=s.iv;return Ws.decrypt.call(this,t,o,s.key,r)}}Ks.cfg=Object.assign(Ws.cfg,{kdf:Gs});const Zs=t=>t<<8&4278255360|t>>>8&16711935,Ys={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=2){const i=e[t>>>2]>>>16-t%4*8&65535;n.push(String.fromCharCode(i))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=1)i[n>>>1]|=t.charCodeAt(n)<<16-n%2*16;return vs.create(i,2*e)}},Js=Ys,qs={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=2){const i=Zs(e[t>>>2]>>>16-t%4*8&65535);n.push(String.fromCharCode(i))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=1)i[n>>>1]|=Zs(t.charCodeAt(n)<<16-n%2*16);return vs.create(i,2*e)}},Qs={stringify(t,e=!0){const{words:i,sigBytes:n}=t,o=e?this._safeMap:this._map;t.clamp();const r=[];for(let t=0;t<n;t+=3){const e=(i[t>>>2]>>>24-t%4*8&255)<<16|(i[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|i[t+2>>>2]>>>24-(t+2)%4*8&255;for(let i=0;i<4&&t+.75*i<n;i+=1)r.push(o.charAt(e>>>6*(3-i)&63))}const s=o.charAt(64);if(s)for(;r.length%4;)r.push(s);return r.join("")},parse(t,e=!0){let i=t.length;const n=e?this._safeMap:this._map;let o=this._reverseMap;if(!o){this._reverseMap=[],o=this._reverseMap;for(let t=0;t<n.length;t+=1)o[n.charCodeAt(t)]=t}const r=n.charAt(64);if(r){const e=t.indexOf(r);-1!==e&&(i=e)}return Ss(t,i,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safeMap:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},Xs=[];class ta extends bs{_doReset(){this._hash=new vs([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=this._hash.words;let n=i[0],o=i[1],r=i[2],s=i[3],a=i[4];for(let i=0;i<80;i+=1){if(i<16)Xs[i]=0|t[e+i];else{const t=Xs[i-3]^Xs[i-8]^Xs[i-14]^Xs[i-16];Xs[i]=t<<1|t>>>31}let l=(n<<5|n>>>27)+a+Xs[i];l+=i<20?1518500249+(o&r|~o&s):i<40?1859775393+(o^r^s):i<60?(o&r|o&s|r&s)-1894007588:(o^r^s)-899497514,a=s,s=r,r=o<<30|o>>>2,o=n,n=l}i[0]=i[0]+n|0,i[1]=i[1]+o|0,i[2]=i[2]+r|0,i[3]=i[3]+s|0,i[4]=i[4]+a|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(n+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 ea=bs._createHelper(ta),ia=bs._createHmacHelper(ta),na=[],oa=[],ra=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},sa=t=>4294967296*(t-(0|t))|0;let aa=2,la=0;for(;la<64;)ra(aa)&&(la<8&&(na[la]=sa(aa**.5)),oa[la]=sa(aa**(1/3)),la+=1),aa+=1;const ca=[];class da extends bs{_doReset(){this._hash=new vs(na.slice(0))}_doProcessBlock(t,e){const i=this._hash.words;let n=i[0],o=i[1],r=i[2],s=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)ca[i]=0|t[e+i];else{const t=ca[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,n=ca[i-2],o=(n<<15|n>>>17)^(n<<13|n>>>19)^n>>>10;ca[i]=e+ca[i-7]+o+ca[i-16]}const u=n&o^n&r^o&r,h=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),p=d+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&l^~a&c)+oa[i]+ca[i];d=c,c=l,l=a,a=s+p|0,s=r,r=o,o=n,n=p+(h+u)|0}i[0]=i[0]+n|0,i[1]=i[1]+o|0,i[2]=i[2]+r|0,i[3]=i[3]+s|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,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(n+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 ua=bs._createHelper(da),ha=bs._createHmacHelper(da);class pa extends da{_doReset(){this._hash=new vs([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const fa=da._createHelper(pa),va=da._createHmacHelper(pa),ma=[new ks(1116352408,3609767458),new ks(1899447441,602891725),new ks(3049323471,3964484399),new ks(3921009573,2173295548),new ks(961987163,4081628472),new ks(1508970993,3053834265),new ks(2453635748,2937671579),new ks(2870763221,3664609560),new ks(3624381080,2734883394),new ks(310598401,1164996542),new ks(607225278,1323610764),new ks(1426881987,3590304994),new ks(1925078388,4068182383),new ks(2162078206,991336113),new ks(2614888103,633803317),new ks(3248222580,3479774868),new ks(3835390401,2666613458),new ks(4022224774,944711139),new ks(264347078,2341262773),new ks(604807628,2007800933),new ks(770255983,1495990901),new ks(1249150122,1856431235),new ks(1555081692,3175218132),new ks(1996064986,2198950837),new ks(2554220882,3999719339),new ks(2821834349,766784016),new ks(2952996808,2566594879),new ks(3210313671,3203337956),new ks(3336571891,1034457026),new ks(3584528711,2466948901),new ks(113926993,3758326383),new ks(338241895,168717936),new ks(666307205,1188179964),new ks(773529912,1546045734),new ks(1294757372,1522805485),new ks(1396182291,2643833823),new ks(1695183700,2343527390),new ks(1986661051,1014477480),new ks(2177026350,1206759142),new ks(2456956037,344077627),new ks(2730485921,1290863460),new ks(2820302411,3158454273),new ks(3259730800,3505952657),new ks(3345764771,106217008),new ks(3516065817,3606008344),new ks(3600352804,1432725776),new ks(4094571909,1467031594),new ks(275423344,851169720),new ks(430227734,3100823752),new ks(506948616,1363258195),new ks(659060556,3750685593),new ks(883997877,3785050280),new ks(958139571,3318307427),new ks(1322822218,3812723403),new ks(1537002063,2003034995),new ks(1747873779,3602036899),new ks(1955562222,1575990012),new ks(2024104815,1125592928),new ks(2227730452,2716904306),new ks(2361852424,442776044),new ks(2428436474,593698344),new ks(2756734187,3733110249),new ks(3204031479,2999351573),new ks(3329325298,3815920427),new ks(3391569614,3928383900),new ks(3515267271,566280711),new ks(3940187606,3454069534),new ks(4118630271,4000239992),new ks(116418474,1914138554),new ks(174292421,2731055270),new ks(289380356,3203993006),new ks(460393269,320620315),new ks(685471733,587496836),new ks(852142971,1086792851),new ks(1017036298,365543100),new ks(1126000580,2618297676),new ks(1288033470,3409855158),new ks(1501505948,4234509866),new ks(1607167915,987167468),new ks(1816402316,1246189591)],ga=[];for(let t=0;t<80;t+=1)ga[t]=new ks;class wa extends bs{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new Es([new ks(1779033703,4089235720),new ks(3144134277,2227873595),new ks(1013904242,4271175723),new ks(2773480762,1595750129),new ks(1359893119,2917565137),new ks(2600822924,725511199),new ks(528734635,4215389547),new ks(1541459225,327033209)])}_doProcessBlock(t,e){const i=this._hash.words,n=i[0],o=i[1],r=i[2],s=i[3],a=i[4],l=i[5],c=i[6],d=i[7],u=n.high;let h=n.low;const p=o.high;let f=o.low;const v=r.high;let m=r.low;const g=s.high;let w=s.low;const y=a.high;let b=a.low;const C=l.high;let x=l.low;const k=c.high;let E=c.low;const S=d.high;let M=d.low,$=u,T=h,I=p,_=f,N=v,A=m,L=g,O=w,F=y,D=b,P=C,R=x,j=k,V=E,U=S,z=M;for(let i=0;i<80;i+=1){let n,o;const r=ga[i];if(i<16)r.high=0|t[e+2*i],o=r.high,r.low=0|t[e+2*i+1],n=r.low;else{const t=ga[i-15],e=t.high,s=t.low,a=(e>>>1|s<<31)^(e>>>8|s<<24)^e>>>7,l=(s>>>1|e<<31)^(s>>>8|e<<24)^(s>>>7|e<<25),c=ga[i-2],d=c.high,u=c.low,h=(d>>>19|u<<13)^(d<<3|u>>>29)^d>>>6,p=(u>>>19|d<<13)^(u<<3|d>>>29)^(u>>>6|d<<26),f=ga[i-7],v=f.high,m=f.low,g=ga[i-16],w=g.high,y=g.low;n=l+m,o=a+v+(n>>>0<l>>>0?1:0),n+=p,o=o+h+(n>>>0<p>>>0?1:0),n+=y,o=o+w+(n>>>0<y>>>0?1:0),r.high=o,r.low=n}const s=F&P^~F&j,a=D&R^~D&V,l=$&I^$&N^I&N,c=T&_^T&A^_&A,d=($>>>28|T<<4)^($<<30|T>>>2)^($<<25|T>>>7),u=(T>>>28|$<<4)^(T<<30|$>>>2)^(T<<25|$>>>7),h=(F>>>14|D<<18)^(F>>>18|D<<14)^(F<<23|D>>>9),p=(D>>>14|F<<18)^(D>>>18|F<<14)^(D<<23|F>>>9),f=ma[i],v=f.high,m=f.low;let g=z+p,w=U+h+(g>>>0<z>>>0?1:0);g+=a,w=w+s+(g>>>0<a>>>0?1:0),g+=m,w=w+v+(g>>>0<m>>>0?1:0),g+=n,w=w+o+(g>>>0<n>>>0?1:0);const y=u+c;U=j,z=V,j=P,V=R,P=F,R=D,D=O+g|0,F=L+w+(D>>>0<O>>>0?1:0)|0,L=N,O=A,N=I,A=_,I=$,_=T,T=g+y|0,$=w+(d+l+(y>>>0<u>>>0?1:0))+(T>>>0<g>>>0?1:0)|0}n.low=h+T,h=n.low,n.high=u+$+(h>>>0<T>>>0?1:0),o.low=f+_,f=o.low,o.high=p+I+(f>>>0<_>>>0?1:0),r.low=m+A,m=r.low,r.high=v+N+(m>>>0<A>>>0?1:0),s.low=w+O,w=s.low,s.high=g+L+(w>>>0<O>>>0?1:0),a.low=b+D,b=a.low,a.high=y+F+(b>>>0<D>>>0?1:0),l.low=x+R,x=l.low,l.high=C+P+(x>>>0<R>>>0?1:0),c.low=E+V,E=c.low,c.high=k+j+(E>>>0<V>>>0?1:0),d.low=M+z,M=d.low,d.high=S+U+(M>>>0<z>>>0?1:0)}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(i/4294967296),e[31+(n+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 ya=bs._createHelper(wa),ba=bs._createHmacHelper(wa);class Ca extends wa{_doReset(){this._hash=new Es([new ks(3418070365,3238371032),new ks(1654270250,914150663),new ks(2438529370,812702999),new ks(355462360,4144912697),new ks(1731405415,4290775857),new ks(2394180231,1750603025),new ks(3675008525,1694076839),new ks(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const xa=wa._createHelper(Ca),ka=wa._createHmacHelper(Ca),Ea=[],Sa=[],Ma=[];let $a=1,Ta=0;for(let t=0;t<24;t+=1){Ea[$a+5*Ta]=(t+1)*(t+2)/2%64;const e=(2*$a+3*Ta)%5;$a=Ta%5,Ta=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)Sa[t+5*e]=e+(2*t+3*e)%5*5;let Ia=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&Ia){const n=(1<<t)-1;n<32?i^=1<<n:e^=1<<n-32}128&Ia?Ia=Ia<<1^113:Ia<<=1}Ma[t]=ks.create(e,i)}const _a=[];for(let t=0;t<25;t+=1)_a[t]=ks.create();class Na extends bs{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 ks;this.blockSize=(1600-2*this.cfg.outputLength)/32}_doProcessBlock(t,e){const i=this._state,n=this.blockSize/2;for(let o=0;o<n;o+=1){let n=t[e+2*o],r=t[e+2*o+1];n=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),r=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8);const s=i[o];s.high^=r,s.low^=n}for(let t=0;t<24;t+=1){for(let t=0;t<5;t+=1){let e=0,n=0;for(let o=0;o<5;o+=1){const r=i[t+5*o];e^=r.high,n^=r.low}const o=_a[t];o.high=e,o.low=n}for(let t=0;t<5;t+=1){const e=_a[(t+4)%5],n=_a[(t+1)%5],o=n.high,r=n.low,s=e.high^(o<<1|r>>>31),a=e.low^(r<<1|o>>>31);for(let e=0;e<5;e+=1){const n=i[t+5*e];n.high^=s,n.low^=a}}for(let t=1;t<25;t+=1){let e,n;const o=i[t],r=o.high,s=o.low,a=Ea[t];a<32?(e=r<<a|s>>>32-a,n=s<<a|r>>>32-a):(e=s<<a-32|r>>>64-a,n=r<<a-32|s>>>64-a);const l=_a[Sa[t]];l.high=e,l.low=n}const e=_a[0],n=i[0];e.high=n.high,e.low=n.low;for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1){const n=t+5*e,o=i[n],r=_a[n],s=_a[(t+1)%5+5*e],a=_a[(t+2)%5+5*e];o.high=r.high^~s.high&a.high,o.low=r.low^~s.low&a.low}const o=i[0],r=Ma[t];o.high^=r.high,o.low^=r.low}}_doFinalize(){const t=this._data,e=t.words,i=8*t.sigBytes,n=32*this.blockSize;e[i>>>5]|=1<<24-i%32,e[(Math.ceil((i+1)/n)*n>>>5)-1]|=128,t.sigBytes=4*e.length,this._process();const o=this._state,r=this.cfg.outputLength/8,s=r/8,a=[];for(let t=0;t<s;t+=1){const e=o[t];let i=e.high,n=e.low;i=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),n=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),a.push(n),a.push(i)}return new vs(a,r)}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 Aa=bs._createHelper(Na),La=bs._createHmacHelper(Na),Oa=vs.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]),Fa=vs.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]),Da=vs.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]),Pa=vs.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]),Ra=vs.create([0,1518500249,1859775393,2400959708,2840853838]),ja=vs.create([1352829926,1548603684,1836072691,2053994217,0]),Va=(t,e,i)=>t^e^i,Ua=(t,e,i)=>t&e|~t&i,za=(t,e,i)=>(t|~e)^i,Ba=(t,e,i)=>t&i|e&~i,Ha=(t,e,i)=>t^(e|~i),Wa=(t,e)=>t<<e|t>>>32-e;class Ga extends bs{_doReset(){this._hash=vs.create([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=t;for(let t=0;t<16;t+=1){const n=e+t,o=i[n];i[n]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8)}const n=this._hash.words,o=Ra.words,r=ja.words,s=Oa.words,a=Fa.words,l=Da.words,c=Pa.words;let d,u=n[0],h=n[1],p=n[2],f=n[3],v=n[4],m=n[0],g=n[1],w=n[2],y=n[3],b=n[4];for(let t=0;t<80;t+=1)d=u+i[e+s[t]]|0,d+=t<16?Va(h,p,f)+o[0]:t<32?Ua(h,p,f)+o[1]:t<48?za(h,p,f)+o[2]:t<64?Ba(h,p,f)+o[3]:Ha(h,p,f)+o[4],d|=0,d=Wa(d,l[t]),d=d+v|0,u=v,v=f,f=Wa(p,10),p=h,h=d,d=m+i[e+a[t]]|0,d+=t<16?Ha(g,w,y)+r[0]:t<32?Ba(g,w,y)+r[1]:t<48?za(g,w,y)+r[2]:t<64?Ua(g,w,y)+r[3]:Va(g,w,y)+r[4],d|=0,d=Wa(d,c[t]),d=d+b|0,m=b,b=y,y=Wa(w,10),w=g,g=d;d=n[1]+p+y|0,n[1]=n[2]+f+b|0,n[2]=n[3]+v+m|0,n[3]=n[4]+u+g|0,n[4]=n[0]+h+w|0,n[0]=d}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t.sigBytes=4*(e.length+1),this._process();const o=this._hash,r=o.words;for(let t=0;t<5;t+=1){const e=r[t];r[t]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8)}return o}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Ka=bs._createHelper(Ga),Za=bs._createHmacHelper(Ga);class Ya extends fs{constructor(t){super(),this.cfg=Object.assign(new fs,{keySize:4,hasher:da,iterations:25e4},t)}compute(t,e){const{cfg:i}=this,n=Cs.create(i.hasher,t),o=vs.create(),r=vs.create([1]),s=o.words,a=r.words,{keySize:l,iterations:c}=i;for(;s.length<l;){const t=n.update(e).finalize(r);n.reset();const i=t.words,s=i.length;let l=t;for(let t=1;t<c;t+=1){l=n.finalize(l),n.reset();const t=l.words;for(let e=0;e<s;e+=1)i[e]^=t[e]}o.concat(t),a[0]+=1}return o.sigBytes=4*l,o}}const Ja=[],qa=[],Qa=[],Xa=[],tl=[],el=[],il=[],nl=[],ol=[],rl=[],sl=[];for(let t=0;t<256;t+=1)sl[t]=t<128?t<<1:t<<1^283;let al=0,ll=0;for(let t=0;t<256;t+=1){let t=ll^ll<<1^ll<<2^ll<<3^ll<<4;t=t>>>8^255&t^99,Ja[al]=t,qa[t]=al;const e=sl[al],i=sl[e],n=sl[i];let o=257*sl[t]^16843008*t;Qa[al]=o<<24|o>>>8,Xa[al]=o<<16|o>>>16,tl[al]=o<<8|o>>>24,el[al]=o,o=16843009*n^65537*i^257*e^16843008*al,il[t]=o<<24|o>>>8,nl[t]=o<<16|o>>>16,ol[t]=o<<8|o>>>24,rl[t]=o,al?(al=e^sl[sl[sl[n^e]]],ll^=sl[sl[ll]]):(ll=1,al=ll)}const cl=[0,1,2,4,8,16,32,64,128,27,54];class dl extends zs{_doReset(){let t;if(this._nRounds&&this._keyPriorReset===this._key)return;this._keyPriorReset=this._key;const e=this._keyPriorReset,i=e.words,n=e.sigBytes/4;this._nRounds=n+6;const o=4*(this._nRounds+1);this._keySchedule=[];const r=this._keySchedule;for(let e=0;e<o;e+=1)e<n?r[e]=i[e]:(t=r[e-1],e%n?n>6&&e%n==4&&(t=Ja[t>>>24]<<24|Ja[t>>>16&255]<<16|Ja[t>>>8&255]<<8|Ja[255&t]):(t=t<<8|t>>>24,t=Ja[t>>>24]<<24|Ja[t>>>16&255]<<16|Ja[t>>>8&255]<<8|Ja[255&t],t^=cl[e/n|0]<<24),r[e]=r[e-n]^t);this._invKeySchedule=[];const s=this._invKeySchedule;for(let e=0;e<o;e+=1){const i=o-e;t=e%4?r[i]:r[i-4],s[e]=e<4||i<=4?t:il[Ja[t>>>24]]^nl[Ja[t>>>16&255]]^ol[Ja[t>>>8&255]]^rl[Ja[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,Qa,Xa,tl,el,Ja)}decryptBlock(t,e){const i=t;let n=i[e+1];i[e+1]=i[e+3],i[e+3]=n,this._doCryptBlock(i,e,this._invKeySchedule,il,nl,ol,rl,qa),n=i[e+1],i[e+1]=i[e+3],i[e+3]=n}_doCryptBlock(t,e,i,n,o,r,s,a){const l=t,c=this._nRounds;let d=l[e]^i[0],u=l[e+1]^i[1],h=l[e+2]^i[2],p=l[e+3]^i[3],f=4;for(let t=1;t<c;t+=1){const t=n[d>>>24]^o[u>>>16&255]^r[h>>>8&255]^s[255&p]^i[f];f+=1;const e=n[u>>>24]^o[h>>>16&255]^r[p>>>8&255]^s[255&d]^i[f];f+=1;const a=n[h>>>24]^o[p>>>16&255]^r[d>>>8&255]^s[255&u]^i[f];f+=1;const l=n[p>>>24]^o[d>>>16&255]^r[u>>>8&255]^s[255&h]^i[f];f+=1,d=t,u=e,h=a,p=l}const v=(a[d>>>24]<<24|a[u>>>16&255]<<16|a[h>>>8&255]<<8|a[255&p])^i[f];f+=1;const m=(a[u>>>24]<<24|a[h>>>16&255]<<16|a[p>>>8&255]<<8|a[255&d])^i[f];f+=1;const g=(a[h>>>24]<<24|a[p>>>16&255]<<16|a[d>>>8&255]<<8|a[255&u])^i[f];f+=1;const w=(a[p>>>24]<<24|a[d>>>16&255]<<16|a[u>>>8&255]<<8|a[255&h])^i[f];f+=1,l[e]=v,l[e+1]=m,l[e+2]=g,l[e+3]=w}}dl.keySize=8;const ul=zs._createHelper(dl),hl=[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],pl=[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],fl=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],vl=[{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}],ml=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function gl(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function wl(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class yl extends zs{constructor(t,e,i){super(t,e,i),this.blockSize=2}_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const n=hl[i]-1;e[i]=t[n>>>5]>>>31-n%32&1}this._subKeys=[];const i=this._subKeys;for(let t=0;t<16;t+=1){i[t]=[];const n=i[t],o=fl[t];for(let t=0;t<24;t+=1)n[t/6|0]|=e[(pl[t]-1+o)%28]<<31-t%6,n[4+(t/6|0)]|=e[28+(pl[t+24]-1+o)%28]<<31-t%6;n[0]=n[0]<<1|n[0]>>>31;for(let t=1;t<7;t+=1)n[t]>>>=4*(t-1)+3;n[7]=n[7]<<5|n[7]>>>27}this._invSubKeys=[];const n=this._invSubKeys;for(let t=0;t<16;t+=1)n[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 n=t;this._lBlock=t[e],this._rBlock=t[e+1],gl.call(this,4,252645135),gl.call(this,16,65535),wl.call(this,2,858993459),wl.call(this,8,16711935),gl.call(this,1,1431655765);for(let t=0;t<16;t+=1){const e=i[t],n=this._lBlock,o=this._rBlock;let r=0;for(let t=0;t<8;t+=1)r|=vl[t][((o^e[t])&ml[t])>>>0];this._lBlock=o,this._rBlock=n^r}const o=this._lBlock;this._lBlock=this._rBlock,this._rBlock=o,gl.call(this,1,1431655765),wl.call(this,8,16711935),wl.call(this,2,858993459),gl.call(this,16,65535),gl.call(this,4,252645135),n[e]=this._lBlock,n[e+1]=this._rBlock}}yl.keySize=2,yl.ivSize=2;const bl=zs._createHelper(yl);class Cl extends zs{_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),n=t.length<6?t.slice(0,2):t.slice(4,6);this._des1=yl.createEncryptor(vs.create(e)),this._des2=yl.createEncryptor(vs.create(i)),this._des3=yl.createEncryptor(vs.create(n))}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)}}Cl.keySize=6,Cl.ivSize=2;const xl=zs._createHelper(Cl),kl=[],El=[],Sl=[];function Ml(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)El[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<El[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<El[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<El[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<El[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<El[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<El[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<El[6]>>>0?1:0)|0,this._b=e[7]>>>0<El[7]>>>0?1:0;for(let i=0;i<8;i+=1){const n=t[i]+e[i],o=65535&n,r=n>>>16,s=((o*o>>>17)+o*r>>>15)+r*r,a=((4294901760&n)*n|0)+((65535&n)*n|0);Sl[i]=s^a}t[0]=Sl[0]+(Sl[7]<<16|Sl[7]>>>16)+(Sl[6]<<16|Sl[6]>>>16)|0,t[1]=Sl[1]+(Sl[0]<<8|Sl[0]>>>24)+Sl[7]|0,t[2]=Sl[2]+(Sl[1]<<16|Sl[1]>>>16)+(Sl[0]<<16|Sl[0]>>>16)|0,t[3]=Sl[3]+(Sl[2]<<8|Sl[2]>>>24)+Sl[1]|0,t[4]=Sl[4]+(Sl[3]<<16|Sl[3]>>>16)+(Sl[2]<<16|Sl[2]>>>16)|0,t[5]=Sl[5]+(Sl[4]<<8|Sl[4]>>>24)+Sl[3]|0,t[6]=Sl[6]+(Sl[5]<<16|Sl[5]>>>16)+(Sl[4]<<16|Sl[4]>>>16)|0,t[7]=Sl[7]+(Sl[6]<<8|Sl[6]>>>24)+Sl[5]|0}class $l extends Ps{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 n=this._C;this._b=0;for(let t=0;t<4;t+=1)Ml.call(this);for(let t=0;t<8;t+=1)n[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],o=t[1],r=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),s=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a=r>>>16|4294901760&s,l=s<<16|65535&r;n[0]^=r,n[1]^=a,n[2]^=s,n[3]^=l,n[4]^=r,n[5]^=a,n[6]^=s,n[7]^=l;for(let t=0;t<4;t+=1)Ml.call(this)}}_doProcessBlock(t,e){const i=t,n=this._X;Ml.call(this),kl[0]=n[0]^n[5]>>>16^n[3]<<16,kl[1]=n[2]^n[7]>>>16^n[5]<<16,kl[2]=n[4]^n[1]>>>16^n[7]<<16,kl[3]=n[6]^n[3]>>>16^n[1]<<16;for(let t=0;t<4;t+=1)kl[t]=16711935&(kl[t]<<8|kl[t]>>>24)|4278255360&(kl[t]<<24|kl[t]>>>8),i[e+t]^=kl[t]}}const Tl=Ps._createHelper($l),Il=[],_l=[],Nl=[];function Al(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)_l[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<_l[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<_l[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<_l[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<_l[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<_l[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<_l[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<_l[6]>>>0?1:0)|0,this._b=e[7]>>>0<_l[7]>>>0?1:0;for(let i=0;i<8;i+=1){const n=t[i]+e[i],o=65535&n,r=n>>>16,s=((o*o>>>17)+o*r>>>15)+r*r,a=((4294901760&n)*n|0)+((65535&n)*n|0);Nl[i]=s^a}t[0]=Nl[0]+(Nl[7]<<16|Nl[7]>>>16)+(Nl[6]<<16|Nl[6]>>>16)|0,t[1]=Nl[1]+(Nl[0]<<8|Nl[0]>>>24)+Nl[7]|0,t[2]=Nl[2]+(Nl[1]<<16|Nl[1]>>>16)+(Nl[0]<<16|Nl[0]>>>16)|0,t[3]=Nl[3]+(Nl[2]<<8|Nl[2]>>>24)+Nl[1]|0,t[4]=Nl[4]+(Nl[3]<<16|Nl[3]>>>16)+(Nl[2]<<16|Nl[2]>>>16)|0,t[5]=Nl[5]+(Nl[4]<<8|Nl[4]>>>24)+Nl[3]|0,t[6]=Nl[6]+(Nl[5]<<16|Nl[5]>>>16)+(Nl[4]<<16|Nl[4]>>>16)|0,t[7]=Nl[7]+(Nl[6]<<8|Nl[6]>>>24)+Nl[5]|0}class Ll extends Ps{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 n=this._C;this._b=0;for(let t=0;t<4;t+=1)Al.call(this);for(let t=0;t<8;t+=1)n[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],o=t[1],r=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),s=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a=r>>>16|4294901760&s,l=s<<16|65535&r;n[0]^=r,n[1]^=a,n[2]^=s,n[3]^=l,n[4]^=r,n[5]^=a,n[6]^=s,n[7]^=l;for(let t=0;t<4;t+=1)Al.call(this)}}_doProcessBlock(t,e){const i=t,n=this._X;Al.call(this),Il[0]=n[0]^n[5]>>>16^n[3]<<16,Il[1]=n[2]^n[7]>>>16^n[5]<<16,Il[2]=n[4]^n[1]>>>16^n[7]<<16,Il[3]=n[6]^n[3]>>>16^n[1]<<16;for(let t=0;t<4;t+=1)Il[t]=16711935&(Il[t]<<8|Il[t]>>>24)|4278255360&(Il[t]<<24|Il[t]>>>8),i[e+t]^=Il[t]}}const Ol=Ps._createHelper(Ll);function Fl(){const t=this._S;let e=this._i,i=this._j,n=0;for(let o=0;o<4;o+=1){e=(e+1)%256,i=(i+t[e])%256;const r=t[e];t[e]=t[i],t[i]=r,n|=t[(t[e]+t[i])%256]<<24-8*o}return this._i=e,this._j=i,n}class Dl extends Ps{_doReset(){const t=this._key,e=t.words,i=t.sigBytes;this._S=[];const n=this._S;for(let t=0;t<256;t+=1)n[t]=t;for(let t=0,o=0;t<256;t+=1){const r=t%i,s=e[r>>>2]>>>24-r%4*8&255;o=(o+n[t]+s)%256;const a=n[t];n[t]=n[o],n[o]=a}this._j=0,this._i=this._j}_doProcessBlock(t,e){t[e]^=Fl.call(this)}}Dl.keySize=8,Dl.ivSize=0;const Pl=Ps._createHelper(Dl);class Rl extends Dl{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)Fl.call(this)}}const jl=Ps._createHelper(Rl),Vl=16,Ul=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],zl=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]],Bl={pbox:[],sbox:[]};function Hl(t,e){const i=e>>24&255,n=e>>16&255,o=e>>8&255,r=255&e;let s=t.sbox[0][i]+t.sbox[1][n];return s^=t.sbox[2][o],s+=t.sbox[3][r],s}function Wl(t,e,i){let n,o=e,r=i;for(let e=0;e<Vl;++e)o^=t.pbox[e],r=Hl(t,o)^r,n=o,o=r,r=n;return n=o,o=r,r=n,r^=t.pbox[16],o^=t.pbox[17],{left:o,right:r}}class Gl extends zs{constructor(t,e,i){super(t,e,i),this.blockSize=2}_doReset(){if(this._keyPriorReset===this._key)return;const t=this._keyPriorReset=this._key,e=t.words,i=t.sigBytes/4;!function(t,e,i){for(let e=0;e<4;e++){t.sbox[e]=[];for(let i=0;i<256;i++)t.sbox[e][i]=zl[e][i]}let n=0;for(let o=0;o<18;o++)t.pbox[o]=Ul[o]^e[n],n++,n>=i&&(n=0);let o=0,r=0,s=0;for(let e=0;e<18;e+=2)s=Wl(t,o,r),o=s.left,r=s.right,t.pbox[e]=o,t.pbox[e+1]=r;for(let e=0;e<4;e++)for(let i=0;i<256;i+=2)s=Wl(t,o,r),o=s.left,r=s.right,t.sbox[e][i]=o,t.sbox[e][i+1]=r}(Bl,e,i)}encryptBlock(t,e){const i=Wl(Bl,t[e],t[e+1]);t[e]=i.left,t[e+1]=i.right}decryptBlock(t,e){const i=function(t,e,i){let n,o=e,r=i;for(let e=17;e>1;--e)o^=t.pbox[e],r=Hl(t,o)^r,n=o,o=r,r=n;return n=o,o=r,r=n,r^=t.pbox[1],o^=t.pbox[0],{left:o,right:r}}(Bl,t[e],t[e+1]);t[e]=i.left,t[e+1]=i.right}}Gl.keySize=4,Gl.ivSize=2;const Kl=zs._createHelper(Gl);function Zl(t,e,i,n){const o=t;let r;const s=this._iv;s?(r=s.slice(0),this._iv=void 0):r=this._prevBlock,n.encryptBlock(r,0);for(let t=0;t<i;t+=1)o[e+t]^=r[t]}class Yl extends Rs{}Yl.Encryptor=class extends Yl{processBlock(t,e){const i=this._cipher,{blockSize:n}=i;Zl.call(this,t,e,n,i),this._prevBlock=t.slice(e,e+n)}},Yl.Decryptor=class extends Yl{processBlock(t,e){const i=this._cipher,{blockSize:n}=i,o=t.slice(e,e+n);Zl.call(this,t,e,n,i),this._prevBlock=o}};class Jl extends Rs{}Jl.Encryptor=class extends Jl{processBlock(t,e){const i=t,n=this._cipher,{blockSize:o}=n,r=this._iv;let s=this._counter;r&&(this._counter=r.slice(0),s=this._counter,this._iv=void 0);const a=s.slice(0);n.encryptBlock(a,0),s[o-1]=s[o-1]+1|0;for(let t=0;t<o;t+=1)i[e+t]^=a[t]}},Jl.Decryptor=Jl.Encryptor;const ql=t=>{let e=t;if(255&~(t>>24))e+=1<<24;else{let i=t>>16&255,n=t>>8&255,o=255&t;255===i?(i=0,255===n?(n=0,255===o?o=0:o+=1):n+=1):i+=1,e=0,e+=i<<16,e+=n<<8,e+=o}return e};
|
|
1537
|
+
function(t,e){const i=Hi(t,"auth");if(i.isInitialized()){const t=i.getImmediate();if(Ie(i.getOptions(),null!=e?e:{}))return t;Oo(t,"already-initialized")}return i.initialize({options:e})}(t,{popupRedirectResolver:nr,persistence:[Cs,ns,rs]}),o=Ee("authTokenSyncURL");if(o&&"boolean"==typeof isSecureContext&&isSecureContext){const t=new URL(o,location.origin);if(location.origin===t.origin){const e=(n=t.toString(),async t=>{const e=t&&await t.getIdTokenResult(),i=e&&((new Date).getTime()-Date.parse(e.issuedAtTime))/1e3;if(i&&i>lr)return;const o=null==e?void 0:e.token;cr!==o&&(cr=o,await fetch(n,{method:o?"POST":"DELETE",headers:o?{Authorization:`Bearer ${o}`}:{}}))});!function(t,e,i){$e(t).beforeAuthStateChanged(e,i)}(i,e,(()=>e(i.currentUser))),function(t,e,i,o){$e(t).onIdTokenChanged(e,i,o)}(i,(t=>e(t)))}}var n;const s=Ce("auth");return s&&jn(i,`http://${s}`),i}var hr;!function(t){Pn=t}({loadJS:t=>new Promise(((e,i)=>{const o=document.createElement("script");var n,s;o.setAttribute("src",t),o.onload=e,o.onerror=t=>{const e=Lo("internal-error");e.customData=t,i(e)},o.type="text/javascript",o.charset="UTF-8",(null!==(s=null===(n=document.getElementsByTagName("head"))||void 0===n?void 0:n[0])&&void 0!==s?s:document).appendChild(o)})),gapiScript:"https://apis.google.com/js/api.js",recaptchaV2Script:"https://www.google.com/recaptcha/api.js",recaptchaEnterpriseScript:"https://www.google.com/recaptcha/enterprise.js?render="}),hr="Browser",Bi(new De("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),o=t.getProvider("heartbeat"),n=t.getProvider("app-check-internal"),{apiKey:s,authDomain:r}=i.options;Fo(s&&!s.includes(":"),"invalid-api-key",{appName:i.name});const a={apiKey:s,authDomain:r,clientPlatform:hr,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:On(hr)},l=new Dn(i,o,n,a);return function(t,e){const i=(null==e?void 0:e.persistence)||[],o=(Array.isArray(i)?i:[i]).map(fn);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(o,null==e?void 0:e.popupRedirectResolver)}(l,e),l}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),Bi(new De("auth-internal",(t=>(t=>new ar(t))(Vn(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),qi(sr,rr,function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";case"WebExtension":return"web-extension";default:return}}(hr)),qi(sr,rr,"esm2017");const ur=("undefined"!=typeof globalThis?globalThis:void 0)?.crypto||("undefined"!=typeof global?global:void 0)?.crypto||("undefined"!=typeof window?window:void 0)?.crypto||("undefined"!=typeof self?self:void 0)?.crypto||("undefined"!=typeof frames?frames:void 0)?.[0]?.crypto;let pr;pr=ur?t=>{const e=[];for(let i=0;i<t;i+=4)e.push(ur.getRandomValues(new Uint32Array(1))[0]);return new gr(e,t)}: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 gr(e,t)};class vr{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 gr extends vr{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=pr;toString(t=fr){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 fr={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 gr(i,e/2)}},mr={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 gr(i,e)}},wr={stringify(t){try{return decodeURIComponent(escape(mr.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>mr.parse(unescape(encodeURIComponent(t)))};class yr extends vr{constructor(){super(),this._minBufferSize=0}reset(){this._data=new gr,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=wr.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 gr(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class br extends yr{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new vr,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new Cr(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 Cr extends vr{constructor(t,e){super();const i=new t;this._hasher=i;let o=e;"string"==typeof o&&(o=wr.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 xr=gr;class Er extends vr{constructor(t,e){super(),this.high=t,this.low=e}}class kr extends vr{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 xr.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 Sr=(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 gr.create(o,n)},Mr={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 Sr(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},Tr=[];for(let t=0;t<64;t+=1)Tr[t]=4294967296*Math.abs(Math.sin(t+1))|0;const _r=(t,e,i,o,n,s,r)=>{const a=t+(e&i|~e&o)+n+r;return(a<<s|a>>>32-s)+e},Ir=(t,e,i,o,n,s,r)=>{const a=t+(e&o|i&~o)+n+r;return(a<<s|a>>>32-s)+e},Nr=(t,e,i,o,n,s,r)=>{const a=t+(e^i^o)+n+r;return(a<<s|a>>>32-s)+e},Ar=(t,e,i,o,n,s,r)=>{const a=t+(i^(e|~o))+n+r;return(a<<s|a>>>32-s)+e};class Or extends br{_doReset(){this._hash=new gr([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],g=i[e+11],f=i[e+12],m=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=_r(b,C,x,E,n,7,Tr[0]),E=_r(E,b,C,x,s,12,Tr[1]),x=_r(x,E,b,C,r,17,Tr[2]),C=_r(C,x,E,b,a,22,Tr[3]),b=_r(b,C,x,E,l,7,Tr[4]),E=_r(E,b,C,x,c,12,Tr[5]),x=_r(x,E,b,C,d,17,Tr[6]),C=_r(C,x,E,b,h,22,Tr[7]),b=_r(b,C,x,E,u,7,Tr[8]),E=_r(E,b,C,x,p,12,Tr[9]),x=_r(x,E,b,C,v,17,Tr[10]),C=_r(C,x,E,b,g,22,Tr[11]),b=_r(b,C,x,E,f,7,Tr[12]),E=_r(E,b,C,x,m,12,Tr[13]),x=_r(x,E,b,C,w,17,Tr[14]),C=_r(C,x,E,b,y,22,Tr[15]),b=Ir(b,C,x,E,s,5,Tr[16]),E=Ir(E,b,C,x,d,9,Tr[17]),x=Ir(x,E,b,C,g,14,Tr[18]),C=Ir(C,x,E,b,n,20,Tr[19]),b=Ir(b,C,x,E,c,5,Tr[20]),E=Ir(E,b,C,x,v,9,Tr[21]),x=Ir(x,E,b,C,y,14,Tr[22]),C=Ir(C,x,E,b,l,20,Tr[23]),b=Ir(b,C,x,E,p,5,Tr[24]),E=Ir(E,b,C,x,w,9,Tr[25]),x=Ir(x,E,b,C,a,14,Tr[26]),C=Ir(C,x,E,b,u,20,Tr[27]),b=Ir(b,C,x,E,m,5,Tr[28]),E=Ir(E,b,C,x,r,9,Tr[29]),x=Ir(x,E,b,C,h,14,Tr[30]),C=Ir(C,x,E,b,f,20,Tr[31]),b=Nr(b,C,x,E,c,4,Tr[32]),E=Nr(E,b,C,x,u,11,Tr[33]),x=Nr(x,E,b,C,g,16,Tr[34]),C=Nr(C,x,E,b,w,23,Tr[35]),b=Nr(b,C,x,E,s,4,Tr[36]),E=Nr(E,b,C,x,l,11,Tr[37]),x=Nr(x,E,b,C,h,16,Tr[38]),C=Nr(C,x,E,b,v,23,Tr[39]),b=Nr(b,C,x,E,m,4,Tr[40]),E=Nr(E,b,C,x,n,11,Tr[41]),x=Nr(x,E,b,C,a,16,Tr[42]),C=Nr(C,x,E,b,d,23,Tr[43]),b=Nr(b,C,x,E,p,4,Tr[44]),E=Nr(E,b,C,x,f,11,Tr[45]),x=Nr(x,E,b,C,y,16,Tr[46]),C=Nr(C,x,E,b,r,23,Tr[47]),b=Ar(b,C,x,E,n,6,Tr[48]),E=Ar(E,b,C,x,h,10,Tr[49]),x=Ar(x,E,b,C,w,15,Tr[50]),C=Ar(C,x,E,b,c,21,Tr[51]),b=Ar(b,C,x,E,f,6,Tr[52]),E=Ar(E,b,C,x,a,10,Tr[53]),x=Ar(x,E,b,C,v,15,Tr[54]),C=Ar(C,x,E,b,s,21,Tr[55]),b=Ar(b,C,x,E,u,6,Tr[56]),E=Ar(E,b,C,x,y,10,Tr[57]),x=Ar(x,E,b,C,d,15,Tr[58]),C=Ar(C,x,E,b,m,21,Tr[59]),b=Ar(b,C,x,E,l,6,Tr[60]),E=Ar(E,b,C,x,g,10,Tr[61]),x=Ar(x,E,b,C,r,15,Tr[62]),C=Ar(C,x,E,b,p,21,Tr[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 Lr=br._createHelper(Or),$r=br._createHmacHelper(Or);class Dr extends vr{constructor(t){super(),this.cfg=Object.assign(new vr,{keySize:4,hasher:Or,iterations:1},t)}compute(t,e){let i;const{cfg:o}=this,n=o.hasher.create(),s=gr.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 Vr extends yr{constructor(t,e,i){super(),this.cfg=Object.assign(new vr,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?Kr:Wr;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()}}Vr._ENC_XFORM_MODE=1,Vr._DEC_XFORM_MODE=2,Vr.keySize=4,Vr.ivSize=4;class Fr extends Vr{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class Pr extends vr{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 jr(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 Rr extends Pr{}Rr.Encryptor=class extends Rr{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;jr.call(this,t,e,o),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}},Rr.Decryptor=class extends Rr{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);i.decryptBlock(t,e),jr.call(this,t,e,o),this._prevBlock=n}};const Ur={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=gr.create(s,o);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class zr extends Vr{constructor(t,e,i){super(t,e,Object.assign({mode:Rr,padding:Ur},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.u=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 Br extends vr{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const Hr={stringify(t){let e;const{ciphertext:i,salt:o}=t;return e=o?gr.create([1398893684,1701076831]).concat(o).concat(i):i,e.toString(Mr)},parse(t){let e;const i=Mr.parse(t),o=i.words;return 1398893684===o[0]&&1701076831===o[1]&&(e=gr.create(o.slice(2,4)),o.splice(0,4),i.sigBytes-=16),Br.create({ciphertext:i,salt:e})}};class Wr extends vr{static encrypt(t,e,i,o){const n=Object.assign(new vr,this.cfg,o),s=t.createEncryptor(i,n),r=s.finalize(e),a=s.cfg;return Br.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 vr,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}}Wr.cfg=Object.assign(new vr,{format:Hr});const Gr={execute(t,e,i,o,n){let s,r=o;r||(r=gr.random(8)),s=n?Dr.create({keySize:e+i,hasher:n}).compute(t,r):Dr.create({keySize:e+i}).compute(t,r);const a=gr.create(s.words.slice(e),4*i);return s.sigBytes=4*e,Br.create({key:s,iv:a,salt:r})}};class Kr extends Wr{static encrypt(t,e,i,o){const n=Object.assign(new vr,this.cfg,o),s=n.kdf.execute(i,t.keySize,t.ivSize,n.salt,n.hasher);n.iv=s.iv;const r=Wr.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 vr,this.cfg,o);n=this._parse(n,s.format);const r=s.kdf.execute(i,t.keySize,t.ivSize,n.salt,s.hasher);s.iv=r.iv;return Wr.decrypt.call(this,t,n,r.key,s)}}Kr.cfg=Object.assign(Wr.cfg,{kdf:Gr});const Zr=t=>t<<8&4278255360|t>>>8&16711935,Jr={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 gr.create(i,2*e)}},Yr=Jr,qr={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=Zr(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]|=Zr(t.charCodeAt(o)<<16-o%2*16);return gr.create(i,2*e)}},Qr={stringify(t,e=!0){const{words:i,sigBytes:o}=t,n=e?this._safeMap:this._map;t.clamp();const s=[];for(let t=0;t<o;t+=3){const e=(i[t>>>2]>>>24-t%4*8&255)<<16|(i[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|i[t+2>>>2]>>>24-(t+2)%4*8&255;for(let i=0;i<4&&t+.75*i<o;i+=1)s.push(n.charAt(e>>>6*(3-i)&63))}const r=n.charAt(64);if(r)for(;s.length%4;)s.push(r);return s.join("")},parse(t,e=!0){let i=t.length;const o=e?this._safeMap:this._map;let n=this._reverseMap;if(!n){this._reverseMap=[],n=this._reverseMap;for(let t=0;t<o.length;t+=1)n[o.charCodeAt(t)]=t}const s=o.charAt(64);if(s){const e=t.indexOf(s);-1!==e&&(i=e)}return Sr(t,i,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safeMap:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},Xr=[];class ta extends br{_doReset(){this._hash=new gr([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)Xr[i]=0|t[e+i];else{const t=Xr[i-3]^Xr[i-8]^Xr[i-14]^Xr[i-16];Xr[i]=t<<1|t>>>31}let l=(o<<5|o>>>27)+a+Xr[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 ea=br._createHelper(ta),ia=br._createHmacHelper(ta),oa=[],na=[],sa=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},ra=t=>4294967296*(t-(0|t))|0;let aa=2,la=0;for(;la<64;)sa(aa)&&(la<8&&(oa[la]=ra(aa**.5)),na[la]=ra(aa**(1/3)),la+=1),aa+=1;const ca=[];class da extends br{_doReset(){this._hash=new gr(oa.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)ca[i]=0|t[e+i];else{const t=ca[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,o=ca[i-2],n=(o<<15|o>>>17)^(o<<13|o>>>19)^o>>>10;ca[i]=e+ca[i-7]+n+ca[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)+na[i]+ca[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 ha=br._createHelper(da),ua=br._createHmacHelper(da);class pa extends da{_doReset(){this._hash=new gr([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const va=da._createHelper(pa),ga=da._createHmacHelper(pa),fa=[new Er(1116352408,3609767458),new Er(1899447441,602891725),new Er(3049323471,3964484399),new Er(3921009573,2173295548),new Er(961987163,4081628472),new Er(1508970993,3053834265),new Er(2453635748,2937671579),new Er(2870763221,3664609560),new Er(3624381080,2734883394),new Er(310598401,1164996542),new Er(607225278,1323610764),new Er(1426881987,3590304994),new Er(1925078388,4068182383),new Er(2162078206,991336113),new Er(2614888103,633803317),new Er(3248222580,3479774868),new Er(3835390401,2666613458),new Er(4022224774,944711139),new Er(264347078,2341262773),new Er(604807628,2007800933),new Er(770255983,1495990901),new Er(1249150122,1856431235),new Er(1555081692,3175218132),new Er(1996064986,2198950837),new Er(2554220882,3999719339),new Er(2821834349,766784016),new Er(2952996808,2566594879),new Er(3210313671,3203337956),new Er(3336571891,1034457026),new Er(3584528711,2466948901),new Er(113926993,3758326383),new Er(338241895,168717936),new Er(666307205,1188179964),new Er(773529912,1546045734),new Er(1294757372,1522805485),new Er(1396182291,2643833823),new Er(1695183700,2343527390),new Er(1986661051,1014477480),new Er(2177026350,1206759142),new Er(2456956037,344077627),new Er(2730485921,1290863460),new Er(2820302411,3158454273),new Er(3259730800,3505952657),new Er(3345764771,106217008),new Er(3516065817,3606008344),new Er(3600352804,1432725776),new Er(4094571909,1467031594),new Er(275423344,851169720),new Er(430227734,3100823752),new Er(506948616,1363258195),new Er(659060556,3750685593),new Er(883997877,3785050280),new Er(958139571,3318307427),new Er(1322822218,3812723403),new Er(1537002063,2003034995),new Er(1747873779,3602036899),new Er(1955562222,1575990012),new Er(2024104815,1125592928),new Er(2227730452,2716904306),new Er(2361852424,442776044),new Er(2428436474,593698344),new Er(2756734187,3733110249),new Er(3204031479,2999351573),new Er(3329325298,3815920427),new Er(3391569614,3928383900),new Er(3515267271,566280711),new Er(3940187606,3454069534),new Er(4118630271,4000239992),new Er(116418474,1914138554),new Er(174292421,2731055270),new Er(289380356,3203993006),new Er(460393269,320620315),new Er(685471733,587496836),new Er(852142971,1086792851),new Er(1017036298,365543100),new Er(1126000580,2618297676),new Er(1288033470,3409855158),new Er(1501505948,4234509866),new Er(1607167915,987167468),new Er(1816402316,1246189591)],ma=[];for(let t=0;t<80;t+=1)ma[t]=new Er;class wa extends br{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new kr([new Er(1779033703,4089235720),new Er(3144134277,2227873595),new Er(1013904242,4271175723),new Er(2773480762,1595750129),new Er(1359893119,2917565137),new Er(2600822924,725511199),new Er(528734635,4215389547),new Er(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 g=s.high;let f=s.low;const m=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,T=h,_=u,I=p,N=v,A=g,O=f,L=m,$=w,D=y,V=b,F=C,P=x,j=E,R=k,U=S,z=M;for(let i=0;i<80;i+=1){let o,n;const s=ma[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=ma[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=ma[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=ma[i-7],g=v.high,f=v.low,m=ma[i-16],w=m.high,y=m.low;o=l+f,n=a+g+(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&F^~D&j,a=V&P^~V&R,l=T&I^T&A^I&A,c=_&N^_&O^N&O,d=(T>>>28|_<<4)^(T<<30|_>>>2)^(T<<25|_>>>7),h=(_>>>28|T<<4)^(_<<30|T>>>2)^(_<<25|T>>>7),u=(D>>>14|V<<18)^(D>>>18|V<<14)^(D<<23|V>>>9),p=(V>>>14|D<<18)^(V>>>18|D<<14)^(V<<23|D>>>9),v=fa[i],g=v.high,f=v.low;let m=z+p,w=U+u+(m>>>0<z>>>0?1:0);m+=a,w=w+r+(m>>>0<a>>>0?1:0),m+=f,w=w+g+(m>>>0<f>>>0?1:0),m+=o,w=w+n+(m>>>0<o>>>0?1:0);const y=h+c;U=j,z=R,j=F,R=P,F=D,P=V,V=$+m|0,D=L+w+(V>>>0<$>>>0?1:0)|0,L=A,$=O,A=I,O=N,I=T,N=_,_=m+y|0,T=w+(d+l+(y>>>0<h>>>0?1:0))+(_>>>0<m>>>0?1:0)|0}o.low=u+_,u=o.low,o.high=h+T+(u>>>0<_>>>0?1:0),n.low=v+N,v=n.low,n.high=p+I+(v>>>0<N>>>0?1:0),s.low=f+O,f=s.low,s.high=g+A+(f>>>0<O>>>0?1:0),r.low=w+$,w=r.low,r.high=m+L+(w>>>0<$>>>0?1:0),a.low=b+V,b=a.low,a.high=y+D+(b>>>0<V>>>0?1:0),l.low=x+P,x=l.low,l.high=C+F+(x>>>0<P>>>0?1:0),c.low=k+R,k=c.low,c.high=E+j+(k>>>0<R>>>0?1:0),d.low=M+z,M=d.low,d.high=S+U+(M>>>0<z>>>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 ya=br._createHelper(wa),ba=br._createHmacHelper(wa);class Ca extends wa{_doReset(){this._hash=new kr([new Er(3418070365,3238371032),new Er(1654270250,914150663),new Er(2438529370,812702999),new Er(355462360,4144912697),new Er(1731405415,4290775857),new Er(2394180231,1750603025),new Er(3675008525,1694076839),new Er(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const xa=wa._createHelper(Ca),Ea=wa._createHmacHelper(Ca),ka=[],Sa=[],Ma=[];let Ta=1,_a=0;for(let t=0;t<24;t+=1){ka[Ta+5*_a]=(t+1)*(t+2)/2%64;const e=(2*Ta+3*_a)%5;Ta=_a%5,_a=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)Sa[t+5*e]=e+(2*t+3*e)%5*5;let Ia=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&Ia){const o=(1<<t)-1;o<32?i^=1<<o:e^=1<<o-32}128&Ia?Ia=Ia<<1^113:Ia<<=1}Ma[t]=Er.create(e,i)}const Na=[];for(let t=0;t<25;t+=1)Na[t]=Er.create();class Aa extends br{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 Er;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=Na[t];n.high=e,n.low=o}for(let t=0;t<5;t+=1){const e=Na[(t+4)%5],o=Na[(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=ka[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=Na[Sa[t]];l.high=e,l.low=o}const e=Na[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=Na[o],r=Na[(t+1)%5+5*e],a=Na[(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=Ma[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 gr(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 Oa=br._createHelper(Aa),La=br._createHmacHelper(Aa),$a=gr.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]),Da=gr.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]),Va=gr.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]),Fa=gr.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]),Pa=gr.create([0,1518500249,1859775393,2400959708,2840853838]),ja=gr.create([1352829926,1548603684,1836072691,2053994217,0]),Ra=(t,e,i)=>t^e^i,Ua=(t,e,i)=>t&e|~t&i,za=(t,e,i)=>(t|~e)^i,Ba=(t,e,i)=>t&i|e&~i,Ha=(t,e,i)=>t^(e|~i),Wa=(t,e)=>t<<e|t>>>32-e;class Ga extends br{_doReset(){this._hash=gr.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=Pa.words,s=ja.words,r=$a.words,a=Da.words,l=Va.words,c=Fa.words;let d,h=o[0],u=o[1],p=o[2],v=o[3],g=o[4],f=o[0],m=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?Ra(u,p,v)+n[0]:t<32?Ua(u,p,v)+n[1]:t<48?za(u,p,v)+n[2]:t<64?Ba(u,p,v)+n[3]:Ha(u,p,v)+n[4],d|=0,d=Wa(d,l[t]),d=d+g|0,h=g,g=v,v=Wa(p,10),p=u,u=d,d=f+i[e+a[t]]|0,d+=t<16?Ha(m,w,y)+s[0]:t<32?Ba(m,w,y)+s[1]:t<48?za(m,w,y)+s[2]:t<64?Ua(m,w,y)+s[3]:Ra(m,w,y)+s[4],d|=0,d=Wa(d,c[t]),d=d+b|0,f=b,b=y,y=Wa(w,10),w=m,m=d;d=o[1]+p+y|0,o[1]=o[2]+v+b|0,o[2]=o[3]+g+f|0,o[3]=o[4]+h+m|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 Ka=br._createHelper(Ga),Za=br._createHmacHelper(Ga);class Ja extends vr{constructor(t){super(),this.cfg=Object.assign(new vr,{keySize:4,hasher:da,iterations:25e4},t)}compute(t,e){const{cfg:i}=this,o=Cr.create(i.hasher,t),n=gr.create(),s=gr.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 Ya=[],qa=[],Qa=[],Xa=[],tl=[],el=[],il=[],ol=[],nl=[],sl=[],rl=[];for(let t=0;t<256;t+=1)rl[t]=t<128?t<<1:t<<1^283;let al=0,ll=0;for(let t=0;t<256;t+=1){let t=ll^ll<<1^ll<<2^ll<<3^ll<<4;t=t>>>8^255&t^99,Ya[al]=t,qa[t]=al;const e=rl[al],i=rl[e],o=rl[i];let n=257*rl[t]^16843008*t;Qa[al]=n<<24|n>>>8,Xa[al]=n<<16|n>>>16,tl[al]=n<<8|n>>>24,el[al]=n,n=16843009*o^65537*i^257*e^16843008*al,il[t]=n<<24|n>>>8,ol[t]=n<<16|n>>>16,nl[t]=n<<8|n>>>24,sl[t]=n,al?(al=e^rl[rl[rl[o^e]]],ll^=rl[rl[ll]]):(ll=1,al=ll)}const cl=[0,1,2,4,8,16,32,64,128,27,54];class dl extends zr{_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=Ya[t>>>24]<<24|Ya[t>>>16&255]<<16|Ya[t>>>8&255]<<8|Ya[255&t]):(t=t<<8|t>>>24,t=Ya[t>>>24]<<24|Ya[t>>>16&255]<<16|Ya[t>>>8&255]<<8|Ya[255&t],t^=cl[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:il[Ya[t>>>24]]^ol[Ya[t>>>16&255]]^nl[Ya[t>>>8&255]]^sl[Ya[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,Qa,Xa,tl,el,Ya)}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,il,ol,nl,sl,qa),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 g=(a[d>>>24]<<24|a[h>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[v];v+=1;const f=(a[h>>>24]<<24|a[u>>>16&255]<<16|a[p>>>8&255]<<8|a[255&d])^i[v];v+=1;const m=(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]=g,l[e+1]=f,l[e+2]=m,l[e+3]=w}}dl.keySize=8;const hl=zr._createHelper(dl),ul=[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],pl=[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],vl=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],gl=[{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}],fl=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function ml(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function wl(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class yl extends zr{constructor(t,e,i){super(t,e,i),this.blockSize=2}_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const o=ul[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=vl[t];for(let t=0;t<24;t+=1)o[t/6|0]|=e[(pl[t]-1+n)%28]<<31-t%6,o[4+(t/6|0)]|=e[28+(pl[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],ml.call(this,4,252645135),ml.call(this,16,65535),wl.call(this,2,858993459),wl.call(this,8,16711935),ml.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|=gl[t][((n^e[t])&fl[t])>>>0];this._lBlock=n,this._rBlock=o^s}const n=this._lBlock;this._lBlock=this._rBlock,this._rBlock=n,ml.call(this,1,1431655765),wl.call(this,8,16711935),wl.call(this,2,858993459),ml.call(this,16,65535),ml.call(this,4,252645135),o[e]=this._lBlock,o[e+1]=this._rBlock}}yl.keySize=2,yl.ivSize=2;const bl=zr._createHelper(yl);class Cl extends zr{_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=yl.createEncryptor(gr.create(e)),this._des2=yl.createEncryptor(gr.create(i)),this._des3=yl.createEncryptor(gr.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)}}Cl.keySize=6,Cl.ivSize=2;const xl=zr._createHelper(Cl),El=[],kl=[],Sl=[];function Ml(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)kl[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<kl[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<kl[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<kl[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<kl[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<kl[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<kl[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<kl[6]>>>0?1:0)|0,this._b=e[7]>>>0<kl[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);Sl[i]=r^a}t[0]=Sl[0]+(Sl[7]<<16|Sl[7]>>>16)+(Sl[6]<<16|Sl[6]>>>16)|0,t[1]=Sl[1]+(Sl[0]<<8|Sl[0]>>>24)+Sl[7]|0,t[2]=Sl[2]+(Sl[1]<<16|Sl[1]>>>16)+(Sl[0]<<16|Sl[0]>>>16)|0,t[3]=Sl[3]+(Sl[2]<<8|Sl[2]>>>24)+Sl[1]|0,t[4]=Sl[4]+(Sl[3]<<16|Sl[3]>>>16)+(Sl[2]<<16|Sl[2]>>>16)|0,t[5]=Sl[5]+(Sl[4]<<8|Sl[4]>>>24)+Sl[3]|0,t[6]=Sl[6]+(Sl[5]<<16|Sl[5]>>>16)+(Sl[4]<<16|Sl[4]>>>16)|0,t[7]=Sl[7]+(Sl[6]<<8|Sl[6]>>>24)+Sl[5]|0}class Tl extends Fr{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)Ml.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)Ml.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;Ml.call(this),El[0]=o[0]^o[5]>>>16^o[3]<<16,El[1]=o[2]^o[7]>>>16^o[5]<<16,El[2]=o[4]^o[1]>>>16^o[7]<<16,El[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)El[t]=16711935&(El[t]<<8|El[t]>>>24)|4278255360&(El[t]<<24|El[t]>>>8),i[e+t]^=El[t]}}const _l=Fr._createHelper(Tl),Il=[],Nl=[],Al=[];function Ol(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)Nl[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<Nl[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<Nl[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<Nl[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<Nl[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<Nl[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<Nl[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<Nl[6]>>>0?1:0)|0,this._b=e[7]>>>0<Nl[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);Al[i]=r^a}t[0]=Al[0]+(Al[7]<<16|Al[7]>>>16)+(Al[6]<<16|Al[6]>>>16)|0,t[1]=Al[1]+(Al[0]<<8|Al[0]>>>24)+Al[7]|0,t[2]=Al[2]+(Al[1]<<16|Al[1]>>>16)+(Al[0]<<16|Al[0]>>>16)|0,t[3]=Al[3]+(Al[2]<<8|Al[2]>>>24)+Al[1]|0,t[4]=Al[4]+(Al[3]<<16|Al[3]>>>16)+(Al[2]<<16|Al[2]>>>16)|0,t[5]=Al[5]+(Al[4]<<8|Al[4]>>>24)+Al[3]|0,t[6]=Al[6]+(Al[5]<<16|Al[5]>>>16)+(Al[4]<<16|Al[4]>>>16)|0,t[7]=Al[7]+(Al[6]<<8|Al[6]>>>24)+Al[5]|0}class Ll extends Fr{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)Ol.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)Ol.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;Ol.call(this),Il[0]=o[0]^o[5]>>>16^o[3]<<16,Il[1]=o[2]^o[7]>>>16^o[5]<<16,Il[2]=o[4]^o[1]>>>16^o[7]<<16,Il[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)Il[t]=16711935&(Il[t]<<8|Il[t]>>>24)|4278255360&(Il[t]<<24|Il[t]>>>8),i[e+t]^=Il[t]}}const $l=Fr._createHelper(Ll);function Dl(){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 Vl extends Fr{_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]^=Dl.call(this)}}Vl.keySize=8,Vl.ivSize=0;const Fl=Fr._createHelper(Vl);class Pl extends Vl{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)Dl.call(this)}}const jl=Fr._createHelper(Pl),Rl=16,Ul=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],zl=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]],Bl={pbox:[],sbox:[]};function Hl(t,e){const i=e>>24&255,o=e>>16&255,n=e>>8&255,s=255&e;let r=t.sbox[0][i]+t.sbox[1][o];return r^=t.sbox[2][n],r+=t.sbox[3][s],r}function Wl(t,e,i){let o,n=e,s=i;for(let e=0;e<Rl;++e)n^=t.pbox[e],s=Hl(t,n)^s,o=n,n=s,s=o;return o=n,n=s,s=o,s^=t.pbox[Rl],n^=t.pbox[17],{left:n,right:s}}class Gl extends zr{constructor(t,e,i){super(t,e,i),this.blockSize=2}_doReset(){if(this._keyPriorReset===this._key)return;const t=this._keyPriorReset=this._key,e=t.words,i=t.sigBytes/4;!function(t,e,i){for(let e=0;e<4;e++){t.sbox[e]=[];for(let i=0;i<256;i++)t.sbox[e][i]=zl[e][i]}let o=0;for(let n=0;n<18;n++)t.pbox[n]=Ul[n]^e[o],o++,o>=i&&(o=0);let n=0,s=0,r=0;for(let e=0;e<18;e+=2)r=Wl(t,n,s),n=r.left,s=r.right,t.pbox[e]=n,t.pbox[e+1]=s;for(let e=0;e<4;e++)for(let i=0;i<256;i+=2)r=Wl(t,n,s),n=r.left,s=r.right,t.sbox[e][i]=n,t.sbox[e][i+1]=s}(Bl,e,i)}encryptBlock(t,e){const i=Wl(Bl,t[e],t[e+1]);t[e]=i.left,t[e+1]=i.right}decryptBlock(t,e){const i=function(t,e,i){let o,n=e,s=i;for(let e=17;e>1;--e)n^=t.pbox[e],s=Hl(t,n)^s,o=n,n=s,s=o;return o=n,n=s,s=o,s^=t.pbox[1],n^=t.pbox[0],{left:n,right:s}}(Bl,t[e],t[e+1]);t[e]=i.left,t[e+1]=i.right}}Gl.keySize=4,Gl.ivSize=2;const Kl=zr._createHelper(Gl);function Zl(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 Jl extends Pr{}Jl.Encryptor=class extends Jl{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;Zl.call(this,t,e,o,i),this._prevBlock=t.slice(e,e+o)}},Jl.Decryptor=class extends Jl{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);Zl.call(this,t,e,o,i),this._prevBlock=n}};class Yl extends Pr{}Yl.Encryptor=class extends Yl{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]}},Yl.Decryptor=Yl.Encryptor;const ql=t=>{let e=t;if(255&~(t>>24))e+=1<<24;else{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}return e};
|
|
1538
1538
|
/** @preserve
|
|
1539
1539
|
* Counter block mode compatible with Dr Brian Gladman fileenc.c
|
|
1540
1540
|
* derived from CryptoJS.mode.CTR
|
|
1541
1541
|
* Jan Hruby jhruby.web@gmail.com
|
|
1542
1542
|
*/
|
|
1543
|
-
class Ql extends
|
|
1544
|
-
calc(${t[2]}rem * var(--velt-base-rem-unit, 1))`;case 4:return
|
|
1545
|
-
calc(${t[2]}rem * var(--velt-base-rem-unit, 1)) calc(${t[3]}rem * var(--velt-base-rem-unit, 1))`}return s`0`},mc=(t,e,i)=>{try{const n=ac.enc.Utf8.parse(e),o=ac.enc.Utf8.parse(i);return ac.AES.encrypt(ac.enc.Utf8.parse(t),n,{keySize:32,iv:o,mode:ac.mode.CBC,padding:ac.pad.Pkcs7}).toString()}catch(e){return console.warn("Error in encrypt: ",e),Nc("Error in encrypt: ",e),t}},gc=(t,e,i)=>{try{const n=ac.enc.Utf8.parse(e),o=ac.enc.Utf8.parse(i);return ac.AES.decrypt(t,n,{keySize:32,iv:o,mode:ac.mode.CBC,padding:ac.pad.Pkcs7}).toString(ac.enc.Utf8)}catch(t){return console.warn("Error in decrypt: ",t),Nc("Error in decrypt: ",t),null}},wc=()=>{try{const t=pc(Et,!0);if(t){const e=gc(t,de,ue);if(e)return JSON.parse(e);console.warn("Error in getUserFromToken: ","Invalid token."),fc(Et)}else{const t=pc(xt,!0);if(t)return yc(),JSON.parse(t)}return null}catch(t){return console.warn("Error in getUserFromToken: ",t),Nc("Error in getUserFromToken: ",t),null}},yc=()=>{try{const t=pc(xt,!0);if(t){const e=mc(t,de,ue);hc(Et,e,!0)}fc(xt)}catch(t){console.warn("Error in moveSnippylyUserToST: ",t),Nc("Error in moveSnippylyUserToST: ",t)}},bc=(t=!0,e)=>{try{const i=pc(St,!0);if(i){const t=gc(i,de,ue);return t?JSON.parse(t):null}if(t){const t=se,i=t[Math.floor(Math.random()*t.length)],n=i.name,o=i.photoUrl,r={name:n,email:"guest@usesuperflow.com",userId:Math.floor(1e9*Math.random())+"",photoUrl:o,isGuest:!0,organizationId:e},s=JSON.stringify(r),a=mc(s,de,ue);return hc(St,a,!0),r}return null}catch(t){return console.warn("Error in getGuestUser: ",t),Nc("Error in getGuestUser: ",t),null}},Cc=(t,e)=>{try{return Object.prototype.toString.call(t)===Object.prototype.toString.call(e)&&("[object Object]"===Object.prototype.toString.call(t)||"[object Array]"===Object.prototype.toString.call(t)?Object.keys(t).length===Object.keys(e).length&&Object.keys(t).every((i=>Cc(t[i],e[i]))):t===e)}catch(t){return console.error("Error in deepCompare: ",t),!1}},xc=Yi({apiKey:"AIzaSyAzcW2n1JhY_zhkXmuFcwe550AkwmYeJ0w",projectId:"snipply-sdk-staging",messagingSenderId:"877538579326",appId:"1:877538579326:web:f793f73f2b7dc770c4992f"}),kc=function(t=Ji(),e=gn){const i=Hi(Oe(t),hn).getImmediate({identifier:e}),n=(t=>{const e=Ce(t);if(!e)return;const i=e.lastIndexOf(":");if(i<=0||i+1===e.length)throw new Error(`Invalid host ${e} with no separate hostname and port!`);const n=parseInt(e.substring(i+1),10);return"["===e[0]?[e.substring(1,i-1),n]:[e.substring(0,i),n]})("functions");return n&&function(t,e,i){!function(t,e,i){t.emulatorOrigin=`http://${e}:${i}`}(Oe(t),e,i)}(i,...n),i}(xc);let Ec,Sc={sourcePlatform:"superflowToolbar"},Mc={};const $c=()=>new Promise(((t,e)=>{const i=ds(xc).onAuthStateChanged((n=>{i(),n?t(n):e("No user is currently signed in.")}),e)})),Tc=(t={})=>{Sc={...Sc,...t}},Ic=t=>{Ec=t},_c=t=>{var e,i,n,o,r,s,a,l,c,d,u,h;const p={properties:{apiKey:null!==(e=null==Sc?void 0:Sc.apiKey)&&void 0!==e?e:"",name:null!==(i=null==t?void 0:t.name)&&void 0!==i?i:"",firstName:(null==t?void 0:t.name)?null===(n=null==t?void 0:t.name)||void 0===n?void 0:n.split(" ")[0]:"",lastName:(null==t?void 0:t.name)?null===(o=null==t?void 0:t.name)||void 0===o?void 0:o.split(" ")[1]:"",email:null!==(r=null==t?void 0:t.email)&&void 0!==r?r:"",clientUserId:null!==(s=null==t?void 0:t.userId)&&void 0!==s?s:"",snippylyUserId:null!==(a=null==t?void 0:t.userSnippylyId)&&void 0!==a?a:"",groupId:null!==(l=null==t?void 0:t.groupId)&&void 0!==l?l:"",isOwner:"",plan:"",sdkVersion:null!==(c=null==Sc?void 0:Sc.sdkVersion)&&void 0!==c?c:"",sdkType:null!==(d=null==Sc?void 0:Sc.sdkType)&&void 0!==d?d:"",sourcePlatform:null!==(u=null==Sc?void 0:Sc.sourcePlatform)&&void 0!==u?u:"",website:null===(h=null===window||void 0===window?void 0:window.location)||void 0===h?void 0:h.href},context:{userAgent:null===navigator||void 0===navigator?void 0:navigator.userAgent},userId:null==t?void 0:t.userSnippylyId,sf:!0};Lc("identify",p)},Nc=(t,e,i={})=>{const n={error:t,message:(null==e?void 0:e.message)||e||t,...i};Ac("error",n)},Ac=(t,e={},i=!0)=>{try{if(null==Ec?void 0:Ec.userSnippylyId){e=i?{...Sc,...e}:e,e={...e};const n={userId:null==Ec?void 0:Ec.userSnippylyId,event:t,properties:e,sf:!0};Lc("track",n)}else console.warn("Untracked event: ",t,e)}catch(t){console.warn("Error in trackEvent: ",t)}},Lc=(t,e)=>{try{Sn(kc,he,{timeout:12e5})({type:t,data:e})}catch(t){console.warn("Error in setAnalytics: ",t)}},Oc=async(t,e)=>{try{const i=Sn(kc,pe,{timeout:12e5});await i({eventType:"checkDomainWhitelisted",apiKey:t,projectId:e})}catch(t){console.warn("Error in checkDomainWhitelisted: ",t)}},Fc=async(t,e,i,n)=>{try{const o=Sn(kc,pe,{timeout:12e5}),r=await o({eventType:"iam",apiKey:t,projectId:e,email:i,userId:n});return null==r?void 0:r.data}catch(t){return console.warn("Error in iam: ",t),null}},Dc=async(t,e)=>{var i;try{const n=Sn(kc,pe,{timeout:12e5}),o=await n({eventType:"getProjectConfig",apiKey:t,projectId:e});return null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.data}catch(t){return console.warn("Error in getProjectConfig: ",t),null}},Pc=async(t,e,i)=>{var n;try{const o=Sn(kc,pe,{timeout:12e5}),r=await o({eventType:"validatePassword",apiKey:t,projectId:e,password:i});return null===(n=null==r?void 0:r.data)||void 0===n?void 0:n.data}catch(t){return console.warn("Error in validatePassword: ",t),null}},Rc=async(t,e,i)=>{var n;try{const o=Sn(kc,pe,{timeout:12e5}),r=await o({eventType:"checkToolbarEnabled",apiKey:t,projectId:e,url:i});return null===(n=null==r?void 0:r.data)||void 0===n?void 0:n.data}catch(t){return console.warn("Error in checkToolbarEnabled: ",t),null}},jc=async t=>{try{const e=Sn(kc,pe,{timeout:12e5}),i=await e({eventType:"getCustomerMetadata",apiKey:t});return null==i?void 0:i.data}catch(t){return console.warn("Error in getCustomerMetadata: ",t),null}},Vc=async t=>{try{const e=Sn(kc,pe,{timeout:12e5}),i=await e({eventType:"customStatus",subEventType:"getOrgStatuses",apiKey:t});return null==i?void 0:i.data}catch(t){return console.warn("Error in getOrgStatuses: ",t),null}},Uc=async(t,e,i)=>{var n,o;try{const r=Sn(kc,pe,{timeout:12e5}),s=await r({eventType:"generateSuperflowAuthToken",apiKey:t,userId:e,userProperties:i});return null===(o=null===(n=null==s?void 0:s.data)||void 0===n?void 0:n.data)||void 0===o?void 0:o.token}catch(t){return console.warn("Error in generateSuperflowAuthToken: ",t),null}},zc=async(t,e,i,n,o)=>{try{const r=Sn(kc,pe,{timeout:12e5}),s=await r({eventType:"userMigration",apiKey:t,projectId:e,oldUser:i,newUser:n,deleteGuestUserFlag:o});return null==s?void 0:s.data}catch(t){return console.warn("Error in usermigration: ",t),null}},Bc=t=>Sn(kc,pe,{timeout:12e5})({eventType:"customLoginEnabled",apiKey:t}),Hc=async t=>{var e;try{const i=Sn(kc,pe,{timeout:12e5}),n=await i({eventType:"saml",samlEventType:"getPublicConfig",apiKey:t});return null===(e=null==n?void 0:n.data)||void 0===e?void 0:e.publicConfig}catch(t){return console.warn("Error in getSamlPublicConfig: ",t),null}},Wc=async(t,e)=>{var i;try{const n=await $c();if(!n)throw new Error("User must be authenticated to create admin users");const o=window.Velt?await(null===(i=window.Velt)||void 0===i?void 0:i.getUser()):null,r=(null==n?void 0:n.displayName)||(null==o?void 0:o.name)||(null==o?void 0:o.email)||"",s=Sn(kc,pe,{timeout:12e5}),a=await s({eventType:"createAdminUser",apiKey:t,users:e,inviterName:r});return null==a?void 0:a.data}catch(t){throw console.warn("Error in createAdminUser: ",t),t}},Gc=async(t,e,i)=>{var n;try{const o=await $c();if(!o)throw new Error("User must be authenticated to create project users");const r=window.Velt?await(null===(n=window.Velt)||void 0===n?void 0:n.getUser()):null,s=(null==o?void 0:o.displayName)||(null==r?void 0:r.name)||(null==r?void 0:r.email)||"",a=Sn(kc,pe,{timeout:12e5}),l=await a({eventType:"createProjectUser",apiKey:t,documentId:e,users:i,inviterName:s});return null==l?void 0:l.data}catch(t){throw console.warn("Error in createProjectUser: ",t),t}},Kc=async(t,e,i,n,o)=>{try{const r=Sn(kc,pe,{timeout:12e5}),s=await r({eventType:"checkDocumentUserAndCreate",apiKey:t,documentId:e,userId:i,name:n,email:o});return null==s?void 0:s.data}catch(t){throw console.warn("Error in checkDocumentUserAndCreate: ",t),t}};var Zc;!function(t){t.WorkspaceUserSeats="workspaceUserSeats",t.Storage="storage",t.Agents="agents",t.WorkspacePrivateComments="privateComments"}(Zc||(Zc={}));const Yc=async t=>{var e;try{const i=Sn(kc,pe,{timeout:12e5}),n=await i({eventType:"getFeatureAccess",apiKey:t});return null===(e=null==n?void 0:n.data)||void 0===e?void 0:e.data}catch(t){return console.warn("Error in getFeatureAccess: ",t),null}},Jc=async(t,e,i,n,o)=>{try{const r=Sn(kc,pe,{timeout:12e5}),s=await r({eventType:"acceptAgentSuggestion",apiKey:t,organizationId:e,documentId:i,annotationId:n,user:o});return null==s?void 0:s.data}catch(t){return console.warn("Error in acceptAgentSuggestion: ",t),Nc("Error in acceptAgentSuggestion: ",t),null}},qc=async(t,e,i,n)=>{try{const o=Sn(kc,pe,{timeout:12e5}),r=await o({eventType:"declineAgentSuggestion",apiKey:t,organizationId:e,documentId:i,annotationId:n});return null==r?void 0:r.data}catch(t){return console.warn("Error in declineAgentSuggestion: ",t),Nc("Error in declineAgentSuggestion: ",t),null}};var Qc=Object.freeze({__proto__:null,get BillableMetricTypes(){return Zc},acceptAgentSuggestion:Jc,checkDocumentUserAndCreate:Kc,checkDomainWhitelisted:Oc,checkGuestMode:async(t,e)=>{try{const i=Sn(kc,pe,{timeout:12e5}),n=await i({eventType:"checkGuestMode",apiKey:t,projectId:e});return null==n?void 0:n.data}catch(t){return console.warn("Error in checkGuestMode: ",t),null}},checkToolbarEnabled:Rc,createAdminUser:Wc,createProjectUser:Gc,declineAgentSuggestion:qc,detectCustomLoginEnabled:Bc,generateSuperflowAuthToken:Uc,getAgents:async t=>{var e,i,n;try{const o=Sn(kc,pe,{timeout:12e5}),r=await o({eventType:"getAgents",apiKey:t});return null!==(n=null===(i=null===(e=null==r?void 0:r.data)||void 0===e?void 0:e.data)||void 0===i?void 0:i.agents)&&void 0!==n?n:[]}catch(t){return console.warn("Error in getAgents: ",t),[]}},getAnonymousId:()=>{let t=localStorage.getItem("sAnonymousId");if(!t){const e=Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15);t=lc(e)+"",localStorage.setItem("sAnonymousId",t)}return t},getCurrentUser:$c,getCurrentUserClaims:async()=>{try{const t=await $c(),e=await(null==t?void 0:t.getIdTokenResult());return(null==e?void 0:e.claims)||{}}catch(t){return console.warn("Error in getCurrentUserClaims: ",t),{}}},getCustomerMetadata:jc,getFeatureAccess:Yc,getOrgStatuses:Vc,getProjectConfig:Dc,getSamlPublicConfig:Hc,iam:Fc,identifyTraits:t=>{const e=JSON.parse(JSON.stringify(Mc||{}));Mc={...Mc,...t},Cc(e,Mc)||Lc("identify",{properties:Mc})},setDefaultProperties:Tc,setUser:Ic,trackErrorEvent:Nc,trackEvent:Ac,trackIdentifyEvent:_c,userMigration:zc,validatePassword:Pc});navigator.language.split("-")[0];const Xc=new Map;Xc.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"}),Xc.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"}),Xc.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:"आगामी"}),Xc.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"}),Xc.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:"Далее"}),Xc.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 td=t=>{try{return t}catch(e){return t}},ed=s`
|
|
1543
|
+
class Ql extends Pr{}Ql.Encryptor=class extends Ql{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]=ql(e[0]),0===e[0]&&(e[1]=ql(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]}},Ql.Decryptor=Ql.Encryptor;class Xl extends Pr{}Xl.Encryptor=class extends Xl{processBlock(t,e){this._cipher.encryptBlock(t,e)}},Xl.Decryptor=class extends Xl{processBlock(t,e){this._cipher.decryptBlock(t,e)}};class tc extends Pr{}tc.Encryptor=class extends tc{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]}},tc.Decryptor=tc.Encryptor;const ec={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}},ic={pad(t,e){const i=4*e,o=i-t.sigBytes%i;t.concat(gr.random(o-1)).concat(gr.create([o<<24],1))},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},oc={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}}},nc={pad(t,e){t.concat(gr.create([2147483648],1)),oc.pad(t,e)},unpad(t){const e=t;oc.unpad(e),e.sigBytes-=1}},sc={pad(){},unpad(){}},rc={stringify:t=>t.ciphertext.toString(fr),parse(t){const e=fr.parse(t);return Br.create({ciphertext:e})}};var ac={lib:{Base:vr,WordArray:gr,BufferedBlockAlgorithm:yr,Hasher:br,Cipher:Vr,StreamCipher:Fr,BlockCipherMode:Pr,BlockCipher:zr,CipherParams:Br,SerializableCipher:Wr,PasswordBasedCipher:Kr},x64:{Word:Er,WordArray:kr},enc:{Hex:fr,Latin1:mr,Utf8:wr,Utf16:Yr,Utf16BE:Jr,Utf16LE:qr,Base64:Mr,Base64url:Qr},algo:{HMAC:Cr,MD5:Or,SHA1:ta,SHA224:pa,SHA256:da,SHA384:Ca,SHA512:wa,SHA3:Aa,RIPEMD160:Ga,PBKDF2:Ja,EvpKDF:Dr,AES:dl,DES:yl,TripleDES:Cl,Rabbit:Tl,RabbitLegacy:Ll,RC4:Vl,RC4Drop:Pl,Blowfish:Gl},mode:{CBC:Rr,CFB:Jl,CTR:Yl,CTRGladman:Ql,ECB:Xl,OFB:tc},pad:{Pkcs7:Ur,AnsiX923:ec,Iso10126:ic,Iso97971:nc,NoPadding:sc,ZeroPadding:oc},format:{OpenSSL:Hr,Hex:rc},kdf:{OpenSSL:Gr},MD5:Lr,HmacMD5:$r,SHA1:ea,HmacSHA1:ia,SHA224:va,HmacSHA224:ga,SHA256:ha,HmacSHA256:ua,SHA384:xa,HmacSHA384:Ea,SHA512:ya,HmacSHA512:ba,SHA3:Oa,HmacSHA3:La,RIPEMD160:Ka,HmacRIPEMD160:Za,PBKDF2:(t,e,i)=>Ja.create(i).compute(t,e),EvpKDF:(t,e,i)=>Dr.create(i).compute(t,e),AES:hl,DES:bl,TripleDES:xl,Rabbit:_l,RabbitLegacy:$l,RC4:Fl,RC4Drop:jl,Blowfish:Kl};const lc=(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),Ac("Error in cyrb53: ",t),0}},cc=t=>{try{return"object"!=typeof t?Object.assign({},...Object.keys(t).sort().map((e=>({[e]:t[e]&&"object"==typeof t[e]?cc(t[e]):t[e]})))):t}catch(e){return t}},dc=t=>{let e;return e=t.includes("http")?new URL(t):new URL("http://"+t),e.hostname.replace("www.","")};function hc(t){try{const e=localStorage.getItem(t);if(!e)return null;try{return JSON.parse(e)}catch(t){return e}}catch(t){return console.warn("Error in getLocalStorage: ",t),null}}const uc=(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),Ac("Error in setLocalStorage: ",t)}},pc=(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),Ac("Error in getLocalStorage: ",t),null}},vc=(t,e="localStorage")=>{try{"localStorage"===e?localStorage.removeItem(t):sessionStorage.removeItem(t)}catch(t){console.warn("Error in removeLocalStorageData: ",t),Ac("Error in removeLocalStorageData: ",t)}},gc=(...t)=>{if(t)switch(t.length){case 1:return r`calc(${t[0]}rem * var(--velt-base-rem-unit, 1))`;case 2:return r`calc(${t[0]}rem * var(--velt-base-rem-unit, 1)) calc(${t[1]}rem * var(--velt-base-rem-unit, 1))`;case 3:return r`calc(${t[0]}rem * var(--velt-base-rem-unit, 1)) calc(${t[1]}rem * var(--velt-base-rem-unit, 1))
|
|
1544
|
+
calc(${t[2]}rem * var(--velt-base-rem-unit, 1))`;case 4:return r`calc(${t[0]}rem * var(--velt-base-rem-unit, 1)) calc(${t[1]}rem * var(--velt-base-rem-unit, 1))
|
|
1545
|
+
calc(${t[2]}rem * var(--velt-base-rem-unit, 1)) calc(${t[3]}rem * var(--velt-base-rem-unit, 1))`}return r`0`},fc=(t,e,i)=>{try{const o=ac.enc.Utf8.parse(e),n=ac.enc.Utf8.parse(i);return ac.AES.encrypt(ac.enc.Utf8.parse(t),o,{keySize:32,iv:n,mode:ac.mode.CBC,padding:ac.pad.Pkcs7}).toString()}catch(e){return console.warn("Error in encrypt: ",e),Ac("Error in encrypt: ",e),t}},mc=(t,e,i)=>{try{const o=ac.enc.Utf8.parse(e),n=ac.enc.Utf8.parse(i);return ac.AES.decrypt(t,o,{keySize:32,iv:n,mode:ac.mode.CBC,padding:ac.pad.Pkcs7}).toString(ac.enc.Utf8)}catch(t){return console.warn("Error in decrypt: ",t),Ac("Error in decrypt: ",t),null}},wc=()=>{try{const t=pc(kt,!0);if(t){const e=mc(t,de,he);if(e)return JSON.parse(e);console.warn("Error in getUserFromToken: ","Invalid token."),vc(kt)}else{const t=pc(xt,!0);if(t)return yc(),JSON.parse(t)}return null}catch(t){return console.warn("Error in getUserFromToken: ",t),Ac("Error in getUserFromToken: ",t),null}},yc=()=>{try{const t=pc(xt,!0);if(t){const e=fc(t,de,he);uc(kt,e,!0)}vc(xt)}catch(t){console.warn("Error in moveSnippylyUserToST: ",t),Ac("Error in moveSnippylyUserToST: ",t)}},bc=(t=!0,e)=>{try{const i=pc(St,!0);if(i){const t=mc(i,de,he);return t?JSON.parse(t):null}if(t){const t=re,i=t[Math.floor(Math.random()*t.length)],o=i.name,n=i.photoUrl,s={name:o,email:"guest@usesuperflow.com",userId:Math.floor(1e9*Math.random())+"",photoUrl:n,isGuest:!0,organizationId:e},r=JSON.stringify(s),a=fc(r,de,he);return uc(St,a,!0),s}return null}catch(t){return console.warn("Error in getGuestUser: ",t),Ac("Error in getGuestUser: ",t),null}},Cc=(t,e)=>{try{return Object.prototype.toString.call(t)===Object.prototype.toString.call(e)&&("[object Object]"===Object.prototype.toString.call(t)||"[object Array]"===Object.prototype.toString.call(t)?Object.keys(t).length===Object.keys(e).length&&Object.keys(t).every((i=>Cc(t[i],e[i]))):t===e)}catch(t){return console.error("Error in deepCompare: ",t),!1}},xc=Ji({apiKey:"AIzaSyAzcW2n1JhY_zhkXmuFcwe550AkwmYeJ0w",projectId:"snipply-sdk-staging",messagingSenderId:"877538579326",appId:"1:877538579326:web:f793f73f2b7dc770c4992f"}),Ec=function(t=Yi(),e=mo){const i=Hi($e(t),uo).getImmediate({identifier:e}),o=(t=>{const e=Ce(t);if(!e)return;const i=e.lastIndexOf(":");if(i<=0||i+1===e.length)throw new Error(`Invalid host ${e} with no separate hostname and port!`);const o=parseInt(e.substring(i+1),10);return"["===e[0]?[e.substring(1,i-1),o]:[e.substring(0,i),o]})("functions");return o&&function(t,e,i){!function(t,e,i){t.emulatorOrigin=`http://${e}:${i}`}($e(t),e,i)}(i,...o),i}(xc);let kc,Sc={sourcePlatform:"superflowToolbar"},Mc={};const Tc=()=>new Promise(((t,e)=>{const i=dr(xc).onAuthStateChanged((o=>{i(),o?t(o):e("No user is currently signed in.")}),e)})),_c=(t={})=>{Sc={...Sc,...t}},Ic=t=>{kc=t},Nc=t=>{var e,i,o,n,s,r,a,l,c,d,h,u;const p={properties:{apiKey:null!==(e=null==Sc?void 0:Sc.apiKey)&&void 0!==e?e:"",name:null!==(i=null==t?void 0:t.name)&&void 0!==i?i:"",firstName:(null==t?void 0:t.name)?null===(o=null==t?void 0:t.name)||void 0===o?void 0:o.split(" ")[0]:"",lastName:(null==t?void 0:t.name)?null===(n=null==t?void 0:t.name)||void 0===n?void 0:n.split(" ")[1]:"",email:null!==(s=null==t?void 0:t.email)&&void 0!==s?s:"",clientUserId:null!==(r=null==t?void 0:t.userId)&&void 0!==r?r:"",snippylyUserId:null!==(a=null==t?void 0:t.userSnippylyId)&&void 0!==a?a:"",groupId:null!==(l=null==t?void 0:t.groupId)&&void 0!==l?l:"",isOwner:"",plan:"",sdkVersion:null!==(c=null==Sc?void 0:Sc.sdkVersion)&&void 0!==c?c:"",sdkType:null!==(d=null==Sc?void 0:Sc.sdkType)&&void 0!==d?d:"",sourcePlatform:null!==(h=null==Sc?void 0:Sc.sourcePlatform)&&void 0!==h?h:"",website:null===(u=null===window||void 0===window?void 0:window.location)||void 0===u?void 0:u.href},context:{userAgent:null===navigator||void 0===navigator?void 0:navigator.userAgent},userId:null==t?void 0:t.userSnippylyId,sf:!0};Lc("identify",p)},Ac=(t,e,i={})=>{const o={error:t,message:(null==e?void 0:e.message)||e||t,...i};Oc("error",o)},Oc=(t,e={},i=!0)=>{try{if(null==kc?void 0:kc.userSnippylyId){e=i?{...Sc,...e}:e,e={...e};const o={userId:null==kc?void 0:kc.userSnippylyId,event:t,properties:e,sf:!0};Lc("track",o)}else console.warn("Untracked event: ",t,e)}catch(t){console.warn("Error in trackEvent: ",t)}},Lc=(t,e)=>{try{So(Ec,ue,{timeout:12e5})({type:t,data:e})}catch(t){console.warn("Error in setAnalytics: ",t)}},$c=async(t,e)=>{try{const i=So(Ec,pe,{timeout:12e5});await i({eventType:"checkDomainWhitelisted",apiKey:t,projectId:e})}catch(t){console.warn("Error in checkDomainWhitelisted: ",t)}},Dc=async(t,e,i,o)=>{try{const n=So(Ec,pe,{timeout:12e5}),s=await n({eventType:"iam",apiKey:t,projectId:e,email:i,userId:o});return null==s?void 0:s.data}catch(t){return console.warn("Error in iam: ",t),null}},Vc=async(t,e)=>{var i;try{const o=So(Ec,pe,{timeout:12e5}),n=await o({eventType:"getProjectConfig",apiKey:t,projectId:e});return null===(i=null==n?void 0:n.data)||void 0===i?void 0:i.data}catch(t){return console.warn("Error in getProjectConfig: ",t),null}},Fc=async(t,e,i)=>{var o;try{const n=So(Ec,pe,{timeout:12e5}),s=await n({eventType:"validatePassword",apiKey:t,projectId:e,password:i});return null===(o=null==s?void 0:s.data)||void 0===o?void 0:o.data}catch(t){return console.warn("Error in validatePassword: ",t),null}},Pc=async(t,e,i)=>{var o;try{const n=So(Ec,pe,{timeout:12e5}),s=await n({eventType:"checkToolbarEnabled",apiKey:t,projectId:e,url:i});return null===(o=null==s?void 0:s.data)||void 0===o?void 0:o.data}catch(t){return console.warn("Error in checkToolbarEnabled: ",t),null}},jc=async t=>{try{const e=So(Ec,pe,{timeout:12e5}),i=await e({eventType:"getCustomerMetadata",apiKey:t});return null==i?void 0:i.data}catch(t){return console.warn("Error in getCustomerMetadata: ",t),null}},Rc=async t=>{try{const e=So(Ec,pe,{timeout:12e5}),i=await e({eventType:"customStatus",subEventType:"getOrgStatuses",apiKey:t});return null==i?void 0:i.data}catch(t){return console.warn("Error in getOrgStatuses: ",t),null}},Uc=async(t,e,i)=>{var o,n;try{const s=So(Ec,pe,{timeout:12e5}),r=await s({eventType:"generateSuperflowAuthToken",apiKey:t,userId:e,userProperties:i});return null===(n=null===(o=null==r?void 0:r.data)||void 0===o?void 0:o.data)||void 0===n?void 0:n.token}catch(t){return console.warn("Error in generateSuperflowAuthToken: ",t),null}},zc=async(t,e,i,o,n)=>{try{const s=So(Ec,pe,{timeout:12e5}),r=await s({eventType:"userMigration",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}},Bc=t=>So(Ec,pe,{timeout:12e5})({eventType:"customLoginEnabled",apiKey:t}),Hc=async t=>{var e;try{const i=So(Ec,pe,{timeout:12e5}),o=await i({eventType:"saml",samlEventType:"getPublicConfig",apiKey:t});return null===(e=null==o?void 0:o.data)||void 0===e?void 0:e.publicConfig}catch(t){return console.warn("Error in getSamlPublicConfig: ",t),null}},Wc=async(t,e)=>{var i;try{const o=await Tc();if(!o)throw new Error("User must be authenticated to create admin users");const n=window.Velt?await(null===(i=window.Velt)||void 0===i?void 0:i.getUser()):null,s=(null==o?void 0:o.displayName)||(null==n?void 0:n.name)||(null==n?void 0:n.email)||"",r=So(Ec,pe,{timeout:12e5}),a=await r({eventType:"createAdminUser",apiKey:t,users:e,inviterName:s});return null==a?void 0:a.data}catch(t){throw console.warn("Error in createAdminUser: ",t),t}},Gc=async(t,e,i)=>{var o;try{const n=await Tc();if(!n)throw new Error("User must be authenticated to create project users");const s=window.Velt?await(null===(o=window.Velt)||void 0===o?void 0:o.getUser()):null,r=(null==n?void 0:n.displayName)||(null==s?void 0:s.name)||(null==s?void 0:s.email)||"",a=So(Ec,pe,{timeout:12e5}),l=await a({eventType:"createProjectUser",apiKey:t,documentId:e,users:i,inviterName:r});return null==l?void 0:l.data}catch(t){throw console.warn("Error in createProjectUser: ",t),t}},Kc=async(t,e,i,o,n)=>{try{const s=So(Ec,pe,{timeout:12e5}),r=await s({eventType:"checkDocumentUserAndCreate",apiKey:t,documentId:e,userId:i,name:o,email:n});return null==r?void 0:r.data}catch(t){throw console.warn("Error in checkDocumentUserAndCreate: ",t),t}};var Zc;!function(t){t.WorkspaceUserSeats="workspaceUserSeats",t.Storage="storage",t.Agents="agents",t.WorkspacePrivateComments="privateComments"}(Zc||(Zc={}));const Jc=async t=>{var e;try{const i=So(Ec,pe,{timeout:12e5}),o=await i({eventType:"getFeatureAccess",apiKey:t});return null===(e=null==o?void 0:o.data)||void 0===e?void 0:e.data}catch(t){return console.warn("Error in getFeatureAccess: ",t),null}},Yc=async(t,e,i,o,n)=>{try{const s=So(Ec,pe,{timeout:12e5}),r=await s({eventType:"acceptAgentSuggestion",apiKey:t,organizationId:e,documentId:i,annotationId:o,user:n});return null==r?void 0:r.data}catch(t){return console.warn("Error in acceptAgentSuggestion: ",t),Ac("Error in acceptAgentSuggestion: ",t),null}},qc=async(t,e,i,o)=>{try{const n=So(Ec,pe,{timeout:12e5}),s=await n({eventType:"declineAgentSuggestion",apiKey:t,organizationId:e,documentId:i,annotationId:o});return null==s?void 0:s.data}catch(t){return console.warn("Error in declineAgentSuggestion: ",t),Ac("Error in declineAgentSuggestion: ",t),null}};var Qc=Object.freeze({__proto__:null,get BillableMetricTypes(){return Zc},acceptAgentSuggestion:Yc,checkDocumentUserAndCreate:Kc,checkDomainWhitelisted:$c,checkGuestMode:async(t,e)=>{try{const i=So(Ec,pe,{timeout:12e5}),o=await i({eventType:"checkGuestMode",apiKey:t,projectId:e});return null==o?void 0:o.data}catch(t){return console.warn("Error in checkGuestMode: ",t),null}},checkToolbarEnabled:Pc,createAdminUser:Wc,createProjectUser:Gc,declineAgentSuggestion:qc,detectCustomLoginEnabled:Bc,generateSuperflowAuthToken:Uc,getAgents:async t=>{var e,i,o;try{const n=So(Ec,pe,{timeout:12e5}),s=await n({eventType:"getAgents",apiKey:t});return null!==(o=null===(i=null===(e=null==s?void 0:s.data)||void 0===e?void 0:e.data)||void 0===i?void 0:i.agents)&&void 0!==o?o:[]}catch(t){return console.warn("Error in getAgents: ",t),[]}},getAnonymousId:()=>{let t=localStorage.getItem("sAnonymousId");if(!t){const e=Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15);t=lc(e)+"",localStorage.setItem("sAnonymousId",t)}return t},getCurrentUser:Tc,getCurrentUserClaims:async()=>{try{const t=await Tc(),e=await(null==t?void 0:t.getIdTokenResult());return(null==e?void 0:e.claims)||{}}catch(t){return console.warn("Error in getCurrentUserClaims: ",t),{}}},getCustomerMetadata:jc,getFeatureAccess:Jc,getOrgStatuses:Rc,getProjectConfig:Vc,getSamlPublicConfig:Hc,iam:Dc,identifyTraits:t=>{const e=JSON.parse(JSON.stringify(Mc||{}));Mc={...Mc,...t},Cc(e,Mc)||Lc("identify",{properties:Mc})},setDefaultProperties:_c,setUser:Ic,trackErrorEvent:Ac,trackEvent:Oc,trackIdentifyEvent:Nc,userMigration:zc,validatePassword:Fc});navigator.language.split("-")[0];const Xc=new Map;Xc.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"}),Xc.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"}),Xc.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:"आगामी"}),Xc.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"}),Xc.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:"Далее"}),Xc.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 td=t=>{try{return t}catch(e){return t}},ed=r`
|
|
1546
1546
|
|
|
1547
1547
|
.wrap {
|
|
1548
1548
|
padding: 32px;
|
|
@@ -1887,7 +1887,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
1887
1887
|
line-height: 2em;
|
|
1888
1888
|
display: flex;
|
|
1889
1889
|
flex-direction: column;
|
|
1890
|
-
gap: ${
|
|
1890
|
+
gap: ${gc(.4)};
|
|
1891
1891
|
|
|
1892
1892
|
/* Position the tooltip text - see examples below! */
|
|
1893
1893
|
position: absolute;
|
|
@@ -1966,7 +1966,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
1966
1966
|
align-self: end;
|
|
1967
1967
|
cursor: pointer;
|
|
1968
1968
|
}
|
|
1969
|
-
`,id=
|
|
1969
|
+
`,id=r`
|
|
1970
1970
|
@import url('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');
|
|
1971
1971
|
|
|
1972
1972
|
* {
|
|
@@ -1978,8 +1978,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
1978
1978
|
bottom: 0;
|
|
1979
1979
|
right: 0;
|
|
1980
1980
|
z-index: 2147483577;
|
|
1981
|
-
margin: ${
|
|
1982
|
-
margin-bottom: ${
|
|
1981
|
+
margin: ${gc(1.5)};
|
|
1982
|
+
margin-bottom: ${gc(3)}; // Added to prevent overlap between plugin UI and webflow badge
|
|
1983
1983
|
max-width: 100vw !important;
|
|
1984
1984
|
box-sizing: border-box;
|
|
1985
1985
|
|
|
@@ -1999,6 +1999,44 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
1999
1999
|
background: white;
|
|
2000
2000
|
}
|
|
2001
2001
|
|
|
2002
|
+
/* "Capturing screenshot" loading pill shown above the toolbar while the new
|
|
2003
|
+
native screenshot is being captured + attached to a comment. */
|
|
2004
|
+
.sf-screenshot-capturing-banner {
|
|
2005
|
+
position: absolute;
|
|
2006
|
+
bottom: 100%;
|
|
2007
|
+
right: 0;
|
|
2008
|
+
margin-bottom: 8px;
|
|
2009
|
+
display: flex;
|
|
2010
|
+
align-items: center;
|
|
2011
|
+
gap: 8px;
|
|
2012
|
+
white-space: nowrap;
|
|
2013
|
+
padding: 8px 14px;
|
|
2014
|
+
border-radius: 8px;
|
|
2015
|
+
background: #18173D;
|
|
2016
|
+
color: #FFFFFF;
|
|
2017
|
+
font-size: 13px;
|
|
2018
|
+
font-weight: 500;
|
|
2019
|
+
line-height: 1;
|
|
2020
|
+
box-shadow: 0px 8px 16px rgba(143, 149, 178, 0.25);
|
|
2021
|
+
pointer-events: none;
|
|
2022
|
+
z-index: 2147483579;
|
|
2023
|
+
}
|
|
2024
|
+
|
|
2025
|
+
.sf-screenshot-capturing-spinner {
|
|
2026
|
+
width: 14px;
|
|
2027
|
+
height: 14px;
|
|
2028
|
+
border: 2px solid rgba(255, 255, 255, 0.35);
|
|
2029
|
+
border-top-color: #FFFFFF;
|
|
2030
|
+
border-radius: 50%;
|
|
2031
|
+
animation: sf-screenshot-spin 0.7s linear infinite;
|
|
2032
|
+
}
|
|
2033
|
+
|
|
2034
|
+
@keyframes sf-screenshot-spin {
|
|
2035
|
+
to {
|
|
2036
|
+
transform: rotate(360deg);
|
|
2037
|
+
}
|
|
2038
|
+
}
|
|
2039
|
+
|
|
2002
2040
|
.toolbar.private-comment-mode {
|
|
2003
2041
|
background: #18173D;
|
|
2004
2042
|
border: 1px solid rgba(230, 232, 236, 0.12);
|
|
@@ -2233,7 +2271,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2233
2271
|
}
|
|
2234
2272
|
|
|
2235
2273
|
.s-presence-avatar-image-small {
|
|
2236
|
-
width: ${
|
|
2274
|
+
width: ${gc(1.6)};
|
|
2237
2275
|
height: auto;
|
|
2238
2276
|
display: block;
|
|
2239
2277
|
}
|
|
@@ -2354,7 +2392,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2354
2392
|
|
|
2355
2393
|
.s-user-avatar-initial {
|
|
2356
2394
|
color: black !important;
|
|
2357
|
-
font-size: ${
|
|
2395
|
+
font-size: ${gc(.8)} !important;
|
|
2358
2396
|
position: relative !important;
|
|
2359
2397
|
}
|
|
2360
2398
|
|
|
@@ -2387,8 +2425,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2387
2425
|
flex-direction: column;
|
|
2388
2426
|
width: max-content;
|
|
2389
2427
|
border-radius: 16px;
|
|
2390
|
-
padding: ${
|
|
2391
|
-
font-size: ${
|
|
2428
|
+
padding: ${gc(3)};
|
|
2429
|
+
font-size: ${gc(.8)};
|
|
2392
2430
|
color: #4c5366;
|
|
2393
2431
|
box-sizing: border-box;
|
|
2394
2432
|
}
|
|
@@ -2403,8 +2441,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2403
2441
|
}
|
|
2404
2442
|
|
|
2405
2443
|
.s-modal img {
|
|
2406
|
-
padding: ${
|
|
2407
|
-
width: ${
|
|
2444
|
+
padding: ${gc(2,1,0,1)};
|
|
2445
|
+
width: ${gc(8)};
|
|
2408
2446
|
}
|
|
2409
2447
|
|
|
2410
2448
|
.s-modal-text h1 {
|
|
@@ -2413,7 +2451,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2413
2451
|
line-height: 32px;
|
|
2414
2452
|
color: #4C5366;
|
|
2415
2453
|
font-style: normal;
|
|
2416
|
-
margin-bottom: ${
|
|
2454
|
+
margin-bottom: ${gc(1)};
|
|
2417
2455
|
}
|
|
2418
2456
|
|
|
2419
2457
|
.s-modal-text p {
|
|
@@ -2429,9 +2467,9 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2429
2467
|
display: flex;
|
|
2430
2468
|
align-items: center;
|
|
2431
2469
|
justify-content: center;
|
|
2432
|
-
padding: ${
|
|
2433
|
-
border-radius: ${
|
|
2434
|
-
font-size: ${
|
|
2470
|
+
padding: ${gc(1,2.5)};
|
|
2471
|
+
border-radius: ${gc(.8)};
|
|
2472
|
+
font-size: ${gc(.8)};
|
|
2435
2473
|
transition: 0.1s ease;
|
|
2436
2474
|
cursor: pointer;
|
|
2437
2475
|
}
|
|
@@ -2444,8 +2482,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2444
2482
|
}
|
|
2445
2483
|
|
|
2446
2484
|
.s-modal-text {
|
|
2447
|
-
gap: ${
|
|
2448
|
-
max-width: ${
|
|
2485
|
+
gap: ${gc(.2)};
|
|
2486
|
+
max-width: ${gc(30)};
|
|
2449
2487
|
text-align: center;
|
|
2450
2488
|
padding-left: 0px;
|
|
2451
2489
|
padding-right: 0px;
|
|
@@ -2499,7 +2537,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2499
2537
|
.s-user-request-tool-button {
|
|
2500
2538
|
display: flex;
|
|
2501
2539
|
align-items: center;
|
|
2502
|
-
gap: ${
|
|
2540
|
+
gap: ${gc(1)};
|
|
2503
2541
|
}
|
|
2504
2542
|
|
|
2505
2543
|
.s-user-request-tool-button svg {
|
|
@@ -2512,7 +2550,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2512
2550
|
.s-more-menu hr {
|
|
2513
2551
|
width: 90%;
|
|
2514
2552
|
border: 0;
|
|
2515
|
-
border-top: ${
|
|
2553
|
+
border-top: ${gc(.01)} solid #D4D6DF;
|
|
2516
2554
|
margin: 8px auto;
|
|
2517
2555
|
}
|
|
2518
2556
|
|
|
@@ -2590,8 +2628,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2590
2628
|
.dropdown-content .menu-point {
|
|
2591
2629
|
display: flex;
|
|
2592
2630
|
align-items: center;
|
|
2593
|
-
gap: ${
|
|
2594
|
-
padding: ${
|
|
2631
|
+
gap: ${gc(.6)};
|
|
2632
|
+
padding: ${gc(.6)};
|
|
2595
2633
|
color: #ababb5;
|
|
2596
2634
|
text-align: left;
|
|
2597
2635
|
font-style: normal;
|
|
@@ -2613,7 +2651,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2613
2651
|
color: #FFCB00;
|
|
2614
2652
|
display: flex;
|
|
2615
2653
|
align-items: center;
|
|
2616
|
-
gap: ${
|
|
2654
|
+
gap: ${gc(.25)};
|
|
2617
2655
|
font-size: 12px;
|
|
2618
2656
|
color: grey;
|
|
2619
2657
|
text-decoration: none;
|
|
@@ -2628,25 +2666,25 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
2628
2666
|
}
|
|
2629
2667
|
|
|
2630
2668
|
.menu-point.header {
|
|
2631
|
-
gap: ${
|
|
2669
|
+
gap: ${gc(.5)};
|
|
2632
2670
|
}
|
|
2633
2671
|
|
|
2634
2672
|
.menu-point-wrap {
|
|
2635
2673
|
display: flex;
|
|
2636
2674
|
flex-direction: column;
|
|
2637
2675
|
color: #ababb5;
|
|
2638
|
-
font-size: ${
|
|
2639
|
-
padding: ${
|
|
2640
|
-
gap: ${
|
|
2676
|
+
font-size: ${gc(.9)};
|
|
2677
|
+
padding: ${gc(0,1,.25,1)};
|
|
2678
|
+
gap: ${gc(.5)};
|
|
2641
2679
|
align-items: flex-start;
|
|
2642
2680
|
width: 100%;
|
|
2643
|
-
line-height: ${
|
|
2681
|
+
line-height: ${gc(1.4)};
|
|
2644
2682
|
|
|
2645
2683
|
color: #4C5366;
|
|
2646
2684
|
}
|
|
2647
2685
|
|
|
2648
2686
|
.user-profile-section {
|
|
2649
|
-
margin-left: ${
|
|
2687
|
+
margin-left: ${gc(.5)};
|
|
2650
2688
|
}
|
|
2651
2689
|
|
|
2652
2690
|
.user-invite-tool-container {
|
|
@@ -3331,7 +3369,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
3331
3369
|
display: none;
|
|
3332
3370
|
}
|
|
3333
3371
|
}
|
|
3334
|
-
`,
|
|
3372
|
+
`,od=r`
|
|
3335
3373
|
:host {
|
|
3336
3374
|
display: flex;
|
|
3337
3375
|
justify-content: center;
|
|
@@ -3846,7 +3884,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
3846
3884
|
padding: var(--superflow-spacing-lg, 20px);
|
|
3847
3885
|
}
|
|
3848
3886
|
}
|
|
3849
|
-
`;var
|
|
3887
|
+
`;var nd,sd=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};!function(t){t.Admin="Admin",t.Commenter="Commenter"}(nd||(nd={}));let rd=class extends Q{constructor(){super(...arguments),this.apiKey="",this.documentId="",this.disableInvite=!1,this.hasInviteAccess=!0,this.userSeatsExhausted=!1,this.userType=nd.Admin,this.showCheckIcon=!1,this.contactListIsHovered=!1,this.invalidEmail=!1,this.isEmailValid=!1,this.inviting=!1,this.searchingUsers=!1,this.emailInput="",this.emailTags=[],this.editingTag=null,this.editingInput="",this.duplicateEmail="",this.filteredContacts=[],this.searchDebounceTimer=null,this.handleOutsideClick=t=>{try{t.target===this&&this.close()}catch(t){console.error("Error in handleOutsideClick:",t)}}}connectedCallback(){try{super.connectedCallback(),document.addEventListener("click",this.handleOutsideClick),this.userSeatsExhausted&&this.userType===nd.Admin&&(this.userType=nd.Commenter)}catch(t){console.error("Error in connectedCallback:",t)}}willUpdate(t){t.has("userSeatsExhausted")&&this.userSeatsExhausted&&this.userType===nd.Admin&&(this.userType=nd.Commenter)}disconnectedCallback(){try{super.disconnectedCallback(),document.removeEventListener("click",this.handleOutsideClick),this.searchDebounceTimer&&clearTimeout(this.searchDebounceTimer)}catch(t){console.error("Error in disconnectedCallback:",t)}}close(){try{this.dispatchEvent(new CustomEvent("superflow-invite-modal-close",{bubbles:!0,composed:!0}))}catch(t){console.error("Error in close:",t)}}validateEmail(t){try{const e=t.replace(/,/g,"").toLowerCase().trim();if(this.emailTags.some((t=>t.email===e)))return this.duplicateEmail=e,!1;if(this.duplicateEmail="",e.includes(" "))return!1;return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}catch(t){return console.error("Error in validateEmail:",t),!1}}async searchUser(t=""){try{if(this.searchDebounceTimer&&clearTimeout(this.searchDebounceTimer),!t.trim())return this.filteredContacts=[],void(this.searchingUsers=!1);this.filteredContacts=[],this.searchingUsers=!1}catch(t){console.error("Error in searchUser:",t),this.searchingUsers=!1}}handleEmailChange(t){try{const e=t.target;this.emailInput=e.value,this.isEmailValid=this.validateEmail(e.value),this.searchUser(e.value)}catch(t){console.error("Error in handleEmailChange:",t)}}handleKeyUp(t){try{if(!this.emailInput)return this.invalidEmail=!1,void(this.isEmailValid=!1);if("Backspace"===t.code)return void(this.invalidEmail=!1);if("Enter"!==t.code&&"Comma"!==t.code)return;const e=this.emailInput.replace(/,/g,"").trim();if(!e)return;this.validateEmail(e)?(this.addEmailTag(e),this.emailInput="",this.invalidEmail=!1):(this.invalidEmail=!0,setTimeout((()=>{this.invalidEmail=!1}),1500))}catch(t){console.error("Error in handleKeyUp:",t)}}handlePaste(t){var e,i;try{t.preventDefault();const o=((null===(e=t.clipboardData)||void 0===e?void 0:e.getData("text"))||"").split(/[,\n|;]/).map((t=>t.trim())).filter((t=>t.length>0));let n=!1;o.forEach((t=>{this.emailTags.some((e=>e.email===t))?(this.duplicateEmail=t,this.emailInput=t,n=!0):this.validateEmail(t)?this.addEmailTag(t):(n=!0,this.emailInput=t)})),n&&(this.invalidEmail=!0,setTimeout((()=>{this.invalidEmail=!1}),1500)),null===(i=this.mainInput)||void 0===i||i.focus()}catch(t){console.error("Error in handlePaste:",t)}}addEmailTag(t){var e;try{if(!t)return;if(!this.validateEmail(t))return void(this.invalidEmail=!this.duplicateEmail);this.emailTags=[...this.emailTags,{name:"",email:t.toLowerCase().trim(),type:this.userType}],this.invalidEmail=!1,this.duplicateEmail="",this.emailInput="",this.contactListIsHovered=!1,null===(e=this.mainInput)||void 0===e||e.focus()}catch(t){console.error("Error in addEmailTag:",t)}}removeTag(t,e){var i;try{e.stopPropagation(),this.emailTags=this.emailTags.filter((e=>e.email!==t.email)),0===this.emailTags.length&&(this.isEmailValid=!1),null===(i=this.mainInput)||void 0===i||i.focus()}catch(e){console.error("Error in removeTag:",e)}}startEditingTag(t,e){try{e.stopPropagation(),this.editingTag=t,this.editingInput=t.email,setTimeout((()=>{var t;null===(t=this.editInput)||void 0===t||t.focus()}),100)}catch(e){console.error("Error in startEditingTag:",e)}}handleEditKeyUp(t){try{if("Enter"!==t.code&&"Escape"!==t.code)return;"Enter"===t.code&&this.editingInput&&this.validateEmail(this.editingInput)?this.updateEmailTag():this.cancelEmailTagEdit()}catch(t){console.error("Error in handleEditKeyUp:",t)}}updateEmailTag(){try{if(!this.editingTag||!this.validateEmail(this.editingInput))return void this.cancelEmailTagEdit();const t=this.emailTags.findIndex((t=>{var e;return t.email===(null===(e=this.editingTag)||void 0===e?void 0:e.email)}));if(-1===t)return void this.cancelEmailTagEdit();this.emailTags=[...this.emailTags.slice(0,t),{...this.editingTag,email:this.editingInput.toLowerCase().trim(),type:this.userType},...this.emailTags.slice(t+1)],this.cancelEmailTagEdit()}catch(t){console.error("Error in updateEmailTag:",t)}}cancelEmailTagEdit(){var t;try{this.editingTag=null,this.editingInput="",null===(t=this.mainInput)||void 0===t||t.focus()}catch(t){console.error("Error in cancelEmailTagEdit:",t)}}async copyReviewLink(){try{let t=window.location.href;const e=new URL(t);e.searchParams.has("review")&&"true"===e.searchParams.get("review")||(e.searchParams.set("review","true"),t=e.toString()),await navigator.clipboard.writeText(t),this.showCheckIcon=!0,setTimeout((()=>{this.showCheckIcon=!1}),2e3)}catch(t){console.error("Error copying review link:",t)}}setUserType(t){try{this.userType=t,this.emailTags=this.emailTags.map((t=>({...t,type:this.userType})))}catch(t){console.error("Error in setUserType:",t)}}async sendInvites(){try{if(this.disableInvite)return void this.dispatchEvent(new CustomEvent("superflow-invite-modal-invite-clicked",{detail:this.emailTags.map((t=>({email:t.email,type:t.type}))),bubbles:!0,composed:!0}));if(""!==this.emailInput.trim()&&this.isEmailValid&&(this.emailTags=[...this.emailTags,{name:"",email:this.emailInput.toLowerCase().trim(),type:this.userType}]),this.emailInput="",this.inviting=!0,this.userType===nd.Commenter)await this.addCommenter();else{if(this.userType!==nd.Admin)throw new Error("No User Type Selected");await this.addAdmin()}this.inviting=!1,this.close()}catch(t){console.error("Error sending invites:",t),this.inviting=!1}}async addAdmin(){try{if(0===this.emailTags.length)throw new Error("No email tags");const t=this.emailTags.map((t=>({email:t.email})));if(!await Wc(this.apiKey,t))throw new Error("Failed to add admin users");this.dispatchEvent(new CustomEvent("superflow-invite-modal-invite-success",{detail:{users:t,type:"admin"},bubbles:!0,composed:!0}))}catch(t){throw console.error("Error adding admin:",t),t}}async addCommenter(){try{if(!this.emailTags.length)throw new Error("No email tags");const t=this.emailTags.map((t=>({email:t.email})));if(!await Gc(this.apiKey,this.documentId,t))throw new Error("Failed to add commenter users");this.dispatchEvent(new CustomEvent("superflow-invite-modal-invite-success",{detail:{users:t,type:"commenter"},bubbles:!0,composed:!0}))}catch(t){throw console.error("Error adding commenter:",t),t}}upgradeToInvite(){try{this.dispatchEvent(new CustomEvent("superflow-invite-modal-upgrade-clicked",{bubbles:!0,composed:!0}))}catch(t){console.error("Error in upgradeToInvite:",t)}}render(){var t;const e=this.emailInput.length>0&&(this.mainInput===(null===(t=this.shadowRoot)||void 0===t?void 0:t.activeElement)||this.contactListIsHovered);return L`
|
|
3850
3888
|
<div class="share-modal">
|
|
3851
3889
|
<div class="share-modal-content">
|
|
3852
3890
|
<div class="share-modal-header ${dt({locked:!this.hasInviteAccess})}">
|
|
@@ -3964,8 +4002,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
3964
4002
|
.value=${this.userType}
|
|
3965
4003
|
@change=${t=>this.setUserType(t.target.value)}
|
|
3966
4004
|
>
|
|
3967
|
-
${this.userSeatsExhausted?"":L`<option value="${
|
|
3968
|
-
<option value="${
|
|
4005
|
+
${this.userSeatsExhausted?"":L`<option value="${nd.Admin}">Admin</option>`}
|
|
4006
|
+
<option value="${nd.Commenter}">Guest</option>
|
|
3969
4007
|
</select>
|
|
3970
4008
|
</div>
|
|
3971
4009
|
</div>
|
|
@@ -4017,7 +4055,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4017
4055
|
</div>
|
|
4018
4056
|
</div>
|
|
4019
4057
|
</div>
|
|
4020
|
-
`}};
|
|
4058
|
+
`}};rd.styles=od,sd([it({type:String})],rd.prototype,"apiKey",void 0),sd([it({type:String})],rd.prototype,"documentId",void 0),sd([it({type:Boolean})],rd.prototype,"disableInvite",void 0),sd([it({type:Boolean})],rd.prototype,"hasInviteAccess",void 0),sd([it({type:Boolean})],rd.prototype,"userSeatsExhausted",void 0),sd([ot()],rd.prototype,"userType",void 0),sd([ot()],rd.prototype,"showCheckIcon",void 0),sd([ot()],rd.prototype,"contactListIsHovered",void 0),sd([ot()],rd.prototype,"invalidEmail",void 0),sd([ot()],rd.prototype,"isEmailValid",void 0),sd([ot()],rd.prototype,"inviting",void 0),sd([ot()],rd.prototype,"searchingUsers",void 0),sd([ot()],rd.prototype,"emailInput",void 0),sd([ot()],rd.prototype,"emailTags",void 0),sd([ot()],rd.prototype,"editingTag",void 0),sd([ot()],rd.prototype,"editingInput",void 0),sd([ot()],rd.prototype,"duplicateEmail",void 0),sd([ot()],rd.prototype,"filteredContacts",void 0),sd([nt("#mainInput")],rd.prototype,"mainInput",void 0),sd([nt("#editInput")],rd.prototype,"editInput",void 0),rd=sd([tt("superflow-invite-modal")],rd);const ad=r`
|
|
4021
4059
|
:host {
|
|
4022
4060
|
display: block;
|
|
4023
4061
|
font-family: 'Poppins', sans-serif;
|
|
@@ -4459,7 +4497,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4459
4497
|
.cws-list::-webkit-scrollbar-thumb:hover {
|
|
4460
4498
|
background: #9CA3AF;
|
|
4461
4499
|
}
|
|
4462
|
-
`;var ld=function(t,e,i,
|
|
4500
|
+
`;var ld=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};let cd=class extends Q{constructor(){super(...arguments),this.agentGroups=[],this.currentPageUrl="",this.openAccordions=new Set,this.currentView="agents",this.selectedAgentId="",this.getSelectedAgentGroup=()=>{var t;try{return null===(t=this.agentGroups)||void 0===t?void 0:t.find((t=>(null==t?void 0:t.agentId)===this.selectedAgentId))}catch(t){return void console.warn("Error in getSelectedAgentGroup: ",t)}},this.onAgentClick=t=>{try{this.selectedAgentId=t,this.currentView="agent-detail",this.autoOpenCurrentPageAccordion(t)}catch(t){console.warn("Error in onAgentClick: ",t)}},this.autoOpenCurrentPageAccordion=t=>{var e;try{const i=null===(e=this.agentGroups)||void 0===e?void 0:e.find((e=>(null==e?void 0:e.agentId)===t));if(!i)return;const o=this.groupWarningsByPage(i.warnings),n=null==o?void 0:o.find((t=>null==t?void 0:t.isCurrentPage));this.openAccordions=new Set,(null==n?void 0:n.pageUrl)&&this.openAccordions.add(n.pageUrl)}catch(t){console.warn("Error in autoOpenCurrentPageAccordion: ",t)}},this.onBackClick=()=>{try{this.currentView="agents",this.selectedAgentId=""}catch(t){console.warn("Error in onBackClick: ",t)}},this.onWarningRowClick=t=>{var e;try{const i=null===(e=null==t?void 0:t.annotations)||void 0===e?void 0:e[0];if(!i)return;this.dispatchEvent(new CustomEvent("content-warning-item-click",{bubbles:!0,composed:!0,detail:{annotation:i}}))}catch(t){console.warn("Error in onWarningRowClick: ",t)}},this.onAddAllSuggestions=t=>{try{this.dispatchEvent(new CustomEvent("content-warning-sidebar-add-all",{bubbles:!0,composed:!0,detail:{agentId:t}}))}catch(t){console.warn("Error in onAddAllSuggestions: ",t)}},this.onCloseClick=()=>{try{this.dispatchEvent(new CustomEvent("content-warning-sidebar-close",{bubbles:!0,composed:!0}))}catch(t){console.warn("Error in onCloseClick: ",t)}},this.normalizeUrlForGrouping=t=>{try{if(!t)return"";const e="false"!==localStorage.getItem("sfNormalizeParams");let i=t;if(null==t?void 0:t.startsWith("/"))e&&(i=t.split("?")[0].split("#")[0]);else{const o=new URL(t);i=e?(null==o?void 0:o.pathname)||"/":(null==o?void 0:o.pathname)+((null==o?void 0:o.search)||"")+((null==o?void 0:o.hash)||"")}return(null==i?void 0:i.startsWith("/"))?i.substring(1):i}catch{const e=t||"";return(null==e?void 0:e.startsWith("/"))?e.substring(1):e}},this.groupWarningsByPage=t=>{var e,i,o,n,s,r;try{const a=new Map;for(const l of t){if(!(null===(e=null==l?void 0:l.pageUrls)||void 0===e?void 0:e.length)){const t="__unknown__";a.has(t)||a.set(t,{displayUrl:"__unknown__",warnings:[]}),null===(o=null===(i=a.get(t))||void 0===i?void 0:i.warnings)||void 0===o||o.push(l);continue}const t=new Map;for(const e of l.pageUrls){const i=this.normalizeUrlForGrouping(e);t.has(i)||t.set(i,e)}for(const[e,i]of t){const t=(null===(n=l.annotations)||void 0===n?void 0:n.filter((t=>{var i,o,n;const s=(null===(i=null==t?void 0:t.pageInfo)||void 0===i?void 0:i.url)||(null===(o=null==t?void 0:t.location)||void 0===o?void 0:o.url)||(null===(n=null==t?void 0:t.agent)||void 0===n?void 0:n.url)||"";return this.normalizeUrlForGrouping(s)===e})))||[];if(0===t.length)continue;const o={...l,occurrences:t.length,annotations:t};a.has(e)||a.set(e,{displayUrl:i,warnings:[]}),null===(r=null===(s=a.get(e))||void 0===s?void 0:s.warnings)||void 0===r||r.push(o)}}const l=[],c=this.normalizeUrlForGrouping(this.currentPageUrl);for(const[t,{displayUrl:e,warnings:i}]of a){const o="__unknown__"===t?"Unknown":t;l.push({pageUrl:e,pagePath:o,isCurrentPage:t===c&&"__unknown__"!==t,warnings:i})}return l.sort(((t,e)=>{var i;return(null==t?void 0:t.isCurrentPage)?-1:(null==e?void 0:e.isCurrentPage)?1:null===(i=null==t?void 0:t.pagePath)||void 0===i?void 0:i.localeCompare(null==e?void 0:e.pagePath)})),l}catch(t){return console.warn("Error in groupWarningsByPage: ",t),[]}},this.toggleAccordion=t=>{try{const e=new Set(this.openAccordions);e.has(t)?e.delete(t):e.add(t),this.openAccordions=e}catch(t){console.warn("Error in toggleAccordion: ",t)}},this.renderWarningIcon=()=>{try{return L`
|
|
4463
4501
|
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
4464
4502
|
<path d="M12.0003 10.2329V13.8332M12.0003 16.5334H12.0093M10.5268 5.36441L3.23087 17.546C3.08046 17.8064 3.00087 18.1017 3.00001 18.4025C2.99915 18.7033 3.07705 18.999 3.22596 19.2604C3.37487 19.5217 3.5896 19.7395 3.8488 19.8921C4.108 20.0446 4.40263 20.1267 4.70338 20.1301H19.2971C19.5978 20.1266 19.8922 20.0445 20.1513 19.892C20.4104 19.7395 20.625 19.5218 20.7739 19.2606C20.9228 18.9994 21.0007 18.7038 21 18.4032C20.9992 18.1025 20.9198 17.8073 20.7697 17.5469L13.4737 5.36351C13.3202 5.11015 13.1039 4.90064 12.8458 4.75524C12.5877 4.60984 12.2965 4.53345 12.0003 4.53345C11.704 4.53345 11.4128 4.60984 11.1547 4.75524C10.8966 4.90064 10.6803 5.11015 10.5268 5.36351V5.36441Z" stroke="#E69422" stroke-width="1.80014" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4465
4503
|
</svg>
|
|
@@ -4489,7 +4527,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4489
4527
|
<svg class="cws-accordion-chevron ${dt({open:t})}" width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
4490
4528
|
<path d="M6 9L12 15L18 9" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4491
4529
|
</svg>
|
|
4492
|
-
`}catch(t){return console.warn("Error in renderAccordionChevron: ",t),L``}},this.renderGroupedListView=(t,e,i,n
|
|
4530
|
+
`}catch(t){return console.warn("Error in renderAccordionChevron: ",t),L``}},this.renderGroupedListView=(t,e,i,o,n="No issues found")=>{try{const s=this.groupWarningsByPage(e);return L`
|
|
4493
4531
|
<div class="cws-header">
|
|
4494
4532
|
<div class="cws-header-left">
|
|
4495
4533
|
${this.renderBackIcon()}
|
|
@@ -4501,7 +4539,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4501
4539
|
</div>
|
|
4502
4540
|
<div class="cws-divider"></div>
|
|
4503
4541
|
<div class="cws-list">
|
|
4504
|
-
${(null==e?void 0:e.length)>0?
|
|
4542
|
+
${(null==e?void 0:e.length)>0?s.map(((t,e)=>{var o,n;const r=null===(o=this.openAccordions)||void 0===o?void 0:o.has(null==t?void 0:t.pageUrl);return L`
|
|
4505
4543
|
<div class="cws-page-group">
|
|
4506
4544
|
<div class="cws-page-header" @click=${()=>this.toggleAccordion(null==t?void 0:t.pageUrl)}>
|
|
4507
4545
|
<div class="cws-page-header-left">
|
|
@@ -4510,20 +4548,20 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4510
4548
|
${null==t?void 0:t.pagePath}${(null==t?void 0:t.isCurrentPage)?L` <span class="cws-current-page-label">(This Page)</span>`:""}
|
|
4511
4549
|
</span>
|
|
4512
4550
|
</div>
|
|
4513
|
-
${this.renderAccordionChevron(
|
|
4551
|
+
${this.renderAccordionChevron(r)}
|
|
4514
4552
|
</div>
|
|
4515
|
-
${
|
|
4553
|
+
${r?L`
|
|
4516
4554
|
<div class="cws-page-warnings">
|
|
4517
|
-
${null===(
|
|
4555
|
+
${null===(n=null==t?void 0:t.warnings)||void 0===n?void 0:n.map((t=>i(t)))}
|
|
4518
4556
|
</div>
|
|
4519
4557
|
`:""}
|
|
4520
4558
|
</div>
|
|
4521
|
-
${e<(null==
|
|
4522
|
-
`})):L`<div class="cws-empty-state"><span>${
|
|
4559
|
+
${e<(null==s?void 0:s.length)-1?L`<div class="cws-group-divider"></div>`:""}
|
|
4560
|
+
`})):L`<div class="cws-empty-state"><span>${n}</span></div>`}
|
|
4523
4561
|
</div>
|
|
4524
4562
|
${(null==e?void 0:e.length)>0?L`
|
|
4525
4563
|
<!-- <div class="cws-footer">
|
|
4526
|
-
<button class="cws-add-all-button" @click=${()=>this.onAddAllSuggestions(
|
|
4564
|
+
<button class="cws-add-all-button" @click=${()=>this.onAddAllSuggestions(o)}>
|
|
4527
4565
|
Add All Suggestions
|
|
4528
4566
|
</button>
|
|
4529
4567
|
</div> -->
|
|
@@ -4579,21 +4617,21 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4579
4617
|
<div class="cws-panel">
|
|
4580
4618
|
${"agents"===this.currentView?this.renderAgentsView():this.renderAgentDetailView()}
|
|
4581
4619
|
</div>
|
|
4582
|
-
`}catch(t){return console.warn("Error in render: ",t),L``}}};cd.styles=ad,ld([it({type:Array})],cd.prototype,"agentGroups",void 0),ld([it({type:String})],cd.prototype,"currentPageUrl",void 0),ld([nt()],cd.prototype,"openAccordions",void 0),ld([nt()],cd.prototype,"currentView",void 0),ld([nt()],cd.prototype,"selectedAgentId",void 0),cd=ld([tt("content-warning-sidebar")],cd);var dd=Object.defineProperty,ud=(t,e)=>()=>(t&&(e=t(t=0)),e),hd=(t,e)=>{for(var i in e)dd(t,i,{get:e[i],enumerable:!0})};var pd,fd,vd=ud((()=>{pd=class extends Map{constructor(t=100,...e){super(...e),this._maxSize=t}set(t,e){if(this.size>=this._maxSize&&!this.has(t)){let t=this.keys().next().value;void 0!==t&&this.delete(t)}return super.set(t,e)}},fd={image:new pd(100),background:new pd(100),resource:new pd(150),defaultStyle:new pd(30),baseStyle:new pd(50),computedStyle:new WeakMap,measureHints:new WeakMap,font:new Set,session:{styleMap:new Map,styleCache:new WeakMap,nodeMap:new Map}}}));function md(t){let e=t.match(/url\((['"]?)(.*?)(\1)\)/);if(!e)return null;let i=e[2].trim();return i.startsWith("#")?null:i}function gd(t){if(/%[0-9A-Fa-f]{2}/.test(t))return t;try{return encodeURI(t)}catch{return t}}var wd=ud((()=>{}));function yd(t,e){if(!e||function(t){return/^data:|^blob:|^about:blank$/i.test(t)}(t)||function(t,e){try{let i=typeof location<"u"&&location.href?location.href:"http://localhost/",n=e.includes("{url}")?e.split("{url}")[0]:e,o=new URL(n||".",i),r=new URL(t,i);if(r.origin===o.origin)return!0;let s=r.searchParams;if(s&&(s.has("url")||s.has("target")))return!0}catch{}return!1}(t,e))return!1;try{let e=typeof location<"u"&&location.href?location.href:"http://localhost/",i=new URL(t,e);return!(typeof location<"u")||i.origin!==location.origin}catch{return!!e}}function bd(t){return new Promise(((e,i)=>{let n=new FileReader;n.onload=()=>e(String(n.result||"")),n.onerror=()=>i(new Error("read_failed")),n.readAsDataURL(t)}))}async function Cd(t,e={}){let i=e.as??"blob",n=e.timeout??3e3,o=e.useProxy||"",r=e.errorTTL??8e3,s=e.headers||{},a=!!e.silent;if(/^data:/i.test(t))try{if("text"===i)return{ok:!0,data:String(t),status:200,url:t,fromCache:!1};if("dataURL"===i)return{ok:!0,data:String(t),status:200,url:t,fromCache:!1,mime:String(t).slice(5).split(";")[0]||""};let[,e="",n=""]=String(t).match(/^data:([^,]*),(.*)$/)||[],o=/;base64/i.test(e)?atob(n):decodeURIComponent(n),r=new Uint8Array([...o].map((t=>t.charCodeAt(0)))),s=new Blob([r],{type:(e||"").split(";")[0]||""});return{ok:!0,data:s,status:200,url:t,fromCache:!1,mime:s.type||""}}catch{return{ok:!1,data:null,status:0,url:t,fromCache:!1,reason:"special_url_error"}}if(/^blob:/i.test(t))try{let e=await fetch(t);if(!e.ok)return{ok:!1,data:null,status:e.status,url:t,fromCache:!1,reason:"http_error"};let n=await e.blob(),o=n.type||e.headers.get("content-type")||"";return"dataURL"===i?{ok:!0,data:await bd(n),status:e.status,url:t,fromCache:!1,mime:o}:"text"===i?{ok:!0,data:await n.text(),status:e.status,url:t,fromCache:!1,mime:o}:{ok:!0,data:n,status:e.status,url:t,fromCache:!1,mime:o}}catch{return{ok:!1,data:null,status:0,url:t,fromCache:!1,reason:"network"}}if(/^about:blank$/i.test(t))return"dataURL"===i?{ok:!0,data:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg==",status:200,url:t,fromCache:!1,mime:"image/png"}:{ok:!0,data:"text"===i?"":new Blob([]),status:200,url:t,fromCache:!1};let l=function(t,e){return[e.as||"blob",e.timeout??3e3,e.useProxy||"",e.errorTTL??8e3,t].join("|")}(t,{as:i,timeout:n,useProxy:o,errorTTL:r}),c=Ed.get(l);if(c&&c.until>Date.now())return{...c.result,fromCache:!0};c&&Ed.delete(l);let d=kd.get(l);if(d)return d;let u=yd(t,o)?function(t,e){if(!e)return t;if(e.includes("{url}"))return e.replace("{urlRaw}",gd(t)).replace("{url}",encodeURIComponent(t));if(/[?&]url=?$/.test(e))return`${e}${encodeURIComponent(t)}`;if(e.endsWith("?"))return`${e}url=${encodeURIComponent(t)}`;if(e.endsWith("/"))return`${e}${gd(t)}`;let i=e.includes("?")?"&":"?";return`${e}${i}url=${encodeURIComponent(t)}`}(t,o):t,h=e.credentials;if(!h)try{let e=typeof location<"u"&&location.href?location.href:"http://localhost/",i=new URL(t,e);h=typeof location<"u"&&i.origin===location.origin?"include":"omit"}catch{h="omit"}let p=new AbortController,f=setTimeout((()=>p.abort("timeout")),n),v=(async()=>{try{let n=await fetch(u,{signal:p.signal,credentials:h,headers:s});if(!n.ok){let o={ok:!1,data:null,status:n.status,url:u,fromCache:!1,reason:"http_error"};if(r>0&&Ed.set(l,{until:Date.now()+r,result:o}),!a){let e=`${n.status} ${n.statusText||""}`.trim();xd.warnOnce(`http:${n.status}:${i}:${new URL(t,location?.href??"http://localhost/").origin}`,`HTTP error ${e} while fetching ${i} ${t}`)}return e.onError&&e.onError(o),o}if("text"===i)return{ok:!0,data:await n.text(),status:n.status,url:u,fromCache:!1};let o=await n.blob(),c=o.type||n.headers.get("content-type")||"";return"dataURL"===i?{ok:!0,data:await bd(o),status:n.status,url:u,fromCache:!1,mime:c}:{ok:!0,data:o,status:n.status,url:u,fromCache:!1,mime:c}}catch(o){let s=o&&"object"==typeof o&&"name"in o&&"AbortError"===o.name?String(o.message||"").includes("timeout")?"timeout":"abort":"network",c={ok:!1,data:null,status:0,url:u,fromCache:!1,reason:s};if(!/^blob:/i.test(t)&&r>0&&Ed.set(l,{until:Date.now()+r,result:c}),!a){let e=`${s}:${i}:${new URL(t,location?.href??"http://localhost/").origin}`,o="timeout"===s?`Timeout after ${n}ms. Consider increasing timeout or using a proxy for ${t}`:"abort"===s?`Request aborted while fetching ${i} ${t}`:`Network/CORS issue while fetching ${i} ${t}. A proxy may be required`;xd.errorOnce(e,o)}return e.onError&&e.onError(c),c}finally{clearTimeout(f),kd.delete(l)}})();return kd.set(l,v),v}var xd,kd,Ed,Sd=ud((()=>{wd(),xd=function(t="[snapDOM]",{ttlMs:e=3e5,maxEntries:i=12}={}){let n=new Map,o=0;function r(r,s,a){if(o>=i)return;let l=Date.now();(n.get(s)||0)>l||(n.set(s,l+e),o++,"warn"===r&&console&&console.warn?console.warn(`${t} ${a}`):console&&console.error&&console.error(`${t} ${a}`))}return{warnOnce(t,e){r("warn",t,e)},errorOnce(t,e){r("error",t,e)},reset(){n.clear(),o=0}}}("[snapDOM]",{ttlMs:18e4,maxEntries:10}),kd=new Map,Ed=new Map}));async function Md(t,e={}){if(/^((repeating-)?(linear|radial|conic)-gradient)\(/i.test(t)||"none"===t.trim())return t;let i=md(t);if(!i)return t;let n=function(t,e){if(!t||/^(data|blob|about|#)/i.test(t.trim()))return t;try{let i=e||typeof document<"u"&&(document.baseURI||document.location?.href)||"http://localhost/";return new URL(t,i).href}catch{return t}}(i),o=gd(n),r=(e.useProxy||"")+"|"+o;if(fd.background.has(r)){let t=fd.background.get(r);return t?`url("${t}")`:"none"}try{let t=await Cd(o,{as:"dataURL",useProxy:e.useProxy});return t.ok?(fd.background.set(r,t.data),`url("${t.data}")`):(fd.background.set(r,null),"none")}catch{return fd.background.set(r,null),"none"}}var $d=ud((()=>{vd(),wd(),Sd()}));function Td(t){let e=String(t).toLowerCase();return!!(Pd.has(e)||Dd.test(e)||Fd.test(e))}function Id(t,e){if(e=String(e||"").toLowerCase(),Od.has(e))return"";let i=[],n=function(t){if(t=String(t).toLowerCase(),Od.has(t)){let e={};return fd.defaultStyle.set(t,e),e}if(fd.defaultStyle.has(t))return fd.defaultStyle.get(t);let e=document.getElementById("snapdom-sandbox");e||(e=document.createElement("div"),e.id="snapdom-sandbox",e.setAttribute("data-snapdom-sandbox","true"),e.setAttribute("aria-hidden","true"),e.style.position="absolute",e.style.left="-9999px",e.style.top="-9999px",e.style.width="0px",e.style.height="0px",e.style.overflow="hidden",document.body.appendChild(e));let i=document.createElement(t);i.style.all="initial",e.appendChild(i);let n=getComputedStyle(i),o={};for(let t of n){if(Td(t))continue;let e=n.getPropertyValue(t);o[t]=e}return e.removeChild(i),fd.defaultStyle.set(t,o),o}(e),o="inline"===(t.display||"").toLowerCase(),r=new Set(["span","small","em","strong","b","i","u","s","code","cite","mark","sub","sup"]),s=new Set(["table","thead","tbody","tfoot","tr","td","th"]),a=o||r.has(e)||s.has(e),l=t=>"width"===t||"min-width"===t||"max-width"===t||"inline-size"===t||"min-inline-size"===t||"max-inline-size"===t;for(let[e,o]of Object.entries(t)){if(Td(e)||a&&l(e))continue;let t=n[e];o&&o!==t&&i.push(`${e}:${o}`)}return i.sort(),i.join(";")}function _d(t,e=null){let i=()=>{let t={length:0,getPropertyValue:()=>"",item:()=>""};return t[Symbol.iterator]=function*(){},t};if(!(t instanceof Element)){let n=typeof window<"u"?window:null;if(n&&"function"==typeof n.getComputedStyle)try{return n.getComputedStyle(t,e)||i()}catch{return i()}return i()}let n=fd.computedStyle.get(t);n||(n=new Map,fd.computedStyle.set(t,n));let o=n.get(e);if(!o){let r=function(t){try{let e=t?.ownerDocument;if(!e)return typeof window<"u"?window:null;let i=e.defaultView;if(i&&"function"==typeof i.getComputedStyle)return i;if(typeof window<"u"&&window.frames)for(let t=0;t<window.frames.length;t++)try{if(window.frames[t]?.document===e)return window.frames[t]}catch{}}catch{}return typeof window<"u"?window:null}(t),s=null;try{s=r&&"function"==typeof r.getComputedStyle?r.getComputedStyle(t,e):null}catch{}if(!s&&typeof window<"u"&&"function"==typeof window.getComputedStyle)try{t.ownerDocument===document&&(s=window.getComputedStyle(t,e))}catch{}o=s||i(),n.set(e,o)}return o}function Nd(t){let e={};for(let i of t)e[i]=t.getPropertyValue(i);for(let t of Rd){let i=e[`border-${t}-style`],n=e[`border-${t}-width`];("none"===i||"hidden"===i||"0px"===n)&&(delete e[`border-${t}-style`],delete e[`border-${t}-width`],delete e[`border-${t}-color`])}return e}function Ad(t){let e=[],i=0,n=0;for(let o=0;o<t.length;o++){let r=t[o];"("===r&&i++,")"===r&&i--,","===r&&0===i&&(e.push(t.slice(n,o).trim()),n=o+1)}return e.push(t.slice(n).trim()),e}var Ld,Od,Fd,Dd,Pd,Rd,jd=ud((()=>{vd(),Ld=new Set(["meta","script","noscript","title","link","template"]),Od=new Set(["meta","link","style","title","noscript","script","template","g","defs","use","marker","mask","clipPath","pattern","path","polygon","polyline","line","circle","ellipse","rect","filter","lineargradient","radialgradient","stop"]),Fd=/(?:^|-)(animation|transition)(?:-|$)/i,Dd=/^(--.+|view-timeline|scroll-timeline|animation-trigger|offset-|position-try|app-region|interactivity|overlay|view-transition|-webkit-locale|-webkit-user-(?:drag|modify)|-webkit-tap-highlight-color|-webkit-text-security)$/i,Pd=new Set(["cursor","pointer-events","touch-action","user-select","print-color-adjust","speak","reading-flow","reading-order","anchor-name","anchor-scope","container-name","container-type","timeline-scope","zoom"]),Rd=["top","right","bottom","left"]}));function Vd(t,{fast:e=!1}={}){if(e)return t();"requestIdleCallback"in window?requestIdleCallback(t,{timeout:50}):setTimeout(t,1)}function Ud(){if(typeof navigator>"u")return!1;let t=navigator.userAgent||"",e=t.toLowerCase(),i=e.includes("safari")&&!e.includes("chrome")&&!e.includes("crios")&&!e.includes("fxios")&&!e.includes("android"),n=/applewebkit/i.test(t),o=/mobile/i.test(t),r=!/safari/i.test(t),s=n&&o&&r,a=/(micromessenger|wxwork|wecom|windowswechat|macwechat)/i.test(t),l=/(baiduboxapp|baidubrowser|baidusearch|baiduboxlite)/i.test(e),c=/ipad|iphone|ipod/.test(e)&&n;return i||s||a||l||c}var zd=ud((()=>{}));function Bd(t,e,i){let n=t&&"object"==typeof t&&(t.options||t);n&&n.debug&&(void 0!==i?console.warn("[snapdom]",e,i):console.warn("[snapdom]",e))}var Hd=ud((()=>{})),Wd=ud((()=>{$d(),jd(),zd(),wd(),Hd()})),Gd={};function Kd(t){return"string"==typeof t&&/^data:image\/svg\+xml/i.test(t)}function Zd(t){let e=t.indexOf(",");return e>=0?decodeURIComponent(t.slice(e+1)):""}function Yd(t){return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(t)}`}function Jd(t){let e=function(t){let e=[],i="",n=0;for(let o=0;o<t.length;o++){let r=t[o];"("===r&&n++,")"===r&&(n=Math.max(0,n-1)),";"===r&&0===n?(e.push(i),i=""):i+=r}return i.trim()&&e.push(i),e.map((t=>t.trim())).filter(Boolean)}(t),i=null,n=null,o=null,r=[];for(let t of e){let e=t.indexOf(":");if(e<0)continue;let s=t.slice(0,e).trim().toLowerCase(),a=t.slice(e+1).trim();"box-shadow"===s?o=a:"filter"===s?i=a:"-webkit-filter"===s?n=a:r.push([s,a])}if(o){let t=function(t){let e=[],i="",n=0;for(let o=0;o<t.length;o++){let r=t[o];"("===r&&n++,")"===r&&(n=Math.max(0,n-1)),","===r&&0===n?(e.push(i.trim()),i=""):i+=r}i.trim()&&e.push(i.trim());let o=[];for(let t of e){if(/\binset\b/i.test(t))continue;let e=t.match(/-?\d+(?:\.\d+)?px/gi)||[],[i="0px",n="0px",r="0px"]=e,s=t.replace(/-?\d+(?:\.\d+)?px/gi,"").replace(/\binset\b/gi,"").trim().replace(/\s{2,}/g," "),a=!!s&&","!==s;o.push(`drop-shadow(${i} ${n} ${r}${a?` ${s}`:""})`)}return o.join(" ")}(o);t&&(i=i?`${i} ${t}`:t,n=n?`${n} ${t}`:t)}let s=[...r];return i&&s.push(["filter",i]),n&&s.push(["-webkit-filter",n]),s.map((([t,e])=>`${t}:${e}`)).join(";")}function qd(t){return t=t.replace(/<style[^>]*>([\s\S]*?)<\/style>/gi,((t,e)=>t.replace(e,function(t){return t.replace(/([^{}]+)\{([^}]*)\}/g,((t,e,i)=>`${e}{${Jd(i)}}`))}(e)))),t=t.replace(/style=(['"])([\s\S]*?)\1/gi,((t,e,i)=>`style=${e}${Jd(i)}${e}`)),t}async function Qd(t,e){let{width:i,height:n,scale:o=1,dpr:r=1,meta:s={},backgroundColor:a}=e;t=function(t){if(!Kd(t))return t;try{let e=Zd(t),i=e.match(/<svg\b[^>]*>/i);if(!i)return t;let n=i[0],o=parseFloat((n.match(/\bwidth="([\d.]+)/i)||[])[1]),r=parseFloat((n.match(/\bheight="([\d.]+)/i)||[])[1]);if(!Number.isFinite(o)||!Number.isFinite(r)||o<=0||r<=0)return t;let s=Math.min(1,Xd/o,Xd/r,Math.sqrt(tu/(o*r)));if(s>=1)return t;let a=Math.max(1,Math.floor(o*s)),l=Math.max(1,Math.floor(r*s));return console.warn(`[snapDOM] Capture ${Math.round(o)}×${Math.round(r)}px exceeds the browser image-decode limit (${Xd}px/side); downscaling to ${a}×${l}px. Lower \`scale\` or set \`width\`/\`height\` to control output size.`),Yd(e.replace(n,n.replace(/(\bwidth=")[\d.]+/i,`$1${a}`).replace(/(\bheight=")[\d.]+/i,`$1${l}`)))}catch{return t}}(t=function(t){if(!Ud()||!Kd(t))return t;try{return Yd(qd(Zd(t)))}catch{return t}}(t));let l=new Image;if(l.loading="eager",l.decoding="sync",l.crossOrigin="anonymous",l.src=t,await l.decode(),Ud()){l.style.cssText="position:fixed;left:-99999px;top:-99999px;pointer-events:none",document.body.appendChild(l);try{await new Promise((t=>requestAnimationFrame((()=>requestAnimationFrame(t)))))}finally{try{l.remove()}catch{}}}let c,d,u=l.naturalWidth,h=l.naturalHeight,p=Number.isFinite(s.w0)?s.w0:u,f=Number.isFinite(s.h0)?s.h0:h,v=Number.isFinite(i),m=Number.isFinite(n);if(v&&m)c=Math.max(1,i),d=Math.max(1,n);else if(v){c=i,d=f*(i/Math.max(1,p))}else if(m){d=n,c=p*(n/Math.max(1,f))}else c=u,d=h;c*=o,d*=o;let g=c*r,w=d*r,y=Math.max(g/Xd,w/Xd,Math.sqrt(g*w/tu));y>1&&(console.warn(`[snapDOM] Output ${Math.round(g)}×${Math.round(w)}px exceeds the browser canvas limit (${Xd}px/side); downscaling. Lower \`scale\`/\`dpr\` or set \`width\`/\`height\`.`),c/=y,d/=y);let b=document.createElement("canvas");b.width=c*r,b.height=d*r,b.style.width=`${c}px`,b.style.height=`${d}px`;let C=b.getContext("2d");return 1!==r&&C.scale(r,r),a&&(C.save(),C.fillStyle=a,C.fillRect(0,0,c,d),C.restore()),C.drawImage(l,0,0,c,d),b}hd(Gd,{toCanvas:()=>Qd});var Xd,tu,eu=ud((()=>{zd(),Xd=16384,tu=268435456})),iu={};async function nu(t,e){let i=await Qd(t,e),n=new Image;return n.src=i.toDataURL(`image/${e.format}`,e.quality),await n.decode(),n.style.width=i.width/e.dpr+"px",n.style.height=i.height/e.dpr+"px",n}hd(iu,{rasterize:()=>nu});var ou=ud((()=>{eu()})),ru={};async function su(t,e){let{scale:i=1,width:n,height:o,meta:r={}}=e,s=Number.isFinite(n),a=Number.isFinite(o),l=Number.isFinite(i)&&1!==i||s||a;if(Ud()&&l)return await nu(t,{...e,format:"png",quality:1,meta:r});let c=new Image;if(c.decoding="sync",c.loading="eager",c.src=t,await c.decode(),s&&a)c.style.width=`${n}px`,c.style.height=`${o}px`;else if(s){let t=Number.isFinite(r.w0)?r.w0:c.naturalWidth,e=Number.isFinite(r.h0)?r.h0:c.naturalHeight,i=n/Math.max(1,t);c.style.width=`${n}px`,c.style.height=`${Math.round(e*i)}px`}else if(a){let t=Number.isFinite(r.w0)?r.w0:c.naturalWidth,e=Number.isFinite(r.h0)?r.h0:c.naturalHeight,i=o/Math.max(1,e);c.style.height=`${o}px`,c.style.width=`${Math.round(t*i)}px`}else{let n=Math.round(c.naturalWidth*i),o=Math.round(c.naturalHeight*i);if(c.style.width=`${n}px`,c.style.height=`${o}px`,"string"==typeof t&&t.startsWith("data:image/svg+xml"))try{let e=decodeURIComponent(t.split(",")[1]).replace(/width="[^"]*"/,`width="${n}"`).replace(/height="[^"]*"/,`height="${o}"`);t=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`,c.src=t}catch(t){Bd(e,"SVG width/height patch in toImg failed",t)}}return c}hd(ru,{toImg:()=>su,toSvg:()=>su});var au=ud((()=>{Wd(),ou()})),lu={};async function cu(t,e){let i=e.type;if("svg"===i){let e=decodeURIComponent(t.split(",")[1]);return new Blob([e],{type:"image/svg+xml"})}let n=await Qd(t,e);return new Promise((t=>n.toBlob((e=>t(e)),`image/${i}`,e.quality)))}hd(lu,{toBlob:()=>cu});var du=ud((()=>{eu()})),uu={};async function hu(t,e){let i=new File([t],e,{type:t.type});if(!navigator.canShare?.({files:[i]}))return!1;try{await navigator.share({files:[i],title:e})}catch(t){if("AbortError"!==t.name)return!1}return!0}async function pu(t,e){let i=new Set(["png","jpeg","jpg","webp","svg"]),n=(e?.type||"").toLowerCase(),o=i.has(n)?n:"",r=(e?.format||o||"").toLowerCase(),s="jpg"===r?"jpeg":r||"png",a=e?.filename||`snapdom.${s}`,l={...e||{},format:s,type:s};l.dpr=1;let c=function(){if(typeof navigator>"u")return!1;if(navigator.userAgentData)return"iOS"===navigator.userAgentData.platform;let t=navigator.userAgent||"",e=/iPhone|iPad|iPod/.test(t),i=navigator.maxTouchPoints>2&&/Macintosh/.test(t);return e||i}();if("svg"===s){let e=await cu(t,{...l,type:"svg"});if(c&&await hu(e,a))return;let i=URL.createObjectURL(e),n=document.createElement("a");return n.href=i,n.download=a,document.body.appendChild(n),n.click(),URL.revokeObjectURL(i),void n.remove()}let d=await Qd(t,l);if(c){let t=`image/${s}`,i=await new Promise((i=>d.toBlob(i,t,e?.quality)));if(i&&await hu(i,a))return}let u=document.createElement("a");u.href=d.toDataURL(`image/${s}`,e?.quality),u.download=a,document.body.appendChild(u),u.click(),u.remove()}hd(uu,{download:()=>pu});var fu=ud((()=>{du(),eu(),zd()}));Wd(),Wd(),vd();var vu=new WeakMap,mu=new Map,gu=0;function wu(){gu++,mu.size>2e3&&mu.clear()}var yu=!1;var bu=new WeakMap;function Cu(t,e=null,i={}){let n=vu.get(t),o=!(!i||!i.embedFonts),r=i&&i.excludeStyleProps||null;if(n&&n.epoch===gu&&n.embedFonts===o&&n.excludeStyleProps===r)return n.snapshot;let s=e||getComputedStyle(t),a=function(t,e={}){let i={},n=t.getPropertyValue("visibility"),o=e.excludeStyleProps;for(let e=0;e<t.length;e++){let n=t[e];if(Td(n)||o&&(o instanceof RegExp&&o.test(n)||"function"==typeof o&&o(n)))continue;let r=t.getPropertyValue(n);("background-image"===n||"content"===n)&&r.includes("url(")&&!r.includes("data:")&&(r="none"),i[n]=r}let r=["text-decoration-line","text-decoration-color","text-decoration-style","text-decoration-thickness","text-underline-offset","text-decoration-skip-ink"];for(let e of r)if(!i[e])try{let n=t.getPropertyValue(e);n&&(i[e]=n)}catch{}let s=["-webkit-text-stroke","-webkit-text-stroke-width","-webkit-text-stroke-color","paint-order"];for(let e of s)if(!i[e])try{let n=t.getPropertyValue(e);n&&(i[e]=n)}catch{}if(e.embedFonts){let e=["font-feature-settings","font-variation-settings","font-kerning","font-variant","font-variant-ligatures","font-optical-sizing"];for(let n of e)if(!i[n])try{let e=t.getPropertyValue(n);e&&(i[n]=e)}catch{}}"hidden"===n&&(i.opacity="0");try{"hidden"===(i["content-visibility"]||t.getPropertyValue("content-visibility"))&&(i.visibility="hidden")}catch{}let a=parseFloat(t.getPropertyValue("border-top-width")||0)||0,l=parseFloat(t.getPropertyValue("border-right-width")||0)||0,c=parseFloat(t.getPropertyValue("border-bottom-width")||0)||0,d=parseFloat(t.getPropertyValue("border-left-width")||0)||0;if(0===a&&0===l&&0===c&&0===d){let e=(t.getPropertyValue("border-image-source")||"").trim(),n=e&&"none"!==e,o=["border","border-top","border-right","border-bottom","border-left","border-width","border-style","border-color","border-top-width","border-top-style","border-top-color","border-right-width","border-right-style","border-right-color","border-bottom-width","border-bottom-style","border-bottom-color","border-left-width","border-left-style","border-left-color","border-block","border-block-width","border-block-style","border-block-color","border-inline","border-inline-width","border-inline-style","border-inline-color"];for(let t of o)delete i[t];n||(i.border="none")}return i}(s,i);return function(t,e,i){if(t instanceof HTMLElement&&t.style&&t.style.height)return;let n=t.tagName&&t.tagName.toLowerCase();if(!n||!["div","section","article","main","aside","header","footer","nav"].includes(n))return;let o=parseFloat(e.height);if(Number.isFinite(o)&&t.scrollHeight>0&&Math.abs(o-t.scrollHeight)>2||e.aspectRatio&&"none"!==e.aspectRatio&&"auto"!==e.aspectRatio)return;let r=e.display||"";if(r.includes("flex")||r.includes("grid")||function(t){return t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof HTMLIFrameElement||t instanceof SVGElement||t instanceof HTMLObjectElement||t instanceof HTMLEmbedElement}(t))return;let s=e.position;if("absolute"===s||"fixed"===s||"sticky"===s||"none"!==e.transform||function(t){return!!(t.backgroundImage&&"none"!==t.backgroundImage||t.backgroundColor&&"rgba(0, 0, 0, 0)"!==t.backgroundColor&&"transparent"!==t.backgroundColor||(parseFloat(t.borderTopWidth)||0)>0||(parseFloat(t.borderBottomWidth)||0)>0||(parseFloat(t.paddingTop)||0)>0||(parseFloat(t.paddingBottom)||0)>0)||"visible"!==(t.overflowBlock||t.overflowY||"visible")}(e)||ku(t))return;let a=e.overflowX||e.overflow||"visible",l=e.overflowY||e.overflow||"visible";if("visible"!==a||"visible"!==l)return;let c=e.clip;c&&"auto"!==c&&"rect(auto, auto, auto, auto)"!==c||"hidden"===e.visibility||"0"===e.opacity||function(t,e){if(t.textContent&&/\S/.test(t.textContent))return!0;let i=t.firstElementChild,n=t.lastElementChild;if(i&&"BR"===i.tagName||n&&"BR"===n.tagName)return!0;let o=t.scrollHeight;if(0===o)return!1;let r=parseFloat(e.paddingTop)||0,s=parseFloat(e.paddingBottom)||0;return o>r+s}(t,e)&&(delete i.height,delete i["block-size"])}(t,s,a),vu.set(t,{epoch:gu,snapshot:a,embedFonts:o,excludeStyleProps:r}),a}async function xu(t,e,i,n){if("STYLE"===t.tagName)return;let o=function(t,e){return t&&t.session&&t.persist?t:t&&(t.styleMap||t.styleCache||t.nodeMap)?{session:t,persist:{snapshotKeyCache:mu,defaultStyle:fd.defaultStyle,baseStyle:fd.baseStyle,image:fd.image,resource:fd.resource,background:fd.background,font:fd.font},options:e||{}}:{session:fd.session,persist:{snapshotKeyCache:mu,defaultStyle:fd.defaultStyle,baseStyle:fd.baseStyle,image:fd.image,resource:fd.resource,background:fd.background,font:fd.font},options:t||e||{}}}(i,n),r=o.options&&o.options.cache||"auto";"disabled"!==r&&function(t=document.documentElement){if(!yu){yu=!0;try{new MutationObserver((()=>wu())).observe(t,{subtree:!0,childList:!0,characterData:!0,attributes:!0})}catch{}try{new MutationObserver((()=>wu())).observe(document.head,{subtree:!0,childList:!0,characterData:!0,attributes:!0})}catch{}try{let t=document.fonts;t&&(t.addEventListener?.("loadingdone",wu),t.ready?.then((()=>wu())).catch((()=>{})))}catch{}}}(document.documentElement),"disabled"===r&&!o.session.I&&(wu(),mu.clear(),o.session.I=!0);let{session:s,persist:a}=o;if(!s.styleCache.has(t)){let e=null;try{e=getComputedStyle(t)}catch{}s.styleCache.set(t,e||getComputedStyle(document.documentElement))}let l=s.styleCache.get(t);t.getAttribute?.("style")&&function(t,e,i){if(t.style&&0!==t.style.length)for(let n=0;n<t.style.length;n++){let o=t.style[n],r=i.getPropertyValue(o);r&&e.style.setProperty(o,r)}}(t,e,l);let c=Cu(t,l,o.options);if(ku(t)){let t=l.getPropertyValue("min-width");(!t||"auto"===t||"0px"===t)&&(c["min-width"]="0px")}let d=function(t){let e=bu.get(t);return e||(e=Object.entries(t).sort(((t,e)=>t[0]<e[0]?-1:t[0]>e[0]?1:0)).map((([t,e])=>`${t}:${e}`)).join(";"),bu.set(t,e),e)}(c),u=a.snapshotKeyCache.get(d);if(!u){u=Id(c,t.tagName?.toLowerCase()||"div"),a.snapshotKeyCache.set(d,u)}s.styleMap.set(e,u)}function ku(t){let e=t.parentElement;if(!e)return!1;let i=_d(e).display||"";return i.includes("flex")||i.includes("grid")}jd();var Eu=["fill","stroke","color","background-color","stop-color"],Su=new Set(["symbol","defs","pattern","mask","clipPath","marker","linearGradient","radialGradient","filter"]);function Mu(t){let e=t;for(;e&&1===e.nodeType;){if("http://www.w3.org/2000/svg"===e.namespaceURI&&Su.has(e.localName))return!0;e=e.parentNode}return!1}var $u=new Map;function Tu(t,e){if(!(t instanceof Element)||!(e instanceof Element)||Mu(t))return;let i=t.getAttribute?.("style"),n=!(!i||!i.includes("var("));if(!n&&t.attributes?.length){let e=t.attributes;for(let t=0;t<e.length;t++){let i=e[t];if(i&&"string"==typeof i.value&&i.value.includes("var(")){n=!0;break}}}let o=null;if(n)try{o=getComputedStyle(t)}catch{}if(n){let i=t.style;if(i&&i.length){let t=new Set;for(let n=0;n<i.length;n++){let r=i[n];if(t.has(r))continue;t.add(r);let s=i.getPropertyValue(r);if(!s||!s.includes("var("))continue;let a=o&&o.getPropertyValue(r);if(a)try{e.style.setProperty(r,a.trim(),i.getPropertyPriority(r))}catch{}}}}if(n&&t.attributes?.length){let i=t.attributes;for(let t=0;t<i.length;t++){let n=i[t];if(!n||"string"!=typeof n.value||!n.value.includes("var("))continue;let r=n.name,s=o&&o.getPropertyValue(r);if(s)try{e.style.setProperty(r,s.trim())}catch{}}}if(!n){if(!o)try{o=getComputedStyle(t)}catch{o=null}if(!o)return;let i=t.namespaceURI||"html",n=function(t,e){let i=e+"::"+t.toLowerCase(),n=$u.get(i);if(n)return n;let o=document,r="http://www.w3.org/2000/svg"===e?o.createElementNS(e,t):o.createElement(t),s=o.createElement("div");s.style.cssText="position:absolute;left:-99999px;top:-99999px;contain:strict;display:block;",s.appendChild(r),o.documentElement.appendChild(s);let a=getComputedStyle(r),l={};for(let t of Eu)l[t]=a.getPropertyValue(t)||"";return s.remove(),$u.set(i,l),l}(t.tagName,i);for(let t of Eu){let i=o.getPropertyValue(t)||"",r=n[t]||"";if(i&&i!==r)try{e.style.setProperty(t,i.trim())}catch{}}}}function Iu(t,e,i){return Promise.all(t.map((t=>new Promise((n=>{!function o(){Vd((i=>{!i||"function"!=typeof i.timeRemaining||i.timeRemaining()>0?e(t,n):o()}),{fast:i})}()})))))}function _u(t,e){return t?(t=t.replace(/:host\(([^)]+)\)/g,((t,i)=>`:where(${e}:is(${i.trim()}))`)),t=(t=t.replace(/:host\b/g,`:where(${e})`)).replace(/:host-context\(([^)]+)\)/g,((t,i)=>`:where(:where(${i.trim()}) ${e})`)),t=t.replace(/::slotted\(([^)]+)\)/g,((t,i)=>`:where(${e} ${i.trim()})`)),t=t.replace(/(^|})(\s*)([^@}{]+){/g,((t,i,n,o)=>{let r=function(t,e,i=!0){return t.split(",").map((t=>t.trim())).filter(Boolean).map((t=>{if(t.startsWith(":where(")||t.startsWith("@"))return t;let n=i?function(t){return!(t=t.trim())||/:not\(\s*\[data-sd-slotted\]\s*\)\s*$/.test(t)?t:`${t}:not([data-sd-slotted])`}(t):t;return`:where(${e} ${n})`})).join(", ")}(o,e,!0);return`${i}${n}${r}{`})),t):""}function Nu(t,e){try{let i=getComputedStyle(t).getPropertyValue(e).trim();if(i)return i}catch{}try{let t=getComputedStyle(document.documentElement).getPropertyValue(e).trim();if(t)return t}catch{}return""}function Au(t){let e=0,i=0;if(t.offsetWidth>0&&(e=t.offsetWidth),t.offsetHeight>0&&(i=t.offsetHeight),0===e||0===i)try{let n=getComputedStyle(t);if(0===e){let t=parseFloat(n.width);!isNaN(t)&&t>0&&(e=t)}if(0===i){let t=parseFloat(n.height);!isNaN(t)&&t>0&&(i=t)}}catch{}if(0===e||0===i)try{if(0===e){let i=parseFloat(t.getAttribute("width"));!isNaN(i)&&i>0&&(e=i)}if(0===i){let e=parseFloat(t.getAttribute("height"));!isNaN(e)&&e>0&&(i=e)}}catch{}if((0===e||0===i)&&(t.naturalWidth||t.naturalHeight))try{0===e&&t.naturalWidth>0&&(e=t.naturalWidth),0===i&&t.naturalHeight>0&&(i=t.naturalHeight)}catch{}return{width:e,height:i}}async function Lu(t,e,i){let n=await async function(t,e=3){let i=()=>{try{return t.contentDocument||t.contentWindow?.document||null}catch{return null}},n=i(),o=0;for(;o<e&&(!n||!n.body&&!n.documentElement);)await new Promise((t=>setTimeout(t,0))),n=i(),o++;return n&&(n.body||n.documentElement)?n:null}(t,3);if(!n)throw new Error("iframe document not accessible/ready");let{contentWidth:o,contentHeight:r,rect:s}=function(t){let e=t.getBoundingClientRect(),i=0,n=0,o=0,r=0;try{let e=getComputedStyle(t);i=parseFloat(e.borderLeftWidth)||0,n=parseFloat(e.borderRightWidth)||0,o=parseFloat(e.borderTopWidth)||0,r=parseFloat(e.borderBottomWidth)||0}catch{}return{contentWidth:Math.max(0,Math.round(e.width-(i+n))),contentHeight:Math.max(0,Math.round(e.height-(o+r))),rect:e}}(t),a=i?.snap;if(!a&&typeof window<"u"&&window.snapdom&&(a=window.snapdom),!a||"function"!=typeof a.toPng)throw new Error("[snapdom] iframe capture requires snapdom.toPng. Use snapdom(el) or pass options.snap. With ESM, assign window.snapdom = snapdom after import if using iframes.");let l,c={...i,scale:1},d=function(t,e,i){let n=t.defaultView,o=n?n.scrollX:0,r=n?n.scrollY:0,s=t.body?t.body.scrollLeft:0,a=t.body?t.body.scrollTop:0,l=t.documentElement?t.documentElement.scrollLeft:0,c=t.documentElement?t.documentElement.scrollTop:0,d=t.createElement("style");return d.setAttribute("data-sd-iframe-pin",""),d.textContent=`html, body {margin: 0 !important;padding: 0 !important;width: ${e}px !important;height: ${i}px !important;min-width: ${e}px !important;min-height: ${i}px !important;box-sizing: border-box !important;overflow: hidden !important;background-clip: border-box !important;}`,(t.head||t.documentElement).appendChild(d),()=>{try{d.remove()}catch{}try{n&&"function"==typeof n.scrollTo&&n.scrollTo(o,r),t.body&&(t.body.scrollLeft=s,t.body.scrollTop=a),t.documentElement&&(t.documentElement.scrollLeft=l,t.documentElement.scrollTop=c)}catch{}}}(n,o,r);try{l=await a.toPng(n.documentElement,c)}finally{d()}l.style.display="block",l.style.width=`${o}px`,l.style.height=`${r}px`;let u=document.createElement("div");return e.nodeMap.set(u,t),xu(t,u,e,i),u.style.overflow="hidden",u.style.display="block",u.style.width||(u.style.width=`${Math.round(s.width)}px`),u.style.height||(u.style.height=`${Math.round(s.height)}px`),u.appendChild(l),u}Wd(),Wd(),vd(),Sd();var Ou=new pd(80);async function Fu(t){if(fd.resource?.has(t))return fd.resource.get(t);if(Ou.has(t))return Ou.get(t);let e=(async()=>{let e=await Cd(t,{as:"dataURL",silent:!0});if(!e.ok||"string"!=typeof e.data)throw new Error(`[snapDOM] Failed to read blob URL: ${t}`);return fd.resource?.set(t,e.data),e.data})();Ou.set(t,e);try{let i=await e;return Ou.set(t,i),i}catch(e){throw Ou.delete(t),e}}var Du=/\bblob:[^)"'\s]+/g;async function Pu(t){if(!t||-1===t.indexOf("blob:"))return t;let e=Array.from(new Set(t.match(Du)||[]));if(0===e.length)return t;let i=t;for(let t of e)try{let e=await Fu(t);i=i.split(t).join(e)}catch{}return i}function Ru(t){return"string"==typeof t&&t.startsWith("blob:")}function ju(t){return(t||"").split(",").map((t=>t.trim())).filter(Boolean).map((t=>{let e=t.match(/^(\S+)(\s+.+)?$/);return e?{url:e[1],desc:e[2]||""}:null})).filter(Boolean)}function Vu(t){return t.map((t=>t.desc?`${t.url} ${t.desc.trim()}`:t.url)).join(", ")}function Uu(t){let{width:e,height:i}=Au(t),n=e,o=i;if(!n||!o){let e=t.getBoundingClientRect();n=n||e.width||0,o=o||e.height||0}let r=document.createElement("div");return r.style.cssText=`display:inline-block;width:${n}px;height:${o}px;visibility:hidden;`,r}async function zu(t,e,i){if(!t)throw new Error("Invalid node");let n,o=new Set,r=null,s=null;if(t.nodeType===Node.ELEMENT_NODE){let i=(t.localName||t.tagName||"").toLowerCase();if("snapdom-sandbox"===t.id||t.hasAttribute("data-snapdom-sandbox")||Ld.has(i))return null;if("foreignobject"===i&&t.parentElement?.closest?.("foreignObject"))return Bd(e,"Nested <foreignObject> skipped (SVG spec limitation — not rendered by browsers)"),null}if(t.nodeType===Node.TEXT_NODE||t.nodeType!==Node.ELEMENT_NODE)return t.cloneNode(!0);if("exclude"===t.getAttribute("data-capture")){if("hide"===i.excludeMode)return Uu(t);if("remove"===i.excludeMode)return null}if(i.exclude&&Array.isArray(i.exclude))for(let e of i.exclude)try{if(t.matches?.(e)){if("hide"===i.excludeMode)return Uu(t);if("remove"===i.excludeMode)return null}}catch(t){console.warn(`Invalid selector in exclude option: ${e}`,t)}if("function"==typeof i.filter)try{if(!i.filter(t)){if("hide"===i.filterMode)return Uu(t);if("remove"===i.filterMode)return null}}catch(t){console.warn("Error in filter function:",t)}if("IFRAME"===t.tagName){let n=!1;try{n=!(!t.contentDocument&&!t.contentWindow?.document)}catch(t){Bd(e,"iframe same-origin probe failed",t)}if(n)try{return await Lu(t,e,i)}catch(t){console.warn("[SnapDOM] iframe rasterization failed, fallback:",t)}if(n||console.warn("[snapdom] cross-origin <iframe> skipped (cannot access content). Use options.placeholders to show a placeholder instead.",t),i.placeholders){let{width:n,height:o}=Au(t),r=document.createElement("div");return r.style.cssText=`width:${n}px;height:${o}px;background-image:repeating-linear-gradient(45deg,#ddd,#ddd 5px,#f9f9f9 5px,#f9f9f9 10px);display:flex;align-items:center;justify-content:center;font-size:12px;color:#555;border:1px solid #aaa;`,xu(t,r,e,i),r}{let{width:n,height:o}=Au(t),r=document.createElement("div");return r.style.cssText=`display:inline-block;width:${n}px;height:${o}px;visibility:hidden;`,xu(t,r,e,i),r}}if("placeholder"===t.getAttribute("data-capture")){let n=t.cloneNode(!1);e.nodeMap.set(n,t),xu(t,n,e,i);let o=document.createElement("div");return o.textContent=t.getAttribute("data-placeholder-text")||"",o.style.cssText="color:#666;font-size:12px;text-align:center;line-height:1.4;padding:0.5em;box-sizing:border-box;",n.appendChild(o),n}if("CANVAS"===t.tagName){let n="";try{let e=t.getContext("2d",{willReadFrequently:!0});try{e&&e.getImageData(0,0,1,1)}catch{}if(await new Promise((t=>requestAnimationFrame(t))),n=t.toDataURL("image/png"),!n||"data:,"===n){try{e&&e.getImageData(0,0,1,1)}catch{}if(await new Promise((t=>requestAnimationFrame(t))),n=t.toDataURL("image/png"),!n||"data:,"===n){let e=document.createElement("canvas");e.width=t.width,e.height=t.height;let i=e.getContext("2d");i&&(i.drawImage(t,0,0),n=e.toDataURL("image/png"))}}}catch(t){Bd(e,"Canvas toDataURL failed, using empty/fallback",t)}let o=document.createElement("img");try{o.decoding="sync",o.loading="eager"}catch(t){Bd(e,"img decoding/loading hints failed",t)}n&&(o.src=n),o.width=t.width,o.height=t.height;let{width:r,height:s}=Au(t);return r>0&&(o.style.width=`${r}px`),s>0&&(o.style.height=`${s}px`),e.nodeMap.set(o,t),xu(t,o,e,i),o}if("VIDEO"===t.tagName){let n="";try{let e=document.createElement("canvas");e.width=t.videoWidth||t.offsetWidth||320,e.height=t.videoHeight||t.offsetHeight||240;let i=e.getContext("2d");i&&(i.drawImage(t,0,0,e.width,e.height),n=e.toDataURL("image/png"),(!n||"data:,"===n)&&(n=""))}catch(t){Bd(e,"Video frame capture failed, using poster fallback",t)}let o=document.createElement("img");try{o.decoding="sync",o.loading="eager"}catch{}n?o.src=n:t.poster&&(o.src=t.poster),o.width=t.videoWidth||t.offsetWidth||0,o.height=t.videoHeight||t.offsetHeight||0;let{width:r,height:s}=Au(t);return r>0&&(o.style.width=`${r}px`),s>0&&(o.style.height=`${s}px`),o.style.objectFit="contain",e.nodeMap.set(o,t),xu(t,o,e,i),o}try{if(n=t.cloneNode(!1),n.attributes?.length)try{for(let t of n.attributes)/[\x00-\x08\x0B\x0C\x0E-\x1F\uFFFE\uFFFF]/.test(t.value)&&n.setAttribute(t.name,t.value.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\uFFFE\uFFFF]/g,""))}catch{}if(Tu(t,n),e.nodeMap.set(n,t),"IMG"===t.tagName){!function(t,e){try{let i=t.currentSrc||t.src||"";if(!i)return;e.setAttribute("src",i),e.removeAttribute("srcset"),e.removeAttribute("sizes"),e.loading="eager",e.decoding="sync"}catch{}}(t,n);try{let{width:e,height:i}=Au(t),o=Math.round(e||0),r=Math.round(i||0);o&&(n.dataset.snapdomWidth=String(o)),r&&(n.dataset.snapdomHeight=String(r))}catch(t){Bd(e,"getUnscaledDimensions for IMG failed",t)}try{let e=t.getAttribute("style")||"",i=window.getComputedStyle(t),o=t=>{let n=e.match(new RegExp(`${t}\\s*:\\s*([^;]+)`,"i")),o=n?n[1].trim():i.getPropertyValue(t);return/%|auto/i.test(String(o||""))},r=parseInt(n.dataset.snapdomWidth||"0",10),s=parseInt(n.dataset.snapdomHeight||"0",10),a=o("width")||!r,l=o("height")||!s;a&&r&&(n.style.width=`${r}px`),l&&s&&(n.style.height=`${s}px`);let c=i.getPropertyValue("object-fit"),d=i.getPropertyValue("object-position");c&&"fill"!==c?(n.style.objectFit=c,d&&(n.style.objectPosition=d)):(r&&(n.style.minWidth=`${r}px`),s&&(n.style.minHeight=`${s}px`))}catch(t){Bd(e,"IMG dimension freeze failed",t)}}}catch(e){throw console.error("[Snapdom] Failed to clone node:",t,e),e}let a=null;if(t instanceof HTMLTextAreaElement){let{width:e,height:i}=Au(t),o=e||t.getBoundingClientRect().width||0,r=i||t.getBoundingClientRect().height||0;o&&(n.style.width=`${o}px`),r&&(n.style.height=`${r}px`)}if(t instanceof HTMLInputElement){let i=(t.type||"text").toLowerCase();if("checkbox"!==i&&"radio"!==i||!function(){if(typeof navigator>"u")return!1;let t=(navigator.userAgent||"").toLowerCase();return t.includes("firefox")||t.includes("fxios")}())n.value=t.value,n.setAttribute("value",t.value),void 0!==t.checked&&(n.checked=t.checked,t.checked&&n.setAttribute("checked",""),t.indeterminate&&(n.indeterminate=t.indeterminate));else{let{el:i,applyVisual:o}=function(t){let e,{width:i,height:n}=Au(t),o=t.getBoundingClientRect();try{e=window.getComputedStyle(t)}catch{}let r=e?parseFloat(e.width):NaN,s=e?parseFloat(e.height):NaN,a=Math.round(i||o.width||0),l=Math.round(n||o.height||0),c=Number.isFinite(r)&&r>0?Math.round(r):Math.max(12,a||16),d=Number.isFinite(s)&&s>0?Math.round(s):Math.max(12,l||16),u="checkbox"===(t.type||"text").toLowerCase(),h=!!t.checked,p=!!t.indeterminate,f=Math.max(Math.min(c,d),12),v="middle";try{e&&e.verticalAlign&&(v=e.verticalAlign)}catch{}let m=document.createElement("div");m.setAttribute("data-snapdom-input-replacement",t.type||"checkbox"),m.style.cssText=`display:inline-block;width:${f}px;height:${f}px;vertical-align:${v};flex-shrink:0;line-height:0;`;let g=document.createElementNS("http://www.w3.org/2000/svg","svg");function w(){let t="#0a6ed1";try{e&&(t=e.accentColor||e.color||t)}catch{}let i=f-2;if(g.innerHTML="",u){let e=document.createElementNS("http://www.w3.org/2000/svg","rect");if(e.setAttribute("x",String(1)),e.setAttribute("y",String(1)),e.setAttribute("width",String(i)),e.setAttribute("height",String(i)),e.setAttribute("rx","2"),e.setAttribute("ry","2"),e.setAttribute("fill",h?t:"none"),e.setAttribute("stroke",t),e.setAttribute("stroke-width",String(2)),g.appendChild(e),h){let t=document.createElementNS("http://www.w3.org/2000/svg","path");t.setAttribute("d",`M 3 ${f/2} L ${f/2-1} ${f-1-2} L ${f-1-2} 3`),t.setAttribute("stroke","white"),t.setAttribute("stroke-width",String(Math.max(1.5,2))),t.setAttribute("fill","none"),t.setAttribute("stroke-linecap","round"),t.setAttribute("stroke-linejoin","round"),g.appendChild(t)}else if(p){let e=document.createElementNS("http://www.w3.org/2000/svg","rect"),n=Math.max(6,i-4);e.setAttribute("x",String((f-n)/2)),e.setAttribute("y",String((f-2)/2)),e.setAttribute("width",String(n)),e.setAttribute("height",String(2)),e.setAttribute("fill",t),e.setAttribute("rx","1"),g.appendChild(e)}}else{let e=document.createElementNS("http://www.w3.org/2000/svg","circle");if(e.setAttribute("cx",String(f/2)),e.setAttribute("cy",String(f/2)),e.setAttribute("r",String((f-2)/2)),e.setAttribute("fill",h?t:"none"),e.setAttribute("stroke",t),e.setAttribute("stroke-width",String(2)),g.appendChild(e),h){let t=document.createElementNS("http://www.w3.org/2000/svg","circle"),e=Math.max(2,.35*(f-4));t.setAttribute("cx",String(f/2)),t.setAttribute("cy",String(f/2)),t.setAttribute("r",String(e)),t.setAttribute("fill","white"),g.appendChild(t)}}m.style.setProperty("width",`${f}px`,"important"),m.style.setProperty("height",`${f}px`,"important"),m.style.setProperty("min-width",`${f}px`,"important"),m.style.setProperty("min-height",`${f}px`,"important")}return g.setAttribute("width",String(f)),g.setAttribute("height",String(f)),g.setAttribute("viewBox",`0 0 ${f} ${f}`),m.appendChild(g),w(),{el:m,applyVisual:w}}(t);e.nodeMap.set(i,t),a=o,n=i}}if((t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement)&&!t.value&&t.placeholder)try{let e=window.getComputedStyle(t,"::placeholder"),i=e&&e.color;if(i&&"rgba(0, 0, 0, 0)"!==i){let t="snapdom-ph-"+(1e6*Math.random()|0);n.classList.add(t);let o=document.createElement("style");o.textContent=`.${t}::placeholder{color:${i}!important;opacity:${e.opacity||"1"}!important;-webkit-text-fill-color:${i}!important;}`,n.prepend(o)}}catch{}if(t instanceof HTMLSelectElement&&(r=t.value),t instanceof HTMLTextAreaElement&&(s=t.value),t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement){t.disabled&&n.setAttribute("disabled",""),t.required&&n.setAttribute("required",""),t.readOnly&&n.setAttribute("readonly","");let e=t;void 0!==e.min&&""!==e.min&&n.setAttribute("min",e.min),void 0!==e.max&&""!==e.max&&n.setAttribute("max",e.max),void 0!==e.pattern&&""!==e.pattern&&n.setAttribute("pattern",e.pattern);let i=t.getAttribute("aria-invalid");null!==i&&n.setAttribute("aria-invalid",i)}if(Mu(t)||xu(t,n,e,i),a&&a(),t instanceof SVGElement&&!Mu(t)){let e=["fill","stroke","stroke-width","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","opacity","fill-opacity","stroke-opacity","fill-rule","clip-rule","marker","marker-start","marker-mid","marker-end","visibility","display"];try{let i=window.getComputedStyle(t);for(let t of e){let e=i.getPropertyValue(t);e&&n.style.setProperty(t,e)}}catch{}}if(t.shadowRoot){let r=function(t,n){if(t.nodeType===Node.ELEMENT_NODE&&"STYLE"===t.tagName)return n(null);zu(t,e,i).then((t=>{n(t||null)})).catch((()=>{n(null)}))};try{let e=t.shadowRoot.querySelectorAll("slot");for(let t of e){let e=[];try{e=t.assignedNodes?.({flatten:!0})||t.assignedNodes?.()||[]}catch{e=t.assignedNodes?.()||[]}for(let t of e)o.add(t)}}catch{}let s=function(t){return t.shadowScopeSeq=(t.shadowScopeSeq||0)+1,`s${t.shadowScopeSeq}`}(e),a=`[data-sd="${s}"]`;try{n.setAttribute("data-sd",s)}catch{}let l=function(t){let e="";try{t.querySelectorAll("style").forEach((t=>{e+=(t.textContent||"")+"\n"}));let i=t.adoptedStyleSheets||[];for(let t of i)try{if(t&&t.cssRules)for(let i of t.cssRules)e+=i.cssText+"\n"}catch{}}catch{}return e}(t.shadowRoot),c=_u(l,a),d=function(t){let e=new Set;if(!t)return e;let i,n=/var\(\s*(--[A-Za-z0-9_-]+)\b/g;for(;i=n.exec(t);)e.add(i[1]);return e}(l),u=function(t,e,i){let n=[];for(let i of e){let e=Nu(t,i);e&&n.push(`${i}: ${e};`)}return n.length?`${i}{${n.join("")}}\n`:""}(t,d,a);!function(t,e,i){if(!e)return;let n=document.createElement("style");n.setAttribute("data-sd",i),n.textContent=e,t.insertBefore(n,t.firstChild||null)}(n,u+c,s);let h=document.createDocumentFragment(),p=await Iu(Array.from(t.shadowRoot.childNodes),r,i.fast);h.append(...p.filter((t=>!!t))),n.appendChild(h)}if("SLOT"===t.tagName){let n=function(t,n){zu(t,e,i).then((t=>{t&&function(t){t&&(t.nodeType===Node.ELEMENT_NODE&&t.setAttribute("data-sd-slotted",""),t.querySelectorAll&&t.querySelectorAll("*").forEach((t=>t.setAttribute("data-sd-slotted",""))))}(t),n(t||null)})).catch((()=>{n(null)}))},o=t.assignedNodes?.({flatten:!0})||[],r=o.length>0?o:Array.from(t.childNodes),s=document.createDocumentFragment(),a=await Iu(Array.from(r),n,i.fast);return s.append(...a.filter((t=>!!t))),s}let l=await Iu(Array.from(t.childNodes),(function(t,n){if(o.has(t))return n(null);zu(t,e,i).then((t=>{n(t||null)})).catch((()=>{n(null)}))}),i.fast);if(n.append(...l.filter((t=>!!t))),null!==r&&n instanceof HTMLSelectElement){n.value=r;for(let t of n.options)t.value===r?t.setAttribute("selected",""):t.removeAttribute("selected")}return null!==s&&n instanceof HTMLTextAreaElement&&(n.textContent=s),n}zd(),Wd(),wd(),vd(),vd();var Bu=[/font\s*awesome/i,/material\s*icons/i,/ionicons/i,/glyphicons/i,/feather/i,/bootstrap\s*icons/i,/remix\s*icons/i,/heroicons/i,/layui/i,/lucide/i],Hu=Object.assign({materialIconsFilled:"https://fonts.gstatic.com/s/materialicons/v48/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2",materialIconsOutlined:"https://fonts.gstatic.com/s/materialiconsoutlined/v110/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcel5euIg.woff2",materialIconsRound:"https://fonts.gstatic.com/s/materialiconsround/v109/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmPq_HTTw.woff2",materialIconsSharp:"https://fonts.gstatic.com/s/materialiconssharp/v110/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvRImcycg.woff2"},typeof window<"u"&&window.__SNAPDOM_ICON_FONTS__||{}),Wu=[];function Gu(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ku(t){let e="string"==typeof t?t:"",i=[...Bu,...Wu];for(let t of i)if(t instanceof RegExp&&t.test(e))return!0;return!!(/icon/i.test(e)||/glyph/i.test(e)||/symbols/i.test(e)||/feather/i.test(e)||/fontawesome/i.test(e))}function Zu(t=""){let e=String(t).toLowerCase();return/\bmaterial\s*icons\b/.test(e)||/\bmaterial\s*symbols\b/.test(e)}var Yu=new Map;function Ju(t){let e=t.getPropertyValue("-webkit-text-fill-color")?.trim()||"",i=/^transparent$/i.test(e)||/rgba?\(\s*0\s*,\s*0\s*,\s*0\s*,\s*0\s*\)/i.test(e);if(e&&!i&&"currentcolor"!==e.toLowerCase())return e;let n=t.color?.trim();return n&&"inherit"!==n?n:"#000"}async function qu(t,{family:e="Material Icons",weight:i="normal",fontSize:n=32,color:o="#000",variation:r="",className:s=""}={}){let a=String(e||"").replace(/^['"]+|['"]+$/g,""),l=window.devicePixelRatio||1,c=function(t=""){let e,i=Object.create(null),n=String(t||""),o=/['"]?\s*([A-Za-z]{3,4})\s*['"]?\s*([+-]?\d+(?:\.\d+)?)\s*/g;for(;e=o.exec(n);)i[e[1].toUpperCase()]=Number(e[2]);return i}(r),{familyForMeasure:d,familyForCanvas:u}=await async function(t,e,i){let n=String(t||""),o=n.toLowerCase(),r=String(e||"").toLowerCase();if(/\bmaterial\s*icons\b/.test(o)&&!/\bsymbols\b/.test(o))return{familyForMeasure:n,familyForCanvas:n};if(!/\bmaterial\s*symbols\b/.test(o))return{familyForMeasure:n,familyForCanvas:n};let s=i&&(i.FILL??i.fill),a="outlined";/\brounded\b/.test(r)||/\bround\b/.test(r)?a="rounded":/\bsharp\b/.test(r)?a="sharp":/\boutlined\b/.test(r)&&(a="outlined");let l=null;if(1===s&&("outlined"===a&&Hu.materialIconsFilled?l={url:Hu.materialIconsFilled,alias:"snapdom-mi-filled"}:"rounded"===a&&Hu.materialIconsRound?l={url:Hu.materialIconsRound,alias:"snapdom-mi-round"}:"sharp"===a&&Hu.materialIconsSharp&&(l={url:Hu.materialIconsSharp,alias:"snapdom-mi-sharp"})),!l)return{familyForMeasure:n,familyForCanvas:n};if(!Yu.has(l.alias))try{let t=new FontFace(l.alias,`url(${l.url})`,{style:"normal",weight:"400"});document.fonts.add(t),await t.load(),Yu.set(l.alias,!0)}catch{return{familyForMeasure:n,familyForCanvas:n}}let c=`"${l.alias}"`;return{familyForMeasure:c,familyForCanvas:c}}(a,s,c);await async function(t="Material Icons",e=24){try{await Promise.all([document.fonts.load(`400 ${e}px "${String(t).replace(/["']/g,"")}"`),document.fonts.ready])}catch{}}(u.replace(/^["']+|["']+$/g,""),n);let h=document.createElement("span");h.textContent=t,h.style.position="absolute",h.style.visibility="hidden",h.style.left="-99999px",h.style.whiteSpace="nowrap",h.style.fontFamily=d,h.style.fontWeight=String(i||"normal"),h.style.fontSize=`${n}px`,h.style.lineHeight="1",h.style.margin="0",h.style.padding="0",h.style.fontFeatureSettings="'liga' 1",h.style.fontVariantLigatures="normal",h.style.color=o,document.body.appendChild(h);let p=h.getBoundingClientRect(),f=Math.max(1,Math.ceil(p.width)),v=Math.max(1,Math.ceil(p.height));document.body.removeChild(h);let m=document.createElement("canvas");m.width=f*l,m.height=v*l;let g=m.getContext("2d");g.scale(l,l),g.font=`${i?`${i} `:""}${n}px ${u}`,g.textAlign="left",g.textBaseline="top",g.fillStyle=o;try{g.fontKerning="normal"}catch{}return g.fillText(t,0,0),{dataUrl:m.toDataURL(),width:f,height:v}}async function Qu(t,e,i,n=32,o="#000"){e=e.replace(/^['"]+|['"]+$/g,"");let r=window.devicePixelRatio||1;try{await document.fonts.ready}catch{}let s=document.createElement("span");s.textContent=t,s.style.position="absolute",s.style.visibility="hidden",s.style.fontFamily=`"${e}"`,s.style.fontWeight=i||"normal",s.style.fontSize=`${n}px`,s.style.lineHeight="1",s.style.whiteSpace="nowrap",s.style.padding="0",s.style.margin="0",document.body.appendChild(s);let a=s.getBoundingClientRect(),l=Math.ceil(a.width),c=Math.ceil(a.height);document.body.removeChild(s);let d=document.createElement("canvas");d.width=Math.max(1,l*r),d.height=Math.max(1,c*r);let u=d.getContext("2d");return u.scale(r,r),u.font=i?`${i} ${n}px "${e}"`:`${n}px "${e}"`,u.textAlign="left",u.textBaseline="top",u.fillStyle=o,u.fillText(t,0,0),{dataUrl:d.toDataURL(),width:l,height:c}}Sd();var Xu=new Set(["serif","sans-serif","monospace","cursive","fantasy","system-ui","emoji","math","fangsong","ui-serif","ui-sans-serif","ui-monospace","ui-rounded"]),th=["katex","mathjax","mathml"];function eh(t){if(!t)return"";for(let e of t.split(",")){let t=e.trim().replace(/^['"]+|['"]+$/g,"");if(t&&!Xu.has(t.toLowerCase()))return t}return""}function ih(t){let e=String(t??"400").trim().toLowerCase();if("normal"===e)return 400;if("bold"===e)return 700;let i=parseInt(e,10);return Number.isFinite(i)?Math.min(900,Math.max(100,i)):400}function nh(t){let e=String(t??"normal").trim().toLowerCase();return e.startsWith("italic")?"italic":e.startsWith("oblique")?"oblique":"normal"}function oh(t){let e=String(t??"100%").match(/(\d+(?:\.\d+)?)\s*%/);return e?Math.max(50,Math.min(200,parseFloat(e[1]))):100}function rh(t){return t&&"string"==typeof t?t.replace(/\s+(variable|vf|v[0-9]+)$/i,"").trim().toLowerCase().replace(/\s+/g,"-"):""}function sh(t,e,i=[]){if(!t)return!1;try{let n=new URL(t,location.href);if(n.origin===location.origin)return!0;let o=n.host.toLowerCase();if(["fonts.googleapis.com","fonts.gstatic.com","use.typekit.net","p.typekit.net","kit.fontawesome.com","use.fontawesome.com","cdn.jsdelivr.net","unpkg.com","cdnjs.cloudflare.com","esm.sh"].some((t=>o.endsWith(t)))||i.some((t=>o===t.toLowerCase()||o.endsWith("."+t.toLowerCase()))))return!0;let r=(n.pathname+n.search).toLowerCase();if(/\bfont(s)?\b/.test(r)||/\.woff2?(\b|$)/.test(r)||th.some((t=>r.includes(t))))return!0;for(let t of e){let e=t.toLowerCase().replace(/\s+/g,"+"),i=t.toLowerCase().replace(/\s+/g,"-"),n=rh(t);if(r.includes(e)||r.includes(i)||n&&r.includes(n))return!0}return!1}catch{return!1}}function ah(t,e){return t&&t.replace(/url\(\s*(['"]?)([^)'"]+)\1\s*\)/g,((t,i,n)=>{let o=(n||"").trim();if(!o||/^data:|^blob:|^https?:|^file:|^about:/i.test(o))return t;let r=o;try{r=new URL(o,e||location.href).href}catch{}return`url("${r}")`}))}var lh=/@import\s+(?:url\(\s*(['"]?)([^)"']+)\1\s*\)|(['"])([^"']+)\3)([^;]*);/g;async function ch(t,e,i){if(!t)return t;let n=new Set;function o(t,e){try{return new URL(t,e||location.href).href}catch{return t}}let r=ah(t,e||location.href);return r=await async function t(e,r,s=0){if(s>4)return console.warn(`[snapDOM] @import depth exceeded (4) at ${r}`),e;let a,l="",c=0;for(;a=lh.exec(e);){l+=e.slice(c,a.index),c=lh.lastIndex;let d=o((a[2]||a[4]||"").trim(),r);if(n.has(d)){console.warn(`[snapDOM] Skipping circular @import: ${d}`);continue}n.add(d);let u="";try{let t=await Cd(d,{as:"text",useProxy:i,silent:!0});t.ok&&"string"==typeof t.data&&(u=t.data)}catch{}u?(u=ah(u,d),u=await t(u,d,s+1),l+=`\n/* inlined: ${d} */\n${u}\n`):l+=a[0]}return l+=e.slice(c),l}(r,e||location.href,0),r}var dh=/url\((["']?)([^"')]+)\1\)/g,uh=/@font-face[^{}]*\{[^}]*\}/g;function hh(t){if(!t)return[];let e=[],i=t.split(",").map((t=>t.trim())).filter(Boolean);for(let t of i){let i=t.match(/^U\+([0-9A-Fa-f?]+)(?:-([0-9A-Fa-f?]+))?$/);if(!i)continue;let n=i[1],o=i[2],r=t=>{if(!t.includes("?"))return parseInt(t,16);return[parseInt(t.replace(/\?/g,"0"),16),parseInt(t.replace(/\?/g,"F"),16)]};if(o){let t=r(n),i=r(o),s=Array.isArray(t)?t[0]:t,a=Array.isArray(i)?i[1]:i;e.push([Math.min(s,a),Math.max(s,a)])}else{let t=r(n);Array.isArray(t)?e.push([t[0],t[1]]):e.push([t,t])}}return e}function ph(t,e){if(!e.length||!t||0===t.size)return!0;for(let i of t)for(let[t,n]of e)if(i>=t&&i<=n)return!0;return!1}function fh(t,e){let i=[];if(!t)return i;for(let n of t.matchAll(dh)){let t=(n[2]||"").trim();if(t&&!t.startsWith("data:")){if(!/^https?:/i.test(t))try{t=new URL(t,e||location.href).href}catch{}i.push(t)}}return i}async function vh(t,e,i=""){let n=t;for(let o of t.matchAll(dh)){let t=md(o[0]);if(!t)continue;let r=t;if(!r.startsWith("http")&&!r.startsWith("data:"))try{r=new URL(r,e||location.href).href}catch{}if(!Ku(r)){if(fd.resource?.has(r)){fd.font?.add(r),n=n.replace(o[0],`url(${fd.resource.get(r)})`);continue}if(!fd.font?.has(r))try{let t=await Cd(r,{as:"dataURL",useProxy:i,silent:!0});if(t.ok&&"string"==typeof t.data){let e=t.data;fd.resource?.set(r,e),fd.font?.add(r),n=n.replace(o[0],`url(${e})`)}}catch{console.warn("[snapDOM] Failed to fetch font resource:",r)}}}return n}function mh(t={}){let e=new Set((t.families||[]).map((t=>String(t).toLowerCase()))),i=new Set((t.domains||[]).map((t=>String(t).toLowerCase()))),n=new Set((t.subsets||[]).map((t=>String(t).toLowerCase())));return(t,o)=>{if(e.size&&e.has(t.family.toLowerCase()))return!0;if(i.size)for(let e of t.srcUrls)try{if(i.has(new URL(e).host.toLowerCase()))return!0}catch{}if(n.size){let t=function(t){if(!t.length)return null;let e=(e,i)=>t.some((([t,n])=>!(n<e||t>i))),i=e(0,255)||e(305,305),n=e(256,591)||e(7680,7935),o=e(880,1023),r=e(1024,1279);return e(7840,7929)||e(258,259)||e(416,417)||e(431,432)?"vietnamese":r?"cyrillic":o?"greek":n?"latin-ext":i?"latin":null}(o);if(t&&n.has(t))return!0}return!1}}async function gh(t,e,i,n){let o;try{o=t.cssRules||[]}catch{return}let r=(t,e)=>{try{return new URL(t,e||location.href).href}catch{return t}};for(let t of o)if(t.type===CSSRule.IMPORT_RULE&&t.styleSheet){let o=t.href?r(t.href,e):e;if(n.depth>=4){console.warn(`[snapDOM] CSSOM import depth exceeded (4) at ${o}`);continue}if(o&&n.visitedSheets.has(o)){console.warn(`[snapDOM] Skipping circular CSSOM import: ${o}`);continue}o&&n.visitedSheets.add(o);let s={...n,depth:(n.depth||0)+1};await gh(t.styleSheet,o,i,s)}else if(t.type===CSSRule.FONT_FACE_RULE){let o=eh((t.style.getPropertyValue("font-family")||"").trim());if(!o||Ku(o))continue;let r=(t.style.getPropertyValue("font-weight")||"400").trim(),s=(t.style.getPropertyValue("font-style")||"normal").trim(),a=(t.style.getPropertyValue("font-stretch")||"100%").trim(),l=(t.style.getPropertyValue("src")||"").trim(),c=(t.style.getPropertyValue("unicode-range")||"").trim();if(!n.faceMatchesRequired(o,s,r,a))continue;let d=hh(c);if(!ph(n.usedCodepoints,d))continue;let u={family:o,weightSpec:r,styleSpec:s,stretchSpec:a,unicodeRange:c,srcRaw:l,srcUrls:fh(l,e||location.href),href:e||location.href};if(n.simpleExcluder&&n.simpleExcluder(u,d))continue;if(/url\(/i.test(l)){let t=await vh(l,e||location.href,n.useProxy);await i(`@font-face{font-family:${o};src:${t};font-style:${s};font-weight:${r};font-stretch:${a};${c?`unicode-range:${c};`:""}}`)}else await i(`@font-face{font-family:${o};src:${l};font-style:${s};font-weight:${r};font-stretch:${a};${c?`unicode-range:${c};`:""}}`)}}async function wh({required:t,usedCodepoints:e,exclude:i,localFonts:n=[],useProxy:o="",fontStylesheetDomains:r=[]}={}){t instanceof Set||(t=new Set),e instanceof Set||(e=new Set);let s=new Map;for(let e of t){let[t,i,n,o]=String(e).split("__");if(!t)continue;let r=t.toLowerCase(),a=s.get(r)||[];a.push({w:parseInt(i,10),s:n,st:parseInt(o,10)}),s.set(r,a)}function a(t,e,i,n){let o=String(t).toLowerCase();if(!s.has(o))return!1;let r=s.get(o),a=function(t){let e=String(t||"400").trim(),i=e.match(/^(\d{2,3})\s+(\d{2,3})$/);if(i){let t=ih(i[1]),e=ih(i[2]);return{min:Math.min(t,e),max:Math.max(t,e)}}let n=ih(e);return{min:n,max:n}}(i),l=function(t){let e=String(t||"normal").trim().toLowerCase();return"italic"===e?{kind:"italic"}:e.startsWith("oblique")?{kind:"oblique"}:{kind:"normal"}}(e),c=function(t){let e=String(t||"100%").trim(),i=e.match(/(\d+(?:\.\d+)?)\s*%\s+(\d+(?:\.\d+)?)\s*%/);if(i){let t=parseFloat(i[1]),e=parseFloat(i[2]);return{min:Math.min(t,e),max:Math.max(t,e)}}let n=e.match(/(\d+(?:\.\d+)?)\s*%/),o=n?parseFloat(n[1]):100;return{min:o,max:o}}(n),d=a.min!==a.max,u=a.min,h=t=>"normal"===l.kind&&"normal"===t||"normal"!==l.kind&&("italic"===t||"oblique"===t),p=!1;for(let t of r){let e=d?t.w>=a.min&&t.w<=a.max:t.w===u,i=h(nh(t.s)),n=t.st>=c.min&&t.st<=c.max;if(e&&i&&n){p=!0;break}}if(p)return!0;if(!d)for(let t of r){let e=h(nh(t.s)),i=t.st>=c.min&&t.st<=c.max;if(Math.abs(u-t.w)<=300&&e&&i)return!0}if(!d&&"normal"===l.kind&&r.some((t=>"normal"!==nh(t.s))))for(let t of r){let e=Math.abs(u-t.w)<=300,i=t.st>=c.min&&t.st<=c.max;if(e&&i)return!0}return!1}let l=mh(i),c=function(t,e,i,n,o){let r=Array.from(t||[]).sort().join("|"),s=e?JSON.stringify({families:(e.families||[]).map((t=>String(t).toLowerCase())).sort(),domains:(e.domains||[]).map((t=>String(t).toLowerCase())).sort(),subsets:(e.subsets||[]).map((t=>String(t).toLowerCase())).sort()}):"",a=(i||[]).map((t=>`${(t.family||"").toLowerCase()}::${t.weight||"normal"}::${t.style||"normal"}::${t.src||""}`)).sort().join("|"),l=n||"",c=(o||[]).map((t=>String(t).toLowerCase())).sort().join("|");return`fonts-embed-css::req=${r}::ex=${s}::lf=${a}::px=${l}::fd=${c}`}(t,i,n,o,r);if(fd.resource?.has(c))return fd.resource.get(c);let d=function(t){let e=new Set;for(let i of t||[]){let t=String(i).split("__")[0]?.trim();t&&e.add(t)}return e}(t),u=[],h=lh;for(let t of document.querySelectorAll("style")){let e=t.textContent||"";for(let t of e.matchAll(h)){let e=(t[2]||t[4]||"").trim();e&&!Ku(e)&&(document.querySelector(`link[rel="stylesheet"][href="${e}"]`)||u.push(e))}}let p=[];u.length&&await Promise.all(u.map((t=>new Promise((e=>{if(document.querySelector(`link[rel="stylesheet"][href="${t}"]`))return e(null);let i=document.createElement("link");i.rel="stylesheet",i.href=t,i.setAttribute("data-snapdom","injected-import"),i.onload=()=>e(i),i.onerror=()=>e(null),document.head.appendChild(i),p.push(i)})))));let f="",v=Array.from(document.querySelectorAll('link[rel="stylesheet"]')).filter((t=>!!t.href));for(let t of p)try{t.remove()}catch{}for(let t of v)try{if(Ku(t.href))continue;let n="",s=!1;try{s=new URL(t.href,location.href).origin===location.origin}catch{}if(!s){let e=Array.isArray(r)?r:[];if(!sh(t.href,d,e))continue}if(s){let e=Array.from(document.styleSheets).find((e=>e.href===t.href));if(e)try{let t=e.cssRules||[];n=Array.from(t).map((t=>t.cssText)).join("")}catch{}}if(!n){let e=await Cd(t.href,{as:"text",useProxy:o});if(e?.ok&&"string"==typeof e.data&&(n=e.data),Ku(t.href))continue}n=await ch(n,t.href,o);let c="";for(let r of n.match(uh)||[]){let n=eh((r.match(/font-family:\s*([^;]+);/i)?.[1]||"").trim());if(!n||Ku(n))continue;let s=(r.match(/font-weight:\s*([^;]+);/i)?.[1]||"400").trim(),d=(r.match(/font-style:\s*([^;]+);/i)?.[1]||"normal").trim(),u=(r.match(/font-stretch:\s*([^;]+);/i)?.[1]||"100%").trim(),h=(r.match(/unicode-range:\s*([^;]+);/i)?.[1]||"").trim(),p=(r.match(/src\s*:\s*([^;}]+)[;}]/i)?.[1]||"").trim(),f=fh(p,t.href);if(!a(n,d,s,u))continue;let v=hh(h);if(!ph(e,v))continue;let m={family:n,weightSpec:s,styleSpec:d,stretchSpec:u,unicodeRange:h,srcRaw:p,srcUrls:f,href:t.href};i&&l(m,v)||(c+=/url\(/i.test(p)?await vh(r,t.href,o):r)}c.trim()&&(f+=c)}catch{console.warn("[snapDOM] Failed to process stylesheet:",t.href)}let m={requiredIndex:s,usedCodepoints:e,faceMatchesRequired:a,simpleExcluder:i?mh(i):null,useProxy:o,visitedSheets:new Set,depth:0};for(let t of document.styleSheets)if(!t.href||!v.some((e=>e.href===t.href)))try{let e=t.href||location.origin+"/";e&&m.visitedSheets.add(e),await gh(t,e,(async t=>{f+=t}),m)}catch{}try{for(let t of document.fonts||[]){if(!t||!t.family||"loaded"!==t.status||!t._snapdomSrc)continue;let e=String(t.family).replace(/^['"]+|['"]+$/g,"");if(Ku(e)||!s.has(e.toLowerCase())||i?.families&&i.families.some((t=>String(t).toLowerCase()===e.toLowerCase())))continue;let n=t._snapdomSrc;if(!String(n).startsWith("data:"))if(fd.resource?.has(t._snapdomSrc))n=fd.resource.get(t._snapdomSrc),fd.font?.add(t._snapdomSrc);else if(!fd.font?.has(t._snapdomSrc))try{let e=await Cd(t._snapdomSrc,{as:"dataURL",useProxy:o,silent:!0});if(!e.ok||"string"!=typeof e.data)continue;n=e.data,fd.resource?.set(t._snapdomSrc,n),fd.font?.add(t._snapdomSrc)}catch{console.warn("[snapDOM] Failed to fetch dynamic font src:",t._snapdomSrc);continue}f+=`@font-face{font-family:'${e}';src:url(${n});font-style:${t.style||"normal"};font-weight:${t.weight||"normal"};}`}}catch{}for(let t of n){if(!t||"object"!=typeof t)continue;let e=String(t.family||"").replace(/^['"]+|['"]+$/g,"");if(!e||Ku(e)||!s.has(e.toLowerCase())||i?.families&&i.families.some((t=>String(t).toLowerCase()===e.toLowerCase())))continue;let n=null!=t.weight?String(t.weight):"normal",r=null!=t.style?String(t.style):"normal",a=null!=t.stretchPct?`${t.stretchPct}%`:"100%",l=String(t.src||""),c=l;if(!c.startsWith("data:"))if(fd.resource?.has(l))c=fd.resource.get(l),fd.font?.add(l);else if(!fd.font?.has(l))try{let t=await Cd(l,{as:"dataURL",useProxy:o,silent:!0});if(!t.ok||"string"!=typeof t.data)continue;c=t.data,fd.resource?.set(l,c),fd.font?.add(l)}catch{console.warn("[snapDOM] Failed to fetch localFonts src:",l);continue}f+=`@font-face{font-family:'${e}';src:url(${c});font-style:${r};font-weight:${n};font-stretch:${a};}`}return f&&(f=function(t){if(!t)return t;let e=/@font-face[^{}]*\{[^}]*\}/gi,i=new Set,n=[];for(let o of t.match(e)||[]){let t=eh(o.match(/font-family:\s*([^;]+);/i)?.[1]||""),e=(o.match(/font-weight:\s*([^;]+);/i)?.[1]||"400").trim(),r=(o.match(/font-style:\s*([^;]+);/i)?.[1]||"normal").trim(),s=(o.match(/font-stretch:\s*([^;]+);/i)?.[1]||"100%").trim(),a=(o.match(/unicode-range:\s*([^;]+);/i)?.[1]||"").trim(),l=(o.match(/src\s*:\s*([^;}]+)[;}]/i)?.[1]||"").trim(),c=fh(l,location.href),d=c.length?c.map((t=>String(t).toLowerCase())).sort().join("|"):l.toLowerCase(),u=[String(t||"").toLowerCase(),e,r,s,a.toLowerCase(),d].join("|");i.has(u)||(i.add(u),n.push(o))}if(0===n.length)return t;let o=0;return t.replace(e,(()=>n[o++]||""))}(f),fd.resource?.set(c,f)),f}function yh(t){let e=new Set;if(!t)return e;let i=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,null),n=t=>{let i=function(t){if(!t)return[];let e=[];for(let i of t.split(",")){let t=i.trim().replace(/^['"]+|['"]+$/g,"");t&&(Xu.has(t.toLowerCase())||e.push(t))}return e}(t.fontFamily);if(i.length)for(let n of i){let i=(t,e,i)=>`${n}__${ih(t)}__${nh(e)}__${oh(i)}`;e.add(i(t.fontWeight,t.fontStyle,t.fontStretch))}};n(getComputedStyle(t));let o=getComputedStyle(t,"::before");o&&o.content&&"none"!==o.content&&n(o);let r=getComputedStyle(t,"::after");for(r&&r.content&&"none"!==r.content&&n(r);i.nextNode();){let t=i.currentNode;n(getComputedStyle(t));let e=getComputedStyle(t,"::before");e&&e.content&&"none"!==e.content&&n(e);let o=getComputedStyle(t,"::after");o&&o.content&&"none"!==o.content&&n(o)}return e}async function bh(t,e=2){try{await document.fonts.ready}catch{}let i=Array.from(t||[]).filter(Boolean);if(0===i.length)return;let n=()=>{let t=document.createElement("div");t.style.cssText="position:absolute!important;left:-9999px!important;top:0!important;opacity:0!important;pointer-events:none!important;contain:layout size style;";for(let e of i){let i=document.createElement("span");i.textContent="AaBbGg1234ÁÉÍÓÚçñ—∞",i.style.fontFamily=`"${e}"`,i.style.fontWeight="700",i.style.fontStyle="italic",i.style.fontSize="32px",i.style.lineHeight="1",i.style.whiteSpace="nowrap",i.style.margin="0",i.style.padding="0",t.appendChild(i)}document.body.appendChild(t),t.offsetWidth,document.body.removeChild(t)};for(let t=0;t<Math.max(1,e);t++)n(),await new Promise((t=>requestAnimationFrame((()=>requestAnimationFrame(t)))))}function Ch(t,e=!1){let i="",n=Math.max(1,t);for(;n>0;)n--,i=String.fromCharCode(97+n%26)+i,n=Math.floor(n/26);return e?i.toUpperCase():i}function xh(t,e=!0){let i=[[1e3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],n=Math.max(1,Math.min(3999,t)),o="";for(let[t,e]of i)for(;n>=t;)o+=e,n-=t;return e?o:o.toLowerCase()}function kh(t,e){switch((e||"decimal").toLowerCase()){case"decimal":default:return String(t);case"decimal-leading-zero":{let e=Math.abs(t);return(t<0?"-":"")+(e<10?"0":"")+String(e)}case"lower-alpha":return Ch(t,!1);case"upper-alpha":return Ch(t,!0);case"lower-roman":return xh(t,!1);case"upper-roman":return xh(t,!0)}}function Eh(t){let e=()=>fd?.session?._??0,i=e(),n=new WeakMap,o=t instanceof Document?t.documentElement:t,r=t=>{let e=0,i=t?.parentElement;if(!i)return 0;for(let n of i.children){if(n===t)break;"LI"===n.tagName&&e++}return e},s=(t,e,i)=>{let n,o,s,a=(t=>{let e=new Map;for(let[i,n]of t)e.set(i,n.slice());return e})(t);try{n=i.style?.counterReset||getComputedStyle(i).counterReset}catch{}if(n&&"none"!==n)for(let t of n.split(",")){let i=t.trim().split(/\s+/),n=i[0],o=Number.isFinite(Number(i[1]))?Number(i[1]):0;if(!n)continue;let r=e.get(n);if(r&&r.length){let t=r.slice();t.push(o),a.set(n,t)}else a.set(n,[o])}try{o=i.style?.counterSet||getComputedStyle(i).counterSet}catch{}if(o&&"none"!==o)for(let t of o.split(",")){let e=t.trim().split(/\s+/),i=e[0],n=Number.isFinite(Number(e[1]))?Number(e[1]):0;if(!i)continue;let o=a.get(i)||[];0===o.length&&o.push(0),o[o.length-1]=n,a.set(i,o)}try{s=i.style?.counterIncrement||getComputedStyle(i).counterIncrement}catch{}if(s&&"none"!==s)for(let t of s.split(",")){let e=t.trim().split(/\s+/),i=e[0],n=Number.isFinite(Number(e[1]))?Number(e[1]):1;if(!i)continue;let o=a.get(i)||[];0===o.length&&o.push(0),o[o.length-1]+=n,a.set(i,o)}try{if("list-item"===getComputedStyle(i).display&&(t=>t&&"LI"===t.tagName)(i)){let t=i.parentElement,e=1;if(t&&"OL"===t.tagName){let n=t.getAttribute("start"),o=Number.isFinite(Number(n))?Number(n):1,s=r(i),a=i.getAttribute("value");e=Number.isFinite(Number(a))?Number(a):o+s}else e=1+r(i);let n=a.get("list-item")||[];0===n.length&&n.push(0),n[n.length-1]=e,a.set("list-item",n)}}catch{}return a},a=(t,e,i)=>{let o=s(i,e,t);n.set(t,o);let r=o;for(let e of t.children)r=a(e,o,r);let l=new Map;for(let[t,e]of i){let i=e.length,n=r.get(t);l.set(t,n&&n.length?n.slice(0,i):e.slice())}for(let[t,i]of r)!l.has(t)&&i.length&&!e.has(t)&&l.set(t,i.slice(0,1));return l},l=new Map;function c(){let t=e();if(t!==i){i=t;let e=new Map;a(o,e,e)}}return a(o,l,l),{get(t,e){c();let i=n.get(t)?.get(e);return i&&i.length?i[i.length-1]:0},getStack(t,e){c();let i=n.get(t)?.get(e);return i?i.slice():[]}}}vd(),Sd(),vd();var Sh=new WeakMap;function Mh(t){try{return t&&t.cssRules?t.cssRules:null}catch{return null}}function $h(t){let e=t.querySelectorAll('style,link[rel~="stylesheet"]'),i=`n:${e.length}|`,n=0;for(let t=0;t<e.length;t++){let o=e[t];if("STYLE"===o.tagName){i+=`S${o.textContent?o.textContent.length:0}|`;let t=o.sheet,e=t?Mh(t):null;e&&(n+=e.length)}else{i+=`L${o.getAttribute("href")||""}|m:${o.getAttribute("media")||"all"}|`;let t=o.sheet,e=t?Mh(t):null;e&&(n+=e.length)}}let o=t.adoptedStyleSheets;return i+=`ass:${Array.isArray(o)?o.length:0}|tr:${n}`,i}function Th(t,e,i){let n=Mh(t);if(!n)return!1;for(let t=0;t<n.length;t++){if(i.budget<=0)return!1;let o=n[t],r=o&&o.cssText?o.cssText:"";i.budget--;for(let t of e)if(r.includes(t))return!0;if(o&&o.cssRules&&o.cssRules.length)for(let t=0;t<o.cssRules.length&&i.budget>0;t++){let n=o.cssRules[t],r=n&&n.cssText?n.cssText:"";i.budget--;for(let t of e)if(r.includes(t))return!0}if(i.budget<=0)return!1}return!1}function Ih(t=document,e=$h(t)){let i=Sh.get(t);if(i&&i.fingerprint===e)return i.result;let n=["::before","::after","::first-letter",":before",":after",":first-letter","counter(","counters(","counter-increment","counter-reset"],o=t.querySelectorAll("style");for(let i=0;i<o.length;i++){let r=o[i].textContent||"";for(let i of n)if(r.includes(i))return Sh.set(t,{fingerprint:e,result:!0}),!0}let r=t.adoptedStyleSheets;if(Array.isArray(r)&&r.length){let i={budget:1e3};try{for(let o of r)if(Th(o,n,i))return Sh.set(t,{fingerprint:e,result:!0}),!0}catch{}}{let i=t.querySelectorAll('style,link[rel~="stylesheet"]'),o={budget:1e3};for(let r=0;r<i.length&&o.budget>0;r++){let s=i[r],a=null;if(s.tagName,a=s.sheet||null,a&&Th(a,n,o))return Sh.set(t,{fingerprint:e,result:!0}),!0}}return t.querySelector('[style*="counter("], [style*="counters("]')?(Sh.set(t,{fingerprint:e,result:!0}),!0):(Sh.set(t,{fingerprint:e,result:!1}),!1)}var _h=new WeakMap;function Nh(t){for(let e of["Top","Right","Bottom","Left"]){let i=parseFloat(t[`border${e}Width`])||0,n=t[`border${e}Style`];if(i>0&&n&&"none"!==n&&"hidden"!==n)return!0}return!1}var Ah=-1;function Lh(t){if(!t)return"";let e,i=[],n=/"([^"]*)"/g,o=0;for(;e=n.exec(t);){let r=t.slice(o,e.index).trim();r&&i.push(r),i.push(e[1]),o=n.lastIndex}let r=t.slice(o).trim();return r&&i.push(r),i.join("")}function Oh(t,e){let i=t.parentElement,n=i?_h.get(i):null;return n?{get(t,i){let o=e.get(t,i),r=n.get(i);return"number"==typeof r?Math.max(o,r):o},getStack(t,i){let o=e.getStack(t,i);if(!o.length)return o;let r=n.get(i);if("number"==typeof r){let t=o.slice();return t[t.length-1]=Math.max(t[t.length-1],r),t}return o}}:e}function Fh(t,e,i){let n=new Map;function o(t){let e=[];if(!t||"none"===t)return e;for(let i of String(t).split(",")){let t=i.trim().split(/\s+/),n=t[0],o=Number.isFinite(Number(t[1]))?Number(t[1]):void 0;n&&e.push({name:n,num:o})}return e}let r=o(e?.counterReset),s=o(e?.counterSet),a=o(e?.counterIncrement);function l(e){if(n.has(e))return n.get(e).slice();let o=i.getStack(t,e);o=o.length?o.slice():[];let l=r.find((t=>t.name===e));if(l){let t=Number.isFinite(l.num)?l.num:0;o=o.length?[...o,t]:[t]}let c=s.find((t=>t.name===e));if(c){let t=Number.isFinite(c.num)?c.num:0;0===o.length&&(o=[0]),o[o.length-1]=t}let d=a.find((t=>t.name===e));if(d){let t=Number.isFinite(d.num)?d.num:1;0===o.length&&(o=[0]),o[o.length-1]+=t}return n.set(e,o.slice()),o}return{get(t,e){let i=l(e);return i.length?i[i.length-1]:0},getStack:(t,e)=>l(e),N:a}}function Dh(t,e,i){let n;try{n=_d(t,e)}catch{}let o=n?.content;if(!o||"none"===o||"normal"===o)return{text:"",incs:[]};let r=Fh(t,n,Oh(t,i)),s=function(t){return/\bcounter\s*\(|\bcounters\s*\(/.test(t||"")}(o)?function(t,e,i){if(!t||"none"===t)return t;try{let n=/\b(counter|counters)\s*\(([^)]+)\)/g;return t.replace(n,((t,n,o)=>{let r=String(o).split(",").map((t=>t.trim()));if("counter"===n){let t=r[0]?.replace(/^["']|["']$/g,""),n=(r[1]||"decimal").toLowerCase();return kh(i.get(e,t),n)}{let t=r[0]?.replace(/^["']|["']$/g,""),n=r[1]?.replace(/^["']|["']$/g,"")??"",o=(r[2]||"decimal").toLowerCase(),s=i.getStack(e,t);return s.length?s.map((t=>kh(t,o))).join(n):""}}))}catch{return"- "}}(o,t,r):o;return{text:Lh(s),incs:r.N||[]}}async function Ph(t,e,i,n){if(!(t instanceof Element&&e instanceof Element))return;if(!function(t,e){let i=$h(t);return e?(e.A!==i&&(e.O=Ih(t,i),e.A=i),!!e.O):Ih(t,i)}(t.ownerDocument||document,i))return;let o=fd?.session?._??0;if(Ah!==o&&(_h=new WeakMap,i&&(i.F=null),Ah=o),!i.F)try{i.F=Eh(t.ownerDocument||document)}catch(t){Bd(i,"buildCounterContext failed",t)}let r=i.F;for(let o of["::before","::after","::first-letter"])try{let s=_d(t,o);if(!s||"none"===s.content&&"none"===s.backgroundImage&&"transparent"===s.backgroundColor&&!Nh(s)&&(!s.transform||"none"===s.transform)&&"inline"===s.display)continue;if("::first-letter"===o){let n=_d(t),o=(n?.display||"").toLowerCase();if(o.includes("flex")||o.includes("grid")||s.color===n.color&&s.fontSize===n.fontSize&&s.fontWeight===n.fontWeight&&s.fontFamily===n.fontFamily&&s.fontStyle===n.fontStyle&&s.textTransform===n.textTransform&&s.float===n.float&&s.paddingTop===n.paddingTop&&s.paddingRight===n.paddingRight&&s.paddingBottom===n.paddingBottom&&s.paddingLeft===n.paddingLeft&&s.marginTop===n.marginTop&&s.marginRight===n.marginRight&&s.marginBottom===n.marginBottom&&s.marginLeft===n.marginLeft)continue;let r=Array.from(e.childNodes).find((t=>t.nodeType===Node.TEXT_NODE&&t.textContent?.trim().length>0));if(!r)continue;let a=r.textContent,l=a.match(/^([^\p{L}\p{N}\s]*[\p{L}\p{N}](?:['’])?)/u)?.[0],c=a.slice(l?.length||0);if(!l||/[\uD800-\uDFFF]/.test(l))continue;let d=document.createElement("span");d.textContent=l,d.dataset.snapdomPseudo="::first-letter";let u=Id(Nd(s),"span");i.styleMap.set(d,u);let h=document.createTextNode(c);e.replaceChild(h,r),e.insertBefore(d,h);continue}let a=s.content??"",l=""===a||"none"===a||"normal"===a,{text:c,incs:d}=Dh(t,o,r),u=s.backgroundImage,h=s.backgroundColor,p=s.fontFamily,f=parseInt(s.fontSize)||32,v=parseInt(s.fontWeight)||!1,m=s.color||"#000",g=s.transform,w=Ku(p),y=!l&&""!==c,b=u&&"none"!==u,C=h&&"transparent"!==h&&"rgba(0, 0, 0, 0)"!==h,x=Nh(s),k=g&&"none"!==g,E="none"!==a&&"normal"!==a&&((parseFloat(s.width)||0)>0||(parseFloat(s.height)||0)>0);if(!(y||b||C||x||k||E)){if(d&&d.length&&t.parentElement){let e=_h.get(t.parentElement)||new Map;for(let{name:i}of d){if(!i)continue;let n=Oh(t,r),s=Fh(t,_d(t,o),n).get(t,i);e.set(i,s)}_h.set(t.parentElement,e)}continue}let S=!1;if(y&&!w&&c.length>1&&!c.startsWith("url(")){let i=_d(t),n=parseFloat(i.fontSize)||16,o=parseFloat(i.lineHeight);Number.isFinite(o)||(o=1.5*n),t.getBoundingClientRect().height<1.6*o&&(e.style.whiteSpace="nowrap",S=!0)}let M=document.createElement("span");M.dataset.snapdomPseudo=o,M.style.pointerEvents="none",S&&(M.style.whiteSpace="nowrap");let $=Id(Nd(s),"span");if(i.styleMap.set(M,$),w&&c&&1===c.length){let{dataUrl:t,width:i,height:n}=await Qu(c,p,v,f,m),o=document.createElement("img");o.src=t,o.style=`height:${f}px;width:${i/n*f}px;object-fit:contain;`,M.appendChild(o),e.dataset.snapdomHasIcon="true"}else if(c&&c.startsWith("url(")){let e=md(c);if(e?.trim())try{let t=await Cd(gd(e),{as:"dataURL",useProxy:n.useProxy});if(t?.ok&&"string"==typeof t.data){let e=document.createElement("img");e.src=t.data,e.style=`width:${f}px;height:auto;object-fit:contain;`,M.appendChild(e)}}catch(e){console.error(`[snapdom] Error in pseudo ${o} for`,t,e)}}else!w&&y&&(M.textContent=c);M.style.backgroundImage="none","maskImage"in M.style&&(M.style.maskImage="none"),"webkitMaskImage"in M.style&&(M.style.webkitMaskImage="none");try{M.style.backgroundRepeat=s.backgroundRepeat,M.style.backgroundSize=s.backgroundSize,s.backgroundPositionX&&s.backgroundPositionY?(M.style.backgroundPositionX=s.backgroundPositionX,M.style.backgroundPositionY=s.backgroundPositionY):M.style.backgroundPosition=s.backgroundPosition,M.style.backgroundOrigin=s.backgroundOrigin,M.style.backgroundClip=s.backgroundClip,M.style.backgroundAttachment=s.backgroundAttachment,M.style.backgroundBlendMode=s.backgroundBlendMode}catch{}if(b)try{let t=Ad(u),e=await Promise.all(t.map(Md));M.style.backgroundImage=e.join(", ")}catch(t){console.warn(`[snapdom] Failed to inline background-image for ${o}`,t)}C&&(M.style.backgroundColor=h);let T=M.childNodes.length>0||""!==M.textContent?.trim()||b||C||x||k||E;if(d&&d.length&&t.parentElement){let e=_h.get(t.parentElement)||new Map,i=Oh(t,r),n=Fh(t,_d(t,o),i);for(let{name:i}of d){if(!i)continue;let o=n.get(t,i);e.set(i,o)}_h.set(t.parentElement,e)}if(!T)continue;"::before"===o?(e.dataset.snapdomHasBefore="1",e.insertBefore(M,e.firstChild)):(e.dataset.snapdomHasAfter="1",e.appendChild(M))}catch(e){console.warn(`[snapdom] Failed to capture ${o} for`,t,e)}let s=Array.from(e.children).filter((t=>!t.dataset.snapdomPseudo));if(i.nodeMap)for(let t of s){let e=i.nodeMap.get(t);e instanceof Element&&await Ph(e,t,i,n)}else{let e=Array.from(t.children);for(let t=0;t<Math.min(e.length,s.length);t++)await Ph(e[t],s[t],i,n)}}function Rh(t,e){if(!(t&&t instanceof Element))return;let i=t.ownerDocument||document,n=i,o=t instanceof SVGSVGElement?[t]:Array.from(t.querySelectorAll("svg"));if(0===o.length)return;let r=/url\(\s*#([^)]+)\)/g,s=["fill","stroke","filter","clip-path","mask","marker","marker-start","marker-mid","marker-end"],a=t=>{if(!t||!t.getAttribute)return null;let e=t.getAttribute("href")||t.getAttribute("xlink:href")||("function"==typeof t.getAttributeNS?t.getAttributeNS("http://www.w3.org/1999/xlink","href"):null);if(e)return e;let i=t.attributes;if(!i)return null;for(let t=0;t<i.length;t++){let e=i[t];if(!e||!e.name)continue;if("href"===e.name)return e.value;let n=e.name.indexOf(":");if(-1!==n&&"href"===e.name.slice(n+1))return e.value}return null},l=new Set(Array.from(t.querySelectorAll("[id]")).map((t=>t.id))),c=new Set,d=!1,u=(t,e=null)=>{if(!t)return;let i;for(r.lastIndex=0;i=r.exec(t);){d=!0;let t=(i[1]||"").trim();t&&(l.has(t)||(c.add(t),e&&!e.has(t)&&e.add(t)))}},h=t=>{let e=t.querySelectorAll("use");for(let t of e){let e=a(t);if(!e||!e.startsWith("#"))continue;d=!0;let i=e.slice(1).trim();i&&!l.has(i)&&c.add(i)}let i=t.querySelectorAll('*[style*="url("],*[fill^="url("], *[stroke^="url("],*[filter^="url("],*[clip-path^="url("],*[mask^="url("],*[marker^="url("],*[marker-start^="url("],*[marker-mid^="url("],*[marker-end^="url("]');for(let t of i){u(t.getAttribute("style")||"");for(let e of s)u(t.getAttribute(e))}};for(let t of o)h(t);if(!d)return;let p=t.querySelector("svg.inline-defs-container");p||(p=i.createElementNS("http://www.w3.org/2000/svg","svg"),p.classList.add("inline-defs-container"),p.setAttribute("aria-hidden","true"),p.setAttribute("style","position:absolute;width:0;height:0;overflow:hidden"),t.insertBefore(p,t.firstChild||null));let f=p.querySelector("defs")||null,v=e=>{if(!e||l.has(e))return null;let i=(t=>window.CSS&&CSS.escape?CSS.escape(t):t.replace(/[^a-zA-Z0-9_-]/g,"\\$&"))(e),o=e=>{let i=n.querySelector(e);return i&&!t.contains(i)?i:null};return o(`svg defs > *#${i}`)||o(`svg > symbol#${i}`)||o(`*#${i}`)};if(!c.size)return;let m=new Set(c),g=new Set;for(;m.size;){let t=m.values().next().value;if(m.delete(t),!t||l.has(t)||g.has(t))continue;let e=v(t);if(!e){g.add(t);continue}f||(f=i.createElementNS("http://www.w3.org/2000/svg","defs"),p.appendChild(f));let n=e.cloneNode(!0);n.id||n.setAttribute("id",t),f.appendChild(n),g.add(t),l.add(t);let o=[n,...n.querySelectorAll("*")];for(let t of o){let e=a(t);if(e&&e.startsWith("#")){let t=e.slice(1).trim();t&&!l.has(t)&&!g.has(t)&&m.add(t)}let i=t.getAttribute?.("style")||"";i&&u(i,m);for(let e of s){let i=t.getAttribute?.(e);i&&u(i,m)}}}}function jh(t){if(!t||"auto"===t)return null;let e=Number.parseFloat(t);return Number.isFinite(e)?e:null}function Vh(t,e){let i=[];for(let n=t;n&&n!==e;){let t=n.parentElement;if(!t)break;i.push(Array.prototype.indexOf.call(t.children,n)),n=t}return i.reverse()}function Uh(t,e,i){let n=t;for(let t=0;t<e.length;t++)if(n=zh(n,i)[e[t]],!n)return null;return n instanceof HTMLElement?n:null}function zh(t,e){let i=[],n=t.children;for(let t=0;t<n.length;t++){let o=n[t];o.hasAttribute(e)||i.push(o)}return i}async function Bh(t,e={}){let i,n={styleMap:fd.session.styleMap,styleCache:fd.session.styleCache,nodeMap:fd.session.nodeMap,options:e},o="",r="";!function(t){let e=getComputedStyle(t),i=e.outlineStyle,n=e.outlineWidth,o=e.borderStyle,r=e.borderWidth,s="none"!==i&&parseFloat(n)>0,a="none"===o||0===parseFloat(r);s&&a&&(t.style.border=`${n} solid transparent`)}(t);let s=function(t){let e=[];try{let i=t.querySelectorAll("*");for(let t of i){if(!(t instanceof HTMLElement))continue;let i=t.style.contentVisibility||"",n=getComputedStyle(t),o=n.contentVisibility||n.getPropertyValue("content-visibility")||"";("auto"===o||"hidden"===o)&&(e.push({el:t,original:i}),t.style.contentVisibility="visible")}if(t instanceof HTMLElement){let i=getComputedStyle(t),n=i.contentVisibility||i.getPropertyValue("content-visibility")||"";("auto"===n||"hidden"===n)&&(e.push({el:t,original:t.style.contentVisibility||""}),t.style.contentVisibility="visible")}}catch{}return()=>{for(let{el:t,original:i}of e)try{t.style.contentVisibility=i}catch{}}}(t);try{i=await zu(t,n,e)}catch(t){throw console.warn("deepClone failed:",t),t}finally{s()}try{Rh(i)}catch(t){console.warn("inlineExternal defs or symbol failed:",t)}try{await Ph(t,i,n,e)}catch(t){console.warn("inlinePseudoElements failed:",t)}await async function(t,e=null){if(!t)return;let i=e,n=t.querySelectorAll?t.querySelectorAll("img"):[];for(let t of n)try{let e=t.getAttribute("src")||t.currentSrc||"";if(Ru(e)){let i=await Fu(e);t.setAttribute("src",i)}let n=t.getAttribute("srcset");if(n&&n.includes("blob:")){let e=ju(n),o=!1;for(let t of e)if(Ru(t.url))try{t.url=await Fu(t.url),o=!0}catch(t){Bd(i,"blobUrlToDataUrl for srcset item failed",t)}o&&t.setAttribute("srcset",Vu(e))}}catch(t){Bd(i,"resolveBlobUrls for img failed",t)}let o=t.querySelectorAll?t.querySelectorAll("image"):[];for(let t of o)try{let e="http://www.w3.org/1999/xlink",i=t.getAttribute("href")||t.getAttributeNS?.(e,"href");if(Ru(i)){let n=await Fu(i);t.setAttribute("href",n),t.removeAttributeNS?.(e,"href")}}catch(t){Bd(i,"resolveBlobUrls for SVG image href failed",t)}let r=t.querySelectorAll?t.querySelectorAll("[style*='blob:']"):[];for(let t of r)try{let e=t.getAttribute("style");if(e&&e.includes("blob:")){let i=await Pu(e);t.setAttribute("style",i)}}catch(t){Bd(i,"replaceBlobUrls in inline style failed",t)}let s=t.querySelectorAll?t.querySelectorAll("style"):[];for(let t of s)try{let e=t.textContent||"";e.includes("blob:")&&(t.textContent=await Pu(e))}catch(t){Bd(i,"replaceBlobUrls in style tag failed",t)}let a=["poster"];for(let e of a){let n=t.querySelectorAll?t.querySelectorAll(`[${e}^='blob:']`):[];for(let t of n)try{let i=t.getAttribute(e);Ru(i)&&t.setAttribute(e,await Fu(i))}catch(t){Bd(i,`resolveBlobUrls for ${e} failed`,t)}}}(i,n);try{let t=i.querySelectorAll("style[data-sd]");for(let e of t)r+=e.textContent||"",e.remove()}catch(t){Bd(n,"Failed to extract shadow CSS from style[data-sd]",t)}let a=function(t){let e=Array.from(new Set(t.values())).filter(Boolean).sort(),i=new Map,n=1;for(let t of e)i.set(t,"c"+n++);return i}(n.styleMap);o=Array.from(a.entries()).map((([t,e])=>`.${e}{${t}}`)).join(""),o=r+"[data-snapdom-has-after]::after,[data-snapdom-has-before]::before{content:none!important;display:none!important}"+o;for(let[t,e]of n.styleMap.entries()){if("STYLE"===t.tagName)continue;if(t.getRootNode&&t.getRootNode()instanceof ShadowRoot){t.setAttribute("style",e.replace(/;/g,"; "));continue}let i=a.get(e);i&&t.classList.add(i);let n=t.style?.backgroundImage,o=t.dataset?.snapdomHasIcon;n&&"none"!==n&&(t.style.backgroundImage=n),o&&(t.style.verticalAlign="middle",t.style.display="inline")}for(let[t,e]of n.nodeMap.entries()){let i=e.scrollLeft,n=e.scrollTop;if((i||n)&&t instanceof HTMLElement){t.style.overflow="hidden",t.style.scrollbarWidth="none",t.style.msOverflowStyle="none";try{let e=t.querySelectorAll("*");for(let t of e){if(!(t instanceof HTMLElement))continue;let e=t.style.position;if("fixed"===e||"absolute"===e){let o=parseFloat(t.style.top)||0,r=parseFloat(t.style.left)||0;t.style.top=`${o+n}px`,t.style.left=`${r+i}px`,"fixed"===e&&(t.style.position="absolute")}}}catch{}let e=document.createElement("div");for(e.style.all="unset",e.style.transform=`translate(${-i}px, ${-n}px)`,e.style.willChange="transform",e.style.display="inline-block",e.style.width="100%";t.firstChild;)e.appendChild(t.firstChild);t.appendChild(e)}}if(function(t,e){if(!t||!e)return;let i=t.scrollTop||0;if(!i)return;"static"===getComputedStyle(e).position&&(e.style.position="relative");let n=t.getBoundingClientRect(),o=t.clientHeight,r="data-snap-ph",s=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT);for(;s.nextNode();){let a=s.currentNode,l=getComputedStyle(a),c=l.position;if("sticky"!==c&&"-webkit-sticky"!==c)continue;let d=jh(l.top),u=jh(l.bottom);if(null==d&&null==u)continue;let h=Uh(e,Vh(a,t),r);if(!h)continue;let p=a.getBoundingClientRect(),f=p.width,v=p.height,m=p.left-n.left;if(!(f>0&&v>0&&Number.isFinite(m)))continue;let g=null!=d?d+i:i+(o-v-u);if(!Number.isFinite(g))continue;let w=Number.parseInt(l.zIndex,10),y=Number.isFinite(w),b=y?Math.max(w,1)+1:2,C=y?w-1:0,x=h.cloneNode(!1);x.setAttribute(r,"1"),x.style.position="sticky",x.style.left=`${m}px`,x.style.top=`${g}px`,x.style.width=`${f}px`,x.style.height=`${v}px`,x.style.visibility="hidden",x.style.zIndex=String(C),x.style.overflow="hidden",x.style.background="transparent",x.style.boxShadow="none",x.style.filter="none",h.parentElement?.insertBefore(x,h),h.style.position="absolute",h.style.left=`${m}px`,h.style.top=`${g}px`,h.style.bottom="auto",h.style.zIndex=String(b),h.style.pointerEvents="none"}}(t,i instanceof HTMLElement&&i.firstElementChild instanceof HTMLElement?i.firstElementChild:i),t===n.nodeMap.get(i)){let e=n.styleCache.get(t)||_d(t);n.styleCache.set(t,e);let o=function(t){if(!t||"none"===t)return"";let e=t.replace(/translate[XY]?\([^)]*\)/g,"");return e=e.replace(/matrix\(([^)]+)\)/g,((t,e)=>{let i=e.split(",").map((t=>t.trim()));return 6!==i.length?`matrix(${e})`:(i[4]="0",i[5]="0",`matrix(${i.join(", ")})`)})),e=e.replace(/matrix3d\(([^)]+)\)/g,((t,e)=>{let i=e.split(",").map((t=>t.trim()));return 16!==i.length?`matrix3d(${e})`:(i[12]="0",i[13]="0",`matrix3d(${i.join(", ")})`)})),e.trim().replace(/\s{2,}/g," ")}(e.transform);i.style.margin="0",i.style.top="auto",i.style.left="auto",i.style.right="auto",i.style.bottom="auto",i.style.animation="none",i.style.transition="none",i.style.willChange="auto",i.style.float="none",i.style.clear="none",i.style.transform=o||""}for(let[t,e]of n.nodeMap.entries())"PRE"===e.tagName&&(t.style.marginTop="0",t.style.marginBlockStart="0");return{clone:i,classCSS:o,styleCache:n.styleCache}}vd(),Sd();var Hh="http://www.w3.org/1999/xlink";async function Wh(t,e={}){let i=Array.from(t.querySelectorAll("img")),n=async t=>{if(!t.getAttribute("src")){let e=t.currentSrc||t.src||"";e&&t.setAttribute("src",e)}t.removeAttribute("srcset"),t.removeAttribute("sizes");let i=t.src||"";if(!i)return;let n=await Cd(i,{as:"dataURL",useProxy:e.useProxy});if(n.ok&&"string"==typeof n.data&&n.data.startsWith("data:"))return t.src=n.data,t.width||(t.width=t.naturalWidth||100),void(t.height||(t.height=t.naturalHeight||100));let{width:o,height:r}=function(t){let e=parseInt(t.dataset?.snapdomWidth||"",10)||0,i=parseInt(t.dataset?.snapdomHeight||"",10)||0,n=parseInt(t.getAttribute("width")||"",10)||0,o=parseInt(t.getAttribute("height")||"",10)||0,r=parseFloat(t.style?.width||"")||0,s=parseFloat(t.style?.height||"")||0;return{width:e||r||n||t.width||t.naturalWidth||100,height:i||s||o||t.height||t.naturalHeight||100}}(t),{fallbackURL:s}=e||{};if(s)try{let n="function"==typeof s?await s({width:o,height:r,src:i,element:t}):s;if(n){let i=await Cd(n,{as:"dataURL",useProxy:e.useProxy});if(i?.ok&&"string"==typeof i.data)return t.src=i.data,t.width||(t.width=o),void(t.height||(t.height=r))}}catch{}if(!1!==e.placeholders){let e=document.createElement("div");e.style.cssText=[`width:${o}px`,`height:${r}px`,"background:#ccc","display:inline-block","text-align:center",`line-height:${r}px`,"color:#666","font-size:12px","overflow:hidden"].join(";"),e.textContent="img",t.replaceWith(e)}else{let e=document.createElement("div");e.style.cssText=`display:inline-block;width:${o}px;height:${r}px;visibility:hidden;`,t.replaceWith(e)}};for(let t=0;t<i.length;t+=6){let e=i.slice(t,t+6).map(n);await Promise.allSettled(e)}let o=Array.from(t.querySelectorAll("image")),r=async t=>{let i=function(t){return t.getAttribute("href")||t.getAttribute("xlink:href")||("function"==typeof t.getAttributeNS?t.getAttributeNS(Hh,"href"):null)}(t);if(!i||i.startsWith("data:")||i.startsWith("blob:"))return;let n=await Cd(i,{as:"dataURL",useProxy:e.useProxy});n.ok&&"string"==typeof n.data&&n.data.startsWith("data:")&&(t.setAttribute("href",n.data),t.removeAttribute("xlink:href"),"function"==typeof t.removeAttributeNS&&t.removeAttributeNS(Hh,"href"))};for(let t=0;t<o.length;t+=6){let e=o.slice(t,t+6).map(r);await Promise.allSettled(e)}}function Gh(t){if(!t)return()=>{};let e=[];return function t(i){let n=function(t){if(!t)return()=>{};let e=function(t){let e=getComputedStyle(t),i=e.getPropertyValue("-webkit-line-clamp")||e.getPropertyValue("line-clamp");i=(i||"").trim();let n=parseInt(i,10);return Number.isFinite(n)&&n>0?n:0}(t);if(e<=0)return()=>{};if(!function(t){return!(t.childElementCount>0)&&Array.from(t.childNodes).some((t=>t.nodeType===Node.TEXT_NODE))}(t))return()=>{};let i=getComputedStyle(t),n=Math.round(function(t){let e=(t.lineHeight||"").trim(),i=parseFloat(t.fontSize)||16;return e&&"normal"!==e?e.endsWith("px")?parseFloat(e):/^\d+(\.\d+)?$/.test(e)?Math.round(parseFloat(e)*i):e.endsWith("%")?Math.round(parseFloat(e)/100*i):Math.round(1.2*i):Math.round(1.2*i)}(i)*e+function(t){return(parseFloat(t.paddingTop)||0)+(parseFloat(t.paddingBottom)||0)}(i)),o=t.textContent??"",r=o;if(t.scrollHeight<=n+.5)return()=>{};let s=0,a=o.length,l=-1;for(;s<=a;){let e=s+a>>1;t.textContent=o.slice(0,e)+"…",t.scrollHeight<=n+.5?(l=e,s=e+1):a=e-1}return t.textContent=(l>=0?o.slice(0,l):"")+"…",()=>{t.textContent=r}}(i);n&&e.push(n);for(let e of i.children||[])t(e)}(t),()=>e.forEach((t=>t()))}Wd(),Wd(),vd();var Kh=[];function Zh(t){if(!t)return null;if(Array.isArray(t)){let[e,i]=t;return"function"==typeof e?e(i):e}if("object"==typeof t&&"plugin"in t){let{plugin:e,options:i}=t;return"function"==typeof e?e(i):e}return"function"==typeof t?t():t}function Yh(t){return t&&Array.isArray(t.plugins)?t.plugins:Kh}async function Jh(t,e,i){let n=i,o=Yh(e);for(let i of o){let o=i&&"function"==typeof i[t]?i[t]:null;if(!o)continue;let r=await o(e,n);typeof r<"u"&&(n=r)}return n}function qh(t,e,i=!1){return!t||t.plugins&&!i||(t.plugins=function(t){let e=[];if(Array.isArray(t))for(let i of t){let t=Zh(i);if(!t||!t.name)continue;let n=e.findIndex((e=>e&&e.name===t.name));n>=0&&e.splice(n,1),e.push(t)}for(let t of Kh)t&&t.name&&!e.some((e=>e.name===t.name))&&e.push(t);return Object.freeze(e)}(e)),t}function Qh(t){return!!(!t||t.startsWith("data:")||t.startsWith("blob:")||/^data:image\/(gif|png|svg)/.test(t)&&t.length<200)}function Xh(t,e){let i=t.currentSrc||"";if(i&&!Qh(i))return i;let n=e.querySelectorAll("source[srcset]"),o=null;for(let t of n){let e=t.getAttribute("srcset");if(!e||Qh(e))continue;let i=t.getAttribute("media");if(i)try{if(window.matchMedia(i).matches)return e.split(",")[0].trim().split(/\s+/)[0]}catch{}o||(o=e.split(",")[0].trim().split(/\s+/)[0])}return o}function tp(t){let e=[t.getAttribute("data-src"),t.getAttribute("data-lazy-src"),t.getAttribute("data-original"),t.getAttribute("data-hi-res-src")];for(let t of e)if(t&&!Qh(t))return t;let i=t.getAttribute("data-srcset")||t.getAttribute("data-lazy-srcset");if(i){let t=i.split(",")[0].trim().split(/\s+/)[0];if(t&&!Qh(t))return t}return null}async function ep(t,e={}){if(!(t&&t instanceof Element&&!1!==e.resolvePicturePlaceholders))return null;let{timeout:i,concurrency:n,resolveLazySrc:o,silent:r,useProxy:s}=function(t={}){let e=t.pictureResolver&&"object"==typeof t.pictureResolver?t.pictureResolver:{};return{timeout:e.timeout??5e3,concurrency:e.concurrency??4,resolveLazySrc:!1!==e.resolveLazySrc,silent:e.silent??!1,useProxy:"string"==typeof t.useProxy?t.useProxy:""}}(e);if(!function(t,e){return!!(t&&t instanceof Element&&(t.querySelector("picture")||e&&t.querySelector("img[data-src], img[data-lazy-src], img[data-original], img[data-hi-res-src], img[data-srcset], img[data-lazy-srcset]")))}(t,o))return null;let a=[],l=[];async function c(t){let e=new AbortController,n=setTimeout((()=>e.abort()),i);try{let i=await fetch(t,{credentials:"include",signal:e.signal});if(!i.ok&&s){let n=s.includes("{url}")?s.replace("{url}",encodeURIComponent(t)):s.endsWith("?")?`${s}${encodeURIComponent(t)}`:`${s}${s.includes("?")?"&":"?"}url=${encodeURIComponent(t)}`;i=await fetch(n,{signal:e.signal})}if(!i.ok)return null;let n=await i.blob();return await new Promise(((t,e)=>{let i=new FileReader;i.onload=()=>t(i.result),i.onerror=e,i.readAsDataURL(n)}))}catch{return null}finally{clearTimeout(n)}}let d=t.querySelectorAll("picture");for(let t of d){let e=t.querySelector("img");if(!e)continue;if(!Qh(e.getAttribute("src")||""))continue;let i=Xh(e,t);i&&l.push((async()=>{let n=await c(i);if(!n)return void(r||console.warn(`[snapdom:picture-resolver] Failed to fetch: ${i.slice(0,60)}`));let o=e.getAttribute("src"),s=e.getAttribute("srcset"),l=e.getAttribute("sizes"),d=[];e.src=n,e.setAttribute("src",n),e.removeAttribute("srcset"),e.removeAttribute("sizes");let u=t.querySelectorAll("source");for(let t of u)d.push({el:t,parent:t.parentElement,next:t.nextSibling}),t.remove();a.push((()=>{null!==o?e.setAttribute("src",o):e.removeAttribute("src"),null!==s&&e.setAttribute("srcset",s),null!==l&&e.setAttribute("sizes",l);for(let{el:t,parent:e,next:i}of d)e&&e.insertBefore(t,i)}))}))}if(o){let e=t.querySelectorAll("img");for(let t of e){if(t.closest("picture")&&Qh(t.getAttribute("src")||""))continue;let e=t.getAttribute("src")||"",i=tp(t);i&&Qh(e)&&l.push((async()=>{let e=await c(i);if(!e)return;let n=t.getAttribute("src");t.src=e,t.setAttribute("src",e),t.removeAttribute("srcset"),t.removeAttribute("sizes"),a.push((()=>{null!==n?t.setAttribute("src",n):t.removeAttribute("src")}))}))}}return 0===l.length?null:(await async function(t){for(let e=0;e<t.length;e+=n){let i=t.slice(e,e+n);await Promise.allSettled(i.map((t=>t())))}}(l),async function(){for(let t of a)try{t()}catch{}})}function ip(t){let e=t.display||"";if(e.includes("flex")||e.includes("grid")||e.startsWith("table")||"inline-block"===e||"flow-root"===e||"absolute"===t.position||"fixed"===t.position||t.float&&"none"!==t.float)return!0;let i=t.overflowX||t.overflow||"visible",n=t.overflowY||t.overflow||"visible";return!!("visible"!==i||"visible"!==n||t.contain&&/\b(layout|content|paint|strict)\b/.test(t.contain))}function np(t,e){let i=Array.from(t.childNodes),n="top"===e?i:i.reverse();for(let t of n){if(t.nodeType===Node.TEXT_NODE){if(/\S/.test(t.textContent||""))return null;continue}if(t.nodeType!==Node.ELEMENT_NODE)continue;let e=getComputedStyle(t),i=String(e.display||"");if("none"!==i&&"contents"!==i&&"absolute"!==e.position&&"fixed"!==e.position)return e.float&&"none"!==e.float||i.startsWith("inline")?null:t}return null}Wd();var op=/[\x00-\x08\x0B\x0C\x0E-\x1F]/g;function rp(t,e={}){t&&(function(t,e={}){let{stripFrameworkDirectives:i=!0}=e,n=new Set(["xml","xlink"]),o=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT);for(;o.nextNode();){let t=o.currentNode;for(let e of Array.from(t.attributes)){let o=e.name;if(o.includes("@"))t.removeAttribute(o);else{if(o.includes(":")){let e=o.split(":",1)[0];if(!n.has(e)){t.removeAttribute(o);continue}}i&&(o.startsWith("x-")||o.startsWith("v-")||o.startsWith(":")||o.startsWith("on:")||o.startsWith("bind:")||o.startsWith("let:")||o.startsWith("class:"))&&t.removeAttribute(o)}}}}(t,e),function(t){let e=document.createTreeWalker(t,NodeFilter.SHOW_COMMENT),i=[];for(;e.nextNode();)i.push(e.currentNode);for(let t of i)t.remove()}(t),function(t){if(!t)return;let e=t=>{if(t.nodeType===Node.ELEMENT_NODE){if(t.attributes)for(let e of Array.from(t.attributes)){let i=e.value.replace(op,"");if(i!==e.value)try{t.setAttribute(e.name,i)}catch{}}}else if(t.nodeType===Node.TEXT_NODE||t.nodeType===Node.CDATA_SECTION_NODE){let e=t.data.replace(op,"");e!==t.data&&(t.data=e)}};e(t);let i,n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);for(;i=n.nextNode();)e(i)}(t))}function sp(t,e){if(!(t instanceof Element)||function(t){try{let e=t.getAttribute?.("style")||"";return/\b(height|width|block-size|inline-size)\s*:/.test(e)}catch{return!1}}(t)||function(t){return t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof HTMLIFrameElement||t instanceof SVGElement||t instanceof HTMLObjectElement||t instanceof HTMLEmbedElement}(t))return!1;let i=e.position;if("absolute"===i||"fixed"===i||"sticky"===i)return!1;let n=e.display||"";return!(n.includes("flex")||n.includes("grid")||n.startsWith("table")||e.transform&&"none"!==e.transform)}function ap(t){let e=getComputedStyle(t);return!("none"===e.display||"absolute"===e.position||"fixed"===e.position)}function lp(t,e){if(!(t instanceof Element))return!1;if("exclude"===t.getAttribute("data-capture")&&"remove"===e?.excludeMode)return!0;if(Array.isArray(e?.exclude))for(let i of e.exclude)try{if(t.matches(i))return"remove"===e.excludeMode}catch(t){Bd(e,"exclude selector match failed",t)}return!1}var cp=(t,e=3)=>Number.isFinite(t)?Math.round(t*10**e)/10**e:t,dp=/::-webkit-scrollbar(-[a-z]+)?\b/i;function up(t,e=new Set){let i="";if(!t)return i;for(let n=0;n<t.length;n++){let o=t[n];try{if(o.type===CSSRule.IMPORT_RULE&&o.styleSheet){i+=up(o.styleSheet.cssRules,e);continue}if(o.type===CSSRule.MEDIA_RULE&&o.cssRules){let t=up(o.cssRules,e);t&&(i+=`@media ${o.conditionText}{${t}}`);continue}if(o.type===CSSRule.STYLE_RULE){let t=o.selectorText||"";if(dp.test(t)){let t=o.cssText;t&&!e.has(t)&&(e.add(t),i+=t)}}}catch{}}return i}function hp(t,e,i,n,o){let r=i.a,s=i.b,a=i.c,l=i.d,c=i.e||0,d=i.f||0;function u(t,e){let i=t-n,u=e-o,h=r*i+a*u,p=s*i+l*u;return h+=n+c,p+=o+d,[h,p]}let h=[u(0,0),u(t,0),u(0,e),u(t,e)],p=1/0,f=1/0,v=-1/0,m=-1/0;for(let[t,e]of h)t<p&&(p=t),e<f&&(f=e),t>v&&(v=t),e>m&&(m=e);return{minX:p,minY:f,maxX:v,maxY:m,width:v-p,height:m-f}}function pp(t){let e={rotate:"0deg",scale:null,translate:null},i="function"==typeof t.computedStyleMap?t.computedStyleMap():null;if(i){let n=t=>{try{return"function"==typeof i.has&&!i.has(t)||"function"!=typeof i.get?null:i.get(t)}catch{return null}},o=n("rotate");if(o)if(o.angle){let t=o.angle;e.rotate="rad"===t.unit?180*t.value/Math.PI+"deg":t.value+t.unit}else o.unit?e.rotate="rad"===o.unit?180*o.value/Math.PI+"deg":o.value+o.unit:e.rotate=String(o);else{let i=getComputedStyle(t);e.rotate=i.rotate&&"none"!==i.rotate?i.rotate:"0deg"}let r=n("scale");if(r){let t="x"in r&&null!=r.x?.value?r.x.value:Array.isArray(r)?r[0]?.value:Number(r)||1,i="y"in r&&null!=r.y?.value?r.y.value:Array.isArray(r)?r[1]?.value:t;e.scale=`${t} ${i}`}else{let i=getComputedStyle(t);e.scale=i.scale&&"none"!==i.scale?i.scale:null}let s=n("translate");if(s){let t="x"in s&&"value"in s.x?s.x.value:Array.isArray(s)?s[0]?.value:0,i="y"in s&&"value"in s.y?s.y.value:Array.isArray(s)?s[1]?.value:0,n="x"in s&&s.x?.unit?s.x.unit:"px",o="y"in s&&s.y?.unit?s.y.unit:"px";e.translate=`${t}${n} ${i}${o}`}else{let i=getComputedStyle(t);e.translate=i.translate&&"none"!==i.translate?i.translate:null}return e}let n=getComputedStyle(t);return e.rotate=n.rotate&&"none"!==n.rotate?n.rotate:"0deg",e.scale=n.scale&&"none"!==n.scale?n.scale:null,e.translate=n.translate&&"none"!==n.translate?n.translate:null,e}jd();var fp=null;function vp(t){let e=function(){if(fp)return fp;let t=document.createElement("div");return t.id="snapdom-measure-slot",t.setAttribute("aria-hidden","true"),Object.assign(t.style,{position:"absolute",left:"-99999px",top:"0px",width:"0px",height:"0px",overflow:"hidden",opacity:"0",pointerEvents:"none",contain:"size layout style"}),document.documentElement.appendChild(t),fp=t,t}(),i=document.createElement("div");i.style.transformOrigin="0 0",t.baseTransform&&(i.style.transform=t.baseTransform),t.rotate&&(i.style.rotate=t.rotate),t.scale&&(i.style.scale=t.scale),t.translate&&(i.style.translate=t.translate),e.appendChild(i);let n=function(t){let e=getComputedStyle(t).transform;if(!e||"none"===e)return new DOMMatrix;try{return new DOMMatrix(e)}catch{return new WebKitCSSMatrix(e)}}(i);return e.removeChild(i),n}function mp(t){if(Array.isArray(t.plugins))for(let e of t.plugins)if("picture-resolver"===Zh(e)?.name)return!0;return Kh.slice().some((t=>"picture-resolver"===t?.name))}async function gp(t,e){if(!t)throw new Error("Element cannot be null or undefined");!function(t="soft"){switch(fd.session._=(fd.session._||0)+1,t){case"auto":return fd.session.styleMap=new Map,void(fd.session.nodeMap=new Map);case"soft":default:return fd.session.styleMap=new Map,fd.session.nodeMap=new Map,void(fd.session.styleCache=new WeakMap);case"full":return;case"disabled":fd.session.styleMap=new Map,fd.session.nodeMap=new Map,fd.session.styleCache=new WeakMap,fd.computedStyle=new WeakMap,fd.measureHints=new WeakMap,fd.baseStyle=new pd(50),fd.defaultStyle=new pd(30),fd.image=new pd(100),fd.background=new pd(100),fd.resource=new pd(150),fd.font=new Set}}(e.cache);let i,n,o,r,s,a=e.fast,l=!1!==e.outerTransforms,c=!!e.outerShadows,d={element:t,options:e,plugins:e.plugins},u="",h="",p=null;await Jh("beforeSnap",d);let f=null;!1!==e.resolvePicturePlaceholders&&!mp(e)&&(f=await ep(d.element,d.options)),await Jh("beforeClone",d);let v=Gh(d.element);try{({clone:i,classCSS:n,styleCache:o}=await Bh(d.element,d.options)),!l&&i&&(p=function(t,e){if(!t||!e||!e.style)return null;let i=getComputedStyle(t);try{e.style.transformOrigin="0 0"}catch{}try{"translate"in e.style&&(e.style.translate="none"),"rotate"in e.style&&(e.style.rotate="none")}catch{}let n=i.transform||"none";if("none"===n){let i=null;try{i=pp(t).scale}catch{}try{e.style.transform="none"}catch{}if(!i)return{a:1,b:0,c:0,d:1};let n=i.trim().split(/\s+/).map(parseFloat),o=Number.isFinite(n[0])?n[0]:1;return{a:o,b:0,c:0,d:Number.isFinite(n[1])?n[1]:o}}function o(t,e,i,n){let o=Math.sqrt(t*t+e*e)||0,r=0,s=0;if(o>0){let a=t/o,l=e/o;r=a*i+l*n;let c=i-a*r,d=n-l*r;s=Math.sqrt(c*c+d*d)||0,s>0?r/=s:r=0}return{a:o,b:0,c:r*s,d:s}}let r=n.match(/^matrix\(\s*([^)]+)\)$/i);if(r){let t=r[1].split(",").map((t=>parseFloat(t.trim())));if(6===t.length&&t.every(Number.isFinite)){let[i,n,r,s]=t,a=o(i,n,r,s);try{e.style.transform=`matrix(${a.a}, ${a.b}, ${a.c}, ${a.d}, 0, 0)`}catch{}return a}}let s=n.match(/^matrix3d\(\s*([^)]+)\)$/i);if(s){let t=s[1].split(",").map((t=>parseFloat(t.trim())));if(16===t.length&&t.every(Number.isFinite)){let i=o(t[0],t[1],t[4],t[5]);try{e.style.transform=`matrix(${i.a}, ${i.b}, ${i.c}, ${i.d}, 0, 0)`}catch{}return i}}try{let t=new DOMMatrix(n),i=o(t.a,t.b,t.c,t.d);try{e.style.transform=`matrix(${i.a}, ${i.b}, ${i.c}, ${i.d}, 0, 0)`}catch{}return i}catch{return null}}(d.element,i)),!c&&i&&function(t,e,i={}){if(!t||!e||!e.style)return;let n=getComputedStyle(t);try{e.style.boxShadow="none"}catch(t){Bd(i,"stripRootShadows boxShadow",t)}try{e.style.textShadow="none"}catch(t){Bd(i,"stripRootShadows textShadow",t)}try{e.style.outline="none"}catch(t){Bd(i,"stripRootShadows outline",t)}let o=(n.filter||"").replace(/\bblur\([^()]*\)\s*/gi,"").replace(/\bdrop-shadow\([^()]*\)\s*/gi,"").trim().replace(/\s+/g," ");try{e.style.filter=o.length?o:"none"}catch(t){Bd(i,"stripRootShadows filter",t)}}(d.element,i,d.options),i&&function(t,e){if(!t||!e||!e.style)return;let i=getComputedStyle(t);if(!ip(i))for(let n of["top","bottom"]){let o="top"===n?"Top":"Bottom";if((parseFloat(i[`border${o}Width`])||0)>0||(parseFloat(i[`padding${o}`])||0)>0)continue;let r=t,s=e;for(;r&&s;){let t=np(r,n);if(!t)break;let e=Array.from(r.children).indexOf(t),i=e>=0?s.children[e]:null,a=getComputedStyle(t),l=parseFloat(a[`margin${o}`])||0;if(i&&i.style&&l>0&&(i.style[`margin${o}`]="0px"),ip(a)||(parseFloat(a[`border${o}Width`])||0)>0||(parseFloat(a[`padding${o}`])||0)>0)break;r=t,s=i}}}(d.element,i)}finally{v()}if(d={clone:i,classCSS:n,styleCache:o,...d},await Jh("afterClone",d),f&&await f(),rp(d.clone),"remove"===d.options?.excludeMode)try{!function(t,e,i=new Map){!function t(e,n){if(!(e instanceof Element&&n instanceof Element))return;let o=e.childElementCount>n.childElementCount,r=i.get(e)||getComputedStyle(e);if(i.has(e)||i.set(e,r),o&&sp(e,r)){n.style.height||(n.style.height="auto"),n.style.width||(n.style.width="auto"),n.style.removeProperty("block-size"),n.style.removeProperty("inline-size"),n.style.minHeight||(n.style.minHeight="0"),n.style.minWidth||(n.style.minWidth="0"),n.style.maxHeight||(n.style.maxHeight="none"),n.style.maxWidth||(n.style.maxWidth="none");let t=r.overflowY||r.overflowBlock||"visible",e=r.overflowX||r.overflowInline||"visible";("visible"!==t||"visible"!==e)&&(n.style.overflow="visible")}let s=Array.from(e.children),a=Array.from(n.children);for(let e=0;e<Math.min(s.length,a.length);e++)t(s[e],a[e])}(t,e)}(d.element,d.clone,d.styleCache)}catch(t){console.warn("[snapdom] shrink pass failed:",t)}try{await async function(t,e){if(!(t instanceof Element))return 0;let i='.material-icons, [class*="material-symbols"]',n=Array.from(t.querySelectorAll(i)).filter((t=>t&&t.textContent&&t.textContent.trim()));if(0===n.length)return 0;let o=fd.session.nodeMap,r=e instanceof Element?Array.from(e.querySelectorAll(i)).filter((t=>t&&t.textContent&&t.textContent.trim())):[],s=0;for(let t=0;t<n.length;t++){let e=n[t],i=o&&o.get(e)||r[t]||null;try{let t=getComputedStyle(i||e),n=t.fontFamily||"Material Icons";if(!Zu(n))continue;let o=(i||e).textContent.trim();if(!o)continue;let r=parseInt(t.fontSize,10)||24,a=t.fontWeight&&"normal"!==t.fontWeight?t.fontWeight:"normal",l=Ju(t),c=t.fontVariationSettings&&"normal"!==t.fontVariationSettings?t.fontVariationSettings:"",d=(i||e).className||"",{dataUrl:u,width:h,height:p}=await qu(o,{family:n,weight:a,fontSize:r,color:l,variation:c,className:d});e.textContent="";let f=e.ownerDocument.createElement("img");f.src=u,f.alt=o,f.style.height=`${r}px`,f.style.width=`${Math.max(1,Math.round(h/p*r))}px`,f.style.objectFit="contain",f.style.verticalAlign=getComputedStyle(e).verticalAlign||"baseline",e.appendChild(f),s++}catch{}}return s}(d.clone,d.element)}catch{}await new Promise((t=>{Vd((async()=>{await Wh(d.clone,d.options),t()}),{fast:a})})),await new Promise((t=>{Vd((async()=>{await async function(t,e,i,n={}){let o=[[t,e]],r=["background-image","mask","mask-image","-webkit-mask","-webkit-mask-image","mask-source","mask-box-image-source","mask-border-source","-webkit-mask-box-image-source","border-image","border-image-source"],s=["mask-position","mask-size","mask-repeat","mask-mode","mask-composite","-webkit-mask-position","-webkit-mask-size","-webkit-mask-repeat","-webkit-mask-composite","mask-origin","mask-clip","-webkit-mask-origin","-webkit-mask-clip","-webkit-mask-position-x","-webkit-mask-position-y"],a=["background-position","background-position-x","background-position-y","background-size","background-repeat","background-origin","background-clip","background-attachment","background-blend-mode"],l=["border-image-slice","border-image-width","border-image-outset","border-image-repeat"];for(;o.length;){let[t,e]=o.shift();if(!e)continue;let c=i.get(t)||_d(t);i.has(t)||i.set(t,c);let d=(()=>{let t=c.getPropertyValue("border-image"),e=c.getPropertyValue("border-image-source");return t&&"none"!==t||e&&"none"!==e})(),u=c.getPropertyValue("background-image"),h=c.getPropertyValue("background-color");if(u&&"none"!==u||h&&"rgba(0, 0, 0, 0)"!==h&&"transparent"!==h||/url\s*\(|gradient\s*\(/i.test(c.getPropertyValue("background")||""))for(let t of a){let i=c.getPropertyValue(t);i&&e.style.setProperty(t,i)}for(let t of r){let i=c.getPropertyValue(t);if("background-image"===t&&(!i||"none"===i)){let t=c.getPropertyValue("background");t&&/url\s*\(/.test(t)&&(i=Ad(t).filter((t=>/url\s*\(/.test(t))).join(", ")||i)}if(!i||"none"===i)continue;let o=Ad(i),r=await Promise.all(o.map((t=>Md(t,n))));r.some((t=>t&&"none"!==t&&!/^url\(undefined/.test(t)))&&e.style.setProperty(t,r.join(", "))}for(let t of s){let i=c.getPropertyValue(t);!i||"initial"===i||e.style.setProperty(t,i)}if(d)for(let t of l){let i=c.getPropertyValue(t);!i||"initial"===i||e.style.setProperty(t,i)}let p=t.shadowRoot?Array.from(t.shadowRoot.children).filter((t=>"STYLE"!==t.tagName)):Array.from(t.children),f=Array.from(e.children).filter((t=>!(t.dataset?.snapdomPseudo||"STYLE"===t.tagName&&t.dataset?.sd)));for(let t=0;t<Math.min(p.length,f.length);t++)o.push([p[t],f[t]])}}(d.element,d.clone,d.styleCache,d.options),t()}),{fast:a})})),e.embedFonts&&await new Promise((t=>{Vd((async()=>{let e=yh(d.element),i=function(t){let e=new Set,i=t=>{if(t)for(let i of t)e.add(i.codePointAt(0))},n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null);for(;n.nextNode();){let t=n.currentNode;if(t.nodeType===Node.TEXT_NODE)i(t.nodeValue||"");else if(t.nodeType===Node.ELEMENT_NODE){let n=t;for(let t of["::before","::after"]){let o=getComputedStyle(n,t)?.getPropertyValue("content");if(o&&"none"!==o)if(/^"/.test(o)||/^'/.test(o))i(o.slice(1,-1));else{let t=o.match(/\\[0-9A-Fa-f]{1,6}/g);if(t)for(let i of t)try{e.add(parseInt(i.slice(1),16))}catch{}}}}}return e}(d.element);if(Ud()){let t=new Set(Array.from(e).map((t=>String(t).split("__")[0])).filter(Boolean));await bh(t,1)}u=await wh({required:e,usedCodepoints:i,exclude:d.options.excludeFonts,localFonts:d.options.localFonts,useProxy:d.options.useProxy,fontStylesheetDomains:d.options.fontStylesheetDomains}),t()}),{fast:a})}));let m=function(t){let e=new Set;return t.nodeType!==Node.ELEMENT_NODE&&t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE?[]:(t.tagName&&e.add(t.tagName.toLowerCase()),"function"==typeof t.querySelectorAll&&t.querySelectorAll("*").forEach((t=>e.add(t.tagName.toLowerCase()))),Array.from(e))}(d.clone).sort(),g=m.join(",");fd.baseStyle.has(g)?h=fd.baseStyle.get(g):await new Promise((t=>{Vd((()=>{h=function(t){let e=new Map;for(let i of t){let t=fd.defaultStyle.get(i);if(!t)continue;let n=Object.entries(t).map((([t,e])=>`${t}:${e};`)).sort().join("");n&&(e.has(n)||e.set(n,[]),e.get(n).push(i))}let i="";for(let[t,n]of e.entries())i+=`${n.join(",")} { ${t} }\n`;return i}(m),fd.baseStyle.set(g,h),t()}),{fast:a})}));let w=function(t){if(!t||!t.styleSheets)return"";let e=new Set,i="";for(let n of Array.from(t.styleSheets))try{let t=n.cssRules;t&&(i+=up(t,e))}catch{}return i}(d.element?.ownerDocument||document);d={fontsCSS:u,baseCSS:h,scrollbarCSS:w,...d},await Jh("beforeRender",d),await new Promise((t=>{Vd((()=>{let i=_d(d.element),n=d.element.getBoundingClientRect(),o=Math.max(1,cp(d.element.offsetWidth||parseFloat(i.width)||n.width||1)),a=Math.max(1,cp(d.element.offsetHeight||parseFloat(i.height)||n.height||1)),u=d.element.ownerDocument||document;if(d.element===u.body||d.element===u.documentElement){let t=Math.max(d.element.scrollHeight||0,u.documentElement?.scrollHeight||0,u.body?.scrollHeight||0),e=Math.max(d.element.scrollWidth||0,u.documentElement?.scrollWidth||0,u.body?.scrollWidth||0);t>0&&(a=Math.max(a,cp(t))),e>0&&(o=Math.max(o,cp(e)));try{let t=(d.scrollbarCSS||"").length+(d.baseCSS||"").length+(d.fontsCSS||"").length+(d.classCSS||"").length,e=fd.measureHints.get(d.element);if(e&&e.cssLen===t&&e.w0===o)e.csh>0&&(a=Math.max(a,cp(e.csh))),e.csw>0&&(o=Math.max(o,cp(e.csw)));else{let e=u.createElement("div");e.style.cssText="position:absolute!important;left:-9999px!important;top:0!important;width:"+o+"px!important;overflow:visible!important;visibility:hidden!important;";let i=u.createElement("style");i.textContent=(d.scrollbarCSS||"")+d.baseCSS+d.fontsCSS+"svg{overflow:visible;} foreignObject{overflow:visible;}"+d.classCSS,e.appendChild(i),e.appendChild(d.clone.cloneNode(!0)),u.body.appendChild(e);let n=e.scrollHeight,r=e.scrollWidth;u.body.removeChild(e),fd.measureHints.set(d.element,{cssLen:t,w0:o,csh:n,csw:r}),n>0&&(a=Math.max(a,cp(n))),r>0&&(o=Math.max(o,cp(r)))}}catch{}}if("remove"===d.options?.excludeMode){let t=function(t,e){let i=getComputedStyle(t),n=t.getBoundingClientRect(),o=1/0,r=-1/0,s=!1,a=Array.from(t.children);for(let t of a){if(lp(t,e)||!ap(t))continue;let i=t.getBoundingClientRect(),a=i.top-n.top,l=i.bottom-n.top;l<=a||(a<o&&(o=a),l>r&&(r=l),s=!0)}let l=s?Math.max(0,r-o):0;return(parseFloat(i.borderTopWidth)||0)+(parseFloat(i.borderBottomWidth)||0)+(parseFloat(i.paddingTop)||0)+(parseFloat(i.paddingBottom)||0)+l}(d.element,d.options);Number.isFinite(t)&&t>0&&(a=Math.max(1,Math.min(a,cp(t+1))))}let h=(t,e=NaN)=>{let i="string"==typeof t?parseFloat(t):t;return Number.isFinite(i)?i:e},f=h(d.options.width),v=h(d.options.height),m=o,g=a,w=Number.isFinite(f),y=Number.isFinite(v),b=a>0?o/a:1;w&&y?(m=Math.max(1,cp(f)),g=Math.max(1,cp(v))):w?(m=Math.max(1,cp(f)),g=Math.max(1,cp(m/(b||1)))):y?(g=Math.max(1,cp(v)),m=Math.max(1,cp(g*(b||1)))):(m=o,g=a);let C=0,x=0,k=o,E=a;if(!l&&p&&Number.isFinite(p.a)){let t=hp(o,a,{a:p.a,b:p.b||0,c:p.c||0,d:p.d||1,e:0,f:0},0,0);C=cp(t.minX),x=cp(t.minY),k=cp(t.maxX),E=cp(t.maxY)}else if(l&&wp(d.element)){let t=i.transform&&"none"!==i.transform?i.transform:"",e=pp(d.element),n=vp({baseTransform:t,rotate:e.rotate||"0deg",scale:e.scale,translate:e.translate}),{ox:r,oy:s}=function(t,e,i){let n=(t.transformOrigin||"0 0").trim().split(/\s+/),[o,r]=[n[0]||"0",n[1]||"0"],s=(t,e)=>{let i=t.toLowerCase();return"left"===i||"top"===i?0:"center"===i?e/2:"right"===i||"bottom"===i?e:i.endsWith("px")?parseFloat(i)||0:i.endsWith("%")?(parseFloat(i)||0)*e/100:/^-?\d+(\.\d+)?$/.test(i)&&parseFloat(i)||0};return{ox:s(o,e),oy:s(r,i)}}(i,o,a),l=hp(o,a,n.is2D?n:new DOMMatrix(n.toString()),r,s);C=cp(l.minX),x=cp(l.minY),k=cp(l.maxX),E=cp(l.maxY)}let S=function(t){let e=t.boxShadow||"";if(!e||"none"===e)return{top:0,right:0,bottom:0,left:0};let i=[],n="",o=0;for(let t=0;t<e.length;t++){let r=e[t];"("===r?o++:")"===r&&(o=Math.max(0,o-1)),","===r&&0===o?(i.push(n),n=""):n+=r}n.trim()&&i.push(n);let r=0,s=0,a=0,l=0;for(let t of i){if(/\binset\b/i.test(t))continue;let e=t.match(/-?\d+(\.\d+)?px/g)?.map((t=>parseFloat(t)))||[];if(e.length<2)continue;let[i,n,o=0,c=0]=e,d=Math.abs(i)+o+c,u=Math.abs(n)+o+c;s=Math.max(s,d+Math.max(i,0)),l=Math.max(l,d+Math.max(-i,0)),a=Math.max(a,u+Math.max(n,0)),r=Math.max(r,u+Math.max(-n,0))}return{top:Math.ceil(r),right:Math.ceil(s),bottom:Math.ceil(a),left:Math.ceil(l)}}(i),M=function(t){let e,i=t.filter&&"none"!==t.filter?t.filter:t.webkitFilter||"",n=/blur\(\s*([0-9.]+)px\s*\)/gi,o=0;for(;e=n.exec(i);)o+=parseFloat(e[1])||0;let r=Math.ceil(o);return{top:r,right:r,bottom:r,left:r}}(i),$=function(t){if("none"===(t.outlineStyle||"none"))return{top:0,right:0,bottom:0,left:0};let e=Math.ceil(parseFloat(t.outlineWidth||"0")||0),i=parseFloat(t.outlineOffset||"0")||0,n=e+Math.max(0,Math.ceil(i));return{top:n,right:n,bottom:n,left:n}}(i),T=function(t){let e=`${t.filter||""} ${t.webkitFilter||""}`.trim();if(!e||"none"===e)return{bleed:{top:0,right:0,bottom:0,left:0},has:!1};let i=e.match(/drop-shadow\((?:[^()]|\([^()]*\))*\)/gi)||[],n=0,o=0,r=0,s=0,a=!1;for(let t of i){a=!0;let e=t.match(/-?\d+(?:\.\d+)?px/gi)?.map((t=>parseFloat(t)))||[],[i=0,l=0,c=0]=e,d=Math.abs(i)+c,u=Math.abs(l)+c;o=Math.max(o,d+Math.max(i,0)),s=Math.max(s,d+Math.max(-i,0)),r=Math.max(r,u+Math.max(l,0)),n=Math.max(n,u+Math.max(-l,0))}return{bleed:{top:cp(n),right:cp(o),bottom:cp(r),left:cp(s)},has:a}}(i),I=c?{top:cp(S.top+M.top+$.top+T.bleed.top),right:cp(S.right+M.right+$.right+T.bleed.right),bottom:cp(S.bottom+M.bottom+$.bottom+T.bleed.bottom),left:cp(S.left+M.left+$.left+T.bleed.left)}:{top:0,right:0,bottom:0,left:0};C=cp(C-I.left),x=cp(x-I.top),k=cp(k+I.right),E=cp(E+I.bottom);let _=Math.max(1,cp(k-C)),N=Math.max(1,cp(E-x)),A=w||y?cp(m/o):1,L=y||w?cp(g/a):1,O=Math.max(1,cp(_*A)),F=Math.max(1,cp(N*L)),D="http://www.w3.org/2000/svg",P=Ud()&&wp(d.element)?1:0,R=cp(P+(l?0:1)),j=document.createElementNS(D,"foreignObject"),V=cp(C),U=cp(x);j.setAttribute("x",String(cp(-(V-R)))),j.setAttribute("y",String(cp(-(U-R)))),j.setAttribute("width",String(cp(o+2*R))),j.setAttribute("height",String(cp(a+2*R))),j.style.overflow="visible";let z=document.createElement("style");z.textContent=(d.scrollbarCSS||"")+d.baseCSS+d.fontsCSS+"svg{overflow:visible;} foreignObject{overflow:visible;} foreignObject>div{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important;}"+d.classCSS,j.appendChild(z);let B=document.createElement("div");B.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),B.style.cssText=`all:initial;box-sizing:border-box;display:block;overflow:visible;width:${cp(o)}px;height:${cp(a)}px`,B.appendChild(d.clone),j.appendChild(B);let H=(new XMLSerializer).serializeToString(j),W=cp(_+2*R),G=cp(N+2*R),K=w||y;e.meta={w0:o,h0:a,vbW:W,vbH:G,targetW:m,targetH:g};let Z=Ud()&&K?W:cp(O+2*R),Y=Ud()&&K?G:cp(F+2*R),J=parseFloat(_d(u.documentElement)?.fontSize)||16;s=`<svg xmlns="${D}" width="${Z}" height="${Y}" viewBox="0 0 ${W} ${G}" font-size="${J}px">`+H+"</svg>",r=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(s)}`,d={svgString:s,dataURL:r,...d},t()}),{fast:a})})),await Jh("afterRender",d);let y=document.getElementById("snapdom-sandbox");return y&&"absolute"===y.style.position&&y.remove(),d.dataURL}function wp(t){return function(t){let e=_d(t),i=e.transform||"none";if("none"!==i&&!/^matrix\(\s*1\s*,\s*0\s*,\s*0\s*,\s*1\s*,\s*0\s*,\s*0\s*\)$/i.test(i))return!0;let n=e.rotate&&"none"!==e.rotate&&"0deg"!==e.rotate,o=e.scale&&"none"!==e.scale&&"1"!==e.scale,r=e.translate&&"none"!==e.translate&&"0px 0px"!==e.translate;return!!(n||o||r)}(t)}vd(),zd(),Hd(),Wd(),Sd(),vd();var yp=Object.assign((async function(t,e){if(!t)throw new Error("Element cannot be null or undefined");let i=function(t={}){let e=t.format??"png";"jpg"===e&&(e="jpeg");let i=function(t){if(!0===t)return"soft";if(!1===t)return"disabled";if("string"==typeof t){let e=t.toLowerCase().trim();if("auto"===e)return"auto";if("full"===e)return"full";if("soft"===e||"disabled"===e)return e}return"soft"}(t.cache);return{debug:t.debug??!1,fast:t.fast??!0,scale:t.scale??1,exclude:t.exclude??[],excludeMode:t.excludeMode??"hide",filter:t.filter??null,filterMode:t.filterMode??"hide",placeholders:!1!==t.placeholders,embedFonts:t.embedFonts??!1,iconFonts:Array.isArray(t.iconFonts)?t.iconFonts:t.iconFonts?[t.iconFonts]:[],localFonts:Array.isArray(t.localFonts)?t.localFonts:[],excludeFonts:t.excludeFonts??void 0,fontStylesheetDomains:Array.isArray(t.fontStylesheetDomains)?t.fontStylesheetDomains:[],fallbackURL:t.fallbackURL??void 0,cache:i,useProxy:"string"==typeof t.useProxy?t.useProxy:"",width:t.width??null,height:t.height??null,format:e,type:t.type??"svg",quality:t.quality??.92,dpr:t.dpr??(window.devicePixelRatio||1),backgroundColor:t.backgroundColor??(["jpeg","webp"].includes(e)?"#ffffff":null),filename:t.filename??"snapDOM",outerTransforms:t.outerTransforms??!0,outerShadows:t.outerShadows??!1,safariWarmupAttempts:Math.min(3,Math.max(1,0|(t.safariWarmupAttempts??3))),excludeStyleProps:t.excludeStyleProps??null,resolvePicturePlaceholders:!1!==t.resolvePicturePlaceholders,pictureResolver:t.pictureResolver&&"object"==typeof t.pictureResolver?t.pictureResolver:{}}}(e);if(qh(i,e&&e.plugins),Ud()&&(!0===i.embedFonts||function(t){let e=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT);for(;e.nextNode();){let t=e.currentNode,i=getComputedStyle(t),n=i.backgroundImage&&"none"!==i.backgroundImage,o=i.maskImage&&"none"!==i.maskImage||i.webkitMaskImage&&"none"!==i.webkitMaskImage;if(n||o||"CANVAS"===t.tagName)return!0}return!1}(t))){if(i.embedFonts)try{let e=yh(t),i=new Set([...e].map((t=>String(t).split("__")[0])).filter(Boolean));await bh(i,1)}catch{}let n=i.safariWarmupAttempts??3;for(let i=0;i<n;i++)try{await kp(t,e)}catch{}}return i.iconFonts&&i.iconFonts.length>0&&function(t){let e=Array.isArray(t)?t:[t];for(let t of e)t instanceof RegExp?Wu.push(t):"string"==typeof t?Wu.push(new RegExp(Gu(t),"i")):console.warn("[snapdom] Ignored invalid iconFont value:",t)}(i.iconFonts),i.snap||(i.snap={toPng:(t,e)=>yp.toPng(t,e),toSvg:(t,e)=>yp.toSvg(t,e)}),yp.capture(t,i,bp)}),{plugins:function(...t){return function(...t){let e=t.flat();for(let t of e){let e=Zh(t);e&&(Kh.some((t=>t&&t.name&&e.name&&t.name===e.name))||Kh.push(e))}}(...t),yp}}),bp=Symbol("snapdom.internal"),Cp=Symbol("snapdom.internal.silent"),xp=!1;async function kp(t,e){if(xp)return;let i,n={...e,fast:!0,embedFonts:!0,scale:.2};try{i=await gp(t,n)}catch(t){Bd(e,"safariWarmup pre-capture failed",t)}await new Promise((t=>requestAnimationFrame((()=>requestAnimationFrame(t))))),i&&await new Promise((t=>{let n=new Image;try{n.decoding="sync",n.loading="eager"}catch(t){Bd(e,"safariWarmup img hints failed",t)}n.style.cssText="position:fixed;left:0px;top:0px;width:10px;height:10px;opacity:0.01;pointer-events:none;",n.src=i,document.body.appendChild(n),(async()=>{try{"function"==typeof n.decode&&await n.decode()}catch(t){Bd(e,"safariWarmup img.decode failed",t)}let i=performance.now();for(;!(n.complete&&n.naturalWidth>0)&&performance.now()-i<900;)await new Promise((t=>setTimeout(t,200)));await new Promise((t=>requestAnimationFrame(t)));try{let t=document.createElement("canvas");t.width=Math.max(1,n.naturalWidth||10),t.height=Math.max(1,n.naturalHeight||10);let e=t.getContext("2d");e&&e.drawImage(n,0,0)}catch{}await new Promise((t=>requestAnimationFrame(t)));try{n.remove()}catch(t){Bd(e,"safariWarmup img.remove failed",t)}t()})()})),t.querySelectorAll("canvas").forEach((t=>{try{let e=t.getContext("2d",{willReadFrequently:!0});e&&e.getImageData(0,0,1,1)}catch(t){Bd(e,"safariWarmup canvas poke failed",t)}})),xp=!0}yp.capture=async(t,e,i)=>{if(i!==bp)throw new Error("[snapdom.capture] is internal. Use snapdom(...) instead.");let n=await gp(t,e),o={img:async(t,e)=>{let{toImg:i}=await Promise.resolve().then((()=>(au(),ru)));return i(n,{...t,...e||{}})},svg:async(t,e)=>{let{toSvg:i}=await Promise.resolve().then((()=>(au(),ru)));return i(n,{...t,...e||{}})},canvas:async(t,e)=>{let{toCanvas:i}=await Promise.resolve().then((()=>(eu(),Gd)));return i(n,{...t,...e||{}})},blob:async(t,e)=>{let{toBlob:i}=await Promise.resolve().then((()=>(du(),lu)));return i(n,{...t,...e||{}})},png:async(t,e)=>{let{rasterize:i}=await Promise.resolve().then((()=>(ou(),iu)));return i(n,{...t,...e||{},format:"png"})},jpeg:async(t,e)=>{let{rasterize:i}=await Promise.resolve().then((()=>(ou(),iu)));return i(n,{...t,...e||{},format:"jpeg"})},webp:async(t,e)=>{let{rasterize:i}=await Promise.resolve().then((()=>(ou(),iu)));return i(n,{...t,...e||{},format:"webp"})},download:async(t,e)=>{let{download:i}=await Promise.resolve().then((()=>(fu(),uu)));return i(n,{...t,...e||{}})}},r={};for(let t of["img","svg","canvas","blob","png","jpeg","webp"])r[t]=async i=>o[t](e,{...i||{},[Cp]:!0});r.jpg=r.jpeg;let s={...e,export:{url:n},exports:r},a=await async function(t,e,i){let n=[],o=Yh(e);for(let r of o){let o=r&&"function"==typeof r[t]?r[t]:null;if(!o)continue;let s=await o(e,i);typeof s<"u"&&n.push(s)}return n}("defineExports",s),l=Object.assign({},...a.filter((t=>t&&"object"==typeof t)).reverse()),c={...o,...l};c.jpeg&&!c.jpg&&(c.jpg=(t,e)=>c.jpeg(t,e));let d=!1,u=Promise.resolve();async function h(t,i){return u=u.then((async()=>{let o=c[t];if(!o)throw new Error(`[snapdom] Unknown export type: ${t}`);let r=function(t,i){let n={...e,...i||{}};return[t,n.format,n.type].map((t=>"string"==typeof t?t.toLowerCase():"")).find((t=>"jpeg"===t||"jpg"===t||"webp"===t))&&(null==n.backgroundColor||"transparent"===n.backgroundColor)&&(n.backgroundColor="#ffffff"),n}(t,i),s={...e,export:{type:t,options:r,url:n}};await Jh("beforeExport",s);let a=await o(s,r);return await Jh("afterExport",s,a),d||(d=!0,await Jh("afterSnap",e)),a}))}let p={url:n,toRaw:()=>n,to:(t,e)=>h(t,e),toImg:t=>h("img",t),toSvg:t=>h("svg",t),toCanvas:t=>h("canvas",t),toBlob:t=>h("blob",t),toPng:t=>h("png",t),toJpg:t=>h("jpg",t),toWebp:t=>h("webp",t),download:t=>h("download",t)};for(let t of Object.keys(c)){let e="to"+t.charAt(0).toUpperCase()+t.slice(1);p[e]||(p[e]=e=>h(t,e))}return p},yp.toRaw=(t,e)=>yp(t,e).then((t=>t.toRaw())),yp.toImg=(t,e)=>yp(t,e).then((t=>t.toImg())),yp.toSvg=(t,e)=>yp(t,e).then((t=>t.toSvg())),yp.toCanvas=(t,e)=>yp(t,e).then((t=>t.toCanvas())),yp.toBlob=(t,e)=>yp(t,e).then((t=>t.toBlob())),yp.toPng=(t,e)=>yp(t,{...e,format:"png"}).then((t=>t.toPng())),yp.toJpg=(t,e)=>yp(t,{...e,format:"jpeg"}).then((t=>t.toJpg())),yp.toWebp=(t,e)=>yp(t,{...e,format:"webp"}).then((t=>t.toWebp())),yp.download=(t,e)=>yp(t,e).then((t=>t.download()));const Ep=["#sf-capture-poc-panel","#sf-capture-poc-marker","superflow-toolbar","snippyly-plugin","velt-comments","velt-comments-sidebar","velt-comment-tool","velt-cursor","velt-presence","velt-huddle","velt-arrows","velt-recorder-notes","velt-recorder-control-panel","velt-notifications-history-panel","velt-root"],Sp="sf-capture-hide-widgets";function Mp(){var t;null===(t=document.getElementById(Sp))||void 0===t||t.remove()}function $p(){const t=document.documentElement;return{scrollX:window.scrollX,scrollY:window.scrollY,viewportW:t.clientWidth,viewportH:t.clientHeight,dpr:window.devicePixelRatio||1}}function Tp(t){return new Promise((e=>{let i=Math.max(1,t);const n=()=>{i-=1,i<=0?e():requestAnimationFrame(n)};requestAnimationFrame(n)}))}function Ip(t,e,i,n,o){const r=Math.max(0,Math.round(e)),s=Math.max(0,Math.round(i)),a=Math.max(1,Math.min(Math.round(n),t.width-r)),l=Math.max(1,Math.min(Math.round(o),t.height-s)),c=document.createElement("canvas");c.width=a,c.height=l;const d=c.getContext("2d");return d?(d.drawImage(t,r,s,a,l,0,0,a,l),c):t}function _p(t,e){const i=Math.max(t.width,t.height);if(i<=e)return{canvas:t,ratio:1};const n=e/i,o=Math.max(1,Math.round(t.width*n)),r=Math.max(1,Math.round(t.height*n)),s=document.createElement("canvas");s.width=o,s.height=r;const a=s.getContext("2d");return a?(a.imageSmoothingEnabled=!0,a.imageSmoothingQuality="high",a.drawImage(t,0,0,o,r),{canvas:s,ratio:n}):{canvas:t,ratio:1}}function Np(t,e,i){return new Promise((n=>{t.toBlob((t=>n(t)),e,i)}))}async function Ap(t,e=.9){const i=await Np(t,"image/webp",e);if(i&&"image/webp"===i.type)return{blob:i,type:i.type};const n=await Np(t,"image/png");if(n)return{blob:n,type:"image/png"};throw new Error("canvas-encode-failed")}class Lp{constructor(){this.name="dom"}isSupported(){return"undefined"!=typeof document&&"undefined"!=typeof HTMLCanvasElement}async capture(t={}){var e,i,n;const o=null!==(e=t.scope)&&void 0!==e?e:"viewport",r=null!==(i=t.excludeMode)&&void 0!==i?i:"remove",s=(null===(n=t.proxyUrl)||void 0===n?void 0:n.trim())||void 0,a=performance.now(),l=$p(),c=Math.min(window.devicePixelRatio||1,2),d=await yp(document.documentElement,{scale:c,exclude:Ep,excludeMode:r,useProxy:s,backgroundColor:"#ffffff"});let u=await d.toCanvas(),h=0,p=0;"viewport"===o&&(u=Ip(u,l.scrollX*c,l.scrollY*c,l.viewportW*c,l.viewportH*c),h=l.scrollX,p=l.scrollY);const f=_p(u,2560);u=f.canvas;const v=c*f.ratio,{blob:m,type:g}=await Ap(u,.9),w=performance.now()-a;return{blob:m,width:u.width,height:u.height,mode:this.name,durationMs:w,page:l,scope:o,blobType:g,markerMapping:{scaleX:v,scaleY:v,originXCss:h,originYCss:p}}}}class Op{constructor(){this.name="native",this.stream=null,this.video=null,this.surface=void 0,this.cropEl=null,this.lastDebug=null,this.onEnded=null}isSupported(){return"undefined"!=typeof navigator&&!!navigator.mediaDevices&&"function"==typeof navigator.mediaDevices.getDisplayMedia&&function(){var t;const e=null===(t=navigator.userAgentData)||void 0===t?void 0:t.brands;if(e&&e.length)return e.some((t=>/Chromium|Google Chrome|Microsoft Edge/i.test(t.brand)));const i=navigator.userAgent;return/Chrome|Chromium|Edg\//.test(i)&&!/Firefox|FxiOS/.test(i)}()}isActive(){return!!this.stream&&!!this.video}getSurface(){return this.surface}getDebugInfo(){return this.lastDebug}async init(){var t;if(!this.isSupported())throw new Error("native-not-supported");if(this.isActive())return;const e=await navigator.mediaDevices.getDisplayMedia({video:{displaySurface:"browser"},preferCurrentTab:!0,selfBrowserSurface:"include",audio:!1}),i=e.getVideoTracks()[0];if(this.surface=i.getSettings().displaySurface,"browser"!==this.surface){const i=null!==(t=this.surface)&&void 0!==t?t:"screen";throw e.getTracks().forEach((t=>t.stop())),this.surface=void 0,new Error(`Shared a ${i}; re-init and pick "This tab".`)}i.addEventListener("ended",(()=>this.handleEnded())),await this.applyViewportCrop(i);const n=document.createElement("video");n.srcObject=e,n.muted=!0,n.setAttribute("playsinline",""),n.style.cssText="position:fixed;left:-99999px;top:0;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(n),await n.play(),this.stream=e,this.video=n}async capture(t={}){if(!this.stream||!this.video)throw new Error("capture-not-initialized");if("browser"!==this.surface)throw new Error("not-sharing-this-tab");const e=performance.now(),i=$p(),n=this.video,o=n.videoWidth,r=n.videoHeight;if(!o||!r)throw new Error("capture-no-frame");const s=i.viewportW*i.dpr;if(s>0&&o>1.5*s)throw new Error("frame-larger-than-viewport");let a=document.createElement("canvas");a.width=o,a.height=r,function(){Mp();const t=document.createElement("style");t.id=Sp,t.textContent=`${Ep.join(",\n")} { visibility: hidden !important; }`,document.head.appendChild(t)}();try{await Tp(2),await function(t,e){const i=t.requestVideoFrameCallback;return"function"!=typeof i?Tp(e+2):new Promise((n=>{let o=Math.max(1,e);const r=()=>{o-=1,o<=0?n():i.call(t,r)};i.call(t,r)}))}(n,3);const t=a.getContext("2d");if(!t)throw new Error("canvas-2d-unavailable");t.drawImage(n,0,0)}finally{Mp()}const l=o/i.viewportW,c=Math.min(o,Math.round(i.viewportW*l)),d=Math.round(i.viewportH*l),u=a.height>d+2||a.width>c+2;u&&(a=Ip(a,0,0,c,d)),this.lastDebug={surface:this.surface,cropApplied:!!this.cropEl,frameW:o,frameH:r,viewportW:i.viewportW,viewportH:i.viewportH,dpr:i.dpr,cssToFrame:l,croppedW:a.width,croppedH:a.height,clampedHeight:u},"undefined"!=typeof console&&console.info("[sf-capture][native]",this.lastDebug);const h=_p(a,2560);a=h.canvas;const p=l,f=l,{blob:v,type:m}=await Ap(a,.9),g=performance.now()-e;return{blob:v,width:a.width,height:a.height,mode:this.name,durationMs:g,page:i,scope:"viewport",blobType:m,markerMapping:{scaleX:p*h.ratio,scaleY:f*h.ratio,originXCss:i.scrollX,originYCss:i.scrollY}}}dispose(){this.stream&&this.stream.getTracks().forEach((t=>t.stop())),this.video&&(this.video.srcObject=null,this.video.remove()),this.removeCropEl(),this.stream=null,this.video=null,this.surface=void 0}handleEnded(){var t,e;this.removeCropEl(),this.stream=null,null===(t=this.video)||void 0===t||t.remove(),this.video=null,this.surface=void 0,null===(e=this.onEnded)||void 0===e||e.call(this)}async applyViewportCrop(t){const e=window.CropTarget,i=t;if(e&&"function"==typeof i.cropTo)try{const t=document.createElement("div");t.setAttribute("data-sf-capture-viewport",""),t.style.cssText="position:fixed;inset:0;pointer-events:none;opacity:0;z-index:-1;margin:0;",document.body.appendChild(t);const n=await e.fromElement(t);await i.cropTo(n),this.cropEl=t}catch{this.removeCropEl()}}removeCropEl(){var t;null===(t=this.cropEl)||void 0===t||t.remove(),this.cropEl=null}}const Fp="sf-capture-poc-panel",Dp="sf-capture-poc-marker";function Pp(t){if(t<1024)return`${t} B`;const e=t/1024;return e<1024?`${e.toFixed(1)} KB`:`${(e/1024).toFixed(2)} MB`}const Rp=`\n#${Fp} {\n position: fixed; top: 12px; right: 12px; z-index: 2147483646;\n width: 320px; max-height: calc(100vh - 24px); overflow: auto;\n background: #11151c; color: #e7edf5; border: 1px solid #2b3442;\n border-radius: 10px; box-shadow: 0 8px 30px rgba(0,0,0,.45);\n font: 12px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n}\n#${Fp} * { box-sizing: border-box; }\n#${Fp} .sfp-head {\n display: flex; align-items: center; justify-content: space-between;\n padding: 9px 12px; background: #161c25; border-bottom: 1px solid #2b3442;\n border-radius: 10px 10px 0 0; cursor: default; position: sticky; top: 0;\n}\n#${Fp} .sfp-title { font-weight: 600; letter-spacing: .2px; }\n#${Fp} .sfp-min {\n background: none; border: none; color: #9fb0c3; font-size: 16px;\n cursor: pointer; line-height: 1; padding: 0 4px;\n}\n#${Fp} .sfp-body { padding: 10px 12px 12px; display: grid; gap: 9px; }\n#${Fp}.sfp-collapsed .sfp-body { display: none; }\n#${Fp} .sfp-row { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }\n#${Fp} .sfp-modes label { display: inline-flex; align-items: center; gap: 4px; cursor: pointer; }\n#${Fp} button {\n background: #2563eb; color: #fff; border: none; border-radius: 6px;\n padding: 6px 10px; font-size: 12px; cursor: pointer; flex: 1 1 auto;\n}\n#${Fp} button.sfp-secondary { background: #313c4d; }\n#${Fp} button:disabled { opacity: .45; cursor: not-allowed; }\n#${Fp} button.sfp-active { background: #d97706; }\n#${Fp} input[type="text"] {\n width: 100%; background: #0c1016; border: 1px solid #2b3442; color: #e7edf5;\n border-radius: 6px; padding: 5px 7px; font-size: 12px;\n}\n#${Fp} input[type="number"] {\n width: 56px; background: #0c1016; border: 1px solid #2b3442; color: #e7edf5;\n border-radius: 6px; padding: 4px 6px; font-size: 12px;\n}\n#${Fp} .sfp-region { color: #cbd5e1; font-size: 11px; align-items: center; }\n#${Fp} .sfp-region input[type="checkbox"] { margin: 0 2px 0 0; }\n#${Fp} details summary { cursor: pointer; color: #9fb0c3; }\n#${Fp} .sfp-surface, #${Fp} .sfp-marker-info { color: #9fb0c3; font-size: 11px; }\n#${Fp} .sfp-warn { color: #fbbf24; }\n#${Fp} .sfp-err { color: #f87171; }\n#${Fp} .sfp-metrics {\n background: #0c1016; border: 1px solid #2b3442; border-radius: 6px;\n padding: 7px 8px; white-space: pre-wrap; font-family: ui-monospace, SFMono-Regular, Menlo, monospace;\n font-size: 11px; color: #cbd5e1; min-height: 18px;\n}\n#${Fp} .sfp-preview { position: relative; line-height: 0; border: 1px solid #2b3442; border-radius: 6px; overflow: hidden; }\n#${Fp} .sfp-preview img { width: 100%; height: auto; display: block; background: #fff; }\n#${Fp} .sfp-dot {\n position: absolute; width: 14px; height: 14px; margin: -7px 0 0 -7px;\n border: 2px solid #ef4444; border-radius: 50%; background: rgba(239,68,68,.35);\n pointer-events: none; box-shadow: 0 0 0 2px rgba(255,255,255,.8);\n}\n#${Fp} .sfp-download { color: #60a5fa; text-decoration: none; flex: 1 1 auto; }\n#${Dp} {\n position: absolute; width: 16px; height: 16px; margin: -8px 0 0 -8px; z-index: 2147483645;\n border: 2px solid #ef4444; border-radius: 50%; background: rgba(239,68,68,.3);\n pointer-events: none; box-shadow: 0 0 0 2px rgba(255,255,255,.7);\n}\n`;class jp{constructor(){this.domBackend=new Lp,this.nativeBackend=new Op,this.mode="dom",this.marker=null,this.placing=!1,this.busy=!1,this.lastObjectUrl=null,this.lastResult=null,this.root=document.createElement("div"),this.root.id=Fp;const t=document.createElement("style");t.textContent=Rp,this.root.appendChild(t);const e=document.createElement("div");for(e.innerHTML='\n<div class="sfp-head">\n <span class="sfp-title">Screenshot POC</span>\n <button class="sfp-min" data-act="toggle" title="Collapse">–</button>\n</div>\n<div class="sfp-body">\n <div class="sfp-row sfp-modes">\n <label><input type="radio" name="sfp-mode" value="dom" checked /> snapdom (DOM)</label>\n <label><input type="radio" name="sfp-mode" value="native" /> native (tab)</label>\n </div>\n <div class="sfp-row" data-native-controls>\n <button data-act="init">Init capture</button>\n <button class="sfp-secondary" data-act="dispose">Stop</button>\n </div>\n <div class="sfp-surface" data-surface></div>\n <div class="sfp-row">\n <button data-act="cap-viewport">Capture viewport</button>\n <button class="sfp-secondary" data-act="cap-fullpage">Capture full page</button>\n </div>\n <div class="sfp-row">\n <button class="sfp-secondary" data-act="marker">Place marker</button>\n <button class="sfp-secondary" data-act="marker-clear">Clear</button>\n </div>\n <div class="sfp-marker-info" data-marker>No marker. Place one, then capture to check alignment.</div>\n <label class="sfp-row sfp-region">\n <input type="checkbox" data-region-toggle /> Crop to marker region\n <input type="number" data-region-w value="600" min="50" step="10" title="region width (css px)" />\n ×\n <input type="number" data-region-h value="400" min="50" step="10" title="region height (css px)" />\n css\n </label>\n <details>\n <summary>snapdom CORS proxy (optional)</summary>\n <input type="text" data-proxy placeholder="https://your-proxy/?url=" />\n </details>\n <div class="sfp-metrics" data-metrics>Ready.</div>\n <div class="sfp-preview" data-preview-wrap>\n <img data-preview alt="capture preview" />\n <div class="sfp-dot" data-dot hidden></div>\n </div>\n <div class="sfp-row">\n <a class="sfp-download" data-download hidden download>Download</a>\n </div>\n</div>\n';e.firstChild;)this.root.appendChild(e.firstChild);this.boundPlaceListener=t=>this.onPlaceClick(t),this.nativeBackend.onEnded=()=>this.onNativeEnded()}mount(t){t.appendChild(this.root),this.wireEvents(),this.updateModeUI()}q(t){const e=this.root.querySelector(t);if(!e)throw new Error(`poc-panel: missing element ${t}`);return e}getBackend(t){switch(t){case"dom":return this.domBackend;case"native":return this.nativeBackend;default:return t}}wireEvents(){this.root.addEventListener("click",(t=>{var e;const i=null===(e=t.target)||void 0===e?void 0:e.closest("[data-act]");if(!i)return;switch(i.getAttribute("data-act")){case"toggle":this.root.classList.toggle("sfp-collapsed");break;case"init":this.onInit();break;case"dispose":this.onDispose();break;case"cap-viewport":this.onCapture("viewport");break;case"cap-fullpage":this.onCapture("fullpage");break;case"marker":this.toggleMarkerPlacement();break;case"marker-clear":this.clearMarker()}})),this.root.querySelectorAll('input[name="sfp-mode"]').forEach((t=>{t.addEventListener("change",(()=>{t.checked&&(this.mode=t.value,this.updateModeUI())}))}))}updateModeUI(){const t=this.q("[data-native-controls]"),e=this.q('[data-act="cap-fullpage"]'),i="native"===this.mode;t.style.display=i?"flex":"none",e.disabled=i,e.title=i?"Native capture is viewport-only":"",i&&!this.nativeBackend.isSupported()?this.setSurface("Native capture needs a Chromium browser.","warn"):i?this.refreshSurface():this.setSurface("")}refreshSurface(){if(this.nativeBackend.isActive()){const t=this.nativeBackend.getSurface();t&&"browser"!==t?this.setSurface(`Sharing "${t}" — Stop and re-init to share this tab.`,"warn"):this.setSurface("Sharing this tab — frames locked to the viewport.")}else this.setSurface('Not initialized. Click "Init capture" (prompts once, pick "This tab").')}setSurface(t,e){const i=this.q("[data-surface]");i.textContent=t,i.className="sfp-surface"+(e?` sfp-${e}`:"")}setMetrics(t,e){const i=this.q("[data-metrics]");i.textContent=t,i.className="sfp-metrics"+(e?` sfp-${e}`:"")}async onInit(){if(this.nativeBackend.isSupported())try{this.setSurface("Requesting screen share…"),await this.nativeBackend.init(),this.refreshSurface()}catch(t){this.setSurface(`Init failed: ${t.message}`,"err")}else this.setSurface("Native capture needs a Chromium browser.","warn")}onDispose(){this.nativeBackend.dispose(),this.refreshSurface()}onNativeEnded(){this.refreshSurface(),this.setMetrics("Native sharing stopped. Re-init to capture again.","warn")}async onCapture(t){if(this.busy)return;const e=this.getBackend(this.mode);if(e.isSupported())if("native"!==this.mode||this.nativeBackend.isActive()){this.busy=!0,this.setBusyUI(!0),this.setMetrics("Capturing…");try{const i=await e.capture({scope:t,proxyUrl:this.q("[data-proxy]").value}),n=await this.maybeCropToRegion(i);this.lastResult=n,this.renderResult(n)}catch(t){this.setMetrics(this.describeCaptureError(t),"err")}finally{this.busy=!1,this.setBusyUI(!1),"native"===this.mode&&this.refreshSurface()}}else this.setMetrics('Click "Init capture" first to grant tab sharing.',"warn");else this.setMetrics(`${this.mode} capture is not supported in this browser.`,"err")}async maybeCropToRegion(t){if(!this.q("[data-region-toggle]").checked)return t;if(!this.marker)return this.setMarkerInfo("Region crop is on but no marker is placed — captured full viewport.","warn"),t;const e=Math.max(50,parseInt(this.q("[data-region-w]").value,10)||600),i=Math.max(50,parseInt(this.q("[data-region-h]").value,10)||400),{markerMapping:n}=t,o=(this.marker.docX-n.originXCss)*n.scaleX,r=(this.marker.docY-n.originYCss)*n.scaleY,s=Math.min(e*n.scaleX,t.width),a=Math.min(i*n.scaleY,t.height),l=Math.max(0,Math.min(o-s/2,t.width-s)),c=Math.max(0,Math.min(r-a/2,t.height-a)),d=await async function(t,e,i,n,o){const r=await createImageBitmap(t);try{const t=Math.max(0,Math.min(Math.round(e),r.width-1)),s=Math.max(0,Math.min(Math.round(i),r.height-1)),a=Math.max(1,Math.min(Math.round(n),r.width-t)),l=Math.max(1,Math.min(Math.round(o),r.height-s)),c=document.createElement("canvas");c.width=a,c.height=l;const d=c.getContext("2d");if(!d)throw new Error("canvas-2d-unavailable");d.drawImage(r,t,s,a,l,0,0,a,l);const u=await Ap(c,.9);return{blob:u.blob,type:u.type,width:a,height:l}}finally{r.close()}}(t.blob,l,c,s,a);return{...t,blob:d.blob,blobType:d.type,width:d.width,height:d.height,markerMapping:{...n,originXCss:n.originXCss+l/n.scaleX,originYCss:n.originYCss+c/n.scaleY}}}describeCaptureError(t){switch(t.message){case"not-sharing-this-tab":return'Not sharing this tab. Click Stop, then Init capture and pick "This tab".';case"frame-larger-than-viewport":return'Captured surface is larger than the viewport (not a tab share). Re-init and pick "This tab".';case"capture-no-frame":return"No frame available yet — wait a moment after Init, then capture again.";case"capture-not-initialized":return'Click "Init capture" first to grant tab sharing.';default:return`Capture failed: ${t.message}`}}setBusyUI(t){this.root.querySelectorAll('[data-act="cap-viewport"], [data-act="cap-fullpage"]').forEach((e=>{e.disabled=t||"cap-fullpage"===e.getAttribute("data-act")&&"native"===this.mode}))}renderResult(t){var e;const i=(t.width*t.height/1e6).toFixed(2),n=[`mode: ${t.mode} (${t.scope})`,`time: ${t.durationMs.toFixed(1)} ms`,`size: ${Pp(t.blob.size)} [${t.blobType}]`,`image: ${t.width} x ${t.height} px (${i} MP)`,`dpr: ${t.page.dpr}`,`viewport: ${t.page.viewportW} x ${t.page.viewportH}`,`scroll: ${Math.round(t.page.scrollX)}, ${Math.round(t.page.scrollY)}`];if("native"===this.mode){n.push(`surface: ${null!==(e=this.nativeBackend.getSurface())&&void 0!==e?e:"unknown"}`);const t=this.nativeBackend.getDebugInfo();t&&(n.push(`frame: ${t.frameW} x ${t.frameH} (raw stream)`),n.push("cropEl: "+(t.cropApplied?"region-capture":"none")),n.push("clamped: "+(t.clampedHeight?`yes -> ${t.croppedW} x ${t.croppedH}`:"no")))}this.setMetrics(n.join("\n")),this.lastObjectUrl&&URL.revokeObjectURL(this.lastObjectUrl),this.lastObjectUrl=URL.createObjectURL(t.blob);const o=this.q("[data-preview]"),r=this.q("[data-download]"),s="image/webp"===t.blobType?"webp":"png";o.onload=()=>this.positionDot(t),o.src=this.lastObjectUrl,r.href=this.lastObjectUrl,r.download=`capture-${t.mode}-${t.scope}.${s}`,r.hidden=!1,r.textContent=`Download (${Pp(t.blob.size)})`}positionDot(t){const e=this.q("[data-dot]"),i=this.q("[data-preview]");if(!this.marker||!i.clientWidth)return void(e.hidden=!0);const{markerMapping:n}=t,o=(this.marker.docX-n.originXCss)*n.scaleX,r=(this.marker.docY-n.originYCss)*n.scaleY;if(o<0||r<0||o>t.width||r>t.height)return e.hidden=!0,void this.setMarkerInfo("Marker is outside the captured region (scroll so it is visible).","warn");const s=i.clientWidth/t.width;e.style.left=o*s+"px",e.style.top=r*s+"px",e.hidden=!1}toggleMarkerPlacement(){this.placing=!this.placing;const t=this.q('[data-act="marker"]');t.classList.toggle("sfp-active",this.placing),t.textContent=this.placing?"Click on page…":"Place marker",this.placing?(document.addEventListener("click",this.boundPlaceListener,!0),this.setMarkerInfo("Click anywhere on the page to drop a marker.")):document.removeEventListener("click",this.boundPlaceListener,!0)}onPlaceClick(t){const e=t.target;if(e&&this.root.contains(e))return;t.preventDefault(),t.stopPropagation(),this.marker={docX:t.clientX+window.scrollX,docY:t.clientY+window.scrollY},this.placing=!1,document.removeEventListener("click",this.boundPlaceListener,!0);const i=this.q('[data-act="marker"]');i.classList.remove("sfp-active"),i.textContent="Place marker",this.drawPageMarker(),this.setMarkerInfo(`Marker at doc (${Math.round(this.marker.docX)}, ${Math.round(this.marker.docY)}).`),this.lastResult&&this.positionDot(this.lastResult)}drawPageMarker(){if(!this.marker)return;let t=document.getElementById(Dp);t||(t=document.createElement("div"),t.id=Dp,document.body.appendChild(t)),t.style.left=`${this.marker.docX}px`,t.style.top=`${this.marker.docY}px`}clearMarker(){var t;this.marker=null,null===(t=document.getElementById(Dp))||void 0===t||t.remove(),this.q("[data-dot]").hidden=!0,this.setMarkerInfo("No marker. Place one, then capture to check alignment.")}setMarkerInfo(t,e){const i=this.q("[data-marker]");i.textContent=t,i.className="sfp-marker-info"+(e?` sfp-${e}`:"")}}"undefined"!=typeof window&&function(){try{if("1"===new URLSearchParams(window.location.search).get("sfCapturePoc"))return!0}catch{}return!0===window.SF_CAPTURE_POC}()&&function(t){document.body?t():document.addEventListener("DOMContentLoaded",t,{once:!0})}((()=>function(){if(document.getElementById("sf-capture-poc-panel"))return null;const t=new jp;return t.mount(document.body),t}()));var Vp=function(t,e,i,n){for(var o,r=arguments.length,s=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n,a=t.length-1;a>=0;a--)(o=t[a])&&(s=(r<3?o(s):r>3?o(e,i,s):o(e,i))||s);return r>3&&s&&Object.defineProperty(e,i,s),s};class Up 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=le,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._queryParamsComments=!1,this._usePageTitleAsLocationName=!1,this.toolbarEnabled=!1,this.toolbarEnabledApiCalled=!1,this.passwordProtected=!1,this.isPasswordValid=!1,this.password="",this.validatingPasswordLoading=!1,this.showPasswordProtectedModal=!1,this.showInvalidPassword=!1,this.skipGuestNameModal=!1,this._totalViews={},this.totalViewsCount=0,this.inviteUrl="",this.showModalOnceCommentIsModeIsOff=!1,this.showInviteModal=!1,this.featureAccess=null,this.hasAgentAccess=!1,this.hasPrivateCommentsAccess=!1,this.isPrivateCommentsEnabledOnWorkspace=!1,this.visibilityOptionsEnabled=!1,this.hasContentWarnings=!1,this.contentWarningsCount=0,this.showContentWarningSidebar=!1,this.showAgentCommentsInSidebar=!1,this.isSettingSidebarData=!1,this.agentGroups=[],this.agentNameMap=new Map,this.agentNamesFetched=!1,this.spellingSuggestionPagePathMap=new Map,this.grammarSuggestionPagePathMap=new Map,this.processingAnnotationIds=new Set,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),Nc("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await Bc(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),Nc("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(fc(Et),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),Nc("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),Nc("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),Nc("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),Nc("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),Nc("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{this.setInviteUrl();const t=new URL(document.location),e=t.searchParams;if(e.has(Ct)&&hc(wt,"true",!1),(null==e?void 0:e.has(It))&&!pc(It)?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has(_t))if(pc(_t,!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(_t),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(Nt))if(pc(Nt,!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Nt),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(kt)||e.has("snippyly_google_token")){if(e.has(kt)){const t=decodeURIComponent(e.get(kt)),i=gc(t,de,ue),n=i&&JSON.parse(i);if(n){const t={};t.userId=n.uid,t.name=n.displayName,t.email=n.email,t.photoUrl=null==n?void 0:n.photoURL;const e=JSON.stringify(t),i=mc(e,de,ue);hc(Et,i,!0),fc(Lt)}}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,hc(xt,JSON.stringify(i),!0)}e.delete(kt),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has(wt)?(hc(wt,"true",!1),fc(yt),e.delete(wt),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has(yt)||pc(wt,!1)&&this.loadPluginUI(),e.has(yt)?(hc(yt,"true",!1),fc(wt),e.delete(yt),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has(wt)||pc(yt,!1)&&this.loadPluginUI(),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),Nc("Error in checkUrl: ",t)}},this.setInviteUrl=()=>{try{const t=new URL(document.location);t.searchParams.has(wt)||t.searchParams.set(wt,"true"),this.inviteUrl=t.toString()}catch(t){console.warn("Error in setInviteUrl: ",t),Nc("Error in setInviteUrl: ",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&&hc($t,this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has(wt)||t.has(yt))&&t.has(Tt)&&(hc(Mt,Tt,!1,"sessionStorage"),this.projectVersion=t.get(Tt),this.projectVersion&&hc($t,this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),Nc("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||pc(Mt,!1,"sessionStorage"),e=this.projectVersion||pc($t,!1,"sessionStorage");if(t&&e){const i=new URL(document.location),n=i.searchParams;n.get(t)||(n.set(t,e),window.history.replaceState({},document.title,i.href))}}catch(t){console.warn("Error in setVersionInUrl: ",t),Nc("Error in setVersionInUrl: ",t)}},this.loadPluginUI=async()=>{var t,e,i,n,o,r,s,a;try{if(!this.apiKey)return;if(!this.projectId)return;if(this.loadPlugin)return this.generateLocation(),this.setLocation(),void setTimeout((()=>{var t;if(this.usePageTitleAsLocationName){const e=document.title;(null===(t=this.location)||void 0===t?void 0:t.locationName)!==e&&(this.generateLocation(),this.setLocation({forceSetLocation:!0}))}}),4e3);if(this.toolbarEnabledApiCalled||await this.detectToolbarEnabled(),!this.toolbarEnabled)return;gt.includes(this.apiKey)&&this.listenToDocumentTitleChange();const l=wc();l&&!(null==l?void 0:l.isAnonymous)&&(this.loading=!0);try{this.customerMetadata=await this.getCustomerMetadata()}catch(t){console.warn("Error in getCustomerMetadata: ",t),Nc("Error in getCustomerMetadata: ",t)}if(uc(Rt)&&(this.isPasswordValid=uc(Rt)),this.projectConfig=await Dc(this.apiKey,this.projectId),this.guestMode=!!(null===(t=this.projectConfig)||void 0===t?void 0:t.guestMode)||this.guestMode,this.allowGuestModeSignIn=!!(null===(i=null===(e=this.projectConfig)||void 0===e?void 0:e.guestModeConfig)||void 0===i?void 0:i.allowSignIn),this.queryParamsComments=!!(null===(n=this.projectConfig)||void 0===n?void 0:n.queryParamsComments),this.usePageTitleAsLocationName=!!(null===(o=this.projectConfig)||void 0===o?void 0:o.usePageTitleAsLocationName),(null===(r=this.projectConfig)||void 0===r?void 0:r.guestModeConfig)||(this.allowGuestModeSignIn=!0),this.passwordProtected=!!(null===(a=null===(s=this.projectConfig)||void 0===s?void 0:s.passwordProtected)||void 0===a?void 0:a.enabled),hc(Ot,this.guestMode+"",!0),hc(Ut,this.allowGuestModeSignIn+"",!0),hc(Ft,this.passwordProtected+"",!0),hc(Dt,this.queryParamsComments+"",!0),hc(Pt,this.usePageTitleAsLocationName+"",!0),this.loadPlugin=!0,!document.querySelector(ie.VELT_COMMENTS)){const t=document.createElement(ie.VELT_COMMENTS);t.setAttribute("filter-comments-on-dom","true"),t.setAttribute("shadow-dom","true"),null==t||t.addEventListener("onSignIn",(()=>{this.loginWithGoogle()})),null==t||t.addEventListener("onUpgrade",(()=>{this.onUpgradePlanClick()})),t.addEventListener("onCommentAdd",(()=>{this.addCommentCount++})),t.addEventListener("onCommentUpdate",(t=>{var e,i;(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&&(this.showModalOnceCommentIsModeIsOff=!0),this.addCommentCount>=5&&!this.showModalOnceCommentIsModeIsOff&&(this.showModalOnceCommentIsModeIsOff=!0))})),window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_CURSOR)){const t=document.createElement(ie.VELT_CURSOR);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_HUDDLE)){const t=document.createElement(ie.VELT_HUDDLE);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_RECORDER_NOTES)){const t=document.createElement(ie.VELT_RECORDER_NOTES);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_RECORDER_CONTROL_PANEL)){const t=document.createElement(ie.VELT_RECORDER_CONTROL_PANEL);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_ARROWS)){const t=document.createElement(ie.VELT_ARROWS);window.document.body.appendChild(t)}try{const t=new URL(document.location),e=t.searchParams;let i=!1;e.has("wireframe")&&"true"===e.get("wireframe")&&(sessionStorage.setItem("velt-wireframe","true"),e.delete("wireframe"),i=!0),e.get("velt-version")&&(sessionStorage.setItem("velt-version",e.get("velt-version")),e.delete("velt-version"),i=!0),e.get("velt-env")&&(sessionStorage.setItem("velt-env",e.get("velt-env")),e.delete("velt-env"),i=!0),i&&window.history.replaceState({},document.title,t.href)}catch(t){}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),Nc("Error in loadPluginUI: ",t)}},this.listenToDocumentTitleChange=()=>{try{this.documentTitleChangeInterval||(this.documentTitleChangeInterval=setInterval((()=>{var t,e,i;const n="true"===sessionStorage.getItem("debugDocumentTitleChange");if(n&&(console.log("*** listenToDocumentTitleChange ***"),console.log("usePageTitleAsLocationName: ",this.usePageTitleAsLocationName)),this.usePageTitleAsLocationName){const o=document.title;n&&(console.log("location name: ",null===(t=this.location)||void 0===t?void 0:t.locationName),console.log("title: ",o),console.log("changed: ",(null===(e=this.location)||void 0===e?void 0:e.locationName)!==o)),(null===(i=this.location)||void 0===i?void 0:i.locationName)!==o&&(n&&console.log("%c triggering location update!","color: green; font-weight: bold;"),this.generateLocation(),this.setLocation({forceSetLocation:!0}))}}),2e3))}catch(t){Nc("Error in listenToDocumentTitleChange: ",t)}},this.initializeSnippyly=async()=>{var t,i,n,o,r,s,a,l,c,d,u,h,p,f,v,m,g,w,y,b,C,x,k,E,S,M,$,T,I;try{let _=this.staging?vt:mt;this.staging||(_="latest"),this.veltVersion&&(_=this.veltVersion);let N=this.staging,A=!1;if((null===sessionStorage||void 0===sessionStorage?void 0:sessionStorage.getItem("velt-version"))&&(_=sessionStorage.getItem("velt-version")),null===sessionStorage||void 0===sessionStorage?void 0:sessionStorage.getItem("velt-env")){"staging"===sessionStorage.getItem("velt-env")&&(N=!1,A=!0)}if(await e(this.apiKey,{options:{develop:N,staging:A,version:_,velt:!0,proxyDomain:"https://cdn.velt.dev"}}),!window.Velt)return;if(this.autoTranslation&&(null===Velt||void 0===Velt?void 0:Velt.enableAutoTranslation)&&(null===Velt||void 0===Velt||Velt.enableAutoTranslation()),!document.querySelector(ie.VELT_COMMENTS_SIDEBAR)){const t=document.createElement(ie.VELT_COMMENTS_SIDEBAR);t.setAttribute("shadow-dom","true"),t.setAttribute(ne.SIDEBAR_BUTTON_COUNT_TYPE,oe),t.setAttribute(ne.CUSTOM_ACTIONS,"true"),t.setAttribute(ne.ENABLE_URL_NAVIGATION,"true"),t.setAttribute(ne.CURRENT_LOCATION_SUFFIX,"true"),window.document.body.appendChild(t)}if(Velt){null===Velt||void 0===Velt||Velt.sf(!0);try{window.dispatchEvent(new CustomEvent("onVeltLoad",{detail:{Velt}})),(null===window||void 0===window?void 0:window.onSnippylyLoad)&&(null===window||void 0===window||window.onSnippylyLoad(Velt))}catch(t){}document.body.style.setProperty("--velt-default-font-family","'Poppins', sans-serif"),(()=>{try{if(!document.getElementById("superflowFontLink3")){const t=document.createElement("link");t.rel="stylesheet",t.href="https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/fonts%2Fpoppins%2Fpoppins.css?alt=media&token=5f31a0f2-5f67-4974-bf56-78ae655f2b68",t.id="superflowFontLink3",document.head.appendChild(t)}}catch(t){console.warn("Error in loadPoppinsFont: ",t),Nc("Error in loadPoppinsFont: ",t)}})()}if(Velt&&(Tc({sdkVersion:null===Velt||void 0===Velt?void 0:Velt.version,sdkType:"client"}),console.log(`Velt Version: ${(null===Velt||void 0===Velt?void 0:Velt.version)||"unknown"}`),console.log(`Superflow Toolbar Version: ${ft}`)),this.generateDocumentId(),(null===Velt||void 0===Velt?void 0:Velt.on)&&"function"==typeof(null===Velt||void 0===Velt?void 0:Velt.on)){const e=wc(),i="true"===sessionStorage.getItem("debugUserUpdateEvent");this.previousVeltUserId=null!==(t=null==e?void 0:e.userId)&&void 0!==t?t:"default",i&&console.log("[Superflow Debug] Initialized previousVeltUserId:",this.previousVeltUserId),Velt.on("userUpdate").subscribe((async t=>{if(i&&console.log("User from event: UserUpdate",t),t){const e=t.userId;i&&console.log("[Superflow Debug] userUpdate event fired:",{previousVeltUserId:this.previousVeltUserId,currentUserId:e,userChanged:this.previousVeltUserId!==e}),this.previousVeltUserId!==e&&(i&&console.log("[Superflow Debug] User changed, calling setDocumentAndLocation"),await this.setDocumentAndLocation()),this.previousVeltUserId=e}})),i&&console.log("[Superflow Debug] Performing initial setDocumentAndLocation"),await this.setDocumentAndLocation()}else await this.setDocumentAndLocation();if(setTimeout((()=>{var t;if(this.usePageTitleAsLocationName){const e=document.title;(null===(t=this.location)||void 0===t?void 0:t.locationName)!==e&&(this.generateLocation(),this.setLocation({forceSetLocation:!0}))}}),4e3),this.commentElement=null===Velt||void 0===Velt?void 0:Velt.getCommentElement(),this.contactElement=null===Velt||void 0===Velt?void 0:Velt.getContactElement(),this.rewriterElement=null===Velt||void 0===Velt?void 0:Velt.getRewriterElement(),this.presenceElement=null===Velt||void 0===Velt?void 0:Velt.getPresenceElement(),this.commentElement){this.commentElement.enableTextComments(!0),this.customLoginEnabledLocally||this.commentElement.enableSignInButton(!0),this.commentElement.enableAttachments(!0),(null===(i=this.commentElement)||void 0===i?void 0:i.showScreenSizeInfo)&&this.commentElement.showScreenSizeInfo(!0),(null===(n=this.commentElement)||void 0===n?void 0:n.enableDeviceInfo)&&this.commentElement.enableDeviceInfo(!0),this.commentElement.enableCommentIndex(!0),this.commentElement.onCommentModeChange&&this.commentElement.onCommentModeChange().subscribe((t=>{this.addCommentMode=t,this.addCommentMode||this.showModalOnceCommentIsModeIsOff&&(this.addCommentCount>=2&&!pc(zt)&&(this.allowGuestModeSignIn?this.openGuestModeSignInModal():this.openGuestModeNameModel(),hc(zt,"true"),this.showModalOnceCommentIsModeIsOff=!1),this.addCommentCount>=5&&!this.showGuestModeSignInModal&&!pc(Ht,!1,"sessionStorage")&&(this.showGuestModeSignInBanner(),hc(Ht,"true",!1,"sessionStorage"),this.showModalOnceCommentIsModeIsOff=!1))})),(null===(o=this.commentElement)||void 0===o?void 0:o.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(null===(r=this.commentElement)||void 0===r?void 0:r.enablePersistentCommentMode)&&this.commentElement.enablePersistentCommentMode(),(null===(s=this.commentElement)||void 0===s?void 0:s.enableGhostComments)&&this.commentElement.enableGhostComments();const t=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;t&&"object"==typeof t&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatus)&&this.commentElement.setCustomStatus(t),(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===(u=this.commentElement)||void 0===u?void 0:u.enableSidebarButtonOnCommentDialog)&&this.commentElement.enableSidebarButtonOnCommentDialog(),(null===(h=this.commentElement)||void 0===h?void 0:h.enableHotkey)&&this.commentElement.enableHotkey(),(null===(p=this.commentElement)||void 0===p?void 0:p.enableDeviceIndicatorOnCommentPins)&&this.commentElement.enableDeviceIndicatorOnCommentPins(),(null===(m=null===(v=null===(f=this.customerMetadata)||void 0===f?void 0:f.superflow)||void 0===v?void 0:v.advancedFeatures)||void 0===m?void 0:m.takeScreenshotOnComments)?this.commentElement.enableScreenshot&&this.commentElement.enableScreenshot():this.commentElement.disableScreenshot&&this.commentElement.disableScreenshot(),(null===(y=null===(w=null===(g=this.customerMetadata)||void 0===g?void 0:g.superflow)||void 0===w?void 0:w.advancedFeatures)||void 0===y?void 0:y.hasCustomStatus)&&this.setCustomStatuses(),this.setQueryParamsCommentsInSdk(),this.checkToEnableUpgradeButton(),this.setupSidebarAgentCommentFilter(),this.setupVeltButtonClickListener(),this.maybeApplyVisibilityOptionsToCommentElement()}this.applyStorageFeatureAccess(),this.selectionElement=Velt.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(b=this.rewriterElement)||void 0===b||b.enableRewriter()),this.presenceElement&&(null===(C=this.presenceElement)||void 0===C?void 0:C.enableFlockMode)&&(null===(x=this.presenceElement)||void 0===x||x.enableFlockMode(!0)),(null===Velt||void 0===Velt?void 0:Velt.getDocElement)&&(this.docElement=Velt.getDocElement()),null===(M=(null===(k=this.docElement)||void 0===k?void 0:k.getDocumentMetadata)?null===(E=this.docElement)||void 0===E?void 0:E.getDocumentMetadata():null===(S=null===Velt||void 0===Velt?void 0:Velt.docService)||void 0===S?void 0:S.getDocumentMetadata$())||void 0===M||M.subscribe((t=>{var e,i;const n=(null===(e=null==t?void 0:t.superflow)||void 0===e?void 0:e.versions)?Object.values(null===(i=null==t?void 0:t.superflow)||void 0===i?void 0:i.versions):[],o=new URL(document.location).searchParams.get("version");if(o){const t=n.find((t=>t.id===o));t&&(this.version={id:t.id,name:t.versionName||t.id},this.setLocation())}})),(null===Velt||void 0===Velt?void 0:Velt.getViewsElement)&&(this.viewsElement=Velt.getViewsElement()),(null===($=this.viewsElement)||void 0===$?void 0:$.getUniqueViewsByUser)&&(null===(I=null===(T=this.viewsElement)||void 0===T?void 0:T.getUniqueViewsByUser())||void 0===I||I.subscribe((t=>{this.totalViews=t}))),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),Nc("Error in initializeSnippyly: ",t)}},this.generateDocumentId=()=>{try{this.documentId=lc(dc(window.location.origin))+"",this.projectId&&(this.documentId=this.projectId+""),this.serverDocumentId=(t=this.documentId+"")?`${lc(t)}`:void 0}catch(t){console.warn("Error in generateDocumentId: ",t),Nc("Error in generateDocumentId: ",t)}var t},this.setDocumentAndLocation=async()=>{try{this.generateDocumentId(),this.previousLocation=null,await(null===Velt||void 0===Velt?void 0:Velt.setDocumentId(this.documentId+"")),Tc({documentId:this.serverDocumentId,clientDocumentId:this.documentId}),this.generateLocation(),this.setLocation()}catch(t){console.warn("Error in setDocumentAndLocation: ",t),Nc("Error in setDocumentAndLocation: ",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),Nc("Error in checkToEnableUpgradeButton: ",t)}},this.getCustomerMetadata=async()=>{try{const t=await jc(this.apiKey);return(t=>{try{const e=t?JSON.stringify(t):"false";hc(Wt,e)}catch(t){console.warn("Error in setCustomerMetadataToStorage: ",t),Nc("Error in setCustomerMetadataToStorage: ",t)}})(t),t}catch(t){console.warn("Error in getCustomerMetadata: ",t),Nc("Error in getCustomerMetadata: ",t);const e=(()=>{try{const t=pc(Wt);return t?"false"===t?JSON.parse(JSON.stringify(re)):JSON.parse(t):null}catch(t){return console.warn("Error in getCustomerMetadataFromStorage: ",t),Nc("Error in getCustomerMetadataFromStorage: ",t),null}})();if(e)return e}},this.setCustomStatuses=async()=>{var t;try{const e=await Vc(this.apiKey);if((null==e?void 0:e.success)&&(null==e?void 0:e.data)){const i=Object.values(e.data),n=this.sortCustomStatuses(i);n.length>0&&(null===(t=this.commentElement)||void 0===t?void 0:t.setCustomStatus)&&this.commentElement.setCustomStatus(n)}}catch(t){console.warn("Error in setCustomStatuses: ",t),Nc("Error in setCustomStatuses: ",t)}},this.sortCustomStatuses=t=>{try{const e=[...t].sort(((t,e)=>("number"==typeof t.order?t.order:Number.MAX_SAFE_INTEGER)-("number"==typeof e.order?e.order:Number.MAX_SAFE_INTEGER)));return e}catch(e){return console.warn("Error in sortCustomStatuses: ",e),Nc("Error in sortCustomStatuses: ",e),t}},this.getSamlConfig=async()=>{try{const t=await Hc(this.apiKey);return(t=>{try{if(t){const e=JSON.stringify(t);hc(Kt,e,!0)}}catch(t){console.warn("Error in setSamlConfigToStorage: ",t),Nc("Error in setSamlConfigToStorage: ",t)}})(t),t}catch(t){console.warn("Error in getSamlConfig: ",t),Nc("Error in getSamlConfig: ",t);const e=(()=>{try{const t=pc(Kt,!0);return t?JSON.parse(t):null}catch(t){return console.warn("Error in getSamlConfigFromStorage: ",t),Nc("Error in getSamlConfigFromStorage: ",t),null}})();if(e)return e}},this.setLogos=()=>{var t,e,i,n,o,r,s,a,l,c,d,u;try{let h="light";this.privateCommentModeEnabled&&(h="dark");const p=null===(i=null===(e=null===(t=this.customerMetadata)||void 0===t?void 0:t.superflow)||void 0===e?void 0:e.customBranding)||void 0===i?void 0:i.logoMark,f=null===(r=null===(o=null===(n=null==ae?void 0:re)||void 0===n?void 0:n.customBranding)||void 0===o?void 0:o.logo)||void 0===r?void 0:r.logoMark,v=null===(l=null===(a=null===(s=this.customerMetadata)||void 0===s?void 0:s.superflow)||void 0===a?void 0:a.customBranding)||void 0===l?void 0:l.wordMark,m=null===(u=null===(d=null===(c=null==ae?void 0:re)||void 0===c?void 0:c.customBranding)||void 0===d?void 0:d.logo)||void 0===u?void 0:u.wordMark;switch(h){case"light":this.logoMark=(null==p?void 0:p.lightUrl)||(null==p?void 0:p.darkUrl)||(null==f?void 0:f.lightUrl),this.wordMark=(null==v?void 0:v.lightUrl)||(null==v?void 0:v.darkUrl)||(null==m?void 0:m.lightUrl);break;case"dark":this.logoMark=(null==p?void 0:p.darkUrl)||(null==p?void 0:p.lightUrl)||(null==f?void 0:f.darkUrl),this.wordMark=(null==v?void 0:v.darkUrl)||(null==v?void 0:v.lightUrl)||(null==m?void 0:m.darkUrl)}}catch(t){console.warn("Error in setLogos: ",t),Nc("Error in setLogos: ",t)}},this.getLogoMark=()=>{var t;try{return(null===(t=this.logoMark)||void 0===t?void 0:t.includes("<svg"))?L`
|
|
4583
|
-
${
|
|
4620
|
+
`}catch(t){return console.warn("Error in render: ",t),L``}}};cd.styles=ad,ld([it({type:Array})],cd.prototype,"agentGroups",void 0),ld([it({type:String})],cd.prototype,"currentPageUrl",void 0),ld([ot()],cd.prototype,"openAccordions",void 0),ld([ot()],cd.prototype,"currentView",void 0),ld([ot()],cd.prototype,"selectedAgentId",void 0),cd=ld([tt("content-warning-sidebar")],cd);function dd(t){return new Promise((e=>{let i=Math.max(1,t);const o=()=>{i-=1,i<=0?e():requestAnimationFrame(o)};requestAnimationFrame(o)}))}function hd(t,e,i,o,n){const s=Math.max(0,Math.round(e)),r=Math.max(0,Math.round(i)),a=Math.max(1,Math.min(Math.round(o),t.width-s)),l=Math.max(1,Math.min(Math.round(n),t.height-r)),c=document.createElement("canvas");c.width=a,c.height=l;const d=c.getContext("2d");return d?(d.drawImage(t,s,r,a,l,0,0,a,l),c):t}function ud(t,e){const i=Math.max(t.width,t.height);if(i<=e)return{canvas:t,ratio:1};const o=e/i,n=Math.max(1,Math.round(t.width*o)),s=Math.max(1,Math.round(t.height*o)),r=document.createElement("canvas");r.width=n,r.height=s;const a=r.getContext("2d");return a?(a.imageSmoothingEnabled=!0,a.imageSmoothingQuality="high",a.drawImage(t,0,0,n,s),{canvas:r,ratio:o}):{canvas:t,ratio:1}}function pd(t,e,i){return new Promise((o=>{t.toBlob((t=>o(t)),e,i)}))}async function vd(t,e=.9){const i=await pd(t,"image/webp",e);if(i&&"image/webp"===i.type)return{blob:i,type:i.type};const o=await pd(t,"image/png");if(o)return{blob:o,type:"image/png"};throw new Error("canvas-encode-failed")}const gd=["superflow-toolbar","snippyly-plugin","velt-shadow-dom-internal","snippyly-comment-pin-portal","snippyly-comment-pin","snippyly-area-pin-portal","snippyly-comment-text-portal","snippyly-comment-text","snippyly-text-highlight","snippyly-recorder-control-panel-internal","snippyly-live-state-sync-overlay","velt-comments","velt-comments-sidebar","velt-comment-tool","velt-cursor","velt-presence","velt-huddle","velt-arrows","velt-areas","velt-recorder-notes","velt-recorder-control-panel","velt-notifications-history-panel","velt-rewriter","velt-toast-popup","velt-root"],fd="sf-capture-hide-widgets";function md(){var t;null===(t=document.getElementById(fd))||void 0===t||t.remove()}function wd(){var t;const e=null===(t=navigator.userAgentData)||void 0===t?void 0:t.brands;if(e&&e.length)return e.some((t=>/Chromium|Google Chrome|Microsoft Edge/i.test(t.brand)));const i=navigator.userAgent;return/Chrome|Chromium|Edg\//.test(i)&&!/Firefox|FxiOS/.test(i)}function yd(){return!("undefined"==typeof navigator||!navigator.mediaDevices||"function"!=typeof navigator.mediaDevices.getDisplayMedia)&&(wd()||function(){const t=navigator.userAgent;return/Safari/.test(t)&&/Apple/.test(navigator.vendor||"")&&!/Chrome|Chromium|CriOS|Edg\/|FxiOS|Android/.test(t)}())}class bd{constructor(){this.name="native",this.stream=null,this.video=null,this.surface=void 0,this.cropEl=null,this.lastDebug=null,this.onEnded=null}isSupported(){return"undefined"!=typeof navigator&&!!navigator.mediaDevices&&"function"==typeof navigator.mediaDevices.getDisplayMedia}getCapability(){return wd()?"tab-region":"screen-crop"}isActive(){return!!this.stream&&!!this.video}getSurface(){return this.surface}getDebugInfo(){return this.lastDebug}async init(){var t;if(!this.isSupported())throw new Error("native-not-supported");if(this.isActive())return;const e=this.getCapability(),i="tab-region"===e?{video:{displaySurface:"browser"},preferCurrentTab:!0,selfBrowserSurface:"include",audio:!1}:{video:!0,audio:!1},o=await navigator.mediaDevices.getDisplayMedia(i),n=o.getVideoTracks()[0];if(this.surface=n.getSettings().displaySurface,"tab-region"===e){if("browser"!==this.surface){const e=null!==(t=this.surface)&&void 0!==t?t:"screen";throw o.getTracks().forEach((t=>t.stop())),this.surface=void 0,new Error(`Shared a ${e}; re-init and pick "This tab".`)}await this.applyViewportCrop(n)}n.addEventListener("ended",(()=>this.handleEnded()));const s=document.createElement("video");s.srcObject=o,s.muted=!0,s.setAttribute("playsinline",""),s.style.cssText="position:fixed;left:-99999px;top:0;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(s),await s.play(),this.stream=o,this.video=s}async capture(t={}){if(!this.stream||!this.video)throw new Error("capture-not-initialized");const e=performance.now(),i=function(){const t=document.documentElement;return{scrollX:window.scrollX,scrollY:window.scrollY,viewportW:t.clientWidth,viewportH:t.clientHeight,dpr:window.devicePixelRatio||1}}(),o=this.video,n=o.videoWidth,s=o.videoHeight;if(!n||!s)throw new Error("capture-no-frame");return"tab-region"===this.getCapability()?this.captureTabRegion(o,n,s,i,e):this.captureScreenCrop(o,n,s,i,e)}async captureTabRegion(t,e,i,o,n){if("browser"!==this.surface)throw new Error("not-sharing-this-tab");const s=o.viewportW*o.dpr;if(s>0&&e>1.5*s)throw new Error("frame-larger-than-viewport");let r=await this.grabFullFrame(t,e,i);const a=e/o.viewportW,l=Math.min(e,Math.round(o.viewportW*a)),c=Math.round(o.viewportH*a),d=r.height>c+2||r.width>l+2;d&&(r=hd(r,0,0,l,c)),this.lastDebug={capability:"tab-region",surface:this.surface,cropApplied:!!this.cropEl,frameW:e,frameH:i,viewportW:o.viewportW,viewportH:o.viewportH,dpr:o.dpr,cssToFrame:a,croppedW:r.width,croppedH:r.height,clampedHeight:d},this.logDebug();const h=ud(r,2560);r=h.canvas;const{blob:u,type:p}=await vd(r,.9),v=performance.now()-n;return{blob:u,width:r.width,height:r.height,mode:this.name,durationMs:v,page:o,scope:"viewport",blobType:p,markerMapping:{scaleX:a*h.ratio,scaleY:a*h.ratio,originXCss:o.scrollX,originYCss:o.scrollY}}}async captureScreenCrop(t,e,i,o,n){const s=this.computeScreenCrop(e,i);let r=await this.grabFullFrame(t,e,i);r=hd(r,s.cropX,s.cropY,s.cropW,s.cropH);const a=s.scale;this.lastDebug={capability:"screen-crop",surface:this.surface,cropApplied:!1,frameW:e,frameH:i,viewportW:o.viewportW,viewportH:o.viewportH,dpr:o.dpr,cssToFrame:a,croppedW:r.width,croppedH:r.height,clampedHeight:!0,screenCrop:s},this.logDebug();const l=ud(r,2560);r=l.canvas;const{blob:c,type:d}=await vd(r,.9),h=performance.now()-n;return{blob:c,width:r.width,height:r.height,mode:this.name,durationMs:h,page:o,scope:"viewport",blobType:d,markerMapping:{scaleX:a*l.ratio,scaleY:a*l.ratio,originXCss:o.scrollX,originYCss:o.scrollY}}}computeScreenCrop(t,e){const i=window.innerWidth,o=window.innerHeight,n=Math.max(0,window.outerHeight-window.innerHeight),s="window"===this.surface,r=s?window.outerWidth:window.screen.width,a=s?window.screenX:0,l=s?window.screenY:0,c=r>0?t/r:1,d=window.screenX-a,h=window.screenY+n-l;let u=Math.round(d*c),p=Math.round(h*c),v=Math.round(i*c),g=Math.round(o*c);return u=Math.max(0,Math.min(u,t-1)),p=Math.max(0,Math.min(p,e-1)),v=Math.max(1,Math.min(v,t-u)),g=Math.max(1,Math.min(g,e-p)),{cropX:u,cropY:p,cropW:v,cropH:g,scale:c,chromeTopCss:n,surfaceWidthCss:r}}async grabFullFrame(t,e,i){const o=document.createElement("canvas");o.width=e,o.height=i,function(){md();const t=document.createElement("style");t.id=fd,t.textContent=`${gd.join(",\n")} { display: none !important; }`,document.head.appendChild(t)}();try{await dd(2),await function(t,e,i=600){const o=t.requestVideoFrameCallback;return"function"!=typeof o?dd(e+2):new Promise((n=>{let s=Math.max(1,e),r=!1;const a=()=>{r||(r=!0,clearTimeout(l),n())},l=setTimeout(a,Math.max(0,i)),c=()=>{r||(s-=1,s<=0?a():o.call(t,c))};o.call(t,c)}))}(t,3);const e=o.getContext("2d");if(!e)throw new Error("canvas-2d-unavailable");e.drawImage(t,0,0)}finally{md()}return o}logDebug(){"undefined"!=typeof console&&console.info("[sf-capture][native]",this.lastDebug)}dispose(){this.stream&&this.stream.getTracks().forEach((t=>t.stop())),this.video&&(this.video.srcObject=null,this.video.remove()),this.removeCropEl(),this.stream=null,this.video=null,this.surface=void 0}handleEnded(){var t,e;this.removeCropEl(),this.stream=null,null===(t=this.video)||void 0===t||t.remove(),this.video=null,this.surface=void 0,null===(e=this.onEnded)||void 0===e||e.call(this)}async applyViewportCrop(t){const e=window.CropTarget,i=t;if(e&&"function"==typeof i.cropTo)try{const t=document.createElement("div");t.setAttribute("data-sf-capture-viewport",""),t.style.cssText="position:fixed;inset:0;pointer-events:none;opacity:0;z-index:-1;margin:0;",document.body.appendChild(t);const o=await e.fromElement(t);await i.cropTo(o),this.cropEl=t}catch{this.removeCropEl()}}removeCropEl(){var t;null===(t=this.cropEl)||void 0===t||t.remove(),this.cropEl=null}}var Cd=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 xd 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=le,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._queryParamsComments=!1,this._usePageTitleAsLocationName=!1,this.toolbarEnabled=!1,this.toolbarEnabledApiCalled=!1,this.passwordProtected=!1,this.isPasswordValid=!1,this.password="",this.validatingPasswordLoading=!1,this.showPasswordProtectedModal=!1,this.showInvalidPassword=!1,this.skipGuestNameModal=!1,this._totalViews={},this.totalViewsCount=0,this.inviteUrl="",this.showModalOnceCommentIsModeIsOff=!1,this.showInviteModal=!1,this.featureAccess=null,this.hasAgentAccess=!1,this.hasPrivateCommentsAccess=!1,this.isPrivateCommentsEnabledOnWorkspace=!1,this.visibilityOptionsEnabled=!1,this.hasContentWarnings=!1,this.contentWarningsCount=0,this.showContentWarningSidebar=!1,this.showAgentCommentsInSidebar=!1,this.nativeScreenshotEnabled=!1,this.capturingScreenshot=!1,this.nativeCapture=new bd,this.isSettingSidebarData=!1,this.agentGroups=[],this.agentNameMap=new Map,this.agentNamesFetched=!1,this.spellingSuggestionPagePathMap=new Map,this.grammarSuggestionPagePathMap=new Map,this.processingAnnotationIds=new Set,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),Ac("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await Bc(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),Ac("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(vc(kt),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),Ac("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),Ac("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),Ac("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),Ac("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),Ac("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{this.setInviteUrl();const t=new URL(document.location),e=t.searchParams;if(e.has(Ct)&&uc(wt,"true",!1),(null==e?void 0:e.has(It))&&!pc(It)?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has(Nt))if(pc(Nt,!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Nt),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(At))if(pc(At,!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(At),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(Et)||e.has("snippyly_google_token")){if(e.has(Et)){const t=decodeURIComponent(e.get(Et)),i=mc(t,de,he),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=fc(e,de,he);uc(kt,i,!0),vc(Lt)}}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,uc(xt,JSON.stringify(i),!0)}e.delete(Et),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has(wt)?(uc(wt,"true",!1),vc(yt),e.delete(wt),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has(yt)||pc(wt,!1)&&this.loadPluginUI(),e.has(yt)?(uc(yt,"true",!1),vc(wt),e.delete(yt),window.history.replaceState({},document.title,t.href),this.loadPluginUI()):e.has(wt)||pc(yt,!1)&&this.loadPluginUI(),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),Ac("Error in checkUrl: ",t)}},this.setInviteUrl=()=>{try{const t=new URL(document.location);t.searchParams.has(wt)||t.searchParams.set(wt,"true"),this.inviteUrl=t.toString()}catch(t){console.warn("Error in setInviteUrl: ",t),Ac("Error in setInviteUrl: ",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&&uc(Tt,this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has(wt)||t.has(yt))&&t.has(_t)&&(uc(Mt,_t,!1,"sessionStorage"),this.projectVersion=t.get(_t),this.projectVersion&&uc(Tt,this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),Ac("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||pc(Mt,!1,"sessionStorage"),e=this.projectVersion||pc(Tt,!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),Ac("Error in setVersionInUrl: ",t)}},this.loadPluginUI=async()=>{var t,e,i,o,n,s,r,a;try{if(!this.apiKey)return;if(!this.projectId)return;if(this.loadPlugin)return this.generateLocation(),this.setLocation(),void setTimeout((()=>{var t;if(this.usePageTitleAsLocationName){const e=document.title;(null===(t=this.location)||void 0===t?void 0:t.locationName)!==e&&(this.generateLocation(),this.setLocation({forceSetLocation:!0}))}}),4e3);if(this.toolbarEnabledApiCalled||await this.detectToolbarEnabled(),!this.toolbarEnabled)return;mt.includes(this.apiKey)&&this.listenToDocumentTitleChange();const l=wc();l&&!(null==l?void 0:l.isAnonymous)&&(this.loading=!0);try{this.customerMetadata=await this.getCustomerMetadata()}catch(t){console.warn("Error in getCustomerMetadata: ",t),Ac("Error in getCustomerMetadata: ",t)}if(hc(Pt)&&(this.isPasswordValid=hc(Pt)),this.projectConfig=await Vc(this.apiKey,this.projectId),this.guestMode=!!(null===(t=this.projectConfig)||void 0===t?void 0:t.guestMode)||this.guestMode,this.allowGuestModeSignIn=!!(null===(i=null===(e=this.projectConfig)||void 0===e?void 0:e.guestModeConfig)||void 0===i?void 0:i.allowSignIn),this.queryParamsComments=!!(null===(o=this.projectConfig)||void 0===o?void 0:o.queryParamsComments),this.usePageTitleAsLocationName=!!(null===(n=this.projectConfig)||void 0===n?void 0:n.usePageTitleAsLocationName),(null===(s=this.projectConfig)||void 0===s?void 0:s.guestModeConfig)||(this.allowGuestModeSignIn=!0),this.passwordProtected=!!(null===(a=null===(r=this.projectConfig)||void 0===r?void 0:r.passwordProtected)||void 0===a?void 0:a.enabled),uc($t,this.guestMode+"",!0),uc(Ut,this.allowGuestModeSignIn+"",!0),uc(Dt,this.passwordProtected+"",!0),uc(Vt,this.queryParamsComments+"",!0),uc(Ft,this.usePageTitleAsLocationName+"",!0),this.loadPlugin=!0,!document.querySelector(ie.VELT_COMMENTS)){const t=document.createElement(ie.VELT_COMMENTS);t.setAttribute("filter-comments-on-dom","true"),t.setAttribute("shadow-dom","true"),null==t||t.addEventListener("onSignIn",(()=>{this.loginWithGoogle()})),null==t||t.addEventListener("onUpgrade",(()=>{this.onUpgradePlanClick()})),t.addEventListener("onCommentAdd",(()=>{this.addCommentCount++})),t.addEventListener("onCommentUpdate",(t=>{var e,i;(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&&(this.showModalOnceCommentIsModeIsOff=!0),this.addCommentCount>=5&&!this.showModalOnceCommentIsModeIsOff&&(this.showModalOnceCommentIsModeIsOff=!0))})),window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_CURSOR)){const t=document.createElement(ie.VELT_CURSOR);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_HUDDLE)){const t=document.createElement(ie.VELT_HUDDLE);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_RECORDER_NOTES)){const t=document.createElement(ie.VELT_RECORDER_NOTES);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_RECORDER_CONTROL_PANEL)){const t=document.createElement(ie.VELT_RECORDER_CONTROL_PANEL);window.document.body.appendChild(t)}if(!document.querySelector(ie.VELT_ARROWS)){const t=document.createElement(ie.VELT_ARROWS);window.document.body.appendChild(t)}try{const t=new URL(document.location),e=t.searchParams;let i=!1;e.has("wireframe")&&"true"===e.get("wireframe")&&(sessionStorage.setItem("velt-wireframe","true"),e.delete("wireframe"),i=!0),e.get("velt-version")&&(sessionStorage.setItem("velt-version",e.get("velt-version")),e.delete("velt-version"),i=!0),e.get("velt-env")&&(sessionStorage.setItem("velt-env",e.get("velt-env")),e.delete("velt-env"),i=!0),i&&window.history.replaceState({},document.title,t.href)}catch(t){}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),Ac("Error in loadPluginUI: ",t)}},this.listenToDocumentTitleChange=()=>{try{this.documentTitleChangeInterval||(this.documentTitleChangeInterval=setInterval((()=>{var t,e,i;const o="true"===sessionStorage.getItem("debugDocumentTitleChange");if(o&&(console.log("*** listenToDocumentTitleChange ***"),console.log("usePageTitleAsLocationName: ",this.usePageTitleAsLocationName)),this.usePageTitleAsLocationName){const n=document.title;o&&(console.log("location name: ",null===(t=this.location)||void 0===t?void 0:t.locationName),console.log("title: ",n),console.log("changed: ",(null===(e=this.location)||void 0===e?void 0:e.locationName)!==n)),(null===(i=this.location)||void 0===i?void 0:i.locationName)!==n&&(o&&console.log("%c triggering location update!","color: green; font-weight: bold;"),this.generateLocation(),this.setLocation({forceSetLocation:!0}))}}),2e3))}catch(t){Ac("Error in listenToDocumentTitleChange: ",t)}},this.initializeSnippyly=async()=>{var t,i,o,n,s,r,a,l,c,d,h,u,p,v,g,f,m,w,y,b,C,x,E,k,S,M,T,_,I;try{let N=this.staging?gt:ft;this.staging||(N="latest"),this.veltVersion&&(N=this.veltVersion);let A=this.staging,O=!1;if((null===sessionStorage||void 0===sessionStorage?void 0:sessionStorage.getItem("velt-version"))&&(N=sessionStorage.getItem("velt-version")),null===sessionStorage||void 0===sessionStorage?void 0:sessionStorage.getItem("velt-env")){"staging"===sessionStorage.getItem("velt-env")&&(A=!1,O=!0)}if(await e(this.apiKey,{options:{develop:A,staging:O,version:N,velt:!0,proxyDomain:"https://cdn.velt.dev"}}),!window.Velt)return;if(this.autoTranslation&&(null===Velt||void 0===Velt?void 0:Velt.enableAutoTranslation)&&(null===Velt||void 0===Velt||Velt.enableAutoTranslation()),!document.querySelector(ie.VELT_COMMENTS_SIDEBAR)){const t=document.createElement(ie.VELT_COMMENTS_SIDEBAR);t.setAttribute("shadow-dom","true"),t.setAttribute(oe.SIDEBAR_BUTTON_COUNT_TYPE,ne),t.setAttribute(oe.CUSTOM_ACTIONS,"true"),t.setAttribute(oe.ENABLE_URL_NAVIGATION,"true"),t.setAttribute(oe.CURRENT_LOCATION_SUFFIX,"true"),window.document.body.appendChild(t)}if(Velt){null===Velt||void 0===Velt||Velt.sf(!0);try{window.dispatchEvent(new CustomEvent("onVeltLoad",{detail:{Velt}})),(null===window||void 0===window?void 0:window.onSnippylyLoad)&&(null===window||void 0===window||window.onSnippylyLoad(Velt))}catch(t){}document.body.style.setProperty("--velt-default-font-family","'Poppins', sans-serif"),(()=>{try{if(!document.getElementById("superflowFontLink3")){const t=document.createElement("link");t.rel="stylesheet",t.href="https://firebasestorage.googleapis.com/v0/b/snippyly-sdk-external/o/fonts%2Fpoppins%2Fpoppins.css?alt=media&token=5f31a0f2-5f67-4974-bf56-78ae655f2b68",t.id="superflowFontLink3",document.head.appendChild(t)}}catch(t){console.warn("Error in loadPoppinsFont: ",t),Ac("Error in loadPoppinsFont: ",t)}})()}if(Velt&&(_c({sdkVersion:null===Velt||void 0===Velt?void 0:Velt.version,sdkType:"client"}),console.log(`Velt Version: ${(null===Velt||void 0===Velt?void 0:Velt.version)||"unknown"}`),console.log(`Superflow Toolbar Version: ${vt}`)),this.generateDocumentId(),(null===Velt||void 0===Velt?void 0:Velt.on)&&"function"==typeof(null===Velt||void 0===Velt?void 0:Velt.on)){const e=wc(),i="true"===sessionStorage.getItem("debugUserUpdateEvent");this.previousVeltUserId=null!==(t=null==e?void 0:e.userId)&&void 0!==t?t:"default",i&&console.log("[Superflow Debug] Initialized previousVeltUserId:",this.previousVeltUserId),Velt.on("userUpdate").subscribe((async t=>{if(i&&console.log("User from event: UserUpdate",t),t){const e=t.userId;i&&console.log("[Superflow Debug] userUpdate event fired:",{previousVeltUserId:this.previousVeltUserId,currentUserId:e,userChanged:this.previousVeltUserId!==e}),this.previousVeltUserId!==e&&(i&&console.log("[Superflow Debug] User changed, calling setDocumentAndLocation"),await this.setDocumentAndLocation()),this.previousVeltUserId=e}})),i&&console.log("[Superflow Debug] Performing initial setDocumentAndLocation"),await this.setDocumentAndLocation()}else await this.setDocumentAndLocation();if(setTimeout((()=>{var t;if(this.usePageTitleAsLocationName){const e=document.title;(null===(t=this.location)||void 0===t?void 0:t.locationName)!==e&&(this.generateLocation(),this.setLocation({forceSetLocation:!0}))}}),4e3),this.commentElement=null===Velt||void 0===Velt?void 0:Velt.getCommentElement(),this.contactElement=null===Velt||void 0===Velt?void 0:Velt.getContactElement(),this.rewriterElement=null===Velt||void 0===Velt?void 0:Velt.getRewriterElement(),this.presenceElement=null===Velt||void 0===Velt?void 0:Velt.getPresenceElement(),this.commentElement){this.commentElement.enableTextComments(!0),this.customLoginEnabledLocally||this.commentElement.enableSignInButton(!0),this.commentElement.enableAttachments(!0),(null===(i=this.commentElement)||void 0===i?void 0:i.showScreenSizeInfo)&&this.commentElement.showScreenSizeInfo(!0),(null===(o=this.commentElement)||void 0===o?void 0:o.enableDeviceInfo)&&this.commentElement.enableDeviceInfo(!0),this.commentElement.enableCommentIndex(!0),this.commentElement.onCommentModeChange&&this.commentElement.onCommentModeChange().subscribe((t=>{this.addCommentMode=t,this.addCommentMode||this.showModalOnceCommentIsModeIsOff&&(this.addCommentCount>=2&&!pc(zt)&&(this.allowGuestModeSignIn?this.openGuestModeSignInModal():this.openGuestModeNameModel(),uc(zt,"true"),this.showModalOnceCommentIsModeIsOff=!1),this.addCommentCount>=5&&!this.showGuestModeSignInModal&&!pc(Ht,!1,"sessionStorage")&&(this.showGuestModeSignInBanner(),uc(Ht,"true",!1,"sessionStorage"),this.showModalOnceCommentIsModeIsOff=!1))})),(null===(n=this.commentElement)||void 0===n?void 0:n.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(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 t=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;t&&"object"==typeof t&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatus)&&this.commentElement.setCustomStatus(t),(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(),(null===(p=this.commentElement)||void 0===p?void 0:p.enableDeviceIndicatorOnCommentPins)&&this.commentElement.enableDeviceIndicatorOnCommentPins(),(null===(f=null===(g=null===(v=this.customerMetadata)||void 0===v?void 0:v.superflow)||void 0===g?void 0:g.advancedFeatures)||void 0===f?void 0:f.takeScreenshotOnComments)?this.commentElement.enableScreenshot&&this.commentElement.enableScreenshot():this.commentElement.disableScreenshot&&this.commentElement.disableScreenshot(),this.addCommentAnnotationSubscription||"function"!=typeof this.commentElement.on||(this.addCommentAnnotationSubscription=this.commentElement.on("addCommentAnnotation").subscribe((t=>this.onAddCommentAnnotation(t)))),(null===(y=null===(w=null===(m=this.customerMetadata)||void 0===m?void 0:m.superflow)||void 0===w?void 0:w.advancedFeatures)||void 0===y?void 0:y.hasCustomStatus)&&this.setCustomStatuses(),this.setQueryParamsCommentsInSdk(),this.checkToEnableUpgradeButton(),this.setupSidebarAgentCommentFilter(),this.setupVeltButtonClickListener(),this.maybeApplyVisibilityOptionsToCommentElement()}this.applyStorageFeatureAccess(),this.selectionElement=Velt.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(b=this.rewriterElement)||void 0===b||b.enableRewriter()),this.presenceElement&&(null===(C=this.presenceElement)||void 0===C?void 0:C.enableFlockMode)&&(null===(x=this.presenceElement)||void 0===x||x.enableFlockMode(!0)),(null===Velt||void 0===Velt?void 0:Velt.getDocElement)&&(this.docElement=Velt.getDocElement()),null===(M=(null===(E=this.docElement)||void 0===E?void 0:E.getDocumentMetadata)?null===(k=this.docElement)||void 0===k?void 0:k.getDocumentMetadata():null===(S=null===Velt||void 0===Velt?void 0:Velt.docService)||void 0===S?void 0:S.getDocumentMetadata$())||void 0===M||M.subscribe((t=>{var e,i;const o=(null===(e=null==t?void 0:t.superflow)||void 0===e?void 0:e.versions)?Object.values(null===(i=null==t?void 0:t.superflow)||void 0===i?void 0:i.versions):[],n=new URL(document.location).searchParams.get("version");if(n){const t=o.find((t=>t.id===n));t&&(this.version={id:t.id,name:t.versionName||t.id},this.setLocation())}})),(null===Velt||void 0===Velt?void 0:Velt.getViewsElement)&&(this.viewsElement=Velt.getViewsElement()),(null===(T=this.viewsElement)||void 0===T?void 0:T.getUniqueViewsByUser)&&(null===(I=null===(_=this.viewsElement)||void 0===_?void 0:_.getUniqueViewsByUser())||void 0===I||I.subscribe((t=>{this.totalViews=t}))),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),Ac("Error in initializeSnippyly: ",t)}},this.generateDocumentId=()=>{try{this.documentId=lc(dc(window.location.origin))+"",this.projectId&&(this.documentId=this.projectId+""),this.serverDocumentId=(t=this.documentId+"")?`${lc(t)}`:void 0}catch(t){console.warn("Error in generateDocumentId: ",t),Ac("Error in generateDocumentId: ",t)}var t},this.setDocumentAndLocation=async()=>{try{this.generateDocumentId(),this.previousLocation=null,await(null===Velt||void 0===Velt?void 0:Velt.setDocumentId(this.documentId+"")),_c({documentId:this.serverDocumentId,clientDocumentId:this.documentId}),this.generateLocation(),this.setLocation()}catch(t){console.warn("Error in setDocumentAndLocation: ",t),Ac("Error in setDocumentAndLocation: ",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),Ac("Error in checkToEnableUpgradeButton: ",t)}},this.getCustomerMetadata=async()=>{try{const t=await jc(this.apiKey);return(t=>{try{const e=t?JSON.stringify(t):"false";uc(Wt,e)}catch(t){console.warn("Error in setCustomerMetadataToStorage: ",t),Ac("Error in setCustomerMetadataToStorage: ",t)}})(t),t}catch(t){console.warn("Error in getCustomerMetadata: ",t),Ac("Error in getCustomerMetadata: ",t);const e=(()=>{try{const t=pc(Wt);return t?"false"===t?JSON.parse(JSON.stringify(se)):JSON.parse(t):null}catch(t){return console.warn("Error in getCustomerMetadataFromStorage: ",t),Ac("Error in getCustomerMetadataFromStorage: ",t),null}})();if(e)return e}},this.setCustomStatuses=async()=>{var t;try{const e=await Rc(this.apiKey);if((null==e?void 0:e.success)&&(null==e?void 0:e.data)){const i=Object.values(e.data),o=this.sortCustomStatuses(i);o.length>0&&(null===(t=this.commentElement)||void 0===t?void 0:t.setCustomStatus)&&this.commentElement.setCustomStatus(o)}}catch(t){console.warn("Error in setCustomStatuses: ",t),Ac("Error in setCustomStatuses: ",t)}},this.sortCustomStatuses=t=>{try{const e=[...t].sort(((t,e)=>("number"==typeof t.order?t.order:Number.MAX_SAFE_INTEGER)-("number"==typeof e.order?e.order:Number.MAX_SAFE_INTEGER)));return e}catch(e){return console.warn("Error in sortCustomStatuses: ",e),Ac("Error in sortCustomStatuses: ",e),t}},this.getSamlConfig=async()=>{try{const t=await Hc(this.apiKey);return(t=>{try{if(t){const e=JSON.stringify(t);uc(Kt,e,!0)}}catch(t){console.warn("Error in setSamlConfigToStorage: ",t),Ac("Error in setSamlConfigToStorage: ",t)}})(t),t}catch(t){console.warn("Error in getSamlConfig: ",t),Ac("Error in getSamlConfig: ",t);const e=(()=>{try{const t=pc(Kt,!0);return t?JSON.parse(t):null}catch(t){return console.warn("Error in getSamlConfigFromStorage: ",t),Ac("Error in getSamlConfigFromStorage: ",t),null}})();if(e)return e}},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.superflow)||void 0===e?void 0:e.customBranding)||void 0===i?void 0:i.logoMark,v=null===(s=null===(n=null===(o=null==ae?void 0:se)||void 0===o?void 0:o.customBranding)||void 0===n?void 0:n.logo)||void 0===s?void 0:s.logoMark,g=null===(l=null===(a=null===(r=this.customerMetadata)||void 0===r?void 0:r.superflow)||void 0===a?void 0:a.customBranding)||void 0===l?void 0:l.wordMark,f=null===(h=null===(d=null===(c=null==ae?void 0:se)||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==g?void 0:g.lightUrl)||(null==g?void 0:g.darkUrl)||(null==f?void 0:f.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==g?void 0:g.darkUrl)||(null==g?void 0:g.lightUrl)||(null==f?void 0:f.darkUrl)}}catch(t){console.warn("Error in setLogos: ",t),Ac("Error in setLogos: ",t)}},this.getLogoMark=()=>{var t;try{return(null===(t=this.logoMark)||void 0===t?void 0:t.includes("<svg"))?L`
|
|
4621
|
+
${ut(this.logoMark)}
|
|
4584
4622
|
`:L`
|
|
4585
4623
|
<img src=${this.logoMark} />
|
|
4586
4624
|
`}catch(t){return console.warn("Error in getLogoMark: ",t),L``}},this.getWordMark=()=>{var t;try{return(null===(t=this.wordMark)||void 0===t?void 0:t.includes("<svg"))?L`
|
|
4587
|
-
${
|
|
4625
|
+
${ut(this.wordMark)}
|
|
4588
4626
|
`:L`
|
|
4589
4627
|
<img src=${this.wordMark} />
|
|
4590
|
-
`}catch(t){return console.warn("Error in getWordMark: ",t),L``}},this.generateLocation=()=>{try{if(this.autoLocation){const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete(wt),e.searchParams.delete(yt),e.searchParams.delete(bt),e.searchParams.delete(Ct),e.searchParams.delete(It),e.searchParams.delete(_t);const i=t.get(Tt)||this.projectVersion;this.queryParamsComments||(e.search="");let n=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),Nc("Error in removeHashFromUrl: ",e),t}})(e.href);this.projectId&&(n=null==n?void 0:n.replace(window.location.origin,"")),this.location={url:n,version:i}}}catch(t){console.warn("Error in generateLocation: ",t),Nc("Error in generateLocation: ",t)}},this.setLocation=t=>{var e,i,n,o;try{if(this.autoLocation&&window.Velt&&(null===Velt||void 0===Velt?void 0:Velt.setLocation)){if(this.version?(this.location||(this.location={}),this.location.version=this.version):this.location&&delete this.location.version,!(null==t?void 0:t.forceSetLocation)&&this.previousLocation&&(null===(e=this.previousLocation)||void 0===e?void 0:e.url)===(null===(i=this.location)||void 0===i?void 0:i.url)&&(null===(n=this.previousLocation)||void 0===n?void 0:n.version)===(null===(o=this.location)||void 0===o?void 0:o.version))return;const r=(t=>{try{const e=cc(t);return lc(JSON.stringify(e))}catch(t){return}})(JSON.parse(JSON.stringify(this.location)));if(r?this.location.id=`${r}`:delete this.location.id,this.usePageTitleAsLocationName){const t=document.title;t&&(this.location.locationName=t)}null===Velt||void 0===Velt||Velt.setLocation(JSON.parse(JSON.stringify(this.location))),Tc({clientLocation:this.location}),this.previousLocation=JSON.parse(JSON.stringify(this.location)),this.onVeltLocationChange()}}catch(t){console.warn("Error in setLocation: ",t),Nc("Error in setLocation: ",t)}},this.onVeltLocationChange=()=>{try{window.dispatchEvent(new CustomEvent("veltLocationChange",{detail:this.location}))}catch(t){console.warn("Error in onVeltLocationChange: ",t),Nc("Error in onVeltLocationChange: ",t)}},this.identifySnippyly=async()=>{var t,e;let i="",n="";try{this.invalidApiKey=!1;let e,o={name:"Default User",email:"default@usesuperflow.com",userId:"default",isAnonymous:!0,organizationId:this.apiKey};e=this.customLoginEnabled&&this.providedUser?this.providedUser:wc();const r=await this.getSamlConfig(),s=new URL(document.location);if(s.searchParams.has(kt)&&s.searchParams.delete(kt),r&&(this.signInUrl=`${ce}saml/${r.slug}/login?redirect_url=${encodeURIComponent(null==s?void 0:s.toString())}&source=sf`,window.Superflow.signInUrl=this.signInUrl),(null==e?void 0:e.email)&&(o=e),o.isAnonymous)delete o.groupId;else{const t=Velt.getDocumentId()||this.serverDocumentId;t&&(o.groupId=t+"")}if(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,n=null==o?void 0:o.userId,(null==o?void 0:o.isAnonymous)&&this.projectId&&this.guestMode){const t=bc(!0,this.apiKey);t&&(o=JSON.parse(JSON.stringify(t)))}(null==o?void 0:o.isAnonymous)||(this.loading=!0);const a={};(null==o?void 0:o.groupId)&&(a.groupId=null==o?void 0:o.groupId),o.organizationId=this.apiKey;const l=await Fc(this.apiKey,this.projectId||"",null==o?void 0:o.email,null==o?void 0:o.userId),c=null==l?void 0:l.isAdmin;if(this.snippylyUserRole=c?"Admin":"Commenter",c&&(a.isAdmin=c,c&&this.allFeatureDisabled&&(this.allFeatureDisabled=!1)),this.restoreContentWarningSidebarState(),(null==o?void 0:o.userId)&&!(null==o?void 0:o.isGuest)&&!(null==o?void 0:o.isAnonymous)&&this.documentId)try{await Kc(this.apiKey,this.documentId,o.userId,o.name,o.email)}catch(t){Nc("checkDocumentUserAndCreateError",t)}const[d]=await Promise.all([Velt.setVeltAuthProvider({user:o,options:{throwError:!0},retryConfig:{retryCount:3,retryDelay:1e3},generateToken:async()=>await Uc(this.apiKey,null==o?void 0:o.userId,a),onError:t=>{console.log("Error signing to velt - ",t),this.invalidApiKey=!0}}),this.fetchAndApplyFeatureAccess()]);if(this.hasAgentAccess&&this.insertShadowDOM(),this.invalidApiKey)throw"Invalid Api Key - Domain Not Whitelisted";Ic(JSON.parse(JSON.stringify(d||{}))),(null==o?void 0:o.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(o)));const u=JSON.parse(JSON.stringify(d||{}));if((null==u?void 0:u.userSnippylyId)&&!(null==u?void 0:u.isGuest)&&this.checkToMigrateGuestUser(u),Velt.getUserRole$().subscribe((t=>{var e;t&&(this.loading=!1,null===(e=this.commentElement)||void 0===e||e.enablePriority())})),this.contactListSubscription=Velt.getContactElement().getContactList().subscribe((t=>{var e;this.loading=!1,(null===(e=null==t?void 0:t.organizationUsers)||void 0===e?void 0:e.length)>0&&(this.checkPrivateCommentModeFromStorage(),this.contactListSubscription&&(this.contactListSubscription.unsubscribe(),this.contactListSubscription=null))})),(null===Velt||void 0===Velt?void 0:Velt.isPlanExpired$)&&(null===Velt||void 0===Velt||Velt.isPlanExpired$().subscribe((t=>{this.isPlanExpired=t}),(t=>{this.isPlanExpired=!1,console.warn("Error in isPlanExpired$: ",t),Nc("Error in isPlanExpired$: ",t)}))),null===Velt||void 0===Velt?void 0:Velt.on){let t;null===Velt||void 0===Velt||Velt.on("initUpdate").subscribe((e=>{"setDocumentsSuccess"===e.event&&(t&&(t.unsubscribe(),t=null),t=null===Velt||void 0===Velt?void 0:Velt.getDocumentMetadata().subscribe((async t=>{if(t){const e=await Dc(this.apiKey,null==t?void 0:t.clientDocumentId);this.setProjectConfigVariables(e)}}),(t=>{console.warn("Error in getDocumentMetadata: ",t),Nc("Error in getDocumentMetadata: ",t)})))}))}Tc({clientUserId:null==o?void 0:o.userId});try{_c(o)}catch(t){console.warn("Error in trackIdentifyEvent: ",t)}this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{pc(At)||(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,Ac(pt.Events.DOMAIN_NOT_WHITELISTED),this.projectId&&Oc(this.apiKey,this.projectId);if(new URL(document.location).searchParams.has(It))this.isSigningInUserAdmin=!0;else if(pc(Lt))this.isSigningInUserAdmin="true"===pc(Lt,!0);else{const t=await Fc(this.apiKey,this.projectId||"",i,n);this.isSigningInUserAdmin=!!(null==t?void 0:t.isAdmin),hc(Lt,this.isSigningInUserAdmin+"",!0)}}console.warn("Error in identifySnippyly: ",t),Nc("Error in identifySnippyly: ",t)}},this.fetchAndApplyFeatureAccess=async()=>{var t,e;try{this.featureAccess=await Yc(this.apiKey),this.applyStorageFeatureAccess();const i=null===(t=this.featureAccess)||void 0===t?void 0:t[Zc.Agents];this.hasAgentAccess=!0===(null==i?void 0:i.hasAccess);const n=null===(e=this.featureAccess)||void 0===e?void 0:e[Zc.WorkspacePrivateComments];this.hasPrivateCommentsAccess=!0===(null==n?void 0:n.hasAccess),this.isPrivateCommentsEnabledOnWorkspace=!0===(null==n?void 0:n.isPrivateCommentsEnabled),!this.canShowPrivateCommentToggle&&this.privateCommentModeEnabled&&(this.disablePrivateCommentModeOnCommentElement(),this.privateCommentModeEnabled=!1,hc(jt,"false")),this.maybeApplyVisibilityOptionsToCommentElement()}catch(t){console.warn("Error in fetchAndApplyFeatureAccess: ",t),Nc("Error in fetchAndApplyFeatureAccess: ",t)}},this.insertShadowDOM=()=>{try{if(document.querySelector("velt-wireframe"))return;const t=document.querySelector("velt-comments");t&&t.setAttribute("shadow-dom","true");const e=document.querySelector("velt-comments-sidebar");e&&e.setAttribute("shadow-dom","true")}catch(t){console.warn("Error in insertShadowDOM: ",t),Nc("Error in insertShadowDOM: ",t)}},this.applyStorageFeatureAccess=()=>{try{if(!this.featureAccess||!this.commentElement)return;const t=this.featureAccess[Zc.Storage];(null==t?void 0:t.hasUsageExhausted)&&(this.commentElement.disableAttachments(),this.commentElement.setRecordings("none"))}catch(t){Nc("Error in applyStorageFeatureAccess: ",t)}},this.checkToMigrateGuestUser=async t=>{try{const e=bc(!1,this.apiKey);e&&(await zc(this.apiKey,this.projectId||"",e,t,!0),fc(St))}catch(t){console.warn("Error in checkToMigrationGuestUser: ",t),Nc("Error in checkToMigrationGuestUser: ",t)}},this.getComments=()=>{try{this.commentElement&&this.commentSubscription&&this.commentSubscription.unsubscribe()}catch(t){console.warn("Error in getComments: ",t),Nc("Error in getComments: ",t)}},this.handleCommentSelection=t=>{var e,i,n,o,r,s,a,l,c,d;try{if(!1===(null==t?void 0:t.selected))return void(null===(e=null===Velt||void 0===Velt?void 0:Velt.setUiState)||void 0===e||e.call(Velt,{showButtons:!1}));const u=null==t?void 0:t.annotation;if(!u||!this.isAgentAnnotation(u))return void(null===(i=null===Velt||void 0===Velt?void 0:Velt.setUiState)||void 0===i||i.call(Velt,{showButtons:!1}));const h=null===(o=null===(n=null==u?void 0:u.agent)||void 0===n?void 0:n.result)||void 0===o?void 0:o.incorrectWord,p=(null===(r=null==u?void 0:u.pageInfo)||void 0===r?void 0:r.path)||(null===(s=null==u?void 0:u.location)||void 0===s?void 0:s.path)||(null===(a=null==u?void 0:u.agent)||void 0===a?void 0:a.path);if(!h||!p)return void(null===(l=null===Velt||void 0===Velt?void 0:Velt.setUiState)||void 0===l||l.call(Velt,{showButtons:!1}));const f=this.normalizePagePath(p),v=h,m=null===(d=null===(c=null==u?void 0:u.agent)||void 0===c?void 0:c.result)||void 0===d?void 0:d.type;let g,w="";"grammar"===m?(g=this.grammarSuggestionPagePathMap,w="grammar"):(g=this.spellingSuggestionPagePathMap,w="spelling");const y=null==g?void 0:g.get(v);((null==y?void 0:y.get(f))||0)<=1?Velt.setUiState({showButtons:!1,warningType:w}):Velt.setUiState({showButtons:!0,warningType:w})}catch(t){console.warn("Error in handleCommentSelection: ",t),Nc("Error in handleCommentSelection: ",t)}},this.processAgentComments=t=>{var e,i,n;try{if(!(null==t?void 0:t.length))return this.hasContentWarnings=!1,this.contentWarningsCount=0,this.agentGroups=[],this.spellingSuggestionPagePathMap=new Map,void(this.grammarSuggestionPagePathMap=new Map);!this.agentNamesFetched&&this.apiKey&&this.fetchAgentNames();const o=null==t?void 0:t.filter((t=>{var e;const i=(null===(e=null==t?void 0:t.status)||void 0===e?void 0:e.type)===Qt;return this.isAgentAnnotation(t)&&!i})),r=new Map;for(const t of o){const i=this.extractAgentId((null===(e=null==t?void 0:t.agent)||void 0===e?void 0:e.agentFields)||[]);if(!i)continue;const n=r.get(i);n?n.push(t):r.set(i,[t])}const s=[],a=new Map,l=new Map;for(const[t,e]of r){const o=this.isCustomAgent((null===(n=null===(i=e[0])||void 0===i?void 0:i.agent)||void 0===n?void 0:n.agentFields)||[]),r=this.resolveAgentDisplayName(t),{warnings:c,warningCount:d}=this.buildAgentWarnings(t,e,a,l);s.push({agentId:t,agentName:r,isCustom:o,warningCount:d,warnings:c,annotations:e})}s.sort(((t,e)=>e.warningCount-t.warningCount)),this.agentGroups=s;const c=s.reduce(((t,e)=>t+e.warningCount),0);this.contentWarningsCount=c,this.hasContentWarnings=c>0,this.spellingSuggestionPagePathMap=a,this.grammarSuggestionPagePathMap=l}catch(t){console.warn("Error in processAgentComments: ",t),Nc("Error in processAgentComments: ",t)}},this.extractAgentId=t=>{try{if(!Array.isArray(t)||0===t.length)return null;for(const e of t)if(null==e?void 0:e.startsWith(te.AGENT))return e.substring(te.AGENT.length);return null}catch(t){return console.warn("Error in extractAgentId: ",t),null}},this.isCustomAgent=t=>{try{return!!Array.isArray(t)&&t.includes(te.AGENT_TYPE_CUSTOM)}catch(t){return console.warn("Error in isCustomAgent: ",t),!1}},this.resolveAgentDisplayName=t=>{var e,i;try{return null!==(i=null===(e=this.agentNameMap)||void 0===e?void 0:e.get(t))&&void 0!==i?i:"Unknown Agent"}catch(t){return console.warn("Error in resolveAgentDisplayName: ",t),"Unknown Agent"}},this.fetchAgentNames=async()=>{var t,e,i;try{this.agentNamesFetched=!0;const{getAgents:n}=await Promise.resolve().then((function(){return Qc})),o=await n(this.apiKey),r=new Map;for(const i of o){const n=null!==(t=null==i?void 0:i.id)&&void 0!==t?t:"",o=null!==(e=null==i?void 0:i.name)&&void 0!==e?e:"";n&&o&&r.set(n,o)}if(this.agentNameMap=r,(null===(i=this.agentGroups)||void 0===i?void 0:i.length)>0){const t=this.agentGroups.map((t=>({...t,agentName:this.resolveAgentDisplayName(t.agentId)})));this.agentGroups=t}}catch(t){this.agentNamesFetched=!1,console.warn("Error in fetchAgentNames: ",t)}},this.buildAgentWarnings=(t,e,i,n)=>{try{return t===ee.BROKEN_LINKS?this.buildBrokenLinkWarnings(e):t===ee.SPELL_CHECK||t===ee.GRAMMAR_CHECK?this.buildSpellCheckWarnings(e,i,n):this.buildGenericWarnings(e)}catch(t){return console.warn("Error in buildAgentWarnings: ",t),{warnings:[],warningCount:0}}},this.buildBrokenLinkWarnings=t=>{var e,i,n,o,r,s,a,l,c,d,u;try{const h=new Map;for(const p of t){const t=(null===(e=null==p?void 0:p.pageInfo)||void 0===e?void 0:e.url)||(null===(i=null==p?void 0:p.location)||void 0===i?void 0:i.url)||(null===(n=null==p?void 0:p.agent)||void 0===n?void 0:n.url)||"",f=(null===(r=null===(o=null==p?void 0:p.agent)||void 0===o?void 0:o.result)||void 0===r?void 0:r.url)||(null===(a=null===(s=null==p?void 0:p.agent)||void 0===s?void 0:s.result)||void 0===a?void 0:a.link)||t,v=(null===(c=null===(l=null==p?void 0:p.agent)||void 0===l?void 0:l.result)||void 0===c?void 0:c.statusCode)||(null===(u=null===(d=null==p?void 0:p.agent)||void 0===d?void 0:d.result)||void 0===u?void 0:u.status)||"404",m=(null==f?void 0:f.toLowerCase())||"";if(h.has(m)){const e=h.get(m);e.occurrences+=1,t&&!e.pageUrls.includes(t)&&e.pageUrls.push(t),e.annotations.push(p)}else h.set(m,{primaryText:f||"",secondaryText:String(v),occurrences:1,pageUrls:t?[t]:[],annotations:[p]})}const p=Array.from(h.values());return{warnings:p,warningCount:p.length}}catch(t){return console.warn("Error in buildBrokenLinkWarnings: ",t),{warnings:[],warningCount:0}}},this.buildSpellCheckWarnings=(t,e,i)=>{var n,o,r,s,a,l,c,d,u,h,p,f,v,m,g,w,y,b,C;try{const x=new Map;for(const k of t){const t=(null===(n=null==k?void 0:k.pageInfo)||void 0===n?void 0:n.url)||(null===(o=null==k?void 0:k.location)||void 0===o?void 0:o.url)||(null===(r=null==k?void 0:k.agent)||void 0===r?void 0:r.url)||"",E=(null===(s=null==k?void 0:k.pageInfo)||void 0===s?void 0:s.path)||(null===(a=null==k?void 0:k.location)||void 0===a?void 0:a.path)||(null===(l=null==k?void 0:k.agent)||void 0===l?void 0:l.path)||"",S=this.normalizePagePath(E),M=null!==(d=null!==(c=null==k?void 0:k.comments)&&void 0!==c?c:null==k?void 0:k.commentData)&&void 0!==d?d:[],$=null!==(p=null===(h=null===(u=null==M?void 0:M[0])||void 0===u?void 0:u.commentText)||void 0===h?void 0:h.trim())&&void 0!==p?p:"",T=(null===(v=null===(f=null==k?void 0:k.agent)||void 0===f?void 0:f.result)||void 0===v?void 0:v.incorrectWord)||(null===(m=null==k?void 0:k.targetElement)||void 0===m?void 0:m.targetText)||$||"",I=(null===(w=null===(g=null==k?void 0:k.agent)||void 0===g?void 0:g.result)||void 0===w?void 0:w.suggestions)||[],_=Array.isArray(I)?I[0]||"":I||"",N=null===(b=null===(y=null==k?void 0:k.agent)||void 0===y?void 0:y.result)||void 0===b?void 0:b.type,A=T||"";T||console.warn("[CWS] Spell check annotation missing incorrectWord. agent.result:",null===(C=null==k?void 0:k.agent)||void 0===C?void 0:C.result,"targetElement:",null==k?void 0:k.targetElement,"comments:",M);const L="grammar"===N?i:e;L.has(A)||L.set(A,new Map);const O=L.get(A),F=O.get(S)||0;if(O.set(S,F+1),x.has(A)){const e=x.get(A);e.occurrences+=1,t&&!e.pageUrls.includes(t)&&e.pageUrls.push(t),e.annotations.push(k)}else x.set(A,{primaryText:T||"",secondaryText:_||"",occurrences:1,pageUrls:t?[t]:[],annotations:[k]})}const k=Array.from(x.values());return{warnings:k,warningCount:k.length}}catch(t){return console.warn("Error in buildSpellCheckWarnings: ",t),{warnings:[],warningCount:0}}},this.buildGenericWarnings=t=>{var e,i,n,o,r,s,a,l,c,d,u,h,p,f,v,m,g,w,y,b;try{const C=new Map;for(const x of t){const t=(null===(e=null==x?void 0:x.pageInfo)||void 0===e?void 0:e.url)||(null===(i=null==x?void 0:x.location)||void 0===i?void 0:i.url)||(null===(n=null==x?void 0:x.agent)||void 0===n?void 0:n.url)||"",k=null!==(r=null!==(o=null==x?void 0:x.comments)&&void 0!==o?o:null==x?void 0:x.commentData)&&void 0!==r?r:[],E=null==k?void 0:k[0],S=null!==(p=null!==(d=null!==(a=null===(s=null==E?void 0:E.commentText)||void 0===s?void 0:s.trim())&&void 0!==a?a:null===(c=null===(l=null==x?void 0:x.agent)||void 0===l?void 0:l.result)||void 0===c?void 0:c.incorrectWord)&&void 0!==d?d:null===(h=null===(u=null==x?void 0:x.targetElement)||void 0===u?void 0:u.targetText)||void 0===h?void 0:h.trim())&&void 0!==p?p:"",M=null!==(b=null!==(g=null===(m=null===(v=null===(f=null==x?void 0:x.agent)||void 0===f?void 0:f.result)||void 0===v?void 0:v.suggestions)||void 0===m?void 0:m[0])&&void 0!==g?g:null===(y=null===(w=null==x?void 0:x.agent)||void 0===w?void 0:w.result)||void 0===y?void 0:y.suggestion)&&void 0!==b?b:"",$=S||(null==x?void 0:x.annotationId)||(null==x?void 0:x.id)||"";if(C.has($)){const e=C.get($);e.occurrences+=1,t&&!e.pageUrls.includes(t)&&e.pageUrls.push(t),e.annotations.push(x)}else C.set($,{primaryText:S||"No text",secondaryText:M||"",occurrences:1,pageUrls:t?[t]:[],annotations:[x]})}const x=Array.from(C.values());return{warnings:x,warningCount:x.length}}catch(t){return console.warn("Error in buildGenericWarnings: ",t),{warnings:[],warningCount:0}}},this.normalizePagePath=t=>{try{return t?(null==t?void 0:t.startsWith("/"))?t.substring(1):t:""}catch(e){return console.warn("Error in normalizePagePath: ",e),t||""}},this.setQueryParamsCommentsInSdk=()=>{var t,e,i,n,o;try{const r="true"===sessionStorage.getItem("debugQueryParamsComments");r&&console.log("setQueryParamsCommentsInSdk commentElement",this.commentElement),this.commentElement&&(r&&console.log("setQueryParamsCommentsInSdk queryParamsComments",this.queryParamsComments),this.queryParamsComments&&(null===(t=this.commentElement)||void 0===t?void 0:t.enableQueryParamsComments)?(r&&console.log("enableQueryParamsComments this.commentElement?.enableQueryParamsComments",null===(e=this.commentElement)||void 0===e?void 0:e.enableQueryParamsComments),null===(i=this.commentElement)||void 0===i||i.enableQueryParamsComments()):!this.queryParamsComments&&(null===(n=this.commentElement)||void 0===n?void 0:n.disableQueryParamsComments)&&(r&&console.log("disableQueryParamsComments"),null===(o=this.commentElement)||void 0===o||o.disableQueryParamsComments()))}catch(t){console.warn("Error in setQueryParamsCommentsInSdk: ",t),Nc("Error in setQueryParamsCommentsInSdk: ",t)}},this.checkGlobalUserContact=()=>{try{this.contactElement&&this.contactElement.isUserGlobalContact().subscribe((t=>{this.isUserGlobalContact=t}))}catch(t){console.warn("Error in checkGlobalUserContact: ",t),Nc("Error in checkGlobalUserContact: ",t)}},this.setProjectConfigVariables=t=>{var e,i,n,o;try{const r="Admin"===this.snippylyUserRole;this.allFeatureDisabled=!r&&(null!==(e=null==t?void 0:t.disabled)&&void 0!==e&&e),this.allFeatureRestricted=null!==(i=null==t?void 0:t.restricted)&&void 0!==i&&i,this.guestMode=null!==(n=null==t?void 0:t.guestMode)&&void 0!==n&&n,this.allowGuestModeSignIn=!!(null===(o=null==t?void 0:t.guestModeConfig)||void 0===o?void 0:o.allowSignIn),(null==t?void 0:t.guestModeConfig)||(this.allowGuestModeSignIn=!0),this.guestMode&&Ac(pt.Events.GUEST_MODE_PRESENT),this.passwordProtected=!1,this.queryParamsComments=!!(null==t?void 0:t.queryParamsComments),this.usePageTitleAsLocationName=!!(null==t?void 0:t.usePageTitleAsLocationName),Velt&&(t&&this.passwordProtected&&!this.isPasswordValid?Velt.disableFeatures(["area","arrow","audioHuddle","cursor","huddle","liveStateSync","presence","tag","recorder","comment"]):Velt.disableFeatures([])),hc(Ot,this.guestMode+"",!0),hc(Ut,this.allowGuestModeSignIn+"",!0),hc(Ft,this.passwordProtected+"",!0),hc(Dt,this.queryParamsComments+"",!0),hc(Pt,this.usePageTitleAsLocationName+"",!0)}catch(t){console.warn("Error in setProjectConfigVariables: ",t),Nc("Error in setProjectConfigVariables: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded,this.expanded?Ac(pt.Events.TOOLBAR_EXPANDED):Ac(pt.Events.TOOLBAR_COLLAPSED)}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),Nc("Error in toggleSnippylyPluginToolbar: ",t)}},this.enablePrivateCommentModeOnCommentElement=()=>{try{if(!this.commentElement||"function"!=typeof this.commentElement.enablePrivateMode)return;this.commentElement.enablePrivateMode({type:Vt})}catch(t){console.warn("Error in enablePrivateCommentModeOnCommentElement: ",t),Nc("Error in enablePrivateCommentModeOnCommentElement: ",t)}},this.disablePrivateCommentModeOnCommentElement=()=>{try{if(!this.commentElement||"function"!=typeof this.commentElement.disablePrivateMode)return;this.commentElement.disablePrivateMode()}catch(t){console.warn("Error in disablePrivateCommentModeOnCommentElement: ",t),Nc("Error in disablePrivateCommentModeOnCommentElement: ",t)}},this.enableVisibilityOptionsOnCommentElement=()=>{try{if(this.visibilityOptionsEnabled)return;if(!this.commentElement||"function"!=typeof this.commentElement.enableVisibilityOptions)return;this.commentElement.enableVisibilityOptions(),this.visibilityOptionsEnabled=!0,Ac(pt.Events.VISIBILITY_OPTIONS_ENABLED)}catch(t){console.warn("Error in enableVisibilityOptionsOnCommentElement: ",t),Nc("Error in enableVisibilityOptionsOnCommentElement: ",t)}},this.disableVisibilityOptionsOnCommentElement=()=>{try{if(!this.visibilityOptionsEnabled)return;if(!this.commentElement||"function"!=typeof this.commentElement.disableVisibilityOptions)return void(this.visibilityOptionsEnabled=!1);this.commentElement.disableVisibilityOptions(),this.visibilityOptionsEnabled=!1,Ac(pt.Events.VISIBILITY_OPTIONS_DISABLED)}catch(t){console.warn("Error in disableVisibilityOptionsOnCommentElement: ",t),Nc("Error in disableVisibilityOptionsOnCommentElement: ",t)}},this.maybeApplyVisibilityOptionsToCommentElement=()=>{"Admin"===this.snippylyUserRole&&this.canShowPrivateCommentToggle?this.enableVisibilityOptionsOnCommentElement():this.disableVisibilityOptionsOnCommentElement()},this.togglePrivateCommentMode=()=>{try{this.commentElement&&(this.privateCommentModeEnabled?(this.disablePrivateCommentModeOnCommentElement(),this.privateCommentModeEnabled=!1,Ac(pt.Events.PRIVATE_MODE_DISABLED)):(this.enablePrivateCommentModeOnCommentElement(),this.privateCommentModeEnabled=!0,Ac(pt.Events.PRIVATE_MODE_ENABLED)),hc(jt,this.privateCommentModeEnabled.toString()))}catch(t){console.warn("Error in togglePrivateCommentMode: ",t),Nc("Error in togglePrivateCommentMode: ",t)}},this.checkPrivateCommentModeFromStorage=()=>{try{!this.allFeatureDisabled&&"Admin"===this.snippylyUserRole&&this.canShowPrivateCommentToggle&&pc(jt)&&(this.privateCommentModeEnabled="true"===pc(jt),this.privateCommentModeEnabled&&this.enablePrivateCommentModeOnCommentElement())}catch(t){console.warn("Error in checkPrivateCommentModeFromStorage: ",t),Nc("Error in checkPrivateCommentModeFromStorage: ",t)}},this.loginWithGoogle=()=>{try{if(Ac(pt.Events.SIGNIN_CLICKED),this.loading||this.customLoginEnabledLocally)return;const t=this.buildSignInUrlWithParams(this.signInUrl||"");window.open(t,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),Nc("Error in loginWithGoogle: ",t)}},this.buildSignInUrlWithParams=t=>{try{const e=new URL(t);return this.apiKey&&e.searchParams.set("apiKey",this.apiKey),this.projectId&&e.searchParams.set("projectId",this.projectId),e.toString()}catch(e){return console.warn("Error in buildSignInUrlWithParams: ",e),Nc("Error in buildSignInUrlWithParams: ",e),t}},this.getQRCode=async()=>{try{const t=new URL(window.location.href);null==t||t.searchParams.set("review","true");const e=null==t?void 0:t.toString();if(e){const t=mc(e,de,ue),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getqrcode?text=${encodeURIComponent(t)}`),n=await i.json();(null==n?void 0:n.qrcode)&&(this.qrCode=null==n?void 0:n.qrcode)}}catch(t){console.warn("Error in getQRCode: ",t),Nc("Error in getQRCode: ",t)}},this.toggleQRCodeVisibility=async()=>{try{Ac(pt.Events.OPEN_MOBILE_CLICKED),this.showQrCode=!this.showQrCode,this.showQrCode&&!this.qrCode&&await this.getQRCode()}catch(t){console.warn("Error in toggleQRCodeVisibility: ",t),Nc("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.openInviteModal()},this.openInviteModal=()=>{this.showInviteModal=!0,Ac(pt.Events.INVITE_MODAL_OPENED)},this.closeInviteModal=()=>{this.showInviteModal=!1},this.onInviteSuccess=()=>{this.closeInviteModal(),Ac(pt.Events.INVITE_SENT)},this.removeSnippyly=async()=>{try{Ac(pt.Events.EXIT_REVIEW_MODE_CLICKED),this.exitReviewModeCalled=!0,fc(wt),fc(yt),fc(bt),fc(Mt,"sessionStorage"),fc($t,"sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete(bt),e.delete(wt),e.delete(Ct),e.delete(yt),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete(Tt),e.delete(It),e.delete(_t),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),Nc("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{Ac(pt.Events.SIGNOUT_CLICKED),this.subscriptions.forEach((t=>{t&&t.unsubscribe&&(null==t||t.unsubscribe())})),this.contactListSubscription&&(this.contactListSubscription.unsubscribe(),this.contactListSubscription=null),await Velt.signOutUser(),fc(xt),fc(Et),fc(Lt),fc(jt),this.snippylyUser=void 0,window.open(this.signOutUrl,"_self")}catch(t){console.warn("Error in signOutUser: ",t),Nc("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),Nc("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),Nc("Error in copyLink: ",t)}},this.goToAdminPortal=()=>{try{let t=`${ce}`;Velt&&(null===Velt||void 0===Velt?void 0:Velt.getDocumentId)&&this.serverDocumentId&&(t=`${ce}/dashboard/project/comment/${this.apiKey}/${this.serverDocumentId}`),Ac(pt.Events.VIEW_PROJECT_CLICKED),window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),Nc("Error in goToAdminPortal: ",t)}},this.goToAdminPortalDashboard=()=>{try{let t=`${ce}`;Velt&&(null===Velt||void 0===Velt?void 0:Velt.getDocumentId)&&this.serverDocumentId&&(t=`${ce}/dashboard`),window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortalDashboard: ",t),Nc("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),Nc("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,hc(It,"true");const t=new URL(document.location);t.searchParams.delete(It),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),Nc("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,hc(_t,"true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete(_t),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),Nc("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Nt),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),Nc("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://superflow-portal-v2-staging.firebaseapp.com/settings/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),Nc("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,hc(At,"true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),Nc("Error in onTourCommentTooltipClick: ",t)}},this.onGuestModeChipSignInButtonClick=()=>{try{Ac(pt.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeChipSignInButtonClick: ",t),Nc("Error in onGuestModeChipSignInButtonClick: ",t)}},this.openGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!0,Ac(pt.Events.GUEST_MODE_SIGN_IN_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeSignInModal: ",t),Nc("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),Nc("Error in closeGuestModeSignInModal: ",t)}},this.onGuestModeSignInModalSignInButtonClick=()=>{try{Ac(pt.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeSignInModalSignInButtonClick: ",t),Nc("Error in onGuestModeSignInModalSignInButtonClick: ",t)}},this.openGuestModeNameModel=t=>{try{t&&(t.stopPropagation(),t.preventDefault()),this.skipGuestNameModal||(this.showGuestModeNameModal=!0,Ac(pt.Events.GUEST_MODE_NAME_NUDGE_SHOWN))}catch(t){console.warn("Error in openGuestModeNameModel: ",t),Nc("Error in openGuestModeNameModel: ",t)}},this.closeGuestModeNameModel=()=>{try{this.showGuestModeNameModal=!1}catch(t){console.warn("Error in closeGuestModeNameModel: ",t),Nc("Error in closeGuestModeNameModel: ",t)}},this.onGuestModeNameModalSkipButtonClick=()=>{try{Ac(pt.Events.GUEST_MODE_SKIP_BUTTON_CLICKED),this.showGuestModeNameModal=!1}catch(t){console.warn("Error in onGuestModeNameModalSkipButtonClick: ",t),Nc("Error in onGuestModeNameModalSkipButtonClick: ",t)}},this.onPasswordProtectedModalCloseButtonClick=()=>{try{Ac(pt.Events.PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED),this.showPasswordProtectedModal=!1,this.password="",this.showInvalidPassword=!1}catch(t){console.warn("Error in onPasswordProtectedModalCloseButtonClick: ",t),Nc("Error in onPasswordProtectedModalCloseButtonClick: ",t)}},this.onPasswordProtectedModalOpenButtonClick=()=>{try{Ac(pt.Events.PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED),this.showPasswordProtectedModal=!0}catch(t){console.warn("Error in onPasswordProtectedModalOpenButtonClick: ",t),Nc("Error in onPasswordProtectedModalOpenButtonClick: ",t)}},this.showGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!0,Ac(pt.Events.GUEST_MODE_SIGN_IN_NUDGE_SHOWN)}catch(t){console.warn("Error in showGuestModeSignInBanner: ",t),Nc("Error in showGuestModeSignInBanner: ",t)}},this.hideGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!1}catch(t){console.warn("Error in hideGuestModeSignInBanner: ",t),Nc("Error in hideGuestModeSignInBanner: ",t)}},this.onGuestModeBannerSignInButtonClick=()=>{try{Ac(pt.Events.GUEST_MODE_SIGN_IN_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeBannerSignInButtonClick: ",t),Nc("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=bc(!0,this.apiKey);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=mc(e,de,ue);hc(St,i,!0)}catch(t){console.warn("Error in updateGuestUser: ",t),Nc("Error in updateGuestUser: ",t)}})(e),await Velt.identify(e),this.snippylyUser=JSON.parse(JSON.stringify(e)),await zc(this.apiKey,this.projectId||"",t,e),this.showGuestModeNameModal=!1,this.guestUserNameUpdated=!0,this.guestUserNameUpdateLoading=!1,hc(Bt,"true"),Ac(pt.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),Nc("Error in updateGuestUserName: ",t)}},this.submitPassword=async()=>{var t;try{if(Ac(pt.Events.REVIEW_PASSWORD_ADDED),!(null===(t=this.password)||void 0===t?void 0:t.trim()))return;if(this.validatingPasswordLoading)return;this.validatingPasswordLoading=!0,this.isPasswordValid=await Pc(this.apiKey,this.projectId,this.password),function(t,e){try{const i="object"==typeof e?JSON.stringify(e):e;localStorage.setItem(t,i)}catch(t){console.warn("Error in setLocalStorage: ",t)}}(Rt,this.isPasswordValid),this.isPasswordValid?(this.password="",this.onPasswordProtectedModalCloseButtonClick(),this.showInvalidPassword=!1,Velt&&Velt.disableFeatures([]),Ac(pt.Events.REVIEW_PASSWORD_ACCEPTED)):(this.showInvalidPassword=!0,Ac(pt.Events.REVIEW_PASSWORD_REJECTED)),this.validatingPasswordLoading=!1}catch(t){console.warn("Error in submitPassword: ",t),Nc("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 zc(this.apiKey,this.projectId||"",e,i),await Velt.updateUser(i),this.snippylyUser=JSON.parse(JSON.stringify(i));const n=wc();n.name=i.name;const o=JSON.stringify(n),r=mc(o,de,ue);hc(Et,r,!0),this.guestUserNameUpdateLoading=!1,this.guestUserNameInput="",this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateUserName: ",t),Nc("Error in updateUserName: ",t)}},this.isAgentAnnotation=t=>{var e;try{const i=null!==this.extractAgentId((null===(e=null==t?void 0:t.agent)||void 0===e?void 0:e.agentFields)||[]),n=(null==t?void 0:t.type)===Xt,o=(null==t?void 0:t.commentType)===Xt;return i||n||o}catch(t){return console.warn("Error in isAgentAnnotation: ",t),!1}},this.getSidebarGroupExpansionMap=()=>{var t,e,i,n,o;try{const r=document.querySelector(ie.VELT_COMMENTS_SIDEBAR),s=null===(o=null===(n=null===(i=null===(e=null===(t=null==r?void 0:r._ngElementStrategy)||void 0===t?void 0:t.componentRef)||void 0===e?void 0:e.instance)||void 0===i?void 0:i.componentConfigSignal)||void 0===n?void 0:n.call(i))||void 0===o?void 0:o.virtualScrollData;if(!Array.isArray(s))return;const a=new Map;return s.forEach((t=>{var e,i;if("group"!==(null==t?void 0:t.type))return;const n=null===(e=null==t?void 0:t.data)||void 0===e?void 0:e.displayName,o=null===(i=null==t?void 0:t.data)||void 0===i?void 0:i.isExpanded;"string"==typeof n&&"boolean"==typeof o&&a.set(n,o)})),a}catch(t){return void console.warn("Error in getSidebarGroupExpansionMap: ",t)}},this.filterAgentCommentsFromSidebar=(t,e)=>{try{if(this.isSettingSidebarData)return;if(!t||!this.commentElement)return;const i=t.commentAnnotations;if(!Array.isArray(i))return;if(this.processAgentComments(i),this.showAgentCommentsInSidebar)return;const n=Array.isArray(null==t?void 0:t.systemFilteredAnnotations)?t.systemFilteredAnnotations:[],o=new Set(n.map((t=>(null==t?void 0:t.annotationId)||(null==t?void 0:t.id))).filter((t=>Boolean(t)))),r=[];i.forEach((t=>{if(this.isAgentAnnotation(t))return;const e=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id);e&&o.has(e)&&r.push(t)}));const s=new Map;r.forEach((t=>{var e,i,n,o;const r=(null===(e=null==t?void 0:t.pageInfo)||void 0===e?void 0:e.path)||(null===(i=null==t?void 0:t.pageInfo)||void 0===i?void 0:i.url)||(null===(n=null==t?void 0:t.location)||void 0===n?void 0:n.path)||"/";s.has(r)||s.set(r,[]),null===(o=s.get(r))||void 0===o||o.push(t)}));const a=[],l=new URL(window.location.href).pathname,c="/"+this.normalizePagePath(l);s.forEach(((t,i)=>{const n=null==e?void 0:e.get(i);a.push({groupId:i,groupName:i,isExpanded:"boolean"==typeof n?n:i===c,annotations:t})})),this.isSettingSidebarData=!0,this.commentElement.setCommentSidebarData(a,{grouping:!0}),this.isSettingSidebarData=!1}catch(t){this.isSettingSidebarData=!1,console.warn("Error in filterAgentCommentsFromSidebar: ",t),Nc("Error in filterAgentCommentsFromSidebar: ",t)}},this.setCommentSidebarVisibility=t=>{var e,i,n,o;try{if(t===this.showAgentCommentsInSidebar)return;const r=document.querySelector(ie.VELT_COMMENTS_SIDEBAR);if(!r)return;t?(r.removeAttribute(ne.SIDEBAR_BUTTON_COUNT_TYPE),r.removeAttribute(ne.CUSTOM_ACTIONS),null===(i=null===(e=this.commentElement)||void 0===e?void 0:e.disableFilterCommentsOnDom)||void 0===i||i.call(e)):(r.setAttribute(ne.SIDEBAR_BUTTON_COUNT_TYPE,oe),r.setAttribute(ne.CUSTOM_ACTIONS,"true"),null===(o=null===(n=this.commentElement)||void 0===n?void 0:n.enableFilterCommentsOnDom)||void 0===o||o.call(n)),this.showAgentCommentsInSidebar=t}catch(t){console.warn("Error in setCommentSidebarVisibility: ",t),Nc("Error in setCommentSidebarVisibility: ",t)}},this.toggleCommentSidebarVisibility=()=>{try{this.setCommentSidebarVisibility(!this.showAgentCommentsInSidebar),this.menuOpenedId=void 0}catch(t){console.warn("Error in toggleCommentSidebarVisibility: ",t),Nc("Error in toggleCommentSidebarVisibility: ",t)}},this.setupSidebarAgentCommentFilter=()=>{try{if(!this.commentElement)return;"function"==typeof this.commentElement.on&&(this.commentElement.on("commentSidebarDataInit").subscribe((t=>{this.filterAgentCommentsFromSidebar(t)})),this.commentElement.on("commentSidebarDataUpdate").subscribe((t=>{const e=this.getSidebarGroupExpansionMap();this.filterAgentCommentsFromSidebar(t,e)}))),this.setupAgentWarningsHydration()}catch(t){console.warn("Error in setupSidebarAgentCommentFilter: ",t),Nc("Error in setupSidebarAgentCommentFilter: ",t)}},this.setupAgentWarningsHydration=()=>{try{if(!this.commentElement||"function"!=typeof this.commentElement.getAllCommentAnnotations||!this.documentId)return;const t=this.commentElement.getAllCommentAnnotations(this.documentId+"");if(!t||"function"!=typeof t.subscribe)return;const e=t.subscribe((t=>{try{if(!this.showAgentCommentsInSidebar)return;this.processAgentComments(Array.isArray(t)?t:[])}catch(t){console.warn("Error in agent-warnings hydration subscription: ",t),Nc("Error in agent-warnings hydration subscription: ",t)}}));this.subscriptions.push(e)}catch(t){console.warn("Error in setupAgentWarningsHydration: ",t),Nc("Error in setupAgentWarningsHydration: ",t)}},this.getContentWarningsDisplayCount=()=>{try{return this.contentWarningsCount>99?"99+":`${this.contentWarningsCount}`}catch(t){return console.warn("Error in getContentWarningsDisplayCount: ",t),"0"}},this.onContentWarningsButtonClick=()=>{try{this.showContentWarningSidebar=!this.showContentWarningSidebar}catch(t){console.warn("Error in onContentWarningsButtonClick: ",t),Nc("Error in onContentWarningsButtonClick: ",t)}},this.onContentWarningSidebarClose=()=>{try{this.showContentWarningSidebar=!1}catch(t){console.warn("Error in onContentWarningSidebarClose: ",t)}},this.restoreContentWarningSidebarState=()=>{try{const t="true"===pc(Gt,!1,"sessionStorage"),e=new URL(window.location.href).searchParams.has(Ct);if(!t)return;if(!e)return;if(this.allFeatureDisabled||"Admin"!==this.snippylyUserRole)return;this.showContentWarningSidebar=!0}catch(t){console.warn("Error in restoreContentWarningSidebarState: ",t),Nc("Error in restoreContentWarningSidebarState: ",t)}},this.navigateTo=t=>{try{window.location.href=t}catch(t){console.warn("Error in navigateTo: ",t),Nc("Error in navigateTo: ",t)}},this.onContentWarningSidebarAddAll=()=>{},this.onContentWarningItemClick=t=>{var e,i,n;try{const o=null===(e=null==t?void 0:t.detail)||void 0===e?void 0:e.annotation;if(!(null==o?void 0:o.annotationId)&&!(null==o?void 0:o.id))return;const r=(null==o?void 0:o.annotationId)||(null==o?void 0:o.id),s=null===(i=null==o?void 0:o.pageInfo)||void 0===i?void 0:i.url;if(s&&!this.isCurrentPageUrl(s)){const t=new URL(s);return t.searchParams.set(Ct,r),this.showContentWarningSidebar&&hc(Gt,"true",!1,"sessionStorage"),void this.navigateTo(t.toString())}(null===(n=this.commentElement)||void 0===n?void 0:n.selectCommentByAnnotationId)&&this.commentElement.selectCommentByAnnotationId(r),setTimeout((()=>{var t;(null===(t=this.commentElement)||void 0===t?void 0:t.scrollToCommentByAnnotationId)&&this.commentElement.scrollToCommentByAnnotationId(r)}),150)}catch(t){console.warn("Error in onContentWarningItemClick: ",t),Nc("Error in onContentWarningItemClick: ",t)}},this.isCurrentPageUrl=t=>{try{const e=new URL(t).pathname;return e===window.location.pathname}catch{return!1}},this.setupVeltButtonClickListener=()=>{try{if(!(null===Velt||void 0===Velt?void 0:Velt.on))return void console.warn("[CWS Toolbar] Velt.on not available for button click listener");Velt.on("veltButtonClick").subscribe((t=>{var e;try{if(!t)return;const i=null===(e=null==t?void 0:t.buttonContext)||void 0===e?void 0:e.clickedButtonId,n=null==t?void 0:t.commentAnnotation,o=(null==n?void 0:n.annotationId)||(null==n?void 0:n.id);if(("accept-suggestion"===i||"reject-suggestion"===i)&&o&&this.processingAnnotationIds.has(o))return;"prev-suggestion"===i?this.navigateSuggestion(n,"prev"):"next-suggestion"===i?this.navigateSuggestion(n,"next"):"accept-suggestion"===i?this.handleAcceptSuggestion(n):"reject-suggestion"===i&&this.handleDeclineSuggestion(n)}catch(t){console.warn("Error in veltButtonClick handler: ",t)}})),this.commentElement.onCommentSelectionChange().subscribe((t=>{this.handleCommentSelection(t)}))}catch(t){console.warn("Error in setupVeltButtonClickListener: ",t),Nc("Error in setupVeltButtonClickListener: ",t)}},this.navigateSuggestion=(t,e)=>{var i,n,o,r,s;try{if(!t)return void console.warn("[CWS Toolbar] No annotation provided for navigation");const a=null===(n=null===(i=null==t?void 0:t.agent)||void 0===i?void 0:i.result)||void 0===n?void 0:n.incorrectWord;if(!a)return void console.warn("[CWS Toolbar] No incorrectWord found on annotation");const l=this.findMatchingWarning(a);if(!l)return void console.warn("[CWS Toolbar] No matching warning found for word:",a);const c=null===(o=null==t?void 0:t.pageInfo)||void 0===o?void 0:o.path,d=this.normalizePagePath(c),u=null===(r=null==l?void 0:l.annotations)||void 0===r?void 0:r.filter((t=>{var e;const i=null===(e=null==t?void 0:t.pageInfo)||void 0===e?void 0:e.path;return this.normalizePagePath(i)===d}));if(!(null==u?void 0:u.length)||u.length<=1)return;const h=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id),p=u.findIndex((t=>((null==t?void 0:t.annotationId)||(null==t?void 0:t.id))===h));if(-1===p)return void console.warn("[CWS Toolbar] Current annotation not found in warning group");let f;f="next"===e?(p+1)%u.length:(p-1+u.length)%u.length;const v=u[f],m=(null==v?void 0:v.annotationId)||(null==v?void 0:v.id);m&&((null===(s=this.commentElement)||void 0===s?void 0:s.selectCommentByAnnotationId)&&this.commentElement.selectCommentByAnnotationId(m),setTimeout((()=>{var t;(null===(t=this.commentElement)||void 0===t?void 0:t.scrollToCommentByAnnotationId)&&this.commentElement.scrollToCommentByAnnotationId(m)}),150))}catch(t){console.warn("Error in navigateSuggestion: ",t),Nc("Error in navigateSuggestion: ",t)}},this.findMatchingWarning=t=>{var e;try{for(const i of this.agentGroups){const n=null===(e=null==i?void 0:i.warnings)||void 0===e?void 0:e.find((e=>(null==e?void 0:e.primaryText)===t));if(n)return n}return null}catch(t){return console.warn("Error in findMatchingWarning: ",t),null}},this.removeAnnotationFromWarnings=t=>{var e,i,n;try{if(!t)return;const o=e=>{var i,n,o,r;for(const s of e){const e=null===(i=null==s?void 0:s.annotations)||void 0===i?void 0:i.find((e=>((null==e?void 0:e.annotationId)||(null==e?void 0:e.id))===t));if(e){const t="grammar"===(null===(o=null===(n=null==e?void 0:e.agent)||void 0===n?void 0:n.result)||void 0===o?void 0:o.type)?this.grammarSuggestionPagePathMap:this.spellingSuggestionPagePathMap,i=(null==s?void 0:s.primaryText)||"",a=null===(r=null==e?void 0:e.pageInfo)||void 0===r?void 0:r.path,l=this.normalizePagePath(a);if(i&&l&&t.has(i)){const e=t.get(i),n=e.get(l)||0;n>1?e.set(l,n-1):(e.delete(l),0===e.size&&t.delete(i))}return}}};for(const t of this.agentGroups)(null==t?void 0:t.agentId)!==ee.SPELL_CHECK&&(null==t?void 0:t.agentId)!==ee.GRAMMAR_CHECK||o(t.warnings);const r=null!==(n=null===(i=null===(e=this.agentGroups)||void 0===e?void 0:e.map((e=>{var i,n,o,r,s;const a=null!==(o=null===(n=null===(i=null==e?void 0:e.warnings)||void 0===i?void 0:i.map((e=>{var i;const n=null===(i=null==e?void 0:e.annotations)||void 0===i?void 0:i.filter((e=>((null==e?void 0:e.annotationId)||(null==e?void 0:e.id))!==t));return n&&0!==n.length?{...e,annotations:n,occurrences:n.length}:null})))||void 0===n?void 0:n.filter((t=>null!==t)))&&void 0!==o?o:[],l=null!==(s=null===(r=null==e?void 0:e.annotations)||void 0===r?void 0:r.filter((e=>((null==e?void 0:e.annotationId)||(null==e?void 0:e.id))!==t)))&&void 0!==s?s:[];return 0===a.length?null:{...e,warnings:a,warningCount:a.length,annotations:l}})))||void 0===i?void 0:i.filter((t=>null!==t)))&&void 0!==n?n:[];this.agentGroups=r;const s=r.reduce(((t,e)=>t+e.warningCount),0);this.contentWarningsCount=s,this.hasContentWarnings=s>0}catch(t){console.warn("Error in removeAnnotationFromWarnings: ",t)}},this.setSuggestionButtonsLoading=(t,e,i)=>{try{const n=i||document.querySelector(".velt-comment-dialog.selected");if(!n)return;const o=n.querySelector(".sf-accept-btn"),r=n.querySelector(".sf-reject-btn");if(e){const e="accept"===t?o:r,i="accept"===t?r:o;null==e||e.classList.add("sf-btn-loading"),null==i||i.classList.add("sf-btn-disabled")}else null==o||o.classList.remove("sf-btn-loading","sf-btn-disabled"),null==r||r.classList.remove("sf-btn-loading","sf-btn-disabled")}catch(t){console.warn("Error in setSuggestionButtonsLoading: ",t)}},this.handleAcceptSuggestion=async t=>{var e,i,n;try{const o=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id);if(!o)return void console.warn("[CWS Toolbar] handleAcceptSuggestion: No annotationId found",t);if(this.processingAnnotationIds.has(o))return;const r=(null===(e=this.snippylyUser)||void 0===e?void 0:e.userId)||(null===(i=this.snippylyUser)||void 0===i?void 0:i.uid),s=(null===(n=this.snippylyUser)||void 0===n?void 0:n.email)||"";if(!r)return void console.warn("[CWS Toolbar] handleAcceptSuggestion: No user available");if(!this.documentId)return void console.warn("[CWS Toolbar] handleAcceptSuggestion: No documentId available");this.processingAnnotationIds.add(o);const a=document.querySelector(".velt-comment-dialog.selected");this.setSuggestionButtonsLoading("accept",!0,a);try{await Jc(this.apiKey,this.apiKey,this.documentId+"",o,{userId:r,email:s}),this.removeAnnotationFromWarnings(o)}finally{this.processingAnnotationIds.delete(o),this.setSuggestionButtonsLoading("accept",!1,a)}}catch(t){console.warn("Error in handleAcceptSuggestion: ",t),Nc("Error in handleAcceptSuggestion: ",t)}},this.handleDeclineSuggestion=async t=>{try{const e=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id);if(!e)return void console.warn("[CWS Toolbar] handleDeclineSuggestion: No annotationId found",t);if(this.processingAnnotationIds.has(e))return;if(!this.documentId)return void console.warn("[CWS Toolbar] handleDeclineSuggestion: No documentId available");this.processingAnnotationIds.add(e);const i=document.querySelector(".velt-comment-dialog.selected");this.setSuggestionButtonsLoading("reject",!0,i);try{await qc(this.apiKey,this.apiKey,this.documentId+"",e),this.removeAnnotationFromWarnings(e)}finally{this.processingAnnotationIds.delete(e),this.setSuggestionButtonsLoading("reject",!1,i)}}catch(t){console.warn("Error in handleDeclineSuggestion: ",t),Nc("Error in handleDeclineSuggestion: ",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),Nc("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?L`
|
|
4628
|
+
`}catch(t){return console.warn("Error in getWordMark: ",t),L``}},this.generateLocation=()=>{try{if(this.autoLocation){const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete(wt),e.searchParams.delete(yt),e.searchParams.delete(bt),e.searchParams.delete(Ct),e.searchParams.delete(It),e.searchParams.delete(Nt);const i=t.get(_t)||this.projectVersion;this.queryParamsComments||(e.search="");let o=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),Ac("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),Ac("Error in generateLocation: ",t)}},this.setLocation=t=>{var e,i,o,n;try{if(this.autoLocation&&window.Velt&&(null===Velt||void 0===Velt?void 0:Velt.setLocation)){if(this.version?(this.location||(this.location={}),this.location.version=this.version):this.location&&delete this.location.version,!(null==t?void 0:t.forceSetLocation)&&this.previousLocation&&(null===(e=this.previousLocation)||void 0===e?void 0:e.url)===(null===(i=this.location)||void 0===i?void 0:i.url)&&(null===(o=this.previousLocation)||void 0===o?void 0:o.version)===(null===(n=this.location)||void 0===n?void 0:n.version))return;const s=(t=>{try{const e=cc(t);return lc(JSON.stringify(e))}catch(t){return}})(JSON.parse(JSON.stringify(this.location)));if(s?this.location.id=`${s}`:delete this.location.id,this.usePageTitleAsLocationName){const t=document.title;t&&(this.location.locationName=t)}null===Velt||void 0===Velt||Velt.setLocation(JSON.parse(JSON.stringify(this.location))),_c({clientLocation:this.location}),this.previousLocation=JSON.parse(JSON.stringify(this.location)),this.onVeltLocationChange()}}catch(t){console.warn("Error in setLocation: ",t),Ac("Error in setLocation: ",t)}},this.onVeltLocationChange=()=>{try{window.dispatchEvent(new CustomEvent("veltLocationChange",{detail:this.location}))}catch(t){console.warn("Error in onVeltLocationChange: ",t),Ac("Error in onVeltLocationChange: ",t)}},this.identifySnippyly=async()=>{var t,e;let i="",o="";try{this.invalidApiKey=!1;let e,n={name:"Default User",email:"default@usesuperflow.com",userId:"default",isAnonymous:!0,organizationId:this.apiKey};e=this.customLoginEnabled&&this.providedUser?this.providedUser:wc();const s=await this.getSamlConfig(),r=new URL(document.location);if(r.searchParams.has(Et)&&r.searchParams.delete(Et),s&&(this.signInUrl=`${ce}saml/${s.slug}/login?redirect_url=${encodeURIComponent(null==r?void 0:r.toString())}&source=sf`,window.Superflow.signInUrl=this.signInUrl),(null==e?void 0:e.email)&&(n=e),n.isAnonymous)delete n.groupId;else{const t=Velt.getDocumentId()||this.serverDocumentId;t&&(n.groupId=t+"")}if(this.customLoginEnabledLocally||(null===(t=null==n?void 0:n.contacts)||void 0===t?void 0:t.length)&&(n.contacts=[]),i=null==n?void 0:n.email,o=null==n?void 0:n.userId,(null==n?void 0:n.isAnonymous)&&this.projectId&&this.guestMode){const t=bc(!0,this.apiKey);t&&(n=JSON.parse(JSON.stringify(t)))}(null==n?void 0:n.isAnonymous)||(this.loading=!0);const a={};(null==n?void 0:n.groupId)&&(a.groupId=null==n?void 0:n.groupId),n.organizationId=this.apiKey;const l=await Dc(this.apiKey,this.projectId||"",null==n?void 0:n.email,null==n?void 0:n.userId),c=null==l?void 0:l.isAdmin;if(this.snippylyUserRole=c?"Admin":"Commenter",c&&(a.isAdmin=c,c&&this.allFeatureDisabled&&(this.allFeatureDisabled=!1)),this.restoreContentWarningSidebarState(),(null==n?void 0:n.userId)&&!(null==n?void 0:n.isGuest)&&!(null==n?void 0:n.isAnonymous)&&this.documentId)try{await Kc(this.apiKey,this.documentId,n.userId,n.name,n.email)}catch(t){Ac("checkDocumentUserAndCreateError",t)}const[d]=await Promise.all([Velt.setVeltAuthProvider({user:n,options:{throwError:!0},retryConfig:{retryCount:3,retryDelay:1e3},generateToken:async()=>await Uc(this.apiKey,null==n?void 0:n.userId,a),onError:t=>{console.log("Error signing to velt - ",t),this.invalidApiKey=!0}}),this.fetchAndApplyFeatureAccess()]);if(this.hasAgentAccess&&this.insertShadowDOM(),this.invalidApiKey)throw"Invalid Api Key - Domain Not Whitelisted";Ic(JSON.parse(JSON.stringify(d||{}))),(null==n?void 0:n.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(n)));const h=JSON.parse(JSON.stringify(d||{}));if((null==h?void 0:h.userSnippylyId)&&!(null==h?void 0:h.isGuest)&&this.checkToMigrateGuestUser(h),Velt.getUserRole$().subscribe((t=>{var e;t&&(this.loading=!1,null===(e=this.commentElement)||void 0===e||e.enablePriority())})),this.contactListSubscription=Velt.getContactElement().getContactList().subscribe((t=>{var e;this.loading=!1,(null===(e=null==t?void 0:t.organizationUsers)||void 0===e?void 0:e.length)>0&&(this.checkPrivateCommentModeFromStorage(),this.contactListSubscription&&(this.contactListSubscription.unsubscribe(),this.contactListSubscription=null))})),(null===Velt||void 0===Velt?void 0:Velt.isPlanExpired$)&&(null===Velt||void 0===Velt||Velt.isPlanExpired$().subscribe((t=>{this.isPlanExpired=t}),(t=>{this.isPlanExpired=!1,console.warn("Error in isPlanExpired$: ",t),Ac("Error in isPlanExpired$: ",t)}))),null===Velt||void 0===Velt?void 0:Velt.on){let t;null===Velt||void 0===Velt||Velt.on("initUpdate").subscribe((e=>{"setDocumentsSuccess"===e.event&&(t&&(t.unsubscribe(),t=null),t=null===Velt||void 0===Velt?void 0:Velt.getDocumentMetadata().subscribe((async t=>{if(t){const e=await Vc(this.apiKey,null==t?void 0:t.clientDocumentId);this.setProjectConfigVariables(e)}}),(t=>{console.warn("Error in getDocumentMetadata: ",t),Ac("Error in getDocumentMetadata: ",t)})))}))}_c({clientUserId:null==n?void 0:n.userId});try{Nc(n)}catch(t){console.warn("Error in trackIdentifyEvent: ",t)}this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{pc(Ot)||(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,Oc(pt.Events.DOMAIN_NOT_WHITELISTED),this.projectId&&$c(this.apiKey,this.projectId);if(new URL(document.location).searchParams.has(It))this.isSigningInUserAdmin=!0;else if(pc(Lt))this.isSigningInUserAdmin="true"===pc(Lt,!0);else{const t=await Dc(this.apiKey,this.projectId||"",i,o);this.isSigningInUserAdmin=!!(null==t?void 0:t.isAdmin),uc(Lt,this.isSigningInUserAdmin+"",!0)}}console.warn("Error in identifySnippyly: ",t),Ac("Error in identifySnippyly: ",t)}},this.fetchAndApplyFeatureAccess=async()=>{var t,e;try{this.featureAccess=await Jc(this.apiKey),this.applyStorageFeatureAccess();const i=null===(t=this.featureAccess)||void 0===t?void 0:t[Zc.Agents];this.hasAgentAccess=!0===(null==i?void 0:i.hasAccess);const o=null===(e=this.featureAccess)||void 0===e?void 0:e[Zc.WorkspacePrivateComments];this.hasPrivateCommentsAccess=!0===(null==o?void 0:o.hasAccess),this.isPrivateCommentsEnabledOnWorkspace=!0===(null==o?void 0:o.isPrivateCommentsEnabled),!this.canShowPrivateCommentToggle&&this.privateCommentModeEnabled&&(this.disablePrivateCommentModeOnCommentElement(),this.privateCommentModeEnabled=!1,uc(jt,"false")),this.maybeApplyVisibilityOptionsToCommentElement()}catch(t){console.warn("Error in fetchAndApplyFeatureAccess: ",t),Ac("Error in fetchAndApplyFeatureAccess: ",t)}},this.insertShadowDOM=()=>{try{if(document.querySelector("velt-wireframe"))return;const t=document.querySelector("velt-comments");t&&t.setAttribute("shadow-dom","true");const e=document.querySelector("velt-comments-sidebar");e&&e.setAttribute("shadow-dom","true")}catch(t){console.warn("Error in insertShadowDOM: ",t),Ac("Error in insertShadowDOM: ",t)}},this.applyStorageFeatureAccess=()=>{try{if(!this.featureAccess||!this.commentElement)return;const t=this.featureAccess[Zc.Storage];(null==t?void 0:t.hasUsageExhausted)&&(this.commentElement.disableAttachments(),this.commentElement.setRecordings("none"))}catch(t){Ac("Error in applyStorageFeatureAccess: ",t)}},this.checkToMigrateGuestUser=async t=>{try{const e=bc(!1,this.apiKey);e&&(await zc(this.apiKey,this.projectId||"",e,t,!0),vc(St))}catch(t){console.warn("Error in checkToMigrationGuestUser: ",t),Ac("Error in checkToMigrationGuestUser: ",t)}},this.getComments=()=>{try{this.commentElement&&this.commentSubscription&&this.commentSubscription.unsubscribe()}catch(t){console.warn("Error in getComments: ",t),Ac("Error in getComments: ",t)}},this.handleCommentSelection=t=>{var e,i,o,n,s,r,a,l,c,d;try{if(!1===(null==t?void 0:t.selected))return void(null===(e=null===Velt||void 0===Velt?void 0:Velt.setUiState)||void 0===e||e.call(Velt,{showButtons:!1}));const h=null==t?void 0:t.annotation;if(!h||!this.isAgentAnnotation(h))return void(null===(i=null===Velt||void 0===Velt?void 0:Velt.setUiState)||void 0===i||i.call(Velt,{showButtons:!1}));const u=null===(n=null===(o=null==h?void 0:h.agent)||void 0===o?void 0:o.result)||void 0===n?void 0:n.incorrectWord,p=(null===(s=null==h?void 0:h.pageInfo)||void 0===s?void 0:s.path)||(null===(r=null==h?void 0:h.location)||void 0===r?void 0:r.path)||(null===(a=null==h?void 0:h.agent)||void 0===a?void 0:a.path);if(!u||!p)return void(null===(l=null===Velt||void 0===Velt?void 0:Velt.setUiState)||void 0===l||l.call(Velt,{showButtons:!1}));const v=this.normalizePagePath(p),g=u,f=null===(d=null===(c=null==h?void 0:h.agent)||void 0===c?void 0:c.result)||void 0===d?void 0:d.type;let m,w="";"grammar"===f?(m=this.grammarSuggestionPagePathMap,w="grammar"):(m=this.spellingSuggestionPagePathMap,w="spelling");const y=null==m?void 0:m.get(g);((null==y?void 0:y.get(v))||0)<=1?Velt.setUiState({showButtons:!1,warningType:w}):Velt.setUiState({showButtons:!0,warningType:w})}catch(t){console.warn("Error in handleCommentSelection: ",t),Ac("Error in handleCommentSelection: ",t)}},this.processAgentComments=t=>{var e,i,o;try{if(!(null==t?void 0:t.length))return this.hasContentWarnings=!1,this.contentWarningsCount=0,this.agentGroups=[],this.spellingSuggestionPagePathMap=new Map,void(this.grammarSuggestionPagePathMap=new Map);!this.agentNamesFetched&&this.apiKey&&this.fetchAgentNames();const n=null==t?void 0:t.filter((t=>{var e;const i=(null===(e=null==t?void 0:t.status)||void 0===e?void 0:e.type)===Qt;return this.isAgentAnnotation(t)&&!i})),s=new Map;for(const t of n){const i=this.extractAgentId((null===(e=null==t?void 0:t.agent)||void 0===e?void 0:e.agentFields)||[]);if(!i)continue;const o=s.get(i);o?o.push(t):s.set(i,[t])}const r=[],a=new Map,l=new Map;for(const[t,e]of s){const n=this.isCustomAgent((null===(o=null===(i=e[0])||void 0===i?void 0:i.agent)||void 0===o?void 0:o.agentFields)||[]),s=this.resolveAgentDisplayName(t),{warnings:c,warningCount:d}=this.buildAgentWarnings(t,e,a,l);r.push({agentId:t,agentName:s,isCustom:n,warningCount:d,warnings:c,annotations:e})}r.sort(((t,e)=>e.warningCount-t.warningCount)),this.agentGroups=r;const c=r.reduce(((t,e)=>t+e.warningCount),0);this.contentWarningsCount=c,this.hasContentWarnings=c>0,this.spellingSuggestionPagePathMap=a,this.grammarSuggestionPagePathMap=l}catch(t){console.warn("Error in processAgentComments: ",t),Ac("Error in processAgentComments: ",t)}},this.extractAgentId=t=>{try{if(!Array.isArray(t)||0===t.length)return null;for(const e of t)if(null==e?void 0:e.startsWith(te.AGENT))return e.substring(te.AGENT.length);return null}catch(t){return console.warn("Error in extractAgentId: ",t),null}},this.isCustomAgent=t=>{try{return!!Array.isArray(t)&&t.includes(te.AGENT_TYPE_CUSTOM)}catch(t){return console.warn("Error in isCustomAgent: ",t),!1}},this.resolveAgentDisplayName=t=>{var e,i;try{return null!==(i=null===(e=this.agentNameMap)||void 0===e?void 0:e.get(t))&&void 0!==i?i:"Unknown Agent"}catch(t){return console.warn("Error in resolveAgentDisplayName: ",t),"Unknown Agent"}},this.fetchAgentNames=async()=>{var t,e,i;try{this.agentNamesFetched=!0;const{getAgents:o}=await Promise.resolve().then((function(){return Qc})),n=await o(this.apiKey),s=new Map;for(const i of n){const o=null!==(t=null==i?void 0:i.id)&&void 0!==t?t:"",n=null!==(e=null==i?void 0:i.name)&&void 0!==e?e:"";o&&n&&s.set(o,n)}if(this.agentNameMap=s,(null===(i=this.agentGroups)||void 0===i?void 0:i.length)>0){const t=this.agentGroups.map((t=>({...t,agentName:this.resolveAgentDisplayName(t.agentId)})));this.agentGroups=t}}catch(t){this.agentNamesFetched=!1,console.warn("Error in fetchAgentNames: ",t)}},this.buildAgentWarnings=(t,e,i,o)=>{try{return t===ee.BROKEN_LINKS?this.buildBrokenLinkWarnings(e):t===ee.SPELL_CHECK||t===ee.GRAMMAR_CHECK?this.buildSpellCheckWarnings(e,i,o):this.buildGenericWarnings(e)}catch(t){return console.warn("Error in buildAgentWarnings: ",t),{warnings:[],warningCount:0}}},this.buildBrokenLinkWarnings=t=>{var e,i,o,n,s,r,a,l,c,d,h;try{const u=new Map;for(const p of t){const t=(null===(e=null==p?void 0:p.pageInfo)||void 0===e?void 0:e.url)||(null===(i=null==p?void 0:p.location)||void 0===i?void 0:i.url)||(null===(o=null==p?void 0:p.agent)||void 0===o?void 0:o.url)||"",v=(null===(s=null===(n=null==p?void 0:p.agent)||void 0===n?void 0:n.result)||void 0===s?void 0:s.url)||(null===(a=null===(r=null==p?void 0:p.agent)||void 0===r?void 0:r.result)||void 0===a?void 0:a.link)||t,g=(null===(c=null===(l=null==p?void 0:p.agent)||void 0===l?void 0:l.result)||void 0===c?void 0:c.statusCode)||(null===(h=null===(d=null==p?void 0:p.agent)||void 0===d?void 0:d.result)||void 0===h?void 0:h.status)||"404",f=(null==v?void 0:v.toLowerCase())||"";if(u.has(f)){const e=u.get(f);e.occurrences+=1,t&&!e.pageUrls.includes(t)&&e.pageUrls.push(t),e.annotations.push(p)}else u.set(f,{primaryText:v||"",secondaryText:String(g),occurrences:1,pageUrls:t?[t]:[],annotations:[p]})}const p=Array.from(u.values());return{warnings:p,warningCount:p.length}}catch(t){return console.warn("Error in buildBrokenLinkWarnings: ",t),{warnings:[],warningCount:0}}},this.buildSpellCheckWarnings=(t,e,i)=>{var o,n,s,r,a,l,c,d,h,u,p,v,g,f,m,w,y,b,C;try{const x=new Map;for(const E of t){const t=(null===(o=null==E?void 0:E.pageInfo)||void 0===o?void 0:o.url)||(null===(n=null==E?void 0:E.location)||void 0===n?void 0:n.url)||(null===(s=null==E?void 0:E.agent)||void 0===s?void 0:s.url)||"",k=(null===(r=null==E?void 0:E.pageInfo)||void 0===r?void 0:r.path)||(null===(a=null==E?void 0:E.location)||void 0===a?void 0:a.path)||(null===(l=null==E?void 0:E.agent)||void 0===l?void 0:l.path)||"",S=this.normalizePagePath(k),M=null!==(d=null!==(c=null==E?void 0:E.comments)&&void 0!==c?c:null==E?void 0:E.commentData)&&void 0!==d?d:[],T=null!==(p=null===(u=null===(h=null==M?void 0:M[0])||void 0===h?void 0:h.commentText)||void 0===u?void 0:u.trim())&&void 0!==p?p:"",_=(null===(g=null===(v=null==E?void 0:E.agent)||void 0===v?void 0:v.result)||void 0===g?void 0:g.incorrectWord)||(null===(f=null==E?void 0:E.targetElement)||void 0===f?void 0:f.targetText)||T||"",I=(null===(w=null===(m=null==E?void 0:E.agent)||void 0===m?void 0:m.result)||void 0===w?void 0:w.suggestions)||[],N=Array.isArray(I)?I[0]||"":I||"",A=null===(b=null===(y=null==E?void 0:E.agent)||void 0===y?void 0:y.result)||void 0===b?void 0:b.type,O=_||"";_||console.warn("[CWS] Spell check annotation missing incorrectWord. agent.result:",null===(C=null==E?void 0:E.agent)||void 0===C?void 0:C.result,"targetElement:",null==E?void 0:E.targetElement,"comments:",M);const L="grammar"===A?i:e;L.has(O)||L.set(O,new Map);const $=L.get(O),D=$.get(S)||0;if($.set(S,D+1),x.has(O)){const e=x.get(O);e.occurrences+=1,t&&!e.pageUrls.includes(t)&&e.pageUrls.push(t),e.annotations.push(E)}else x.set(O,{primaryText:_||"",secondaryText:N||"",occurrences:1,pageUrls:t?[t]:[],annotations:[E]})}const E=Array.from(x.values());return{warnings:E,warningCount:E.length}}catch(t){return console.warn("Error in buildSpellCheckWarnings: ",t),{warnings:[],warningCount:0}}},this.buildGenericWarnings=t=>{var e,i,o,n,s,r,a,l,c,d,h,u,p,v,g,f,m,w,y,b;try{const C=new Map;for(const x of t){const t=(null===(e=null==x?void 0:x.pageInfo)||void 0===e?void 0:e.url)||(null===(i=null==x?void 0:x.location)||void 0===i?void 0:i.url)||(null===(o=null==x?void 0:x.agent)||void 0===o?void 0:o.url)||"",E=null!==(s=null!==(n=null==x?void 0:x.comments)&&void 0!==n?n:null==x?void 0:x.commentData)&&void 0!==s?s:[],k=null==E?void 0:E[0],S=null!==(p=null!==(d=null!==(a=null===(r=null==k?void 0:k.commentText)||void 0===r?void 0:r.trim())&&void 0!==a?a:null===(c=null===(l=null==x?void 0:x.agent)||void 0===l?void 0:l.result)||void 0===c?void 0:c.incorrectWord)&&void 0!==d?d:null===(u=null===(h=null==x?void 0:x.targetElement)||void 0===h?void 0:h.targetText)||void 0===u?void 0:u.trim())&&void 0!==p?p:"",M=null!==(b=null!==(m=null===(f=null===(g=null===(v=null==x?void 0:x.agent)||void 0===v?void 0:v.result)||void 0===g?void 0:g.suggestions)||void 0===f?void 0:f[0])&&void 0!==m?m:null===(y=null===(w=null==x?void 0:x.agent)||void 0===w?void 0:w.result)||void 0===y?void 0:y.suggestion)&&void 0!==b?b:"",T=S||(null==x?void 0:x.annotationId)||(null==x?void 0:x.id)||"";if(C.has(T)){const e=C.get(T);e.occurrences+=1,t&&!e.pageUrls.includes(t)&&e.pageUrls.push(t),e.annotations.push(x)}else C.set(T,{primaryText:S||"No text",secondaryText:M||"",occurrences:1,pageUrls:t?[t]:[],annotations:[x]})}const x=Array.from(C.values());return{warnings:x,warningCount:x.length}}catch(t){return console.warn("Error in buildGenericWarnings: ",t),{warnings:[],warningCount:0}}},this.normalizePagePath=t=>{try{return t?(null==t?void 0:t.startsWith("/"))?t.substring(1):t:""}catch(e){return console.warn("Error in normalizePagePath: ",e),t||""}},this.setQueryParamsCommentsInSdk=()=>{var t,e,i,o,n;try{const s="true"===sessionStorage.getItem("debugQueryParamsComments");s&&console.log("setQueryParamsCommentsInSdk commentElement",this.commentElement),this.commentElement&&(s&&console.log("setQueryParamsCommentsInSdk queryParamsComments",this.queryParamsComments),this.queryParamsComments&&(null===(t=this.commentElement)||void 0===t?void 0:t.enableQueryParamsComments)?(s&&console.log("enableQueryParamsComments this.commentElement?.enableQueryParamsComments",null===(e=this.commentElement)||void 0===e?void 0:e.enableQueryParamsComments),null===(i=this.commentElement)||void 0===i||i.enableQueryParamsComments()):!this.queryParamsComments&&(null===(o=this.commentElement)||void 0===o?void 0:o.disableQueryParamsComments)&&(s&&console.log("disableQueryParamsComments"),null===(n=this.commentElement)||void 0===n||n.disableQueryParamsComments()))}catch(t){console.warn("Error in setQueryParamsCommentsInSdk: ",t),Ac("Error in setQueryParamsCommentsInSdk: ",t)}},this.checkGlobalUserContact=()=>{try{this.contactElement&&this.contactElement.isUserGlobalContact().subscribe((t=>{this.isUserGlobalContact=t}))}catch(t){console.warn("Error in checkGlobalUserContact: ",t),Ac("Error in checkGlobalUserContact: ",t)}},this.setProjectConfigVariables=t=>{var e,i,o,n;try{const s="Admin"===this.snippylyUserRole;this.allFeatureDisabled=!s&&(null!==(e=null==t?void 0:t.disabled)&&void 0!==e&&e),this.allFeatureRestricted=null!==(i=null==t?void 0:t.restricted)&&void 0!==i&&i,this.guestMode=null!==(o=null==t?void 0:t.guestMode)&&void 0!==o&&o,this.allowGuestModeSignIn=!!(null===(n=null==t?void 0:t.guestModeConfig)||void 0===n?void 0:n.allowSignIn),(null==t?void 0:t.guestModeConfig)||(this.allowGuestModeSignIn=!0),this.guestMode&&Oc(pt.Events.GUEST_MODE_PRESENT),this.passwordProtected=!1,this.queryParamsComments=!!(null==t?void 0:t.queryParamsComments),this.usePageTitleAsLocationName=!!(null==t?void 0:t.usePageTitleAsLocationName),Velt&&(t&&this.passwordProtected&&!this.isPasswordValid?Velt.disableFeatures(["area","arrow","audioHuddle","cursor","huddle","liveStateSync","presence","tag","recorder","comment"]):Velt.disableFeatures([])),uc($t,this.guestMode+"",!0),uc(Ut,this.allowGuestModeSignIn+"",!0),uc(Dt,this.passwordProtected+"",!0),uc(Vt,this.queryParamsComments+"",!0),uc(Ft,this.usePageTitleAsLocationName+"",!0)}catch(t){console.warn("Error in setProjectConfigVariables: ",t),Ac("Error in setProjectConfigVariables: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded,this.expanded?Oc(pt.Events.TOOLBAR_EXPANDED):Oc(pt.Events.TOOLBAR_COLLAPSED)}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),Ac("Error in toggleSnippylyPluginToolbar: ",t)}},this.enablePrivateCommentModeOnCommentElement=()=>{try{if(!this.commentElement||"function"!=typeof this.commentElement.enablePrivateMode)return;this.commentElement.enablePrivateMode({type:Rt})}catch(t){console.warn("Error in enablePrivateCommentModeOnCommentElement: ",t),Ac("Error in enablePrivateCommentModeOnCommentElement: ",t)}},this.disablePrivateCommentModeOnCommentElement=()=>{try{if(!this.commentElement||"function"!=typeof this.commentElement.disablePrivateMode)return;this.commentElement.disablePrivateMode()}catch(t){console.warn("Error in disablePrivateCommentModeOnCommentElement: ",t),Ac("Error in disablePrivateCommentModeOnCommentElement: ",t)}},this.enableVisibilityOptionsOnCommentElement=()=>{try{if(this.visibilityOptionsEnabled)return;if(!this.commentElement||"function"!=typeof this.commentElement.enableVisibilityOptions)return;this.commentElement.enableVisibilityOptions(),this.visibilityOptionsEnabled=!0,Oc(pt.Events.VISIBILITY_OPTIONS_ENABLED)}catch(t){console.warn("Error in enableVisibilityOptionsOnCommentElement: ",t),Ac("Error in enableVisibilityOptionsOnCommentElement: ",t)}},this.disableVisibilityOptionsOnCommentElement=()=>{try{if(!this.visibilityOptionsEnabled)return;if(!this.commentElement||"function"!=typeof this.commentElement.disableVisibilityOptions)return void(this.visibilityOptionsEnabled=!1);this.commentElement.disableVisibilityOptions(),this.visibilityOptionsEnabled=!1,Oc(pt.Events.VISIBILITY_OPTIONS_DISABLED)}catch(t){console.warn("Error in disableVisibilityOptionsOnCommentElement: ",t),Ac("Error in disableVisibilityOptionsOnCommentElement: ",t)}},this.maybeApplyVisibilityOptionsToCommentElement=()=>{"Admin"===this.snippylyUserRole&&this.canShowPrivateCommentToggle?this.enableVisibilityOptionsOnCommentElement():this.disableVisibilityOptionsOnCommentElement()},this.togglePrivateCommentMode=()=>{try{this.commentElement&&(this.privateCommentModeEnabled?(this.disablePrivateCommentModeOnCommentElement(),this.privateCommentModeEnabled=!1,Oc(pt.Events.PRIVATE_MODE_DISABLED)):(this.enablePrivateCommentModeOnCommentElement(),this.privateCommentModeEnabled=!0,Oc(pt.Events.PRIVATE_MODE_ENABLED)),uc(jt,this.privateCommentModeEnabled.toString()))}catch(t){console.warn("Error in togglePrivateCommentMode: ",t),Ac("Error in togglePrivateCommentMode: ",t)}},this.checkPrivateCommentModeFromStorage=()=>{try{!this.allFeatureDisabled&&"Admin"===this.snippylyUserRole&&this.canShowPrivateCommentToggle&&pc(jt)&&(this.privateCommentModeEnabled="true"===pc(jt),this.privateCommentModeEnabled&&this.enablePrivateCommentModeOnCommentElement())}catch(t){console.warn("Error in checkPrivateCommentModeFromStorage: ",t),Ac("Error in checkPrivateCommentModeFromStorage: ",t)}},this.loginWithGoogle=()=>{try{if(Oc(pt.Events.SIGNIN_CLICKED),this.loading||this.customLoginEnabledLocally)return;const t=this.buildSignInUrlWithParams(this.signInUrl||"");window.open(t,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),Ac("Error in loginWithGoogle: ",t)}},this.buildSignInUrlWithParams=t=>{try{const e=new URL(t);return this.apiKey&&e.searchParams.set("apiKey",this.apiKey),this.projectId&&e.searchParams.set("projectId",this.projectId),e.toString()}catch(e){return console.warn("Error in buildSignInUrlWithParams: ",e),Ac("Error in buildSignInUrlWithParams: ",e),t}},this.getQRCode=async()=>{try{const t=new URL(window.location.href);null==t||t.searchParams.set("review","true");const e=null==t?void 0:t.toString();if(e){const t=fc(e,de,he),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getqrcode?text=${encodeURIComponent(t)}`),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),Ac("Error in getQRCode: ",t)}},this.toggleQRCodeVisibility=async()=>{try{Oc(pt.Events.OPEN_MOBILE_CLICKED),this.showQrCode=!this.showQrCode,this.showQrCode&&!this.qrCode&&await this.getQRCode()}catch(t){console.warn("Error in toggleQRCodeVisibility: ",t),Ac("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.openInviteModal()},this.openInviteModal=()=>{this.showInviteModal=!0,Oc(pt.Events.INVITE_MODAL_OPENED)},this.closeInviteModal=()=>{this.showInviteModal=!1},this.onInviteSuccess=()=>{this.closeInviteModal(),Oc(pt.Events.INVITE_SENT)},this.removeSnippyly=async()=>{try{Oc(pt.Events.EXIT_REVIEW_MODE_CLICKED),this.exitReviewModeCalled=!0,vc(wt),vc(yt),vc(bt),vc(Mt,"sessionStorage"),vc(Tt,"sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete(bt),e.delete(wt),e.delete(Ct),e.delete(yt),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete(_t),e.delete(It),e.delete(Nt),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),Ac("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{Oc(pt.Events.SIGNOUT_CLICKED),this.subscriptions.forEach((t=>{t&&t.unsubscribe&&(null==t||t.unsubscribe())})),this.contactListSubscription&&(this.contactListSubscription.unsubscribe(),this.contactListSubscription=null),await Velt.signOutUser(),vc(xt),vc(kt),vc(Lt),vc(jt),this.snippylyUser=void 0,window.open(this.signOutUrl,"_self")}catch(t){console.warn("Error in signOutUser: ",t),Ac("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),Ac("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),Ac("Error in copyLink: ",t)}},this.goToAdminPortal=()=>{try{let t=`${ce}`;Velt&&(null===Velt||void 0===Velt?void 0:Velt.getDocumentId)&&this.serverDocumentId&&(t=`${ce}/dashboard/project/comment/${this.apiKey}/${this.serverDocumentId}`),Oc(pt.Events.VIEW_PROJECT_CLICKED),window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),Ac("Error in goToAdminPortal: ",t)}},this.goToAdminPortalDashboard=()=>{try{let t=`${ce}`;Velt&&(null===Velt||void 0===Velt?void 0:Velt.getDocumentId)&&this.serverDocumentId&&(t=`${ce}/dashboard`),window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortalDashboard: ",t),Ac("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),Ac("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,uc(It,"true");const t=new URL(document.location);t.searchParams.delete(It),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),Ac("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,uc(Nt,"true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete(Nt),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),Ac("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(At),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),Ac("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://superflow-portal-v2-staging.firebaseapp.com/settings/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),Ac("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,uc(Ot,"true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),Ac("Error in onTourCommentTooltipClick: ",t)}},this.onGuestModeChipSignInButtonClick=()=>{try{Oc(pt.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeChipSignInButtonClick: ",t),Ac("Error in onGuestModeChipSignInButtonClick: ",t)}},this.openGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!0,Oc(pt.Events.GUEST_MODE_SIGN_IN_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeSignInModal: ",t),Ac("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),Ac("Error in closeGuestModeSignInModal: ",t)}},this.onGuestModeSignInModalSignInButtonClick=()=>{try{Oc(pt.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeSignInModalSignInButtonClick: ",t),Ac("Error in onGuestModeSignInModalSignInButtonClick: ",t)}},this.openGuestModeNameModel=t=>{try{t&&(t.stopPropagation(),t.preventDefault()),this.skipGuestNameModal||(this.showGuestModeNameModal=!0,Oc(pt.Events.GUEST_MODE_NAME_NUDGE_SHOWN))}catch(t){console.warn("Error in openGuestModeNameModel: ",t),Ac("Error in openGuestModeNameModel: ",t)}},this.closeGuestModeNameModel=()=>{try{this.showGuestModeNameModal=!1}catch(t){console.warn("Error in closeGuestModeNameModel: ",t),Ac("Error in closeGuestModeNameModel: ",t)}},this.onGuestModeNameModalSkipButtonClick=()=>{try{Oc(pt.Events.GUEST_MODE_SKIP_BUTTON_CLICKED),this.showGuestModeNameModal=!1}catch(t){console.warn("Error in onGuestModeNameModalSkipButtonClick: ",t),Ac("Error in onGuestModeNameModalSkipButtonClick: ",t)}},this.onPasswordProtectedModalCloseButtonClick=()=>{try{Oc(pt.Events.PASSWORD_PROTECTED_MODAL_CLOSE_BUTTON_CLICKED),this.showPasswordProtectedModal=!1,this.password="",this.showInvalidPassword=!1}catch(t){console.warn("Error in onPasswordProtectedModalCloseButtonClick: ",t),Ac("Error in onPasswordProtectedModalCloseButtonClick: ",t)}},this.onPasswordProtectedModalOpenButtonClick=()=>{try{Oc(pt.Events.PASSWORD_PROTECTED_MODAL_OPEN_BUTTON_CLICKED),this.showPasswordProtectedModal=!0}catch(t){console.warn("Error in onPasswordProtectedModalOpenButtonClick: ",t),Ac("Error in onPasswordProtectedModalOpenButtonClick: ",t)}},this.showGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!0,Oc(pt.Events.GUEST_MODE_SIGN_IN_NUDGE_SHOWN)}catch(t){console.warn("Error in showGuestModeSignInBanner: ",t),Ac("Error in showGuestModeSignInBanner: ",t)}},this.hideGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!1}catch(t){console.warn("Error in hideGuestModeSignInBanner: ",t),Ac("Error in hideGuestModeSignInBanner: ",t)}},this.onGuestModeBannerSignInButtonClick=()=>{try{Oc(pt.Events.GUEST_MODE_SIGN_IN_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeBannerSignInButtonClick: ",t),Ac("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=bc(!0,this.apiKey);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=fc(e,de,he);uc(St,i,!0)}catch(t){console.warn("Error in updateGuestUser: ",t),Ac("Error in updateGuestUser: ",t)}})(e),await Velt.identify(e),this.snippylyUser=JSON.parse(JSON.stringify(e)),await zc(this.apiKey,this.projectId||"",t,e),this.showGuestModeNameModal=!1,this.guestUserNameUpdated=!0,this.guestUserNameUpdateLoading=!1,uc(Bt,"true"),Oc(pt.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),Ac("Error in updateGuestUserName: ",t)}},this.submitPassword=async()=>{var t;try{if(Oc(pt.Events.REVIEW_PASSWORD_ADDED),!(null===(t=this.password)||void 0===t?void 0:t.trim()))return;if(this.validatingPasswordLoading)return;this.validatingPasswordLoading=!0,this.isPasswordValid=await Fc(this.apiKey,this.projectId,this.password),function(t,e){try{const i="object"==typeof e?JSON.stringify(e):e;localStorage.setItem(t,i)}catch(t){console.warn("Error in setLocalStorage: ",t)}}(Pt,this.isPasswordValid),this.isPasswordValid?(this.password="",this.onPasswordProtectedModalCloseButtonClick(),this.showInvalidPassword=!1,Velt&&Velt.disableFeatures([]),Oc(pt.Events.REVIEW_PASSWORD_ACCEPTED)):(this.showInvalidPassword=!0,Oc(pt.Events.REVIEW_PASSWORD_REJECTED)),this.validatingPasswordLoading=!1}catch(t){console.warn("Error in submitPassword: ",t),Ac("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 zc(this.apiKey,this.projectId||"",e,i),await Velt.updateUser(i),this.snippylyUser=JSON.parse(JSON.stringify(i));const o=wc();o.name=i.name;const n=JSON.stringify(o),s=fc(n,de,he);uc(kt,s,!0),this.guestUserNameUpdateLoading=!1,this.guestUserNameInput="",this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateUserName: ",t),Ac("Error in updateUserName: ",t)}},this.isAgentAnnotation=t=>{var e;try{const i=null!==this.extractAgentId((null===(e=null==t?void 0:t.agent)||void 0===e?void 0:e.agentFields)||[]),o=(null==t?void 0:t.type)===Xt,n=(null==t?void 0:t.commentType)===Xt;return i||o||n}catch(t){return console.warn("Error in isAgentAnnotation: ",t),!1}},this.getSidebarGroupExpansionMap=()=>{var t,e,i,o,n;try{const s=document.querySelector(ie.VELT_COMMENTS_SIDEBAR),r=null===(n=null===(o=null===(i=null===(e=null===(t=null==s?void 0:s._ngElementStrategy)||void 0===t?void 0:t.componentRef)||void 0===e?void 0:e.instance)||void 0===i?void 0:i.componentConfigSignal)||void 0===o?void 0:o.call(i))||void 0===n?void 0:n.virtualScrollData;if(!Array.isArray(r))return;const a=new Map;return r.forEach((t=>{var e,i;if("group"!==(null==t?void 0:t.type))return;const o=null===(e=null==t?void 0:t.data)||void 0===e?void 0:e.displayName,n=null===(i=null==t?void 0:t.data)||void 0===i?void 0:i.isExpanded;"string"==typeof o&&"boolean"==typeof n&&a.set(o,n)})),a}catch(t){return void console.warn("Error in getSidebarGroupExpansionMap: ",t)}},this.filterAgentCommentsFromSidebar=(t,e)=>{try{if(this.isSettingSidebarData)return;if(!t||!this.commentElement)return;const i=t.commentAnnotations;if(!Array.isArray(i))return;if(this.processAgentComments(i),this.showAgentCommentsInSidebar)return;const o=Array.isArray(null==t?void 0:t.systemFilteredAnnotations)?t.systemFilteredAnnotations:[],n=new Set(o.map((t=>(null==t?void 0:t.annotationId)||(null==t?void 0:t.id))).filter((t=>Boolean(t)))),s=[];i.forEach((t=>{if(this.isAgentAnnotation(t))return;const e=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id);e&&n.has(e)&&s.push(t)}));const r=new Map;s.forEach((t=>{var e,i,o,n;const s=(null===(e=null==t?void 0:t.pageInfo)||void 0===e?void 0:e.path)||(null===(i=null==t?void 0:t.pageInfo)||void 0===i?void 0:i.url)||(null===(o=null==t?void 0:t.location)||void 0===o?void 0:o.path)||"/";r.has(s)||r.set(s,[]),null===(n=r.get(s))||void 0===n||n.push(t)}));const a=[],l=new URL(window.location.href).pathname,c="/"+this.normalizePagePath(l);r.forEach(((t,i)=>{const o=null==e?void 0:e.get(i);a.push({groupId:i,groupName:i,isExpanded:"boolean"==typeof o?o:i===c,annotations:t})})),this.isSettingSidebarData=!0,this.commentElement.setCommentSidebarData(a,{grouping:!0}),this.isSettingSidebarData=!1}catch(t){this.isSettingSidebarData=!1,console.warn("Error in filterAgentCommentsFromSidebar: ",t),Ac("Error in filterAgentCommentsFromSidebar: ",t)}},this.setCommentSidebarVisibility=t=>{var e,i,o,n;try{if(t===this.showAgentCommentsInSidebar)return;const s=document.querySelector(ie.VELT_COMMENTS_SIDEBAR);if(!s)return;t?(s.removeAttribute(oe.SIDEBAR_BUTTON_COUNT_TYPE),s.removeAttribute(oe.CUSTOM_ACTIONS),null===(i=null===(e=this.commentElement)||void 0===e?void 0:e.disableFilterCommentsOnDom)||void 0===i||i.call(e)):(s.setAttribute(oe.SIDEBAR_BUTTON_COUNT_TYPE,ne),s.setAttribute(oe.CUSTOM_ACTIONS,"true"),null===(n=null===(o=this.commentElement)||void 0===o?void 0:o.enableFilterCommentsOnDom)||void 0===n||n.call(o)),this.showAgentCommentsInSidebar=t}catch(t){console.warn("Error in setCommentSidebarVisibility: ",t),Ac("Error in setCommentSidebarVisibility: ",t)}},this.toggleCommentSidebarVisibility=()=>{try{this.setCommentSidebarVisibility(!this.showAgentCommentsInSidebar),this.menuOpenedId=void 0}catch(t){console.warn("Error in toggleCommentSidebarVisibility: ",t),Ac("Error in toggleCommentSidebarVisibility: ",t)}},this.canUseNativeScreenshot=()=>{var t,e,i;return yd()&&!!(null===(i=null===(e=null===(t=this.customerMetadata)||void 0===t?void 0:t.superflow)||void 0===e?void 0:e.advancedFeatures)||void 0===i?void 0:i.takeScreenshotOnComments)},this.toggleNativeScreenshot=async()=>{try{if(!this.canUseNativeScreenshot())return;this.nativeScreenshotEnabled?this.disableNativeScreenshot():await this.enableNativeScreenshot(),this.menuOpenedId=void 0}catch(t){console.warn("Error in toggleNativeScreenshot: ",t),Ac("Error in toggleNativeScreenshot: ",t)}},this.enableNativeScreenshot=async()=>{var t,e;try{await this.nativeCapture.init(),this.nativeScreenshotEnabled=!0,null===(e=null===(t=this.commentElement)||void 0===t?void 0:t.disableScreenshot)||void 0===e||e.call(t)}catch(t){this.nativeScreenshotEnabled=!1,this.nativeCapture.dispose(),console.warn("Native screenshot enable failed/cancelled: ",t)}},this.disableNativeScreenshot=()=>{try{this.nativeScreenshotEnabled=!1,this.nativeCapture.dispose(),this.restoreSdkScreenshot()}catch(t){console.warn("Error in disableNativeScreenshot: ",t),Ac("Error in disableNativeScreenshot: ",t)}},this.handleNativeScreenshotStreamEnded=()=>{try{this.nativeScreenshotEnabled=!1,this.restoreSdkScreenshot(),this.requestUpdate()}catch(t){console.warn("Error in handleNativeScreenshotStreamEnded: ",t),Ac("Error in handleNativeScreenshotStreamEnded: ",t)}},this.restoreSdkScreenshot=()=>{var t,e,i,o,n;(null===(i=null===(e=null===(t=this.customerMetadata)||void 0===t?void 0:t.superflow)||void 0===e?void 0:e.advancedFeatures)||void 0===i?void 0:i.takeScreenshotOnComments)&&(null===(n=null===(o=this.commentElement)||void 0===o?void 0:o.enableScreenshot)||void 0===n||n.call(o))},this.onAddCommentAnnotation=t=>{var e,i,o,n,s;try{if(!this.nativeScreenshotEnabled)return;console.log("New Comment ",t);const r=null!==(e=null==t?void 0:t.annotationId)&&void 0!==e?e:null===(i=null==t?void 0:t.commentAnnotation)||void 0===i?void 0:i.annotationId,a=null===(s=null===(n=null===(o=null==t?void 0:t.commentAnnotation)||void 0===o?void 0:o.comments)||void 0===n?void 0:n[0])||void 0===s?void 0:s.commentId;if(!r||!a)return;console.log("New Comment ","AnnotationId",r,"CommentId",a),this.captureAndAttachScreenshot(r,a)}catch(t){console.warn("Error in onAddCommentAnnotation: ",t),Ac("Error in onAddCommentAnnotation: ",t)}},this.captureAndAttachScreenshot=async(t,e)=>{var i,o,n,s;if(!this.capturingScreenshot&&this.nativeCapture.isActive()){this.capturingScreenshot=!0;try{const r=await this.nativeCapture.capture();console.log("Result",r);const a="image/webp"===r.blobType?"webp":"png",l=new File([r.blob],`screenshot-${t}.${a}`,{type:r.blobType}),c=await(null===(o=null===(i=this.commentElement)||void 0===i?void 0:i.addAttachment)||void 0===o?void 0:o.call(i,{annotationId:t,commentId:e,files:[l]}));if(c&&Array.isArray(c)&&c.length>0&&(null===(n=c[0])||void 0===n?void 0:n.valid)){const i=null===(s=c[0])||void 0===s?void 0:s.attachment;await this.commentElement.updateComment({annotationId:t,comment:{commentId:e,attachments:[i]},merge:!0})}else console.warn("Invalid screenshot file")}catch(t){console.warn("Native screenshot capture/attach failed: ",t),Ac("Native screenshot capture/attach failed: ",t)}finally{this.capturingScreenshot=!1}}},this.setupSidebarAgentCommentFilter=()=>{try{if(!this.commentElement)return;"function"==typeof this.commentElement.on&&(this.commentElement.on("commentSidebarDataInit").subscribe((t=>{this.filterAgentCommentsFromSidebar(t)})),this.commentElement.on("commentSidebarDataUpdate").subscribe((t=>{const e=this.getSidebarGroupExpansionMap();this.filterAgentCommentsFromSidebar(t,e)}))),this.setupAgentWarningsHydration()}catch(t){console.warn("Error in setupSidebarAgentCommentFilter: ",t),Ac("Error in setupSidebarAgentCommentFilter: ",t)}},this.setupAgentWarningsHydration=()=>{try{if(!this.commentElement||"function"!=typeof this.commentElement.getAllCommentAnnotations||!this.documentId)return;const t=this.commentElement.getAllCommentAnnotations(this.documentId+"");if(!t||"function"!=typeof t.subscribe)return;const e=t.subscribe((t=>{try{if(!this.showAgentCommentsInSidebar)return;this.processAgentComments(Array.isArray(t)?t:[])}catch(t){console.warn("Error in agent-warnings hydration subscription: ",t),Ac("Error in agent-warnings hydration subscription: ",t)}}));this.subscriptions.push(e)}catch(t){console.warn("Error in setupAgentWarningsHydration: ",t),Ac("Error in setupAgentWarningsHydration: ",t)}},this.getContentWarningsDisplayCount=()=>{try{return this.contentWarningsCount>99?"99+":`${this.contentWarningsCount}`}catch(t){return console.warn("Error in getContentWarningsDisplayCount: ",t),"0"}},this.onContentWarningsButtonClick=()=>{try{this.showContentWarningSidebar=!this.showContentWarningSidebar}catch(t){console.warn("Error in onContentWarningsButtonClick: ",t),Ac("Error in onContentWarningsButtonClick: ",t)}},this.onContentWarningSidebarClose=()=>{try{this.showContentWarningSidebar=!1}catch(t){console.warn("Error in onContentWarningSidebarClose: ",t)}},this.restoreContentWarningSidebarState=()=>{try{const t="true"===pc(Gt,!1,"sessionStorage"),e=new URL(window.location.href).searchParams.has(Ct);if(!t)return;if(!e)return;if(this.allFeatureDisabled||"Admin"!==this.snippylyUserRole)return;this.showContentWarningSidebar=!0}catch(t){console.warn("Error in restoreContentWarningSidebarState: ",t),Ac("Error in restoreContentWarningSidebarState: ",t)}},this.navigateTo=t=>{try{window.location.href=t}catch(t){console.warn("Error in navigateTo: ",t),Ac("Error in navigateTo: ",t)}},this.onContentWarningSidebarAddAll=()=>{},this.onContentWarningItemClick=t=>{var e,i,o;try{const n=null===(e=null==t?void 0:t.detail)||void 0===e?void 0:e.annotation;if(!(null==n?void 0:n.annotationId)&&!(null==n?void 0:n.id))return;const s=(null==n?void 0:n.annotationId)||(null==n?void 0:n.id),r=null===(i=null==n?void 0:n.pageInfo)||void 0===i?void 0:i.url;if(r&&!this.isCurrentPageUrl(r)){const t=new URL(r);return t.searchParams.set(Ct,s),this.showContentWarningSidebar&&uc(Gt,"true",!1,"sessionStorage"),void this.navigateTo(t.toString())}(null===(o=this.commentElement)||void 0===o?void 0:o.selectCommentByAnnotationId)&&this.commentElement.selectCommentByAnnotationId(s),setTimeout((()=>{var t;(null===(t=this.commentElement)||void 0===t?void 0:t.scrollToCommentByAnnotationId)&&this.commentElement.scrollToCommentByAnnotationId(s)}),150)}catch(t){console.warn("Error in onContentWarningItemClick: ",t),Ac("Error in onContentWarningItemClick: ",t)}},this.isCurrentPageUrl=t=>{try{const e=new URL(t).pathname;return e===window.location.pathname}catch{return!1}},this.setupVeltButtonClickListener=()=>{try{if(!(null===Velt||void 0===Velt?void 0:Velt.on))return void console.warn("[CWS Toolbar] Velt.on not available for button click listener");Velt.on("veltButtonClick").subscribe((t=>{var e;try{if(!t)return;const i=null===(e=null==t?void 0:t.buttonContext)||void 0===e?void 0:e.clickedButtonId,o=null==t?void 0:t.commentAnnotation,n=(null==o?void 0:o.annotationId)||(null==o?void 0:o.id);if(("accept-suggestion"===i||"reject-suggestion"===i)&&n&&this.processingAnnotationIds.has(n))return;"prev-suggestion"===i?this.navigateSuggestion(o,"prev"):"next-suggestion"===i?this.navigateSuggestion(o,"next"):"accept-suggestion"===i?this.handleAcceptSuggestion(o):"reject-suggestion"===i&&this.handleDeclineSuggestion(o)}catch(t){console.warn("Error in veltButtonClick handler: ",t)}})),this.commentElement.onCommentSelectionChange().subscribe((t=>{this.handleCommentSelection(t)}))}catch(t){console.warn("Error in setupVeltButtonClickListener: ",t),Ac("Error in setupVeltButtonClickListener: ",t)}},this.navigateSuggestion=(t,e)=>{var i,o,n,s,r;try{if(!t)return void console.warn("[CWS Toolbar] No annotation provided for navigation");const a=null===(o=null===(i=null==t?void 0:t.agent)||void 0===i?void 0:i.result)||void 0===o?void 0:o.incorrectWord;if(!a)return void console.warn("[CWS Toolbar] No incorrectWord found on annotation");const l=this.findMatchingWarning(a);if(!l)return void console.warn("[CWS Toolbar] No matching warning found for word:",a);const c=null===(n=null==t?void 0:t.pageInfo)||void 0===n?void 0:n.path,d=this.normalizePagePath(c),h=null===(s=null==l?void 0:l.annotations)||void 0===s?void 0:s.filter((t=>{var e;const i=null===(e=null==t?void 0:t.pageInfo)||void 0===e?void 0:e.path;return this.normalizePagePath(i)===d}));if(!(null==h?void 0:h.length)||h.length<=1)return;const u=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id),p=h.findIndex((t=>((null==t?void 0:t.annotationId)||(null==t?void 0:t.id))===u));if(-1===p)return void console.warn("[CWS Toolbar] Current annotation not found in warning group");let v;v="next"===e?(p+1)%h.length:(p-1+h.length)%h.length;const g=h[v],f=(null==g?void 0:g.annotationId)||(null==g?void 0:g.id);f&&((null===(r=this.commentElement)||void 0===r?void 0:r.selectCommentByAnnotationId)&&this.commentElement.selectCommentByAnnotationId(f),setTimeout((()=>{var t;(null===(t=this.commentElement)||void 0===t?void 0:t.scrollToCommentByAnnotationId)&&this.commentElement.scrollToCommentByAnnotationId(f)}),150))}catch(t){console.warn("Error in navigateSuggestion: ",t),Ac("Error in navigateSuggestion: ",t)}},this.findMatchingWarning=t=>{var e;try{for(const i of this.agentGroups){const o=null===(e=null==i?void 0:i.warnings)||void 0===e?void 0:e.find((e=>(null==e?void 0:e.primaryText)===t));if(o)return o}return null}catch(t){return console.warn("Error in findMatchingWarning: ",t),null}},this.removeAnnotationFromWarnings=t=>{var e,i,o;try{if(!t)return;const n=e=>{var i,o,n,s;for(const r of e){const e=null===(i=null==r?void 0:r.annotations)||void 0===i?void 0:i.find((e=>((null==e?void 0:e.annotationId)||(null==e?void 0:e.id))===t));if(e){const t="grammar"===(null===(n=null===(o=null==e?void 0:e.agent)||void 0===o?void 0:o.result)||void 0===n?void 0:n.type)?this.grammarSuggestionPagePathMap:this.spellingSuggestionPagePathMap,i=(null==r?void 0:r.primaryText)||"",a=null===(s=null==e?void 0:e.pageInfo)||void 0===s?void 0:s.path,l=this.normalizePagePath(a);if(i&&l&&t.has(i)){const e=t.get(i),o=e.get(l)||0;o>1?e.set(l,o-1):(e.delete(l),0===e.size&&t.delete(i))}return}}};for(const t of this.agentGroups)(null==t?void 0:t.agentId)!==ee.SPELL_CHECK&&(null==t?void 0:t.agentId)!==ee.GRAMMAR_CHECK||n(t.warnings);const s=null!==(o=null===(i=null===(e=this.agentGroups)||void 0===e?void 0:e.map((e=>{var i,o,n,s,r;const a=null!==(n=null===(o=null===(i=null==e?void 0:e.warnings)||void 0===i?void 0:i.map((e=>{var i;const o=null===(i=null==e?void 0:e.annotations)||void 0===i?void 0:i.filter((e=>((null==e?void 0:e.annotationId)||(null==e?void 0:e.id))!==t));return o&&0!==o.length?{...e,annotations:o,occurrences:o.length}:null})))||void 0===o?void 0:o.filter((t=>null!==t)))&&void 0!==n?n:[],l=null!==(r=null===(s=null==e?void 0:e.annotations)||void 0===s?void 0:s.filter((e=>((null==e?void 0:e.annotationId)||(null==e?void 0:e.id))!==t)))&&void 0!==r?r:[];return 0===a.length?null:{...e,warnings:a,warningCount:a.length,annotations:l}})))||void 0===i?void 0:i.filter((t=>null!==t)))&&void 0!==o?o:[];this.agentGroups=s;const r=s.reduce(((t,e)=>t+e.warningCount),0);this.contentWarningsCount=r,this.hasContentWarnings=r>0}catch(t){console.warn("Error in removeAnnotationFromWarnings: ",t)}},this.setSuggestionButtonsLoading=(t,e,i)=>{try{const o=i||document.querySelector(".velt-comment-dialog.selected");if(!o)return;const n=o.querySelector(".sf-accept-btn"),s=o.querySelector(".sf-reject-btn");if(e){const e="accept"===t?n:s,i="accept"===t?s:n;null==e||e.classList.add("sf-btn-loading"),null==i||i.classList.add("sf-btn-disabled")}else null==n||n.classList.remove("sf-btn-loading","sf-btn-disabled"),null==s||s.classList.remove("sf-btn-loading","sf-btn-disabled")}catch(t){console.warn("Error in setSuggestionButtonsLoading: ",t)}},this.handleAcceptSuggestion=async t=>{var e,i,o;try{const n=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id);if(!n)return void console.warn("[CWS Toolbar] handleAcceptSuggestion: No annotationId found",t);if(this.processingAnnotationIds.has(n))return;const s=(null===(e=this.snippylyUser)||void 0===e?void 0:e.userId)||(null===(i=this.snippylyUser)||void 0===i?void 0:i.uid),r=(null===(o=this.snippylyUser)||void 0===o?void 0:o.email)||"";if(!s)return void console.warn("[CWS Toolbar] handleAcceptSuggestion: No user available");if(!this.documentId)return void console.warn("[CWS Toolbar] handleAcceptSuggestion: No documentId available");this.processingAnnotationIds.add(n);const a=document.querySelector(".velt-comment-dialog.selected");this.setSuggestionButtonsLoading("accept",!0,a);try{await Yc(this.apiKey,this.apiKey,this.documentId+"",n,{userId:s,email:r}),this.removeAnnotationFromWarnings(n)}finally{this.processingAnnotationIds.delete(n),this.setSuggestionButtonsLoading("accept",!1,a)}}catch(t){console.warn("Error in handleAcceptSuggestion: ",t),Ac("Error in handleAcceptSuggestion: ",t)}},this.handleDeclineSuggestion=async t=>{try{const e=(null==t?void 0:t.annotationId)||(null==t?void 0:t.id);if(!e)return void console.warn("[CWS Toolbar] handleDeclineSuggestion: No annotationId found",t);if(this.processingAnnotationIds.has(e))return;if(!this.documentId)return void console.warn("[CWS Toolbar] handleDeclineSuggestion: No documentId available");this.processingAnnotationIds.add(e);const i=document.querySelector(".velt-comment-dialog.selected");this.setSuggestionButtonsLoading("reject",!0,i);try{await qc(this.apiKey,this.apiKey,this.documentId+"",e),this.removeAnnotationFromWarnings(e)}finally{this.processingAnnotationIds.delete(e),this.setSuggestionButtonsLoading("reject",!1,i)}}catch(t){console.warn("Error in handleDeclineSuggestion: ",t),Ac("Error in handleDeclineSuggestion: ",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),Ac("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?L`
|
|
4591
4629
|
<div class="disable-add-comment-button" @click=${()=>this.disableCommentMode()}>
|
|
4592
4630
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
4593
4631
|
<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"/>
|
|
4594
4632
|
</svg>
|
|
4595
4633
|
</div>
|
|
4596
|
-
`:L``}catch(t){return console.warn("Error in disableAddCommentModeButton: ",t),
|
|
4634
|
+
`:L``}catch(t){return console.warn("Error in disableAddCommentModeButton: ",t),Ac("Error in disableAddCommentModeButton: ",t),L``}},this.addStyles=()=>{var t,e;try{const i=document.createElement("style");i.textContent=ed.cssText,null===(t=this.shadowRoot)||void 0===t||t.appendChild(i);const o=document.createElement("style");o.textContent=id.cssText,null===(e=this.shadowRoot)||void 0===e||e.appendChild(o)}catch(t){console.warn("Error in addStyles: ",t),Ac("Error in addStyles: ",t)}},this.checkToolbarPosition=()=>{var t;try{const e=null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector(".snippyly-plugin-container");if(!e)return;requestAnimationFrame((()=>{var t;try{const{x:i}=e.getBoundingClientRect();if(i>=0)return;const o=e.style.transform,[n,s]=(null===(t=o.match(/translate\(([-\d.]+)px,\s*([-\d.]+)px\)/))||void 0===t?void 0:t.slice(1))||[],r=parseInt(n)-i;e.style.transform=`translate(${r||0}px, ${s||0}px)`}catch(t){console.warn("Error in checkToolbarPosition Request Animation Frame",t)}}))}catch(t){console.warn("Error in checkToolbarPosition",t)}},this._dragX=0,this._dragY=0,this._isDragging=!1,this._startX=0,this._startY=0,this.toolbarMouseMove=t=>{var e;try{if(t.stopPropagation(),this._isDragging){let i,o;const n=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector(".snippyly-plugin-container");if(n){if(i=t.clientX-this._startX,o=t.clientY-this._startY,i>20||o>40)return;if(window.innerWidth-n.getBoundingClientRect().width-Math.abs(i)<32)return;if(window.innerHeight-n.getBoundingClientRect().height-Math.abs(o)<n.getBoundingClientRect().height)return;n.style.transform=`translate(${i}px, ${o}px)`}}}catch(t){console.warn("Error in toolbarMouseMove",t)}},this.toolbarMouseDown=t=>{var e;try{const i=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector(".snippyly-plugin-container");if(i){this._isDragging=!0;const e=window.getComputedStyle(i),o=new WebKitCSSMatrix(e.transform);this._startX=t.clientX-o.m41,this._startY=t.clientY-o.m42}}catch(t){console.warn("Error in toolbarMouseDown",t)}},this.toolbarMouseUp=t=>{try{t&&(this._isDragging=!1)}catch(t){console.warn("Error in toolbarMouseUp",t)}},this.toolbarMouseLeave=t=>{try{t&&(this._isDragging=!1)}catch(t){console.warn("Error in toolbarMouseLeave",t)}},localStorage.setItem("sfToolbarVersion",vt),this.guestUserNameUpdated=!!pc(Bt);const t=new URL(document.location);t.searchParams.has(Et)&&t.searchParams.delete(Et),this.signInUrl=`${ce}/signin?redirect_url=${encodeURIComponent(null==t?void 0:t.toString())}&source=sf`,this.signOutUrl=`${ce}/signout?redirect_url=${encodeURIComponent(null==t?void 0:t.toString())}&source=sf`,window.Superflow={enableCustomLogin:async()=>{this.customLoginEnabledLocally=!0,vc(kt),await this.checkCustomLoginEnabled()},identify:async t=>{this.providedUser=t,this.customLoginEnabled&&this.loginWithCustomUser()},signInUrl:this.signInUrl,signOutUrl:this.signOutUrl,openGuestModeSignInModal:t=>{this.skipGuestNameModal=t,this.openGuestModeSignInModal()},onPasswordProtectedModalOpenButtonClick:()=>{this.onPasswordProtectedModalOpenButtonClick()}};try{this.detectVersion(),this.setWindowEventListner(),this.urlChangeListener(),this.checkUrl(),this.nativeCapture.onEnded=()=>this.handleNativeScreenshotStreamEnded(),console.log("*** Staging Mode ON! ***")}catch(t){console.warn("Error in constructor: ",t),Ac("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(),_c({apiKey:this.apiKey}),this.checkUrl()}get projectId(){return this._projectId}set projectId(t){this._projectId=t,this.checkUrl()}get projectVersionKey(){return this._projectVersionKey}set projectVersionKey(t){try{this._projectVersionKey=t,this.projectVersionKey&&uc(Mt,this.projectVersionKey,!1,"sessionStorage"),this.exitReviewModeCalled||this.detectVersion()}catch(t){console.warn("Error in set projectVersionKey: ",t),Ac("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 documentMetadata(){return this._documentMetadata}set documentMetadata(t){this._documentMetadata=t}get darkMode(){return this._darkMode}set darkMode(t){this._darkMode=t,this.setLogos()}get queryParamsComments(){return this._queryParamsComments}set queryParamsComments(t){this._queryParamsComments=t,this.setQueryParamsCommentsInSdk()}get usePageTitleAsLocationName(){return this._usePageTitleAsLocationName}set usePageTitleAsLocationName(t){this._usePageTitleAsLocationName=t}get totalViews(){return this._totalViews}set totalViews(t){this._totalViews=t,this.totalViewsCount=Object.keys(this.totalViews||{}).length}connectedCallback(){super.connectedCallback(),this.getAttribute("apiKey")&&!this.getAttribute("projectId")&&(this.projectId=lc(dc(window.location.origin))+""),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='\n body[data-velt-ongoing-recording="screen"] superflow-toolbar { display: none !important; }\n ',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."),Oc(pt.Events.DUPLICATE_SCRIPT_INSTALLED))}),1e3)}updated(t){try{if(super.updated(t),t.has("showContentWarningSidebar")){this.setCommentSidebarVisibility(this.showContentWarningSidebar);const e=t.get("showContentWarningSidebar");this.showContentWarningSidebar?uc(Gt,"true",!1,"sessionStorage"):!0===e&&vc(Gt,"sessionStorage")}}catch(t){console.warn("Error in updated: ",t)}}disconnectedCallback(){var t,e;try{super.disconnectedCallback(),this.nativeCapture.dispose(),null===(e=null===(t=this.addCommentAnnotationSubscription)||void 0===t?void 0:t.unsubscribe)||void 0===e||e.call(t),this.addCommentAnnotationSubscription=void 0}catch(t){console.warn("Error in disconnectedCallback: ",t)}}async detectToolbarEnabled(){try{if(this.projectId&&this.apiKey){this.toolbarEnabledApiCalled=!0;const t=document.location.toString();t.includes(qt)||t.includes(Zt)||t.includes(Jt)||t.includes(Yt)?this.toolbarEnabled=!0:this.toolbarEnabled=await Pc(this.apiKey,this.projectId,t),this.toolbarEnabled||Oc(pt.Events.TOOLBAR_DISABLED)}}catch(t){console.warn("Error in detectToolbarEnabled: ",t),Ac("Error in detectToolbarEnabled: ",t)}}get canShowPrivateCommentToggle(){return this.hasPrivateCommentsAccess&&this.isPrivateCommentsEnabledOnWorkspace}render(){var t,e,i,o,n,s,r,a,l,c,d,h,u,p,v,g,f,m,w,y;return this.loadPlugin&&this.toolbarEnabled?!this.snippylyUser||this.loading||null===this.isPlanExpired?L`
|
|
4597
4635
|
<div class="snippyly-plugin-container" part="superflow-toolbar-container">
|
|
4598
4636
|
<div class="toolbar" id="smallToolbar"
|
|
4599
4637
|
style="cursor: default; top: ${this._dragY}px; left: ${this._dragX}px;">
|
|
@@ -4824,6 +4862,10 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4824
4862
|
`:L`
|
|
4825
4863
|
<div class="snippyly-plugin-container" part="superflow-toolbar-container">
|
|
4826
4864
|
${this.disableCommentModeButton()}
|
|
4865
|
+
${this.capturingScreenshot?L`<div class="sf-screenshot-capturing-banner">
|
|
4866
|
+
<span class="sf-screenshot-capturing-spinner"></span>
|
|
4867
|
+
${td("Capturing screenshot…")}
|
|
4868
|
+
</div>`:null}
|
|
4827
4869
|
<div class="toolbar ${dt({expanded:this.expanded,"add-comment-mode":this.addCommentMode,"private-comment-mode":!!this.privateCommentModeEnabled})}" @resize=${this.checkToolbarPosition()}
|
|
4828
4870
|
@mousemove=${t=>this.toolbarMouseMove(t)}
|
|
4829
4871
|
@mousedown=${t=>this.toolbarMouseDown(t)}
|
|
@@ -4840,7 +4882,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
4840
4882
|
</div>
|
|
4841
4883
|
|
|
4842
4884
|
${!(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?L`
|
|
4843
|
-
<div class="toolbar-section snippyly-logo ${dt({"d-xs-none":this.expanded,"d-none":this.addCommentMode})}" @click=${()=>{
|
|
4885
|
+
<div class="toolbar-section snippyly-logo ${dt({"d-xs-none":this.expanded,"d-none":this.addCommentMode})}" @click=${()=>{Oc(pt.Events.TOOLBAR_NOTIFICATION_CLICKED),this.openGuestModeNameModel()}}>
|
|
4844
4886
|
|
|
4845
4887
|
<div class="notification-container">
|
|
4846
4888
|
<div class="notification">
|
|
@@ -5072,13 +5114,13 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5072
5114
|
</svg>
|
|
5073
5115
|
</div>
|
|
5074
5116
|
`}
|
|
5075
|
-
${(null===(
|
|
5117
|
+
${(null===(o=this.snippylyUser)||void 0===o?void 0:o.isGuest)&&this.allowGuestModeSignIn?L`
|
|
5076
5118
|
<div class="s-guest-user-sign-in-button" @click=${()=>this.loginWithGoogle()}>
|
|
5077
5119
|
<p>${td("Sign in")}</p>
|
|
5078
5120
|
</div>
|
|
5079
5121
|
`:L`
|
|
5080
5122
|
<div class="action">
|
|
5081
|
-
${(null===(
|
|
5123
|
+
${(null===(n=this.snippylyUser)||void 0===n?void 0:n.photoUrl)&&!this.avatarFetchFailed?L`<img class="toolbar-img profile-img" src=${null===(s=this.snippylyUser)||void 0===s?void 0:s.photoUrl} referrerpolicy="no-referrer" title=${null===(r=this.snippylyUser)||void 0===r?void 0:r.name} @error=${()=>this.avatarFetchFailed=!0} />`:L`<div class="profile-initial"><span>${(null===(l=null===(a=this.snippylyUser)||void 0===a?void 0:a.name)||void 0===l?void 0:l.charAt(0))||(null===(d=null===(c=this.snippylyUser)||void 0===c?void 0:c.email)||void 0===d?void 0:d.charAt(0))}</span></div>`}
|
|
5082
5124
|
</div>
|
|
5083
5125
|
`}
|
|
5084
5126
|
</div>
|
|
@@ -5149,6 +5191,17 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5149
5191
|
/>
|
|
5150
5192
|
<p>${td("Show Agent Comments in Sidebar & Page")}</p>
|
|
5151
5193
|
</div>
|
|
5194
|
+
<div class="menu-point" @click=${()=>this.toggleNativeScreenshot()}>
|
|
5195
|
+
<input
|
|
5196
|
+
type="checkbox"
|
|
5197
|
+
style="width: 18px; height: 18px;"
|
|
5198
|
+
.checked=${this.nativeScreenshotEnabled}
|
|
5199
|
+
?disabled=${!this.canUseNativeScreenshot()}
|
|
5200
|
+
@click=${t=>t.stopPropagation()}
|
|
5201
|
+
@change=${()=>this.toggleNativeScreenshot()}
|
|
5202
|
+
/>
|
|
5203
|
+
<p>${td("Use Local Screenshot")}</p>
|
|
5204
|
+
</div>
|
|
5152
5205
|
<div class="menu-point" @click=${()=>this.removeSnippyly()}>
|
|
5153
5206
|
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5154
5207
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 4C10.0478 4 8.24816 4.161 6.80371 4.35177C5.50372 4.52346 4.52346 5.50372 4.35177 6.80371C4.16101 8.24816 4 10.0478 4 12C4 13.9522 4.161 15.7518 4.35177 17.1963C4.52346 18.4963 5.50372 19.4765 6.80371 19.6482C8.24816 19.839 10.0478 20 12 20C13.9522 20 15.7518 19.839 17.1963 19.6482C18.4963 19.4765 19.4765 18.4963 19.6482 17.1963C19.839 15.7518 20 13.9522 20 12C20 10.0478 19.839 8.24816 19.6482 6.80371C19.4765 5.50372 18.4963 4.52346 17.1963 4.35177C15.7518 4.16101 13.9522 4 12 4ZM6.54184 2.36899C4.34504 2.65912 2.65912 4.34504 2.36899 6.54184C2.16953 8.05208 2 9.94127 2 12C2 14.0587 2.16953 15.9479 2.36899 17.4582C2.65912 19.655 4.34504 21.3409 6.54184 21.631C8.05208 21.8305 9.94127 22 12 22C14.0587 22 15.9479 21.8305 17.4582 21.631C19.655 21.3409 21.3409 19.655 21.631 17.4582C21.8305 15.9479 22 14.0587 22 12C22 9.94127 21.8305 8.05208 21.631 6.54184C21.3409 4.34504 19.655 2.65912 17.4582 2.36899C15.9479 2.16953 14.0587 2 12 2C9.94127 2 8.05208 2.16953 6.54184 2.36899Z" fill="#777E91"/>
|
|
@@ -5157,7 +5210,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5157
5210
|
|
|
5158
5211
|
<p>${td("Exit Review Mode")}</p>
|
|
5159
5212
|
</div>
|
|
5160
|
-
${this.customLoginEnabledLocally||(null===(
|
|
5213
|
+
${this.customLoginEnabledLocally||(null===(h=this.snippylyUser)||void 0===h?void 0:h.isGuest)?null:L`
|
|
5161
5214
|
<div class="menu-point" @click=${()=>this.signOutUser()}>
|
|
5162
5215
|
<svg width="18" height="19" viewBox="0 0 18 19" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5163
5216
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.27201 11.9903C8.68593 11.9746 9.03414 12.2975 9.04977 12.7114C9.085 13.6446 9.13447 14.3257 9.18312 14.814C9.23103 15.2949 9.52134 15.5842 9.92603 15.6337C10.4032 15.692 11.0764 15.7397 12.0001 15.7397C12.9239 15.7397 13.597 15.692 14.0742 15.6337C14.4787 15.5842 14.7692 15.2947 14.8171 14.8137C14.9074 13.9073 15.0001 12.3414 15.0001 9.73975C15.0001 7.13813 14.9074 5.57215 14.8171 4.66575C14.7692 4.18474 14.4787 3.89527 14.0742 3.84582C13.597 3.78749 12.9239 3.73974 12.0001 3.73974C11.0764 3.73974 10.4032 3.78748 9.92602 3.84582C9.52134 3.89529 9.23103 4.18463 9.18312 4.66552C9.13447 5.15383 9.085 5.8349 9.04977 6.76804C9.03414 7.18196 8.68593 7.50484 8.27201 7.48921C7.85809 7.47359 7.53521 7.12537 7.55084 6.71145C7.58699 5.75368 7.63826 5.04132 7.69051 4.51683C7.80035 3.4142 8.5691 2.50052 9.74402 2.3569C10.2909 2.29004 11.0257 2.23974 12.0001 2.23974C12.9745 2.23974 13.7093 2.29005 14.2562 2.35691C15.4312 2.50055 16.1999 3.41466 16.3097 4.51706C16.4064 5.48776 16.5001 7.1061 16.5001 9.73975C16.5001 12.3734 16.4064 13.9917 16.3097 14.9624C16.1999 16.0648 15.4313 16.9789 14.2562 17.1226C13.7093 17.1894 12.9745 17.2397 12.0001 17.2397C11.0257 17.2397 10.2909 17.1894 9.74402 17.1226C8.56911 16.979 7.80035 16.0653 7.69051 14.9627C7.63826 14.4382 7.58699 13.7258 7.55084 12.768C7.53521 12.3541 7.85809 12.0059 8.27201 11.9903Z" fill="#FF7162"/>
|
|
@@ -5244,7 +5297,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5244
5297
|
</div>
|
|
5245
5298
|
<div class="s-modal-subtitle">Tag your comments with your name!</div>
|
|
5246
5299
|
<input id="guestUserName" class="s-guest-user-name" placeholder="Your name" @input=${t=>{var e;return this.guestUserNameInput=null===(e=null==t?void 0:t.target)||void 0===e?void 0:e.value}} />
|
|
5247
|
-
<div class="s-button s-primary s-signin-button ${(null===(
|
|
5300
|
+
<div class="s-button s-primary s-signin-button ${(null===(u=this.guestUserNameInput)||void 0===u?void 0:u.trim())?"":"s-disabled"}" @click=${()=>{var t;(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)?this.updateGuestUserName():this.updateUserName()}}>
|
|
5248
5301
|
${this.guestUserNameUpdateLoading?L`
|
|
5249
5302
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid">
|
|
5250
5303
|
<g transform="rotate(0 50 50)">
|
|
@@ -5317,8 +5370,8 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5317
5370
|
<div class="s-modal-superflow-logo">
|
|
5318
5371
|
${this.getWordMark()}
|
|
5319
5372
|
</div>
|
|
5320
|
-
<div class="s-modal-title">${null===(
|
|
5321
|
-
<div class="s-modal-subtitle">${null===(
|
|
5373
|
+
<div class="s-modal-title">${null===(v=this.guestModeSignInModalConfig)||void 0===v?void 0:v.title}</div>
|
|
5374
|
+
<div class="s-modal-subtitle">${null===(g=this.guestModeSignInModalConfig)||void 0===g?void 0:g.description}</div>
|
|
5322
5375
|
<div class="s-button s-primary s-signin-button" @click=${()=>this.onGuestModeSignInModalSignInButtonClick()}>${td("Sign in")}</div>
|
|
5323
5376
|
${this.guestModeSignInModalConfig.showLeaveCommentButton?L`
|
|
5324
5377
|
<div class="s-modal-link-text" @click=${t=>{this.closeGuestModeSignInModal(),this.openGuestModeNameModel(t)}}>Leave Comment Anonymously</div>
|
|
@@ -5363,7 +5416,7 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5363
5416
|
</div>
|
|
5364
5417
|
<div class="s-modal-secondary-actions">
|
|
5365
5418
|
<input id="Enter Password" placeholder="Password" @input=${t=>{var e;return this.password=null===(e=null==t?void 0:t.target)||void 0===e?void 0:e.value}} />
|
|
5366
|
-
<div class="s-button s-primary s-modal-secondary-actions-submit ${(null===(
|
|
5419
|
+
<div class="s-button s-primary s-modal-secondary-actions-submit ${(null===(f=this.password)||void 0===f?void 0:f.trim())?"":"s-disabled"}" @click=${()=>{this.submitPassword()}}>
|
|
5367
5420
|
${this.validatingPasswordLoading?L`
|
|
5368
5421
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid">
|
|
5369
5422
|
<g transform="rotate(0 50 50)">
|
|
@@ -5459,10 +5512,10 @@ class Ql extends Rs{}Ql.Encryptor=class extends Ql{processBlock(t,e){const i=t,n
|
|
|
5459
5512
|
.apiKey=${this.apiKey}
|
|
5460
5513
|
.documentId=${this.documentId}
|
|
5461
5514
|
.hasInviteAccess=${!0}
|
|
5462
|
-
.disableInvite=${!(this.snippylyUser&&!(null===(
|
|
5515
|
+
.disableInvite=${!(this.snippylyUser&&!(null===(m=this.snippylyUser)||void 0===m?void 0:m.isGuest))}
|
|
5463
5516
|
.userSeatsExhausted=${!!(null===(y=null===(w=this.featureAccess)||void 0===w?void 0:w[Zc.WorkspaceUserSeats])||void 0===y?void 0:y.hasUsageExhausted)}
|
|
5464
5517
|
@superflow-invite-modal-close=${this.closeInviteModal}
|
|
5465
5518
|
@superflow-invite-modal-invite-success=${this.onInviteSuccess}
|
|
5466
5519
|
></superflow-invite-modal>
|
|
5467
5520
|
`:""}
|
|
5468
|
-
`:L``}}
|
|
5521
|
+
`:L``}}xd.styles=[ed,id],Cd([ot()],xd.prototype,"loadPlugin",null),Cd([ot()],xd.prototype,"comments",void 0),Cd([ot()],xd.prototype,"commentElement",void 0),Cd([ot()],xd.prototype,"contactElement",void 0),Cd([ot()],xd.prototype,"rewriterElement",void 0),Cd([ot()],xd.prototype,"presenceElement",void 0),Cd([ot()],xd.prototype,"commentSubscription",void 0),Cd([ot()],xd.prototype,"selectionElement",void 0),Cd([ot()],xd.prototype,"viewsElement",void 0),Cd([ot()],xd.prototype,"docElement",void 0),Cd([ot()],xd.prototype,"addCommentMode",void 0),Cd([ot()],xd.prototype,"showTourCommentTooltip",void 0),Cd([ot()],xd.prototype,"allFeatureDisabled",void 0),Cd([ot()],xd.prototype,"allFeatureRestricted",void 0),Cd([ot()],xd.prototype,"guestMode",void 0),Cd([ot()],xd.prototype,"_expanded",void 0),Cd([ot()],xd.prototype,"loading",void 0),Cd([ot()],xd.prototype,"signInError",void 0),Cd([ot()],xd.prototype,"snippylyUser",void 0),Cd([ot()],xd.prototype,"snippylyUserRole",void 0),Cd([ot()],xd.prototype,"_isPlanExpired",void 0),Cd([ot()],xd.prototype,"showOnboardingModal",void 0),Cd([ot()],xd.prototype,"showLiveDemoModal",void 0),Cd([ot()],xd.prototype,"showFigmaDemoModal",void 0),Cd([ot()],xd.prototype,"showGuestModeSignInModal",void 0),Cd([ot()],xd.prototype,"guestModeSignInModalConfig",void 0),Cd([ot()],xd.prototype,"showGuestModeNameModal",void 0),Cd([ot()],xd.prototype,"guestModeSignInBannerVisible",void 0),Cd([ot()],xd.prototype,"guestUserNameInput",void 0),Cd([ot()],xd.prototype,"guestUserModelOpened",void 0),Cd([ot()],xd.prototype,"guestUserNameUpdated",void 0),Cd([ot()],xd.prototype,"guestUserNameUpdateLoading",void 0),Cd([it()],xd.prototype,"apiKey",null),Cd([it()],xd.prototype,"projectId",null),Cd([ot()],xd.prototype,"staging",void 0),Cd([it()],xd.prototype,"projectVersionKey",null),Cd([ot()],xd.prototype,"projectVersion",void 0),Cd([ot()],xd.prototype,"version",void 0),Cd([it()],xd.prototype,"veltVersion",void 0),Cd([it()],xd.prototype,"autoLocation",null),Cd([ot()],xd.prototype,"_menuOpenedId",void 0),Cd([ot()],xd.prototype,"copyLinkTooltip",void 0),Cd([ot()],xd.prototype,"invalidApiKey",void 0),Cd([ot()],xd.prototype,"documentId",void 0),Cd([ot()],xd.prototype,"serverDocumentId",void 0),Cd([ot()],xd.prototype,"_isUserGlobalContact",void 0),Cd([ot()],xd.prototype,"location",void 0),Cd([ot()],xd.prototype,"qrCode",void 0),Cd([ot()],xd.prototype,"showQrCode",void 0),Cd([ot()],xd.prototype,"customLoginEnabledLocally",void 0),Cd([it()],xd.prototype,"customLoginEnabled",void 0),Cd([ot()],xd.prototype,"providedUser",void 0),Cd([ot()],xd.prototype,"autoTranslation",void 0),Cd([ot()],xd.prototype,"addCommentCount",void 0),Cd([ot()],xd.prototype,"isSigningInUserAdmin",void 0),Cd([ot()],xd.prototype,"_privateCommentModeEnabled",void 0),Cd([ot()],xd.prototype,"superflowToolbarMoved",void 0),Cd([ot()],xd.prototype,"_customerMetadata",void 0),Cd([ot()],xd.prototype,"logoMark",void 0),Cd([ot()],xd.prototype,"wordMark",void 0),Cd([ot()],xd.prototype,"_darkMode",void 0),Cd([ot()],xd.prototype,"projectConfig",void 0),Cd([ot()],xd.prototype,"allowGuestModeSignIn",void 0),Cd([ot()],xd.prototype,"_queryParamsComments",void 0),Cd([ot()],xd.prototype,"_usePageTitleAsLocationName",void 0),Cd([ot()],xd.prototype,"toolbarEnabled",void 0),Cd([ot()],xd.prototype,"toolbarEnabledApiCalled",void 0),Cd([ot()],xd.prototype,"passwordProtected",void 0),Cd([ot()],xd.prototype,"isPasswordValid",void 0),Cd([ot()],xd.prototype,"password",void 0),Cd([ot()],xd.prototype,"validatingPasswordLoading",void 0),Cd([ot()],xd.prototype,"showPasswordProtectedModal",void 0),Cd([ot()],xd.prototype,"showInvalidPassword",void 0),Cd([ot()],xd.prototype,"skipGuestNameModal",void 0),Cd([ot()],xd.prototype,"_totalViews",void 0),Cd([ot()],xd.prototype,"totalViewsCount",void 0),Cd([ot()],xd.prototype,"inviteUrl",void 0),Cd([ot()],xd.prototype,"showModalOnceCommentIsModeIsOff",void 0),Cd([ot()],xd.prototype,"showInviteModal",void 0),Cd([ot()],xd.prototype,"featureAccess",void 0),Cd([ot()],xd.prototype,"hasAgentAccess",void 0),Cd([ot()],xd.prototype,"hasPrivateCommentsAccess",void 0),Cd([ot()],xd.prototype,"isPrivateCommentsEnabledOnWorkspace",void 0),Cd([ot()],xd.prototype,"hasContentWarnings",void 0),Cd([ot()],xd.prototype,"contentWarningsCount",void 0),Cd([ot()],xd.prototype,"showContentWarningSidebar",void 0),Cd([ot()],xd.prototype,"showAgentCommentsInSidebar",void 0),Cd([ot()],xd.prototype,"nativeScreenshotEnabled",void 0),Cd([ot()],xd.prototype,"capturingScreenshot",void 0),Cd([ot()],xd.prototype,"agentGroups",void 0),Cd([ot()],xd.prototype,"spellingSuggestionPagePathMap",void 0),Cd([ot()],xd.prototype,"grammarSuggestionPagePathMap",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,veltVersion:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_VELT_VERSION}},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"),r=t.getAttribute("veltVersion");return null==t||t.remove(),{valid:!!e,type:"snippylyPlugin",apiKey:e,staging:i,projectVersionKey:o,projectId:n,autoLocation:s,veltVersion:r}},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,veltVersion:i.has("veltVersion")?i.get("veltVersion"):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),(null==i?void 0:i.veltVersion)&&(t.veltVersion=i.veltVersion),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()}))})(xd);class Ed extends Q{}customElements.get("snippyly-plugin")||customElements.define("snippyly-plugin",Ed);export{Ed as SnippylyPlugin,xd as SuperflowToolbar};
|