@snippyly/plugin-staging 1.0.275 → 1.0.277
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/snippyly.js +7 -7
- package/snippyly.min.js +21 -21
package/snippyly.min.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* Copyright 2017 Google LLC
|
|
15
15
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
16
16
|
*/
|
|
17
|
-
var g;f.finalized=!0,f.elementProperties=new Map,f.elementStyles=[],f.shadowRootOptions={mode:"open"},null==u||u({ReactiveElement:f}),(null!==(c=globalThis.reactiveElementVersions)&&void 0!==c?c:globalThis.reactiveElementVersions=[]).push("1.3.2");const w=globalThis.trustedTypes,C=w?w.createPolicy("lit-html",{createHTML:t=>t}):void 0,y=`lit$${(Math.random()+"").slice(9)}$`,b="?"+y,x=`<${b}>`,E=document,M=(t="")=>E.createComment(t),S=t=>null===t||"object"!=typeof t&&"function"!=typeof t,k=Array.isArray,N=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,_=/-->/g,I=/>/g,T=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,F=/'/g,A=/"/g,L=/^(?:script|style|textarea|title)$/i,D=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),j=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),O=new WeakMap,z=E.createTreeWalker(E,129,null,!1),U=(t,e)=>{const i=t.length-1,o=[];let n,s=2===e?"<svg>":"",r=N;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===N?"!--"===l[1]?r=_:void 0!==l[1]?r=I:void 0!==l[2]?(L.test(l[2])&&(n=RegExp("</"+l[2],"g")),r=T):void 0!==l[3]&&(r=T):r===T?">"===l[0]?(r=null!=n?n:N,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,a=l[1],r=void 0===l[3]?T:'"'===l[3]?A:F):r===A||r===F?r=T:r===_||r===I?r=N:(r=T,n=void 0);const h=r===T&&t[e+1].startsWith("/>")?" ":"";s+=r===N?i+x: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!==C?C.createHTML(a):a,o]};class V{constructor({strings:t,_$litType$:e},i){let o;this.parts=[];let n=0,s=0;const r=t.length-1,a=this.parts,[l,c]=U(t,e);if(this.el=V.createElement(l,i),z.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(o=z.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]?Z:"?"===e[1]?
|
|
17
|
+
var g;f.finalized=!0,f.elementProperties=new Map,f.elementStyles=[],f.shadowRootOptions={mode:"open"},null==u||u({ReactiveElement:f}),(null!==(c=globalThis.reactiveElementVersions)&&void 0!==c?c:globalThis.reactiveElementVersions=[]).push("1.3.2");const w=globalThis.trustedTypes,C=w?w.createPolicy("lit-html",{createHTML:t=>t}):void 0,y=`lit$${(Math.random()+"").slice(9)}$`,b="?"+y,x=`<${b}>`,E=document,M=(t="")=>E.createComment(t),S=t=>null===t||"object"!=typeof t&&"function"!=typeof t,k=Array.isArray,N=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,_=/-->/g,I=/>/g,T=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,F=/'/g,A=/"/g,L=/^(?:script|style|textarea|title)$/i,D=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),j=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),O=new WeakMap,z=E.createTreeWalker(E,129,null,!1),U=(t,e)=>{const i=t.length-1,o=[];let n,s=2===e?"<svg>":"",r=N;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===N?"!--"===l[1]?r=_:void 0!==l[1]?r=I:void 0!==l[2]?(L.test(l[2])&&(n=RegExp("</"+l[2],"g")),r=T):void 0!==l[3]&&(r=T):r===T?">"===l[0]?(r=null!=n?n:N,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,a=l[1],r=void 0===l[3]?T:'"'===l[3]?A:F):r===A||r===F?r=T:r===_||r===I?r=N:(r=T,n=void 0);const h=r===T&&t[e+1].startsWith("/>")?" ":"";s+=r===N?i+x: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!==C?C.createHTML(a):a,o]};class V{constructor({strings:t,_$litType$:e},i){let o;this.parts=[];let n=0,s=0;const r=t.length-1,a=this.parts,[l,c]=U(t,e);if(this.el=V.createElement(l,i),z.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(o=z.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]?Z:"?"===e[1]?J:"@"===e[1]?Y:P})}else a.push({type:6,index:n})}for(const e of t)o.removeAttribute(e)}if(L.test(o.tagName)){const t=o.textContent.split(y),e=t.length-1;if(e>0){o.textContent=w?w.emptyScript:"";for(let i=0;i<e;i++)o.append(t[i],M()),z.nextNode(),a.push({type:2,index:++n});o.append(t[e],M())}}}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=E.createElement("template");return i.innerHTML=t,i}}function R(t,e,i=t,o){var n,s,r,a;if(e===j)return e;let l=void 0!==o?null===(n=i._$Cl)||void 0===n?void 0:n[o]:i._$Cu;const c=S(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 B{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:E).importNode(i,!0);z.currentNode=n;let s=z.nextNode(),r=0,a=0,l=o[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new H(s,s.nextSibling,this,t):1===l.type?e=new l.ctor(s,l.name,l.strings,this,t):6===l.type&&(e=new K(s,this,t)),this.v.push(e),l=o[++a]}r!==(null==l?void 0:l.index)&&(s=z.nextNode(),r++)}return n}m(t){let e=0;for(const i of this.v)void 0!==i&&(void 0!==i.strings?(i._$AI(t,i,e),e+=i.strings.length-2):i._$AI(t[e])),e++}}class H{constructor(t,e,i,o){var n;this.type=2,this._$AH=$,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),S(t)?t===$||null==t||""===t?(this._$AH!==$&&this._$AR(),this._$AH=$):t!==this._$AH&&t!==j&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>{var e;return k(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!==$&&S(this._$AH)?this._$AA.nextSibling.data=t:this.k(E.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=V.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 B(n,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=O.get(t.strings);return void 0===e&&O.set(t.strings,e=new V(t)),e}S(t){k(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,o=0;for(const n of t)o===e.length?e.push(i=new H(this.M(M()),this.M(M()),this,this.options)):i=e[o],i._$AI(n),o++;o<e.length&&(this._$AR(i&&i._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){var i;for(null===(i=this._$AP)||void 0===i||i.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class P{constructor(t,e,i,o,n){this.type=1,this._$AH=$,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=$}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=!S(t)||t!==this._$AH&&t!==j,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===j&&(a=this._$AH[r]),s||(s=!S(a)||a!==this._$AH[r]),a===$?t=$:t!==$&&(t+=(null!=a?a:"")+n[r+1]),this._$AH[r]=a}s&&!o&&this.C(t)}C(t){t===$?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Z extends P{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===$?void 0:t}}const G=w?w.emptyScript:"";class J extends P{constructor(){super(...arguments),this.type=4}C(t){t&&t!==$?this.element.setAttribute(this.name,G):this.element.removeAttribute(this.name)}}class Y extends P{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:$)===j)return;const o=this._$AH,n=t===$&&o!==$||t.capture!==o.capture||t.once!==o.once||t.passive!==o.passive,s=t!==$&&(o===$||n);n&&this.element.removeEventListener(this.name,this,o),s&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,i;"function"==typeof this._$AH?this._$AH.call(null!==(i=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==i?i:this.element,t):this._$AH.handleEvent(t)}}class K{constructor(t,e,i){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=i}get _$AU(){return this._$AM._$AU}_$AI(t){R(this,t)}}const W=window.litHtmlPolyfillSupport;
|
|
18
18
|
/**
|
|
19
19
|
* @license
|
|
20
20
|
* Copyright 2017 Google LLC
|
|
@@ -115,7 +115,7 @@ class Gt{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
115
115
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
116
116
|
* See the License for the specific language governing permissions and
|
|
117
117
|
* limitations under the License.
|
|
118
|
-
*/class
|
|
118
|
+
*/class Jt extends Error{constructor(t,e,i){super(e),this.code=t,this.customData=i,this.name="FirebaseError",Object.setPrototypeOf(this,Jt.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,Yt.prototype.create)}}class Yt{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(Kt,((t,i)=>{const o=e[i];return null!=o?String(o):`<${i}?>`}))}(n,i):"Error",r=`${this.serviceName}: ${s} (${o}).`;return new Jt(o,r,i)}}const Kt=/\{\$([^}]+)}/g;function Wt(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(qt(i)&&qt(s)){if(!Wt(i,s))return!1}else if(i!==s)return!1}for(const t of o)if(!i.includes(t))return!1;return!0}function qt(t){return null!==t&&"object"==typeof t}
|
|
119
119
|
/**
|
|
120
120
|
* @license
|
|
121
121
|
* Copyright 2017 Google LLC
|
|
@@ -245,7 +245,7 @@ class _e{constructor(t){this.container=t}getPlatformInfoString(){return this.con
|
|
|
245
245
|
* See the License for the specific language governing permissions and
|
|
246
246
|
* limitations under the License.
|
|
247
247
|
*/
|
|
248
|
-
const ze=new
|
|
248
|
+
const ze=new Yt("app","Firebase",{"no-app":"No Firebase App '{$appName}' has been created - call Firebase App.initializeApp()","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","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}."});
|
|
249
249
|
/**
|
|
250
250
|
* @license
|
|
251
251
|
* Copyright 2019 Google LLC
|
|
@@ -294,7 +294,7 @@ class Ue{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
294
294
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
295
295
|
* See the License for the specific language governing permissions and
|
|
296
296
|
* limitations under the License.
|
|
297
|
-
*/const Be="firebase-heartbeat-store";let He=null;function Pe(){return He||(He=function(t,e,{blocked:i,upgrade:o,blocking:n,terminated:s}={}){const r=indexedDB.open(t,e),a=xe(r);return o&&r.addEventListener("upgradeneeded",(t=>{o(xe(r.result),t.oldVersion,t.newVersion,xe(r.transaction))})),i&&r.addEventListener("blocked",(()=>i())),a.then((t=>{s&&t.addEventListener("close",(()=>s())),n&&t.addEventListener("versionchange",(()=>n()))})).catch((()=>{})),a}("firebase-heartbeat-database",1,{upgrade:(t,e)=>{if(0===e)t.createObjectStore(Be)}}).catch((t=>{throw ze.create("idb-open",{originalErrorMessage:t.message})}))),He}async function Ze(t,e){try{const i=(await Pe()).transaction(Be,"readwrite"),o=i.objectStore(Be);return await o.put(e,Ge(t)),i.done}catch(t){if(t instanceof
|
|
297
|
+
*/const Be="firebase-heartbeat-store";let He=null;function Pe(){return He||(He=function(t,e,{blocked:i,upgrade:o,blocking:n,terminated:s}={}){const r=indexedDB.open(t,e),a=xe(r);return o&&r.addEventListener("upgradeneeded",(t=>{o(xe(r.result),t.oldVersion,t.newVersion,xe(r.transaction))})),i&&r.addEventListener("blocked",(()=>i())),a.then((t=>{s&&t.addEventListener("close",(()=>s())),n&&t.addEventListener("versionchange",(()=>n()))})).catch((()=>{})),a}("firebase-heartbeat-database",1,{upgrade:(t,e)=>{if(0===e)t.createObjectStore(Be)}}).catch((t=>{throw ze.create("idb-open",{originalErrorMessage:t.message})}))),He}async function Ze(t,e){try{const i=(await Pe()).transaction(Be,"readwrite"),o=i.objectStore(Be);return await o.put(e,Ge(t)),i.done}catch(t){if(t instanceof Jt)Fe.warn(t.message);else{const e=ze.create("idb-set",{originalErrorMessage:null==t?void 0:t.message});Fe.warn(e.message)}}}function Ge(t){return`${t.name}!${t.options.appId}`}
|
|
298
298
|
/**
|
|
299
299
|
* @license
|
|
300
300
|
* Copyright 2021 Google LLC
|
|
@@ -310,7 +310,7 @@ class Ue{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
310
310
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
311
311
|
* See the License for the specific language governing permissions and
|
|
312
312
|
* limitations under the License.
|
|
313
|
-
*/class
|
|
313
|
+
*/class Je{constructor(t){this.container=t,this._heartbeatsCache=null;const e=this.container.getProvider("app").getImmediate();this._storage=new Ke(e),this._heartbeatsCachePromise=this._storage.read().then((t=>(this._heartbeatsCache=t,t)))}async triggerHeartbeat(){const t=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),e=Ye();if(null===this._heartbeatsCache&&(this._heartbeatsCache=await this._heartbeatsCachePromise),this._heartbeatsCache.lastSentHeartbeatDate!==e&&!this._heartbeatsCache.heartbeats.some((t=>t.date===e)))return this._heartbeatsCache.heartbeats.push({date:e,agent:t}),this._heartbeatsCache.heartbeats=this._heartbeatsCache.heartbeats.filter((t=>{const e=new Date(t.date).valueOf();return Date.now()-e<=2592e6})),this._storage.overwrite(this._heartbeatsCache)}async getHeartbeatsHeader(){if(null===this._heartbeatsCache&&await this._heartbeatsCachePromise,null===this._heartbeatsCache||0===this._heartbeatsCache.heartbeats.length)return"";const t=Ye(),{heartbeatsToSend:e,unsentEntries:i}=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),We(i)>e){t.dates.pop();break}}else if(i.push({agent:n.agent,dates:[n.date]}),We(i)>e){i.pop();break}o=o.slice(1)}return{heartbeatsToSend:i,unsentEntries:o}}(this._heartbeatsCache.heartbeats),o=Vt(JSON.stringify({version:2,heartbeats:e}));return this._heartbeatsCache.lastSentHeartbeatDate=t,i.length>0?(this._heartbeatsCache.heartbeats=i,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),o}}function Ye(){return(new Date).toISOString().substring(0,10)}class Ke{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{return(await Pe()).transaction(Be).objectStore(Be).get(Ge(t))}catch(t){if(t instanceof Jt)Fe.warn(t.message);else{const e=ze.create("idb-get",{originalErrorMessage:null==t?void 0:t.message});Fe.warn(e.message)}}}(this.app);return t||{heartbeats:[]}}return{heartbeats:[]}}async overwrite(t){var e;if(await this._canUseIndexedDBPromise){const i=await this.read();return Ze(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 Ze(this.app,{lastSentHeartbeatDate:null!==(e=t.lastSentHeartbeatDate)&&void 0!==e?e:i.lastSentHeartbeatDate,heartbeats:[...i.heartbeats,...t.heartbeats]})}}}function We(t){return Vt(JSON.stringify({version:2,heartbeats:t})).length}
|
|
314
314
|
/**
|
|
315
315
|
* @license
|
|
316
316
|
* Copyright 2019 Google LLC
|
|
@@ -326,7 +326,7 @@ class Ue{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
326
326
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
327
327
|
* See the License for the specific language governing permissions and
|
|
328
328
|
* limitations under the License.
|
|
329
|
-
*/var qe;qe="",Oe(new ie("platform-logger",(t=>new _e(t)),"PRIVATE")),Oe(new ie("heartbeat",(t=>new
|
|
329
|
+
*/var qe;qe="",Oe(new ie("platform-logger",(t=>new _e(t)),"PRIVATE")),Oe(new ie("heartbeat",(t=>new Je(t)),"PRIVATE")),Re(Ie,Te,qe),Re(Ie,Te,"esm2017"),Re("fire-js","");
|
|
330
330
|
/**
|
|
331
331
|
* @license
|
|
332
332
|
* Copyright 2020 Google LLC
|
|
@@ -375,7 +375,7 @@ Re("firebase","9.15.0","app");function Qe(t,e){const i={};for(const o in t)t.has
|
|
|
375
375
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
376
376
|
* See the License for the specific language governing permissions and
|
|
377
377
|
* limitations under the License.
|
|
378
|
-
*/class oi extends
|
|
378
|
+
*/class oi extends Jt{constructor(t,e,i){super(`functions/${t}`,e||""),this.details=i}}
|
|
379
379
|
/**
|
|
380
380
|
* @license
|
|
381
381
|
* Copyright 2017 Google LLC
|
|
@@ -424,7 +424,7 @@ class ni{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=nul
|
|
|
424
424
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
425
425
|
* See the License for the specific language governing permissions and
|
|
426
426
|
* limitations under the License.
|
|
427
|
-
*/(fetch.bind(self));const vi=pi,mi=new
|
|
427
|
+
*/(fetch.bind(self));const vi=pi,mi=new Yt("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."}),fi=new he("@firebase/auth");function gi(t,...e){fi.logLevel<=re.ERROR&&fi.error(`Auth (9.15.0): ${t}`,...e)}
|
|
428
428
|
/**
|
|
429
429
|
* @license
|
|
430
430
|
* Copyright 2020 Google LLC
|
|
@@ -554,7 +554,7 @@ class Ii{static initialize(t,e,i){this.fetchImpl=t,e&&(this.headersImpl=e),i&&(t
|
|
|
554
554
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
555
555
|
* See the License for the specific language governing permissions and
|
|
556
556
|
* limitations under the License.
|
|
557
|
-
*/async function Ai(t,e,i,o,n={}){return Li(t,n,(async()=>{let n={},s={};o&&("GET"===e?s=o:n={body:JSON.stringify(o)});const r=Qt(Object.assign({key:t.config.apiKey},s)).slice(1),a=await t._getAdditionalHeaders();return a["Content-Type"]="application/json",t.languageCode&&(a["X-Firebase-Locale"]=t.languageCode),Ii.fetch()(Di(t,t.config.apiHost,i,r),Object.assign({method:e,headers:a,referrerPolicy:"no-referrer"},n))}))}async function Li(t,e,i){t._canInitEmulator=!1;const o=Object.assign(Object.assign({},Ti),e);try{const e=new ji(t),n=await Promise.race([i(),e.promise]);e.clearNetworkTimeout();const s=await n.json();if("needConfirmation"in s)throw $i(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 $i(t,"credential-already-in-use",s);if("EMAIL_EXISTS"===i)throw $i(t,"email-already-in-use",s);if("USER_DISABLED"===i)throw $i(t,"user-disabled",s);const a=o[i]||i.toLowerCase().replace(/[_\s]+/g,"-");if(r)throw function(t,e,i){const o=Object.assign(Object.assign({},vi()),{[e]:i});return new
|
|
557
|
+
*/async function Ai(t,e,i,o,n={}){return Li(t,n,(async()=>{let n={},s={};o&&("GET"===e?s=o:n={body:JSON.stringify(o)});const r=Qt(Object.assign({key:t.config.apiKey},s)).slice(1),a=await t._getAdditionalHeaders();return a["Content-Type"]="application/json",t.languageCode&&(a["X-Firebase-Locale"]=t.languageCode),Ii.fetch()(Di(t,t.config.apiHost,i,r),Object.assign({method:e,headers:a,referrerPolicy:"no-referrer"},n))}))}async function Li(t,e,i){t._canInitEmulator=!1;const o=Object.assign(Object.assign({},Ti),e);try{const e=new ji(t),n=await Promise.race([i(),e.promise]);e.clearNetworkTimeout();const s=await n.json();if("needConfirmation"in s)throw $i(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 $i(t,"credential-already-in-use",s);if("EMAIL_EXISTS"===i)throw $i(t,"email-already-in-use",s);if("USER_DISABLED"===i)throw $i(t,"user-disabled",s);const a=o[i]||i.toLowerCase().replace(/[_\s]+/g,"-");if(r)throw function(t,e,i){const o=Object.assign(Object.assign({},vi()),{[e]:i});return new Yt("auth","Firebase",o).create(e,{appName:t.name})}(t,a,r);wi(t,a)}}catch(e){if(e instanceof Jt)throw e;wi(t,"network-request-failed")}}function Di(t,e,i,o){const n=`${e}${i}?${o}`;return t.config.emulator?function(t,e){Ei(t.emulator,"Emulator should always be set here");const{url:i}=t.emulator;return e?`${i}${e.startsWith("/")?e.slice(1):e}`:i}(t.config,n):`${t.config.apiScheme}://${n}`}class ji{constructor(t){this.auth=t,this.timer=null,this.promise=new Promise(((t,e)=>{this.timer=setTimeout((()=>e(Ci(this.auth,"network-request-failed"))),Fi.get())}))}clearNetworkTimeout(){clearTimeout(this.timer)}}function $i(t,e,i){const o={appName:t.name};i.email&&(o.email=i.email),i.phoneNumber&&(o.phoneNumber=i.phoneNumber);const n=Ci(t,e,o);return n.customData._tokenResponse=i,n}
|
|
558
558
|
/**
|
|
559
559
|
* @license
|
|
560
560
|
* Copyright 2020 Google LLC
|
|
@@ -604,7 +604,7 @@ function Oi(t){if(t)try{const e=new Date(Number(t));if(!isNaN(e.getTime()))retur
|
|
|
604
604
|
* See the License for the specific language governing permissions and
|
|
605
605
|
* limitations under the License.
|
|
606
606
|
*/
|
|
607
|
-
async function Vi(t,e,i=!1){if(i)return e;try{return await e}catch(e){throw e instanceof
|
|
607
|
+
async function Vi(t,e,i=!1){if(i)return e;try{return await e}catch(e){throw e instanceof Jt&&function({code:t}){return"auth/user-disabled"===t||"auth/user-token-expired"===t}
|
|
608
608
|
/**
|
|
609
609
|
* @license
|
|
610
610
|
* Copyright 2020 Google LLC
|
|
@@ -718,7 +718,7 @@ async function(t,e){const i=await Li(t,{},(async()=>{const i=Qt({grant_type:"ref
|
|
|
718
718
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
719
719
|
* See the License for the specific language governing permissions and
|
|
720
720
|
* limitations under the License.
|
|
721
|
-
*/class
|
|
721
|
+
*/class Ji{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){}}Ji.type="NONE";const Yi=Ji;
|
|
722
722
|
/**
|
|
723
723
|
* @license
|
|
724
724
|
* Copyright 2019 Google LLC
|
|
@@ -734,7 +734,7 @@ async function(t,e){const i=await Li(t,{},(async()=>{const i=Qt({grant_type:"ref
|
|
|
734
734
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
735
735
|
* See the License for the specific language governing permissions and
|
|
736
736
|
* limitations under the License.
|
|
737
|
-
*/function Ki(t,e,i){return`firebase:${t}:${e}:${i}`}class Wi{constructor(t,e,i){this.persistence=t,this.auth=e,this.userKey=i;const{config:o,name:n}=this.auth;this.fullUserKey=Ki(this.userKey,o.apiKey,n),this.fullPersistenceKey=Ki("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);return t?Gi._fromJSON(this.auth,t):null}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 Wi(Si(
|
|
737
|
+
*/function Ki(t,e,i){return`firebase:${t}:${e}:${i}`}class Wi{constructor(t,e,i){this.persistence=t,this.auth=e,this.userKey=i;const{config:o,name:n}=this.auth;this.fullUserKey=Ki(this.userKey,o.apiKey,n),this.fullPersistenceKey=Ki("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);return t?Gi._fromJSON(this.auth,t):null}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 Wi(Si(Yi),t,i);const o=(await Promise.all(e.map((async t=>{if(await t._isAvailable())return t})))).filter((t=>t));let n=o[0]||Si(Yi);const s=Ki(i,t.config.apiKey,t.name);let r=null;for(const i of e)try{const e=await i._get(s);if(e){const o=Gi._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 Wi(n,t,i)):new Wi(n,t,i)}}
|
|
738
738
|
/**
|
|
739
739
|
* @license
|
|
740
740
|
* Copyright 2020 Google LLC
|
|
@@ -798,7 +798,7 @@ async function(t,e){const i=await Li(t,{},(async()=>{const i=Qt({grant_type:"ref
|
|
|
798
798
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
799
799
|
* See the License for the specific language governing permissions and
|
|
800
800
|
* limitations under the License.
|
|
801
|
-
*/class to{constructor(t,e,i){this.app=t,this.heartbeatServiceProvider=e,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new eo(this),this.idTokenSubscription=new eo(this),this.beforeStateQueue=new Xi(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=mi,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=t.name,this.clientVersion=i.sdkClientVersion}_initializeWithPersistence(t,e){return e&&(this._popupRedirectResolver=Si(e)),this._initializationPromise=this.queue((async()=>{var i,o;if(!this._deleted&&(this.persistenceManager=await Wi.create(this,t),!this._deleted)){if(null===(i=this._popupRedirectResolver)||void 0===i?void 0:i._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch(t){}await this.initializeCurrentUser(e),this.lastNotifiedUid=(null===(o=this.currentUser)||void 0===o?void 0:o.uid)||null,this._deleted||(this._isInitialized=!0)}})),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const t=await this.assertedPersistence.getCurrentUser();return this.currentUser||t?this.currentUser&&t&&this.currentUser.uid===t.uid?(this._currentUser._assign(t),void await this.currentUser.getIdToken()):void await this._updateCurrentUser(t,!0):void 0}async initializeCurrentUser(t){var e;const i=await this.assertedPersistence.getCurrentUser();let o=i,n=!1;if(t&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const i=null===(e=this.redirectUser)||void 0===e?void 0:e._redirectEventId,s=null==o?void 0:o._redirectEventId,r=await this.tryRedirectSignIn(t);i&&i!==s||!(null==r?void 0:r.user)||(o=r.user,n=!0)}if(!o)return this.directlySetCurrentUser(null);if(!o._redirectEventId){if(n)try{await this.beforeStateQueue.runMiddleware(o)}catch(t){o=i,this._popupRedirectResolver._overrideRedirectResult(this,(()=>Promise.reject(t)))}return o?this.reloadAndSetCurrentUserOrClear(o):this.directlySetCurrentUser(null)}return bi(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 Hi(t)}catch(t){if("auth/network-request-failed"!==(null==t?void 0:t.code))return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(t)}useDeviceLanguage(){this.languageCode=function(){if("undefined"==typeof navigator)return null;const t=navigator;return t.languages&&t.languages[0]||t.language||null}()}async _delete(){this._deleted=!0}async updateCurrentUser(t){const e=t?ee(t):null;return e&&bi(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&&bi(this.tenantId===t.tenantId,this,"tenant-id-mismatch"),e||await this.beforeStateQueue.runMiddleware(t),this.queue((async()=>{await this.directlySetCurrentUser(t),this.notifyAuthListeners()}))}async signOut(){return await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0)}setPersistence(t){return this.queue((async()=>{await this.assertedPersistence.setPersistence(Si(t))}))}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(t){this._errorFactory=new
|
|
801
|
+
*/class to{constructor(t,e,i){this.app=t,this.heartbeatServiceProvider=e,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new eo(this),this.idTokenSubscription=new eo(this),this.beforeStateQueue=new Xi(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=mi,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=t.name,this.clientVersion=i.sdkClientVersion}_initializeWithPersistence(t,e){return e&&(this._popupRedirectResolver=Si(e)),this._initializationPromise=this.queue((async()=>{var i,o;if(!this._deleted&&(this.persistenceManager=await Wi.create(this,t),!this._deleted)){if(null===(i=this._popupRedirectResolver)||void 0===i?void 0:i._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch(t){}await this.initializeCurrentUser(e),this.lastNotifiedUid=(null===(o=this.currentUser)||void 0===o?void 0:o.uid)||null,this._deleted||(this._isInitialized=!0)}})),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const t=await this.assertedPersistence.getCurrentUser();return this.currentUser||t?this.currentUser&&t&&this.currentUser.uid===t.uid?(this._currentUser._assign(t),void await this.currentUser.getIdToken()):void await this._updateCurrentUser(t,!0):void 0}async initializeCurrentUser(t){var e;const i=await this.assertedPersistence.getCurrentUser();let o=i,n=!1;if(t&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const i=null===(e=this.redirectUser)||void 0===e?void 0:e._redirectEventId,s=null==o?void 0:o._redirectEventId,r=await this.tryRedirectSignIn(t);i&&i!==s||!(null==r?void 0:r.user)||(o=r.user,n=!0)}if(!o)return this.directlySetCurrentUser(null);if(!o._redirectEventId){if(n)try{await this.beforeStateQueue.runMiddleware(o)}catch(t){o=i,this._popupRedirectResolver._overrideRedirectResult(this,(()=>Promise.reject(t)))}return o?this.reloadAndSetCurrentUserOrClear(o):this.directlySetCurrentUser(null)}return bi(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 Hi(t)}catch(t){if("auth/network-request-failed"!==(null==t?void 0:t.code))return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(t)}useDeviceLanguage(){this.languageCode=function(){if("undefined"==typeof navigator)return null;const t=navigator;return t.languages&&t.languages[0]||t.language||null}()}async _delete(){this._deleted=!0}async updateCurrentUser(t){const e=t?ee(t):null;return e&&bi(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&&bi(this.tenantId===t.tenantId,this,"tenant-id-mismatch"),e||await this.beforeStateQueue.runMiddleware(t),this.queue((async()=>{await this.directlySetCurrentUser(t),this.notifyAuthListeners()}))}async signOut(){return await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0)}setPersistence(t){return this.queue((async()=>{await this.assertedPersistence.setPersistence(Si(t))}))}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(t){this._errorFactory=new Yt("auth","Firebase",t())}onAuthStateChanged(t,e,i){return this.registerStateListener(this.authStateSubscription,t,e,i)}beforeAuthStateChanged(t,e){return this.beforeStateQueue.pushCallback(t,e)}onIdTokenChanged(t,e,i){return this.registerStateListener(this.idTokenSubscription,t,e,i)}toJSON(){var t;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:null===(t=this._currentUser)||void 0===t?void 0:t.toJSON()}}async _setRedirectUser(t,e){const i=await this.getOrInitRedirectPersistenceManager(e);return null===t?i.removeCurrentUser():i.setCurrentUser(t)}async getOrInitRedirectPersistenceManager(t){if(!this.redirectPersistenceManager){const e=t&&Si(t)||this._popupRedirectResolver;bi(e,this,"argument-error"),this.redirectPersistenceManager=await Wi.create(this,[Si(e._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(t){var e,i;return this._isInitialized&&await this.queue((async()=>{})),(null===(e=this._currentUser)||void 0===e?void 0:e._redirectEventId)===t?this._currentUser:(null===(i=this.redirectUser)||void 0===i?void 0:i._redirectEventId)===t?this.redirectUser:null}async _persistUserIfCurrent(t){if(t===this.currentUser)return this.queue((async()=>this.directlySetCurrentUser(t)))}_notifyListenersIfCurrent(t){t===this.currentUser&&this.notifyAuthListeners()}_key(){return`${this.config.authDomain}:${this.config.apiKey}:${this.name}`}_startProactiveRefresh(){this.isProactiveRefreshEnabled=!0,this.currentUser&&this._currentUser._startProactiveRefresh()}_stopProactiveRefresh(){this.isProactiveRefreshEnabled=!1,this.currentUser&&this._currentUser._stopProactiveRefresh()}get _currentUser(){return this.currentUser}notifyAuthListeners(){var t,e;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);const i=null!==(e=null===(t=this.currentUser)||void 0===t?void 0:t.uid)&&void 0!==e?e:null;this.lastNotifiedUid!==i&&(this.lastNotifiedUid=i,this.authStateSubscription.next(this.currentUser))}registerStateListener(t,e,i,o){if(this._deleted)return()=>{};const n="function"==typeof e?e:e.next.bind(e),s=this._isInitialized?Promise.resolve():this._initializationPromise;return bi(s,this,"internal-error"),s.then((()=>n(this.currentUser))),"function"==typeof e?t.addObserver(e,i,o):t.addObserver(e)}async directlySetCurrentUser(t){this.currentUser&&this.currentUser!==t&&this._currentUser._stopProactiveRefresh(),t&&this.isProactiveRefreshEnabled&&t._startProactiveRefresh(),this.currentUser=t,t?await this.assertedPersistence.setCurrentUser(t):await this.assertedPersistence.removeCurrentUser()}queue(t){return this.operations=this.operations.then(t,t),this.operations}get assertedPersistence(){return bi(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(t){t&&!this.frameworks.includes(t)&&(this.frameworks.push(t),this.frameworks.sort(),this.clientVersion=Qi(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){var t;const e={"X-Client-Version":this.clientVersion};this.app.options.appId&&(e["X-Firebase-gmpid"]=this.app.options.appId);const i=await(null===(t=this.heartbeatServiceProvider.getImmediate({optional:!0}))||void 0===t?void 0:t.getHeartbeatsHeader());return i&&(e["X-Firebase-Client"]=i),e}}class eo{constructor(t){this.auth=t,this.observer=null,this.addObserver=function(t,e){const i=new Xt(t,e);return i.subscribe.bind(i)}((t=>this.observer=t))}get next(){return bi(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}new _i(3e4,6e4),
|
|
802
802
|
/**
|
|
803
803
|
* @license
|
|
804
804
|
* Copyright 2020 Google LLC
|
|
@@ -898,15 +898,15 @@ class no{constructor(t){this.auth=t,this.internalListeners=new Map}getUid(){var
|
|
|
898
898
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
899
899
|
* See the License for the specific language governing permissions and
|
|
900
900
|
* limitations under the License.
|
|
901
|
-
*/(t=>{var e;null===(e=Pt())||void 0===e||e[`_${t}`]})("authIdTokenMaxAge"),so="Browser",Oe(new ie("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),o=t.getProvider("heartbeat"),{apiKey:n,authDomain:s}=i.options;return((t,i)=>{bi(n&&!n.includes(":"),"invalid-api-key",{appName:t.name}),bi(!(null==s?void 0:s.includes(":")),"argument-error",{appName:t.name});const o={apiKey:n,authDomain:s,clientPlatform:so,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:Qi(so)},r=new to(t,i,o);return function(t,e){const i=(null==e?void 0:e.persistence)||[],o=(Array.isArray(i)?i:[i]).map(Si);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(o,null==e?void 0:e.popupRedirectResolver)}(r,e),r})(i,o)}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),Oe(new ie("auth-internal",(t=>(t=>new no(t))(function(t){return ee(t)}(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),Re(io,oo,function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}(so)),Re(io,oo,"esm2017");class ro{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 ao extends ro{constructor(t=[],e=4*t.length){super();let i=t;if(i instanceof ArrayBuffer&&(i=new Uint8Array(i)),(i instanceof Int8Array||i instanceof Uint8ClampedArray||i instanceof Int16Array||i instanceof Uint16Array||i instanceof Int32Array||i instanceof Uint32Array||i instanceof Float32Array||i instanceof Float64Array)&&(i=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)),i instanceof Uint8Array){const t=i.byteLength,e=[];for(let o=0;o<t;o+=1)e[o>>>2]|=i[o]<<24-o%4*8;this.words=e,this.sigBytes=t}else this.words=t,this.sigBytes=e}static random(t){const e=[],i=t=>{let e=t,i=987654321;const o=4294967295;return()=>{i=36969*(65535&i)+(i>>16)&o,e=18e3*(65535&e)+(e>>16)&o;let t=(i<<16)+e&o;return t/=4294967296,t+=.5,t*(Math.random()>.5?1:-1)}};for(let o,n=0;n<t;n+=4){const t=i(4294967296*(o||Math.random()));o=987654071*t(),e.push(4294967296*t()|0)}return new ao(e,t)}toString(t=lo){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 lo={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 ao(i,e/2)}},co={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 ao(i,e)}},ho={stringify(t){try{return decodeURIComponent(escape(co.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>co.parse(unescape(encodeURIComponent(t)))};class uo extends ro{constructor(){super(),this._minBufferSize=0}reset(){this._data=new ao,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=ho.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 ao(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class po extends uo{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new ro,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new vo(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 vo extends ro{constructor(t,e){super();const i=new t;this._hasher=i;let o=e;"string"==typeof o&&(o=ho.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 mo=ao;class fo extends ro{constructor(t,e){super(),this.high=t,this.low=e}}class go extends ro{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 mo.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 wo={stringify(t){const{words:e,sigBytes:i}=t,o=this._map;t.clamp();const n=[];for(let t=0;t<i;t+=3){const s=(e[t>>>2]>>>24-t%4*8&255)<<16|(e[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|e[t+2>>>2]>>>24-(t+2)%4*8&255;for(let e=0;e<4&&t+.75*e<i;e+=1)n.push(o.charAt(s>>>6*(3-e)&63))}const s=o.charAt(64);if(s)for(;n.length%4;)n.push(s);return n.join("")},parse(t){let e=t.length;const i=this._map;let o=this._reverseMap;if(!o){this._reverseMap=[],o=this._reverseMap;for(let t=0;t<i.length;t+=1)o[i.charCodeAt(t)]=t}const n=i.charAt(64);if(n){const i=t.indexOf(n);-1!==i&&(e=i)}return((t,e,i)=>{const o=[];let n=0;for(let s=0;s<e;s+=1)if(s%4){const e=i[t.charCodeAt(s-1)]<<s%4*2|i[t.charCodeAt(s)]>>>6-s%4*2;o[n>>>2]|=e<<24-n%4*8,n+=1}return ao.create(o,n)})(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},Co=[];for(let t=0;t<64;t+=1)Co[t]=4294967296*Math.abs(Math.sin(t+1))|0;const yo=(t,e,i,o,n,s,r)=>{const a=t+(e&i|~e&o)+n+r;return(a<<s|a>>>32-s)+e},bo=(t,e,i,o,n,s,r)=>{const a=t+(e&o|i&~o)+n+r;return(a<<s|a>>>32-s)+e},xo=(t,e,i,o,n,s,r)=>{const a=t+(e^i^o)+n+r;return(a<<s|a>>>32-s)+e},Eo=(t,e,i,o,n,s,r)=>{const a=t+(i^(e|~o))+n+r;return(a<<s|a>>>32-s)+e};class Mo extends po{_doReset(){this._hash=new ao([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const i=t;for(let o=0;o<16;o+=1){const n=e+o,s=t[n];i[n]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}const o=this._hash.words,n=i[e+0],s=i[e+1],r=i[e+2],a=i[e+3],l=i[e+4],c=i[e+5],d=i[e+6],h=i[e+7],u=i[e+8],p=i[e+9],v=i[e+10],m=i[e+11],f=i[e+12],g=i[e+13],w=i[e+14],C=i[e+15];let y=o[0],b=o[1],x=o[2],E=o[3];y=yo(y,b,x,E,n,7,Co[0]),E=yo(E,y,b,x,s,12,Co[1]),x=yo(x,E,y,b,r,17,Co[2]),b=yo(b,x,E,y,a,22,Co[3]),y=yo(y,b,x,E,l,7,Co[4]),E=yo(E,y,b,x,c,12,Co[5]),x=yo(x,E,y,b,d,17,Co[6]),b=yo(b,x,E,y,h,22,Co[7]),y=yo(y,b,x,E,u,7,Co[8]),E=yo(E,y,b,x,p,12,Co[9]),x=yo(x,E,y,b,v,17,Co[10]),b=yo(b,x,E,y,m,22,Co[11]),y=yo(y,b,x,E,f,7,Co[12]),E=yo(E,y,b,x,g,12,Co[13]),x=yo(x,E,y,b,w,17,Co[14]),b=yo(b,x,E,y,C,22,Co[15]),y=bo(y,b,x,E,s,5,Co[16]),E=bo(E,y,b,x,d,9,Co[17]),x=bo(x,E,y,b,m,14,Co[18]),b=bo(b,x,E,y,n,20,Co[19]),y=bo(y,b,x,E,c,5,Co[20]),E=bo(E,y,b,x,v,9,Co[21]),x=bo(x,E,y,b,C,14,Co[22]),b=bo(b,x,E,y,l,20,Co[23]),y=bo(y,b,x,E,p,5,Co[24]),E=bo(E,y,b,x,w,9,Co[25]),x=bo(x,E,y,b,a,14,Co[26]),b=bo(b,x,E,y,u,20,Co[27]),y=bo(y,b,x,E,g,5,Co[28]),E=bo(E,y,b,x,r,9,Co[29]),x=bo(x,E,y,b,h,14,Co[30]),b=bo(b,x,E,y,f,20,Co[31]),y=xo(y,b,x,E,c,4,Co[32]),E=xo(E,y,b,x,u,11,Co[33]),x=xo(x,E,y,b,m,16,Co[34]),b=xo(b,x,E,y,w,23,Co[35]),y=xo(y,b,x,E,s,4,Co[36]),E=xo(E,y,b,x,l,11,Co[37]),x=xo(x,E,y,b,h,16,Co[38]),b=xo(b,x,E,y,v,23,Co[39]),y=xo(y,b,x,E,g,4,Co[40]),E=xo(E,y,b,x,n,11,Co[41]),x=xo(x,E,y,b,a,16,Co[42]),b=xo(b,x,E,y,d,23,Co[43]),y=xo(y,b,x,E,p,4,Co[44]),E=xo(E,y,b,x,f,11,Co[45]),x=xo(x,E,y,b,C,16,Co[46]),b=xo(b,x,E,y,r,23,Co[47]),y=Eo(y,b,x,E,n,6,Co[48]),E=Eo(E,y,b,x,h,10,Co[49]),x=Eo(x,E,y,b,w,15,Co[50]),b=Eo(b,x,E,y,c,21,Co[51]),y=Eo(y,b,x,E,f,6,Co[52]),E=Eo(E,y,b,x,a,10,Co[53]),x=Eo(x,E,y,b,v,15,Co[54]),b=Eo(b,x,E,y,s,21,Co[55]),y=Eo(y,b,x,E,u,6,Co[56]),E=Eo(E,y,b,x,C,10,Co[57]),x=Eo(x,E,y,b,d,15,Co[58]),b=Eo(b,x,E,y,g,21,Co[59]),y=Eo(y,b,x,E,l,6,Co[60]),E=Eo(E,y,b,x,m,10,Co[61]),x=Eo(x,E,y,b,r,15,Co[62]),b=Eo(b,x,E,y,p,21,Co[63]),o[0]=o[0]+y|0,o[1]=o[1]+b|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 So=po._createHelper(Mo),ko=po._createHmacHelper(Mo);class No extends ro{constructor(t){super(),this.cfg=Object.assign(new ro,{keySize:4,hasher:Mo,iterations:1},t)}compute(t,e){let i;const{cfg:o}=this,n=o.hasher.create(),s=ao.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 _o extends uo{constructor(t,e,i){super(),this.cfg=Object.assign(new ro,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?Uo:Oo;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()}}_o._ENC_XFORM_MODE=1,_o._DEC_XFORM_MODE=2,_o.keySize=4,_o.ivSize=4;class Io extends _o{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class To extends ro{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 Fo(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 Ao extends To{}Ao.Encryptor=class extends Ao{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;Fo.call(this,t,e,o),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}},Ao.Decryptor=class extends Ao{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);i.decryptBlock(t,e),Fo.call(this,t,e,o),this._prevBlock=n}};const Lo={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=ao.create(s,o);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class Do extends _o{constructor(t,e,i){super(t,e,Object.assign({mode:Ao,padding:Lo},i)),this.blockSize=4}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:i,mode:o}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=o.createEncryptor:(t=o.createDecryptor,this._minBufferSize=1),this._mode=t.call(o,this,i&&i.words),this._mode.i=t}_doProcessBlock(t,e){this._mode.processBlock(t,e)}_doFinalize(){let t;const{padding:e}=this.cfg;return this._xformMode===this.constructor._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t}}class jo extends ro{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const $o={stringify(t){let e;const{ciphertext:i,salt:o}=t;return e=o?ao.create([1398893684,1701076831]).concat(o).concat(i):i,e.toString(wo)},parse(t){let e;const i=wo.parse(t),o=i.words;return 1398893684===o[0]&&1701076831===o[1]&&(e=ao.create(o.slice(2,4)),o.splice(0,4),i.sigBytes-=16),jo.create({ciphertext:i,salt:e})}};class Oo extends ro{static encrypt(t,e,i,o){const n=Object.assign(new ro,this.cfg,o),s=t.createEncryptor(i,n),r=s.finalize(e),a=s.cfg;return jo.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 ro,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}}Oo.cfg=Object.assign(new ro,{format:$o});const zo={execute(t,e,i,o){let n=o;n||(n=ao.random(8));const s=No.create({keySize:e+i}).compute(t,n),r=ao.create(s.words.slice(e),4*i);return s.sigBytes=4*e,jo.create({key:s,iv:r,salt:n})}};class Uo extends Oo{static encrypt(t,e,i,o){const n=Object.assign(new ro,this.cfg,o),s=n.kdf.execute(i,t.keySize,t.ivSize);n.iv=s.iv;const r=Oo.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 ro,this.cfg,o);n=this._parse(n,s.format);const r=s.kdf.execute(i,t.keySize,t.ivSize,n.salt);s.iv=r.iv;return Oo.decrypt.call(this,t,n,r.key,s)}}Uo.cfg=Object.assign(Oo.cfg,{kdf:zo});const Vo=t=>t<<8&4278255360|t>>>8&16711935,Ro={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 ao.create(i,2*e)}},Bo=Ro,Ho={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=Vo(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]|=Vo(t.charCodeAt(o)<<16-o%2*16);return ao.create(i,2*e)}},Po=[];class Zo extends po{_doReset(){this._hash=new ao([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)Po[i]=0|t[e+i];else{const t=Po[i-3]^Po[i-8]^Po[i-14]^Po[i-16];Po[i]=t<<1|t>>>31}let l=(o<<5|o>>>27)+a+Po[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 Go=po._createHelper(Zo),Yo=po._createHmacHelper(Zo),Jo=[],Ko=[],Wo=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},qo=t=>4294967296*(t-(0|t))|0;let Qo=2,Xo=0;for(;Xo<64;)Wo(Qo)&&(Xo<8&&(Jo[Xo]=qo(Qo**.5)),Ko[Xo]=qo(Qo**(1/3)),Xo+=1),Qo+=1;const tn=[];class en extends po{_doReset(){this._hash=new ao(Jo.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)tn[i]=0|t[e+i];else{const t=tn[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,o=tn[i-2],n=(o<<15|o>>>17)^(o<<13|o>>>19)^o>>>10;tn[i]=e+tn[i-7]+n+tn[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)+Ko[i]+tn[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 on=po._createHelper(en),nn=po._createHmacHelper(en);class sn extends en{_doReset(){this._hash=new ao([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const rn=en._createHelper(sn),an=en._createHmacHelper(sn),ln=[new fo(1116352408,3609767458),new fo(1899447441,602891725),new fo(3049323471,3964484399),new fo(3921009573,2173295548),new fo(961987163,4081628472),new fo(1508970993,3053834265),new fo(2453635748,2937671579),new fo(2870763221,3664609560),new fo(3624381080,2734883394),new fo(310598401,1164996542),new fo(607225278,1323610764),new fo(1426881987,3590304994),new fo(1925078388,4068182383),new fo(2162078206,991336113),new fo(2614888103,633803317),new fo(3248222580,3479774868),new fo(3835390401,2666613458),new fo(4022224774,944711139),new fo(264347078,2341262773),new fo(604807628,2007800933),new fo(770255983,1495990901),new fo(1249150122,1856431235),new fo(1555081692,3175218132),new fo(1996064986,2198950837),new fo(2554220882,3999719339),new fo(2821834349,766784016),new fo(2952996808,2566594879),new fo(3210313671,3203337956),new fo(3336571891,1034457026),new fo(3584528711,2466948901),new fo(113926993,3758326383),new fo(338241895,168717936),new fo(666307205,1188179964),new fo(773529912,1546045734),new fo(1294757372,1522805485),new fo(1396182291,2643833823),new fo(1695183700,2343527390),new fo(1986661051,1014477480),new fo(2177026350,1206759142),new fo(2456956037,344077627),new fo(2730485921,1290863460),new fo(2820302411,3158454273),new fo(3259730800,3505952657),new fo(3345764771,106217008),new fo(3516065817,3606008344),new fo(3600352804,1432725776),new fo(4094571909,1467031594),new fo(275423344,851169720),new fo(430227734,3100823752),new fo(506948616,1363258195),new fo(659060556,3750685593),new fo(883997877,3785050280),new fo(958139571,3318307427),new fo(1322822218,3812723403),new fo(1537002063,2003034995),new fo(1747873779,3602036899),new fo(1955562222,1575990012),new fo(2024104815,1125592928),new fo(2227730452,2716904306),new fo(2361852424,442776044),new fo(2428436474,593698344),new fo(2756734187,3733110249),new fo(3204031479,2999351573),new fo(3329325298,3815920427),new fo(3391569614,3928383900),new fo(3515267271,566280711),new fo(3940187606,3454069534),new fo(4118630271,4000239992),new fo(116418474,1914138554),new fo(174292421,2731055270),new fo(289380356,3203993006),new fo(460393269,320620315),new fo(685471733,587496836),new fo(852142971,1086792851),new fo(1017036298,365543100),new fo(1126000580,2618297676),new fo(1288033470,3409855158),new fo(1501505948,4234509866),new fo(1607167915,987167468),new fo(1816402316,1246189591)],cn=[];for(let t=0;t<80;t+=1)cn[t]=new fo;class dn extends po{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new go([new fo(1779033703,4089235720),new fo(3144134277,2227873595),new fo(1013904242,4271175723),new fo(2773480762,1595750129),new fo(1359893119,2917565137),new fo(2600822924,725511199),new fo(528734635,4215389547),new fo(1541459225,327033209)])}_doProcessBlock(t,e){const i=this._hash.words,o=i[0],n=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],d=i[7],h=o.high;let u=o.low;const p=n.high;let v=n.low;const m=s.high;let f=s.low;const g=r.high;let w=r.low;const C=a.high;let y=a.low;const b=l.high;let x=l.low;const E=c.high;let M=c.low;const S=d.high;let k=d.low,N=h,_=u,I=p,T=v,F=m,A=f,L=g,D=w,j=C,$=y,O=b,z=x,U=E,V=M,R=S,B=k;for(let i=0;i<80;i+=1){let o,n;const s=cn[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=cn[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=cn[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=cn[i-7],m=v.high,f=v.low,g=cn[i-16],w=g.high,C=g.low;o=l+f,n=a+m+(o>>>0<l>>>0?1:0),o+=p,n=n+u+(o>>>0<p>>>0?1:0),o+=C,n=n+w+(o>>>0<C>>>0?1:0),s.high=n,s.low=o}const r=j&O^~j&U,a=$&z^~$&V,l=N&I^N&F^I&F,c=_&T^_&A^T&A,d=(N>>>28|_<<4)^(N<<30|_>>>2)^(N<<25|_>>>7),h=(_>>>28|N<<4)^(_<<30|N>>>2)^(_<<25|N>>>7),u=(j>>>14|$<<18)^(j>>>18|$<<14)^(j<<23|$>>>9),p=($>>>14|j<<18)^($>>>18|j<<14)^($<<23|j>>>9),v=ln[i],m=v.high,f=v.low;let g=B+p,w=R+u+(g>>>0<B>>>0?1:0);g+=a,w=w+r+(g>>>0<a>>>0?1:0),g+=f,w=w+m+(g>>>0<f>>>0?1:0),g+=o,w=w+n+(g>>>0<o>>>0?1:0);const C=h+c;R=U,B=V,U=O,V=z,O=j,z=$,$=D+g|0,j=L+w+($>>>0<D>>>0?1:0)|0,L=F,D=A,F=I,A=T,I=N,T=_,_=g+C|0,N=w+(d+l+(C>>>0<h>>>0?1:0))+(_>>>0<g>>>0?1:0)|0}o.low=u+_,u=o.low,o.high=h+N+(u>>>0<_>>>0?1:0),n.low=v+T,v=n.low,n.high=p+I+(v>>>0<T>>>0?1:0),s.low=f+A,f=s.low,s.high=m+F+(f>>>0<A>>>0?1:0),r.low=w+D,w=r.low,r.high=g+L+(w>>>0<D>>>0?1:0),a.low=y+$,y=a.low,a.high=C+j+(y>>>0<$>>>0?1:0),l.low=x+z,x=l.low,l.high=b+O+(x>>>0<z>>>0?1:0),c.low=M+V,M=c.low,c.high=E+U+(M>>>0<V>>>0?1:0),d.low=k+B,k=d.low,d.high=S+R+(k>>>0<B>>>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 hn=po._createHelper(dn),un=po._createHmacHelper(dn);class pn extends dn{_doReset(){this._hash=new go([new fo(3418070365,3238371032),new fo(1654270250,914150663),new fo(2438529370,812702999),new fo(355462360,4144912697),new fo(1731405415,4290775857),new fo(2394180231,1750603025),new fo(3675008525,1694076839),new fo(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const vn=dn._createHelper(pn),mn=dn._createHmacHelper(pn),fn=[],gn=[],wn=[];let Cn=1,yn=0;for(let t=0;t<24;t+=1){fn[Cn+5*yn]=(t+1)*(t+2)/2%64;const e=(2*Cn+3*yn)%5;Cn=yn%5,yn=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)gn[t+5*e]=e+(2*t+3*e)%5*5;let bn=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&bn){const o=(1<<t)-1;o<32?i^=1<<o:e^=1<<o-32}128&bn?bn=bn<<1^113:bn<<=1}wn[t]=fo.create(e,i)}const xn=[];for(let t=0;t<25;t+=1)xn[t]=fo.create();class En extends po{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 fo;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=xn[t];n.high=e,n.low=o}for(let t=0;t<5;t+=1){const e=xn[(t+4)%5],o=xn[(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=fn[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=xn[gn[t]];l.high=e,l.low=o}const e=xn[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=xn[o],r=xn[(t+1)%5+5*e],a=xn[(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=wn[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 ao(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 Mn=po._createHelper(En),Sn=po._createHmacHelper(En),kn=ao.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]),Nn=ao.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]),_n=ao.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]),In=ao.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]),Tn=ao.create([0,1518500249,1859775393,2400959708,2840853838]),Fn=ao.create([1352829926,1548603684,1836072691,2053994217,0]),An=(t,e,i)=>t^e^i,Ln=(t,e,i)=>t&e|~t&i,Dn=(t,e,i)=>(t|~e)^i,jn=(t,e,i)=>t&i|e&~i,$n=(t,e,i)=>t^(e|~i),On=(t,e)=>t<<e|t>>>32-e;class zn extends po{_doReset(){this._hash=ao.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=Tn.words,s=Fn.words,r=kn.words,a=Nn.words,l=_n.words,c=In.words;let d,h=o[0],u=o[1],p=o[2],v=o[3],m=o[4],f=o[0],g=o[1],w=o[2],C=o[3],y=o[4];for(let t=0;t<80;t+=1)d=h+i[e+r[t]]|0,d+=t<16?An(u,p,v)+n[0]:t<32?Ln(u,p,v)+n[1]:t<48?Dn(u,p,v)+n[2]:t<64?jn(u,p,v)+n[3]:$n(u,p,v)+n[4],d|=0,d=On(d,l[t]),d=d+m|0,h=m,m=v,v=On(p,10),p=u,u=d,d=f+i[e+a[t]]|0,d+=t<16?$n(g,w,C)+s[0]:t<32?jn(g,w,C)+s[1]:t<48?Dn(g,w,C)+s[2]:t<64?Ln(g,w,C)+s[3]:An(g,w,C)+s[4],d|=0,d=On(d,c[t]),d=d+y|0,f=y,y=C,C=On(w,10),w=g,g=d;d=o[1]+p+C|0,o[1]=o[2]+v+y|0,o[2]=o[3]+m+f|0,o[3]=o[4]+h+g|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 Un=po._createHelper(zn),Vn=po._createHmacHelper(zn);class Rn extends ro{constructor(t){super(),this.cfg=Object.assign(new ro,{keySize:4,hasher:Zo,iterations:1},t)}compute(t,e){const{cfg:i}=this,o=vo.create(i.hasher,t),n=ao.create(),s=ao.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 Bn=[],Hn=[],Pn=[],Zn=[],Gn=[],Yn=[],Jn=[],Kn=[],Wn=[],qn=[],Qn=[];for(let t=0;t<256;t+=1)Qn[t]=t<128?t<<1:t<<1^283;let Xn=0,ts=0;for(let t=0;t<256;t+=1){let t=ts^ts<<1^ts<<2^ts<<3^ts<<4;t=t>>>8^255&t^99,Bn[Xn]=t,Hn[t]=Xn;const e=Qn[Xn],i=Qn[e],o=Qn[i];let n=257*Qn[t]^16843008*t;Pn[Xn]=n<<24|n>>>8,Zn[Xn]=n<<16|n>>>16,Gn[Xn]=n<<8|n>>>24,Yn[Xn]=n,n=16843009*o^65537*i^257*e^16843008*Xn,Jn[t]=n<<24|n>>>8,Kn[t]=n<<16|n>>>16,Wn[t]=n<<8|n>>>24,qn[t]=n,Xn?(Xn=e^Qn[Qn[Qn[o^e]]],ts^=Qn[Qn[ts]]):(ts=1,Xn=ts)}const es=[0,1,2,4,8,16,32,64,128,27,54];class is extends Do{_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=Bn[t>>>24]<<24|Bn[t>>>16&255]<<16|Bn[t>>>8&255]<<8|Bn[255&t]):(t=t<<8|t>>>24,t=Bn[t>>>24]<<24|Bn[t>>>16&255]<<16|Bn[t>>>8&255]<<8|Bn[255&t],t^=es[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:Jn[Bn[t>>>24]]^Kn[Bn[t>>>16&255]]^Wn[Bn[t>>>8&255]]^qn[Bn[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,Pn,Zn,Gn,Yn,Bn)}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,Jn,Kn,Wn,qn,Hn),o=i[e+1],i[e+1]=i[e+3],i[e+3]=o}_doCryptBlock(t,e,i,o,n,s,r,a){const l=t,c=this._nRounds;let d=l[e]^i[0],h=l[e+1]^i[1],u=l[e+2]^i[2],p=l[e+3]^i[3],v=4;for(let t=1;t<c;t+=1){const t=o[d>>>24]^n[h>>>16&255]^s[u>>>8&255]^r[255&p]^i[v];v+=1;const e=o[h>>>24]^n[u>>>16&255]^s[p>>>8&255]^r[255&d]^i[v];v+=1;const a=o[u>>>24]^n[p>>>16&255]^s[d>>>8&255]^r[255&h]^i[v];v+=1;const l=o[p>>>24]^n[d>>>16&255]^s[h>>>8&255]^r[255&u]^i[v];v+=1,d=t,h=e,u=a,p=l}const m=(a[d>>>24]<<24|a[h>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[v];v+=1;const f=(a[h>>>24]<<24|a[u>>>16&255]<<16|a[p>>>8&255]<<8|a[255&d])^i[v];v+=1;const g=(a[u>>>24]<<24|a[p>>>16&255]<<16|a[d>>>8&255]<<8|a[255&h])^i[v];v+=1;const w=(a[p>>>24]<<24|a[d>>>16&255]<<16|a[h>>>8&255]<<8|a[255&u])^i[v];v+=1,l[e]=m,l[e+1]=f,l[e+2]=g,l[e+3]=w}}is.keySize=8;const os=Do._createHelper(is),ns=[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],ss=[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],rs=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],as=[{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}],ls=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function cs(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function ds(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class hs extends Do{_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const o=ns[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=rs[t];for(let t=0;t<24;t+=1)o[t/6|0]|=e[(ss[t]-1+n)%28]<<31-t%6,o[4+(t/6|0)]|=e[28+(ss[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],cs.call(this,4,252645135),cs.call(this,16,65535),ds.call(this,2,858993459),ds.call(this,8,16711935),cs.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|=as[t][((n^e[t])&ls[t])>>>0];this._lBlock=n,this._rBlock=o^s}const n=this._lBlock;this._lBlock=this._rBlock,this._rBlock=n,cs.call(this,1,1431655765),ds.call(this,8,16711935),ds.call(this,2,858993459),cs.call(this,16,65535),cs.call(this,4,252645135),o[e]=this._lBlock,o[e+1]=this._rBlock}}hs.keySize=2,hs.ivSize=2,hs.blockSize=2;const us=Do._createHelper(hs);class ps extends Do{_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=hs.createEncryptor(ao.create(e)),this._des2=hs.createEncryptor(ao.create(i)),this._des3=hs.createEncryptor(ao.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)}}ps.keySize=6,ps.ivSize=2,ps.blockSize=2;const vs=Do._createHelper(ps),ms=[],fs=[],gs=[];function ws(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)fs[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<fs[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<fs[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<fs[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<fs[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<fs[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<fs[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<fs[6]>>>0?1:0)|0,this._b=e[7]>>>0<fs[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);gs[i]=r^a}t[0]=gs[0]+(gs[7]<<16|gs[7]>>>16)+(gs[6]<<16|gs[6]>>>16)|0,t[1]=gs[1]+(gs[0]<<8|gs[0]>>>24)+gs[7]|0,t[2]=gs[2]+(gs[1]<<16|gs[1]>>>16)+(gs[0]<<16|gs[0]>>>16)|0,t[3]=gs[3]+(gs[2]<<8|gs[2]>>>24)+gs[1]|0,t[4]=gs[4]+(gs[3]<<16|gs[3]>>>16)+(gs[2]<<16|gs[2]>>>16)|0,t[5]=gs[5]+(gs[4]<<8|gs[4]>>>24)+gs[3]|0,t[6]=gs[6]+(gs[5]<<16|gs[5]>>>16)+(gs[4]<<16|gs[4]>>>16)|0,t[7]=gs[7]+(gs[6]<<8|gs[6]>>>24)+gs[5]|0}class Cs extends Io{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)ws.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)ws.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;ws.call(this),ms[0]=o[0]^o[5]>>>16^o[3]<<16,ms[1]=o[2]^o[7]>>>16^o[5]<<16,ms[2]=o[4]^o[1]>>>16^o[7]<<16,ms[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)ms[t]=16711935&(ms[t]<<8|ms[t]>>>24)|4278255360&(ms[t]<<24|ms[t]>>>8),i[e+t]^=ms[t]}}const ys=Io._createHelper(Cs),bs=[],xs=[],Es=[];function Ms(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)xs[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<xs[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<xs[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<xs[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<xs[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<xs[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<xs[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<xs[6]>>>0?1:0)|0,this._b=e[7]>>>0<xs[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);Es[i]=r^a}t[0]=Es[0]+(Es[7]<<16|Es[7]>>>16)+(Es[6]<<16|Es[6]>>>16)|0,t[1]=Es[1]+(Es[0]<<8|Es[0]>>>24)+Es[7]|0,t[2]=Es[2]+(Es[1]<<16|Es[1]>>>16)+(Es[0]<<16|Es[0]>>>16)|0,t[3]=Es[3]+(Es[2]<<8|Es[2]>>>24)+Es[1]|0,t[4]=Es[4]+(Es[3]<<16|Es[3]>>>16)+(Es[2]<<16|Es[2]>>>16)|0,t[5]=Es[5]+(Es[4]<<8|Es[4]>>>24)+Es[3]|0,t[6]=Es[6]+(Es[5]<<16|Es[5]>>>16)+(Es[4]<<16|Es[4]>>>16)|0,t[7]=Es[7]+(Es[6]<<8|Es[6]>>>24)+Es[5]|0}class Ss extends Io{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)Ms.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)Ms.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;Ms.call(this),bs[0]=o[0]^o[5]>>>16^o[3]<<16,bs[1]=o[2]^o[7]>>>16^o[5]<<16,bs[2]=o[4]^o[1]>>>16^o[7]<<16,bs[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)bs[t]=16711935&(bs[t]<<8|bs[t]>>>24)|4278255360&(bs[t]<<24|bs[t]>>>8),i[e+t]^=bs[t]}}const ks=Io._createHelper(Ss);function Ns(){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 _s extends Io{_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]^=Ns.call(this)}}_s.keySize=8,_s.ivSize=0;const Is=Io._createHelper(_s);class Ts extends _s{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)Ns.call(this)}}const Fs=Io._createHelper(Ts);function As(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 Ls extends To{}Ls.Encryptor=class extends Ls{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;As.call(this,t,e,o,i),this._prevBlock=t.slice(e,e+o)}},Ls.Decryptor=class extends Ls{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);As.call(this,t,e,o,i),this._prevBlock=n}};class Ds extends To{}Ds.Encryptor=class extends Ds{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]}},Ds.Decryptor=Ds.Encryptor;const js=t=>{let e=t;if(255==(t>>24&255)){let i=t>>16&255,o=t>>8&255,n=255&t;255===i?(i=0,255===o?(o=0,255===n?n=0:n+=1):o+=1):i+=1,e=0,e+=i<<16,e+=o<<8,e+=n}else e+=1<<24;return e};
|
|
901
|
+
*/(t=>{var e;null===(e=Pt())||void 0===e||e[`_${t}`]})("authIdTokenMaxAge"),so="Browser",Oe(new ie("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),o=t.getProvider("heartbeat"),{apiKey:n,authDomain:s}=i.options;return((t,i)=>{bi(n&&!n.includes(":"),"invalid-api-key",{appName:t.name}),bi(!(null==s?void 0:s.includes(":")),"argument-error",{appName:t.name});const o={apiKey:n,authDomain:s,clientPlatform:so,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:Qi(so)},r=new to(t,i,o);return function(t,e){const i=(null==e?void 0:e.persistence)||[],o=(Array.isArray(i)?i:[i]).map(Si);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(o,null==e?void 0:e.popupRedirectResolver)}(r,e),r})(i,o)}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),Oe(new ie("auth-internal",(t=>(t=>new no(t))(function(t){return ee(t)}(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),Re(io,oo,function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}(so)),Re(io,oo,"esm2017");class ro{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 ao extends ro{constructor(t=[],e=4*t.length){super();let i=t;if(i instanceof ArrayBuffer&&(i=new Uint8Array(i)),(i instanceof Int8Array||i instanceof Uint8ClampedArray||i instanceof Int16Array||i instanceof Uint16Array||i instanceof Int32Array||i instanceof Uint32Array||i instanceof Float32Array||i instanceof Float64Array)&&(i=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)),i instanceof Uint8Array){const t=i.byteLength,e=[];for(let o=0;o<t;o+=1)e[o>>>2]|=i[o]<<24-o%4*8;this.words=e,this.sigBytes=t}else this.words=t,this.sigBytes=e}static random(t){const e=[],i=t=>{let e=t,i=987654321;const o=4294967295;return()=>{i=36969*(65535&i)+(i>>16)&o,e=18e3*(65535&e)+(e>>16)&o;let t=(i<<16)+e&o;return t/=4294967296,t+=.5,t*(Math.random()>.5?1:-1)}};for(let o,n=0;n<t;n+=4){const t=i(4294967296*(o||Math.random()));o=987654071*t(),e.push(4294967296*t()|0)}return new ao(e,t)}toString(t=lo){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 lo={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 ao(i,e/2)}},co={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 ao(i,e)}},ho={stringify(t){try{return decodeURIComponent(escape(co.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>co.parse(unescape(encodeURIComponent(t)))};class uo extends ro{constructor(){super(),this._minBufferSize=0}reset(){this._data=new ao,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=ho.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 ao(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class po extends uo{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new ro,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new vo(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 vo extends ro{constructor(t,e){super();const i=new t;this._hasher=i;let o=e;"string"==typeof o&&(o=ho.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 mo=ao;class fo extends ro{constructor(t,e){super(),this.high=t,this.low=e}}class go extends ro{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 mo.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 wo={stringify(t){const{words:e,sigBytes:i}=t,o=this._map;t.clamp();const n=[];for(let t=0;t<i;t+=3){const s=(e[t>>>2]>>>24-t%4*8&255)<<16|(e[t+1>>>2]>>>24-(t+1)%4*8&255)<<8|e[t+2>>>2]>>>24-(t+2)%4*8&255;for(let e=0;e<4&&t+.75*e<i;e+=1)n.push(o.charAt(s>>>6*(3-e)&63))}const s=o.charAt(64);if(s)for(;n.length%4;)n.push(s);return n.join("")},parse(t){let e=t.length;const i=this._map;let o=this._reverseMap;if(!o){this._reverseMap=[],o=this._reverseMap;for(let t=0;t<i.length;t+=1)o[i.charCodeAt(t)]=t}const n=i.charAt(64);if(n){const i=t.indexOf(n);-1!==i&&(e=i)}return((t,e,i)=>{const o=[];let n=0;for(let s=0;s<e;s+=1)if(s%4){const e=i[t.charCodeAt(s-1)]<<s%4*2|i[t.charCodeAt(s)]>>>6-s%4*2;o[n>>>2]|=e<<24-n%4*8,n+=1}return ao.create(o,n)})(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},Co=[];for(let t=0;t<64;t+=1)Co[t]=4294967296*Math.abs(Math.sin(t+1))|0;const yo=(t,e,i,o,n,s,r)=>{const a=t+(e&i|~e&o)+n+r;return(a<<s|a>>>32-s)+e},bo=(t,e,i,o,n,s,r)=>{const a=t+(e&o|i&~o)+n+r;return(a<<s|a>>>32-s)+e},xo=(t,e,i,o,n,s,r)=>{const a=t+(e^i^o)+n+r;return(a<<s|a>>>32-s)+e},Eo=(t,e,i,o,n,s,r)=>{const a=t+(i^(e|~o))+n+r;return(a<<s|a>>>32-s)+e};class Mo extends po{_doReset(){this._hash=new ao([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const i=t;for(let o=0;o<16;o+=1){const n=e+o,s=t[n];i[n]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}const o=this._hash.words,n=i[e+0],s=i[e+1],r=i[e+2],a=i[e+3],l=i[e+4],c=i[e+5],d=i[e+6],h=i[e+7],u=i[e+8],p=i[e+9],v=i[e+10],m=i[e+11],f=i[e+12],g=i[e+13],w=i[e+14],C=i[e+15];let y=o[0],b=o[1],x=o[2],E=o[3];y=yo(y,b,x,E,n,7,Co[0]),E=yo(E,y,b,x,s,12,Co[1]),x=yo(x,E,y,b,r,17,Co[2]),b=yo(b,x,E,y,a,22,Co[3]),y=yo(y,b,x,E,l,7,Co[4]),E=yo(E,y,b,x,c,12,Co[5]),x=yo(x,E,y,b,d,17,Co[6]),b=yo(b,x,E,y,h,22,Co[7]),y=yo(y,b,x,E,u,7,Co[8]),E=yo(E,y,b,x,p,12,Co[9]),x=yo(x,E,y,b,v,17,Co[10]),b=yo(b,x,E,y,m,22,Co[11]),y=yo(y,b,x,E,f,7,Co[12]),E=yo(E,y,b,x,g,12,Co[13]),x=yo(x,E,y,b,w,17,Co[14]),b=yo(b,x,E,y,C,22,Co[15]),y=bo(y,b,x,E,s,5,Co[16]),E=bo(E,y,b,x,d,9,Co[17]),x=bo(x,E,y,b,m,14,Co[18]),b=bo(b,x,E,y,n,20,Co[19]),y=bo(y,b,x,E,c,5,Co[20]),E=bo(E,y,b,x,v,9,Co[21]),x=bo(x,E,y,b,C,14,Co[22]),b=bo(b,x,E,y,l,20,Co[23]),y=bo(y,b,x,E,p,5,Co[24]),E=bo(E,y,b,x,w,9,Co[25]),x=bo(x,E,y,b,a,14,Co[26]),b=bo(b,x,E,y,u,20,Co[27]),y=bo(y,b,x,E,g,5,Co[28]),E=bo(E,y,b,x,r,9,Co[29]),x=bo(x,E,y,b,h,14,Co[30]),b=bo(b,x,E,y,f,20,Co[31]),y=xo(y,b,x,E,c,4,Co[32]),E=xo(E,y,b,x,u,11,Co[33]),x=xo(x,E,y,b,m,16,Co[34]),b=xo(b,x,E,y,w,23,Co[35]),y=xo(y,b,x,E,s,4,Co[36]),E=xo(E,y,b,x,l,11,Co[37]),x=xo(x,E,y,b,h,16,Co[38]),b=xo(b,x,E,y,v,23,Co[39]),y=xo(y,b,x,E,g,4,Co[40]),E=xo(E,y,b,x,n,11,Co[41]),x=xo(x,E,y,b,a,16,Co[42]),b=xo(b,x,E,y,d,23,Co[43]),y=xo(y,b,x,E,p,4,Co[44]),E=xo(E,y,b,x,f,11,Co[45]),x=xo(x,E,y,b,C,16,Co[46]),b=xo(b,x,E,y,r,23,Co[47]),y=Eo(y,b,x,E,n,6,Co[48]),E=Eo(E,y,b,x,h,10,Co[49]),x=Eo(x,E,y,b,w,15,Co[50]),b=Eo(b,x,E,y,c,21,Co[51]),y=Eo(y,b,x,E,f,6,Co[52]),E=Eo(E,y,b,x,a,10,Co[53]),x=Eo(x,E,y,b,v,15,Co[54]),b=Eo(b,x,E,y,s,21,Co[55]),y=Eo(y,b,x,E,u,6,Co[56]),E=Eo(E,y,b,x,C,10,Co[57]),x=Eo(x,E,y,b,d,15,Co[58]),b=Eo(b,x,E,y,g,21,Co[59]),y=Eo(y,b,x,E,l,6,Co[60]),E=Eo(E,y,b,x,m,10,Co[61]),x=Eo(x,E,y,b,r,15,Co[62]),b=Eo(b,x,E,y,p,21,Co[63]),o[0]=o[0]+y|0,o[1]=o[1]+b|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 So=po._createHelper(Mo),ko=po._createHmacHelper(Mo);class No extends ro{constructor(t){super(),this.cfg=Object.assign(new ro,{keySize:4,hasher:Mo,iterations:1},t)}compute(t,e){let i;const{cfg:o}=this,n=o.hasher.create(),s=ao.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 _o extends uo{constructor(t,e,i){super(),this.cfg=Object.assign(new ro,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?Uo:Oo;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()}}_o._ENC_XFORM_MODE=1,_o._DEC_XFORM_MODE=2,_o.keySize=4,_o.ivSize=4;class Io extends _o{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class To extends ro{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 Fo(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 Ao extends To{}Ao.Encryptor=class extends Ao{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;Fo.call(this,t,e,o),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}},Ao.Decryptor=class extends Ao{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);i.decryptBlock(t,e),Fo.call(this,t,e,o),this._prevBlock=n}};const Lo={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=ao.create(s,o);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class Do extends _o{constructor(t,e,i){super(t,e,Object.assign({mode:Ao,padding:Lo},i)),this.blockSize=4}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:i,mode:o}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=o.createEncryptor:(t=o.createDecryptor,this._minBufferSize=1),this._mode=t.call(o,this,i&&i.words),this._mode.i=t}_doProcessBlock(t,e){this._mode.processBlock(t,e)}_doFinalize(){let t;const{padding:e}=this.cfg;return this._xformMode===this.constructor._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t}}class jo extends ro{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const $o={stringify(t){let e;const{ciphertext:i,salt:o}=t;return e=o?ao.create([1398893684,1701076831]).concat(o).concat(i):i,e.toString(wo)},parse(t){let e;const i=wo.parse(t),o=i.words;return 1398893684===o[0]&&1701076831===o[1]&&(e=ao.create(o.slice(2,4)),o.splice(0,4),i.sigBytes-=16),jo.create({ciphertext:i,salt:e})}};class Oo extends ro{static encrypt(t,e,i,o){const n=Object.assign(new ro,this.cfg,o),s=t.createEncryptor(i,n),r=s.finalize(e),a=s.cfg;return jo.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 ro,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}}Oo.cfg=Object.assign(new ro,{format:$o});const zo={execute(t,e,i,o){let n=o;n||(n=ao.random(8));const s=No.create({keySize:e+i}).compute(t,n),r=ao.create(s.words.slice(e),4*i);return s.sigBytes=4*e,jo.create({key:s,iv:r,salt:n})}};class Uo extends Oo{static encrypt(t,e,i,o){const n=Object.assign(new ro,this.cfg,o),s=n.kdf.execute(i,t.keySize,t.ivSize);n.iv=s.iv;const r=Oo.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 ro,this.cfg,o);n=this._parse(n,s.format);const r=s.kdf.execute(i,t.keySize,t.ivSize,n.salt);s.iv=r.iv;return Oo.decrypt.call(this,t,n,r.key,s)}}Uo.cfg=Object.assign(Oo.cfg,{kdf:zo});const Vo=t=>t<<8&4278255360|t>>>8&16711935,Ro={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 ao.create(i,2*e)}},Bo=Ro,Ho={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=Vo(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]|=Vo(t.charCodeAt(o)<<16-o%2*16);return ao.create(i,2*e)}},Po=[];class Zo extends po{_doReset(){this._hash=new ao([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)Po[i]=0|t[e+i];else{const t=Po[i-3]^Po[i-8]^Po[i-14]^Po[i-16];Po[i]=t<<1|t>>>31}let l=(o<<5|o>>>27)+a+Po[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 Go=po._createHelper(Zo),Jo=po._createHmacHelper(Zo),Yo=[],Ko=[],Wo=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},qo=t=>4294967296*(t-(0|t))|0;let Qo=2,Xo=0;for(;Xo<64;)Wo(Qo)&&(Xo<8&&(Yo[Xo]=qo(Qo**.5)),Ko[Xo]=qo(Qo**(1/3)),Xo+=1),Qo+=1;const tn=[];class en extends po{_doReset(){this._hash=new ao(Yo.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)tn[i]=0|t[e+i];else{const t=tn[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,o=tn[i-2],n=(o<<15|o>>>17)^(o<<13|o>>>19)^o>>>10;tn[i]=e+tn[i-7]+n+tn[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)+Ko[i]+tn[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 on=po._createHelper(en),nn=po._createHmacHelper(en);class sn extends en{_doReset(){this._hash=new ao([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const rn=en._createHelper(sn),an=en._createHmacHelper(sn),ln=[new fo(1116352408,3609767458),new fo(1899447441,602891725),new fo(3049323471,3964484399),new fo(3921009573,2173295548),new fo(961987163,4081628472),new fo(1508970993,3053834265),new fo(2453635748,2937671579),new fo(2870763221,3664609560),new fo(3624381080,2734883394),new fo(310598401,1164996542),new fo(607225278,1323610764),new fo(1426881987,3590304994),new fo(1925078388,4068182383),new fo(2162078206,991336113),new fo(2614888103,633803317),new fo(3248222580,3479774868),new fo(3835390401,2666613458),new fo(4022224774,944711139),new fo(264347078,2341262773),new fo(604807628,2007800933),new fo(770255983,1495990901),new fo(1249150122,1856431235),new fo(1555081692,3175218132),new fo(1996064986,2198950837),new fo(2554220882,3999719339),new fo(2821834349,766784016),new fo(2952996808,2566594879),new fo(3210313671,3203337956),new fo(3336571891,1034457026),new fo(3584528711,2466948901),new fo(113926993,3758326383),new fo(338241895,168717936),new fo(666307205,1188179964),new fo(773529912,1546045734),new fo(1294757372,1522805485),new fo(1396182291,2643833823),new fo(1695183700,2343527390),new fo(1986661051,1014477480),new fo(2177026350,1206759142),new fo(2456956037,344077627),new fo(2730485921,1290863460),new fo(2820302411,3158454273),new fo(3259730800,3505952657),new fo(3345764771,106217008),new fo(3516065817,3606008344),new fo(3600352804,1432725776),new fo(4094571909,1467031594),new fo(275423344,851169720),new fo(430227734,3100823752),new fo(506948616,1363258195),new fo(659060556,3750685593),new fo(883997877,3785050280),new fo(958139571,3318307427),new fo(1322822218,3812723403),new fo(1537002063,2003034995),new fo(1747873779,3602036899),new fo(1955562222,1575990012),new fo(2024104815,1125592928),new fo(2227730452,2716904306),new fo(2361852424,442776044),new fo(2428436474,593698344),new fo(2756734187,3733110249),new fo(3204031479,2999351573),new fo(3329325298,3815920427),new fo(3391569614,3928383900),new fo(3515267271,566280711),new fo(3940187606,3454069534),new fo(4118630271,4000239992),new fo(116418474,1914138554),new fo(174292421,2731055270),new fo(289380356,3203993006),new fo(460393269,320620315),new fo(685471733,587496836),new fo(852142971,1086792851),new fo(1017036298,365543100),new fo(1126000580,2618297676),new fo(1288033470,3409855158),new fo(1501505948,4234509866),new fo(1607167915,987167468),new fo(1816402316,1246189591)],cn=[];for(let t=0;t<80;t+=1)cn[t]=new fo;class dn extends po{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new go([new fo(1779033703,4089235720),new fo(3144134277,2227873595),new fo(1013904242,4271175723),new fo(2773480762,1595750129),new fo(1359893119,2917565137),new fo(2600822924,725511199),new fo(528734635,4215389547),new fo(1541459225,327033209)])}_doProcessBlock(t,e){const i=this._hash.words,o=i[0],n=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],d=i[7],h=o.high;let u=o.low;const p=n.high;let v=n.low;const m=s.high;let f=s.low;const g=r.high;let w=r.low;const C=a.high;let y=a.low;const b=l.high;let x=l.low;const E=c.high;let M=c.low;const S=d.high;let k=d.low,N=h,_=u,I=p,T=v,F=m,A=f,L=g,D=w,j=C,$=y,O=b,z=x,U=E,V=M,R=S,B=k;for(let i=0;i<80;i+=1){let o,n;const s=cn[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=cn[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=cn[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=cn[i-7],m=v.high,f=v.low,g=cn[i-16],w=g.high,C=g.low;o=l+f,n=a+m+(o>>>0<l>>>0?1:0),o+=p,n=n+u+(o>>>0<p>>>0?1:0),o+=C,n=n+w+(o>>>0<C>>>0?1:0),s.high=n,s.low=o}const r=j&O^~j&U,a=$&z^~$&V,l=N&I^N&F^I&F,c=_&T^_&A^T&A,d=(N>>>28|_<<4)^(N<<30|_>>>2)^(N<<25|_>>>7),h=(_>>>28|N<<4)^(_<<30|N>>>2)^(_<<25|N>>>7),u=(j>>>14|$<<18)^(j>>>18|$<<14)^(j<<23|$>>>9),p=($>>>14|j<<18)^($>>>18|j<<14)^($<<23|j>>>9),v=ln[i],m=v.high,f=v.low;let g=B+p,w=R+u+(g>>>0<B>>>0?1:0);g+=a,w=w+r+(g>>>0<a>>>0?1:0),g+=f,w=w+m+(g>>>0<f>>>0?1:0),g+=o,w=w+n+(g>>>0<o>>>0?1:0);const C=h+c;R=U,B=V,U=O,V=z,O=j,z=$,$=D+g|0,j=L+w+($>>>0<D>>>0?1:0)|0,L=F,D=A,F=I,A=T,I=N,T=_,_=g+C|0,N=w+(d+l+(C>>>0<h>>>0?1:0))+(_>>>0<g>>>0?1:0)|0}o.low=u+_,u=o.low,o.high=h+N+(u>>>0<_>>>0?1:0),n.low=v+T,v=n.low,n.high=p+I+(v>>>0<T>>>0?1:0),s.low=f+A,f=s.low,s.high=m+F+(f>>>0<A>>>0?1:0),r.low=w+D,w=r.low,r.high=g+L+(w>>>0<D>>>0?1:0),a.low=y+$,y=a.low,a.high=C+j+(y>>>0<$>>>0?1:0),l.low=x+z,x=l.low,l.high=b+O+(x>>>0<z>>>0?1:0),c.low=M+V,M=c.low,c.high=E+U+(M>>>0<V>>>0?1:0),d.low=k+B,k=d.low,d.high=S+R+(k>>>0<B>>>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 hn=po._createHelper(dn),un=po._createHmacHelper(dn);class pn extends dn{_doReset(){this._hash=new go([new fo(3418070365,3238371032),new fo(1654270250,914150663),new fo(2438529370,812702999),new fo(355462360,4144912697),new fo(1731405415,4290775857),new fo(2394180231,1750603025),new fo(3675008525,1694076839),new fo(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const vn=dn._createHelper(pn),mn=dn._createHmacHelper(pn),fn=[],gn=[],wn=[];let Cn=1,yn=0;for(let t=0;t<24;t+=1){fn[Cn+5*yn]=(t+1)*(t+2)/2%64;const e=(2*Cn+3*yn)%5;Cn=yn%5,yn=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)gn[t+5*e]=e+(2*t+3*e)%5*5;let bn=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&bn){const o=(1<<t)-1;o<32?i^=1<<o:e^=1<<o-32}128&bn?bn=bn<<1^113:bn<<=1}wn[t]=fo.create(e,i)}const xn=[];for(let t=0;t<25;t+=1)xn[t]=fo.create();class En extends po{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 fo;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=xn[t];n.high=e,n.low=o}for(let t=0;t<5;t+=1){const e=xn[(t+4)%5],o=xn[(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=fn[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=xn[gn[t]];l.high=e,l.low=o}const e=xn[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=xn[o],r=xn[(t+1)%5+5*e],a=xn[(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=wn[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 ao(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 Mn=po._createHelper(En),Sn=po._createHmacHelper(En),kn=ao.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]),Nn=ao.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]),_n=ao.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]),In=ao.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]),Tn=ao.create([0,1518500249,1859775393,2400959708,2840853838]),Fn=ao.create([1352829926,1548603684,1836072691,2053994217,0]),An=(t,e,i)=>t^e^i,Ln=(t,e,i)=>t&e|~t&i,Dn=(t,e,i)=>(t|~e)^i,jn=(t,e,i)=>t&i|e&~i,$n=(t,e,i)=>t^(e|~i),On=(t,e)=>t<<e|t>>>32-e;class zn extends po{_doReset(){this._hash=ao.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=Tn.words,s=Fn.words,r=kn.words,a=Nn.words,l=_n.words,c=In.words;let d,h=o[0],u=o[1],p=o[2],v=o[3],m=o[4],f=o[0],g=o[1],w=o[2],C=o[3],y=o[4];for(let t=0;t<80;t+=1)d=h+i[e+r[t]]|0,d+=t<16?An(u,p,v)+n[0]:t<32?Ln(u,p,v)+n[1]:t<48?Dn(u,p,v)+n[2]:t<64?jn(u,p,v)+n[3]:$n(u,p,v)+n[4],d|=0,d=On(d,l[t]),d=d+m|0,h=m,m=v,v=On(p,10),p=u,u=d,d=f+i[e+a[t]]|0,d+=t<16?$n(g,w,C)+s[0]:t<32?jn(g,w,C)+s[1]:t<48?Dn(g,w,C)+s[2]:t<64?Ln(g,w,C)+s[3]:An(g,w,C)+s[4],d|=0,d=On(d,c[t]),d=d+y|0,f=y,y=C,C=On(w,10),w=g,g=d;d=o[1]+p+C|0,o[1]=o[2]+v+y|0,o[2]=o[3]+m+f|0,o[3]=o[4]+h+g|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 Un=po._createHelper(zn),Vn=po._createHmacHelper(zn);class Rn extends ro{constructor(t){super(),this.cfg=Object.assign(new ro,{keySize:4,hasher:Zo,iterations:1},t)}compute(t,e){const{cfg:i}=this,o=vo.create(i.hasher,t),n=ao.create(),s=ao.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 Bn=[],Hn=[],Pn=[],Zn=[],Gn=[],Jn=[],Yn=[],Kn=[],Wn=[],qn=[],Qn=[];for(let t=0;t<256;t+=1)Qn[t]=t<128?t<<1:t<<1^283;let Xn=0,ts=0;for(let t=0;t<256;t+=1){let t=ts^ts<<1^ts<<2^ts<<3^ts<<4;t=t>>>8^255&t^99,Bn[Xn]=t,Hn[t]=Xn;const e=Qn[Xn],i=Qn[e],o=Qn[i];let n=257*Qn[t]^16843008*t;Pn[Xn]=n<<24|n>>>8,Zn[Xn]=n<<16|n>>>16,Gn[Xn]=n<<8|n>>>24,Jn[Xn]=n,n=16843009*o^65537*i^257*e^16843008*Xn,Yn[t]=n<<24|n>>>8,Kn[t]=n<<16|n>>>16,Wn[t]=n<<8|n>>>24,qn[t]=n,Xn?(Xn=e^Qn[Qn[Qn[o^e]]],ts^=Qn[Qn[ts]]):(ts=1,Xn=ts)}const es=[0,1,2,4,8,16,32,64,128,27,54];class is extends Do{_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=Bn[t>>>24]<<24|Bn[t>>>16&255]<<16|Bn[t>>>8&255]<<8|Bn[255&t]):(t=t<<8|t>>>24,t=Bn[t>>>24]<<24|Bn[t>>>16&255]<<16|Bn[t>>>8&255]<<8|Bn[255&t],t^=es[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:Yn[Bn[t>>>24]]^Kn[Bn[t>>>16&255]]^Wn[Bn[t>>>8&255]]^qn[Bn[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,Pn,Zn,Gn,Jn,Bn)}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,Yn,Kn,Wn,qn,Hn),o=i[e+1],i[e+1]=i[e+3],i[e+3]=o}_doCryptBlock(t,e,i,o,n,s,r,a){const l=t,c=this._nRounds;let d=l[e]^i[0],h=l[e+1]^i[1],u=l[e+2]^i[2],p=l[e+3]^i[3],v=4;for(let t=1;t<c;t+=1){const t=o[d>>>24]^n[h>>>16&255]^s[u>>>8&255]^r[255&p]^i[v];v+=1;const e=o[h>>>24]^n[u>>>16&255]^s[p>>>8&255]^r[255&d]^i[v];v+=1;const a=o[u>>>24]^n[p>>>16&255]^s[d>>>8&255]^r[255&h]^i[v];v+=1;const l=o[p>>>24]^n[d>>>16&255]^s[h>>>8&255]^r[255&u]^i[v];v+=1,d=t,h=e,u=a,p=l}const m=(a[d>>>24]<<24|a[h>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[v];v+=1;const f=(a[h>>>24]<<24|a[u>>>16&255]<<16|a[p>>>8&255]<<8|a[255&d])^i[v];v+=1;const g=(a[u>>>24]<<24|a[p>>>16&255]<<16|a[d>>>8&255]<<8|a[255&h])^i[v];v+=1;const w=(a[p>>>24]<<24|a[d>>>16&255]<<16|a[h>>>8&255]<<8|a[255&u])^i[v];v+=1,l[e]=m,l[e+1]=f,l[e+2]=g,l[e+3]=w}}is.keySize=8;const os=Do._createHelper(is),ns=[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],ss=[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],rs=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],as=[{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}],ls=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function cs(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function ds(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class hs extends Do{_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const o=ns[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=rs[t];for(let t=0;t<24;t+=1)o[t/6|0]|=e[(ss[t]-1+n)%28]<<31-t%6,o[4+(t/6|0)]|=e[28+(ss[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],cs.call(this,4,252645135),cs.call(this,16,65535),ds.call(this,2,858993459),ds.call(this,8,16711935),cs.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|=as[t][((n^e[t])&ls[t])>>>0];this._lBlock=n,this._rBlock=o^s}const n=this._lBlock;this._lBlock=this._rBlock,this._rBlock=n,cs.call(this,1,1431655765),ds.call(this,8,16711935),ds.call(this,2,858993459),cs.call(this,16,65535),cs.call(this,4,252645135),o[e]=this._lBlock,o[e+1]=this._rBlock}}hs.keySize=2,hs.ivSize=2,hs.blockSize=2;const us=Do._createHelper(hs);class ps extends Do{_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=hs.createEncryptor(ao.create(e)),this._des2=hs.createEncryptor(ao.create(i)),this._des3=hs.createEncryptor(ao.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)}}ps.keySize=6,ps.ivSize=2,ps.blockSize=2;const vs=Do._createHelper(ps),ms=[],fs=[],gs=[];function ws(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)fs[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<fs[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<fs[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<fs[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<fs[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<fs[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<fs[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<fs[6]>>>0?1:0)|0,this._b=e[7]>>>0<fs[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);gs[i]=r^a}t[0]=gs[0]+(gs[7]<<16|gs[7]>>>16)+(gs[6]<<16|gs[6]>>>16)|0,t[1]=gs[1]+(gs[0]<<8|gs[0]>>>24)+gs[7]|0,t[2]=gs[2]+(gs[1]<<16|gs[1]>>>16)+(gs[0]<<16|gs[0]>>>16)|0,t[3]=gs[3]+(gs[2]<<8|gs[2]>>>24)+gs[1]|0,t[4]=gs[4]+(gs[3]<<16|gs[3]>>>16)+(gs[2]<<16|gs[2]>>>16)|0,t[5]=gs[5]+(gs[4]<<8|gs[4]>>>24)+gs[3]|0,t[6]=gs[6]+(gs[5]<<16|gs[5]>>>16)+(gs[4]<<16|gs[4]>>>16)|0,t[7]=gs[7]+(gs[6]<<8|gs[6]>>>24)+gs[5]|0}class Cs extends Io{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)ws.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)ws.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;ws.call(this),ms[0]=o[0]^o[5]>>>16^o[3]<<16,ms[1]=o[2]^o[7]>>>16^o[5]<<16,ms[2]=o[4]^o[1]>>>16^o[7]<<16,ms[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)ms[t]=16711935&(ms[t]<<8|ms[t]>>>24)|4278255360&(ms[t]<<24|ms[t]>>>8),i[e+t]^=ms[t]}}const ys=Io._createHelper(Cs),bs=[],xs=[],Es=[];function Ms(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)xs[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<xs[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<xs[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<xs[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<xs[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<xs[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<xs[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<xs[6]>>>0?1:0)|0,this._b=e[7]>>>0<xs[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);Es[i]=r^a}t[0]=Es[0]+(Es[7]<<16|Es[7]>>>16)+(Es[6]<<16|Es[6]>>>16)|0,t[1]=Es[1]+(Es[0]<<8|Es[0]>>>24)+Es[7]|0,t[2]=Es[2]+(Es[1]<<16|Es[1]>>>16)+(Es[0]<<16|Es[0]>>>16)|0,t[3]=Es[3]+(Es[2]<<8|Es[2]>>>24)+Es[1]|0,t[4]=Es[4]+(Es[3]<<16|Es[3]>>>16)+(Es[2]<<16|Es[2]>>>16)|0,t[5]=Es[5]+(Es[4]<<8|Es[4]>>>24)+Es[3]|0,t[6]=Es[6]+(Es[5]<<16|Es[5]>>>16)+(Es[4]<<16|Es[4]>>>16)|0,t[7]=Es[7]+(Es[6]<<8|Es[6]>>>24)+Es[5]|0}class Ss extends Io{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)Ms.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)Ms.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;Ms.call(this),bs[0]=o[0]^o[5]>>>16^o[3]<<16,bs[1]=o[2]^o[7]>>>16^o[5]<<16,bs[2]=o[4]^o[1]>>>16^o[7]<<16,bs[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)bs[t]=16711935&(bs[t]<<8|bs[t]>>>24)|4278255360&(bs[t]<<24|bs[t]>>>8),i[e+t]^=bs[t]}}const ks=Io._createHelper(Ss);function Ns(){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 _s extends Io{_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]^=Ns.call(this)}}_s.keySize=8,_s.ivSize=0;const Is=Io._createHelper(_s);class Ts extends _s{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)Ns.call(this)}}const Fs=Io._createHelper(Ts);function As(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 Ls extends To{}Ls.Encryptor=class extends Ls{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;As.call(this,t,e,o,i),this._prevBlock=t.slice(e,e+o)}},Ls.Decryptor=class extends Ls{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);As.call(this,t,e,o,i),this._prevBlock=n}};class Ds extends To{}Ds.Encryptor=class extends Ds{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]}},Ds.Decryptor=Ds.Encryptor;const js=t=>{let e=t;if(255==(t>>24&255)){let i=t>>16&255,o=t>>8&255,n=255&t;255===i?(i=0,255===o?(o=0,255===n?n=0:n+=1):o+=1):i+=1,e=0,e+=i<<16,e+=o<<8,e+=n}else e+=1<<24;return e};
|
|
902
902
|
/** @preserve
|
|
903
903
|
* Counter block mode compatible with Dr Brian Gladman fileenc.c
|
|
904
904
|
* derived from CryptoJS.mode.CTR
|
|
905
905
|
* Jan Hruby jhruby.web@gmail.com
|
|
906
906
|
*/
|
|
907
|
-
class $s extends To{}$s.Encryptor=class extends $s{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]=js(e[0]),0===e[0]&&(e[1]=js(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]}},$s.Decryptor=$s.Encryptor;class Os extends To{}Os.Encryptor=class extends Os{processBlock(t,e){this._cipher.encryptBlock(t,e)}},Os.Decryptor=class extends Os{processBlock(t,e){this._cipher.decryptBlock(t,e)}};class zs extends To{}zs.Encryptor=class extends zs{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]}},zs.Decryptor=zs.Encryptor;const Us={pad(t,e){const i=4*e,o=i-t.sigBytes%i;t.concat(ao.random(o-1)).concat(ao.create([o<<24],1))},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Vs={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}}},Rs={pad(t,e){t.concat(ao.create([2147483648],1)),Vs.pad(t,e)},unpad(t){const e=t;Vs.unpad(e),e.sigBytes-=1}},Bs={stringify:t=>t.ciphertext.toString(lo),parse(t){const e=lo.parse(t);return jo.create({ciphertext:e})}};var Hs={lib:{Base:ro,WordArray:ao,BufferedBlockAlgorithm:uo,Hasher:po,Cipher:_o,StreamCipher:Io,BlockCipherMode:To,BlockCipher:Do,CipherParams:jo,SerializableCipher:Oo,PasswordBasedCipher:Uo},x64:{Word:fo,WordArray:go},enc:{Hex:lo,Latin1:co,Utf8:ho,Utf16:Bo,Utf16BE:Ro,Utf16LE:Ho,Base64:wo},algo:{HMAC:vo,MD5:Mo,SHA1:Zo,SHA224:sn,SHA256:en,SHA384:pn,SHA512:dn,SHA3:En,RIPEMD160:zn,PBKDF2:Rn,EvpKDF:No,AES:is,DES:hs,TripleDES:ps,Rabbit:Cs,RabbitLegacy:Ss,RC4:_s,RC4Drop:Ts},mode:{CBC:Ao,CFB:Ls,CTR:Ds,CTRGladman:$s,ECB:Os,OFB:zs},pad:{Pkcs7:Lo,AnsiX923:{pad(t,e){const i=t,o=i.sigBytes,n=4*e,s=n-o%n,r=o+s-1;i.clamp(),i.words[r>>>2]|=s<<24-r%4*8,i.sigBytes+=s},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Iso10126:Us,Iso97971:Rs,NoPadding:{pad(){},unpad(){}},ZeroPadding:Vs},format:{OpenSSL:$o,Hex:Bs},kdf:{OpenSSL:zo},MD5:So,HmacMD5:ko,SHA1:Go,HmacSHA1:
|
|
907
|
+
class $s extends To{}$s.Encryptor=class extends $s{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]=js(e[0]),0===e[0]&&(e[1]=js(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]}},$s.Decryptor=$s.Encryptor;class Os extends To{}Os.Encryptor=class extends Os{processBlock(t,e){this._cipher.encryptBlock(t,e)}},Os.Decryptor=class extends Os{processBlock(t,e){this._cipher.decryptBlock(t,e)}};class zs extends To{}zs.Encryptor=class extends zs{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]}},zs.Decryptor=zs.Encryptor;const Us={pad(t,e){const i=4*e,o=i-t.sigBytes%i;t.concat(ao.random(o-1)).concat(ao.create([o<<24],1))},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Vs={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}}},Rs={pad(t,e){t.concat(ao.create([2147483648],1)),Vs.pad(t,e)},unpad(t){const e=t;Vs.unpad(e),e.sigBytes-=1}},Bs={stringify:t=>t.ciphertext.toString(lo),parse(t){const e=lo.parse(t);return jo.create({ciphertext:e})}};var Hs={lib:{Base:ro,WordArray:ao,BufferedBlockAlgorithm:uo,Hasher:po,Cipher:_o,StreamCipher:Io,BlockCipherMode:To,BlockCipher:Do,CipherParams:jo,SerializableCipher:Oo,PasswordBasedCipher:Uo},x64:{Word:fo,WordArray:go},enc:{Hex:lo,Latin1:co,Utf8:ho,Utf16:Bo,Utf16BE:Ro,Utf16LE:Ho,Base64:wo},algo:{HMAC:vo,MD5:Mo,SHA1:Zo,SHA224:sn,SHA256:en,SHA384:pn,SHA512:dn,SHA3:En,RIPEMD160:zn,PBKDF2:Rn,EvpKDF:No,AES:is,DES:hs,TripleDES:ps,Rabbit:Cs,RabbitLegacy:Ss,RC4:_s,RC4Drop:Ts},mode:{CBC:Ao,CFB:Ls,CTR:Ds,CTRGladman:$s,ECB:Os,OFB:zs},pad:{Pkcs7:Lo,AnsiX923:{pad(t,e){const i=t,o=i.sigBytes,n=4*e,s=n-o%n,r=o+s-1;i.clamp(),i.words[r>>>2]|=s<<24-r%4*8,i.sigBytes+=s},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Iso10126:Us,Iso97971:Rs,NoPadding:{pad(){},unpad(){}},ZeroPadding:Vs},format:{OpenSSL:$o,Hex:Bs},kdf:{OpenSSL:zo},MD5:So,HmacMD5:ko,SHA1:Go,HmacSHA1:Jo,SHA224:rn,HmacSHA224:an,SHA256:on,HmacSHA256:nn,SHA384:vn,HmacSHA384:mn,SHA512:hn,HmacSHA512:un,SHA3:Mn,HmacSHA3:Sn,RIPEMD160:Un,HmacRIPEMD160:Vn,PBKDF2:(t,e,i)=>Rn.create(i).compute(t,e),EvpKDF:(t,e,i)=>No.create(i).compute(t,e),AES:os,DES:us,TripleDES:vs,Rabbit:ys,RabbitLegacy:ks,RC4:Is,RC4Drop:Fs};const Ps=(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),nr("Error in setLocalStorage: ",t)}},Zs=(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),nr("Error in getLocalStorage: ",t),null}},Gs=(t,e="localStorage")=>{try{"localStorage"===e?localStorage.removeItem(t):sessionStorage.removeItem(t)}catch(t){console.warn("Error in removeLocalStorageData: ",t),nr("Error in removeLocalStorageData: ",t)}},Js=(...t)=>{if(t)switch(t.length){case 1:return a`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1))`;case 2:return a`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))`;case 3:return a`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
|
|
908
908
|
calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1))`;case 4:return a`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
|
|
909
|
-
calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[3]}rem * var(--snippyly-base-rem-unit, 1))`}return a`0`},
|
|
909
|
+
calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[3]}rem * var(--snippyly-base-rem-unit, 1))`}return a`0`},Ys=(t,e,i)=>{try{const o=Hs.enc.Utf8.parse(e),n=Hs.enc.Utf8.parse(i);return Hs.AES.encrypt(Hs.enc.Utf8.parse(t),o,{keySize:32,iv:n,mode:Hs.mode.CBC,padding:Hs.pad.Pkcs7}).toString()}catch(e){return console.warn("Error in encrypt: ",e),nr("Error in encrypt: ",e),t}},Ks=(t,e,i)=>{try{const o=Hs.enc.Utf8.parse(e),n=Hs.enc.Utf8.parse(i);return Hs.AES.decrypt(t,o,{keySize:32,iv:n,mode:Hs.mode.CBC,padding:Hs.pad.Pkcs7}).toString(Hs.enc.Utf8)}catch(t){return console.warn("Error in decrypt: ",t),nr("Error in decrypt: ",t),null}},Ws=()=>{try{const t=Zs(ut,!0);if(t){const e=Ks(t,$t,Ot);if(e)return JSON.parse(e);console.warn("Error in getUserFromToken: ","Invalid token."),Gs(ut)}else{const t=Zs(dt,!0);if(t)return qs(),JSON.parse(t)}return null}catch(t){return console.warn("Error in getUserFromToken: ",t),nr("Error in getUserFromToken: ",t),null}},qs=()=>{try{const t=Zs(dt,!0);if(t){const e=Ys(t,$t,Ot);Ps(ut,e,!0)}Gs(dt)}catch(t){console.warn("Error in moveSnippylyUserToST: ",t),nr("Error in moveSnippylyUserToST: ",t)}},Qs=(t=!0)=>{try{const e=Zs(pt,!0);if(e){const t=Ks(e,$t,Ot);return t?JSON.parse(t):null}if(t){const t=Dt,e=t[Math.floor(Math.random()*t.length)],i=e.name,o=e.photoUrl,n={name:i,email:"guest@usesuperflow.com",userId:Math.floor(1e9*Math.random())+"",photoUrl:o,isGuest:!0},s=JSON.stringify(n),r=Ys(s,$t,Ot);return Ps(pt,r,!0),n}return null}catch(t){return console.warn("Error in getGuestUser: ",t),nr("Error in getGuestUser: ",t),null}},Xs=function(t=function(t="[DEFAULT]"){const e=De.get(t);if(!e&&t===Ae)return Ve();if(!e)throw ze.create("no-app",{appName:t});return e}(),e="us-central1"){const i=function(t,e){const i=t.container.getProvider("heartbeat").getImmediate({optional:!0});return i&&i.triggerHeartbeat(),t.container.getProvider(e)}(ee(t),ei),o=i.getImmediate({identifier:e}),n=Zt("functions");return n&&function(t,e,i){!function(t,e,i){t.emulatorOrigin=`http://${e}:${i}`}(ee(t),e,i)}(o,...n),o}(Ve({apiKey:"AIzaSyAzcW2n1JhY_zhkXmuFcwe550AkwmYeJ0w",projectId:"snipply-sdk-staging",messagingSenderId:"877538579326",appId:"1:877538579326:web:f793f73f2b7dc770c4992f"}));let tr,er={};const ir=(t={})=>{er={...er,...t}},or=t=>{tr=t},nr=(t,e,i={})=>{const o={error:t,message:(null==e?void 0:e.message)||e||t,...i};sr("error",o)},sr=(t,e={},i=!0)=>{try{if(null==tr?void 0:tr.userSnippylyId){e=i?{...er,...e}:e,e={...e,source:"superflowToolbar"};const o={userId:null==tr?void 0:tr.userSnippylyId,event:t,properties:e,sf:!0};rr("track",o)}else console.warn("Untracked event: ",t,e)}catch(t){console.warn("Error in trackEvent: ",t)}},rr=(t,e)=>{try{hi(Xs,"sa")({type:t,data:e})}catch(t){console.warn("Error in setAnalytics: ",t)}},ar=async(t,e,i,o,n)=>{try{const s=hi(Xs,"usermigration"),r=await s({apiKey:t,projectId:e,oldUser:i,newUser:o,deleteGuestUserFlag:n});return null==r?void 0:r.data}catch(t){return console.warn("Error in usermigration: ",t),null}},lr=a`
|
|
910
910
|
|
|
911
911
|
.wrap {
|
|
912
912
|
padding: 32px;
|
|
@@ -1259,8 +1259,8 @@ class $s extends To{}$s.Encryptor=class extends $s{processBlock(t,e){const i=t,o
|
|
|
1259
1259
|
bottom: 0;
|
|
1260
1260
|
right: 0;
|
|
1261
1261
|
z-index: 2147483577;
|
|
1262
|
-
margin: ${
|
|
1263
|
-
margin-bottom: ${
|
|
1262
|
+
margin: ${Js(1.5)};
|
|
1263
|
+
margin-bottom: ${Js(3)}; // Added to prevent overlap between plugin UI and webflow badge
|
|
1264
1264
|
max-width: 100vw !important;
|
|
1265
1265
|
box-sizing: border-box;
|
|
1266
1266
|
|
|
@@ -1514,7 +1514,7 @@ class $s extends To{}$s.Encryptor=class extends $s{processBlock(t,e){const i=t,o
|
|
|
1514
1514
|
}
|
|
1515
1515
|
|
|
1516
1516
|
.s-presence-avatar-image-small {
|
|
1517
|
-
width: ${
|
|
1517
|
+
width: ${Js(1.6)};
|
|
1518
1518
|
height: auto;
|
|
1519
1519
|
display: block;
|
|
1520
1520
|
}
|
|
@@ -1606,7 +1606,7 @@ class $s extends To{}$s.Encryptor=class extends $s{processBlock(t,e){const i=t,o
|
|
|
1606
1606
|
|
|
1607
1607
|
.s-user-avatar-initial {
|
|
1608
1608
|
color: black !important;
|
|
1609
|
-
font-size: ${
|
|
1609
|
+
font-size: ${Js(.8)} !important;
|
|
1610
1610
|
position: relative !important;
|
|
1611
1611
|
}
|
|
1612
1612
|
|
|
@@ -2241,7 +2241,7 @@ class $s extends To{}$s.Encryptor=class extends $s{processBlock(t,e){const i=t,o
|
|
|
2241
2241
|
display: flex;
|
|
2242
2242
|
}
|
|
2243
2243
|
}
|
|
2244
|
-
`;navigator.language.split("-")[0];const dr=new Map;dr.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"}),dr.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"}),dr.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:"आगामी"}),dr.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"}),dr.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:"Далее"}),dr.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 hr=t=>{try{return t}catch(e){return t}};class ur{}ur.Events={GUEST_MODE_SIGN_IN_DIALOG_SHOWN:"guestModeSignInDialogShown",GUEST_MODE_NAME_DIALOG_SHOWN:"guestModeNameDialogShown",GUEST_MODE_SIGN_IN_BANNER_SHOWN:"guestModeSignInBannerShown",GUEST_MODE_SIGN_IN_BUTTON_CLICKED:"guestModeSignInButtonClicked",GUEST_MODE_SKIP_BUTTON_CLICKED:"guestModeSkipButtonClicked",GUEST_MODE_NAME_ADDED:"guestModeNameAdded",TOOLBAR_NOTIFICATION_CLICKED:"toolbarNotificationClicked"};var pr=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 vr extends X{constructor(){super(),this._loadPlugin=!1,this.comments=[],this.addCommentMode=!1,this.showTourCommentTooltip=!1,this.allFeatureDisabled=!1,this.allFeatureRestricted=!1,this.guestMode=!1,this._expanded=!0,this.loading=!0,this._isPlanExpired=null,this.showOnboardingModal=!0,this.showLiveDemoModal=!1,this.showFigmaDemoModal=!1,this.showGuestModeSignInModal=!1,this.defaultGuestModeSignInModalConfig={title:"Sign in to notify your team",description:"Notify your team about your latest comments.",closeOnClickOutside:!1,showLeaveCommentButton:!0},this.guestModeSignInModalConfig=JSON.parse(JSON.stringify(this.defaultGuestModeSignInModalConfig)),this.showGuestModeNameModal=!1,this.guestModeSignInBannerVisible=!1,this.guestUserNameInput="",this.guestUserModelOpened=!1,this.guestUserNameUpdated=!1,this.guestUserNameUpdateLoading=!1,this.staging=true,this.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.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),nr("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await(t=>{const e={apiKey:t};return hi(Xs,"customLoginEnabled")(e)})(this.apiKey);this.customLoginEnabled=!!(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.customLoginEnabled),this.customLoginEnabled&&this.loginWithCustomUser()}catch(t){this.customLoginEnabled=!1,console.warn("Error in checkCustomLoginEnabled: ",t),nr("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(Gs(ut),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),nr("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),nr("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),nr("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),nr("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),nr("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{const t=new URL(document.location),e=t.searchParams;if((null==e?void 0:e.has(gt))&&!Zs(gt)?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has(wt))if(Zs(wt,!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(wt),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(Ct))if(Zs(Ct,!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Ct),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(ht)||e.has("snippyly_google_token")){if(e.has(ht)){const t=decodeURIComponent(e.get(ht)),i=Ks(t,$t,Ot),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=Js(e,$t,Ot);Ps(ut,i,!0),Gs(bt)}}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,Ps(dt,JSON.stringify(i),!0)}e.delete(ht),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has(at)?(Ps(at,"true",!1),Gs(lt),"true"!==e.get(at)&&(e.delete(at),e.append(at,"true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has(lt)||Zs(at,!1)&&(e.append(at,"true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),e.has(lt)?(Ps(lt,"true",!1),Gs(at),"true"!==e.get(lt)&&(e.delete(lt),e.append(lt,"true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has(at)||Zs(lt,!1)&&(e.append(lt,"true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),nr("Error in checkUrl: ",t)}},this.detectVersion=()=>{try{if(this.projectVersionKey){const t=new URL(document.location).searchParams;if(t.get(this.projectVersionKey))this.projectVersion=t.get(this.projectVersionKey);else if(window.snippylyInitialLoadUrl){const t=new URL(window.snippylyInitialLoadUrl).searchParams;t.get(this.projectVersionKey)&&(this.projectVersion=t.get(this.projectVersionKey))}this.projectVersion&&Ps(mt,this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has(at)||t.has(lt))&&t.has(ft)&&(Ps(vt,ft,!1,"sessionStorage"),this.projectVersion=t.get(ft),this.projectVersion&&Ps(mt,this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),nr("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||Zs(vt,!1,"sessionStorage"),e=this.projectVersion||Zs(mt,!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),nr("Error in setVersionInUrl: ",t)}},this.loadPluginUI=()=>{try{if(!this.apiKey)return;if(this.loadPlugin)return this.generateLocation(),void this.setLocation();const t=Ws();if(t&&!(null==t?void 0:t.isAnonymous)&&(this.loading=!0),this.loadPlugin=!0,!document.querySelector(Nt)){const t=document.createElement(Nt);null==t||t.addEventListener("onSignIn",(()=>{this.loginWithGoogle()})),null==t||t.addEventListener("onUpgrade",(()=>{this.onUpgradePlanClick()})),this.staging&&(t.addEventListener("onCommentAdd",(t=>{console.log("Comment added: ",null==t?void 0:t.detail),this.addCommentCount++})),t.addEventListener("onCommentUpdate",(t=>{var e,i;console.log("Comment updated: ",t.detail),(null===(e=this.snippylyUser)||void 0===e?void 0:e.isGuest)&&"add"===(null===(i=null==t?void 0:t.detail)||void 0===i?void 0:i.type)&&(this.addCommentCount>=2&&!Zs(Et)&&(this.openGuestModeSignInModal(),Ps(Et,"true")),this.addCommentCount>=5&&!Zs(St,!1,"sessionStorage")&&(this.showGuestModeSignInBanner(),Ps(St,"true",!1,"sessionStorage")))}))),window.document.body.appendChild(t)}if(!document.querySelector(kt)){const t=document.createElement(kt);window.document.body.appendChild(t)}if(!document.querySelector(It)){const t=document.createElement(It);window.document.body.appendChild(t)}if(!document.querySelector(Tt)){const t=document.createElement(Tt);window.document.body.appendChild(t)}if(!document.querySelector(Ft)){const t=document.createElement(Ft);window.document.body.appendChild(t)}if(!document.querySelector(At)){const t=document.createElement(At);window.document.body.appendChild(t)}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),nr("Error in loadPluginUI: ",t)}},this.initializeSnippyly=async()=>{var t,e,o,n,s,r,a,l,c,d,h,u,p,v;try{if(await i(this.apiKey,{options:{staging:this.staging,version:this.staging?"1.0.237":"latest",velt:!0}}),!window.Snippyly)return;if(this.autoTranslation&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.enableAutoTranslation)&&(null===Snippyly||void 0===Snippyly||Snippyly.enableAutoTranslation()),!document.querySelector(_t)){const t=document.createElement(_t);t.setAttribute(Lt,"true"),window.document.body.appendChild(t)}if(Snippyly){null===Snippyly||void 0===Snippyly||Snippyly.sf(!0);try{(null===window||void 0===window?void 0:window.onSnippylyLoad)&&(null===window||void 0===window||window.onSnippylyLoad(Snippyly))}catch(t){}document.body.style.setProperty("--velt-default-font-family","'Poppins', sans-serif"),(()=>{try{if(!document.getElementById("superflowFontLink1")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.googleapis.com",t.id="superflowFontLink1",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink2")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.gstatic.com",t.crossOrigin="anonymous",t.id="superflowFontLink2",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink3")){const t=document.createElement("link");t.rel="stylesheet",t.href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap",t.id="superflowFontLink3",document.head.appendChild(t)}}catch(t){console.warn("Error in loadPoppinsFont: ",t),nr("Error in loadPoppinsFont: ",t)}})()}Snippyly&&ir({sdkVersion:null===Snippyly||void 0===Snippyly?void 0:Snippyly.version,sdkType:"client"}),this.documentId=((t,e=0)=>{try{let i=3735928559^e,o=1103547991^e;for(let e,n=0;n<t.length;n++)e=t.charCodeAt(n),i=Math.imul(i^e,2654435761),o=Math.imul(o^e,1597334677);return i=Math.imul(i^i>>>16,2246822507)^Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507)^Math.imul(i^i>>>13,3266489909),4294967296*(2097151&o)+(i>>>0)}catch(t){return console.warn("Error in cyrb53: ",t),nr("Error in cyrb53: ",t),0}})((t=>{let e;return e=t.includes("http")?new URL(t):new URL("http://"+t),e.hostname.replace("www.","")})(window.location.origin))+"",this.projectId&&(this.documentId=this.projectId+""),await(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setDocumentId(this.documentId+""));const m=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();if(ir({documentId:m,clientDocumentId:this.documentId}),this.generateLocation(),this.setLocation(),this.commentElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getCommentElement(),this.contactElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getContactElement(),this.rewriterElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getRewriterElement(),this.presenceElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getPresenceElement(),this.commentElement){this.commentElement.enableTextComments(!0),this.customLoginEnabledLocally||this.commentElement.enableSignInButton(!0),this.commentElement.enableAttachment(!0),(null===(t=this.commentElement)||void 0===t?void 0:t.showScreenSizeInfo)&&this.commentElement.showScreenSizeInfo(!0),(null===(e=this.commentElement)||void 0===e?void 0:e.showDeviceInfo)&&this.commentElement.showDeviceInfo(!0),this.commentElement.showCommentIndex(!0),this.commentElement.addCommentModeChange&&this.commentElement.addCommentModeChange().subscribe((t=>{this.addCommentMode=t})),(null===(o=this.commentElement)||void 0===o?void 0:o.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(null===(n=this.commentElement)||void 0===n?void 0:n.enableAutoCategorize)&&this.commentElement.enableAutoCategorize(),(null===(s=this.commentElement)||void 0===s?void 0:s.enablePersistentCommentMode)&&this.commentElement.enablePersistentCommentMode(),(null===(r=this.commentElement)||void 0===r?void 0:r.enableGhostComments)&&this.commentElement.enableGhostComments();const i=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;i&&"object"==typeof i&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatuses)&&this.commentElement.setCustomStatuses(i),(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()}this.selectionElement=Snippyly.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(u=this.rewriterElement)||void 0===u||u.enableRewriter()),this.presenceElement&&(null===(p=this.presenceElement)||void 0===p?void 0:p.enableFlockMode)&&(null===(v=this.presenceElement)||void 0===v||v.enableFlockMode(!0)),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),nr("Error in initializeSnippyly: ",t)}},this.checkToEnableUpgradeButton=()=>{var t,e;try{this.isPlanExpired&&this.isUserGlobalContact?(null===(t=this.commentElement)||void 0===t?void 0:t.enableUpgradeButton)&&this.commentElement.enableUpgradeButton():(null===(e=this.commentElement)||void 0===e?void 0:e.disableUpgradeButton)&&this.commentElement.disableUpgradeButton()}catch(t){console.warn("Error in checkToEnableUpgradeButton: ",t),nr("Error in checkToEnableUpgradeButton: ",t)}},this.generateLocation=()=>{try{const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete(at),e.searchParams.delete(lt),e.searchParams.delete(ct),e.searchParams.delete("scommentId"),e.searchParams.delete(gt),e.searchParams.delete(wt);const i=t.get(ft)||this.projectVersion;e.search="";let o=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),nr("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),nr("Error in generateLocation: ",t)}},this.setLocation=()=>{var t,e,i,o;try{if(window.Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setLocation)){if(this.previousLocation&&(null===(t=this.previousLocation)||void 0===t?void 0:t.url)===(null===(e=this.location)||void 0===e?void 0:e.url)&&(null===(i=this.previousLocation)||void 0===i?void 0:i.version)===(null===(o=this.location)||void 0===o?void 0:o.version))return;null===Snippyly||void 0===Snippyly||Snippyly.setLocation(JSON.parse(JSON.stringify(this.location))),ir({clientLocation:this.location}),this.previousLocation=JSON.parse(JSON.stringify(this.location))}}catch(t){console.warn("Error in setLocation: ",t),nr("Error in setLocation: ",t)}},this.identifySnippyly=async()=>{var t,e;let i="";try{this.invalidApiKey=!1;let e,o={name:"Anonymous User",email:"anonymous@snippyly.com",userId:"anonymous",isAnonymous:!0};if(e=this.customLoginEnabled&&this.providedUser?this.providedUser:Ws(),(null==e?void 0:e.email)&&(o=e),o.isAnonymous?delete o.groupId:o.groupId=Snippyly.getDocumentId()+"",this.customLoginEnabledLocally||(null===(t=null==o?void 0:o.contacts)||void 0===t?void 0:t.length)&&(o.contacts=[]),i=null==o?void 0:o.email,(null==o?void 0:o.isAnonymous)&&this.projectId){if(Zs(xt,!0))this.guestMode="true"===Zs(xt,!0);else{const t=await(async(t,e)=>{try{const i=hi(Xs,"checkguestmode"),o=await i({apiKey:t,projectId:e});return null==o?void 0:o.data}catch(t){return console.warn("Error in checkGuestMode: ",t),null}})(this.apiKey,this.projectId);this.guestMode=!!(null==t?void 0:t.guestMode),Ps(xt,this.guestMode+"",!0)}if(this.guestMode){const t=Qs();t&&(o=JSON.parse(JSON.stringify(t)))}}(null==o?void 0:o.isAnonymous)||(this.loading=!0);const n=await Snippyly.identify(o);or(JSON.parse(JSON.stringify(n||{}))),(null==o?void 0:o.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(o)));const s=JSON.parse(JSON.stringify(n||{}));(null==s?void 0:s.userSnippylyId)&&!(null==s?void 0:s.isGuest)&&this.checkToMigrateGuestUser(s),Snippyly.getUserRole$().subscribe((t=>{var e;this.loading=!1,this.snippylyUserRole=t,null===(e=this.commentElement)||void 0===e||e.enablePriority()})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getFeaturesAccessLevelIam$)&&Snippyly.getFeaturesAccessLevelIam$().subscribe((async t=>{var e,i,o;this.allFeatureDisabled=!!(null===(e=null==t?void 0:t.all)||void 0===e?void 0:e.disabled),this.allFeatureRestricted=!!(null===(i=null==t?void 0:t.all)||void 0===i?void 0:i.restricted),this.guestMode=!!(null===(o=null==t?void 0:t.all)||void 0===o?void 0:o.guestMode),Ps(xt,this.guestMode+"",!0)}),(t=>{this.loading=!1,console.warn("Error in getFeaturesAccessLevelIam$: ",t),nr("Error in getFeaturesAccessLevelIam$: ",t)})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.isPlanExpired$)&&(null===Snippyly||void 0===Snippyly||Snippyly.isPlanExpired$().subscribe((t=>{this.isPlanExpired=t}),(t=>{this.isPlanExpired=!1,console.warn("Error in isPlanExpired$: ",t),nr("Error in isPlanExpired$: ",t)}))),ir({clientUserId:null==o?void 0:o.userId}),this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{Zs(yt)||(this.showTourCommentTooltip=!0)}),2e3)}catch(t){if(this.loading=!1,this.signInError=!0,t&&"string"==typeof t&&(null===(e=null==t?void 0:t.toLowerCase())||void 0===e?void 0:e.includes("invalid"))){this.invalidApiKey=!0,this.projectId&&(async(t,e)=>{try{const i=hi(Xs,"checkDomainWhitelisted");await i({apiKey:t,projectId:e})}catch(t){console.warn("Error in checkDomainWhitelisted: ",t)}})(this.apiKey,this.projectId);if(new URL(document.location).searchParams.has(gt))this.isSigningInUserAdmin=!0;else if(Zs(bt))this.isSigningInUserAdmin="true"===Zs(bt,!0);else{const t=await(async(t,e,i)=>{try{const o=hi(Xs,"iam"),n=await o({apiKey:t,projectId:e,email:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in iam: ",t),null}})(this.apiKey,this.projectId||"",i);this.isSigningInUserAdmin=!!(null==t?void 0:t.isAdmin),Ps(bt,this.isSigningInUserAdmin+"",!0)}}console.warn("Error in identifySnippyly: ",t),nr("Error in identifySnippyly: ",t)}},this.checkToMigrateGuestUser=async t=>{try{const e=Qs(!1);e&&(await ar(this.apiKey,this.projectId||"",e,t,!0),Gs(pt))}catch(t){console.warn("Error in checkToMigrationGuestUser: ",t),nr("Error in checkToMigrationGuestUser: ",t)}},this.getComments=()=>{try{this.commentElement&&(this.commentSubscription&&this.commentSubscription.unsubscribe(),this.commentSubscription=this.commentElement.getAllCommentAnnotations(this.documentId).subscribe((t=>{this.comments=null==t?void 0:t.filter((t=>{var e;return["open","inProgress"].includes(null==t?void 0:t.status)||["default","ongoing"].includes(null===(e=null==t?void 0:t.status)||void 0===e?void 0:e.type)}))})))}catch(t){console.warn("Error in getComments: ",t),nr("Error in getComments: ",t)}},this.checkGlobalUserContact=()=>{try{this.contactElement&&this.contactElement.isUserGlobalContact().subscribe((t=>{this.isUserGlobalContact=t}))}catch(t){console.warn("Error in checkGlobalUserContact: ",t),nr("Error in checkGlobalUserContact: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),nr("Error in toggleSnippylyPluginToolbar: ",t)}},this.togglePrivateCommentMode=()=>{try{this.commentElement&&(this.privateCommentModeEnabled?(this.commentElement.disablePrivateCommentMode&&this.commentElement.disablePrivateCommentMode(),this.privateCommentModeEnabled=!1):(this.commentElement.enablePrivateCommentMode&&this.commentElement.enablePrivateCommentMode(),this.privateCommentModeEnabled=!0))}catch(t){console.warn("Error in togglePrivateCommentMode: ",t),nr("Error in togglePrivateCommentMode: ",t)}},this.loginWithGoogle=()=>{try{if(this.loading||this.customLoginEnabledLocally)return;window.open(this.signInUrl,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),nr("Error in loginWithGoogle: ",t)}},this.getQRCode=async()=>{try{const t=window.location.href;if(t){const e=Js(t,$t,Ot),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getQRCode?text=${encodeURIComponent(e)}`),o=await i.json();(null==o?void 0:o.qrcode)&&(this.qrCode=null==o?void 0:o.qrcode)}}catch(t){console.warn("Error in getQRCode: ",t),nr("Error in getQRCode: ",t)}},this.toggleQRCodeVisibility=async()=>{try{this.showQrCode=!this.showQrCode,this.showQrCode&&!this.qrCode&&await this.getQRCode()}catch(t){console.warn("Error in toggleQRCodeVisibility: ",t),nr("Error in toggleQRCodeVisibility: ",t)}},this.onUserInviteToolClick=()=>{var t;(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)&&(this.guestModeSignInModalConfig.title="Sign in to invite others.",this.guestModeSignInModalConfig.description="Invite team members to comment on this project.",this.guestModeSignInModalConfig.showLeaveCommentButton=!1,this.guestModeSignInModalConfig.closeOnClickOutside=!0,this.openGuestModeSignInModal())},this.removeSnippyly=async()=>{try{this.exitReviewModeCalled=!0,Gs(at),Gs(lt),Gs(ct),Gs(vt,"sessionStorage"),Gs(mt,"sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete(ct),e.delete(at),e.delete(lt),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete(ft),e.delete(gt),e.delete(wt),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),nr("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{await Snippyly.signOutUser(),Gs(dt),Gs(ut),Gs(bt),this.snippylyUser=void 0,window.open(this.signOutUrl,"_self")}catch(t){console.warn("Error in signOutUser: ",t),nr("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),nr("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),nr("Error in copyLink: ",t)}},this.goToAdminPortal=()=>{try{let t=`${jt}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){const e=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();e&&(t=`${jt}/dashboard/project/comment/${this.apiKey}/${e}`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),nr("Error in goToAdminPortal: ",t)}},this.goToAdminPortalDashboard=()=>{try{let t=`${jt}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId())&&(t=`${jt}/dashboard`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortalDashboard: ",t),nr("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),nr("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,Ps(gt,"true");const t=new URL(document.location);t.searchParams.delete(gt),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),nr("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,Ps(wt,"true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete(wt),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),nr("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Ct),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),nr("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://superflow-portal-staging-2023.web.app/dashboard/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),nr("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,Ps(yt,"true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),nr("Error in onTourCommentTooltipClick: ",t)}},this.onGuestModeChipSignInButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeChipSignInButtonClick: ",t),nr("Error in onGuestModeChipSignInButtonClick: ",t)}},this.openGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!0,sr(ur.Events.GUEST_MODE_SIGN_IN_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeSignInModal: ",t),nr("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),nr("Error in closeGuestModeSignInModal: ",t)}},this.onGuestModeSignInModalSignInButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeSignInModalSignInButtonClick: ",t),nr("Error in onGuestModeSignInModalSignInButtonClick: ",t)}},this.openGuestModeNameModel=t=>{try{t&&(t.stopPropagation(),t.preventDefault()),this.showGuestModeNameModal=!0,sr(ur.Events.GUEST_MODE_NAME_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeNameModel: ",t),nr("Error in openGuestModeNameModel: ",t)}},this.closeGuestModeNameModel=()=>{try{this.showGuestModeNameModal=!1}catch(t){console.warn("Error in closeGuestModeNameModel: ",t),nr("Error in closeGuestModeNameModel: ",t)}},this.onGuestModeNameModalSkipButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SKIP_BUTTON_CLICKED),this.showGuestModeNameModal=!1}catch(t){console.warn("Error in onGuestModeNameModalSkipButtonClick: ",t),nr("Error in onGuestModeNameModalSkipButtonClick: ",t)}},this.showGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!0,sr(ur.Events.GUEST_MODE_SIGN_IN_BANNER_SHOWN)}catch(t){console.warn("Error in showGuestModeSignInBanner: ",t),nr("Error in showGuestModeSignInBanner: ",t)}},this.hideGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!1}catch(t){console.warn("Error in hideGuestModeSignInBanner: ",t),nr("Error in hideGuestModeSignInBanner: ",t)}},this.onGuestModeBannerSignInButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeBannerSignInButtonClick: ",t),nr("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=Qs();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=Js(e,$t,Ot);Ps(pt,i,!0)}catch(t){console.warn("Error in updateGuestUser: ",t),nr("Error in updateGuestUser: ",t)}})(e),await Snippyly.identify(e),this.snippylyUser=JSON.parse(JSON.stringify(e)),await ar(this.apiKey,this.projectId||"",t,e),this.showGuestModeNameModal=!1,this.guestUserNameUpdated=!0,this.guestUserNameUpdateLoading=!1,Ps(Mt,"true"),sr(ur.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),nr("Error in updateGuestUserName: ",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 ar(this.apiKey,this.projectId||"",e,i),await Snippyly.updateUser(i);const o=Ws();o.name=i.name;const n=JSON.stringify(o),s=Js(n,$t,Ot);Ps(ut,s,!0),this.guestUserNameUpdateLoading=!1,this.guestUserNameInput="",this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateUserName: ",t),nr("Error in updateUserName: ",t)}},this.disableCommentMode=()=>{var t;try{(null===(t=this.commentElement)||void 0===t?void 0:t.disableCommentMode)&&this.commentElement.disableCommentMode()}catch(t){console.warn("Error in disableAddCommentMode: ",t),nr("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?D`
|
|
2244
|
+
`;navigator.language.split("-")[0];const dr=new Map;dr.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"}),dr.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"}),dr.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:"आगामी"}),dr.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"}),dr.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:"Далее"}),dr.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 hr=t=>{try{return t}catch(e){return t}};class ur{}ur.Events={GUEST_MODE_SIGN_IN_DIALOG_SHOWN:"guestModeSignInDialogShown",GUEST_MODE_NAME_DIALOG_SHOWN:"guestModeNameDialogShown",GUEST_MODE_SIGN_IN_BANNER_SHOWN:"guestModeSignInBannerShown",GUEST_MODE_SIGN_IN_BUTTON_CLICKED:"guestModeSignInButtonClicked",GUEST_MODE_SKIP_BUTTON_CLICKED:"guestModeSkipButtonClicked",GUEST_MODE_NAME_ADDED:"guestModeNameAdded",TOOLBAR_NOTIFICATION_CLICKED:"toolbarNotificationClicked"};var pr=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 vr extends X{constructor(){super(),this._loadPlugin=!1,this.comments=[],this.addCommentMode=!1,this.showTourCommentTooltip=!1,this.allFeatureDisabled=!1,this.allFeatureRestricted=!1,this.guestMode=!1,this._expanded=!0,this.loading=!0,this._isPlanExpired=null,this.showOnboardingModal=!0,this.showLiveDemoModal=!1,this.showFigmaDemoModal=!1,this.showGuestModeSignInModal=!1,this.defaultGuestModeSignInModalConfig={title:"Sign in to notify your team",description:"Notify your team about your latest comments.",closeOnClickOutside:!1,showLeaveCommentButton:!0},this.guestModeSignInModalConfig=JSON.parse(JSON.stringify(this.defaultGuestModeSignInModalConfig)),this.showGuestModeNameModal=!1,this.guestModeSignInBannerVisible=!1,this.guestUserNameInput="",this.guestUserModelOpened=!1,this.guestUserNameUpdated=!1,this.guestUserNameUpdateLoading=!1,this.staging=true,this.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.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),nr("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await(t=>{const e={apiKey:t};return hi(Xs,"customLoginEnabled")(e)})(this.apiKey);this.customLoginEnabled=!!(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.customLoginEnabled),this.customLoginEnabled&&this.loginWithCustomUser()}catch(t){this.customLoginEnabled=!1,console.warn("Error in checkCustomLoginEnabled: ",t),nr("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(Gs(ut),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),nr("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),nr("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),nr("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),nr("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),nr("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{const t=new URL(document.location),e=t.searchParams;if((null==e?void 0:e.has(gt))&&!Zs(gt)?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has(wt))if(Zs(wt,!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(wt),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(Ct))if(Zs(Ct,!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Ct),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(ht)||e.has("snippyly_google_token")){if(e.has(ht)){const t=decodeURIComponent(e.get(ht)),i=Ks(t,$t,Ot),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=Ys(e,$t,Ot);Ps(ut,i,!0),Gs(bt)}}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,Ps(dt,JSON.stringify(i),!0)}e.delete(ht),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has(at)?(Ps(at,"true",!1),Gs(lt),"true"!==e.get(at)&&(e.delete(at),e.append(at,"true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has(lt)||Zs(at,!1)&&(e.append(at,"true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),e.has(lt)?(Ps(lt,"true",!1),Gs(at),"true"!==e.get(lt)&&(e.delete(lt),e.append(lt,"true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has(at)||Zs(lt,!1)&&(e.append(lt,"true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),nr("Error in checkUrl: ",t)}},this.detectVersion=()=>{try{if(this.projectVersionKey){const t=new URL(document.location).searchParams;if(t.get(this.projectVersionKey))this.projectVersion=t.get(this.projectVersionKey);else if(window.snippylyInitialLoadUrl){const t=new URL(window.snippylyInitialLoadUrl).searchParams;t.get(this.projectVersionKey)&&(this.projectVersion=t.get(this.projectVersionKey))}this.projectVersion&&Ps(mt,this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has(at)||t.has(lt))&&t.has(ft)&&(Ps(vt,ft,!1,"sessionStorage"),this.projectVersion=t.get(ft),this.projectVersion&&Ps(mt,this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),nr("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||Zs(vt,!1,"sessionStorage"),e=this.projectVersion||Zs(mt,!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),nr("Error in setVersionInUrl: ",t)}},this.loadPluginUI=()=>{try{if(!this.apiKey)return;if(this.loadPlugin)return this.generateLocation(),void this.setLocation();const t=Ws();if(t&&!(null==t?void 0:t.isAnonymous)&&(this.loading=!0),this.loadPlugin=!0,!document.querySelector(Nt)){const t=document.createElement(Nt);null==t||t.addEventListener("onSignIn",(()=>{this.loginWithGoogle()})),null==t||t.addEventListener("onUpgrade",(()=>{this.onUpgradePlanClick()})),this.staging&&(t.addEventListener("onCommentAdd",(t=>{console.log("Comment added: ",null==t?void 0:t.detail),this.addCommentCount++})),t.addEventListener("onCommentUpdate",(t=>{var e,i;console.log("Comment updated: ",t.detail),(null===(e=this.snippylyUser)||void 0===e?void 0:e.isGuest)&&"add"===(null===(i=null==t?void 0:t.detail)||void 0===i?void 0:i.type)&&(this.addCommentCount>=2&&!Zs(Et)&&(this.openGuestModeSignInModal(),Ps(Et,"true")),this.addCommentCount>=5&&!Zs(St,!1,"sessionStorage")&&(this.showGuestModeSignInBanner(),Ps(St,"true",!1,"sessionStorage")))}))),window.document.body.appendChild(t)}if(!document.querySelector(kt)){const t=document.createElement(kt);window.document.body.appendChild(t)}if(!document.querySelector(It)){const t=document.createElement(It);window.document.body.appendChild(t)}if(!document.querySelector(Tt)){const t=document.createElement(Tt);window.document.body.appendChild(t)}if(!document.querySelector(Ft)){const t=document.createElement(Ft);window.document.body.appendChild(t)}if(!document.querySelector(At)){const t=document.createElement(At);window.document.body.appendChild(t)}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),nr("Error in loadPluginUI: ",t)}},this.initializeSnippyly=async()=>{var t,e,o,n,s,r,a,l,c,d,h,u,p,v;try{if(await i(this.apiKey,{options:{staging:this.staging,version:this.staging?"1.0.240":"latest",velt:!0}}),!window.Snippyly)return;if(this.autoTranslation&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.enableAutoTranslation)&&(null===Snippyly||void 0===Snippyly||Snippyly.enableAutoTranslation()),!document.querySelector(_t)){const t=document.createElement(_t);t.setAttribute(Lt,"true"),window.document.body.appendChild(t)}if(Snippyly){null===Snippyly||void 0===Snippyly||Snippyly.sf(!0);try{(null===window||void 0===window?void 0:window.onSnippylyLoad)&&(null===window||void 0===window||window.onSnippylyLoad(Snippyly))}catch(t){}document.body.style.setProperty("--velt-default-font-family","'Poppins', sans-serif"),(()=>{try{if(!document.getElementById("superflowFontLink1")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.googleapis.com",t.id="superflowFontLink1",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink2")){const t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.gstatic.com",t.crossOrigin="anonymous",t.id="superflowFontLink2",document.head.appendChild(t)}if(!document.getElementById("superflowFontLink3")){const t=document.createElement("link");t.rel="stylesheet",t.href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap",t.id="superflowFontLink3",document.head.appendChild(t)}}catch(t){console.warn("Error in loadPoppinsFont: ",t),nr("Error in loadPoppinsFont: ",t)}})()}Snippyly&&ir({sdkVersion:null===Snippyly||void 0===Snippyly?void 0:Snippyly.version,sdkType:"client"}),this.documentId=((t,e=0)=>{try{let i=3735928559^e,o=1103547991^e;for(let e,n=0;n<t.length;n++)e=t.charCodeAt(n),i=Math.imul(i^e,2654435761),o=Math.imul(o^e,1597334677);return i=Math.imul(i^i>>>16,2246822507)^Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507)^Math.imul(i^i>>>13,3266489909),4294967296*(2097151&o)+(i>>>0)}catch(t){return console.warn("Error in cyrb53: ",t),nr("Error in cyrb53: ",t),0}})((t=>{let e;return e=t.includes("http")?new URL(t):new URL("http://"+t),e.hostname.replace("www.","")})(window.location.origin))+"",this.projectId&&(this.documentId=this.projectId+""),await(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setDocumentId(this.documentId+""));const m=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();if(ir({documentId:m,clientDocumentId:this.documentId}),this.generateLocation(),this.setLocation(),this.commentElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getCommentElement(),this.contactElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getContactElement(),this.rewriterElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getRewriterElement(),this.presenceElement=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getPresenceElement(),this.commentElement){this.commentElement.enableTextComments(!0),this.customLoginEnabledLocally||this.commentElement.enableSignInButton(!0),this.commentElement.enableAttachment(!0),(null===(t=this.commentElement)||void 0===t?void 0:t.showScreenSizeInfo)&&this.commentElement.showScreenSizeInfo(!0),(null===(e=this.commentElement)||void 0===e?void 0:e.showDeviceInfo)&&this.commentElement.showDeviceInfo(!0),this.commentElement.showCommentIndex(!0),this.commentElement.addCommentModeChange&&this.commentElement.addCommentModeChange().subscribe((t=>{this.addCommentMode=t})),(null===(o=this.commentElement)||void 0===o?void 0:o.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(null===(n=this.commentElement)||void 0===n?void 0:n.enableAutoCategorize)&&this.commentElement.enableAutoCategorize(),(null===(s=this.commentElement)||void 0===s?void 0:s.enablePersistentCommentMode)&&this.commentElement.enablePersistentCommentMode(),(null===(r=this.commentElement)||void 0===r?void 0:r.enableGhostComments)&&this.commentElement.enableGhostComments();const i=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;i&&"object"==typeof i&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatuses)&&this.commentElement.setCustomStatuses(i),(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()}this.selectionElement=Snippyly.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(u=this.rewriterElement)||void 0===u||u.enableRewriter()),this.presenceElement&&(null===(p=this.presenceElement)||void 0===p?void 0:p.enableFlockMode)&&(null===(v=this.presenceElement)||void 0===v||v.enableFlockMode(!0)),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),nr("Error in initializeSnippyly: ",t)}},this.checkToEnableUpgradeButton=()=>{var t,e;try{this.isPlanExpired&&this.isUserGlobalContact?(null===(t=this.commentElement)||void 0===t?void 0:t.enableUpgradeButton)&&this.commentElement.enableUpgradeButton():(null===(e=this.commentElement)||void 0===e?void 0:e.disableUpgradeButton)&&this.commentElement.disableUpgradeButton()}catch(t){console.warn("Error in checkToEnableUpgradeButton: ",t),nr("Error in checkToEnableUpgradeButton: ",t)}},this.generateLocation=()=>{try{const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete(at),e.searchParams.delete(lt),e.searchParams.delete(ct),e.searchParams.delete("scommentId"),e.searchParams.delete(gt),e.searchParams.delete(wt);const i=t.get(ft)||this.projectVersion;e.search="";let o=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),nr("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),nr("Error in generateLocation: ",t)}},this.setLocation=()=>{var t,e,i,o;try{if(window.Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.setLocation)){if(this.previousLocation&&(null===(t=this.previousLocation)||void 0===t?void 0:t.url)===(null===(e=this.location)||void 0===e?void 0:e.url)&&(null===(i=this.previousLocation)||void 0===i?void 0:i.version)===(null===(o=this.location)||void 0===o?void 0:o.version))return;null===Snippyly||void 0===Snippyly||Snippyly.setLocation(JSON.parse(JSON.stringify(this.location))),ir({clientLocation:this.location}),this.previousLocation=JSON.parse(JSON.stringify(this.location))}}catch(t){console.warn("Error in setLocation: ",t),nr("Error in setLocation: ",t)}},this.identifySnippyly=async()=>{var t,e;let i="";try{this.invalidApiKey=!1;let e,o={name:"Anonymous User",email:"anonymous@snippyly.com",userId:"anonymous",isAnonymous:!0};if(e=this.customLoginEnabled&&this.providedUser?this.providedUser:Ws(),(null==e?void 0:e.email)&&(o=e),o.isAnonymous?delete o.groupId:o.groupId=Snippyly.getDocumentId()+"",this.customLoginEnabledLocally||(null===(t=null==o?void 0:o.contacts)||void 0===t?void 0:t.length)&&(o.contacts=[]),i=null==o?void 0:o.email,(null==o?void 0:o.isAnonymous)&&this.projectId){if(Zs(xt,!0))this.guestMode="true"===Zs(xt,!0);else{const t=await(async(t,e)=>{try{const i=hi(Xs,"checkguestmode"),o=await i({apiKey:t,projectId:e});return null==o?void 0:o.data}catch(t){return console.warn("Error in checkGuestMode: ",t),null}})(this.apiKey,this.projectId);this.guestMode=!!(null==t?void 0:t.guestMode),Ps(xt,this.guestMode+"",!0)}if(this.guestMode){const t=Qs();t&&(o=JSON.parse(JSON.stringify(t)))}}(null==o?void 0:o.isAnonymous)||(this.loading=!0);const n=await Snippyly.identify(o);or(JSON.parse(JSON.stringify(n||{}))),(null==o?void 0:o.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(o)));const s=JSON.parse(JSON.stringify(n||{}));(null==s?void 0:s.userSnippylyId)&&!(null==s?void 0:s.isGuest)&&this.checkToMigrateGuestUser(s),Snippyly.getUserRole$().subscribe((t=>{var e;this.loading=!1,this.snippylyUserRole=t,null===(e=this.commentElement)||void 0===e||e.enablePriority()})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getFeaturesAccessLevelIam$)&&Snippyly.getFeaturesAccessLevelIam$().subscribe((async t=>{var e,i,o;this.allFeatureDisabled=!!(null===(e=null==t?void 0:t.all)||void 0===e?void 0:e.disabled),this.allFeatureRestricted=!!(null===(i=null==t?void 0:t.all)||void 0===i?void 0:i.restricted),this.guestMode=!!(null===(o=null==t?void 0:t.all)||void 0===o?void 0:o.guestMode),Ps(xt,this.guestMode+"",!0)}),(t=>{this.loading=!1,console.warn("Error in getFeaturesAccessLevelIam$: ",t),nr("Error in getFeaturesAccessLevelIam$: ",t)})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.isPlanExpired$)&&(null===Snippyly||void 0===Snippyly||Snippyly.isPlanExpired$().subscribe((t=>{this.isPlanExpired=t}),(t=>{this.isPlanExpired=!1,console.warn("Error in isPlanExpired$: ",t),nr("Error in isPlanExpired$: ",t)}))),ir({clientUserId:null==o?void 0:o.userId}),this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{Zs(yt)||(this.showTourCommentTooltip=!0)}),2e3)}catch(t){if(this.loading=!1,this.signInError=!0,t&&"string"==typeof t&&(null===(e=null==t?void 0:t.toLowerCase())||void 0===e?void 0:e.includes("invalid"))){this.invalidApiKey=!0,this.projectId&&(async(t,e)=>{try{const i=hi(Xs,"checkDomainWhitelisted");await i({apiKey:t,projectId:e})}catch(t){console.warn("Error in checkDomainWhitelisted: ",t)}})(this.apiKey,this.projectId);if(new URL(document.location).searchParams.has(gt))this.isSigningInUserAdmin=!0;else if(Zs(bt))this.isSigningInUserAdmin="true"===Zs(bt,!0);else{const t=await(async(t,e,i)=>{try{const o=hi(Xs,"iam"),n=await o({apiKey:t,projectId:e,email:i});return null==n?void 0:n.data}catch(t){return console.warn("Error in iam: ",t),null}})(this.apiKey,this.projectId||"",i);this.isSigningInUserAdmin=!!(null==t?void 0:t.isAdmin),Ps(bt,this.isSigningInUserAdmin+"",!0)}}console.warn("Error in identifySnippyly: ",t),nr("Error in identifySnippyly: ",t)}},this.checkToMigrateGuestUser=async t=>{try{const e=Qs(!1);e&&(await ar(this.apiKey,this.projectId||"",e,t,!0),Gs(pt))}catch(t){console.warn("Error in checkToMigrationGuestUser: ",t),nr("Error in checkToMigrationGuestUser: ",t)}},this.getComments=()=>{try{this.commentElement&&(this.commentSubscription&&this.commentSubscription.unsubscribe(),this.commentSubscription=this.commentElement.getAllCommentAnnotations(this.documentId).subscribe((t=>{this.comments=null==t?void 0:t.filter((t=>{var e;return["open","inProgress"].includes(null==t?void 0:t.status)||["default","ongoing"].includes(null===(e=null==t?void 0:t.status)||void 0===e?void 0:e.type)}))})))}catch(t){console.warn("Error in getComments: ",t),nr("Error in getComments: ",t)}},this.checkGlobalUserContact=()=>{try{this.contactElement&&this.contactElement.isUserGlobalContact().subscribe((t=>{this.isUserGlobalContact=t}))}catch(t){console.warn("Error in checkGlobalUserContact: ",t),nr("Error in checkGlobalUserContact: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),nr("Error in toggleSnippylyPluginToolbar: ",t)}},this.togglePrivateCommentMode=()=>{try{this.commentElement&&(this.privateCommentModeEnabled?(this.commentElement.disablePrivateCommentMode&&this.commentElement.disablePrivateCommentMode(),this.privateCommentModeEnabled=!1):(this.commentElement.enablePrivateCommentMode&&this.commentElement.enablePrivateCommentMode(),this.privateCommentModeEnabled=!0))}catch(t){console.warn("Error in togglePrivateCommentMode: ",t),nr("Error in togglePrivateCommentMode: ",t)}},this.loginWithGoogle=()=>{try{if(this.loading||this.customLoginEnabledLocally)return;window.open(this.signInUrl,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),nr("Error in loginWithGoogle: ",t)}},this.getQRCode=async()=>{try{const t=window.location.href;if(t){const e=Ys(t,$t,Ot),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getQRCode?text=${encodeURIComponent(e)}`),o=await i.json();(null==o?void 0:o.qrcode)&&(this.qrCode=null==o?void 0:o.qrcode)}}catch(t){console.warn("Error in getQRCode: ",t),nr("Error in getQRCode: ",t)}},this.toggleQRCodeVisibility=async()=>{try{this.showQrCode=!this.showQrCode,this.showQrCode&&!this.qrCode&&await this.getQRCode()}catch(t){console.warn("Error in toggleQRCodeVisibility: ",t),nr("Error in toggleQRCodeVisibility: ",t)}},this.onUserInviteToolClick=()=>{var t;(null===(t=this.snippylyUser)||void 0===t?void 0:t.isGuest)&&(this.guestModeSignInModalConfig.title="Sign in to invite others.",this.guestModeSignInModalConfig.description="Invite team members to comment on this project.",this.guestModeSignInModalConfig.showLeaveCommentButton=!1,this.guestModeSignInModalConfig.closeOnClickOutside=!0,this.openGuestModeSignInModal())},this.removeSnippyly=async()=>{try{this.exitReviewModeCalled=!0,Gs(at),Gs(lt),Gs(ct),Gs(vt,"sessionStorage"),Gs(mt,"sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete(ct),e.delete(at),e.delete(lt),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete(ft),e.delete(gt),e.delete(wt),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),nr("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{await Snippyly.signOutUser(),Gs(dt),Gs(ut),Gs(bt),this.snippylyUser=void 0,window.open(this.signOutUrl,"_self")}catch(t){console.warn("Error in signOutUser: ",t),nr("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),nr("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),nr("Error in copyLink: ",t)}},this.goToAdminPortal=()=>{try{let t=`${jt}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){const e=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();e&&(t=`${jt}/dashboard/project/comment/${this.apiKey}/${e}`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),nr("Error in goToAdminPortal: ",t)}},this.goToAdminPortalDashboard=()=>{try{let t=`${jt}`;if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId())&&(t=`${jt}/dashboard`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortalDashboard: ",t),nr("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),nr("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,Ps(gt,"true");const t=new URL(document.location);t.searchParams.delete(gt),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),nr("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,Ps(wt,"true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete(wt),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),nr("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete(Ct),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),nr("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://superflow-portal-staging-2023.web.app/dashboard/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),nr("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,Ps(yt,"true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),nr("Error in onTourCommentTooltipClick: ",t)}},this.onGuestModeChipSignInButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeChipSignInButtonClick: ",t),nr("Error in onGuestModeChipSignInButtonClick: ",t)}},this.openGuestModeSignInModal=()=>{try{this.showGuestModeSignInModal=!0,sr(ur.Events.GUEST_MODE_SIGN_IN_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeSignInModal: ",t),nr("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),nr("Error in closeGuestModeSignInModal: ",t)}},this.onGuestModeSignInModalSignInButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeSignInModalSignInButtonClick: ",t),nr("Error in onGuestModeSignInModalSignInButtonClick: ",t)}},this.openGuestModeNameModel=t=>{try{t&&(t.stopPropagation(),t.preventDefault()),this.showGuestModeNameModal=!0,sr(ur.Events.GUEST_MODE_NAME_DIALOG_SHOWN)}catch(t){console.warn("Error in openGuestModeNameModel: ",t),nr("Error in openGuestModeNameModel: ",t)}},this.closeGuestModeNameModel=()=>{try{this.showGuestModeNameModal=!1}catch(t){console.warn("Error in closeGuestModeNameModel: ",t),nr("Error in closeGuestModeNameModel: ",t)}},this.onGuestModeNameModalSkipButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SKIP_BUTTON_CLICKED),this.showGuestModeNameModal=!1}catch(t){console.warn("Error in onGuestModeNameModalSkipButtonClick: ",t),nr("Error in onGuestModeNameModalSkipButtonClick: ",t)}},this.showGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!0,sr(ur.Events.GUEST_MODE_SIGN_IN_BANNER_SHOWN)}catch(t){console.warn("Error in showGuestModeSignInBanner: ",t),nr("Error in showGuestModeSignInBanner: ",t)}},this.hideGuestModeSignInBanner=()=>{try{this.guestModeSignInBannerVisible=!1}catch(t){console.warn("Error in hideGuestModeSignInBanner: ",t),nr("Error in hideGuestModeSignInBanner: ",t)}},this.onGuestModeBannerSignInButtonClick=()=>{try{sr(ur.Events.GUEST_MODE_SIGN_IN_BUTTON_CLICKED),this.loginWithGoogle()}catch(t){console.warn("Error in onGuestModeBannerSignInButtonClick: ",t),nr("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=Qs();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=Ys(e,$t,Ot);Ps(pt,i,!0)}catch(t){console.warn("Error in updateGuestUser: ",t),nr("Error in updateGuestUser: ",t)}})(e),await Snippyly.identify(e),this.snippylyUser=JSON.parse(JSON.stringify(e)),await ar(this.apiKey,this.projectId||"",t,e),this.showGuestModeNameModal=!1,this.guestUserNameUpdated=!0,this.guestUserNameUpdateLoading=!1,Ps(Mt,"true"),sr(ur.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),nr("Error in updateGuestUserName: ",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 ar(this.apiKey,this.projectId||"",e,i),await Snippyly.updateUser(i),this.snippylyUser=JSON.parse(JSON.stringify(i));const o=Ws();o.name=i.name;const n=JSON.stringify(o),s=Ys(n,$t,Ot);Ps(ut,s,!0),this.guestUserNameUpdateLoading=!1,this.guestUserNameInput="",this.closeGuestModeNameModel()}catch(t){console.warn("Error in updateUserName: ",t),nr("Error in updateUserName: ",t)}},this.disableCommentMode=()=>{var t;try{(null===(t=this.commentElement)||void 0===t?void 0:t.disableCommentMode)&&this.commentElement.disableCommentMode()}catch(t){console.warn("Error in disableAddCommentMode: ",t),nr("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?D`
|
|
2245
2245
|
<div class="disable-add-comment-button" @click=${()=>this.disableCommentMode()}>
|
|
2246
2246
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2247
2247
|
<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"/>
|