@snippyly/plugin-staging 1.0.213 → 1.0.215
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 +1239 -126
- package/snippyly.min.js +1239 -127
package/snippyly.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
var t=function(t){return new Promise((function(e,i){var
|
|
1
|
+
var t=function(t){return new Promise((function(e,i){var n=document.getElementById("veltScript"),o=!1,s="latest";if(t&&(t.staging&&(o=t.staging),t.version&&(s=t.version)),(null==t?void 0:t.version)||(s="1.0.21"),n)e();else{var r=document.createElement("script");r.src=o?"https://us-central1-snipply-sdk-staging.cloudfunctions.net/getPrivateNpmPackageFile?packageName=sdk-staging&packageVersion=".concat(s&&"latest"!==s?s:"1.0.1","&filePath=velt.js&orgName=@veltdev"):"https://cdn.jsdelivr.net/npm/@veltdev/sdk@".concat(s,"/velt.js"),r.id="veltScript",r.type="module",document.body.appendChild(r),r.onload=function(){e()},r.onerror=function(){i(new Error("Failed to load Velt script"))}}}))},e=function(e,i){return function(t,e,i,n){return new(i||(i=Promise))((function(o,s){function r(t){try{l(n.next(t))}catch(t){s(t)}}function a(t){try{l(n.throw(t))}catch(t){s(t)}}function l(t){var e;t.done?o(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(r,a)}l((n=n.apply(t,e||[])).next())}))}(void 0,void 0,void 0,(function(){var n,o;return function(t,e){var i,n,o,s,r={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(l){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(r=0)),r;)try{if(i=1,n&&(o=2&a[0]?n.return:a[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;switch(n=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return r.label++,{value:a[1],done:!1};case 5:r.label++,n=a[1],a=[0];continue;case 7:a=r.ops.pop(),r.trys.pop();continue;default:if(!((o=(o=r.trys).length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){r=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){r.label=a[1];break}if(6===a[0]&&r.label<o[1]){r.label=o[1],o=a;break}if(o&&r.label<o[2]){r.label=o[2],r.ops.push(a);break}o[2]&&r.ops.pop(),r.trys.pop();continue}a=e.call(t,r)}catch(t){a=[6,t],n=0}finally{i=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}}(this,(function(s){switch(s.label){case 0:return s.trys.push([0,6,,7]),[4,t(null==i?void 0:i.options)];case 1:return s.sent(),n=window.Velt,i?[4,null==n?void 0:n.init(e,i)]:[3,3];case 2:return s.sent(),[3,5];case 3:return[4,null==n?void 0:n.init(e)];case 4:s.sent(),s.label=5;case 5:return(null==n?void 0:n.st)&&(null==n||n.st("client")),[2,n];case 6:return o=s.sent(),console.error(o),[2,null];case 7:return[2]}}))}))};
|
|
2
2
|
/**
|
|
3
3
|
* @license
|
|
4
4
|
* Copyright 2019 Google LLC
|
|
5
5
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
-
*/const i=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,
|
|
6
|
+
*/const i=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),o=new Map;class s{constructor(t,e){if(this._$cssResult$=!0,e!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t}get styleSheet(){let t=o.get(this.cssText);return i&&void 0===t&&(o.set(this.cssText,t=new CSSStyleSheet),t.replaceSync(this.cssText)),t}toString(){return this.cssText}}const r=(t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[n+1]),t[0]);return new s(i,n)},a=i?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new s("string"==typeof t?t:t+"",n))(e)})(t):t
|
|
7
7
|
/**
|
|
8
8
|
* @license
|
|
9
9
|
* Copyright 2017 Google LLC
|
|
10
10
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
11
|
-
*/;var l;const c=window.trustedTypes,
|
|
11
|
+
*/;var l;const c=window.trustedTypes,h=c?c.emptyScript:"",d=window.reactiveElementPolyfillSupport,u={toAttribute(t,e){switch(e){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},p=(t,e)=>e!==t&&(e==e||t==t),f={attribute:!0,type:String,converter:u,reflect:!1,hasChanged:p};class v extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var e;null!==(e=this.l)&&void 0!==e||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,i)=>{const n=this._$Eh(i,e);void 0!==n&&(this._$Eu.set(n,i),t.push(n))})),t}static createProperty(t,e=f){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const i="symbol"==typeof t?Symbol():"__"+t,n=this.getPropertyDescriptor(t,i,e);void 0!==n&&Object.defineProperty(this.prototype,t,n)}}static getPropertyDescriptor(t,e,i){return{get(){return this[e]},set(n){const o=this[t];this[e]=n,this.requestUpdate(t,o,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||f}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const i of e)this.createProperty(i,t[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift(a(t))}else void 0!==t&&e.push(a(t));return e}static _$Eh(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,i;(null!==(e=this._$Eg)&&void 0!==e?e:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(i=t.hostConnected)||void 0===i||i.call(t))}removeController(t){var e;null===(e=this._$Eg)||void 0===e||e.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Et.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const e=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return((t,e)=>{i?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((e=>{const i=document.createElement("style"),n=window.litNonce;void 0!==n&&i.setAttribute("nonce",n),i.textContent=e.cssText,t.appendChild(i)}))})(e,this.constructor.elementStyles),e}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$ES(t,e,i=f){var n,o;const s=this.constructor._$Eh(t,i);if(void 0!==s&&!0===i.reflect){const r=(null!==(o=null===(n=i.converter)||void 0===n?void 0:n.toAttribute)&&void 0!==o?o:u.toAttribute)(e,i.type);this._$Ei=t,null==r?this.removeAttribute(s):this.setAttribute(s,r),this._$Ei=null}}_$AK(t,e){var i,n,o;const s=this.constructor,r=s._$Eu.get(t);if(void 0!==r&&this._$Ei!==r){const t=s.getPropertyOptions(r),a=t.converter,l=null!==(o=null!==(n=null===(i=a)||void 0===i?void 0:i.fromAttribute)&&void 0!==n?n:"function"==typeof a?a:null)&&void 0!==o?o:u.fromAttribute;this._$Ei=r,this[r]=l(e,t.type),this._$Ei=null}}requestUpdate(t,e,i){let n=!0;void 0!==t&&(((i=i||this.constructor.getPropertyOptions(t)).hasChanged||p)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===i.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,i))):n=!1),!this.isUpdatePending&&n&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,e)=>this[e]=t)),this._$Et=void 0);let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(i)):this._$EU()}catch(t){throw e=!1,this._$EU(),t}e&&this._$AE(i)}willUpdate(t){}_$AE(t){var e;null===(e=this._$Eg)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$ES(e,this[e],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}}
|
|
12
12
|
/**
|
|
13
13
|
* @license
|
|
14
14
|
* Copyright 2017 Google LLC
|
|
15
15
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
16
16
|
*/
|
|
17
|
-
var m;
|
|
17
|
+
var m;v.finalized=!0,v.elementProperties=new Map,v.elementStyles=[],v.shadowRootOptions={mode:"open"},null==d||d({ReactiveElement:v}),(null!==(l=globalThis.reactiveElementVersions)&&void 0!==l?l:globalThis.reactiveElementVersions=[]).push("1.3.2");const w=globalThis.trustedTypes,g=w?w.createPolicy("lit-html",{createHTML:t=>t}):void 0,y=`lit$${(Math.random()+"").slice(9)}$`,C="?"+y,b=`<${C}>`,x=document,S=(t="")=>x.createComment(t),E=t=>null===t||"object"!=typeof t&&"function"!=typeof t,k=Array.isArray,I=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,_=/-->/g,A=/>/g,L=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,$=/'/g,T=/"/g,M=/^(?:script|style|textarea|title)$/i,O=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),F=Symbol.for("lit-noChange"),N=Symbol.for("lit-nothing"),D=new WeakMap,R=x.createTreeWalker(x,129,null,!1),P=(t,e)=>{const i=t.length-1,n=[];let o,s=2===e?"<svg>":"",r=I;for(let e=0;e<i;e++){const i=t[e];let a,l,c=-1,h=0;for(;h<i.length&&(r.lastIndex=h,l=r.exec(i),null!==l);)h=r.lastIndex,r===I?"!--"===l[1]?r=_:void 0!==l[1]?r=A:void 0!==l[2]?(M.test(l[2])&&(o=RegExp("</"+l[2],"g")),r=L):void 0!==l[3]&&(r=L):r===L?">"===l[0]?(r=null!=o?o:I,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,a=l[1],r=void 0===l[3]?L:'"'===l[3]?T:$):r===T||r===$?r=L:r===_||r===A?r=I:(r=L,o=void 0);const d=r===L&&t[e+1].startsWith("/>")?" ":"";s+=r===I?i+b:c>=0?(n.push(a),i.slice(0,c)+"$lit$"+i.slice(c)+y+d):i+y+(-2===c?(n.push(void 0),e):d)}const a=s+(t[i]||"<?>")+(2===e?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==g?g.createHTML(a):a,n]};class j{constructor({strings:t,_$litType$:e},i){let n;this.parts=[];let o=0,s=0;const r=t.length-1,a=this.parts,[l,c]=P(t,e);if(this.el=j.createElement(l,i),R.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=R.nextNode())&&a.length<r;){if(1===n.nodeType){if(n.hasAttributes()){const t=[];for(const e of n.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(y)){const i=c[s++];if(t.push(e),void 0!==i){const t=n.getAttribute(i.toLowerCase()+"$lit$").split(y),e=/([.?@])?(.*)/.exec(i);a.push({type:1,index:o,name:e[2],strings:t,ctor:"."===e[1]?z:"?"===e[1]?K:"@"===e[1]?q:H})}else a.push({type:6,index:o})}for(const e of t)n.removeAttribute(e)}if(M.test(n.tagName)){const t=n.textContent.split(y),e=t.length-1;if(e>0){n.textContent=w?w.emptyScript:"";for(let i=0;i<e;i++)n.append(t[i],S()),R.nextNode(),a.push({type:2,index:++o});n.append(t[e],S())}}}else if(8===n.nodeType)if(n.data===C)a.push({type:2,index:o});else{let t=-1;for(;-1!==(t=n.data.indexOf(y,t+1));)a.push({type:7,index:o}),t+=y.length-1}o++}}static createElement(t,e){const i=x.createElement("template");return i.innerHTML=t,i}}function V(t,e,i=t,n){var o,s,r,a;if(e===F)return e;let l=void 0!==n?null===(o=i._$Cl)||void 0===o?void 0:o[n]:i._$Cu;const c=E(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,n)),void 0!==n?(null!==(r=(a=i)._$Cl)&&void 0!==r?r:a._$Cl=[])[n]=l:i._$Cu=l),void 0!==l&&(e=V(t,l._$AS(t,e.values),l,n)),e}class U{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:i},parts:n}=this._$AD,o=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:x).importNode(i,!0);R.currentNode=o;let s=R.nextNode(),r=0,a=0,l=n[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new B(s,s.nextSibling,this,t):1===l.type?e=new l.ctor(s,l.name,l.strings,this,t):6===l.type&&(e=new J(s,this,t)),this.v.push(e),l=n[++a]}r!==(null==l?void 0:l.index)&&(s=R.nextNode(),r++)}return o}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 B{constructor(t,e,i,n){var o;this.type=2,this._$AH=N,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=i,this.options=n,this._$Cg=null===(o=null==n?void 0:n.isConnected)||void 0===o||o}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=V(this,t,e),E(t)?t===N||null==t||""===t?(this._$AH!==N&&this._$AR(),this._$AH=N):t!==this._$AH&&t!==F&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>{var e;return 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!==N&&E(this._$AH)?this._$AA.nextSibling.data=t:this.k(x.createTextNode(t)),this._$AH=t}T(t){var e;const{values:i,_$litType$:n}=t,o="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=j.createElement(n.h,this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===o)this._$AH.m(i);else{const t=new U(o,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=D.get(t.strings);return void 0===e&&D.set(t.strings,e=new j(t)),e}S(t){k(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,n=0;for(const o of t)n===e.length?e.push(i=new B(this.M(S()),this.M(S()),this,this.options)):i=e[n],i._$AI(o),n++;n<e.length&&(this._$AR(i&&i._$AB.nextSibling,n),e.length=n)}_$AR(t=this._$AA.nextSibling,e){var i;for(null===(i=this._$AP)||void 0===i||i.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class H{constructor(t,e,i,n,o){this.type=1,this._$AH=N,this._$AN=void 0,this.element=t,this.name=e,this._$AM=n,this.options=o,i.length>2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=N}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,n){const o=this.strings;let s=!1;if(void 0===o)t=V(this,t,e,0),s=!E(t)||t!==this._$AH&&t!==F,s&&(this._$AH=t);else{const n=t;let r,a;for(t=o[0],r=0;r<o.length-1;r++)a=V(this,n[i+r],e,r),a===F&&(a=this._$AH[r]),s||(s=!E(a)||a!==this._$AH[r]),a===N?t=N:t!==N&&(t+=(null!=a?a:"")+o[r+1]),this._$AH[r]=a}s&&!n&&this.C(t)}C(t){t===N?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class z extends H{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===N?void 0:t}}const Z=w?w.emptyScript:"";class K extends H{constructor(){super(...arguments),this.type=4}C(t){t&&t!==N?this.element.setAttribute(this.name,Z):this.element.removeAttribute(this.name)}}class q extends H{constructor(t,e,i,n,o){super(t,e,i,n,o),this.type=5}_$AI(t,e=this){var i;if((t=null!==(i=V(this,t,e,0))&&void 0!==i?i:N)===F)return;const n=this._$AH,o=t===N&&n!==N||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,s=t!==N&&(n===N||o);o&&this.element.removeEventListener(this.name,this,n),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 J{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){V(this,t)}}const G=window.litHtmlPolyfillSupport;
|
|
18
18
|
/**
|
|
19
19
|
* @license
|
|
20
20
|
* Copyright 2017 Google LLC
|
|
21
21
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
22
22
|
*/
|
|
23
|
-
var W,
|
|
23
|
+
var W,Y;null==G||G(j,B),(null!==(m=globalThis.litHtmlVersions)&&void 0!==m?m:globalThis.litHtmlVersions=[]).push("2.2.6");class X extends v{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=((t,e,i)=>{var n,o;const s=null!==(n=null==i?void 0:i.renderBefore)&&void 0!==n?n:e;let r=s._$litPart$;if(void 0===r){const t=null!==(o=null==i?void 0:i.renderBefore)&&void 0!==o?o:null;s._$litPart$=r=new B(e.insertBefore(S(),t),t,void 0,null!=i?i:{})}return r._$AI(t),r})(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!1)}render(){return F}}X.finalized=!0,X._$litElement$=!0,null===(W=globalThis.litElementHydrateSupport)||void 0===W||W.call(globalThis,{LitElement:X});const Q=globalThis.litElementPolyfillSupport;null==Q||Q({LitElement:X}),(null!==(Y=globalThis.litElementVersions)&&void 0!==Y?Y:globalThis.litElementVersions=[]).push("3.2.0");
|
|
24
24
|
/**
|
|
25
25
|
* @license
|
|
26
26
|
* Copyright 2017 Google LLC
|
|
@@ -36,19 +36,36 @@ const tt=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?{...e
|
|
|
36
36
|
* @license
|
|
37
37
|
* Copyright 2021 Google LLC
|
|
38
38
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
39
|
-
*/var
|
|
39
|
+
*/var nt;null===(nt=window.HTMLSlotElement)||void 0===nt||nt.prototype.assignedElements;
|
|
40
40
|
/**
|
|
41
41
|
* @license
|
|
42
42
|
* Copyright 2017 Google LLC
|
|
43
43
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
44
44
|
*/
|
|
45
|
-
const
|
|
45
|
+
const ot=1;
|
|
46
46
|
/**
|
|
47
47
|
* @license
|
|
48
48
|
* Copyright 2018 Google LLC
|
|
49
49
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
50
50
|
*/
|
|
51
|
-
const st=(t=>(...e)=>({_$litDirective$:t,values:e}))(class extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){var e;if(super(t),t.type!==
|
|
51
|
+
const st=(t=>(...e)=>({_$litDirective$:t,values:e}))(class extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){var e;if(super(t),t.type!==ot||"class"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter((e=>t[e])).join(" ")+" "}update(t,[e]){var i,n;if(void 0===this.et){this.et=new Set,void 0!==t.strings&&(this.st=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in e)e[t]&&!(null===(i=this.st)||void 0===i?void 0:i.has(t))&&this.et.add(t);return this.render(e)}const o=t.element.classList;this.et.forEach((t=>{t in e||(o.remove(t),this.et.delete(t))}));for(const t in e){const i=!!e[t];i===this.et.has(t)||(null===(n=this.st)||void 0===n?void 0:n.has(t))||(i?(o.add(t),this.et.add(t)):(o.remove(t),this.et.delete(t)))}return F}}),rt="velt-cursor",at="velt-comments",lt="velt-comments-sidebar",ct="velt-huddle",ht="velt-recorder-notes",dt="velt-recorder-control-panel",ut="velt-arrows",pt="enable-url-navigation",ft="9dbcd2509e0fa90a5c81f038ce618e3f",vt="6d24f74f12f6fb84c87efa8f791cfb2e",mt=function(t){const e=[];let i=0;for(let n=0;n<t.length;n++){let o=t.charCodeAt(n);o<128?e[i++]=o:o<2048?(e[i++]=o>>6|192,e[i++]=63&o|128):55296==(64512&o)&&n+1<t.length&&56320==(64512&t.charCodeAt(n+1))?(o=65536+((1023&o)<<10)+(1023&t.charCodeAt(++n)),e[i++]=o>>18|240,e[i++]=o>>12&63|128,e[i++]=o>>6&63|128,e[i++]=63&o|128):(e[i++]=o>>12|224,e[i++]=o>>6&63|128,e[i++]=63&o|128)}return e},wt={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray(t,e){if(!Array.isArray(t))throw Error("encodeByteArray takes an array as a parameter");this.init_();const i=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,n=[];for(let e=0;e<t.length;e+=3){const o=t[e],s=e+1<t.length,r=s?t[e+1]:0,a=e+2<t.length,l=a?t[e+2]:0,c=o>>2,h=(3&o)<<4|r>>4;let d=(15&r)<<2|l>>6,u=63&l;a||(u=64,s||(d=64)),n.push(i[c],i[h],i[d],i[u])}return n.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(mt(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):function(t){const e=[];let i=0,n=0;for(;i<t.length;){const o=t[i++];if(o<128)e[n++]=String.fromCharCode(o);else if(o>191&&o<224){const s=t[i++];e[n++]=String.fromCharCode((31&o)<<6|63&s)}else if(o>239&&o<365){const s=((7&o)<<18|(63&t[i++])<<12|(63&t[i++])<<6|63&t[i++])-65536;e[n++]=String.fromCharCode(55296+(s>>10)),e[n++]=String.fromCharCode(56320+(1023&s))}else{const s=t[i++],r=t[i++];e[n++]=String.fromCharCode((15&o)<<12|(63&s)<<6|63&r)}}return e.join("")}(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();const i=e?this.charToByteMapWebSafe_:this.charToByteMap_,n=[];for(let e=0;e<t.length;){const o=i[t.charAt(e++)],s=e<t.length?i[t.charAt(e)]:0;++e;const r=e<t.length?i[t.charAt(e)]:64;++e;const a=e<t.length?i[t.charAt(e)]:64;if(++e,null==o||null==s||null==r||null==a)throw Error();const l=o<<2|s>>4;if(n.push(l),64!==r){const t=s<<4&240|r>>2;if(n.push(t),64!==a){const t=r<<6&192|a;n.push(t)}}}return n},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let t=0;t<this.ENCODED_VALS.length;t++)this.byteToCharMap_[t]=this.ENCODED_VALS.charAt(t),this.charToByteMap_[this.byteToCharMap_[t]]=t,this.byteToCharMapWebSafe_[t]=this.ENCODED_VALS_WEBSAFE.charAt(t),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[t]]=t,t>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(t)]=t,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(t)]=t)}}},gt=function(t){return function(t){const e=mt(t);return wt.encodeByteArray(e,!0)}(t).replace(/\./g,"")},yt=function(t){try{return wt.decodeString(t,!0)}catch(t){console.error("base64Decode failed: ",t)}return null};
|
|
52
|
+
/**
|
|
53
|
+
* @license
|
|
54
|
+
* Copyright 2017 Google LLC
|
|
55
|
+
*
|
|
56
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
57
|
+
* you may not use this file except in compliance with the License.
|
|
58
|
+
* You may obtain a copy of the License at
|
|
59
|
+
*
|
|
60
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
61
|
+
*
|
|
62
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
63
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
64
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
65
|
+
* See the License for the specific language governing permissions and
|
|
66
|
+
* limitations under the License.
|
|
67
|
+
*/
|
|
68
|
+
function Ct(){return"undefined"!=typeof navigator&&"string"==typeof navigator.userAgent?navigator.userAgent:""}
|
|
52
69
|
/**
|
|
53
70
|
* @license
|
|
54
71
|
* Copyright 2022 Google LLC
|
|
@@ -65,7 +82,7 @@ const st=(t=>(...e)=>({_$litDirective$:t,values:e}))(class extends class{constru
|
|
|
65
82
|
* See the License for the specific language governing permissions and
|
|
66
83
|
* limitations under the License.
|
|
67
84
|
*/
|
|
68
|
-
const
|
|
85
|
+
const bt=()=>function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("Unable to locate global object.")}().t,xt=()=>{try{return bt()||(()=>{if("undefined"==typeof process||void 0===process.env)return;const t=process.env.t;return t?JSON.parse(t):void 0})()||(()=>{if("undefined"==typeof document)return;let t;try{t=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch(t){return}const e=t&&yt(t[1]);return e&&JSON.parse(e)})()}catch(t){return void console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${t}`)}},St=t=>{var e,i;return null===(i=null===(e=xt())||void 0===e?void 0:e.emulatorHosts)||void 0===i?void 0:i[t]},Et=t=>{var e;return null===(e=xt())||void 0===e?void 0:e[`_${t}`]};
|
|
69
86
|
/**
|
|
70
87
|
* @license
|
|
71
88
|
* Copyright 2017 Google LLC
|
|
@@ -82,7 +99,7 @@ const Ct=()=>function(){if("undefined"!=typeof self)return self;if("undefined"!=
|
|
|
82
99
|
* See the License for the specific language governing permissions and
|
|
83
100
|
* limitations under the License.
|
|
84
101
|
*/
|
|
85
|
-
class
|
|
102
|
+
class kt{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise(((t,e)=>{this.resolve=t,this.reject=e}))}wrapCallback(t){return(e,i)=>{e?this.reject(e):this.resolve(i),"function"==typeof t&&(this.promise.catch((()=>{})),1===t.length?t(e):t(e,i))}}}
|
|
86
103
|
/**
|
|
87
104
|
* @license
|
|
88
105
|
* Copyright 2017 Google LLC
|
|
@@ -98,7 +115,23 @@ class St{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
98
115
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
99
116
|
* See the License for the specific language governing permissions and
|
|
100
117
|
* limitations under the License.
|
|
101
|
-
*/class
|
|
118
|
+
*/class It extends Error{constructor(t,e,i){super(e),this.code=t,this.customData=i,this.name="FirebaseError",Object.setPrototypeOf(this,It.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,_t.prototype.create)}}class _t{constructor(t,e,i){this.service=t,this.serviceName=e,this.errors=i}create(t,...e){const i=e[0]||{},n=`${this.service}/${t}`,o=this.errors[t],s=o?function(t,e){return t.replace(At,((t,i)=>{const n=e[i];return null!=n?String(n):`<${i}?>`}))}(o,i):"Error",r=`${this.serviceName}: ${s} (${n}).`;return new It(n,r,i)}}const At=/\{\$([^}]+)}/g;function Lt(t,e){if(t===e)return!0;const i=Object.keys(t),n=Object.keys(e);for(const o of i){if(!n.includes(o))return!1;const i=t[o],s=e[o];if($t(i)&&$t(s)){if(!Lt(i,s))return!1}else if(i!==s)return!1}for(const t of n)if(!i.includes(t))return!1;return!0}function $t(t){return null!==t&&"object"==typeof t}
|
|
119
|
+
/**
|
|
120
|
+
* @license
|
|
121
|
+
* Copyright 2017 Google LLC
|
|
122
|
+
*
|
|
123
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
124
|
+
* you may not use this file except in compliance with the License.
|
|
125
|
+
* You may obtain a copy of the License at
|
|
126
|
+
*
|
|
127
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
128
|
+
*
|
|
129
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
130
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
131
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
132
|
+
* See the License for the specific language governing permissions and
|
|
133
|
+
* limitations under the License.
|
|
134
|
+
*/function Tt(t){const e=[];for(const[i,n]of Object.entries(t))Array.isArray(n)?n.forEach((t=>{e.push(encodeURIComponent(i)+"="+encodeURIComponent(t))})):e.push(encodeURIComponent(i)+"="+encodeURIComponent(n));return e.length?"&"+e.join("&"):""}class Mt{constructor(t,e){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=e,this.task.then((()=>{t(this)})).catch((t=>{this.error(t)}))}next(t){this.forEachObserver((e=>{e.next(t)}))}error(t){this.forEachObserver((e=>{e.error(t)})),this.close(t)}complete(){this.forEachObserver((t=>{t.complete()})),this.close()}subscribe(t,e,i){let n;if(void 0===t&&void 0===e&&void 0===i)throw new Error("Missing Observer.");n=function(t,e){if("object"!=typeof t||null===t)return!1;for(const i of e)if(i in t&&"function"==typeof t[i])return!0;return!1}(t,["next","error","complete"])?t:{next:t,error:e,complete:i},void 0===n.next&&(n.next=Ot),void 0===n.error&&(n.error=Ot),void 0===n.complete&&(n.complete=Ot);const o=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then((()=>{try{this.finalError?n.error(this.finalError):n.complete()}catch(t){}})),this.observers.push(n),o}unsubscribeOne(t){void 0!==this.observers&&void 0!==this.observers[t]&&(delete this.observers[t],this.observerCount-=1,0===this.observerCount&&void 0!==this.onNoObservers&&this.onNoObservers(this))}forEachObserver(t){if(!this.finalized)for(let e=0;e<this.observers.length;e++)this.sendOne(e,t)}sendOne(t,e){this.task.then((()=>{if(void 0!==this.observers&&void 0!==this.observers[t])try{e(this.observers[t])}catch(t){"undefined"!=typeof console&&console.error&&console.error(t)}}))}close(t){this.finalized||(this.finalized=!0,void 0!==t&&(this.finalError=t),this.task.then((()=>{this.observers=void 0,this.onNoObservers=void 0})))}}function Ot(){}
|
|
102
135
|
/**
|
|
103
136
|
* @license
|
|
104
137
|
* Copyright 2021 Google LLC
|
|
@@ -114,7 +147,7 @@ class St{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
114
147
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
115
148
|
* See the License for the specific language governing permissions and
|
|
116
149
|
* limitations under the License.
|
|
117
|
-
*/function
|
|
150
|
+
*/function Ft(t){return t&&t._delegate?t._delegate:t}class Nt{constructor(t,e,i){this.name=t,this.instanceFactory=e,this.type=i,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(t){return this.instantiationMode=t,this}setMultipleInstances(t){return this.multipleInstances=t,this}setServiceProps(t){return this.serviceProps=t,this}setInstanceCreatedCallback(t){return this.onInstanceCreated=t,this}}
|
|
118
151
|
/**
|
|
119
152
|
* @license
|
|
120
153
|
* Copyright 2019 Google LLC
|
|
@@ -147,7 +180,7 @@ class St{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new P
|
|
|
147
180
|
* See the License for the specific language governing permissions and
|
|
148
181
|
* limitations under the License.
|
|
149
182
|
*/
|
|
150
|
-
class
|
|
183
|
+
class Dt{constructor(t,e){this.name=t,this.container=e,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(t){const e=this.normalizeInstanceIdentifier(t);if(!this.instancesDeferred.has(e)){const t=new kt;if(this.instancesDeferred.set(e,t),this.isInitialized(e)||this.shouldAutoInitialize())try{const i=this.getOrInitializeService({instanceIdentifier:e});i&&t.resolve(i)}catch(t){}}return this.instancesDeferred.get(e).promise}getImmediate(t){var e;const i=this.normalizeInstanceIdentifier(null==t?void 0:t.identifier),n=null!==(e=null==t?void 0:t.optional)&&void 0!==e&&e;if(!this.isInitialized(i)&&!this.shouldAutoInitialize()){if(n)return null;throw Error(`Service ${this.name} is not available`)}try{return this.getOrInitializeService({instanceIdentifier:i})}catch(t){if(n)return null;throw t}}getComponent(){return this.component}setComponent(t){if(t.name!==this.name)throw Error(`Mismatching Component ${t.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=t,this.shouldAutoInitialize()){if(function(t){return"EAGER"===t.instantiationMode}
|
|
151
184
|
/**
|
|
152
185
|
* @license
|
|
153
186
|
* Copyright 2019 Google LLC
|
|
@@ -163,7 +196,7 @@ class It{constructor(t,e){this.name=t,this.container=e,this.component=null,this.
|
|
|
163
196
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
164
197
|
* See the License for the specific language governing permissions and
|
|
165
198
|
* limitations under the License.
|
|
166
|
-
*/(t))try{this.getOrInitializeService({instanceIdentifier:"[DEFAULT]"})}catch(t){}for(const[t,e]of this.instancesDeferred.entries()){const i=this.normalizeInstanceIdentifier(t);try{const t=this.getOrInitializeService({instanceIdentifier:i});e.resolve(t)}catch(t){}}}}clearInstance(t="[DEFAULT]"){this.instancesDeferred.delete(t),this.instancesOptions.delete(t),this.instances.delete(t)}async delete(){const t=Array.from(this.instances.values());await Promise.all([...t.filter((t=>"INTERNAL"in t)).map((t=>t.INTERNAL.delete())),...t.filter((t=>"_delete"in t)).map((t=>t._delete()))])}isComponentSet(){return null!=this.component}isInitialized(t="[DEFAULT]"){return this.instances.has(t)}getOptions(t="[DEFAULT]"){return this.instancesOptions.get(t)||{}}initialize(t={}){const{options:e={}}=t,i=this.normalizeInstanceIdentifier(t.instanceIdentifier);if(this.isInitialized(i))throw Error(`${this.name}(${i}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const
|
|
199
|
+
*/(t))try{this.getOrInitializeService({instanceIdentifier:"[DEFAULT]"})}catch(t){}for(const[t,e]of this.instancesDeferred.entries()){const i=this.normalizeInstanceIdentifier(t);try{const t=this.getOrInitializeService({instanceIdentifier:i});e.resolve(t)}catch(t){}}}}clearInstance(t="[DEFAULT]"){this.instancesDeferred.delete(t),this.instancesOptions.delete(t),this.instances.delete(t)}async delete(){const t=Array.from(this.instances.values());await Promise.all([...t.filter((t=>"INTERNAL"in t)).map((t=>t.INTERNAL.delete())),...t.filter((t=>"_delete"in t)).map((t=>t._delete()))])}isComponentSet(){return null!=this.component}isInitialized(t="[DEFAULT]"){return this.instances.has(t)}getOptions(t="[DEFAULT]"){return this.instancesOptions.get(t)||{}}initialize(t={}){const{options:e={}}=t,i=this.normalizeInstanceIdentifier(t.instanceIdentifier);if(this.isInitialized(i))throw Error(`${this.name}(${i}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const n=this.getOrInitializeService({instanceIdentifier:i,options:e});for(const[t,e]of this.instancesDeferred.entries()){i===this.normalizeInstanceIdentifier(t)&&e.resolve(n)}return n}onInit(t,e){var i;const n=this.normalizeInstanceIdentifier(e),o=null!==(i=this.onInitCallbacks.get(n))&&void 0!==i?i:new Set;o.add(t),this.onInitCallbacks.set(n,o);const s=this.instances.get(n);return s&&t(s,n),()=>{o.delete(t)}}invokeOnInitCallbacks(t,e){const i=this.onInitCallbacks.get(e);if(i)for(const n of i)try{n(t,e)}catch(t){}}getOrInitializeService({instanceIdentifier:t,options:e={}}){let i=this.instances.get(t);if(!i&&this.component&&(i=this.component.instanceFactory(this.container,{instanceIdentifier:(n=t,"[DEFAULT]"===n?void 0:n),options:e}),this.instances.set(t,i),this.instancesOptions.set(t,e),this.invokeOnInitCallbacks(i,t),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,t,i)}catch(t){}var n;return i||null}normalizeInstanceIdentifier(t="[DEFAULT]"){return this.component?this.component.multipleInstances?t:"[DEFAULT]":t}shouldAutoInitialize(){return!!this.component&&"EXPLICIT"!==this.component.instantiationMode}}class Rt{constructor(t){this.name=t,this.providers=new Map}addComponent(t){const e=this.getProvider(t.name);if(e.isComponentSet())throw new Error(`Component ${t.name} has already been registered with ${this.name}`);e.setComponent(t)}addOrOverwriteComponent(t){this.getProvider(t.name).isComponentSet()&&this.providers.delete(t.name),this.addComponent(t)}getProvider(t){if(this.providers.has(t))return this.providers.get(t);const e=new Dt(t,this);return this.providers.set(t,e),e}getProviders(){return Array.from(this.providers.values())}}
|
|
167
200
|
/**
|
|
168
201
|
* @license
|
|
169
202
|
* Copyright 2017 Google LLC
|
|
@@ -179,7 +212,7 @@ class It{constructor(t,e){this.name=t,this.container=e,this.component=null,this.
|
|
|
179
212
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
180
213
|
* See the License for the specific language governing permissions and
|
|
181
214
|
* limitations under the License.
|
|
182
|
-
*/var
|
|
215
|
+
*/var Pt;!function(t){t[t.DEBUG=0]="DEBUG",t[t.VERBOSE=1]="VERBOSE",t[t.INFO=2]="INFO",t[t.WARN=3]="WARN",t[t.ERROR=4]="ERROR",t[t.SILENT=5]="SILENT"}(Pt||(Pt={}));const jt={debug:Pt.DEBUG,verbose:Pt.VERBOSE,info:Pt.INFO,warn:Pt.WARN,error:Pt.ERROR,silent:Pt.SILENT},Vt=Pt.INFO,Ut={[Pt.DEBUG]:"log",[Pt.VERBOSE]:"log",[Pt.INFO]:"info",[Pt.WARN]:"warn",[Pt.ERROR]:"error"},Bt=(t,e,...i)=>{if(e<t.logLevel)return;const n=(new Date).toISOString(),o=Ut[e];if(!o)throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`);console[o](`[${n}] ${t.name}:`,...i)};class Ht{constructor(t){this.name=t,this._logLevel=Vt,this._logHandler=Bt,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(t){if(!(t in Pt))throw new TypeError(`Invalid value "${t}" assigned to \`logLevel\``);this._logLevel=t}setLogLevel(t){this._logLevel="string"==typeof t?jt[t]:t}get logHandler(){return this._logHandler}set logHandler(t){if("function"!=typeof t)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=t}get userLogHandler(){return this._userLogHandler}set userLogHandler(t){this._userLogHandler=t}debug(...t){this._userLogHandler&&this._userLogHandler(this,Pt.DEBUG,...t),this._logHandler(this,Pt.DEBUG,...t)}log(...t){this._userLogHandler&&this._userLogHandler(this,Pt.VERBOSE,...t),this._logHandler(this,Pt.VERBOSE,...t)}info(...t){this._userLogHandler&&this._userLogHandler(this,Pt.INFO,...t),this._logHandler(this,Pt.INFO,...t)}warn(...t){this._userLogHandler&&this._userLogHandler(this,Pt.WARN,...t),this._logHandler(this,Pt.WARN,...t)}error(...t){this._userLogHandler&&this._userLogHandler(this,Pt.ERROR,...t),this._logHandler(this,Pt.ERROR,...t)}}let zt,Zt;const Kt=new WeakMap,qt=new WeakMap,Jt=new WeakMap,Gt=new WeakMap,Wt=new WeakMap;let Yt={get(t,e,i){if(t instanceof IDBTransaction){if("done"===e)return qt.get(t);if("objectStoreNames"===e)return t.objectStoreNames||Jt.get(t);if("store"===e)return i.objectStoreNames[1]?void 0:i.objectStore(i.objectStoreNames[0])}return te(t[e])},set:(t,e,i)=>(t[e]=i,!0),has:(t,e)=>t instanceof IDBTransaction&&("done"===e||"store"===e)||e in t};function Xt(t){return t!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Zt||(Zt=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(ee(this),e),te(Kt.get(this))}:function(...e){return te(t.apply(ee(this),e))}:function(e,...i){const n=t.call(ee(this),e,...i);return Jt.set(n,e.sort?e.sort():[e]),te(n)}}function Qt(t){return"function"==typeof t?Xt(t):(t instanceof IDBTransaction&&function(t){if(qt.has(t))return;const e=new Promise(((e,i)=>{const n=()=>{t.removeEventListener("complete",o),t.removeEventListener("error",s),t.removeEventListener("abort",s)},o=()=>{e(),n()},s=()=>{i(t.error||new DOMException("AbortError","AbortError")),n()};t.addEventListener("complete",o),t.addEventListener("error",s),t.addEventListener("abort",s)}));qt.set(t,e)}(t),e=t,(zt||(zt=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some((t=>e instanceof t))?new Proxy(t,Yt):t);var e}function te(t){if(t instanceof IDBRequest)return function(t){const e=new Promise(((e,i)=>{const n=()=>{t.removeEventListener("success",o),t.removeEventListener("error",s)},o=()=>{e(te(t.result)),n()},s=()=>{i(t.error),n()};t.addEventListener("success",o),t.addEventListener("error",s)}));return e.then((e=>{e instanceof IDBCursor&&Kt.set(e,t)})).catch((()=>{})),Wt.set(e,t),e}(t);if(Gt.has(t))return Gt.get(t);const e=Qt(t);return e!==t&&(Gt.set(t,e),Wt.set(e,t)),e}const ee=t=>Wt.get(t);const ie=["get","getKey","getAll","getAllKeys","count"],ne=["put","add","delete","clear"],oe=new Map;function se(t,e){if(!(t instanceof IDBDatabase)||e in t||"string"!=typeof e)return;if(oe.get(e))return oe.get(e);const i=e.replace(/FromIndex$/,""),n=e!==i,o=ne.includes(i);if(!(i in(n?IDBIndex:IDBObjectStore).prototype)||!o&&!ie.includes(i))return;const s=async function(t,...e){const s=this.transaction(t,o?"readwrite":"readonly");let r=s.store;return n&&(r=r.index(e.shift())),(await Promise.all([r[i](...e),o&&s.done]))[0]};return oe.set(e,s),s}Yt=(t=>({...t,get:(e,i,n)=>se(e,i)||t.get(e,i,n),has:(e,i)=>!!se(e,i)||t.has(e,i)}))(Yt);
|
|
183
216
|
/**
|
|
184
217
|
* @license
|
|
185
218
|
* Copyright 2019 Google LLC
|
|
@@ -196,7 +229,7 @@ class It{constructor(t,e){this.name=t,this.container=e,this.component=null,this.
|
|
|
196
229
|
* See the License for the specific language governing permissions and
|
|
197
230
|
* limitations under the License.
|
|
198
231
|
*/
|
|
199
|
-
class
|
|
232
|
+
class re{constructor(t){this.container=t}getPlatformInfoString(){return this.container.getProviders().map((t=>{if(function(t){const e=t.getComponent();return"VERSION"===(null==e?void 0:e.type)}(t)){const e=t.getImmediate();return`${e.library}/${e.version}`}return null})).filter((t=>t)).join(" ")}}const ae="@firebase/app",le=new Ht("@firebase/app"),ce={[ae]:"fire-core","@firebase/app-compat":"fire-core-compat","@firebase/analytics":"fire-analytics","@firebase/analytics-compat":"fire-analytics-compat","@firebase/app-check":"fire-app-check","@firebase/app-check-compat":"fire-app-check-compat","@firebase/auth":"fire-auth","@firebase/auth-compat":"fire-auth-compat","@firebase/database":"fire-rtdb","@firebase/database-compat":"fire-rtdb-compat","@firebase/functions":"fire-fn","@firebase/functions-compat":"fire-fn-compat","@firebase/installations":"fire-iid","@firebase/installations-compat":"fire-iid-compat","@firebase/messaging":"fire-fcm","@firebase/messaging-compat":"fire-fcm-compat","@firebase/performance":"fire-perf","@firebase/performance-compat":"fire-perf-compat","@firebase/remote-config":"fire-rc","@firebase/remote-config-compat":"fire-rc-compat","@firebase/storage":"fire-gcs","@firebase/storage-compat":"fire-gcs-compat","@firebase/firestore":"fire-fst","@firebase/firestore-compat":"fire-fst-compat","fire-js":"fire-js",firebase:"fire-js-all"},he=new Map,de=new Map;function ue(t,e){try{t.container.addComponent(e)}catch(i){le.debug(`Component ${e.name} failed to register with FirebaseApp ${t.name}`,i)}}function pe(t){const e=t.name;if(de.has(e))return le.debug(`There were multiple attempts to register component ${e}.`),!1;de.set(e,t);for(const e of he.values())ue(e,t);return!0}function fe(t,e){const i=t.container.getProvider("heartbeat").getImmediate({optional:!0});return i&&i.triggerHeartbeat(),t.container.getProvider(e)}
|
|
200
233
|
/**
|
|
201
234
|
* @license
|
|
202
235
|
* Copyright 2019 Google LLC
|
|
@@ -212,8 +245,7 @@ class te{constructor(t){this.container=t}getPlatformInfoString(){return this.con
|
|
|
212
245
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
213
246
|
* See the License for the specific language governing permissions and
|
|
214
247
|
* limitations under the License.
|
|
215
|
-
*/
|
|
216
|
-
const le=new kt("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}."});
|
|
248
|
+
*/const ve=new _t("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}."});
|
|
217
249
|
/**
|
|
218
250
|
* @license
|
|
219
251
|
* Copyright 2019 Google LLC
|
|
@@ -230,7 +262,23 @@ const le=new kt("app","Firebase",{"no-app":"No Firebase App '{$appName}' has bee
|
|
|
230
262
|
* See the License for the specific language governing permissions and
|
|
231
263
|
* limitations under the License.
|
|
232
264
|
*/
|
|
233
|
-
class
|
|
265
|
+
class me{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t),this._config=Object.assign({},e),this._name=e.name,this._automaticDataCollectionEnabled=e.automaticDataCollectionEnabled,this._container=i,this.container.addComponent(new Nt("app",(()=>this),"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(t){this.checkDestroyed(),this._automaticDataCollectionEnabled=t}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(t){this._isDeleted=t}checkDestroyed(){if(this.isDeleted)throw ve.create("app-deleted",{appName:this._name})}}
|
|
266
|
+
/**
|
|
267
|
+
* @license
|
|
268
|
+
* Copyright 2019 Google LLC
|
|
269
|
+
*
|
|
270
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
271
|
+
* you may not use this file except in compliance with the License.
|
|
272
|
+
* You may obtain a copy of the License at
|
|
273
|
+
*
|
|
274
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
275
|
+
*
|
|
276
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
277
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
278
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
279
|
+
* See the License for the specific language governing permissions and
|
|
280
|
+
* limitations under the License.
|
|
281
|
+
*/function we(t,e={}){let i=t;if("object"!=typeof e){e={name:e}}const n=Object.assign({name:"[DEFAULT]",automaticDataCollectionEnabled:!1},e),o=n.name;if("string"!=typeof o||!o)throw ve.create("bad-app-name",{appName:String(o)});var s;if(i||(i=null===(s=xt())||void 0===s?void 0:s.config),!i)throw ve.create("no-options");const r=he.get(o);if(r){if(Lt(i,r.options)&&Lt(n,r.config))return r;throw ve.create("duplicate-app",{appName:o})}const a=new Rt(o);for(const t of de.values())a.addComponent(t);const l=new me(i,n,a);return he.set(o,l),l}function ge(t="[DEFAULT]"){const e=he.get(t);if(!e&&"[DEFAULT]"===t)return we();if(!e)throw ve.create("no-app",{appName:t});return e}function ye(t,e,i){var n;let o=null!==(n=ce[t])&&void 0!==n?n:t;i&&(o+=`-${i}`);const s=o.match(/\s|\//),r=e.match(/\s|\//);if(s||r){const t=[`Unable to register library "${o}" with version "${e}":`];return s&&t.push(`library name "${o}" contains illegal characters (whitespace or "/")`),s&&r&&t.push("and"),r&&t.push(`version name "${e}" contains illegal characters (whitespace or "/")`),void le.warn(t.join(" "))}pe(new Nt(`${o}-version`,(()=>({library:o,version:e})),"VERSION"))}
|
|
234
282
|
/**
|
|
235
283
|
* @license
|
|
236
284
|
* Copyright 2021 Google LLC
|
|
@@ -246,7 +294,7 @@ class ce{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
246
294
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
247
295
|
* See the License for the specific language governing permissions and
|
|
248
296
|
* limitations under the License.
|
|
249
|
-
*/const
|
|
297
|
+
*/const Ce="firebase-heartbeat-store";let be=null;function xe(){return be||(be=function(t,e,{blocked:i,upgrade:n,blocking:o,terminated:s}={}){const r=indexedDB.open(t,e),a=te(r);return n&&r.addEventListener("upgradeneeded",(t=>{n(te(r.result),t.oldVersion,t.newVersion,te(r.transaction))})),i&&r.addEventListener("blocked",(()=>i())),a.then((t=>{s&&t.addEventListener("close",(()=>s())),o&&t.addEventListener("versionchange",(()=>o()))})).catch((()=>{})),a}("firebase-heartbeat-database",1,{upgrade:(t,e)=>{if(0===e)t.createObjectStore(Ce)}}).catch((t=>{throw ve.create("idb-open",{originalErrorMessage:t.message})}))),be}async function Se(t,e){try{const i=(await xe()).transaction(Ce,"readwrite"),n=i.objectStore(Ce);return await n.put(e,Ee(t)),i.done}catch(t){if(t instanceof It)le.warn(t.message);else{const e=ve.create("idb-set",{originalErrorMessage:null==t?void 0:t.message});le.warn(e.message)}}}function Ee(t){return`${t.name}!${t.options.appId}`}
|
|
250
298
|
/**
|
|
251
299
|
* @license
|
|
252
300
|
* Copyright 2021 Google LLC
|
|
@@ -262,7 +310,7 @@ class ce{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
262
310
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
263
311
|
* See the License for the specific language governing permissions and
|
|
264
312
|
* limitations under the License.
|
|
265
|
-
*/class
|
|
313
|
+
*/class ke{constructor(t){this.container=t,this._heartbeatsCache=null;const e=this.container.getProvider("app").getImmediate();this._storage=new _e(e),this._heartbeatsCachePromise=this._storage.read().then((t=>(this._heartbeatsCache=t,t)))}async triggerHeartbeat(){const t=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),e=Ie();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=Ie(),{heartbeatsToSend:e,unsentEntries:i}=function(t,e=1024){const i=[];let n=t.slice();for(const o of t){const t=i.find((t=>t.agent===o.agent));if(t){if(t.dates.push(o.date),Ae(i)>e){t.dates.pop();break}}else if(i.push({agent:o.agent,dates:[o.date]}),Ae(i)>e){i.pop();break}n=n.slice(1)}return{heartbeatsToSend:i,unsentEntries:n}}(this._heartbeatsCache.heartbeats),n=gt(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)),n}}function Ie(){return(new Date).toISOString().substring(0,10)}class _e{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 n="validate-browser-context-for-indexeddb-analytics-module",o=self.indexedDB.open(n);o.onsuccess=()=>{o.result.close(),i||self.indexedDB.deleteDatabase(n),t(!0)},o.onupgradeneeded=()=>{i=!1},o.onerror=()=>{var t;e((null===(t=o.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 xe()).transaction(Ce).objectStore(Ce).get(Ee(t))}catch(t){if(t instanceof It)le.warn(t.message);else{const e=ve.create("idb-get",{originalErrorMessage:null==t?void 0:t.message});le.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 Se(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 Se(this.app,{lastSentHeartbeatDate:null!==(e=t.lastSentHeartbeatDate)&&void 0!==e?e:i.lastSentHeartbeatDate,heartbeats:[...i.heartbeats,...t.heartbeats]})}}}function Ae(t){return gt(JSON.stringify({version:2,heartbeats:t})).length}
|
|
266
314
|
/**
|
|
267
315
|
* @license
|
|
268
316
|
* Copyright 2019 Google LLC
|
|
@@ -278,7 +326,7 @@ class ce{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
278
326
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
279
327
|
* See the License for the specific language governing permissions and
|
|
280
328
|
* limitations under the License.
|
|
281
|
-
*/var
|
|
329
|
+
*/var Le;Le="",pe(new Nt("platform-logger",(t=>new re(t)),"PRIVATE")),pe(new Nt("heartbeat",(t=>new ke(t)),"PRIVATE")),ye(ae,"0.9.0",Le),ye(ae,"0.9.0","esm2017"),ye("fire-js","");
|
|
282
330
|
/**
|
|
283
331
|
* @license
|
|
284
332
|
* Copyright 2020 Google LLC
|
|
@@ -295,7 +343,7 @@ class ce{constructor(t,e,i){this._isDeleted=!1,this._options=Object.assign({},t)
|
|
|
295
343
|
* See the License for the specific language governing permissions and
|
|
296
344
|
* limitations under the License.
|
|
297
345
|
*/
|
|
298
|
-
|
|
346
|
+
ye("firebase","9.15.0","app");function $e(t,e){const i={};for(const n in t)t.hasOwnProperty(n)&&(i[n]=e(t[n]));return i}function Te(t){if(null==t)return null;if(t instanceof Number&&(t=t.valueOf()),"number"==typeof t&&isFinite(t))return t;if(!0===t||!1===t)return t;if("[object String]"===Object.prototype.toString.call(t))return t;if(t instanceof Date)return t.toISOString();if(Array.isArray(t))return t.map((t=>Te(t)));if("function"==typeof t||"object"==typeof t)return $e(t,(t=>Te(t)));throw new Error("Data cannot be encoded in JSON: "+t)}function Me(t){if(null==t)return t;if(t["@type"])switch(t["@type"]){case"type.googleapis.com/google.protobuf.Int64Value":case"type.googleapis.com/google.protobuf.UInt64Value":{const e=Number(t.value);if(isNaN(e))throw new Error("Data cannot be decoded from JSON: "+t);return e}default:throw new Error("Data cannot be decoded from JSON: "+t)}return Array.isArray(t)?t.map((t=>Me(t))):"function"==typeof t||"object"==typeof t?$e(t,(t=>Me(t))):t}
|
|
299
347
|
/**
|
|
300
348
|
* @license
|
|
301
349
|
* Copyright 2020 Google LLC
|
|
@@ -311,7 +359,7 @@ he("firebase","9.15.0","app");function xe(t,e){const i={};for(const o in t)t.has
|
|
|
311
359
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
312
360
|
* See the License for the specific language governing permissions and
|
|
313
361
|
* limitations under the License.
|
|
314
|
-
*/const
|
|
362
|
+
*/const Oe={OK:"ok",CANCELLED:"cancelled",UNKNOWN:"unknown",INVALID_ARGUMENT:"invalid-argument",DEADLINE_EXCEEDED:"deadline-exceeded",NOT_FOUND:"not-found",ALREADY_EXISTS:"already-exists",PERMISSION_DENIED:"permission-denied",UNAUTHENTICATED:"unauthenticated",RESOURCE_EXHAUSTED:"resource-exhausted",FAILED_PRECONDITION:"failed-precondition",ABORTED:"aborted",OUT_OF_RANGE:"out-of-range",UNIMPLEMENTED:"unimplemented",INTERNAL:"internal",UNAVAILABLE:"unavailable",DATA_LOSS:"data-loss"};
|
|
315
363
|
/**
|
|
316
364
|
* @license
|
|
317
365
|
* Copyright 2017 Google LLC
|
|
@@ -327,7 +375,7 @@ he("firebase","9.15.0","app");function xe(t,e){const i={};for(const o in t)t.has
|
|
|
327
375
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
328
376
|
* See the License for the specific language governing permissions and
|
|
329
377
|
* limitations under the License.
|
|
330
|
-
*/class
|
|
378
|
+
*/class Fe extends It{constructor(t,e,i){super(`functions/${t}`,e||""),this.details=i}}
|
|
331
379
|
/**
|
|
332
380
|
* @license
|
|
333
381
|
* Copyright 2017 Google LLC
|
|
@@ -344,7 +392,7 @@ he("firebase","9.15.0","app");function xe(t,e){const i={};for(const o in t)t.has
|
|
|
344
392
|
* See the License for the specific language governing permissions and
|
|
345
393
|
* limitations under the License.
|
|
346
394
|
*/
|
|
347
|
-
class
|
|
395
|
+
class Ne{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=null,this.auth=t.getImmediate({optional:!0}),this.messaging=e.getImmediate({optional:!0}),this.auth||t.get().then((t=>this.auth=t),(()=>{})),this.messaging||e.get().then((t=>this.messaging=t),(()=>{})),this.appCheck||i.get().then((t=>this.appCheck=t),(()=>{}))}async getAuthToken(){if(this.auth)try{const t=await this.auth.getToken();return null==t?void 0:t.accessToken}catch(t){return}}async getMessagingToken(){if(this.messaging&&"Notification"in self&&"granted"===Notification.permission)try{return await this.messaging.getToken()}catch(t){return}}async getAppCheckToken(){if(this.appCheck){const t=await this.appCheck.getToken();return t.error?null:t.token}return null}async getContext(){return{authToken:await this.getAuthToken(),messagingToken:await this.getMessagingToken(),appCheckToken:await this.getAppCheckToken()}}}
|
|
348
396
|
/**
|
|
349
397
|
* @license
|
|
350
398
|
* Copyright 2017 Google LLC
|
|
@@ -360,7 +408,218 @@ class Le{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=nul
|
|
|
360
408
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
361
409
|
* See the License for the specific language governing permissions and
|
|
362
410
|
* limitations under the License.
|
|
363
|
-
*/class
|
|
411
|
+
*/class De{constructor(t,e,i,n,o="us-central1",s){this.app=t,this.fetchImpl=s,this.emulatorOrigin=null,this.contextProvider=new Ne(e,i,n),this.cancelAllRequests=new Promise((t=>{this.deleteService=()=>Promise.resolve(t())}));try{const t=new URL(o);this.customDomain=t.origin,this.region="us-central1"}catch(t){this.customDomain=null,this.region=o}}_delete(){return this.deleteService()}_url(t){const e=this.app.options.projectId;if(null!==this.emulatorOrigin){return`${this.emulatorOrigin}/${e}/${this.region}/${t}`}return null!==this.customDomain?`${this.customDomain}/${t}`:`https://${this.region}-${e}.cloudfunctions.net/${t}`}}function Re(t,e,i){return n=>function(t,e,i,n){const o=t._url(e);return async function(t,e,i,n){const o={data:i=Te(i)},s={},r=await t.contextProvider.getContext();r.authToken&&(s.Authorization="Bearer "+r.authToken);r.messagingToken&&(s["Firebase-Instance-ID-Token"]=r.messagingToken);null!==r.appCheckToken&&(s["X-Firebase-AppCheck"]=r.appCheckToken);const a=function(t){let e=null;return{promise:new Promise(((i,n)=>{e=setTimeout((()=>{n(new Fe("deadline-exceeded","deadline-exceeded"))}),t)})),cancel:()=>{e&&clearTimeout(e)}}}(n.timeout||7e4),l=await Promise.race([Pe(e,o,s,t.fetchImpl),a.promise,t.cancelAllRequests]);if(a.cancel(),!l)throw new Fe("cancelled","Firebase Functions instance was deleted.");const c=function(t,e){let i,n=function(t){if(t>=200&&t<300)return"ok";switch(t){case 0:case 500:return"internal";case 400:return"invalid-argument";case 401:return"unauthenticated";case 403:return"permission-denied";case 404:return"not-found";case 409:return"aborted";case 429:return"resource-exhausted";case 499:return"cancelled";case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline-exceeded"}return"unknown"}(t),o=n;try{const t=e&&e.error;if(t){const e=t.status;if("string"==typeof e){if(!Oe[e])return new Fe("internal","internal");n=Oe[e],o=e}const s=t.message;"string"==typeof s&&(o=s),i=t.details,void 0!==i&&(i=Me(i))}}catch(t){}return"ok"===n?null:new Fe(n,o,i)}(l.status,l.json);if(c)throw c;if(!l.json)throw new Fe("internal","Response is not valid JSON object.");let h=l.json.data;void 0===h&&(h=l.json.result);if(void 0===h)throw new Fe("internal","Response is missing data field.");return{data:Me(h)}}(t,o,i,n)}(t,e,n,i||{})}async function Pe(t,e,i,n){let o;i["Content-Type"]="application/json";try{o=await n(t,{method:"POST",body:JSON.stringify(e),headers:i})}catch(t){return{status:0,json:null}}let s=null;try{s=await o.json()}catch(t){}return{status:o.status,json:s}}const je="@firebase/functions";function Ve(t,e,i){return Re(Ft(t),e,i)}function Ue(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(i[n[o]]=t[n[o]])}return i}function Be(){return{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}}!function(t,e){pe(new Nt("functions",((e,{instanceIdentifier:i})=>{const n=e.getProvider("app").getImmediate(),o=e.getProvider("auth-internal"),s=e.getProvider("messaging-internal"),r=e.getProvider("app-check-internal");return new De(n,o,s,r,i,t)}),"PUBLIC").setMultipleInstances(!0)),ye(je,"0.9.0",e),ye(je,"0.9.0","esm2017")}
|
|
412
|
+
/**
|
|
413
|
+
* @license
|
|
414
|
+
* Copyright 2020 Google LLC
|
|
415
|
+
*
|
|
416
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
417
|
+
* you may not use this file except in compliance with the License.
|
|
418
|
+
* You may obtain a copy of the License at
|
|
419
|
+
*
|
|
420
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
421
|
+
*
|
|
422
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
423
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
424
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
425
|
+
* See the License for the specific language governing permissions and
|
|
426
|
+
* limitations under the License.
|
|
427
|
+
*/(fetch.bind(self));const He=Be,ze=new _t("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."}),Ze=new Ht("@firebase/auth");function Ke(t,...e){Ze.logLevel<=Pt.ERROR&&Ze.error(`Auth (9.15.0): ${t}`,...e)}
|
|
428
|
+
/**
|
|
429
|
+
* @license
|
|
430
|
+
* Copyright 2020 Google LLC
|
|
431
|
+
*
|
|
432
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
433
|
+
* you may not use this file except in compliance with the License.
|
|
434
|
+
* You may obtain a copy of the License at
|
|
435
|
+
*
|
|
436
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
437
|
+
*
|
|
438
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
439
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
440
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
441
|
+
* See the License for the specific language governing permissions and
|
|
442
|
+
* limitations under the License.
|
|
443
|
+
*/function qe(t,...e){throw Ge(t,...e)}function Je(t,...e){return Ge(t,...e)}function Ge(t,...e){if("string"!=typeof t){const i=e[0],n=[...e.slice(1)];return n[0]&&(n[0].appName=t.name),t._errorFactory.create(i,...n)}return ze.create(t,...e)}function We(t,e,...i){if(!t)throw Ge(e,...i)}function Ye(t){const e="INTERNAL ASSERTION FAILED: "+t;throw Ke(e),new Error(e)}function Xe(t,e){t||Ye(e)}
|
|
444
|
+
/**
|
|
445
|
+
* @license
|
|
446
|
+
* Copyright 2020 Google LLC
|
|
447
|
+
*
|
|
448
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
449
|
+
* you may not use this file except in compliance with the License.
|
|
450
|
+
* You may obtain a copy of the License at
|
|
451
|
+
*
|
|
452
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
453
|
+
*
|
|
454
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
455
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
456
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
457
|
+
* See the License for the specific language governing permissions and
|
|
458
|
+
* limitations under the License.
|
|
459
|
+
*/const Qe=new Map;function ti(t){Xe(t instanceof Function,"Expected a class definition");let e=Qe.get(t);return e?(Xe(e instanceof t,"Instance stored in cache mismatched with class"),e):(e=new t,Qe.set(t,e),e)}
|
|
460
|
+
/**
|
|
461
|
+
* @license
|
|
462
|
+
* Copyright 2020 Google LLC
|
|
463
|
+
*
|
|
464
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
465
|
+
* you may not use this file except in compliance with the License.
|
|
466
|
+
* You may obtain a copy of the License at
|
|
467
|
+
*
|
|
468
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
469
|
+
*
|
|
470
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
471
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
472
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
473
|
+
* See the License for the specific language governing permissions and
|
|
474
|
+
* limitations under the License.
|
|
475
|
+
*/
|
|
476
|
+
/**
|
|
477
|
+
* @license
|
|
478
|
+
* Copyright 2020 Google LLC
|
|
479
|
+
*
|
|
480
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
481
|
+
* you may not use this file except in compliance with the License.
|
|
482
|
+
* You may obtain a copy of the License at
|
|
483
|
+
*
|
|
484
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
485
|
+
*
|
|
486
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
487
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
488
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
489
|
+
* See the License for the specific language governing permissions and
|
|
490
|
+
* limitations under the License.
|
|
491
|
+
*/
|
|
492
|
+
function ei(){var t;return"undefined"!=typeof self&&(null===(t=self.location)||void 0===t?void 0:t.href)||""}function ii(){var t;return"undefined"!=typeof self&&(null===(t=self.location)||void 0===t?void 0:t.protocol)||null}
|
|
493
|
+
/**
|
|
494
|
+
* @license
|
|
495
|
+
* Copyright 2020 Google LLC
|
|
496
|
+
*
|
|
497
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
498
|
+
* you may not use this file except in compliance with the License.
|
|
499
|
+
* You may obtain a copy of the License at
|
|
500
|
+
*
|
|
501
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
502
|
+
*
|
|
503
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
504
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
505
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
506
|
+
* See the License for the specific language governing permissions and
|
|
507
|
+
* limitations under the License.
|
|
508
|
+
*/function ni(){return"undefined"==typeof navigator||!navigator||!("onLine"in navigator)||"boolean"!=typeof navigator.onLine||"http:"!==ii()&&"https:"!==ii()&&!function(){const t="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof t&&void 0!==t.id}()&&!("connection"in navigator)||navigator.onLine}
|
|
509
|
+
/**
|
|
510
|
+
* @license
|
|
511
|
+
* Copyright 2020 Google LLC
|
|
512
|
+
*
|
|
513
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
514
|
+
* you may not use this file except in compliance with the License.
|
|
515
|
+
* You may obtain a copy of the License at
|
|
516
|
+
*
|
|
517
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
518
|
+
*
|
|
519
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
520
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
521
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
522
|
+
* See the License for the specific language governing permissions and
|
|
523
|
+
* limitations under the License.
|
|
524
|
+
*/
|
|
525
|
+
class oi{constructor(t,e){this.shortDelay=t,this.longDelay=e,Xe(e>t,"Short delay should be less than long delay!"),this.isMobile="undefined"!=typeof window&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(Ct())||"object"==typeof navigator&&"ReactNative"===navigator.product}get(){return ni()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}}
|
|
526
|
+
/**
|
|
527
|
+
* @license
|
|
528
|
+
* Copyright 2020 Google LLC
|
|
529
|
+
*
|
|
530
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
531
|
+
* you may not use this file except in compliance with the License.
|
|
532
|
+
* You may obtain a copy of the License at
|
|
533
|
+
*
|
|
534
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
535
|
+
*
|
|
536
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
537
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
538
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
539
|
+
* See the License for the specific language governing permissions and
|
|
540
|
+
* limitations under the License.
|
|
541
|
+
*/function si(t,e){Xe(t.emulator,"Emulator should always be set here");const{url:i}=t.emulator;return e?`${i}${e.startsWith("/")?e.slice(1):e}`:i}
|
|
542
|
+
/**
|
|
543
|
+
* @license
|
|
544
|
+
* Copyright 2020 Google LLC
|
|
545
|
+
*
|
|
546
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
547
|
+
* you may not use this file except in compliance with the License.
|
|
548
|
+
* You may obtain a copy of the License at
|
|
549
|
+
*
|
|
550
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
551
|
+
*
|
|
552
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
553
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
554
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
555
|
+
* See the License for the specific language governing permissions and
|
|
556
|
+
* limitations under the License.
|
|
557
|
+
*/class ri{static initialize(t,e,i){this.fetchImpl=t,e&&(this.headersImpl=e),i&&(this.responseImpl=i)}static fetch(){return this.fetchImpl?this.fetchImpl:"undefined"!=typeof self&&"fetch"in self?self.fetch:void Ye("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){return this.headersImpl?this.headersImpl:"undefined"!=typeof self&&"Headers"in self?self.Headers:void Ye("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){return this.responseImpl?this.responseImpl:"undefined"!=typeof self&&"Response"in self?self.Response:void Ye("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}}
|
|
558
|
+
/**
|
|
559
|
+
* @license
|
|
560
|
+
* Copyright 2020 Google LLC
|
|
561
|
+
*
|
|
562
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
563
|
+
* you may not use this file except in compliance with the License.
|
|
564
|
+
* You may obtain a copy of the License at
|
|
565
|
+
*
|
|
566
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
567
|
+
*
|
|
568
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
569
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
570
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
571
|
+
* See the License for the specific language governing permissions and
|
|
572
|
+
* limitations under the License.
|
|
573
|
+
*/const ai={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"internal-error",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error"},li=new oi(3e4,6e4);
|
|
574
|
+
/**
|
|
575
|
+
* @license
|
|
576
|
+
* Copyright 2020 Google LLC
|
|
577
|
+
*
|
|
578
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
579
|
+
* you may not use this file except in compliance with the License.
|
|
580
|
+
* You may obtain a copy of the License at
|
|
581
|
+
*
|
|
582
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
583
|
+
*
|
|
584
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
585
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
586
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
587
|
+
* See the License for the specific language governing permissions and
|
|
588
|
+
* limitations under the License.
|
|
589
|
+
*/async function ci(t,e,i,n,o={}){return hi(t,o,(async()=>{let o={},s={};n&&("GET"===e?s=n:o={body:JSON.stringify(n)});const r=Tt(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),ri.fetch()(di(t,t.config.apiHost,i,r),Object.assign({method:e,headers:a,referrerPolicy:"no-referrer"},o))}))}async function hi(t,e,i){t._canInitEmulator=!1;const n=Object.assign(Object.assign({},ai),e);try{const e=new ui(t),o=await Promise.race([i(),e.promise]);e.clearNetworkTimeout();const s=await o.json();if("needConfirmation"in s)throw pi(t,"account-exists-with-different-credential",s);if(o.ok&&!("errorMessage"in s))return s;{const e=o.ok?s.errorMessage:s.error.message,[i,r]=e.split(" : ");if("FEDERATED_USER_ID_ALREADY_LINKED"===i)throw pi(t,"credential-already-in-use",s);if("EMAIL_EXISTS"===i)throw pi(t,"email-already-in-use",s);if("USER_DISABLED"===i)throw pi(t,"user-disabled",s);const a=n[i]||i.toLowerCase().replace(/[_\s]+/g,"-");if(r)throw function(t,e,i){const n=Object.assign(Object.assign({},He()),{[e]:i});return new _t("auth","Firebase",n).create(e,{appName:t.name})}(t,a,r);qe(t,a)}}catch(e){if(e instanceof It)throw e;qe(t,"network-request-failed")}}function di(t,e,i,n){const o=`${e}${i}?${n}`;return t.config.emulator?si(t.config,o):`${t.config.apiScheme}://${o}`}class ui{constructor(t){this.auth=t,this.timer=null,this.promise=new Promise(((t,e)=>{this.timer=setTimeout((()=>e(Je(this.auth,"network-request-failed"))),li.get())}))}clearNetworkTimeout(){clearTimeout(this.timer)}}function pi(t,e,i){const n={appName:t.name};i.email&&(n.email=i.email),i.phoneNumber&&(n.phoneNumber=i.phoneNumber);const o=Je(t,e,n);return o.customData._tokenResponse=i,o}
|
|
590
|
+
/**
|
|
591
|
+
* @license
|
|
592
|
+
* Copyright 2020 Google LLC
|
|
593
|
+
*
|
|
594
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
595
|
+
* you may not use this file except in compliance with the License.
|
|
596
|
+
* You may obtain a copy of the License at
|
|
597
|
+
*
|
|
598
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
599
|
+
*
|
|
600
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
601
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
602
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
603
|
+
* See the License for the specific language governing permissions and
|
|
604
|
+
* limitations under the License.
|
|
605
|
+
*/
|
|
606
|
+
/**
|
|
607
|
+
* @license
|
|
608
|
+
* Copyright 2020 Google LLC
|
|
609
|
+
*
|
|
610
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
611
|
+
* you may not use this file except in compliance with the License.
|
|
612
|
+
* You may obtain a copy of the License at
|
|
613
|
+
*
|
|
614
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
615
|
+
*
|
|
616
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
617
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
618
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
619
|
+
* See the License for the specific language governing permissions and
|
|
620
|
+
* limitations under the License.
|
|
621
|
+
*/
|
|
622
|
+
function fi(t){if(t)try{const e=new Date(Number(t));if(!isNaN(e.getTime()))return e.toUTCString()}catch(t){}}function vi(t){return 1e3*Number(t)}function mi(t){const[e,i,n]=t.split(".");if(void 0===e||void 0===i||void 0===n)return Ke("JWT malformed, contained fewer than 3 sections"),null;try{const t=yt(i);return t?JSON.parse(t):(Ke("Failed to decode base64 JWT payload"),null)}catch(t){return Ke("Caught error parsing JWT payload as JSON",null==t?void 0:t.toString()),null}}
|
|
364
623
|
/**
|
|
365
624
|
* @license
|
|
366
625
|
* Copyright 2020 Google LLC
|
|
@@ -376,15 +635,869 @@ class Le{constructor(t,e,i){this.auth=null,this.messaging=null,this.appCheck=nul
|
|
|
376
635
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
377
636
|
* See the License for the specific language governing permissions and
|
|
378
637
|
* limitations under the License.
|
|
379
|
-
*/(fetch.bind(self));class He{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 Be extends He{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 Be(e,t)}toString(t=De){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 De={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 Be(i,e/2)}},je={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 Be(i,e)}},Te={stringify(t){try{return decodeURIComponent(escape(je.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>je.parse(unescape(encodeURIComponent(t)))};class _e extends He{constructor(){super(),this._minBufferSize=0}reset(){this._data=new Be,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=Te.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 Be(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class Oe extends _e{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new He,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new Ue(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 Ue extends He{constructor(t,e){super();const i=new t;this._hasher=i;let o=e;"string"==typeof o&&(o=Te.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 ze=Be;class Re extends He{constructor(t,e){super(),this.high=t,this.low=e}}class Ze extends He{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 ze.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 Pe={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 Be.create(o,n)})(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},Ne=[];for(let t=0;t<64;t+=1)Ne[t]=4294967296*Math.abs(Math.sin(t+1))|0;const Ke=(t,e,i,o,n,s,r)=>{const a=t+(e&i|~e&o)+n+r;return(a<<s|a>>>32-s)+e},qe=(t,e,i,o,n,s,r)=>{const a=t+(e&o|i&~o)+n+r;return(a<<s|a>>>32-s)+e},Je=(t,e,i,o,n,s,r)=>{const a=t+(e^i^o)+n+r;return(a<<s|a>>>32-s)+e},Ye=(t,e,i,o,n,s,r)=>{const a=t+(i^(e|~o))+n+r;return(a<<s|a>>>32-s)+e};class We extends Oe{_doReset(){this._hash=new Be([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],f=i[e+11],m=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],S=o[3];y=Ke(y,b,x,S,n,7,Ne[0]),S=Ke(S,y,b,x,s,12,Ne[1]),x=Ke(x,S,y,b,r,17,Ne[2]),b=Ke(b,x,S,y,a,22,Ne[3]),y=Ke(y,b,x,S,l,7,Ne[4]),S=Ke(S,y,b,x,c,12,Ne[5]),x=Ke(x,S,y,b,d,17,Ne[6]),b=Ke(b,x,S,y,h,22,Ne[7]),y=Ke(y,b,x,S,u,7,Ne[8]),S=Ke(S,y,b,x,p,12,Ne[9]),x=Ke(x,S,y,b,v,17,Ne[10]),b=Ke(b,x,S,y,f,22,Ne[11]),y=Ke(y,b,x,S,m,7,Ne[12]),S=Ke(S,y,b,x,g,12,Ne[13]),x=Ke(x,S,y,b,w,17,Ne[14]),b=Ke(b,x,S,y,C,22,Ne[15]),y=qe(y,b,x,S,s,5,Ne[16]),S=qe(S,y,b,x,d,9,Ne[17]),x=qe(x,S,y,b,f,14,Ne[18]),b=qe(b,x,S,y,n,20,Ne[19]),y=qe(y,b,x,S,c,5,Ne[20]),S=qe(S,y,b,x,v,9,Ne[21]),x=qe(x,S,y,b,C,14,Ne[22]),b=qe(b,x,S,y,l,20,Ne[23]),y=qe(y,b,x,S,p,5,Ne[24]),S=qe(S,y,b,x,w,9,Ne[25]),x=qe(x,S,y,b,a,14,Ne[26]),b=qe(b,x,S,y,u,20,Ne[27]),y=qe(y,b,x,S,g,5,Ne[28]),S=qe(S,y,b,x,r,9,Ne[29]),x=qe(x,S,y,b,h,14,Ne[30]),b=qe(b,x,S,y,m,20,Ne[31]),y=Je(y,b,x,S,c,4,Ne[32]),S=Je(S,y,b,x,u,11,Ne[33]),x=Je(x,S,y,b,f,16,Ne[34]),b=Je(b,x,S,y,w,23,Ne[35]),y=Je(y,b,x,S,s,4,Ne[36]),S=Je(S,y,b,x,l,11,Ne[37]),x=Je(x,S,y,b,h,16,Ne[38]),b=Je(b,x,S,y,v,23,Ne[39]),y=Je(y,b,x,S,g,4,Ne[40]),S=Je(S,y,b,x,n,11,Ne[41]),x=Je(x,S,y,b,a,16,Ne[42]),b=Je(b,x,S,y,d,23,Ne[43]),y=Je(y,b,x,S,p,4,Ne[44]),S=Je(S,y,b,x,m,11,Ne[45]),x=Je(x,S,y,b,C,16,Ne[46]),b=Je(b,x,S,y,r,23,Ne[47]),y=Ye(y,b,x,S,n,6,Ne[48]),S=Ye(S,y,b,x,h,10,Ne[49]),x=Ye(x,S,y,b,w,15,Ne[50]),b=Ye(b,x,S,y,c,21,Ne[51]),y=Ye(y,b,x,S,m,6,Ne[52]),S=Ye(S,y,b,x,a,10,Ne[53]),x=Ye(x,S,y,b,v,15,Ne[54]),b=Ye(b,x,S,y,s,21,Ne[55]),y=Ye(y,b,x,S,u,6,Ne[56]),S=Ye(S,y,b,x,C,10,Ne[57]),x=Ye(x,S,y,b,d,15,Ne[58]),b=Ye(b,x,S,y,g,21,Ne[59]),y=Ye(y,b,x,S,l,6,Ne[60]),S=Ye(S,y,b,x,f,10,Ne[61]),x=Ye(x,S,y,b,r,15,Ne[62]),b=Ye(b,x,S,y,p,21,Ne[63]),o[0]=o[0]+y|0,o[1]=o[1]+b|0,o[2]=o[2]+x|0,o[3]=o[3]+S|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 Ge=Oe._createHelper(We),Xe=Oe._createHmacHelper(We);class Qe extends He{constructor(t){super(),this.cfg=Object.assign(new He,{keySize:4,hasher:We,iterations:1},t)}compute(t,e){let i;const{cfg:o}=this,n=o.hasher.create(),s=Be.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 ti extends _e{constructor(t,e,i){super(),this.cfg=Object.assign(new He,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?hi:ci;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()}}ti._ENC_XFORM_MODE=1,ti._DEC_XFORM_MODE=2,ti.keySize=4,ti.ivSize=4;class ei extends ti{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class ii extends He{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 oi(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 ni extends ii{}ni.Encryptor=class extends ni{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;oi.call(this,t,e,o),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}},ni.Decryptor=class extends ni{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);i.decryptBlock(t,e),oi.call(this,t,e,o),this._prevBlock=n}};const si={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=Be.create(s,o);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class ri extends ti{constructor(t,e,i){super(t,e,Object.assign({mode:ni,padding:si},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 ai extends He{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const li={stringify(t){let e;const{ciphertext:i,salt:o}=t;return e=o?Be.create([1398893684,1701076831]).concat(o).concat(i):i,e.toString(Pe)},parse(t){let e;const i=Pe.parse(t),o=i.words;return 1398893684===o[0]&&1701076831===o[1]&&(e=Be.create(o.slice(2,4)),o.splice(0,4),i.sigBytes-=16),ai.create({ciphertext:i,salt:e})}};class ci extends He{static encrypt(t,e,i,o){const n=Object.assign(new He,this.cfg,o),s=t.createEncryptor(i,n),r=s.finalize(e),a=s.cfg;return ai.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 He,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}}ci.cfg=Object.assign(new He,{format:li});const di={execute(t,e,i,o){let n=o;n||(n=Be.random(8));const s=Qe.create({keySize:e+i}).compute(t,n),r=Be.create(s.words.slice(e),4*i);return s.sigBytes=4*e,ai.create({key:s,iv:r,salt:n})}};class hi extends ci{static encrypt(t,e,i,o){const n=Object.assign(new He,this.cfg,o),s=n.kdf.execute(i,t.keySize,t.ivSize);n.iv=s.iv;const r=ci.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 He,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 ci.decrypt.call(this,t,n,r.key,s)}}hi.cfg=Object.assign(ci.cfg,{kdf:di});const ui=t=>t<<8&4278255360|t>>>8&16711935,pi={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 Be.create(i,2*e)}},vi=pi,fi={stringify(t){const{words:e,sigBytes:i}=t,o=[];for(let t=0;t<i;t+=2){const i=ui(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]|=ui(t.charCodeAt(o)<<16-o%2*16);return Be.create(i,2*e)}},mi=[];class gi extends Oe{_doReset(){this._hash=new Be([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)mi[i]=0|t[e+i];else{const t=mi[i-3]^mi[i-8]^mi[i-14]^mi[i-16];mi[i]=t<<1|t>>>31}let l=(o<<5|o>>>27)+a+mi[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 wi=Oe._createHelper(gi),Ci=Oe._createHmacHelper(gi),yi=[],bi=[],xi=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},Si=t=>4294967296*(t-(0|t))|0;let Ei=2,ki=0;for(;ki<64;)xi(Ei)&&(ki<8&&(yi[ki]=Si(Ei**.5)),bi[ki]=Si(Ei**(1/3)),ki+=1),Ei+=1;const $i=[];class Li extends Oe{_doReset(){this._hash=new Be(yi.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)$i[i]=0|t[e+i];else{const t=$i[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,o=$i[i-2],n=(o<<15|o>>>17)^(o<<13|o>>>19)^o>>>10;$i[i]=e+$i[i-7]+n+$i[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)+bi[i]+$i[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 Ai=Oe._createHelper(Li),Mi=Oe._createHmacHelper(Li);class Fi extends Li{_doReset(){this._hash=new Be([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const Ii=Li._createHelper(Fi),Vi=Li._createHmacHelper(Fi),Hi=[new Re(1116352408,3609767458),new Re(1899447441,602891725),new Re(3049323471,3964484399),new Re(3921009573,2173295548),new Re(961987163,4081628472),new Re(1508970993,3053834265),new Re(2453635748,2937671579),new Re(2870763221,3664609560),new Re(3624381080,2734883394),new Re(310598401,1164996542),new Re(607225278,1323610764),new Re(1426881987,3590304994),new Re(1925078388,4068182383),new Re(2162078206,991336113),new Re(2614888103,633803317),new Re(3248222580,3479774868),new Re(3835390401,2666613458),new Re(4022224774,944711139),new Re(264347078,2341262773),new Re(604807628,2007800933),new Re(770255983,1495990901),new Re(1249150122,1856431235),new Re(1555081692,3175218132),new Re(1996064986,2198950837),new Re(2554220882,3999719339),new Re(2821834349,766784016),new Re(2952996808,2566594879),new Re(3210313671,3203337956),new Re(3336571891,1034457026),new Re(3584528711,2466948901),new Re(113926993,3758326383),new Re(338241895,168717936),new Re(666307205,1188179964),new Re(773529912,1546045734),new Re(1294757372,1522805485),new Re(1396182291,2643833823),new Re(1695183700,2343527390),new Re(1986661051,1014477480),new Re(2177026350,1206759142),new Re(2456956037,344077627),new Re(2730485921,1290863460),new Re(2820302411,3158454273),new Re(3259730800,3505952657),new Re(3345764771,106217008),new Re(3516065817,3606008344),new Re(3600352804,1432725776),new Re(4094571909,1467031594),new Re(275423344,851169720),new Re(430227734,3100823752),new Re(506948616,1363258195),new Re(659060556,3750685593),new Re(883997877,3785050280),new Re(958139571,3318307427),new Re(1322822218,3812723403),new Re(1537002063,2003034995),new Re(1747873779,3602036899),new Re(1955562222,1575990012),new Re(2024104815,1125592928),new Re(2227730452,2716904306),new Re(2361852424,442776044),new Re(2428436474,593698344),new Re(2756734187,3733110249),new Re(3204031479,2999351573),new Re(3329325298,3815920427),new Re(3391569614,3928383900),new Re(3515267271,566280711),new Re(3940187606,3454069534),new Re(4118630271,4000239992),new Re(116418474,1914138554),new Re(174292421,2731055270),new Re(289380356,3203993006),new Re(460393269,320620315),new Re(685471733,587496836),new Re(852142971,1086792851),new Re(1017036298,365543100),new Re(1126000580,2618297676),new Re(1288033470,3409855158),new Re(1501505948,4234509866),new Re(1607167915,987167468),new Re(1816402316,1246189591)],Bi=[];for(let t=0;t<80;t+=1)Bi[t]=new Re;class Di extends Oe{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new Ze([new Re(1779033703,4089235720),new Re(3144134277,2227873595),new Re(1013904242,4271175723),new Re(2773480762,1595750129),new Re(1359893119,2917565137),new Re(2600822924,725511199),new Re(528734635,4215389547),new Re(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 f=s.high;let m=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 S=c.high;let E=c.low;const k=d.high;let $=d.low,L=h,A=u,M=p,F=v,I=f,V=m,H=g,B=w,D=C,j=y,T=b,_=x,O=S,U=E,z=k,R=$;for(let i=0;i<80;i+=1){let o,n;const s=Bi[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=Bi[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=Bi[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=Bi[i-7],f=v.high,m=v.low,g=Bi[i-16],w=g.high,C=g.low;o=l+m,n=a+f+(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=D&T^~D&O,a=j&_^~j&U,l=L&M^L&I^M&I,c=A&F^A&V^F&V,d=(L>>>28|A<<4)^(L<<30|A>>>2)^(L<<25|A>>>7),h=(A>>>28|L<<4)^(A<<30|L>>>2)^(A<<25|L>>>7),u=(D>>>14|j<<18)^(D>>>18|j<<14)^(D<<23|j>>>9),p=(j>>>14|D<<18)^(j>>>18|D<<14)^(j<<23|D>>>9),v=Hi[i],f=v.high,m=v.low;let g=R+p,w=z+u+(g>>>0<R>>>0?1:0);g+=a,w=w+r+(g>>>0<a>>>0?1:0),g+=m,w=w+f+(g>>>0<m>>>0?1:0),g+=o,w=w+n+(g>>>0<o>>>0?1:0);const C=h+c;z=O,R=U,O=T,U=_,T=D,_=j,j=B+g|0,D=H+w+(j>>>0<B>>>0?1:0)|0,H=I,B=V,I=M,V=F,M=L,F=A,A=g+C|0,L=w+(d+l+(C>>>0<h>>>0?1:0))+(A>>>0<g>>>0?1:0)|0}o.low=u+A,u=o.low,o.high=h+L+(u>>>0<A>>>0?1:0),n.low=v+F,v=n.low,n.high=p+M+(v>>>0<F>>>0?1:0),s.low=m+V,m=s.low,s.high=f+I+(m>>>0<V>>>0?1:0),r.low=w+B,w=r.low,r.high=g+H+(w>>>0<B>>>0?1:0),a.low=y+j,y=a.low,a.high=C+D+(y>>>0<j>>>0?1:0),l.low=x+_,x=l.low,l.high=b+T+(x>>>0<_>>>0?1:0),c.low=E+U,E=c.low,c.high=S+O+(E>>>0<U>>>0?1:0),d.low=$+R,$=d.low,d.high=k+z+($>>>0<R>>>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 ji=Oe._createHelper(Di),Ti=Oe._createHmacHelper(Di);class _i extends Di{_doReset(){this._hash=new Ze([new Re(3418070365,3238371032),new Re(1654270250,914150663),new Re(2438529370,812702999),new Re(355462360,4144912697),new Re(1731405415,4290775857),new Re(2394180231,1750603025),new Re(3675008525,1694076839),new Re(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const Oi=Di._createHelper(_i),Ui=Di._createHmacHelper(_i),zi=[],Ri=[],Zi=[];let Pi=1,Ni=0;for(let t=0;t<24;t+=1){zi[Pi+5*Ni]=(t+1)*(t+2)/2%64;const e=(2*Pi+3*Ni)%5;Pi=Ni%5,Ni=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)Ri[t+5*e]=e+(2*t+3*e)%5*5;let Ki=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&Ki){const o=(1<<t)-1;o<32?i^=1<<o:e^=1<<o-32}128&Ki?Ki=Ki<<1^113:Ki<<=1}Zi[t]=Re.create(e,i)}const qi=[];for(let t=0;t<25;t+=1)qi[t]=Re.create();class Ji extends Oe{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 Re;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=qi[t];n.high=e,n.low=o}for(let t=0;t<5;t+=1){const e=qi[(t+4)%5],o=qi[(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=zi[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=qi[Ri[t]];l.high=e,l.low=o}const e=qi[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=qi[o],r=qi[(t+1)%5+5*e],a=qi[(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=Zi[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 Be(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 Yi=Oe._createHelper(Ji),Wi=Oe._createHmacHelper(Ji),Gi=Be.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]),Xi=Be.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]),Qi=Be.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]),to=Be.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]),eo=Be.create([0,1518500249,1859775393,2400959708,2840853838]),io=Be.create([1352829926,1548603684,1836072691,2053994217,0]),oo=(t,e,i)=>t^e^i,no=(t,e,i)=>t&e|~t&i,so=(t,e,i)=>(t|~e)^i,ro=(t,e,i)=>t&i|e&~i,ao=(t,e,i)=>t^(e|~i),lo=(t,e)=>t<<e|t>>>32-e;class co extends Oe{_doReset(){this._hash=Be.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=eo.words,s=io.words,r=Gi.words,a=Xi.words,l=Qi.words,c=to.words;let d,h=o[0],u=o[1],p=o[2],v=o[3],f=o[4],m=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?oo(u,p,v)+n[0]:t<32?no(u,p,v)+n[1]:t<48?so(u,p,v)+n[2]:t<64?ro(u,p,v)+n[3]:ao(u,p,v)+n[4],d|=0,d=lo(d,l[t]),d=d+f|0,h=f,f=v,v=lo(p,10),p=u,u=d,d=m+i[e+a[t]]|0,d+=t<16?ao(g,w,C)+s[0]:t<32?ro(g,w,C)+s[1]:t<48?so(g,w,C)+s[2]:t<64?no(g,w,C)+s[3]:oo(g,w,C)+s[4],d|=0,d=lo(d,c[t]),d=d+y|0,m=y,y=C,C=lo(w,10),w=g,g=d;d=o[1]+p+C|0,o[1]=o[2]+v+y|0,o[2]=o[3]+f+m|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 ho=Oe._createHelper(co),uo=Oe._createHmacHelper(co);class po extends He{constructor(t){super(),this.cfg=Object.assign(new He,{keySize:4,hasher:gi,iterations:1},t)}compute(t,e){const{cfg:i}=this,o=Ue.create(i.hasher,t),n=Be.create(),s=Be.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 vo=[],fo=[],mo=[],go=[],wo=[],Co=[],yo=[],bo=[],xo=[],So=[],Eo=[];for(let t=0;t<256;t+=1)Eo[t]=t<128?t<<1:t<<1^283;let ko=0,$o=0;for(let t=0;t<256;t+=1){let t=$o^$o<<1^$o<<2^$o<<3^$o<<4;t=t>>>8^255&t^99,vo[ko]=t,fo[t]=ko;const e=Eo[ko],i=Eo[e],o=Eo[i];let n=257*Eo[t]^16843008*t;mo[ko]=n<<24|n>>>8,go[ko]=n<<16|n>>>16,wo[ko]=n<<8|n>>>24,Co[ko]=n,n=16843009*o^65537*i^257*e^16843008*ko,yo[t]=n<<24|n>>>8,bo[t]=n<<16|n>>>16,xo[t]=n<<8|n>>>24,So[t]=n,ko?(ko=e^Eo[Eo[Eo[o^e]]],$o^=Eo[Eo[$o]]):($o=1,ko=$o)}const Lo=[0,1,2,4,8,16,32,64,128,27,54];class Ao extends ri{_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=vo[t>>>24]<<24|vo[t>>>16&255]<<16|vo[t>>>8&255]<<8|vo[255&t]):(t=t<<8|t>>>24,t=vo[t>>>24]<<24|vo[t>>>16&255]<<16|vo[t>>>8&255]<<8|vo[255&t],t^=Lo[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:yo[vo[t>>>24]]^bo[vo[t>>>16&255]]^xo[vo[t>>>8&255]]^So[vo[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,mo,go,wo,Co,vo)}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,yo,bo,xo,So,fo),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 f=(a[d>>>24]<<24|a[h>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[v];v+=1;const m=(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]=f,l[e+1]=m,l[e+2]=g,l[e+3]=w}}Ao.keySize=8;const Mo=ri._createHelper(Ao),Fo=[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],Io=[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],Vo=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],Ho=[{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}],Bo=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function Do(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function jo(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class To extends ri{_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const o=Fo[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=Vo[t];for(let t=0;t<24;t+=1)o[t/6|0]|=e[(Io[t]-1+n)%28]<<31-t%6,o[4+(t/6|0)]|=e[28+(Io[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],Do.call(this,4,252645135),Do.call(this,16,65535),jo.call(this,2,858993459),jo.call(this,8,16711935),Do.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|=Ho[t][((n^e[t])&Bo[t])>>>0];this._lBlock=n,this._rBlock=o^s}const n=this._lBlock;this._lBlock=this._rBlock,this._rBlock=n,Do.call(this,1,1431655765),jo.call(this,8,16711935),jo.call(this,2,858993459),Do.call(this,16,65535),Do.call(this,4,252645135),o[e]=this._lBlock,o[e+1]=this._rBlock}}To.keySize=2,To.ivSize=2,To.blockSize=2;const _o=ri._createHelper(To);class Oo extends ri{_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=To.createEncryptor(Be.create(e)),this._des2=To.createEncryptor(Be.create(i)),this._des3=To.createEncryptor(Be.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)}}Oo.keySize=6,Oo.ivSize=2,Oo.blockSize=2;const Uo=ri._createHelper(Oo),zo=[],Ro=[],Zo=[];function Po(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)Ro[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<Ro[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<Ro[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<Ro[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<Ro[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<Ro[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<Ro[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<Ro[6]>>>0?1:0)|0,this._b=e[7]>>>0<Ro[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);Zo[i]=r^a}t[0]=Zo[0]+(Zo[7]<<16|Zo[7]>>>16)+(Zo[6]<<16|Zo[6]>>>16)|0,t[1]=Zo[1]+(Zo[0]<<8|Zo[0]>>>24)+Zo[7]|0,t[2]=Zo[2]+(Zo[1]<<16|Zo[1]>>>16)+(Zo[0]<<16|Zo[0]>>>16)|0,t[3]=Zo[3]+(Zo[2]<<8|Zo[2]>>>24)+Zo[1]|0,t[4]=Zo[4]+(Zo[3]<<16|Zo[3]>>>16)+(Zo[2]<<16|Zo[2]>>>16)|0,t[5]=Zo[5]+(Zo[4]<<8|Zo[4]>>>24)+Zo[3]|0,t[6]=Zo[6]+(Zo[5]<<16|Zo[5]>>>16)+(Zo[4]<<16|Zo[4]>>>16)|0,t[7]=Zo[7]+(Zo[6]<<8|Zo[6]>>>24)+Zo[5]|0}class No extends ei{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)Po.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)Po.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;Po.call(this),zo[0]=o[0]^o[5]>>>16^o[3]<<16,zo[1]=o[2]^o[7]>>>16^o[5]<<16,zo[2]=o[4]^o[1]>>>16^o[7]<<16,zo[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)zo[t]=16711935&(zo[t]<<8|zo[t]>>>24)|4278255360&(zo[t]<<24|zo[t]>>>8),i[e+t]^=zo[t]}}const Ko=ei._createHelper(No),qo=[],Jo=[],Yo=[];function Wo(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)Jo[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<Jo[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<Jo[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<Jo[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<Jo[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<Jo[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<Jo[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<Jo[6]>>>0?1:0)|0,this._b=e[7]>>>0<Jo[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);Yo[i]=r^a}t[0]=Yo[0]+(Yo[7]<<16|Yo[7]>>>16)+(Yo[6]<<16|Yo[6]>>>16)|0,t[1]=Yo[1]+(Yo[0]<<8|Yo[0]>>>24)+Yo[7]|0,t[2]=Yo[2]+(Yo[1]<<16|Yo[1]>>>16)+(Yo[0]<<16|Yo[0]>>>16)|0,t[3]=Yo[3]+(Yo[2]<<8|Yo[2]>>>24)+Yo[1]|0,t[4]=Yo[4]+(Yo[3]<<16|Yo[3]>>>16)+(Yo[2]<<16|Yo[2]>>>16)|0,t[5]=Yo[5]+(Yo[4]<<8|Yo[4]>>>24)+Yo[3]|0,t[6]=Yo[6]+(Yo[5]<<16|Yo[5]>>>16)+(Yo[4]<<16|Yo[4]>>>16)|0,t[7]=Yo[7]+(Yo[6]<<8|Yo[6]>>>24)+Yo[5]|0}class Go extends ei{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)Wo.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)Wo.call(this)}}_doProcessBlock(t,e){const i=t,o=this._X;Wo.call(this),qo[0]=o[0]^o[5]>>>16^o[3]<<16,qo[1]=o[2]^o[7]>>>16^o[5]<<16,qo[2]=o[4]^o[1]>>>16^o[7]<<16,qo[3]=o[6]^o[3]>>>16^o[1]<<16;for(let t=0;t<4;t+=1)qo[t]=16711935&(qo[t]<<8|qo[t]>>>24)|4278255360&(qo[t]<<24|qo[t]>>>8),i[e+t]^=qo[t]}}const Xo=ei._createHelper(Go);function Qo(){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 tn extends ei{_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]^=Qo.call(this)}}tn.keySize=8,tn.ivSize=0;const en=ei._createHelper(tn);class on extends tn{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)Qo.call(this)}}const nn=ei._createHelper(on);function sn(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 rn extends ii{}rn.Encryptor=class extends rn{processBlock(t,e){const i=this._cipher,{blockSize:o}=i;sn.call(this,t,e,o,i),this._prevBlock=t.slice(e,e+o)}},rn.Decryptor=class extends rn{processBlock(t,e){const i=this._cipher,{blockSize:o}=i,n=t.slice(e,e+o);sn.call(this,t,e,o,i),this._prevBlock=n}};class an extends ii{}an.Encryptor=class extends an{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]}},an.Decryptor=an.Encryptor;const ln=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};
|
|
638
|
+
*/
|
|
639
|
+
async function wi(t,e,i=!1){if(i)return e;try{return await e}catch(e){throw e instanceof It&&function({code:t}){return"auth/user-disabled"===t||"auth/user-token-expired"===t}
|
|
640
|
+
/**
|
|
641
|
+
* @license
|
|
642
|
+
* Copyright 2020 Google LLC
|
|
643
|
+
*
|
|
644
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
645
|
+
* you may not use this file except in compliance with the License.
|
|
646
|
+
* You may obtain a copy of the License at
|
|
647
|
+
*
|
|
648
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
649
|
+
*
|
|
650
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
651
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
652
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
653
|
+
* See the License for the specific language governing permissions and
|
|
654
|
+
* limitations under the License.
|
|
655
|
+
*/(e)&&t.auth.currentUser===t&&await t.auth.signOut(),e}}class gi{constructor(t){this.user=t,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,null!==this.timerId&&clearTimeout(this.timerId))}getInterval(t){var e;if(t){const t=this.errorBackoff;return this.errorBackoff=Math.min(2*this.errorBackoff,96e4),t}{this.errorBackoff=3e4;const t=(null!==(e=this.user.stsTokenManager.expirationTime)&&void 0!==e?e:0)-Date.now()-3e5;return Math.max(0,t)}}schedule(t=!1){if(!this.isRunning)return;const e=this.getInterval(t);this.timerId=setTimeout((async()=>{await this.iteration()}),e)}async iteration(){try{await this.user.getIdToken(!0)}catch(t){return void("auth/network-request-failed"===(null==t?void 0:t.code)&&this.schedule(!0))}this.schedule()}}
|
|
656
|
+
/**
|
|
657
|
+
* @license
|
|
658
|
+
* Copyright 2020 Google LLC
|
|
659
|
+
*
|
|
660
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
661
|
+
* you may not use this file except in compliance with the License.
|
|
662
|
+
* You may obtain a copy of the License at
|
|
663
|
+
*
|
|
664
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
665
|
+
*
|
|
666
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
667
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
668
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
669
|
+
* See the License for the specific language governing permissions and
|
|
670
|
+
* limitations under the License.
|
|
671
|
+
*/class yi{constructor(t,e){this.createdAt=t,this.lastLoginAt=e,this._initializeTime()}_initializeTime(){this.lastSignInTime=fi(this.lastLoginAt),this.creationTime=fi(this.createdAt)}_copy(t){this.createdAt=t.createdAt,this.lastLoginAt=t.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}}
|
|
672
|
+
/**
|
|
673
|
+
* @license
|
|
674
|
+
* Copyright 2019 Google LLC
|
|
675
|
+
*
|
|
676
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
677
|
+
* you may not use this file except in compliance with the License.
|
|
678
|
+
* You may obtain a copy of the License at
|
|
679
|
+
*
|
|
680
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
681
|
+
*
|
|
682
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
683
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
684
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
685
|
+
* See the License for the specific language governing permissions and
|
|
686
|
+
* limitations under the License.
|
|
687
|
+
*/async function Ci(t){var e;const i=t.auth,n=await t.getIdToken(),o=await wi(t,async function(t,e){return ci(t,"POST","/v1/accounts:lookup",e)}(i,{idToken:n}));We(null==o?void 0:o.users.length,i,"internal-error");const s=o.users[0];t._notifyReloadListener(s);const r=(null===(e=s.providerUserInfo)||void 0===e?void 0:e.length)?s.providerUserInfo.map((t=>{var{providerId:e}=t,i=Ue(t,["providerId"]);return{providerId:e,uid:i.rawId||"",displayName:i.displayName||null,email:i.email||null,phoneNumber:i.phoneNumber||null,photoURL:i.photoUrl||null}})):[];const a=function(t,e){const i=t.filter((t=>!e.some((e=>e.providerId===t.providerId))));return[...i,...e]}(t.providerData,r),l=t.isAnonymous,c=!(t.email&&s.passwordHash||(null==a?void 0:a.length)),h=!!l&&c,d={uid:s.localId,displayName:s.displayName||null,photoURL:s.photoUrl||null,email:s.email||null,emailVerified:s.emailVerified||!1,phoneNumber:s.phoneNumber||null,tenantId:s.tenantId||null,providerData:a,metadata:new yi(s.createdAt,s.lastLoginAt),isAnonymous:h};Object.assign(t,d)}
|
|
688
|
+
/**
|
|
689
|
+
* @license
|
|
690
|
+
* Copyright 2020 Google LLC
|
|
691
|
+
*
|
|
692
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
693
|
+
* you may not use this file except in compliance with the License.
|
|
694
|
+
* You may obtain a copy of the License at
|
|
695
|
+
*
|
|
696
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
697
|
+
*
|
|
698
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
699
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
700
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
701
|
+
* See the License for the specific language governing permissions and
|
|
702
|
+
* limitations under the License.
|
|
703
|
+
*/
|
|
704
|
+
class bi{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(t){We(t.idToken,"internal-error"),We(void 0!==t.idToken,"internal-error"),We(void 0!==t.refreshToken,"internal-error");const e="expiresIn"in t&&void 0!==t.expiresIn?Number(t.expiresIn):function(t){const e=mi(t);return We(e,"internal-error"),We(void 0!==e.exp,"internal-error"),We(void 0!==e.iat,"internal-error"),Number(e.exp)-Number(e.iat)}(t.idToken);this.updateTokensAndExpiration(t.idToken,t.refreshToken,e)}async getToken(t,e=!1){return We(!this.accessToken||this.refreshToken,t,"user-token-expired"),e||!this.accessToken||this.isExpired?this.refreshToken?(await this.refresh(t,this.refreshToken),this.accessToken):null:this.accessToken}clearRefreshToken(){this.refreshToken=null}async refresh(t,e){const{accessToken:i,refreshToken:n,expiresIn:o}=await
|
|
705
|
+
/**
|
|
706
|
+
* @license
|
|
707
|
+
* Copyright 2020 Google LLC
|
|
708
|
+
*
|
|
709
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
710
|
+
* you may not use this file except in compliance with the License.
|
|
711
|
+
* You may obtain a copy of the License at
|
|
712
|
+
*
|
|
713
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
714
|
+
*
|
|
715
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
716
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
717
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
718
|
+
* See the License for the specific language governing permissions and
|
|
719
|
+
* limitations under the License.
|
|
720
|
+
*/
|
|
721
|
+
async function(t,e){const i=await hi(t,{},(async()=>{const i=Tt({grant_type:"refresh_token",refresh_token:e}).slice(1),{tokenApiHost:n,apiKey:o}=t.config,s=di(t,n,"/v1/token",`key=${o}`),r=await t._getAdditionalHeaders();return r["Content-Type"]="application/x-www-form-urlencoded",ri.fetch()(s,{method:"POST",headers:r,body:i})}));return{accessToken:i.access_token,expiresIn:i.expires_in,refreshToken:i.refresh_token}}(t,e);this.updateTokensAndExpiration(i,n,Number(o))}updateTokensAndExpiration(t,e,i){this.refreshToken=e||null,this.accessToken=t||null,this.expirationTime=Date.now()+1e3*i}static fromJSON(t,e){const{refreshToken:i,accessToken:n,expirationTime:o}=e,s=new bi;return i&&(We("string"==typeof i,"internal-error",{appName:t}),s.refreshToken=i),n&&(We("string"==typeof n,"internal-error",{appName:t}),s.accessToken=n),o&&(We("number"==typeof o,"internal-error",{appName:t}),s.expirationTime=o),s}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(t){this.accessToken=t.accessToken,this.refreshToken=t.refreshToken,this.expirationTime=t.expirationTime}_clone(){return Object.assign(new bi,this.toJSON())}_performRefresh(){return Ye("not implemented")}}
|
|
722
|
+
/**
|
|
723
|
+
* @license
|
|
724
|
+
* Copyright 2020 Google LLC
|
|
725
|
+
*
|
|
726
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
727
|
+
* you may not use this file except in compliance with the License.
|
|
728
|
+
* You may obtain a copy of the License at
|
|
729
|
+
*
|
|
730
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
731
|
+
*
|
|
732
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
733
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
734
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
735
|
+
* See the License for the specific language governing permissions and
|
|
736
|
+
* limitations under the License.
|
|
737
|
+
*/function xi(t,e){We("string"==typeof t||void 0===t,"internal-error",{appName:e})}class Si{constructor(t){var{uid:e,auth:i,stsTokenManager:n}=t,o=Ue(t,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.proactiveRefresh=new gi(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=e,this.auth=i,this.stsTokenManager=n,this.accessToken=n.accessToken,this.displayName=o.displayName||null,this.email=o.email||null,this.emailVerified=o.emailVerified||!1,this.phoneNumber=o.phoneNumber||null,this.photoURL=o.photoURL||null,this.isAnonymous=o.isAnonymous||!1,this.tenantId=o.tenantId||null,this.providerData=o.providerData?[...o.providerData]:[],this.metadata=new yi(o.createdAt||void 0,o.lastLoginAt||void 0)}async getIdToken(t){const e=await wi(this,this.stsTokenManager.getToken(this.auth,t));return We(e,this.auth,"internal-error"),this.accessToken!==e&&(this.accessToken=e,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),e}getIdTokenResult(t){return async function(t,e=!1){const i=Ft(t),n=await i.getIdToken(e),o=mi(n);We(o&&o.exp&&o.auth_time&&o.iat,i.auth,"internal-error");const s="object"==typeof o.firebase?o.firebase:void 0,r=null==s?void 0:s.sign_in_provider;return{claims:o,token:n,authTime:fi(vi(o.auth_time)),issuedAtTime:fi(vi(o.iat)),expirationTime:fi(vi(o.exp)),signInProvider:r||null,signInSecondFactor:(null==s?void 0:s.sign_in_second_factor)||null}}(this,t)}reload(){return async function(t){const e=Ft(t);await Ci(e),await e.auth._persistUserIfCurrent(e),e.auth._notifyListenersIfCurrent(e)}(this)}_assign(t){this!==t&&(We(this.uid===t.uid,this.auth,"internal-error"),this.displayName=t.displayName,this.photoURL=t.photoURL,this.email=t.email,this.emailVerified=t.emailVerified,this.phoneNumber=t.phoneNumber,this.isAnonymous=t.isAnonymous,this.tenantId=t.tenantId,this.providerData=t.providerData.map((t=>Object.assign({},t))),this.metadata._copy(t.metadata),this.stsTokenManager._assign(t.stsTokenManager))}_clone(t){return new Si(Object.assign(Object.assign({},this),{auth:t,stsTokenManager:this.stsTokenManager._clone()}))}_onReload(t){We(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=t,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(t){this.reloadListener?this.reloadListener(t):this.reloadUserInfo=t}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}async _updateTokensIfNecessary(t,e=!1){let i=!1;t.idToken&&t.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(t),i=!0),e&&await Ci(this),await this.auth._persistUserIfCurrent(this),i&&this.auth._notifyListenersIfCurrent(this)}async delete(){const t=await this.getIdToken();return await wi(this,async function(t,e){return ci(t,"POST","/v1/accounts:delete",e)}(this.auth,{idToken:t})),this.stsTokenManager.clearRefreshToken(),this.auth.signOut()}toJSON(){return Object.assign(Object.assign({uid:this.uid,email:this.email||void 0,emailVerified:this.emailVerified,displayName:this.displayName||void 0,isAnonymous:this.isAnonymous,photoURL:this.photoURL||void 0,phoneNumber:this.phoneNumber||void 0,tenantId:this.tenantId||void 0,providerData:this.providerData.map((t=>Object.assign({},t))),stsTokenManager:this.stsTokenManager.toJSON(),_redirectEventId:this._redirectEventId},this.metadata.toJSON()),{apiKey:this.auth.config.apiKey,appName:this.auth.name})}get refreshToken(){return this.stsTokenManager.refreshToken||""}static _fromJSON(t,e){var i,n,o,s,r,a,l,c;const h=null!==(i=e.displayName)&&void 0!==i?i:void 0,d=null!==(n=e.email)&&void 0!==n?n:void 0,u=null!==(o=e.phoneNumber)&&void 0!==o?o:void 0,p=null!==(s=e.photoURL)&&void 0!==s?s:void 0,f=null!==(r=e.tenantId)&&void 0!==r?r:void 0,v=null!==(a=e._redirectEventId)&&void 0!==a?a:void 0,m=null!==(l=e.createdAt)&&void 0!==l?l:void 0,w=null!==(c=e.lastLoginAt)&&void 0!==c?c:void 0,{uid:g,emailVerified:y,isAnonymous:C,providerData:b,stsTokenManager:x}=e;We(g&&x,t,"internal-error");const S=bi.fromJSON(this.name,x);We("string"==typeof g,t,"internal-error"),xi(h,t.name),xi(d,t.name),We("boolean"==typeof y,t,"internal-error"),We("boolean"==typeof C,t,"internal-error"),xi(u,t.name),xi(p,t.name),xi(f,t.name),xi(v,t.name),xi(m,t.name),xi(w,t.name);const E=new Si({uid:g,auth:t,email:d,emailVerified:y,displayName:h,isAnonymous:C,photoURL:p,phoneNumber:u,tenantId:f,stsTokenManager:S,createdAt:m,lastLoginAt:w});return b&&Array.isArray(b)&&(E.providerData=b.map((t=>Object.assign({},t)))),v&&(E._redirectEventId=v),E}static async _fromIdTokenResponse(t,e,i=!1){const n=new bi;n.updateFromServerResponse(e);const o=new Si({uid:e.localId,auth:t,stsTokenManager:n,isAnonymous:i});return await Ci(o),o}}
|
|
738
|
+
/**
|
|
739
|
+
* @license
|
|
740
|
+
* Copyright 2019 Google LLC
|
|
741
|
+
*
|
|
742
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
743
|
+
* you may not use this file except in compliance with the License.
|
|
744
|
+
* You may obtain a copy of the License at
|
|
745
|
+
*
|
|
746
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
747
|
+
*
|
|
748
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
749
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
750
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
751
|
+
* See the License for the specific language governing permissions and
|
|
752
|
+
* limitations under the License.
|
|
753
|
+
*/class Ei{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){}}Ei.type="NONE";const ki=Ei;
|
|
754
|
+
/**
|
|
755
|
+
* @license
|
|
756
|
+
* Copyright 2019 Google LLC
|
|
757
|
+
*
|
|
758
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
759
|
+
* you may not use this file except in compliance with the License.
|
|
760
|
+
* You may obtain a copy of the License at
|
|
761
|
+
*
|
|
762
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
763
|
+
*
|
|
764
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
765
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
766
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
767
|
+
* See the License for the specific language governing permissions and
|
|
768
|
+
* limitations under the License.
|
|
769
|
+
*/function Ii(t,e,i){return`firebase:${t}:${e}:${i}`}class _i{constructor(t,e,i){this.persistence=t,this.auth=e,this.userKey=i;const{config:n,name:o}=this.auth;this.fullUserKey=Ii(this.userKey,n.apiKey,o),this.fullPersistenceKey=Ii("persistence",n.apiKey,o),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?Si._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 _i(ti(ki),t,i);const n=(await Promise.all(e.map((async t=>{if(await t._isAvailable())return t})))).filter((t=>t));let o=n[0]||ti(ki);const s=Ii(i,t.config.apiKey,t.name);let r=null;for(const i of e)try{const e=await i._get(s);if(e){const n=Si._fromJSON(t,e);i!==o&&(r=n),o=i;break}}catch(t){}const a=n.filter((t=>t._shouldAllowMigration));return o._shouldAllowMigration&&a.length?(o=a[0],r&&await o._set(s,r.toJSON()),await Promise.all(e.map((async t=>{if(t!==o)try{await t._remove(s)}catch(t){}}))),new _i(o,t,i)):new _i(o,t,i)}}
|
|
770
|
+
/**
|
|
771
|
+
* @license
|
|
772
|
+
* Copyright 2020 Google LLC
|
|
773
|
+
*
|
|
774
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
775
|
+
* you may not use this file except in compliance with the License.
|
|
776
|
+
* You may obtain a copy of the License at
|
|
777
|
+
*
|
|
778
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
779
|
+
*
|
|
780
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
781
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
782
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
783
|
+
* See the License for the specific language governing permissions and
|
|
784
|
+
* limitations under the License.
|
|
785
|
+
*/function Ai(t){const e=t.toLowerCase();if(e.includes("opera/")||e.includes("opr/")||e.includes("opios/"))return"Opera";if(Mi(e))return"IEMobile";if(e.includes("msie")||e.includes("trident/"))return"IE";if(e.includes("edge/"))return"Edge";if(Li(e))return"Firefox";if(e.includes("silk/"))return"Silk";if(Fi(e))return"Blackberry";if(Ni(e))return"Webos";if($i(e))return"Safari";if((e.includes("chrome/")||Ti(e))&&!e.includes("edge/"))return"Chrome";if(Oi(e))return"Android";{const e=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,i=t.match(e);if(2===(null==i?void 0:i.length))return i[1]}return"Other"}function Li(t=Ct()){return/firefox\//i.test(t)}function $i(t=Ct()){const e=t.toLowerCase();return e.includes("safari/")&&!e.includes("chrome/")&&!e.includes("crios/")&&!e.includes("android")}function Ti(t=Ct()){return/crios\//i.test(t)}function Mi(t=Ct()){return/iemobile/i.test(t)}function Oi(t=Ct()){return/android/i.test(t)}function Fi(t=Ct()){return/blackberry/i.test(t)}function Ni(t=Ct()){return/webos/i.test(t)}function Di(t=Ct()){return/iphone|ipad|ipod/i.test(t)||/macintosh/i.test(t)&&/mobile/i.test(t)}function Ri(){return function(){const t=Ct();return t.indexOf("MSIE ")>=0||t.indexOf("Trident/")>=0}()&&10===document.documentMode}function Pi(t=Ct()){return Di(t)||Oi(t)||Ni(t)||Fi(t)||/windows phone/i.test(t)||Mi(t)}
|
|
786
|
+
/**
|
|
787
|
+
* @license
|
|
788
|
+
* Copyright 2020 Google LLC
|
|
789
|
+
*
|
|
790
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
791
|
+
* you may not use this file except in compliance with the License.
|
|
792
|
+
* You may obtain a copy of the License at
|
|
793
|
+
*
|
|
794
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
795
|
+
*
|
|
796
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
797
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
798
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
799
|
+
* See the License for the specific language governing permissions and
|
|
800
|
+
* limitations under the License.
|
|
801
|
+
*/
|
|
802
|
+
function ji(t,e=[]){let i;switch(t){case"Browser":i=Ai(Ct());break;case"Worker":i=`${Ai(Ct())}-${t}`;break;default:i=t}return`${i}/JsCore/9.15.0/${e.length?e.join(","):"FirebaseCore-web"}`}
|
|
803
|
+
/**
|
|
804
|
+
* @license
|
|
805
|
+
* Copyright 2022 Google LLC
|
|
806
|
+
*
|
|
807
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
808
|
+
* you may not use this file except in compliance with the License.
|
|
809
|
+
* You may obtain a copy of the License at
|
|
810
|
+
*
|
|
811
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
812
|
+
*
|
|
813
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
814
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
815
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
816
|
+
* See the License for the specific language governing permissions and
|
|
817
|
+
* limitations under the License.
|
|
818
|
+
*/class Vi{constructor(t){this.auth=t,this.queue=[]}pushCallback(t,e){const i=e=>new Promise(((i,n)=>{try{i(t(e))}catch(t){n(t)}}));i.onAbort=e,this.queue.push(i);const n=this.queue.length-1;return()=>{this.queue[n]=()=>Promise.resolve()}}async runMiddleware(t){if(this.auth.currentUser===t)return;const e=[];try{for(const i of this.queue)await i(t),i.onAbort&&e.push(i.onAbort)}catch(t){e.reverse();for(const t of e)try{t()}catch(t){}throw this.auth._errorFactory.create("login-blocked",{originalMessage:null==t?void 0:t.message})}}}
|
|
819
|
+
/**
|
|
820
|
+
* @license
|
|
821
|
+
* Copyright 2020 Google LLC
|
|
822
|
+
*
|
|
823
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
824
|
+
* you may not use this file except in compliance with the License.
|
|
825
|
+
* You may obtain a copy of the License at
|
|
826
|
+
*
|
|
827
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
828
|
+
*
|
|
829
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
830
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
831
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
832
|
+
* See the License for the specific language governing permissions and
|
|
833
|
+
* limitations under the License.
|
|
834
|
+
*/class Ui{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 Hi(this),this.idTokenSubscription=new Hi(this),this.beforeStateQueue=new Vi(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=ze,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=ti(e)),this._initializationPromise=this.queue((async()=>{var i,n;if(!this._deleted&&(this.persistenceManager=await _i.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===(n=this.currentUser)||void 0===n?void 0:n.uid)||null,this._deleted||(this._isInitialized=!0)}})),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const t=await this.assertedPersistence.getCurrentUser();return this.currentUser||t?this.currentUser&&t&&this.currentUser.uid===t.uid?(this._currentUser._assign(t),void await this.currentUser.getIdToken()):void await this._updateCurrentUser(t,!0):void 0}async initializeCurrentUser(t){var e;const i=await this.assertedPersistence.getCurrentUser();let n=i,o=!1;if(t&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const i=null===(e=this.redirectUser)||void 0===e?void 0:e._redirectEventId,s=null==n?void 0:n._redirectEventId,r=await this.tryRedirectSignIn(t);i&&i!==s||!(null==r?void 0:r.user)||(n=r.user,o=!0)}if(!n)return this.directlySetCurrentUser(null);if(!n._redirectEventId){if(o)try{await this.beforeStateQueue.runMiddleware(n)}catch(t){n=i,this._popupRedirectResolver._overrideRedirectResult(this,(()=>Promise.reject(t)))}return n?this.reloadAndSetCurrentUserOrClear(n):this.directlySetCurrentUser(null)}return We(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===n._redirectEventId?this.directlySetCurrentUser(n):this.reloadAndSetCurrentUserOrClear(n)}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 Ci(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?Ft(t):null;return e&&We(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&&We(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(ti(t))}))}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(t){this._errorFactory=new _t("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&&ti(t)||this._popupRedirectResolver;We(e,this,"argument-error"),this.redirectPersistenceManager=await _i.create(this,[ti(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,n){if(this._deleted)return()=>{};const o="function"==typeof e?e:e.next.bind(e),s=this._isInitialized?Promise.resolve():this._initializationPromise;return We(s,this,"internal-error"),s.then((()=>o(this.currentUser))),"function"==typeof e?t.addObserver(e,i,n):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 We(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(t){t&&!this.frameworks.includes(t)&&(this.frameworks.push(t),this.frameworks.sort(),this.clientVersion=ji(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}}function Bi(t){return Ft(t)}class Hi{constructor(t){this.auth=t,this.observer=null,this.addObserver=function(t,e){const i=new Mt(t,e);return i.subscribe.bind(i)}((t=>this.observer=t))}get next(){return We(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}function zi(t,e,i){const n=Bi(t);We(n._canInitEmulator,n,"emulator-config-failed"),We(/^https?:\/\//.test(e),n,"invalid-emulator-scheme");const o=!!(null==i?void 0:i.disableWarnings),s=Zi(e),{host:r,port:a}=function(t){const e=Zi(t),i=/(\/\/)?([^?#/]+)/.exec(t.substr(e.length));if(!i)return{host:"",port:null};const n=i[2].split("@").pop()||"",o=/^(\[[^\]]+\])(:|$)/.exec(n);if(o){const t=o[1];return{host:t,port:Ki(n.substr(t.length+1))}}{const[t,e]=n.split(":");return{host:t,port:Ki(e)}}}(e),l=null===a?"":`:${a}`;n.config.emulator={url:`${s}//${r}${l}/`},n.settings.appVerificationDisabledForTesting=!0,n.emulatorConfig=Object.freeze({host:r,port:a,protocol:s.replace(":",""),options:Object.freeze({disableWarnings:o})}),o||function(){function t(){const t=document.createElement("p"),e=t.style;t.innerText="Running in emulator mode. Do not use with production credentials.",e.position="fixed",e.width="100%",e.backgroundColor="#ffffff",e.border=".1em solid #000000",e.color="#b50000",e.bottom="0px",e.left="0px",e.margin="0px",e.zIndex="10000",e.textAlign="center",t.classList.add("firebase-emulator-warning"),document.body.appendChild(t)}"undefined"!=typeof console&&"function"==typeof console.info&&console.info("WARNING: You are using the Auth Emulator, which is intended for local testing only. Do not use with production credentials.");"undefined"!=typeof window&&"undefined"!=typeof document&&("loading"===document.readyState?window.addEventListener("DOMContentLoaded",t):t())}
|
|
835
|
+
/**
|
|
836
|
+
* @license
|
|
837
|
+
* Copyright 2020 Google LLC
|
|
838
|
+
*
|
|
839
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
840
|
+
* you may not use this file except in compliance with the License.
|
|
841
|
+
* You may obtain a copy of the License at
|
|
842
|
+
*
|
|
843
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
844
|
+
*
|
|
845
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
846
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
847
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
848
|
+
* See the License for the specific language governing permissions and
|
|
849
|
+
* limitations under the License.
|
|
850
|
+
*/()}function Zi(t){const e=t.indexOf(":");return e<0?"":t.substr(0,e+1)}function Ki(t){if(!t)return null;const e=Number(t);return isNaN(e)?null:e}class qi{constructor(t,e){this.providerId=t,this.signInMethod=e}toJSON(){return Ye("not implemented")}_getIdTokenResponse(t){return Ye("not implemented")}_linkToIdToken(t,e){return Ye("not implemented")}_getReauthenticationResolver(t){return Ye("not implemented")}}
|
|
851
|
+
/**
|
|
852
|
+
* @license
|
|
853
|
+
* Copyright 2020 Google LLC
|
|
854
|
+
*
|
|
855
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
856
|
+
* you may not use this file except in compliance with the License.
|
|
857
|
+
* You may obtain a copy of the License at
|
|
858
|
+
*
|
|
859
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
860
|
+
*
|
|
861
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
862
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
863
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
864
|
+
* See the License for the specific language governing permissions and
|
|
865
|
+
* limitations under the License.
|
|
866
|
+
*/async function Ji(t,e){return async function(t,e,i,n,o={}){const s=await ci(t,e,i,n,o);return"mfaPendingCredential"in s&&qe(t,"multi-factor-auth-required",{_serverResponse:s}),s}(t,"POST","/v1/accounts:signInWithIdp",function(t,e){return t.tenantId&&!e.tenantId?Object.assign(Object.assign({},e),{tenantId:t.tenantId}):e}(t,e))}
|
|
867
|
+
/**
|
|
868
|
+
* @license
|
|
869
|
+
* Copyright 2020 Google LLC
|
|
870
|
+
*
|
|
871
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
872
|
+
* you may not use this file except in compliance with the License.
|
|
873
|
+
* You may obtain a copy of the License at
|
|
874
|
+
*
|
|
875
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
876
|
+
*
|
|
877
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
878
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
879
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
880
|
+
* See the License for the specific language governing permissions and
|
|
881
|
+
* limitations under the License.
|
|
882
|
+
*/class Gi extends qi{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(t){const e=new Gi(t.providerId,t.signInMethod);return t.idToken||t.accessToken?(t.idToken&&(e.idToken=t.idToken),t.accessToken&&(e.accessToken=t.accessToken),t.nonce&&!t.pendingToken&&(e.nonce=t.nonce),t.pendingToken&&(e.pendingToken=t.pendingToken)):t.oauthToken&&t.oauthTokenSecret?(e.accessToken=t.oauthToken,e.secret=t.oauthTokenSecret):qe("argument-error"),e}toJSON(){return{idToken:this.idToken,accessToken:this.accessToken,secret:this.secret,nonce:this.nonce,pendingToken:this.pendingToken,providerId:this.providerId,signInMethod:this.signInMethod}}static fromJSON(t){const e="string"==typeof t?JSON.parse(t):t,{providerId:i,signInMethod:n}=e,o=Ue(e,["providerId","signInMethod"]);if(!i||!n)return null;const s=new Gi(i,n);return s.idToken=o.idToken||void 0,s.accessToken=o.accessToken||void 0,s.secret=o.secret,s.nonce=o.nonce,s.pendingToken=o.pendingToken||null,s}_getIdTokenResponse(t){return Ji(t,this.buildRequest())}_linkToIdToken(t,e){const i=this.buildRequest();return i.idToken=e,Ji(t,i)}_getReauthenticationResolver(t){const e=this.buildRequest();return e.autoCreate=!1,Ji(t,e)}buildRequest(){const t={requestUri:"http://localhost",returnSecureToken:!0};if(this.pendingToken)t.pendingToken=this.pendingToken;else{const e={};this.idToken&&(e.id_token=this.idToken),this.accessToken&&(e.access_token=this.accessToken),this.secret&&(e.oauth_token_secret=this.secret),e.providerId=this.providerId,this.nonce&&!this.pendingToken&&(e.nonce=this.nonce),t.postBody=Tt(e)}return t}}
|
|
883
|
+
/**
|
|
884
|
+
* @license
|
|
885
|
+
* Copyright 2020 Google LLC
|
|
886
|
+
*
|
|
887
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
888
|
+
* you may not use this file except in compliance with the License.
|
|
889
|
+
* You may obtain a copy of the License at
|
|
890
|
+
*
|
|
891
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
892
|
+
*
|
|
893
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
894
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
895
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
896
|
+
* See the License for the specific language governing permissions and
|
|
897
|
+
* limitations under the License.
|
|
898
|
+
*/class Wi{constructor(t){this.providerId=t,this.defaultLanguageCode=null,this.customParameters={}}setDefaultLanguage(t){this.defaultLanguageCode=t}setCustomParameters(t){return this.customParameters=t,this}getCustomParameters(){return this.customParameters}}
|
|
899
|
+
/**
|
|
900
|
+
* @license
|
|
901
|
+
* Copyright 2019 Google LLC
|
|
902
|
+
*
|
|
903
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
904
|
+
* you may not use this file except in compliance with the License.
|
|
905
|
+
* You may obtain a copy of the License at
|
|
906
|
+
*
|
|
907
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
908
|
+
*
|
|
909
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
910
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
911
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
912
|
+
* See the License for the specific language governing permissions and
|
|
913
|
+
* limitations under the License.
|
|
914
|
+
*/class Yi extends Wi{constructor(){super(...arguments),this.scopes=[]}addScope(t){return this.scopes.includes(t)||this.scopes.push(t),this}getScopes(){return[...this.scopes]}}
|
|
915
|
+
/**
|
|
916
|
+
* @license
|
|
917
|
+
* Copyright 2020 Google LLC
|
|
918
|
+
*
|
|
919
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
920
|
+
* you may not use this file except in compliance with the License.
|
|
921
|
+
* You may obtain a copy of the License at
|
|
922
|
+
*
|
|
923
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
924
|
+
*
|
|
925
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
926
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
927
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
928
|
+
* See the License for the specific language governing permissions and
|
|
929
|
+
* limitations under the License.
|
|
930
|
+
*/class Xi extends Yi{constructor(){super("facebook.com")}static credential(t){return Gi._fromParams({providerId:Xi.PROVIDER_ID,signInMethod:Xi.FACEBOOK_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return Xi.credentialFromTaggedObject(t)}static credentialFromError(t){return Xi.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t))return null;if(!t.oauthAccessToken)return null;try{return Xi.credential(t.oauthAccessToken)}catch(t){return null}}}Xi.FACEBOOK_SIGN_IN_METHOD="facebook.com",Xi.PROVIDER_ID="facebook.com";
|
|
931
|
+
/**
|
|
932
|
+
* @license
|
|
933
|
+
* Copyright 2020 Google LLC
|
|
934
|
+
*
|
|
935
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
936
|
+
* you may not use this file except in compliance with the License.
|
|
937
|
+
* You may obtain a copy of the License at
|
|
938
|
+
*
|
|
939
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
940
|
+
*
|
|
941
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
942
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
943
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
944
|
+
* See the License for the specific language governing permissions and
|
|
945
|
+
* limitations under the License.
|
|
946
|
+
*/
|
|
947
|
+
class Qi extends Yi{constructor(){super("google.com"),this.addScope("profile")}static credential(t,e){return Gi._fromParams({providerId:Qi.PROVIDER_ID,signInMethod:Qi.GOOGLE_SIGN_IN_METHOD,idToken:t,accessToken:e})}static credentialFromResult(t){return Qi.credentialFromTaggedObject(t)}static credentialFromError(t){return Qi.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;const{oauthIdToken:e,oauthAccessToken:i}=t;if(!e&&!i)return null;try{return Qi.credential(e,i)}catch(t){return null}}}Qi.GOOGLE_SIGN_IN_METHOD="google.com",Qi.PROVIDER_ID="google.com";
|
|
948
|
+
/**
|
|
949
|
+
* @license
|
|
950
|
+
* Copyright 2020 Google LLC
|
|
951
|
+
*
|
|
952
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
953
|
+
* you may not use this file except in compliance with the License.
|
|
954
|
+
* You may obtain a copy of the License at
|
|
955
|
+
*
|
|
956
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
957
|
+
*
|
|
958
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
959
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
960
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
961
|
+
* See the License for the specific language governing permissions and
|
|
962
|
+
* limitations under the License.
|
|
963
|
+
*/
|
|
964
|
+
class tn extends Yi{constructor(){super("github.com")}static credential(t){return Gi._fromParams({providerId:tn.PROVIDER_ID,signInMethod:tn.GITHUB_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return tn.credentialFromTaggedObject(t)}static credentialFromError(t){return tn.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t))return null;if(!t.oauthAccessToken)return null;try{return tn.credential(t.oauthAccessToken)}catch(t){return null}}}tn.GITHUB_SIGN_IN_METHOD="github.com",tn.PROVIDER_ID="github.com";
|
|
965
|
+
/**
|
|
966
|
+
* @license
|
|
967
|
+
* Copyright 2020 Google LLC
|
|
968
|
+
*
|
|
969
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
970
|
+
* you may not use this file except in compliance with the License.
|
|
971
|
+
* You may obtain a copy of the License at
|
|
972
|
+
*
|
|
973
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
974
|
+
*
|
|
975
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
976
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
977
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
978
|
+
* See the License for the specific language governing permissions and
|
|
979
|
+
* limitations under the License.
|
|
980
|
+
*/
|
|
981
|
+
class en extends Yi{constructor(){super("twitter.com")}static credential(t,e){return Gi._fromParams({providerId:en.PROVIDER_ID,signInMethod:en.TWITTER_SIGN_IN_METHOD,oauthToken:t,oauthTokenSecret:e})}static credentialFromResult(t){return en.credentialFromTaggedObject(t)}static credentialFromError(t){return en.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;const{oauthAccessToken:e,oauthTokenSecret:i}=t;if(!e||!i)return null;try{return en.credential(e,i)}catch(t){return null}}}en.TWITTER_SIGN_IN_METHOD="twitter.com",en.PROVIDER_ID="twitter.com";
|
|
982
|
+
/**
|
|
983
|
+
* @license
|
|
984
|
+
* Copyright 2020 Google LLC
|
|
985
|
+
*
|
|
986
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
987
|
+
* you may not use this file except in compliance with the License.
|
|
988
|
+
* You may obtain a copy of the License at
|
|
989
|
+
*
|
|
990
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
991
|
+
*
|
|
992
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
993
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
994
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
995
|
+
* See the License for the specific language governing permissions and
|
|
996
|
+
* limitations under the License.
|
|
997
|
+
*/
|
|
998
|
+
class nn{constructor(t){this.user=t.user,this.providerId=t.providerId,this._tokenResponse=t._tokenResponse,this.operationType=t.operationType}static async _fromIdTokenResponse(t,e,i,n=!1){const o=await Si._fromIdTokenResponse(t,i,n),s=on(i);return new nn({user:o,providerId:s,_tokenResponse:i,operationType:e})}static async _forOperation(t,e,i){await t._updateTokensIfNecessary(i,!0);const n=on(i);return new nn({user:t,providerId:n,_tokenResponse:i,operationType:e})}}function on(t){return t.providerId?t.providerId:"phoneNumber"in t?"phone":null}
|
|
999
|
+
/**
|
|
1000
|
+
* @license
|
|
1001
|
+
* Copyright 2020 Google LLC
|
|
1002
|
+
*
|
|
1003
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1004
|
+
* you may not use this file except in compliance with the License.
|
|
1005
|
+
* You may obtain a copy of the License at
|
|
1006
|
+
*
|
|
1007
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1008
|
+
*
|
|
1009
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1010
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1011
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1012
|
+
* See the License for the specific language governing permissions and
|
|
1013
|
+
* limitations under the License.
|
|
1014
|
+
*/class sn extends It{constructor(t,e,i,n){var o;super(e.code,e.message),this.operationType=i,this.user=n,Object.setPrototypeOf(this,sn.prototype),this.customData={appName:t.name,tenantId:null!==(o=t.tenantId)&&void 0!==o?o:void 0,_serverResponse:e.customData._serverResponse,operationType:i}}static _fromErrorAndOperation(t,e,i,n){return new sn(t,e,i,n)}}function rn(t,e,i,n){return("reauthenticate"===e?i._getReauthenticationResolver(t):i._getIdTokenResponse(t)).catch((i=>{if("auth/multi-factor-auth-required"===i.code)throw sn._fromErrorAndOperation(t,i,e,n);throw i}))}
|
|
1015
|
+
/**
|
|
1016
|
+
* @license
|
|
1017
|
+
* Copyright 2019 Google LLC
|
|
1018
|
+
*
|
|
1019
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1020
|
+
* you may not use this file except in compliance with the License.
|
|
1021
|
+
* You may obtain a copy of the License at
|
|
1022
|
+
*
|
|
1023
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1024
|
+
*
|
|
1025
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1026
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1027
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1028
|
+
* See the License for the specific language governing permissions and
|
|
1029
|
+
* limitations under the License.
|
|
1030
|
+
*/
|
|
1031
|
+
class an{constructor(t,e){this.storageRetriever=t,this.type=e}_isAvailable(){try{return this.storage?(this.storage.setItem("__sak","1"),this.storage.removeItem("__sak"),Promise.resolve(!0)):Promise.resolve(!1)}catch(t){return Promise.resolve(!1)}}_set(t,e){return this.storage.setItem(t,JSON.stringify(e)),Promise.resolve()}_get(t){const e=this.storage.getItem(t);return Promise.resolve(e?JSON.parse(e):null)}_remove(t){return this.storage.removeItem(t),Promise.resolve()}get storage(){return this.storageRetriever()}}
|
|
1032
|
+
/**
|
|
1033
|
+
* @license
|
|
1034
|
+
* Copyright 2020 Google LLC
|
|
1035
|
+
*
|
|
1036
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1037
|
+
* you may not use this file except in compliance with the License.
|
|
1038
|
+
* You may obtain a copy of the License at
|
|
1039
|
+
*
|
|
1040
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1041
|
+
*
|
|
1042
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1043
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1044
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1045
|
+
* See the License for the specific language governing permissions and
|
|
1046
|
+
* limitations under the License.
|
|
1047
|
+
*/class ln extends an{constructor(){super((()=>window.localStorage),"LOCAL"),this.boundEventHandler=(t,e)=>this.onStorageEvent(t,e),this.listeners={},this.localCache={},this.pollTimer=null,this.safariLocalStorageNotSynced=function(){const t=Ct();return $i(t)||Di(t)}()&&function(){try{return!(!window||window===window.top)}catch(t){return!1}}(),this.fallbackToPolling=Pi(),this._shouldAllowMigration=!0}forAllChangedKeys(t){for(const e of Object.keys(this.listeners)){const i=this.storage.getItem(e),n=this.localCache[e];i!==n&&t(e,n,i)}}onStorageEvent(t,e=!1){if(!t.key)return void this.forAllChangedKeys(((t,e,i)=>{this.notifyListeners(t,i)}));const i=t.key;if(e?this.detachListener():this.stopPolling(),this.safariLocalStorageNotSynced){const n=this.storage.getItem(i);if(t.newValue!==n)null!==t.newValue?this.storage.setItem(i,t.newValue):this.storage.removeItem(i);else if(this.localCache[i]===t.newValue&&!e)return}const n=()=>{const t=this.storage.getItem(i);(e||this.localCache[i]!==t)&&this.notifyListeners(i,t)},o=this.storage.getItem(i);Ri()&&o!==t.newValue&&t.newValue!==t.oldValue?setTimeout(n,10):n()}notifyListeners(t,e){this.localCache[t]=e;const i=this.listeners[t];if(i)for(const t of Array.from(i))t(e?JSON.parse(e):e)}startPolling(){this.stopPolling(),this.pollTimer=setInterval((()=>{this.forAllChangedKeys(((t,e,i)=>{this.onStorageEvent(new StorageEvent("storage",{key:t,oldValue:e,newValue:i}),!0)}))}),1e3)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(t,e){0===Object.keys(this.listeners).length&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[t]||(this.listeners[t]=new Set,this.localCache[t]=this.storage.getItem(t)),this.listeners[t].add(e)}_removeListener(t,e){this.listeners[t]&&(this.listeners[t].delete(e),0===this.listeners[t].size&&delete this.listeners[t]),0===Object.keys(this.listeners).length&&(this.detachListener(),this.stopPolling())}async _set(t,e){await super._set(t,e),this.localCache[t]=JSON.stringify(e)}async _get(t){const e=await super._get(t);return this.localCache[t]=JSON.stringify(e),e}async _remove(t){await super._remove(t),delete this.localCache[t]}}ln.type="LOCAL";const cn=ln;
|
|
1048
|
+
/**
|
|
1049
|
+
* @license
|
|
1050
|
+
* Copyright 2020 Google LLC
|
|
1051
|
+
*
|
|
1052
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1053
|
+
* you may not use this file except in compliance with the License.
|
|
1054
|
+
* You may obtain a copy of the License at
|
|
1055
|
+
*
|
|
1056
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1057
|
+
*
|
|
1058
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1059
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1060
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1061
|
+
* See the License for the specific language governing permissions and
|
|
1062
|
+
* limitations under the License.
|
|
1063
|
+
*/class hn extends an{constructor(){super((()=>window.sessionStorage),"SESSION")}_addListener(t,e){}_removeListener(t,e){}}hn.type="SESSION";const dn=hn;
|
|
1064
|
+
/**
|
|
1065
|
+
* @license
|
|
1066
|
+
* Copyright 2019 Google LLC
|
|
1067
|
+
*
|
|
1068
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1069
|
+
* you may not use this file except in compliance with the License.
|
|
1070
|
+
* You may obtain a copy of the License at
|
|
1071
|
+
*
|
|
1072
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1073
|
+
*
|
|
1074
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1075
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1076
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1077
|
+
* See the License for the specific language governing permissions and
|
|
1078
|
+
* limitations under the License.
|
|
1079
|
+
*/
|
|
1080
|
+
/**
|
|
1081
|
+
* @license
|
|
1082
|
+
* Copyright 2019 Google LLC
|
|
1083
|
+
*
|
|
1084
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1085
|
+
* you may not use this file except in compliance with the License.
|
|
1086
|
+
* You may obtain a copy of the License at
|
|
1087
|
+
*
|
|
1088
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1089
|
+
*
|
|
1090
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1091
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1092
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1093
|
+
* See the License for the specific language governing permissions and
|
|
1094
|
+
* limitations under the License.
|
|
1095
|
+
*/
|
|
1096
|
+
class un{constructor(t){this.eventTarget=t,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(t){const e=this.receivers.find((e=>e.isListeningto(t)));if(e)return e;const i=new un(t);return this.receivers.push(i),i}isListeningto(t){return this.eventTarget===t}async handleEvent(t){const e=t,{eventId:i,eventType:n,data:o}=e.data,s=this.handlersMap[n];if(!(null==s?void 0:s.size))return;e.ports[0].postMessage({status:"ack",eventId:i,eventType:n});const r=Array.from(s).map((async t=>t(e.origin,o))),a=await function(t){return Promise.all(t.map((async t=>{try{return{fulfilled:!0,value:await t}}catch(t){return{fulfilled:!1,reason:t}}})))}(r);e.ports[0].postMessage({status:"done",eventId:i,eventType:n,response:a})}_subscribe(t,e){0===Object.keys(this.handlersMap).length&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[t]||(this.handlersMap[t]=new Set),this.handlersMap[t].add(e)}_unsubscribe(t,e){this.handlersMap[t]&&e&&this.handlersMap[t].delete(e),e&&0!==this.handlersMap[t].size||delete this.handlersMap[t],0===Object.keys(this.handlersMap).length&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}}
|
|
1097
|
+
/**
|
|
1098
|
+
* @license
|
|
1099
|
+
* Copyright 2020 Google LLC
|
|
1100
|
+
*
|
|
1101
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1102
|
+
* you may not use this file except in compliance with the License.
|
|
1103
|
+
* You may obtain a copy of the License at
|
|
1104
|
+
*
|
|
1105
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1106
|
+
*
|
|
1107
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1108
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1109
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1110
|
+
* See the License for the specific language governing permissions and
|
|
1111
|
+
* limitations under the License.
|
|
1112
|
+
*/
|
|
1113
|
+
function pn(t="",e=10){let i="";for(let t=0;t<e;t++)i+=Math.floor(10*Math.random());return t+i}
|
|
1114
|
+
/**
|
|
1115
|
+
* @license
|
|
1116
|
+
* Copyright 2019 Google LLC
|
|
1117
|
+
*
|
|
1118
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1119
|
+
* you may not use this file except in compliance with the License.
|
|
1120
|
+
* You may obtain a copy of the License at
|
|
1121
|
+
*
|
|
1122
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1123
|
+
*
|
|
1124
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1125
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1126
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1127
|
+
* See the License for the specific language governing permissions and
|
|
1128
|
+
* limitations under the License.
|
|
1129
|
+
*/un.receivers=[];class fn{constructor(t){this.target=t,this.handlers=new Set}removeMessageHandler(t){t.messageChannel&&(t.messageChannel.port1.removeEventListener("message",t.onMessage),t.messageChannel.port1.close()),this.handlers.delete(t)}async _send(t,e,i=50){const n="undefined"!=typeof MessageChannel?new MessageChannel:null;if(!n)throw new Error("connection_unavailable");let o,s;return new Promise(((r,a)=>{const l=pn("",20);n.port1.start();const c=setTimeout((()=>{a(new Error("unsupported_event"))}),i);s={messageChannel:n,onMessage(t){const e=t;if(e.data.eventId===l)switch(e.data.status){case"ack":clearTimeout(c),o=setTimeout((()=>{a(new Error("timeout"))}),3e3);break;case"done":clearTimeout(o),r(e.data.response);break;default:clearTimeout(c),clearTimeout(o),a(new Error("invalid_response"))}}},this.handlers.add(s),n.port1.addEventListener("message",s.onMessage),this.target.postMessage({eventType:t,eventId:l,data:e},[n.port2])})).finally((()=>{s&&this.removeMessageHandler(s)}))}}
|
|
1130
|
+
/**
|
|
1131
|
+
* @license
|
|
1132
|
+
* Copyright 2020 Google LLC
|
|
1133
|
+
*
|
|
1134
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1135
|
+
* you may not use this file except in compliance with the License.
|
|
1136
|
+
* You may obtain a copy of the License at
|
|
1137
|
+
*
|
|
1138
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1139
|
+
*
|
|
1140
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1141
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1142
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1143
|
+
* See the License for the specific language governing permissions and
|
|
1144
|
+
* limitations under the License.
|
|
1145
|
+
*/function vn(){return window}
|
|
1146
|
+
/**
|
|
1147
|
+
* @license
|
|
1148
|
+
* Copyright 2020 Google LLC.
|
|
1149
|
+
*
|
|
1150
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1151
|
+
* you may not use this file except in compliance with the License.
|
|
1152
|
+
* You may obtain a copy of the License at
|
|
1153
|
+
*
|
|
1154
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1155
|
+
*
|
|
1156
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1157
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1158
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1159
|
+
* See the License for the specific language governing permissions and
|
|
1160
|
+
* limitations under the License.
|
|
1161
|
+
*/
|
|
1162
|
+
function mn(){return void 0!==vn().WorkerGlobalScope&&"function"==typeof vn().importScripts}
|
|
1163
|
+
/**
|
|
1164
|
+
* @license
|
|
1165
|
+
* Copyright 2019 Google LLC
|
|
1166
|
+
*
|
|
1167
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1168
|
+
* you may not use this file except in compliance with the License.
|
|
1169
|
+
* You may obtain a copy of the License at
|
|
1170
|
+
*
|
|
1171
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1172
|
+
*
|
|
1173
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1174
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1175
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1176
|
+
* See the License for the specific language governing permissions and
|
|
1177
|
+
* limitations under the License.
|
|
1178
|
+
*/
|
|
1179
|
+
const wn="firebaseLocalStorageDb";class gn{constructor(t){this.request=t}toPromise(){return new Promise(((t,e)=>{this.request.addEventListener("success",(()=>{t(this.request.result)})),this.request.addEventListener("error",(()=>{e(this.request.error)}))}))}}function yn(t,e){return t.transaction(["firebaseLocalStorage"],e?"readwrite":"readonly").objectStore("firebaseLocalStorage")}function Cn(){const t=indexedDB.open(wn,1);return new Promise(((e,i)=>{t.addEventListener("error",(()=>{i(t.error)})),t.addEventListener("upgradeneeded",(()=>{const e=t.result;try{e.createObjectStore("firebaseLocalStorage",{keyPath:"fbase_key"})}catch(t){i(t)}})),t.addEventListener("success",(async()=>{const i=t.result;i.objectStoreNames.contains("firebaseLocalStorage")?e(i):(i.close(),await function(){const t=indexedDB.deleteDatabase(wn);return new gn(t).toPromise()}(),e(await Cn()))}))}))}async function bn(t,e,i){const n=yn(t,!0).put({fbase_key:e,value:i});return new gn(n).toPromise()}function xn(t,e){const i=yn(t,!0).delete(e);return new gn(i).toPromise()}class Sn{constructor(){this.type="LOCAL",this._shouldAllowMigration=!0,this.listeners={},this.localCache={},this.pollTimer=null,this.pendingWrites=0,this.receiver=null,this.sender=null,this.serviceWorkerReceiverAvailable=!1,this.activeServiceWorker=null,this._workerInitializationPromise=this.initializeServiceWorkerMessaging().then((()=>{}),(()=>{}))}async _openDb(){return this.db||(this.db=await Cn()),this.db}async _withRetries(t){let e=0;for(;;)try{const e=await this._openDb();return await t(e)}catch(t){if(e++>3)throw t;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return mn()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=un._getInstance(mn()?self:null),this.receiver._subscribe("keyChanged",(async(t,e)=>({keyProcessed:(await this._poll()).includes(e.key)}))),this.receiver._subscribe("ping",(async(t,e)=>["keyChanged"]))}async initializeSender(){var t,e;if(this.activeServiceWorker=await async function(){if(!(null===navigator||void 0===navigator?void 0:navigator.serviceWorker))return null;try{return(await navigator.serviceWorker.ready).active}catch(t){return null}}(),!this.activeServiceWorker)return;this.sender=new fn(this.activeServiceWorker);const i=await this.sender._send("ping",{},800);i&&(null===(t=i[0])||void 0===t?void 0:t.fulfilled)&&(null===(e=i[0])||void 0===e?void 0:e.value.includes("keyChanged"))&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(t){var e;if(this.sender&&this.activeServiceWorker&&((null===(e=null===navigator||void 0===navigator?void 0:navigator.serviceWorker)||void 0===e?void 0:e.controller)||null)===this.activeServiceWorker)try{await this.sender._send("keyChanged",{key:t},this.serviceWorkerReceiverAvailable?800:50)}catch(e){}}async _isAvailable(){try{if(!indexedDB)return!1;const t=await Cn();return await bn(t,"__sak","1"),await xn(t,"__sak"),!0}catch(t){}return!1}async _withPendingWrite(t){this.pendingWrites++;try{await t()}finally{this.pendingWrites--}}async _set(t,e){return this._withPendingWrite((async()=>(await this._withRetries((i=>bn(i,t,e))),this.localCache[t]=e,this.notifyServiceWorker(t))))}async _get(t){const e=await this._withRetries((e=>async function(t,e){const i=yn(t,!1).get(e),n=await new gn(i).toPromise();return void 0===n?null:n.value}(e,t)));return this.localCache[t]=e,e}async _remove(t){return this._withPendingWrite((async()=>(await this._withRetries((e=>xn(e,t))),delete this.localCache[t],this.notifyServiceWorker(t))))}async _poll(){const t=await this._withRetries((t=>{const e=yn(t,!1).getAll();return new gn(e).toPromise()}));if(!t)return[];if(0!==this.pendingWrites)return[];const e=[],i=new Set;for(const{fbase_key:n,value:o}of t)i.add(n),JSON.stringify(this.localCache[n])!==JSON.stringify(o)&&(this.notifyListeners(n,o),e.push(n));for(const t of Object.keys(this.localCache))this.localCache[t]&&!i.has(t)&&(this.notifyListeners(t,null),e.push(t));return e}notifyListeners(t,e){this.localCache[t]=e;const i=this.listeners[t];if(i)for(const t of Array.from(i))t(e)}startPolling(){this.stopPolling(),this.pollTimer=setInterval((async()=>this._poll()),800)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(t,e){0===Object.keys(this.listeners).length&&this.startPolling(),this.listeners[t]||(this.listeners[t]=new Set,this._get(t)),this.listeners[t].add(e)}_removeListener(t,e){this.listeners[t]&&(this.listeners[t].delete(e),0===this.listeners[t].size&&delete this.listeners[t]),0===Object.keys(this.listeners).length&&this.stopPolling()}}Sn.type="LOCAL";const En=Sn;
|
|
1180
|
+
/**
|
|
1181
|
+
* @license
|
|
1182
|
+
* Copyright 2020 Google LLC
|
|
1183
|
+
*
|
|
1184
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1185
|
+
* you may not use this file except in compliance with the License.
|
|
1186
|
+
* You may obtain a copy of the License at
|
|
1187
|
+
*
|
|
1188
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1189
|
+
*
|
|
1190
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1191
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1192
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1193
|
+
* See the License for the specific language governing permissions and
|
|
1194
|
+
* limitations under the License.
|
|
1195
|
+
*/function kn(t){return new Promise(((e,i)=>{const n=document.createElement("script");var o,s;n.setAttribute("src",t),n.onload=e,n.onerror=t=>{const e=Je("internal-error");e.customData=t,i(e)},n.type="text/javascript",n.charset="UTF-8",(null!==(s=null===(o=document.getElementsByTagName("head"))||void 0===o?void 0:o[0])&&void 0!==s?s:document).appendChild(n)}))}new oi(3e4,6e4);
|
|
1196
|
+
/**
|
|
1197
|
+
* @license
|
|
1198
|
+
* Copyright 2019 Google LLC
|
|
1199
|
+
*
|
|
1200
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1201
|
+
* you may not use this file except in compliance with the License.
|
|
1202
|
+
* You may obtain a copy of the License at
|
|
1203
|
+
*
|
|
1204
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1205
|
+
*
|
|
1206
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1207
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1208
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1209
|
+
* See the License for the specific language governing permissions and
|
|
1210
|
+
* limitations under the License.
|
|
1211
|
+
*/
|
|
1212
|
+
class In extends qi{constructor(t){super("custom","custom"),this.params=t}_getIdTokenResponse(t){return Ji(t,this._buildIdpRequest())}_linkToIdToken(t,e){return Ji(t,this._buildIdpRequest(e))}_getReauthenticationResolver(t){return Ji(t,this._buildIdpRequest())}_buildIdpRequest(t){const e={requestUri:this.params.requestUri,sessionId:this.params.sessionId,postBody:this.params.postBody,tenantId:this.params.tenantId,pendingToken:this.params.pendingToken,returnSecureToken:!0,returnIdpCredential:!0};return t&&(e.idToken=t),e}}function _n(t){
|
|
1213
|
+
/**
|
|
1214
|
+
* @license
|
|
1215
|
+
* Copyright 2020 Google LLC
|
|
1216
|
+
*
|
|
1217
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1218
|
+
* you may not use this file except in compliance with the License.
|
|
1219
|
+
* You may obtain a copy of the License at
|
|
1220
|
+
*
|
|
1221
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1222
|
+
*
|
|
1223
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1224
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1225
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1226
|
+
* See the License for the specific language governing permissions and
|
|
1227
|
+
* limitations under the License.
|
|
1228
|
+
*/
|
|
1229
|
+
return async function(t,e,i=!1){const n="signIn",o=await rn(t,n,e),s=await nn._fromIdTokenResponse(t,n,o);return i||await t._updateCurrentUser(s.user),s}(t.auth,new In(t),t.bypassAuthState)}function An(t){const{auth:e,user:i}=t;return We(i,e,"internal-error"),
|
|
1230
|
+
/**
|
|
1231
|
+
* @license
|
|
1232
|
+
* Copyright 2019 Google LLC
|
|
1233
|
+
*
|
|
1234
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1235
|
+
* you may not use this file except in compliance with the License.
|
|
1236
|
+
* You may obtain a copy of the License at
|
|
1237
|
+
*
|
|
1238
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1239
|
+
*
|
|
1240
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1241
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1242
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1243
|
+
* See the License for the specific language governing permissions and
|
|
1244
|
+
* limitations under the License.
|
|
1245
|
+
*/
|
|
1246
|
+
async function(t,e,i=!1){const{auth:n}=t,o="reauthenticate";try{const s=await wi(t,rn(n,o,e,t),i);We(s.idToken,n,"internal-error");const r=mi(s.idToken);We(r,n,"internal-error");const{sub:a}=r;return We(t.uid===a,n,"user-mismatch"),nn._forOperation(t,o,s)}catch(t){throw"auth/user-not-found"===(null==t?void 0:t.code)&&qe(n,"user-mismatch"),t}}(i,new In(t),t.bypassAuthState)}async function Ln(t){const{auth:e,user:i}=t;return We(i,e,"internal-error"),async function(t,e,i=!1){const n=await wi(t,e._linkToIdToken(t.auth,await t.getIdToken()),i);return nn._forOperation(t,"link",n)}(i,new In(t),t.bypassAuthState)}
|
|
1247
|
+
/**
|
|
1248
|
+
* @license
|
|
1249
|
+
* Copyright 2020 Google LLC
|
|
1250
|
+
*
|
|
1251
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1252
|
+
* you may not use this file except in compliance with the License.
|
|
1253
|
+
* You may obtain a copy of the License at
|
|
1254
|
+
*
|
|
1255
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1256
|
+
*
|
|
1257
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1258
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1259
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1260
|
+
* See the License for the specific language governing permissions and
|
|
1261
|
+
* limitations under the License.
|
|
1262
|
+
*/class $n{constructor(t,e,i,n,o=!1){this.auth=t,this.resolver=i,this.user=n,this.bypassAuthState=o,this.pendingPromise=null,this.eventManager=null,this.filter=Array.isArray(e)?e:[e]}execute(){return new Promise((async(t,e)=>{this.pendingPromise={resolve:t,reject:e};try{this.eventManager=await this.resolver._initialize(this.auth),await this.onExecution(),this.eventManager.registerConsumer(this)}catch(t){this.reject(t)}}))}async onAuthEvent(t){const{urlResponse:e,sessionId:i,postBody:n,tenantId:o,error:s,type:r}=t;if(s)return void this.reject(s);const a={auth:this.auth,requestUri:e,sessionId:i,tenantId:o||void 0,postBody:n||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(r)(a))}catch(t){this.reject(t)}}onError(t){this.reject(t)}getIdpTask(t){switch(t){case"signInViaPopup":case"signInViaRedirect":return _n;case"linkViaPopup":case"linkViaRedirect":return Ln;case"reauthViaPopup":case"reauthViaRedirect":return An;default:qe(this.auth,"internal-error")}}resolve(t){Xe(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(t),this.unregisterAndCleanUp()}reject(t){Xe(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.reject(t),this.unregisterAndCleanUp()}unregisterAndCleanUp(){this.eventManager&&this.eventManager.unregisterConsumer(this),this.pendingPromise=null,this.cleanUp()}}
|
|
1263
|
+
/**
|
|
1264
|
+
* @license
|
|
1265
|
+
* Copyright 2020 Google LLC
|
|
1266
|
+
*
|
|
1267
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1268
|
+
* you may not use this file except in compliance with the License.
|
|
1269
|
+
* You may obtain a copy of the License at
|
|
1270
|
+
*
|
|
1271
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1272
|
+
*
|
|
1273
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1274
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1275
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1276
|
+
* See the License for the specific language governing permissions and
|
|
1277
|
+
* limitations under the License.
|
|
1278
|
+
*/const Tn=new oi(2e3,1e4);class Mn extends $n{constructor(t,e,i,n,o){super(t,e,n,o),this.provider=i,this.authWindow=null,this.pollId=null,Mn.currentPopupAction&&Mn.currentPopupAction.cancel(),Mn.currentPopupAction=this}async executeNotNull(){const t=await this.execute();return We(t,this.auth,"internal-error"),t}async onExecution(){Xe(1===this.filter.length,"Popup operations only handle one event");const t=pn();this.authWindow=await this.resolver._openPopup(this.auth,this.provider,this.filter[0],t),this.authWindow.associatedEvent=t,this.resolver._originValidation(this.auth).catch((t=>{this.reject(t)})),this.resolver._isIframeWebStorageSupported(this.auth,(t=>{t||this.reject(Je(this.auth,"web-storage-unsupported"))})),this.pollUserCancellation()}get eventId(){var t;return(null===(t=this.authWindow)||void 0===t?void 0:t.associatedEvent)||null}cancel(){this.reject(Je(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,Mn.currentPopupAction=null}pollUserCancellation(){const t=()=>{var e,i;(null===(i=null===(e=this.authWindow)||void 0===e?void 0:e.window)||void 0===i?void 0:i.closed)?this.pollId=window.setTimeout((()=>{this.pollId=null,this.reject(Je(this.auth,"popup-closed-by-user"))}),2e3):this.pollId=window.setTimeout(t,Tn.get())};t()}}Mn.currentPopupAction=null;
|
|
1279
|
+
/**
|
|
1280
|
+
* @license
|
|
1281
|
+
* Copyright 2020 Google LLC
|
|
1282
|
+
*
|
|
1283
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1284
|
+
* you may not use this file except in compliance with the License.
|
|
1285
|
+
* You may obtain a copy of the License at
|
|
1286
|
+
*
|
|
1287
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1288
|
+
*
|
|
1289
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1290
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1291
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1292
|
+
* See the License for the specific language governing permissions and
|
|
1293
|
+
* limitations under the License.
|
|
1294
|
+
*/
|
|
1295
|
+
const On=new Map;class Fn extends $n{constructor(t,e,i=!1){super(t,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],e,void 0,i),this.eventId=null}async execute(){let t=On.get(this.auth._key());if(!t){try{const e=await async function(t,e){const i=function(t){return Ii("pendingRedirect",t.config.apiKey,t.name)}(e),n=function(t){return ti(t._redirectPersistence)}(t);if(!await n._isAvailable())return!1;const o="true"===await n._get(i);return await n._remove(i),o}(this.resolver,this.auth),i=e?await super.execute():null;t=()=>Promise.resolve(i)}catch(e){t=()=>Promise.reject(e)}On.set(this.auth._key(),t)}return this.bypassAuthState||On.set(this.auth._key(),(()=>Promise.resolve(null))),t()}async onAuthEvent(t){if("signInViaRedirect"===t.type)return super.onAuthEvent(t);if("unknown"!==t.type){if(t.eventId){const e=await this.auth._redirectUserForId(t.eventId);if(e)return this.user=e,super.onAuthEvent(t);this.resolve(null)}}else this.resolve(null)}async onExecution(){}cleanUp(){}}function Nn(t,e){On.set(t._key(),e)}async function Dn(t,e,i=!1){const n=Bi(t),o=
|
|
1296
|
+
/**
|
|
1297
|
+
* @license
|
|
1298
|
+
* Copyright 2021 Google LLC
|
|
1299
|
+
*
|
|
1300
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1301
|
+
* you may not use this file except in compliance with the License.
|
|
1302
|
+
* You may obtain a copy of the License at
|
|
1303
|
+
*
|
|
1304
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1305
|
+
*
|
|
1306
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1307
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1308
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1309
|
+
* See the License for the specific language governing permissions and
|
|
1310
|
+
* limitations under the License.
|
|
1311
|
+
*/
|
|
1312
|
+
function(t,e){return e?ti(e):(We(t._popupRedirectResolver,t,"argument-error"),t._popupRedirectResolver)}(n,e),s=new Fn(n,o,i),r=await s.execute();return r&&!i&&(delete r.user._redirectEventId,await n._persistUserIfCurrent(r.user),await n._setRedirectUser(null,e)),r}
|
|
1313
|
+
/**
|
|
1314
|
+
* @license
|
|
1315
|
+
* Copyright 2020 Google LLC
|
|
1316
|
+
*
|
|
1317
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1318
|
+
* you may not use this file except in compliance with the License.
|
|
1319
|
+
* You may obtain a copy of the License at
|
|
1320
|
+
*
|
|
1321
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1322
|
+
*
|
|
1323
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1324
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1325
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1326
|
+
* See the License for the specific language governing permissions and
|
|
1327
|
+
* limitations under the License.
|
|
1328
|
+
*/class Rn{constructor(t){this.auth=t,this.cachedEventUids=new Set,this.consumers=new Set,this.queuedRedirectEvent=null,this.hasHandledPotentialRedirect=!1,this.lastProcessedEventTime=Date.now()}registerConsumer(t){this.consumers.add(t),this.queuedRedirectEvent&&this.isEventForConsumer(this.queuedRedirectEvent,t)&&(this.sendToConsumer(this.queuedRedirectEvent,t),this.saveEventToCache(this.queuedRedirectEvent),this.queuedRedirectEvent=null)}unregisterConsumer(t){this.consumers.delete(t)}onEvent(t){if(this.hasEventBeenHandled(t))return!1;let e=!1;return this.consumers.forEach((i=>{this.isEventForConsumer(t,i)&&(e=!0,this.sendToConsumer(t,i),this.saveEventToCache(t))})),this.hasHandledPotentialRedirect||!function(t){switch(t.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return jn(t);default:return!1}}
|
|
1329
|
+
/**
|
|
1330
|
+
* @license
|
|
1331
|
+
* Copyright 2020 Google LLC
|
|
1332
|
+
*
|
|
1333
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1334
|
+
* you may not use this file except in compliance with the License.
|
|
1335
|
+
* You may obtain a copy of the License at
|
|
1336
|
+
*
|
|
1337
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1338
|
+
*
|
|
1339
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1340
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1341
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1342
|
+
* See the License for the specific language governing permissions and
|
|
1343
|
+
* limitations under the License.
|
|
1344
|
+
*/(t)||(this.hasHandledPotentialRedirect=!0,e||(this.queuedRedirectEvent=t,e=!0)),e}sendToConsumer(t,e){var i;if(t.error&&!jn(t)){const n=(null===(i=t.error.code)||void 0===i?void 0:i.split("auth/")[1])||"internal-error";e.onError(Je(this.auth,n))}else e.onAuthEvent(t)}isEventForConsumer(t,e){const i=null===e.eventId||!!t.eventId&&t.eventId===e.eventId;return e.filter.includes(t.type)&&i}hasEventBeenHandled(t){return Date.now()-this.lastProcessedEventTime>=6e5&&this.cachedEventUids.clear(),this.cachedEventUids.has(Pn(t))}saveEventToCache(t){this.cachedEventUids.add(Pn(t)),this.lastProcessedEventTime=Date.now()}}function Pn(t){return[t.type,t.eventId,t.sessionId,t.tenantId].filter((t=>t)).join("-")}function jn({type:t,error:e}){return"unknown"===t&&"auth/no-auth-event"===(null==e?void 0:e.code)}
|
|
1345
|
+
/**
|
|
1346
|
+
* @license
|
|
1347
|
+
* Copyright 2020 Google LLC
|
|
1348
|
+
*
|
|
1349
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1350
|
+
* you may not use this file except in compliance with the License.
|
|
1351
|
+
* You may obtain a copy of the License at
|
|
1352
|
+
*
|
|
1353
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1354
|
+
*
|
|
1355
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1356
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1357
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1358
|
+
* See the License for the specific language governing permissions and
|
|
1359
|
+
* limitations under the License.
|
|
1360
|
+
*/
|
|
1361
|
+
const Vn=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,Un=/^https?/;async function Bn(t){if(t.config.emulator)return;const{authorizedDomains:e}=await async function(t,e={}){return ci(t,"GET","/v1/projects",e)}(t);for(const t of e)try{if(Hn(t))return}catch(t){}qe(t,"unauthorized-domain")}function Hn(t){const e=ei(),{protocol:i,hostname:n}=new URL(e);if(t.startsWith("chrome-extension://")){const o=new URL(t);return""===o.hostname&&""===n?"chrome-extension:"===i&&t.replace("chrome-extension://","")===e.replace("chrome-extension://",""):"chrome-extension:"===i&&o.hostname===n}if(!Un.test(i))return!1;if(Vn.test(t))return n===t;const o=t.replace(/\./g,"\\.");return new RegExp("^(.+\\."+o+"|"+o+")$","i").test(n)}
|
|
1362
|
+
/**
|
|
1363
|
+
* @license
|
|
1364
|
+
* Copyright 2020 Google LLC.
|
|
1365
|
+
*
|
|
1366
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1367
|
+
* you may not use this file except in compliance with the License.
|
|
1368
|
+
* You may obtain a copy of the License at
|
|
1369
|
+
*
|
|
1370
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1371
|
+
*
|
|
1372
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1373
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1374
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1375
|
+
* See the License for the specific language governing permissions and
|
|
1376
|
+
* limitations under the License.
|
|
1377
|
+
*/const zn=new oi(3e4,6e4);function Zn(){const t=vn().i;if(null==t?void 0:t.H)for(const e of Object.keys(t.H))if(t.H[e].r=t.H[e].r||[],t.H[e].L=t.H[e].L||[],t.H[e].r=[...t.H[e].L],t.CP)for(let e=0;e<t.CP.length;e++)t.CP[e]=null}function Kn(t){return new Promise(((e,i)=>{var n,o,s;function r(){Zn(),gapi.load("gapi.iframes",{callback:()=>{e(gapi.iframes.getContext())},ontimeout:()=>{Zn(),i(Je(t,"network-request-failed"))},timeout:zn.get()})}if(null===(o=null===(n=vn().gapi)||void 0===n?void 0:n.iframes)||void 0===o?void 0:o.Iframe)e(gapi.iframes.getContext());else{if(!(null===(s=vn().gapi)||void 0===s?void 0:s.load)){const e=`__${"iframefcb"}${Math.floor(1e6*Math.random())}`;return vn()[e]=()=>{gapi.load?r():i(Je(t,"network-request-failed"))},kn(`https://apis.google.com/js/api.js?onload=${e}`).catch((t=>i(t)))}r()}})).catch((t=>{throw qn=null,t}))}let qn=null;
|
|
1378
|
+
/**
|
|
1379
|
+
* @license
|
|
1380
|
+
* Copyright 2020 Google LLC.
|
|
1381
|
+
*
|
|
1382
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1383
|
+
* you may not use this file except in compliance with the License.
|
|
1384
|
+
* You may obtain a copy of the License at
|
|
1385
|
+
*
|
|
1386
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1387
|
+
*
|
|
1388
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1389
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1390
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1391
|
+
* See the License for the specific language governing permissions and
|
|
1392
|
+
* limitations under the License.
|
|
1393
|
+
*/
|
|
1394
|
+
const Jn=new oi(5e3,15e3),Gn={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"},"aria-hidden":"true",tabindex:"-1"},Wn=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function Yn(t){const e=t.config;We(e.authDomain,t,"auth-domain-config-required");const i=e.emulator?si(e,"emulator/auth/iframe"):`https://${t.config.authDomain}/__/auth/iframe`,n={apiKey:e.apiKey,appName:t.name,v:"9.15.0"},o=Wn.get(t.config.apiHost);o&&(n.eid=o);const s=t._getFrameworks();return s.length&&(n.fw=s.join(",")),`${i}?${Tt(n).slice(1)}`}async function Xn(t){const e=await function(t){return qn=qn||Kn(t),qn}(t),i=vn().gapi;return We(i,t,"internal-error"),e.open({where:document.body,url:Yn(t),messageHandlersFilter:i.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:Gn,dontclear:!0},(e=>new Promise((async(i,n)=>{await e.restyle({setHideOnLeave:!1});const o=Je(t,"network-request-failed"),s=vn().setTimeout((()=>{n(o)}),Jn.get());function r(){vn().clearTimeout(s),i(e)}e.ping(r).then(r,(()=>{n(o)}))}))))}
|
|
1395
|
+
/**
|
|
1396
|
+
* @license
|
|
1397
|
+
* Copyright 2020 Google LLC.
|
|
1398
|
+
*
|
|
1399
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1400
|
+
* you may not use this file except in compliance with the License.
|
|
1401
|
+
* You may obtain a copy of the License at
|
|
1402
|
+
*
|
|
1403
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1404
|
+
*
|
|
1405
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1406
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1407
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1408
|
+
* See the License for the specific language governing permissions and
|
|
1409
|
+
* limitations under the License.
|
|
1410
|
+
*/const Qn={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"};class to{constructor(t){this.window=t,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch(t){}}}function eo(t,e,i,n=500,o=600){const s=Math.max((window.screen.availHeight-o)/2,0).toString(),r=Math.max((window.screen.availWidth-n)/2,0).toString();let a="";const l=Object.assign(Object.assign({},Qn),{width:n.toString(),height:o.toString(),top:s,left:r}),c=Ct().toLowerCase();i&&(a=Ti(c)?"_blank":i),Li(c)&&(e=e||"http://localhost",l.scrollbars="yes");const h=Object.entries(l).reduce(((t,[e,i])=>`${t}${e}=${i},`),"");if(function(t=Ct()){var e;return Di(t)&&!!(null===(e=window.navigator)||void 0===e?void 0:e.standalone)}(c)&&"_self"!==a)return function(t,e){const i=document.createElement("a");i.href=t,i.target=e;const n=document.createEvent("MouseEvent");n.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),i.dispatchEvent(n)}
|
|
1411
|
+
/**
|
|
1412
|
+
* @license
|
|
1413
|
+
* Copyright 2021 Google LLC
|
|
1414
|
+
*
|
|
1415
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1416
|
+
* you may not use this file except in compliance with the License.
|
|
1417
|
+
* You may obtain a copy of the License at
|
|
1418
|
+
*
|
|
1419
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1420
|
+
*
|
|
1421
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1422
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1423
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1424
|
+
* See the License for the specific language governing permissions and
|
|
1425
|
+
* limitations under the License.
|
|
1426
|
+
*/(e||"",a),new to(null);const d=window.open(e||"",a,h);We(d,t,"popup-blocked");try{d.focus()}catch(t){}return new to(d)}function io(t,e,i,n,o,s){We(t.config.authDomain,t,"auth-domain-config-required"),We(t.config.apiKey,t,"invalid-api-key");const r={apiKey:t.config.apiKey,appName:t.name,authType:i,redirectUrl:n,v:"9.15.0",eventId:o};if(e instanceof Wi){e.setDefaultLanguage(t.languageCode),r.providerId=e.providerId||"",function(t){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}(e.getCustomParameters())||(r.customParameters=JSON.stringify(e.getCustomParameters()));for(const[t,e]of Object.entries(s||{}))r[t]=e}if(e instanceof Yi){const t=e.getScopes().filter((t=>""!==t));t.length>0&&(r.scopes=t.join(","))}t.tenantId&&(r.tid=t.tenantId);const a=r;for(const t of Object.keys(a))void 0===a[t]&&delete a[t];return`${function({config:t}){if(!t.emulator)return`https://${t.authDomain}/__/auth/handler`;return si(t,"emulator/auth/handler")}
|
|
1427
|
+
/**
|
|
1428
|
+
* @license
|
|
1429
|
+
* Copyright 2020 Google LLC
|
|
1430
|
+
*
|
|
1431
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1432
|
+
* you may not use this file except in compliance with the License.
|
|
1433
|
+
* You may obtain a copy of the License at
|
|
1434
|
+
*
|
|
1435
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1436
|
+
*
|
|
1437
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1438
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1439
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1440
|
+
* See the License for the specific language governing permissions and
|
|
1441
|
+
* limitations under the License.
|
|
1442
|
+
*/(t)}?${Tt(a).slice(1)}`}const no=class{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=dn,this._completeRedirectFn=Dn,this._overrideRedirectResult=Nn}async _openPopup(t,e,i,n){var o;Xe(null===(o=this.eventManagers[t._key()])||void 0===o?void 0:o.manager,"_initialize() not called before _openPopup()");return eo(t,io(t,e,i,ei(),n),pn())}async _openRedirect(t,e,i,n){var o;return await this._originValidation(t),o=io(t,e,i,ei(),n),vn().location.href=o,new Promise((()=>{}))}_initialize(t){const e=t._key();if(this.eventManagers[e]){const{manager:t,promise:i}=this.eventManagers[e];return t?Promise.resolve(t):(Xe(i,"If manager is not set, promise should be"),i)}const i=this.initAndGetManager(t);return this.eventManagers[e]={promise:i},i.catch((()=>{delete this.eventManagers[e]})),i}async initAndGetManager(t){const e=await Xn(t),i=new Rn(t);return e.register("authEvent",(e=>{We(null==e?void 0:e.authEvent,t,"invalid-auth-event");return{status:i.onEvent(e.authEvent)?"ACK":"ERROR"}}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER),this.eventManagers[t._key()]={manager:i},this.iframes[t._key()]=e,i}_isIframeWebStorageSupported(t,e){this.iframes[t._key()].send("webStorageSupport",{type:"webStorageSupport"},(i=>{var n;const o=null===(n=null==i?void 0:i[0])||void 0===n?void 0:n.webStorageSupport;void 0!==o&&e(!!o),qe(t,"internal-error")}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(t){const e=t._key();return this.originValidationPromises[e]||(this.originValidationPromises[e]=Bn(t)),this.originValidationPromises[e]}get _shouldInitProactively(){return Pi()||$i()||Di()}};var oo="@firebase/auth";
|
|
1443
|
+
/**
|
|
1444
|
+
* @license
|
|
1445
|
+
* Copyright 2020 Google LLC
|
|
1446
|
+
*
|
|
1447
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1448
|
+
* you may not use this file except in compliance with the License.
|
|
1449
|
+
* You may obtain a copy of the License at
|
|
1450
|
+
*
|
|
1451
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1452
|
+
*
|
|
1453
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1454
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1455
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1456
|
+
* See the License for the specific language governing permissions and
|
|
1457
|
+
* limitations under the License.
|
|
1458
|
+
*/
|
|
1459
|
+
class so{constructor(t){this.auth=t,this.internalListeners=new Map}getUid(){var t;return this.assertAuthConfigured(),(null===(t=this.auth.currentUser)||void 0===t?void 0:t.uid)||null}async getToken(t){if(this.assertAuthConfigured(),await this.auth._initializationPromise,!this.auth.currentUser)return null;return{accessToken:await this.auth.currentUser.getIdToken(t)}}addAuthTokenListener(t){if(this.assertAuthConfigured(),this.internalListeners.has(t))return;const e=this.auth.onIdTokenChanged((e=>{t((null==e?void 0:e.stsTokenManager.accessToken)||null)}));this.internalListeners.set(t,e),this.updateProactiveRefresh()}removeAuthTokenListener(t){this.assertAuthConfigured();const e=this.internalListeners.get(t);e&&(this.internalListeners.delete(t),e(),this.updateProactiveRefresh())}assertAuthConfigured(){We(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}}
|
|
1460
|
+
/**
|
|
1461
|
+
* @license
|
|
1462
|
+
* Copyright 2020 Google LLC
|
|
1463
|
+
*
|
|
1464
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1465
|
+
* you may not use this file except in compliance with the License.
|
|
1466
|
+
* You may obtain a copy of the License at
|
|
1467
|
+
*
|
|
1468
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1469
|
+
*
|
|
1470
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1471
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1472
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1473
|
+
* See the License for the specific language governing permissions and
|
|
1474
|
+
* limitations under the License.
|
|
1475
|
+
*/
|
|
1476
|
+
/**
|
|
1477
|
+
* @license
|
|
1478
|
+
* Copyright 2021 Google LLC
|
|
1479
|
+
*
|
|
1480
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1481
|
+
* you may not use this file except in compliance with the License.
|
|
1482
|
+
* You may obtain a copy of the License at
|
|
1483
|
+
*
|
|
1484
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1485
|
+
*
|
|
1486
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1487
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1488
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1489
|
+
* See the License for the specific language governing permissions and
|
|
1490
|
+
* limitations under the License.
|
|
1491
|
+
*/
|
|
1492
|
+
const ro=Et("authIdTokenMaxAge")||300;let ao=null;function lo(t=ge()){const e=fe(t,"auth");if(e.isInitialized())return e.getImmediate();const i=function(t,e){const i=fe(t,"auth");if(i.isInitialized()){const t=i.getImmediate();if(Lt(i.getOptions(),null!=e?e:{}))return t;qe(t,"already-initialized")}return i.initialize({options:e})}(t,{popupRedirectResolver:no,persistence:[En,cn,dn]}),n=Et("authTokenSyncURL");if(n){const t=(o=n,async t=>{const e=t&&await t.getIdTokenResult(),i=e&&((new Date).getTime()-Date.parse(e.issuedAtTime))/1e3;if(i&&i>ro)return;const n=null==e?void 0:e.token;ao!==n&&(ao=n,await fetch(o,{method:n?"POST":"DELETE",headers:n?{Authorization:`Bearer ${n}`}:{}}))});!function(t,e,i){Ft(t).beforeAuthStateChanged(e,i)}(i,t,(()=>t(i.currentUser))),function(t,e,i,n){Ft(t).onIdTokenChanged(e,i,n)}(i,(e=>t(e)))}var o;const s=St("auth");return s&&zi(i,`http://${s}`),i}var co;co="Browser",pe(new Nt("auth",((t,{options:e})=>{const i=t.getProvider("app").getImmediate(),n=t.getProvider("heartbeat"),{apiKey:o,authDomain:s}=i.options;return((t,i)=>{We(o&&!o.includes(":"),"invalid-api-key",{appName:t.name}),We(!(null==s?void 0:s.includes(":")),"argument-error",{appName:t.name});const n={apiKey:o,authDomain:s,clientPlatform:co,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:ji(co)},r=new Ui(t,i,n);return function(t,e){const i=(null==e?void 0:e.persistence)||[],n=(Array.isArray(i)?i:[i]).map(ti);(null==e?void 0:e.errorMap)&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(n,null==e?void 0:e.popupRedirectResolver)}(r,e),r})(i,n)}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((t,e,i)=>{t.getProvider("auth-internal").initialize()}))),pe(new Nt("auth-internal",(t=>(t=>new so(t))(Bi(t.getProvider("auth").getImmediate()))),"PRIVATE").setInstantiationMode("EXPLICIT")),ye(oo,"0.21.0",function(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}(co)),ye(oo,"0.21.0","esm2017");class ho{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 uo extends ho{constructor(t=[],e=4*t.length){super();let i=t;if(i instanceof ArrayBuffer&&(i=new Uint8Array(i)),(i instanceof Int8Array||i instanceof Uint8ClampedArray||i instanceof Int16Array||i instanceof Uint16Array||i instanceof Int32Array||i instanceof Uint32Array||i instanceof Float32Array||i instanceof Float64Array)&&(i=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)),i instanceof Uint8Array){const t=i.byteLength,e=[];for(let n=0;n<t;n+=1)e[n>>>2]|=i[n]<<24-n%4*8;this.words=e,this.sigBytes=t}else this.words=t,this.sigBytes=e}static random(t){const e=[],i=t=>{let e=t,i=987654321;const n=4294967295;return()=>{i=36969*(65535&i)+(i>>16)&n,e=18e3*(65535&e)+(e>>16)&n;let t=(i<<16)+e&n;return t/=4294967296,t+=.5,t*(Math.random()>.5?1:-1)}};for(let n,o=0;o<t;o+=4){const t=i(4294967296*(n||Math.random()));n=987654071*t(),e.push(4294967296*t()|0)}return new uo(e,t)}toString(t=po){return t.stringify(this)}concat(t){const e=this.words,i=t.words,n=this.sigBytes,o=t.sigBytes;if(this.clamp(),n%4)for(let t=0;t<o;t+=1){const o=i[t>>>2]>>>24-t%4*8&255;e[n+t>>>2]|=o<<24-(n+t)%4*8}else for(let t=0;t<o;t+=4)e[n+t>>>2]=i[t>>>2];return this.sigBytes+=o,this}clamp(){const{words:t,sigBytes:e}=this;t[e>>>2]&=4294967295<<32-e%4*8,t.length=Math.ceil(e/4)}clone(){const t=super.clone.call(this);return t.words=this.words.slice(0),t}}const po={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=2)i[n>>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new uo(i,e/2)}},fo={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=1){const i=e[t>>>2]>>>24-t%4*8&255;n.push(String.fromCharCode(i))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=1)i[n>>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new uo(i,e)}},vo={stringify(t){try{return decodeURIComponent(escape(fo.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:t=>fo.parse(unescape(encodeURIComponent(t)))};class mo extends ho{constructor(){super(),this._minBufferSize=0}reset(){this._data=new uo,this._nDataBytes=0}_append(t){let e=t;"string"==typeof e&&(e=vo.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes}_process(t){let e;const{_data:i,blockSize:n}=this,o=i.words,s=i.sigBytes;let r=s/(4*n);r=t?Math.ceil(r):Math.max((0|r)-this._minBufferSize,0);const a=r*n,l=Math.min(4*a,s);if(a){for(let t=0;t<a;t+=n)this._doProcessBlock(o,t);e=o.splice(0,a),i.sigBytes-=l}return new uo(e,l)}clone(){const t=super.clone.call(this);return t._data=this._data.clone(),t}}class wo extends mo{constructor(t){super(),this.blockSize=16,this.cfg=Object.assign(new ho,t),this.reset()}static _createHelper(t){return(e,i)=>new t(i).finalize(e)}static _createHmacHelper(t){return(e,i)=>new go(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 go extends ho{constructor(t,e){super();const i=new t;this._hasher=i;let n=e;"string"==typeof n&&(n=vo.parse(n));const o=i.blockSize,s=4*o;n.sigBytes>s&&(n=i.finalize(e)),n.clamp();const r=n.clone();this._oKey=r;const a=n.clone();this._iKey=a;const l=r.words,c=a.words;for(let t=0;t<o;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 yo=uo;class Co extends ho{constructor(t,e){super(),this.high=t,this.low=e}}class bo extends ho{constructor(t=[],e=8*t.length){super(),this.words=t,this.sigBytes=e}toX32(){const t=this.words,e=t.length,i=[];for(let n=0;n<e;n+=1){const e=t[n];i.push(e.high),i.push(e.low)}return yo.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 xo={stringify(t){const{words:e,sigBytes:i}=t,n=this._map;t.clamp();const o=[];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)o.push(n.charAt(s>>>6*(3-e)&63))}const s=n.charAt(64);if(s)for(;o.length%4;)o.push(s);return o.join("")},parse(t){let e=t.length;const i=this._map;let n=this._reverseMap;if(!n){this._reverseMap=[],n=this._reverseMap;for(let t=0;t<i.length;t+=1)n[i.charCodeAt(t)]=t}const o=i.charAt(64);if(o){const i=t.indexOf(o);-1!==i&&(e=i)}return((t,e,i)=>{const n=[];let o=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;n[o>>>2]|=e<<24-o%4*8,o+=1}return uo.create(n,o)})(t,e,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},So=[];for(let t=0;t<64;t+=1)So[t]=4294967296*Math.abs(Math.sin(t+1))|0;const Eo=(t,e,i,n,o,s,r)=>{const a=t+(e&i|~e&n)+o+r;return(a<<s|a>>>32-s)+e},ko=(t,e,i,n,o,s,r)=>{const a=t+(e&n|i&~n)+o+r;return(a<<s|a>>>32-s)+e},Io=(t,e,i,n,o,s,r)=>{const a=t+(e^i^n)+o+r;return(a<<s|a>>>32-s)+e},_o=(t,e,i,n,o,s,r)=>{const a=t+(i^(e|~n))+o+r;return(a<<s|a>>>32-s)+e};class Ao extends wo{_doReset(){this._hash=new uo([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const i=t;for(let n=0;n<16;n+=1){const o=e+n,s=t[o];i[o]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}const n=this._hash.words,o=i[e+0],s=i[e+1],r=i[e+2],a=i[e+3],l=i[e+4],c=i[e+5],h=i[e+6],d=i[e+7],u=i[e+8],p=i[e+9],f=i[e+10],v=i[e+11],m=i[e+12],w=i[e+13],g=i[e+14],y=i[e+15];let C=n[0],b=n[1],x=n[2],S=n[3];C=Eo(C,b,x,S,o,7,So[0]),S=Eo(S,C,b,x,s,12,So[1]),x=Eo(x,S,C,b,r,17,So[2]),b=Eo(b,x,S,C,a,22,So[3]),C=Eo(C,b,x,S,l,7,So[4]),S=Eo(S,C,b,x,c,12,So[5]),x=Eo(x,S,C,b,h,17,So[6]),b=Eo(b,x,S,C,d,22,So[7]),C=Eo(C,b,x,S,u,7,So[8]),S=Eo(S,C,b,x,p,12,So[9]),x=Eo(x,S,C,b,f,17,So[10]),b=Eo(b,x,S,C,v,22,So[11]),C=Eo(C,b,x,S,m,7,So[12]),S=Eo(S,C,b,x,w,12,So[13]),x=Eo(x,S,C,b,g,17,So[14]),b=Eo(b,x,S,C,y,22,So[15]),C=ko(C,b,x,S,s,5,So[16]),S=ko(S,C,b,x,h,9,So[17]),x=ko(x,S,C,b,v,14,So[18]),b=ko(b,x,S,C,o,20,So[19]),C=ko(C,b,x,S,c,5,So[20]),S=ko(S,C,b,x,f,9,So[21]),x=ko(x,S,C,b,y,14,So[22]),b=ko(b,x,S,C,l,20,So[23]),C=ko(C,b,x,S,p,5,So[24]),S=ko(S,C,b,x,g,9,So[25]),x=ko(x,S,C,b,a,14,So[26]),b=ko(b,x,S,C,u,20,So[27]),C=ko(C,b,x,S,w,5,So[28]),S=ko(S,C,b,x,r,9,So[29]),x=ko(x,S,C,b,d,14,So[30]),b=ko(b,x,S,C,m,20,So[31]),C=Io(C,b,x,S,c,4,So[32]),S=Io(S,C,b,x,u,11,So[33]),x=Io(x,S,C,b,v,16,So[34]),b=Io(b,x,S,C,g,23,So[35]),C=Io(C,b,x,S,s,4,So[36]),S=Io(S,C,b,x,l,11,So[37]),x=Io(x,S,C,b,d,16,So[38]),b=Io(b,x,S,C,f,23,So[39]),C=Io(C,b,x,S,w,4,So[40]),S=Io(S,C,b,x,o,11,So[41]),x=Io(x,S,C,b,a,16,So[42]),b=Io(b,x,S,C,h,23,So[43]),C=Io(C,b,x,S,p,4,So[44]),S=Io(S,C,b,x,m,11,So[45]),x=Io(x,S,C,b,y,16,So[46]),b=Io(b,x,S,C,r,23,So[47]),C=_o(C,b,x,S,o,6,So[48]),S=_o(S,C,b,x,d,10,So[49]),x=_o(x,S,C,b,g,15,So[50]),b=_o(b,x,S,C,c,21,So[51]),C=_o(C,b,x,S,m,6,So[52]),S=_o(S,C,b,x,a,10,So[53]),x=_o(x,S,C,b,f,15,So[54]),b=_o(b,x,S,C,s,21,So[55]),C=_o(C,b,x,S,u,6,So[56]),S=_o(S,C,b,x,y,10,So[57]),x=_o(x,S,C,b,h,15,So[58]),b=_o(b,x,S,C,w,21,So[59]),C=_o(C,b,x,S,l,6,So[60]),S=_o(S,C,b,x,v,10,So[61]),x=_o(x,S,C,b,r,15,So[62]),b=_o(b,x,S,C,p,21,So[63]),n[0]=n[0]+C|0,n[1]=n[1]+b|0,n[2]=n[2]+x|0,n[3]=n[3]+S|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32;const o=Math.floor(i/4294967296),s=i;e[15+(n+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),e[14+(n+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 Lo=wo._createHelper(Ao),$o=wo._createHmacHelper(Ao);class To extends ho{constructor(t){super(),this.cfg=Object.assign(new ho,{keySize:4,hasher:Ao,iterations:1},t)}compute(t,e){let i;const{cfg:n}=this,o=n.hasher.create(),s=uo.create(),r=s.words,{keySize:a,iterations:l}=n;for(;r.length<a;){i&&o.update(i),i=o.update(t).finalize(e),o.reset();for(let t=1;t<l;t+=1)i=o.finalize(i),o.reset();s.concat(i)}return s.sigBytes=4*a,s}}class Mo extends mo{constructor(t,e,i){super(),this.cfg=Object.assign(new ho,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?Ho:Uo;return{encrypt:(i,n,o)=>e(n).encrypt(t,i,n,o),decrypt:(i,n,o)=>e(n).decrypt(t,i,n,o)}}reset(){super.reset.call(this),this._doReset()}process(t){return this._append(t),this._process()}finalize(t){t&&this._append(t);return this._doFinalize()}}Mo._ENC_XFORM_MODE=1,Mo._DEC_XFORM_MODE=2,Mo.keySize=4,Mo.ivSize=4;class Oo extends Mo{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class Fo extends ho{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 No(t,e,i){const n=t;let o;const s=this._iv;s?(o=s,this._iv=void 0):o=this._prevBlock;for(let t=0;t<i;t+=1)n[e+t]^=o[t]}class Do extends Fo{}Do.Encryptor=class extends Do{processBlock(t,e){const i=this._cipher,{blockSize:n}=i;No.call(this,t,e,n),i.encryptBlock(t,e),this._prevBlock=t.slice(e,e+n)}},Do.Decryptor=class extends Do{processBlock(t,e){const i=this._cipher,{blockSize:n}=i,o=t.slice(e,e+n);i.decryptBlock(t,e),No.call(this,t,e,n),this._prevBlock=o}};const Ro={pad(t,e){const i=4*e,n=i-t.sigBytes%i,o=n<<24|n<<16|n<<8|n,s=[];for(let t=0;t<n;t+=4)s.push(o);const r=uo.create(s,n);t.concat(r)},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}};class Po extends Mo{constructor(t,e,i){super(t,e,Object.assign({mode:Do,padding:Ro},i)),this.blockSize=4}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:i,mode:n}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=n.createEncryptor:(t=n.createDecryptor,this._minBufferSize=1),this._mode=t.call(n,this,i&&i.words),this._mode.u=t}_doProcessBlock(t,e){this._mode.processBlock(t,e)}_doFinalize(){let t;const{padding:e}=this.cfg;return this._xformMode===this.constructor._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t}}class jo extends ho{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const Vo={stringify(t){let e;const{ciphertext:i,salt:n}=t;return e=n?uo.create([1398893684,1701076831]).concat(n).concat(i):i,e.toString(xo)},parse(t){let e;const i=xo.parse(t),n=i.words;return 1398893684===n[0]&&1701076831===n[1]&&(e=uo.create(n.slice(2,4)),n.splice(0,4),i.sigBytes-=16),jo.create({ciphertext:i,salt:e})}};class Uo extends ho{static encrypt(t,e,i,n){const o=Object.assign(new ho,this.cfg,n),s=t.createEncryptor(i,o),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:o.format})}static decrypt(t,e,i,n){let o=e;const s=Object.assign(new ho,this.cfg,n);o=this._parse(o,s.format);return t.createDecryptor(i,s).finalize(o.ciphertext)}static _parse(t,e){return"string"==typeof t?e.parse(t,this):t}}Uo.cfg=Object.assign(new ho,{format:Vo});const Bo={execute(t,e,i,n){let o=n;o||(o=uo.random(8));const s=To.create({keySize:e+i}).compute(t,o),r=uo.create(s.words.slice(e),4*i);return s.sigBytes=4*e,jo.create({key:s,iv:r,salt:o})}};class Ho extends Uo{static encrypt(t,e,i,n){const o=Object.assign(new ho,this.cfg,n),s=o.kdf.execute(i,t.keySize,t.ivSize);o.iv=s.iv;const r=Uo.encrypt.call(this,t,e,s.key,o);return r.mixIn(s),r}static decrypt(t,e,i,n){let o=e;const s=Object.assign(new ho,this.cfg,n);o=this._parse(o,s.format);const r=s.kdf.execute(i,t.keySize,t.ivSize,o.salt);s.iv=r.iv;return Uo.decrypt.call(this,t,o,r.key,s)}}Ho.cfg=Object.assign(Uo.cfg,{kdf:Bo});const zo=t=>t<<8&4278255360|t>>>8&16711935,Zo={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=2){const i=e[t>>>2]>>>16-t%4*8&65535;n.push(String.fromCharCode(i))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=1)i[n>>>1]|=t.charCodeAt(n)<<16-n%2*16;return uo.create(i,2*e)}},Ko=Zo,qo={stringify(t){const{words:e,sigBytes:i}=t,n=[];for(let t=0;t<i;t+=2){const i=zo(e[t>>>2]>>>16-t%4*8&65535);n.push(String.fromCharCode(i))}return n.join("")},parse(t){const e=t.length,i=[];for(let n=0;n<e;n+=1)i[n>>>1]|=zo(t.charCodeAt(n)<<16-n%2*16);return uo.create(i,2*e)}},Jo=[];class Go extends wo{_doReset(){this._hash=new uo([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=this._hash.words;let n=i[0],o=i[1],s=i[2],r=i[3],a=i[4];for(let i=0;i<80;i+=1){if(i<16)Jo[i]=0|t[e+i];else{const t=Jo[i-3]^Jo[i-8]^Jo[i-14]^Jo[i-16];Jo[i]=t<<1|t>>>31}let l=(n<<5|n>>>27)+a+Jo[i];l+=i<20?1518500249+(o&s|~o&r):i<40?1859775393+(o^s^r):i<60?(o&s|o&r|s&r)-1894007588:(o^s^r)-899497514,a=r,r=s,s=o<<30|o>>>2,o=n,n=l}i[0]=i[0]+n|0,i[1]=i[1]+o|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,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(n+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Wo=wo._createHelper(Go),Yo=wo._createHmacHelper(Go),Xo=[],Qo=[],ts=t=>{const e=Math.sqrt(t);for(let i=2;i<=e;i+=1)if(!(t%i))return!1;return!0},es=t=>4294967296*(t-(0|t))|0;let is=2,ns=0;for(;ns<64;)ts(is)&&(ns<8&&(Xo[ns]=es(is**.5)),Qo[ns]=es(is**(1/3)),ns+=1),is+=1;const os=[];class ss extends wo{_doReset(){this._hash=new uo(Xo.slice(0))}_doProcessBlock(t,e){const i=this._hash.words;let n=i[0],o=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],h=i[7];for(let i=0;i<64;i+=1){if(i<16)os[i]=0|t[e+i];else{const t=os[i-15],e=(t<<25|t>>>7)^(t<<14|t>>>18)^t>>>3,n=os[i-2],o=(n<<15|n>>>17)^(n<<13|n>>>19)^n>>>10;os[i]=e+os[i-7]+o+os[i-16]}const d=n&o^n&s^o&s,u=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),p=h+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&l^~a&c)+Qo[i]+os[i];h=c,c=l,l=a,a=r+p|0,r=s,s=o,o=n,n=p+(u+d)|0}i[0]=i[0]+n|0,i[1]=i[1]+o|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]+h|0}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(n+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const rs=wo._createHelper(ss),as=wo._createHmacHelper(ss);class ls extends ss{_doReset(){this._hash=new uo([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const cs=ss._createHelper(ls),hs=ss._createHmacHelper(ls),ds=[new Co(1116352408,3609767458),new Co(1899447441,602891725),new Co(3049323471,3964484399),new Co(3921009573,2173295548),new Co(961987163,4081628472),new Co(1508970993,3053834265),new Co(2453635748,2937671579),new Co(2870763221,3664609560),new Co(3624381080,2734883394),new Co(310598401,1164996542),new Co(607225278,1323610764),new Co(1426881987,3590304994),new Co(1925078388,4068182383),new Co(2162078206,991336113),new Co(2614888103,633803317),new Co(3248222580,3479774868),new Co(3835390401,2666613458),new Co(4022224774,944711139),new Co(264347078,2341262773),new Co(604807628,2007800933),new Co(770255983,1495990901),new Co(1249150122,1856431235),new Co(1555081692,3175218132),new Co(1996064986,2198950837),new Co(2554220882,3999719339),new Co(2821834349,766784016),new Co(2952996808,2566594879),new Co(3210313671,3203337956),new Co(3336571891,1034457026),new Co(3584528711,2466948901),new Co(113926993,3758326383),new Co(338241895,168717936),new Co(666307205,1188179964),new Co(773529912,1546045734),new Co(1294757372,1522805485),new Co(1396182291,2643833823),new Co(1695183700,2343527390),new Co(1986661051,1014477480),new Co(2177026350,1206759142),new Co(2456956037,344077627),new Co(2730485921,1290863460),new Co(2820302411,3158454273),new Co(3259730800,3505952657),new Co(3345764771,106217008),new Co(3516065817,3606008344),new Co(3600352804,1432725776),new Co(4094571909,1467031594),new Co(275423344,851169720),new Co(430227734,3100823752),new Co(506948616,1363258195),new Co(659060556,3750685593),new Co(883997877,3785050280),new Co(958139571,3318307427),new Co(1322822218,3812723403),new Co(1537002063,2003034995),new Co(1747873779,3602036899),new Co(1955562222,1575990012),new Co(2024104815,1125592928),new Co(2227730452,2716904306),new Co(2361852424,442776044),new Co(2428436474,593698344),new Co(2756734187,3733110249),new Co(3204031479,2999351573),new Co(3329325298,3815920427),new Co(3391569614,3928383900),new Co(3515267271,566280711),new Co(3940187606,3454069534),new Co(4118630271,4000239992),new Co(116418474,1914138554),new Co(174292421,2731055270),new Co(289380356,3203993006),new Co(460393269,320620315),new Co(685471733,587496836),new Co(852142971,1086792851),new Co(1017036298,365543100),new Co(1126000580,2618297676),new Co(1288033470,3409855158),new Co(1501505948,4234509866),new Co(1607167915,987167468),new Co(1816402316,1246189591)],us=[];for(let t=0;t<80;t+=1)us[t]=new Co;class ps extends wo{constructor(){super(),this.blockSize=32}_doReset(){this._hash=new bo([new Co(1779033703,4089235720),new Co(3144134277,2227873595),new Co(1013904242,4271175723),new Co(2773480762,1595750129),new Co(1359893119,2917565137),new Co(2600822924,725511199),new Co(528734635,4215389547),new Co(1541459225,327033209)])}_doProcessBlock(t,e){const i=this._hash.words,n=i[0],o=i[1],s=i[2],r=i[3],a=i[4],l=i[5],c=i[6],h=i[7],d=n.high;let u=n.low;const p=o.high;let f=o.low;const v=s.high;let m=s.low;const w=r.high;let g=r.low;const y=a.high;let C=a.low;const b=l.high;let x=l.low;const S=c.high;let E=c.low;const k=h.high;let I=h.low,_=d,A=u,L=p,$=f,T=v,M=m,O=w,F=g,N=y,D=C,R=b,P=x,j=S,V=E,U=k,B=I;for(let i=0;i<80;i+=1){let n,o;const s=us[i];if(i<16)s.high=0|t[e+2*i],o=s.high,s.low=0|t[e+2*i+1],n=s.low;else{const t=us[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=us[i-2],h=c.high,d=c.low,u=(h>>>19|d<<13)^(h<<3|d>>>29)^h>>>6,p=(d>>>19|h<<13)^(d<<3|h>>>29)^(d>>>6|h<<26),f=us[i-7],v=f.high,m=f.low,w=us[i-16],g=w.high,y=w.low;n=l+m,o=a+v+(n>>>0<l>>>0?1:0),n+=p,o=o+u+(n>>>0<p>>>0?1:0),n+=y,o=o+g+(n>>>0<y>>>0?1:0),s.high=o,s.low=n}const r=N&R^~N&j,a=D&P^~D&V,l=_&L^_&T^L&T,c=A&$^A&M^$&M,h=(_>>>28|A<<4)^(_<<30|A>>>2)^(_<<25|A>>>7),d=(A>>>28|_<<4)^(A<<30|_>>>2)^(A<<25|_>>>7),u=(N>>>14|D<<18)^(N>>>18|D<<14)^(N<<23|D>>>9),p=(D>>>14|N<<18)^(D>>>18|N<<14)^(D<<23|N>>>9),f=ds[i],v=f.high,m=f.low;let w=B+p,g=U+u+(w>>>0<B>>>0?1:0);w+=a,g=g+r+(w>>>0<a>>>0?1:0),w+=m,g=g+v+(w>>>0<m>>>0?1:0),w+=n,g=g+o+(w>>>0<n>>>0?1:0);const y=d+c;U=j,B=V,j=R,V=P,R=N,P=D,D=F+w|0,N=O+g+(D>>>0<F>>>0?1:0)|0,O=T,F=M,T=L,M=$,L=_,$=A,A=w+y|0,_=g+(h+l+(y>>>0<d>>>0?1:0))+(A>>>0<w>>>0?1:0)|0}n.low=u+A,u=n.low,n.high=d+_+(u>>>0<A>>>0?1:0),o.low=f+$,f=o.low,o.high=p+L+(f>>>0<$>>>0?1:0),s.low=m+M,m=s.low,s.high=v+T+(m>>>0<M>>>0?1:0),r.low=g+F,g=r.low,r.high=w+O+(g>>>0<F>>>0?1:0),a.low=C+D,C=a.low,a.high=y+N+(C>>>0<D>>>0?1:0),l.low=x+P,x=l.low,l.high=b+R+(x>>>0<P>>>0?1:0),c.low=E+V,E=c.low,c.high=S+j+(E>>>0<V>>>0?1:0),h.low=I+B,I=h.low,h.high=k+U+(I>>>0<B>>>0?1:0)}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(i/4294967296),e[31+(n+128>>>10<<5)]=i,t.sigBytes=4*e.length,this._process();return this._hash.toX32()}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const fs=wo._createHelper(ps),vs=wo._createHmacHelper(ps);class ms extends ps{_doReset(){this._hash=new bo([new Co(3418070365,3238371032),new Co(1654270250,914150663),new Co(2438529370,812702999),new Co(355462360,4144912697),new Co(1731405415,4290775857),new Co(2394180231,1750603025),new Co(3675008525,1694076839),new Co(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const ws=ps._createHelper(ms),gs=ps._createHmacHelper(ms),ys=[],Cs=[],bs=[];let xs=1,Ss=0;for(let t=0;t<24;t+=1){ys[xs+5*Ss]=(t+1)*(t+2)/2%64;const e=(2*xs+3*Ss)%5;xs=Ss%5,Ss=e}for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1)Cs[t+5*e]=e+(2*t+3*e)%5*5;let Es=1;for(let t=0;t<24;t+=1){let e=0,i=0;for(let t=0;t<7;t+=1){if(1&Es){const n=(1<<t)-1;n<32?i^=1<<n:e^=1<<n-32}128&Es?Es=Es<<1^113:Es<<=1}bs[t]=Co.create(e,i)}const ks=[];for(let t=0;t<25;t+=1)ks[t]=Co.create();class Is extends wo{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 Co;this.blockSize=(1600-2*this.cfg.outputLength)/32}_doProcessBlock(t,e){const i=this._state,n=this.blockSize/2;for(let o=0;o<n;o+=1){let n=t[e+2*o],s=t[e+2*o+1];n=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8);const r=i[o];r.high^=s,r.low^=n}for(let t=0;t<24;t+=1){for(let t=0;t<5;t+=1){let e=0,n=0;for(let o=0;o<5;o+=1){const s=i[t+5*o];e^=s.high,n^=s.low}const o=ks[t];o.high=e,o.low=n}for(let t=0;t<5;t+=1){const e=ks[(t+4)%5],n=ks[(t+1)%5],o=n.high,s=n.low,r=e.high^(o<<1|s>>>31),a=e.low^(s<<1|o>>>31);for(let e=0;e<5;e+=1){const n=i[t+5*e];n.high^=r,n.low^=a}}for(let t=1;t<25;t+=1){let e,n;const o=i[t],s=o.high,r=o.low,a=ys[t];a<32?(e=s<<a|r>>>32-a,n=r<<a|s>>>32-a):(e=r<<a-32|s>>>64-a,n=s<<a-32|r>>>64-a);const l=ks[Cs[t]];l.high=e,l.low=n}const e=ks[0],n=i[0];e.high=n.high,e.low=n.low;for(let t=0;t<5;t+=1)for(let e=0;e<5;e+=1){const n=t+5*e,o=i[n],s=ks[n],r=ks[(t+1)%5+5*e],a=ks[(t+2)%5+5*e];o.high=s.high^~r.high&a.high,o.low=s.low^~r.low&a.low}const o=i[0],s=bs[t];o.high^=s.high,o.low^=s.low}}_doFinalize(){const t=this._data,e=t.words,i=8*t.sigBytes,n=32*this.blockSize;e[i>>>5]|=1<<24-i%32,e[(Math.ceil((i+1)/n)*n>>>5)-1]|=128,t.sigBytes=4*e.length,this._process();const o=this._state,s=this.cfg.outputLength/8,r=s/8,a=[];for(let t=0;t<r;t+=1){const e=o[t];let i=e.high,n=e.low;i=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),n=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),a.push(n),a.push(i)}return new uo(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 _s=wo._createHelper(Is),As=wo._createHmacHelper(Is),Ls=uo.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]),$s=uo.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]),Ts=uo.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]),Ms=uo.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]),Os=uo.create([0,1518500249,1859775393,2400959708,2840853838]),Fs=uo.create([1352829926,1548603684,1836072691,2053994217,0]),Ns=(t,e,i)=>t^e^i,Ds=(t,e,i)=>t&e|~t&i,Rs=(t,e,i)=>(t|~e)^i,Ps=(t,e,i)=>t&i|e&~i,js=(t,e,i)=>t^(e|~i),Vs=(t,e)=>t<<e|t>>>32-e;class Us extends wo{_doReset(){this._hash=uo.create([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const i=t;for(let t=0;t<16;t+=1){const n=e+t,o=i[n];i[n]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8)}const n=this._hash.words,o=Os.words,s=Fs.words,r=Ls.words,a=$s.words,l=Ts.words,c=Ms.words;let h,d=n[0],u=n[1],p=n[2],f=n[3],v=n[4],m=n[0],w=n[1],g=n[2],y=n[3],C=n[4];for(let t=0;t<80;t+=1)h=d+i[e+r[t]]|0,h+=t<16?Ns(u,p,f)+o[0]:t<32?Ds(u,p,f)+o[1]:t<48?Rs(u,p,f)+o[2]:t<64?Ps(u,p,f)+o[3]:js(u,p,f)+o[4],h|=0,h=Vs(h,l[t]),h=h+v|0,d=v,v=f,f=Vs(p,10),p=u,u=h,h=m+i[e+a[t]]|0,h+=t<16?js(w,g,y)+s[0]:t<32?Ps(w,g,y)+s[1]:t<48?Rs(w,g,y)+s[2]:t<64?Ds(w,g,y)+s[3]:Ns(w,g,y)+s[4],h|=0,h=Vs(h,c[t]),h=h+C|0,m=C,C=y,y=Vs(g,10),g=w,w=h;h=n[1]+p+y|0,n[1]=n[2]+f+C|0,n[2]=n[3]+v+m|0,n[3]=n[4]+d+w|0,n[4]=n[0]+u+g|0,n[0]=h}_doFinalize(){const t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t.sigBytes=4*(e.length+1),this._process();const o=this._hash,s=o.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 o}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Bs=wo._createHelper(Us),Hs=wo._createHmacHelper(Us);class zs extends ho{constructor(t){super(),this.cfg=Object.assign(new ho,{keySize:4,hasher:Go,iterations:1},t)}compute(t,e){const{cfg:i}=this,n=go.create(i.hasher,t),o=uo.create(),s=uo.create([1]),r=o.words,a=s.words,{keySize:l,iterations:c}=i;for(;r.length<l;){const t=n.update(e).finalize(s);n.reset();const i=t.words,r=i.length;let l=t;for(let t=1;t<c;t+=1){l=n.finalize(l),n.reset();const t=l.words;for(let e=0;e<r;e+=1)i[e]^=t[e]}o.concat(t),a[0]+=1}return o.sigBytes=4*l,o}}const Zs=[],Ks=[],qs=[],Js=[],Gs=[],Ws=[],Ys=[],Xs=[],Qs=[],tr=[],er=[];for(let t=0;t<256;t+=1)er[t]=t<128?t<<1:t<<1^283;let ir=0,nr=0;for(let t=0;t<256;t+=1){let t=nr^nr<<1^nr<<2^nr<<3^nr<<4;t=t>>>8^255&t^99,Zs[ir]=t,Ks[t]=ir;const e=er[ir],i=er[e],n=er[i];let o=257*er[t]^16843008*t;qs[ir]=o<<24|o>>>8,Js[ir]=o<<16|o>>>16,Gs[ir]=o<<8|o>>>24,Ws[ir]=o,o=16843009*n^65537*i^257*e^16843008*ir,Ys[t]=o<<24|o>>>8,Xs[t]=o<<16|o>>>16,Qs[t]=o<<8|o>>>24,tr[t]=o,ir?(ir=e^er[er[er[n^e]]],nr^=er[er[nr]]):(nr=1,ir=nr)}const or=[0,1,2,4,8,16,32,64,128,27,54];class sr extends Po{_doReset(){let t;if(this._nRounds&&this._keyPriorReset===this._key)return;this._keyPriorReset=this._key;const e=this._keyPriorReset,i=e.words,n=e.sigBytes/4;this._nRounds=n+6;const o=4*(this._nRounds+1);this._keySchedule=[];const s=this._keySchedule;for(let e=0;e<o;e+=1)e<n?s[e]=i[e]:(t=s[e-1],e%n?n>6&&e%n==4&&(t=Zs[t>>>24]<<24|Zs[t>>>16&255]<<16|Zs[t>>>8&255]<<8|Zs[255&t]):(t=t<<8|t>>>24,t=Zs[t>>>24]<<24|Zs[t>>>16&255]<<16|Zs[t>>>8&255]<<8|Zs[255&t],t^=or[e/n|0]<<24),s[e]=s[e-n]^t);this._invKeySchedule=[];const r=this._invKeySchedule;for(let e=0;e<o;e+=1){const i=o-e;t=e%4?s[i]:s[i-4],r[e]=e<4||i<=4?t:Ys[Zs[t>>>24]]^Xs[Zs[t>>>16&255]]^Qs[Zs[t>>>8&255]]^tr[Zs[255&t]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,qs,Js,Gs,Ws,Zs)}decryptBlock(t,e){const i=t;let n=i[e+1];i[e+1]=i[e+3],i[e+3]=n,this._doCryptBlock(i,e,this._invKeySchedule,Ys,Xs,Qs,tr,Ks),n=i[e+1],i[e+1]=i[e+3],i[e+3]=n}_doCryptBlock(t,e,i,n,o,s,r,a){const l=t,c=this._nRounds;let h=l[e]^i[0],d=l[e+1]^i[1],u=l[e+2]^i[2],p=l[e+3]^i[3],f=4;for(let t=1;t<c;t+=1){const t=n[h>>>24]^o[d>>>16&255]^s[u>>>8&255]^r[255&p]^i[f];f+=1;const e=n[d>>>24]^o[u>>>16&255]^s[p>>>8&255]^r[255&h]^i[f];f+=1;const a=n[u>>>24]^o[p>>>16&255]^s[h>>>8&255]^r[255&d]^i[f];f+=1;const l=n[p>>>24]^o[h>>>16&255]^s[d>>>8&255]^r[255&u]^i[f];f+=1,h=t,d=e,u=a,p=l}const v=(a[h>>>24]<<24|a[d>>>16&255]<<16|a[u>>>8&255]<<8|a[255&p])^i[f];f+=1;const m=(a[d>>>24]<<24|a[u>>>16&255]<<16|a[p>>>8&255]<<8|a[255&h])^i[f];f+=1;const w=(a[u>>>24]<<24|a[p>>>16&255]<<16|a[h>>>8&255]<<8|a[255&d])^i[f];f+=1;const g=(a[p>>>24]<<24|a[h>>>16&255]<<16|a[d>>>8&255]<<8|a[255&u])^i[f];f+=1,l[e]=v,l[e+1]=m,l[e+2]=w,l[e+3]=g}}sr.keySize=8;const rr=Po._createHelper(sr),ar=[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],lr=[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],cr=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],hr=[{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}],dr=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function ur(t,e){const i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<<t}function pr(t,e){const i=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<<t}class fr extends Po{_doReset(){const t=this._key.words,e=[];for(let i=0;i<56;i+=1){const n=ar[i]-1;e[i]=t[n>>>5]>>>31-n%32&1}this._subKeys=[];const i=this._subKeys;for(let t=0;t<16;t+=1){i[t]=[];const n=i[t],o=cr[t];for(let t=0;t<24;t+=1)n[t/6|0]|=e[(lr[t]-1+o)%28]<<31-t%6,n[4+(t/6|0)]|=e[28+(lr[t+24]-1+o)%28]<<31-t%6;n[0]=n[0]<<1|n[0]>>>31;for(let t=1;t<7;t+=1)n[t]>>>=4*(t-1)+3;n[7]=n[7]<<5|n[7]>>>27}this._invSubKeys=[];const n=this._invSubKeys;for(let t=0;t<16;t+=1)n[t]=i[15-t]}encryptBlock(t,e){this._doCryptBlock(t,e,this._subKeys)}decryptBlock(t,e){this._doCryptBlock(t,e,this._invSubKeys)}_doCryptBlock(t,e,i){const n=t;this._lBlock=t[e],this._rBlock=t[e+1],ur.call(this,4,252645135),ur.call(this,16,65535),pr.call(this,2,858993459),pr.call(this,8,16711935),ur.call(this,1,1431655765);for(let t=0;t<16;t+=1){const e=i[t],n=this._lBlock,o=this._rBlock;let s=0;for(let t=0;t<8;t+=1)s|=hr[t][((o^e[t])&dr[t])>>>0];this._lBlock=o,this._rBlock=n^s}const o=this._lBlock;this._lBlock=this._rBlock,this._rBlock=o,ur.call(this,1,1431655765),pr.call(this,8,16711935),pr.call(this,2,858993459),ur.call(this,16,65535),ur.call(this,4,252645135),n[e]=this._lBlock,n[e+1]=this._rBlock}}fr.keySize=2,fr.ivSize=2,fr.blockSize=2;const vr=Po._createHelper(fr);class mr extends Po{_doReset(){const t=this._key.words;if(2!==t.length&&4!==t.length&&t.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");const e=t.slice(0,2),i=t.length<4?t.slice(0,2):t.slice(2,4),n=t.length<6?t.slice(0,2):t.slice(4,6);this._des1=fr.createEncryptor(uo.create(e)),this._des2=fr.createEncryptor(uo.create(i)),this._des3=fr.createEncryptor(uo.create(n))}encryptBlock(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)}decryptBlock(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)}}mr.keySize=6,mr.ivSize=2,mr.blockSize=2;const wr=Po._createHelper(mr),gr=[],yr=[],Cr=[];function br(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)yr[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<yr[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<yr[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<yr[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<yr[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<yr[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<yr[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<yr[6]>>>0?1:0)|0,this._b=e[7]>>>0<yr[7]>>>0?1:0;for(let i=0;i<8;i+=1){const n=t[i]+e[i],o=65535&n,s=n>>>16,r=((o*o>>>17)+o*s>>>15)+s*s,a=((4294901760&n)*n|0)+((65535&n)*n|0);Cr[i]=r^a}t[0]=Cr[0]+(Cr[7]<<16|Cr[7]>>>16)+(Cr[6]<<16|Cr[6]>>>16)|0,t[1]=Cr[1]+(Cr[0]<<8|Cr[0]>>>24)+Cr[7]|0,t[2]=Cr[2]+(Cr[1]<<16|Cr[1]>>>16)+(Cr[0]<<16|Cr[0]>>>16)|0,t[3]=Cr[3]+(Cr[2]<<8|Cr[2]>>>24)+Cr[1]|0,t[4]=Cr[4]+(Cr[3]<<16|Cr[3]>>>16)+(Cr[2]<<16|Cr[2]>>>16)|0,t[5]=Cr[5]+(Cr[4]<<8|Cr[4]>>>24)+Cr[3]|0,t[6]=Cr[6]+(Cr[5]<<16|Cr[5]>>>16)+(Cr[4]<<16|Cr[4]>>>16)|0,t[7]=Cr[7]+(Cr[6]<<8|Cr[6]>>>24)+Cr[5]|0}class xr extends Oo{constructor(...t){super(...t),this.blockSize=4,this.ivSize=2}_doReset(){const t=this._key.words,{iv:e}=this.cfg;for(let e=0;e<4;e+=1)t[e]=16711935&(t[e]<<8|t[e]>>>24)|4278255360&(t[e]<<24|t[e]>>>8);this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const i=this._X;this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];const n=this._C;this._b=0;for(let t=0;t<4;t+=1)br.call(this);for(let t=0;t<8;t+=1)n[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],o=t[1],s=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a=s>>>16|4294901760&r,l=r<<16|65535&s;n[0]^=s,n[1]^=a,n[2]^=r,n[3]^=l,n[4]^=s,n[5]^=a,n[6]^=r,n[7]^=l;for(let t=0;t<4;t+=1)br.call(this)}}_doProcessBlock(t,e){const i=t,n=this._X;br.call(this),gr[0]=n[0]^n[5]>>>16^n[3]<<16,gr[1]=n[2]^n[7]>>>16^n[5]<<16,gr[2]=n[4]^n[1]>>>16^n[7]<<16,gr[3]=n[6]^n[3]>>>16^n[1]<<16;for(let t=0;t<4;t+=1)gr[t]=16711935&(gr[t]<<8|gr[t]>>>24)|4278255360&(gr[t]<<24|gr[t]>>>8),i[e+t]^=gr[t]}}const Sr=Oo._createHelper(xr),Er=[],kr=[],Ir=[];function _r(){const t=this._X,e=this._C;for(let t=0;t<8;t+=1)kr[t]=e[t];e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<kr[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<kr[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<kr[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<kr[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<kr[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<kr[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<kr[6]>>>0?1:0)|0,this._b=e[7]>>>0<kr[7]>>>0?1:0;for(let i=0;i<8;i+=1){const n=t[i]+e[i],o=65535&n,s=n>>>16,r=((o*o>>>17)+o*s>>>15)+s*s,a=((4294901760&n)*n|0)+((65535&n)*n|0);Ir[i]=r^a}t[0]=Ir[0]+(Ir[7]<<16|Ir[7]>>>16)+(Ir[6]<<16|Ir[6]>>>16)|0,t[1]=Ir[1]+(Ir[0]<<8|Ir[0]>>>24)+Ir[7]|0,t[2]=Ir[2]+(Ir[1]<<16|Ir[1]>>>16)+(Ir[0]<<16|Ir[0]>>>16)|0,t[3]=Ir[3]+(Ir[2]<<8|Ir[2]>>>24)+Ir[1]|0,t[4]=Ir[4]+(Ir[3]<<16|Ir[3]>>>16)+(Ir[2]<<16|Ir[2]>>>16)|0,t[5]=Ir[5]+(Ir[4]<<8|Ir[4]>>>24)+Ir[3]|0,t[6]=Ir[6]+(Ir[5]<<16|Ir[5]>>>16)+(Ir[4]<<16|Ir[4]>>>16)|0,t[7]=Ir[7]+(Ir[6]<<8|Ir[6]>>>24)+Ir[5]|0}class Ar extends Oo{constructor(...t){super(...t),this.blockSize=4,this.ivSize=2}_doReset(){const t=this._key.words,{iv:e}=this.cfg;this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const i=this._X;this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];const n=this._C;this._b=0;for(let t=0;t<4;t+=1)_r.call(this);for(let t=0;t<8;t+=1)n[t]^=i[t+4&7];if(e){const t=e.words,i=t[0],o=t[1],s=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a=s>>>16|4294901760&r,l=r<<16|65535&s;n[0]^=s,n[1]^=a,n[2]^=r,n[3]^=l,n[4]^=s,n[5]^=a,n[6]^=r,n[7]^=l;for(let t=0;t<4;t+=1)_r.call(this)}}_doProcessBlock(t,e){const i=t,n=this._X;_r.call(this),Er[0]=n[0]^n[5]>>>16^n[3]<<16,Er[1]=n[2]^n[7]>>>16^n[5]<<16,Er[2]=n[4]^n[1]>>>16^n[7]<<16,Er[3]=n[6]^n[3]>>>16^n[1]<<16;for(let t=0;t<4;t+=1)Er[t]=16711935&(Er[t]<<8|Er[t]>>>24)|4278255360&(Er[t]<<24|Er[t]>>>8),i[e+t]^=Er[t]}}const Lr=Oo._createHelper(Ar);function $r(){const t=this._S;let e=this._i,i=this._j,n=0;for(let o=0;o<4;o+=1){e=(e+1)%256,i=(i+t[e])%256;const s=t[e];t[e]=t[i],t[i]=s,n|=t[(t[e]+t[i])%256]<<24-8*o}return this._i=e,this._j=i,n}class Tr extends Oo{_doReset(){const t=this._key,e=t.words,i=t.sigBytes;this._S=[];const n=this._S;for(let t=0;t<256;t+=1)n[t]=t;for(let t=0,o=0;t<256;t+=1){const s=t%i,r=e[s>>>2]>>>24-s%4*8&255;o=(o+n[t]+r)%256;const a=n[t];n[t]=n[o],n[o]=a}this._j=0,this._i=this._j}_doProcessBlock(t,e){t[e]^=$r.call(this)}}Tr.keySize=8,Tr.ivSize=0;const Mr=Oo._createHelper(Tr);class Or extends Tr{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)$r.call(this)}}const Fr=Oo._createHelper(Or);function Nr(t,e,i,n){const o=t;let s;const r=this._iv;r?(s=r.slice(0),this._iv=void 0):s=this._prevBlock,n.encryptBlock(s,0);for(let t=0;t<i;t+=1)o[e+t]^=s[t]}class Dr extends Fo{}Dr.Encryptor=class extends Dr{processBlock(t,e){const i=this._cipher,{blockSize:n}=i;Nr.call(this,t,e,n,i),this._prevBlock=t.slice(e,e+n)}},Dr.Decryptor=class extends Dr{processBlock(t,e){const i=this._cipher,{blockSize:n}=i,o=t.slice(e,e+n);Nr.call(this,t,e,n,i),this._prevBlock=o}};class Rr extends Fo{}Rr.Encryptor=class extends Rr{processBlock(t,e){const i=t,n=this._cipher,{blockSize:o}=n,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);n.encryptBlock(a,0),r[o-1]=r[o-1]+1|0;for(let t=0;t<o;t+=1)i[e+t]^=a[t]}},Rr.Decryptor=Rr.Encryptor;const Pr=t=>{let e=t;if(255==(t>>24&255)){let i=t>>16&255,n=t>>8&255,o=255&t;255===i?(i=0,255===n?(n=0,255===o?o=0:o+=1):n+=1):i+=1,e=0,e+=i<<16,e+=n<<8,e+=o}else e+=1<<24;return e};
|
|
380
1493
|
/** @preserve
|
|
381
1494
|
* Counter block mode compatible with Dr Brian Gladman fileenc.c
|
|
382
1495
|
* derived from CryptoJS.mode.CTR
|
|
383
1496
|
* Jan Hruby jhruby.web@gmail.com
|
|
384
1497
|
*/
|
|
385
|
-
class
|
|
1498
|
+
class jr extends Fo{}jr.Encryptor=class extends jr{processBlock(t,e){const i=t,n=this._cipher,{blockSize:o}=n,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]=Pr(e[0]),0===e[0]&&(e[1]=Pr(e[1]))})(r);const a=r.slice(0);n.encryptBlock(a,0);for(let t=0;t<o;t+=1)i[e+t]^=a[t]}},jr.Decryptor=jr.Encryptor;class Vr extends Fo{}Vr.Encryptor=class extends Vr{processBlock(t,e){this._cipher.encryptBlock(t,e)}},Vr.Decryptor=class extends Vr{processBlock(t,e){this._cipher.decryptBlock(t,e)}};class Ur extends Fo{}Ur.Encryptor=class extends Ur{processBlock(t,e){const i=t,n=this._cipher,{blockSize:o}=n,s=this._iv;let r=this._keystream;s&&(this._keystream=s.slice(0),r=this._keystream,this._iv=void 0),n.encryptBlock(r,0);for(let t=0;t<o;t+=1)i[e+t]^=r[t]}},Ur.Decryptor=Ur.Encryptor;const Br={pad(t,e){const i=4*e,n=i-t.sigBytes%i;t.concat(uo.random(n-1)).concat(uo.create([n<<24],1))},unpad(t){const e=t,i=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=i}},Hr={pad(t,e){const i=t,n=4*e;i.clamp(),i.sigBytes+=n-(t.sigBytes%n||n)},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}}},zr={pad(t,e){t.concat(uo.create([2147483648],1)),Hr.pad(t,e)},unpad(t){const e=t;Hr.unpad(e),e.sigBytes-=1}},Zr={stringify:t=>t.ciphertext.toString(po),parse(t){const e=po.parse(t);return jo.create({ciphertext:e})}};var Kr={lib:{Base:ho,WordArray:uo,BufferedBlockAlgorithm:mo,Hasher:wo,Cipher:Mo,StreamCipher:Oo,BlockCipherMode:Fo,BlockCipher:Po,CipherParams:jo,SerializableCipher:Uo,PasswordBasedCipher:Ho},x64:{Word:Co,WordArray:bo},enc:{Hex:po,Latin1:fo,Utf8:vo,Utf16:Ko,Utf16BE:Zo,Utf16LE:qo,Base64:xo},algo:{HMAC:go,MD5:Ao,SHA1:Go,SHA224:ls,SHA256:ss,SHA384:ms,SHA512:ps,SHA3:Is,RIPEMD160:Us,PBKDF2:zs,EvpKDF:To,AES:sr,DES:fr,TripleDES:mr,Rabbit:xr,RabbitLegacy:Ar,RC4:Tr,RC4Drop:Or},mode:{CBC:Do,CFB:Dr,CTR:Rr,CTRGladman:jr,ECB:Vr,OFB:Ur},pad:{Pkcs7:Ro,AnsiX923:{pad(t,e){const i=t,n=i.sigBytes,o=4*e,s=o-n%o,r=n+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:Br,Iso97971:zr,NoPadding:{pad(){},unpad(){}},ZeroPadding:Hr},format:{OpenSSL:Vo,Hex:Zr},kdf:{OpenSSL:Bo},MD5:Lo,HmacMD5:$o,SHA1:Wo,HmacSHA1:Yo,SHA224:cs,HmacSHA224:hs,SHA256:rs,HmacSHA256:as,SHA384:ws,HmacSHA384:gs,SHA512:fs,HmacSHA512:vs,SHA3:_s,HmacSHA3:As,RIPEMD160:Bs,HmacRIPEMD160:Hs,PBKDF2:(t,e,i)=>zs.create(i).compute(t,e),EvpKDF:(t,e,i)=>To.create(i).compute(t,e),AES:rr,DES:vr,TripleDES:wr,Rabbit:Sr,RabbitLegacy:Lr,RC4:Mr,RC4Drop:Fr};const qr=(t,e,i=!1,n="localStorage")=>{try{const o=i?btoa(e):e;"localStorage"===n?localStorage.setItem(t,o):sessionStorage.setItem(t,o)}catch(t){console.warn("Error in setLocalStorage: ",t),la("Error in setLocalStorage: ",t)}},Jr=(t,e=!1,i="localStorage")=>{try{let n=null;return n="localStorage"===i?localStorage.getItem(t):sessionStorage.getItem(t),n&&e?atob(n):n}catch(t){return console.warn("Error in getLocalStorage: ",t),la("Error in getLocalStorage: ",t),null}},Gr=(t,e="localStorage")=>{try{"localStorage"===e?localStorage.removeItem(t):sessionStorage.removeItem(t)}catch(t){console.warn("Error in removeLocalStorageData: ",t),la("Error in removeLocalStorageData: ",t)}},Wr=(...t)=>{if(t)switch(t.length){case 1:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1))`;case 2:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))`;case 3:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
|
|
386
1499
|
calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1))`;case 4:return r`calc(${t[0]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[1]}rem * var(--snippyly-base-rem-unit, 1))
|
|
387
|
-
calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[3]}rem * var(--snippyly-base-rem-unit, 1))`}return r`0`},
|
|
1500
|
+
calc(${t[2]}rem * var(--snippyly-base-rem-unit, 1)) calc(${t[3]}rem * var(--snippyly-base-rem-unit, 1))`}return r`0`},Yr=(t,e,i)=>{try{const n=Kr.enc.Utf8.parse(e),o=Kr.enc.Utf8.parse(i);return Kr.AES.encrypt(Kr.enc.Utf8.parse(t),n,{keySize:32,iv:o,mode:Kr.mode.CBC,padding:Kr.pad.Pkcs7}).toString()}catch(e){return console.warn("Error in encrypt: ",e),la("Error in encrypt: ",e),t}},Xr=(t,e,i)=>{try{const n=Kr.enc.Utf8.parse(e),o=Kr.enc.Utf8.parse(i);return Kr.AES.decrypt(t,n,{keySize:32,iv:o,mode:Kr.mode.CBC,padding:Kr.pad.Pkcs7}).toString(Kr.enc.Utf8)}catch(t){return console.warn("Error in decrypt: ",t),la("Error in decrypt: ",t),null}},Qr=()=>{try{const t=Jr("_sfut",!0);if(t){const e=Xr(t,ft,vt);if(e)return JSON.parse(e);console.warn("Error in getUserFromToken: ","Invalid token."),Gr("_sfut")}else{const t=Jr("snippyly-user",!0);if(t)return ta(),JSON.parse(t)}return null}catch(t){return console.warn("Error in getUserFromToken: ",t),la("Error in getUserFromToken: ",t),null}},ta=()=>{try{const t=Jr("snippyly-user",!0);if(t){const e=Yr(t,ft,vt);qr("_sfut",e,!0)}Gr("snippyly-user")}catch(t){console.warn("Error in moveSnippylyUserToST: ",t),la("Error in moveSnippylyUserToST: ",t)}},ea=we({apiKey:"AIzaSyAzcW2n1JhY_zhkXmuFcwe550AkwmYeJ0w",projectId:"snipply-sdk-staging",messagingSenderId:"877538579326",appId:"1:877538579326:web:f793f73f2b7dc770c4992f"}),ia=function(t=ge(),e="us-central1"){const i=fe(Ft(t),"functions").getImmediate({identifier:e}),n=(t=>{const e=St(t);if(!e)return;const i=e.lastIndexOf(":");if(i<=0||i+1===e.length)throw new Error(`Invalid host ${e} with no separate hostname and port!`);const n=parseInt(e.substring(i+1),10);return"["===e[0]?[e.substring(1,i-1),n]:[e.substring(0,i),n]})("functions");return n&&function(t,e,i){!function(t,e,i){t.emulatorOrigin=`http://${e}:${i}`}(Ft(t),e,i)}(i,...n),i}(ea);let na,oa={};const sa=async()=>{try{const t=await new Promise(((t,e)=>{const i=lo(ea).onAuthStateChanged((n=>{i(),n?t(n):e("No user is currently signed in.")}),e)})),e=await(null==t?void 0:t.getIdTokenResult());return(null==e?void 0:e.claims)||{}}catch(t){return console.warn("Error in getCurrentUserClaims: ",t),{}}},ra=(t={})=>{oa={...oa,...t}},aa=t=>{na=t},la=(t,e,i={})=>{const n={error:t,message:(null==e?void 0:e.message)||e||t,...i};ca("error",n)},ca=(t,e={},i=!0)=>{try{if(null==na?void 0:na.userSnippylyId){e=i?{...oa,...e}:e,e={...e,source:"superflowToolbar"};const n={userId:null==na?void 0:na.userSnippylyId,event:t,properties:e,sf:!0};ha("track",n)}else console.warn("Untracked event: ",t,e)}catch(t){console.warn("Error in trackEvent: ",t)}},ha=(t,e)=>{try{Ve(ia,"sa")({type:t,data:e})}catch(t){console.warn("Error in setAnalytics: ",t)}},da=r`
|
|
388
1501
|
|
|
389
1502
|
.wrap {
|
|
390
1503
|
padding: 32px;
|
|
@@ -722,7 +1835,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
722
1835
|
align-self: end;
|
|
723
1836
|
cursor: pointer;
|
|
724
1837
|
}
|
|
725
|
-
`,
|
|
1838
|
+
`,ua=r`
|
|
726
1839
|
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
|
|
727
1840
|
|
|
728
1841
|
* {
|
|
@@ -734,8 +1847,8 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
734
1847
|
bottom: 0;
|
|
735
1848
|
right: 0;
|
|
736
1849
|
z-index: 2147483577;
|
|
737
|
-
margin: ${
|
|
738
|
-
margin-bottom: ${
|
|
1850
|
+
margin: ${Wr(1.5)};
|
|
1851
|
+
margin-bottom: ${Wr(3)}; // Added to prevent overlap between plugin UI and webflow badge
|
|
739
1852
|
max-width: 100vw !important;
|
|
740
1853
|
box-sizing: border-box;
|
|
741
1854
|
|
|
@@ -906,7 +2019,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
906
2019
|
}
|
|
907
2020
|
|
|
908
2021
|
.s-presence-avatar-image-small {
|
|
909
|
-
width: ${
|
|
2022
|
+
width: ${Wr(1.6)};
|
|
910
2023
|
height: auto;
|
|
911
2024
|
display: block;
|
|
912
2025
|
}
|
|
@@ -998,7 +2111,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
998
2111
|
|
|
999
2112
|
.s-user-avatar-initial {
|
|
1000
2113
|
color: black !important;
|
|
1001
|
-
font-size: ${
|
|
2114
|
+
font-size: ${Wr(.8)} !important;
|
|
1002
2115
|
position: relative !important;
|
|
1003
2116
|
}
|
|
1004
2117
|
|
|
@@ -1339,13 +2452,13 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1339
2452
|
display: flex;
|
|
1340
2453
|
}
|
|
1341
2454
|
}
|
|
1342
|
-
`;navigator.language.split("-")[0];const Dn=new Map;Dn.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"}),Dn.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"}),Dn.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:"आगामी"}),Dn.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"}),Dn.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:"Далее"}),Dn.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 jn=t=>{try{return t}catch(e){return t}};var Tn=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 _n extends X{constructor(){super(),this._loadPlugin=!1,this.comments=[],this.addCommentMode=!1,this.showTourCommentTooltip=!1,this.allFeatureDisabled=!1,this.allFeatureRestricted=!1,this._expanded=!0,this.loading=!1,this._isPlanExpired=null,this.showOnboardingModal=!0,this.showLiveDemoModal=!1,this.showFigmaDemoModal=!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.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),Fn("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await(t=>{const e={apiKey:t};return Ve(kn,"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),Fn("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(Cn("_sfut"),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),Fn("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),Fn("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),Fn("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),Fn("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),Fn("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{const t=new URL(document.location),e=t.searchParams;if((null==e?void 0:e.has("sprojectInstall"))&&!wn("sprojectInstall")?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has("sflivedemo"))if(wn("sflivedemo",!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showLiveDemoModal=!0;else this.showLiveDemoModal=!1;if(null==e?void 0:e.has("sffigmademo"))if(wn("sffigmademo",!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showFigmaDemoModal=!0;else this.showFigmaDemoModal=!1;if(e.has("st")||e.has("snippyly_google_token")){if(e.has("st")){const t=decodeURIComponent(e.get("st")),i=xn(t,vt,ft),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=bn(e,vt,ft);gn("_sfut",i,!0)}}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,gn("snippyly-user",JSON.stringify(i),!0)}e.delete("st"),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has("review")?(gn("review","true",!1),Cn("feedback"),"true"!==e.get("review")&&(e.delete("review"),e.append("review","true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has("feedback")||wn("review",!1)&&(e.append("review","true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),e.has("feedback")?(gn("feedback","true",!1),Cn("review"),"true"!==e.get("feedback")&&(e.delete("feedback"),e.append("feedback","true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has("review")||wn("feedback",!1)&&(e.append("feedback","true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),Fn("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&&gn("projectVersion",this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has("review")||t.has("feedback"))&&t.has("sversion")&&(gn("projectVersionKey","sversion",!1,"sessionStorage"),this.projectVersion=t.get("sversion"),this.projectVersion&&gn("projectVersion",this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),Fn("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||wn("projectVersionKey",!1,"sessionStorage"),e=this.projectVersion||wn("projectVersion",!1,"sessionStorage");if(t&&e){const i=new URL(document.location),o=i.searchParams;o.get(t)||(o.set(t,e),window.history.replaceState({},document.title,i.href))}}catch(t){console.warn("Error in setVersionInUrl: ",t),Fn("Error in setVersionInUrl: ",t)}},this.loadPluginUI=()=>{try{if(!this.apiKey)return;if(this.loadPlugin)return this.generateLocation(),void this.setViewMode(this.viewMode);const t=Sn();if(t&&!(null==t?void 0:t.isAnonymous)&&(this.loading=!0),this.loadPlugin=!0,!document.querySelector(at)){const t=document.createElement(at);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)})),t.addEventListener("onCommentUpdate",(t=>{console.log("Comment updated: ",t.detail)}))),window.document.body.appendChild(t)}if(!document.querySelector(rt)){const t=document.createElement(rt);window.document.body.appendChild(t)}if(!document.querySelector(ct)){const t=document.createElement(ct);window.document.body.appendChild(t)}if(!document.querySelector(dt)){const t=document.createElement(dt);window.document.body.appendChild(t)}if(!document.querySelector(ht)){const t=document.createElement(ht);window.document.body.appendChild(t)}if(!document.querySelector(ut)){const t=document.createElement(ut);window.document.body.appendChild(t)}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),Fn("Error in loadPluginUI: ",t)}},this.initializeSnippyly=async()=>{var t,i,o,n,s,r,a,l,c,d,h;try{if(await e(this.apiKey,{options:{staging:this.staging,version:this.staging?"1.0.106":"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(lt)){const t=document.createElement(lt);t.setAttribute(pt,"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),Fn("Error in loadPoppinsFont: ",t)}})()}if(Snippyly&&An({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),Fn("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+"")),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===(i=this.commentElement)||void 0===i?void 0:i.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 e=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;e&&"object"==typeof e&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatuses)&&this.commentElement.setCustomStatuses(e),(null===(l=this.commentElement)||void 0===l?void 0:l.enableMinimap)&&this.commentElement.enableMinimap()}this.selectionElement=Snippyly.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(c=this.rewriterElement)||void 0===c||c.enableRewriter()),this.presenceElement&&(null===(d=this.presenceElement)||void 0===d?void 0:d.enableFlockMode)&&(null===(h=this.presenceElement)||void 0===h||h.enableFlockMode(!0)),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),Fn("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),Fn("Error in checkToEnableUpgradeButton: ",t)}},this.generateLocation=()=>{try{const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete("review"),e.searchParams.delete("feedback"),e.searchParams.delete("sreviewId"),e.searchParams.delete("scommentId"),e.searchParams.delete("sprojectInstall"),e.searchParams.delete("sflivedemo");const i=t.get("sversion")||this.projectVersion;e.search="";let o=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),Fn("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),Fn("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))),this.previousLocation=JSON.parse(JSON.stringify(this.location))}}catch(t){console.warn("Error in setLocation: ",t),Fn("Error in setLocation: ",t)}},this.identifySnippyly=async()=>{var t,e;try{this.invalidApiKey=!1;let e,i={name:"Anonymous User",email:"anonymous@snippyly.com",userId:"anonymous",isAnonymous:!0};e=this.customLoginEnabled&&this.providedUser?this.providedUser:Sn(),(null==e?void 0:e.email)&&(i=e),i.isAnonymous?delete i.groupId:i.groupId=Snippyly.getDocumentId()+"",this.customLoginEnabledLocally||(null===(t=null==i?void 0:i.contacts)||void 0===t?void 0:t.length)&&(i.contacts=[]),(null==i?void 0:i.isAnonymous)||(this.loading=!0);const o=await Snippyly.identify(i);Mn(o),(null==i?void 0:i.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(i))),Snippyly.getUserRole$().subscribe((t=>{var e;this.loading=!1,this.snippylyUserRole||"Admin"!==t||this.setViewMode("All"),this.snippylyUserRole=t,this.snippylyUserRole||this.setViewMode(null),null===(e=this.commentElement)||void 0===e||e.enablePriority()})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getFeaturesAccessLevelIam$)&&Snippyly.getFeaturesAccessLevelIam$().subscribe((t=>{var e,i;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)})),(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),Fn("Error in isPlanExpired$: ",t)}))),An({clientUserId:null==i?void 0:i.userId}),this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{wn("sfTourCommentTooltip")||(this.showTourCommentTooltip=!0)}),2e3)}catch(t){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),console.warn("Error in identifySnippyly: ",t),Fn("Error in identifySnippyly: ",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)})),"All"!==this.viewMode&&(this.viewMode?this.comments=this.comments.filter((t=>{var e;return(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.view)===this.viewMode})):this.comments=this.comments.filter((t=>{var e;return!(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.view)})))})))}catch(t){console.warn("Error in getComments: ",t),Fn("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),Fn("Error in checkGlobalUserContact: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),Fn("Error in toggleSnippylyPluginToolbar: ",t)}},this.loginWithGoogle=()=>{try{if(this.loading||this.customLoginEnabledLocally)return;window.open(`https://snippyly-self-serve-platform.web.app//signin?redirect_url=${encodeURIComponent(window.location.href)}&source=sf`,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),Fn("Error in loginWithGoogle: ",t)}},this.getQRCode=async()=>{try{const t=window.location.href;if(t){const e=bn(t,vt,ft),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),Fn("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),Fn("Error in toggleQRCodeVisibility: ",t)}},this.removeSnippyly=async()=>{try{this.exitReviewModeCalled=!0,Cn("review"),Cn("feedback"),Cn("sreviewId"),Cn("projectVersionKey","sessionStorage"),Cn("projectVersion","sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete("sreviewId"),e.delete("review"),e.delete("feedback"),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete("sversion"),e.delete("sprojectInstall"),e.delete("sflivedemo"),this.projectVersion=void 0,this.projectVersionKey=void 0,delete window.snippylyInitialLoadUrl,window.history.replaceState({},document.title,t.href),window.location.reload()}catch(t){console.warn("Error in removeSnippyly: ",t),Fn("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{await Snippyly.signOutUser(),Cn("snippyly-user"),Cn("_sfut"),this.snippylyUser=void 0,window.open(`https://snippyly-self-serve-platform.web.app//signout?redirect_url=${encodeURIComponent(window.location.href)}&source=sf`,"_self")}catch(t){console.warn("Error in signOutUser: ",t),Fn("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),Fn("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),Fn("Error in copyLink: ",t)}},this.setViewMode=t=>{try{this.viewMode=t,t?this.location.view=t:delete this.location.view,this.setLocation(),this.getComments()}catch(t){console.warn("Error in setViewMode: ",t),Fn("Error in setViewMode: ",t)}},this.goToAdminPortal=()=>{try{let t="https://snippyly-self-serve-platform.web.app/";if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){const e=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();e&&(t=`https://snippyly-self-serve-platform.web.app//dashboard/project/comment/${this.apiKey}/${e}`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),Fn("Error in goToAdminPortal: ",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),Fn("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,gn("sprojectInstall","true");const t=new URL(document.location);t.searchParams.delete("sprojectInstall"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),Fn("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,gn("sflivedemo","true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),Fn("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),Fn("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://snippyly-self-serve-platform.web.app/dashboard/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),Fn("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,gn("sfTourCommentTooltip","true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),Fn("Error in onTourCommentTooltipClick: ",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),Fn("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?H`
|
|
2455
|
+
`;navigator.language.split("-")[0];const pa=new Map;pa.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"}),pa.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"}),pa.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:"आगामी"}),pa.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"}),pa.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:"Далее"}),pa.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 fa=t=>{try{return t}catch(e){return t}};var va=function(t,e,i,n){for(var o,s=arguments.length,r=s<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n,a=t.length-1;a>=0;a--)(o=t[a])&&(r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r);return s>3&&r&&Object.defineProperty(e,i,r),r};class ma extends X{constructor(){super(),this._loadPlugin=!1,this.comments=[],this.addCommentMode=!1,this.showTourCommentTooltip=!1,this.allFeatureDisabled=!1,this.allFeatureRestricted=!1,this._expanded=!0,this.loading=!1,this._isPlanExpired=null,this.showOnboardingModal=!0,this.showLiveDemoModal=!1,this.showFigmaDemoModal=!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.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),la("Error in onApiKeyChange: ",t)}},this.checkCustomLoginEnabled=async()=>{var t;try{const e=await(t=>{const e={apiKey:t};return Ve(ia,"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),la("Error in checkCustomLoginEnabled: ",t)}},this.loginWithCustomUser=()=>{try{this.customLoginEnabled?(Gr("_sfut"),this.loadPlugin&&this.documentId&&this.identifySnippyly()):console.warn("Identify call not allowed.")}catch(t){console.warn("Error in loginWithCustomUser: ",t),la("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),la("Error in addWindowClickEventListener: ",t)}},this.removeWindowClickEventListener=()=>{try{window.removeEventListener("click",this.windowClickEventListener),this.windowClickEventListener=void 0}catch(t){console.warn("Error in removeWindowClickEventListener: ",t),la("Error in removeWindowClickEventListener: ",t)}},this.setWindowEventListner=()=>{try{window.addEventListener("locationchange",(()=>{this.checkUrl()}))}catch(t){console.warn("Error in setWindowEventListner: ",t),la("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),la("Error in urlChangeListener: ",t)}},this.checkUrl=()=>{try{const t=new URL(document.location),e=t.searchParams;if((null==e?void 0:e.has("sprojectInstall"))&&!Jr("sprojectInstall")?this.showOnboardingModal=!0:this.showOnboardingModal=!1,null==e?void 0:e.has("sflivedemo"))if(Jr("sflivedemo",!1,"sessionStorage")){this.showLiveDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showLiveDemoModal=!0;else this.showLiveDemoModal=!1;if(null==e?void 0:e.has("sffigmademo"))if(Jr("sffigmademo",!1)){this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},null===document||void 0===document?void 0:document.title,t.toString())}else this.showFigmaDemoModal=!0;else this.showFigmaDemoModal=!1;if(e.has("st")||e.has("snippyly_google_token")){if(e.has("st")){const t=decodeURIComponent(e.get("st")),i=Xr(t,ft,vt),n=i&&JSON.parse(i);if(n){const t={};t.userId=n.uid,t.name=n.displayName,t.email=n.email,t.photoUrl=null==n?void 0:n.photoURL;const e=JSON.stringify(t),i=Yr(e,ft,vt);qr("_sfut",i,!0)}}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,qr("snippyly-user",JSON.stringify(i),!0)}e.delete("st"),e.delete("snippyly_google_token"),window.history.replaceState({},document.title,t.href)}e.has("review")?(qr("review","true",!1),Gr("feedback"),"true"!==e.get("review")&&(e.delete("review"),e.append("review","true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has("feedback")||Jr("review",!1)&&(e.append("review","true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),e.has("feedback")?(qr("feedback","true",!1),Gr("review"),"true"!==e.get("feedback")&&(e.delete("feedback"),e.append("feedback","true"),window.history.replaceState({},document.title,t.href)),this.loadPluginUI()):e.has("review")||Jr("feedback",!1)&&(e.append("feedback","true"),window.history.replaceState({},document.title,t.href),this.loadPluginUI()),this.setVersionInUrl()}catch(t){console.warn("Error in checkUrl: ",t),la("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&&qr("projectVersion",this.projectVersion,!1,"sessionStorage")}else{const t=new URL(document.location).searchParams;(t.has("review")||t.has("feedback"))&&t.has("sversion")&&(qr("projectVersionKey","sversion",!1,"sessionStorage"),this.projectVersion=t.get("sversion"),this.projectVersion&&qr("projectVersion",this.projectVersion,!1,"sessionStorage"))}}catch(t){console.warn("Error in detectVersion: ",t),la("Error in detectVersion: ",t)}},this.setVersionInUrl=()=>{try{const t=this.projectVersionKey||Jr("projectVersionKey",!1,"sessionStorage"),e=this.projectVersion||Jr("projectVersion",!1,"sessionStorage");if(t&&e){const i=new URL(document.location),n=i.searchParams;n.get(t)||(n.set(t,e),window.history.replaceState({},document.title,i.href))}}catch(t){console.warn("Error in setVersionInUrl: ",t),la("Error in setVersionInUrl: ",t)}},this.loadPluginUI=()=>{try{if(!this.apiKey)return;if(this.loadPlugin)return this.generateLocation(),void this.setViewMode(this.viewMode);const t=Qr();if(t&&!(null==t?void 0:t.isAnonymous)&&(this.loading=!0),this.loadPlugin=!0,!document.querySelector(at)){const t=document.createElement(at);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)})),t.addEventListener("onCommentUpdate",(t=>{console.log("Comment updated: ",t.detail)}))),window.document.body.appendChild(t)}if(!document.querySelector(rt)){const t=document.createElement(rt);window.document.body.appendChild(t)}if(!document.querySelector(ct)){const t=document.createElement(ct);window.document.body.appendChild(t)}if(!document.querySelector(ht)){const t=document.createElement(ht);window.document.body.appendChild(t)}if(!document.querySelector(dt)){const t=document.createElement(dt);window.document.body.appendChild(t)}if(!document.querySelector(ut)){const t=document.createElement(ut);window.document.body.appendChild(t)}this.initializeSnippyly()}catch(t){this.loading=!1,console.warn("Error in loadPluginUI: ",t),la("Error in loadPluginUI: ",t)}},this.initializeSnippyly=async()=>{var t,i,n,o,s,r,a,l,c,h,d;try{if(await e(this.apiKey,{options:{staging:this.staging,version:this.staging?"1.0.110":"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(lt)){const t=document.createElement(lt);t.setAttribute(pt,"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),la("Error in loadPoppinsFont: ",t)}})()}if(Snippyly&&ra({sdkVersion:null===Snippyly||void 0===Snippyly?void 0:Snippyly.version,sdkType:"client"}),this.documentId=((t,e=0)=>{try{let i=3735928559^e,n=1103547991^e;for(let e,o=0;o<t.length;o++)e=t.charCodeAt(o),i=Math.imul(i^e,2654435761),n=Math.imul(n^e,1597334677);return i=Math.imul(i^i>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(i^i>>>13,3266489909),4294967296*(2097151&n)+(i>>>0)}catch(t){return console.warn("Error in cyrb53: ",t),la("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+"")),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===(i=this.commentElement)||void 0===i?void 0:i.showDeviceInfo)&&this.commentElement.showDeviceInfo(!0),this.commentElement.showCommentIndex(!0),this.commentElement.addCommentModeChange&&this.commentElement.addCommentModeChange().subscribe((t=>{this.addCommentMode=t})),(null===(n=this.commentElement)||void 0===n?void 0:n.enableOrphanComments)&&this.commentElement.enableOrphanComments(),(null===(o=this.commentElement)||void 0===o?void 0:o.enableAutoCategorize)&&this.commentElement.enableAutoCategorize(),(null===(s=this.commentElement)||void 0===s?void 0:s.enablePersistentCommentMode)&&this.commentElement.enablePersistentCommentMode(),(null===(r=this.commentElement)||void 0===r?void 0:r.enableGhostComments)&&this.commentElement.enableGhostComments();const e=null===window||void 0===window?void 0:window.SUPERFLOW_CUSTOM_STATUSES;e&&"object"==typeof e&&(null===(a=this.commentElement)||void 0===a?void 0:a.setCustomStatuses)&&this.commentElement.setCustomStatuses(e),(null===(l=this.commentElement)||void 0===l?void 0:l.enableMinimap)&&this.commentElement.enableMinimap()}this.selectionElement=Snippyly.getSelectionElement(),this.selectionElement&&this.selectionElement.enableLiveSelection(!0),this.rewriterElement&&(null===(c=this.rewriterElement)||void 0===c||c.enableRewriter()),this.presenceElement&&(null===(h=this.presenceElement)||void 0===h?void 0:h.enableFlockMode)&&(null===(d=this.presenceElement)||void 0===d||d.enableFlockMode(!0)),this.identifySnippyly()}catch(t){this.loading=!1,console.warn("Error in initializeSnippyly: ",t),la("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),la("Error in checkToEnableUpgradeButton: ",t)}},this.generateLocation=()=>{try{const t=new URL(document.location).searchParams,e=new URL(document.location);e.searchParams.delete("review"),e.searchParams.delete("feedback"),e.searchParams.delete("sreviewId"),e.searchParams.delete("scommentId"),e.searchParams.delete("sprojectInstall"),e.searchParams.delete("sflivedemo");const i=t.get("sversion")||this.projectVersion;e.search="";let n=(t=>{try{return t.replace(/#.*$/,"")}catch(e){return console.warn("Error in removeHashFromUrl: ",e),la("Error in removeHashFromUrl: ",e),t}})(e.href);this.projectId&&(n=null==n?void 0:n.replace(window.location.origin,"")),this.location={url:n,version:i}}catch(t){console.warn("Error in generateLocation: ",t),la("Error in generateLocation: ",t)}},this.setLocation=()=>{var t,e,i,n;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===(n=this.location)||void 0===n?void 0:n.version))return;null===Snippyly||void 0===Snippyly||Snippyly.setLocation(JSON.parse(JSON.stringify(this.location))),this.previousLocation=JSON.parse(JSON.stringify(this.location))}}catch(t){console.warn("Error in setLocation: ",t),la("Error in setLocation: ",t)}},this.identifySnippyly=async()=>{var t,e;try{this.invalidApiKey=!1;let e={name:"Anonymous User",email:"anonymous@snippyly.com",userId:"anonymous",isAnonymous:!0};const{user:i}=await sa();let n;(null==i?void 0:i.email)&&(e={name:(null==i?void 0:i.name)||(null==i?void 0:i.displayName),email:null==i?void 0:i.email,userId:(null==i?void 0:i.uid)||(null==i?void 0:i.userId),photoUrl:(null==i?void 0:i.photoURL)||(null==i?void 0:i.photoUrl)}),n=this.customLoginEnabled&&this.providedUser?this.providedUser:Qr(),(null==n?void 0:n.email)&&(e=n),e.isAnonymous?delete e.groupId:e.groupId=Snippyly.getDocumentId()+"",this.customLoginEnabledLocally||(null===(t=null==e?void 0:e.contacts)||void 0===t?void 0:t.length)&&(e.contacts=[]),(null==e?void 0:e.isAnonymous)||(this.loading=!0);const o=await Snippyly.identify(e);aa(o),(null==e?void 0:e.isAnonymous)||(this.snippylyUser=JSON.parse(JSON.stringify(e))),Snippyly.getUserRole$().subscribe((t=>{var e;this.loading=!1,this.snippylyUserRole||"Admin"!==t||this.setViewMode("All"),this.snippylyUserRole=t,this.snippylyUserRole||this.setViewMode(null),null===(e=this.commentElement)||void 0===e||e.enablePriority()})),(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getFeaturesAccessLevelIam$)&&Snippyly.getFeaturesAccessLevelIam$().subscribe((t=>{var e,i;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)})),(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),la("Error in isPlanExpired$: ",t)}))),ra({clientUserId:null==e?void 0:e.userId}),this.getComments(),this.checkGlobalUserContact(),setTimeout((()=>{Jr("sfTourCommentTooltip")||(this.showTourCommentTooltip=!0)}),2e3)}catch(t){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),console.warn("Error in identifySnippyly: ",t),la("Error in identifySnippyly: ",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)})),"All"!==this.viewMode&&(this.viewMode?this.comments=this.comments.filter((t=>{var e;return(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.view)===this.viewMode})):this.comments=this.comments.filter((t=>{var e;return!(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.view)})))})))}catch(t){console.warn("Error in getComments: ",t),la("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),la("Error in checkGlobalUserContact: ",t)}},this.toggleSnippylyPluginToolbar=()=>{try{this.expanded=!this.expanded}catch(t){console.warn("Error in toggleSnippylyPluginToolbar: ",t),la("Error in toggleSnippylyPluginToolbar: ",t)}},this.loginWithGoogle=()=>{try{if(this.loading||this.customLoginEnabledLocally)return;window.open(`https://snippyly-self-serve-platform.web.app//signin?redirect_url=${encodeURIComponent(window.location.href)}&source=sf`,"_self")}catch(t){console.warn("Error in loginWithGoogle: ",t),la("Error in loginWithGoogle: ",t)}},this.getQRCode=async()=>{try{const t=window.location.href;if(t){const e=Yr(t,ft,vt),i=await fetch(`https://us-central1-snipply-sdk-staging.cloudfunctions.net/getQRCode?text=${encodeURIComponent(e)}`),n=await i.json();(null==n?void 0:n.qrcode)&&(this.qrCode=null==n?void 0:n.qrcode)}}catch(t){console.warn("Error in getQRCode: ",t),la("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),la("Error in toggleQRCodeVisibility: ",t)}},this.removeSnippyly=async()=>{try{this.exitReviewModeCalled=!0,Gr("review"),Gr("feedback"),Gr("sreviewId"),Gr("projectVersionKey","sessionStorage"),Gr("projectVersion","sessionStorage");const t=new URL(document.location),e=t.searchParams;e.delete("sreviewId"),e.delete("review"),e.delete("feedback"),this.projectVersionKey&&e.delete(this.projectVersionKey),e.delete("sversion"),e.delete("sprojectInstall"),e.delete("sflivedemo"),this.projectVersion=void 0,this.projectVersionKey=void 0,delete window.snippylyInitialLoadUrl,window.history.replaceState({},document.title,t.href),window.location.reload()}catch(t){console.warn("Error in removeSnippyly: ",t),la("Error in removeSnippyly: ",t)}},this.signOutUser=async()=>{try{await Snippyly.signOutUser(),Gr("snippyly-user"),Gr("_sfut"),this.snippylyUser=void 0,window.open(`https://snippyly-self-serve-platform.web.app//signout?redirect_url=${encodeURIComponent(window.location.href)}&source=sf`,"_self")}catch(t){console.warn("Error in signOutUser: ",t),la("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),la("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),la("Error in copyLink: ",t)}},this.setViewMode=t=>{try{this.viewMode=t,t?this.location.view=t:delete this.location.view,this.setLocation(),this.getComments()}catch(t){console.warn("Error in setViewMode: ",t),la("Error in setViewMode: ",t)}},this.goToAdminPortal=()=>{try{let t="https://snippyly-self-serve-platform.web.app/";if(Snippyly&&(null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId)){const e=null===Snippyly||void 0===Snippyly?void 0:Snippyly.getDocumentId();e&&(t=`https://snippyly-self-serve-platform.web.app//dashboard/project/comment/${this.apiKey}/${e}`)}window.open(t,"_blank")}catch(t){console.warn("Error in goToAdminPortal: ",t),la("Error in goToAdminPortal: ",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),la("Error in joinCommunity: ",t)}},this.onboardingNextClick=()=>{try{this.showOnboardingModal=!1,qr("sprojectInstall","true");const t=new URL(document.location);t.searchParams.delete("sprojectInstall"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onboardingNextClick: ",t),la("Error in onboardingNextClick: ",t)}},this.onLiveDemoModalNextClick=()=>{try{this.showLiveDemoModal=!1,qr("sflivedemo","true",!1,"sessionStorage");const t=new URL(document.location);t.searchParams.delete("sflivedemo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onLiveDemoModalNextClick: ",t),la("Error in onLiveDemoModalNextClick: ",t)}},this.onFigmaDemoModalNextClick=()=>{try{this.showFigmaDemoModal=!1;const t=new URL(document.location);t.searchParams.delete("sffigmademo"),window.history.replaceState({},document.title,t.href)}catch(t){console.warn("Error in onFigmaDemoModalNextClick: ",t),la("Error in onFigmaDemoModalNextClick: ",t)}},this.onUpgradePlanClick=()=>{try{window.open("https://snippyly-self-serve-platform.web.app/dashboard/billing","_blank")}catch(t){console.warn("Error in onUpgradePlanClick: ",t),la("Error in onUpgradePlanClick: ",t)}},this.onTourCommentTooltipClick=()=>{try{this.showTourCommentTooltip=!1,qr("sfTourCommentTooltip","true")}catch(t){console.warn("Error in onTourCommentTooltipClick: ",t),la("Error in onTourCommentTooltipClick: ",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),la("Error in disableAddCommentMode: ",t)}},this.disableCommentModeButton=()=>{try{return this.addCommentMode?O`
|
|
1343
2456
|
<div class="disable-add-comment-button" @click=${()=>this.disableCommentMode()}>
|
|
1344
2457
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1345
2458
|
<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"/>
|
|
1346
2459
|
</svg>
|
|
1347
2460
|
</div>
|
|
1348
|
-
`:
|
|
2461
|
+
`:O``}catch(t){return console.warn("Error in disableAddCommentModeButton: ",t),la("Error in disableAddCommentModeButton: ",t),O``}},this.addStyles=()=>{var t,e;try{const i=document.createElement("style");i.textContent=da.cssText,null===(t=this.shadowRoot)||void 0===t||t.appendChild(i);const n=document.createElement("style");n.textContent=ua.cssText,null===(e=this.shadowRoot)||void 0===e||e.appendChild(n)}catch(t){console.warn("Error in addStyles: ",t),la("Error in addStyles: ",t)}},window.Superflow={enableCustomLogin:async()=>{this.customLoginEnabledLocally=!0,Gr("_sfut"),await this.checkCustomLoginEnabled()},identify:async t=>{this.providedUser=t,this.customLoginEnabled&&this.loginWithCustomUser()}};try{this.detectVersion(),this.setWindowEventListner(),this.urlChangeListener(),this.checkUrl(),console.log("*** Staging Mode ON! ***")}catch(t){console.warn("Error in constructor: ",t),la("Error in constructor: ",t)}}get loadPlugin(){return this._loadPlugin}set loadPlugin(t){var e,i,n,o,s,r,a,l,c,h;this._loadPlugin=t,this.loadPlugin?(this.classList.add("visible"),null===(i=null===(e=null===document||void 0===document?void 0:document.body)||void 0===e?void 0:e.style)||void 0===i||i.setProperty("transform","none","important"),null===(s=null===(o=null===(n=null===document||void 0===document?void 0:document.body)||void 0===n?void 0:n.parentElement)||void 0===o?void 0:o.style)||void 0===s||s.setProperty("transform","none","important"),null===(a=null===(r=null===document||void 0===document?void 0:document.body)||void 0===r?void 0:r.style)||void 0===a||a.setProperty("perspective","none","important"),null===(h=null===(c=null===(l=null===document||void 0===document?void 0:document.body)||void 0===l?void 0:l.parentElement)||void 0===c?void 0:c.style)||void 0===h||h.setProperty("perspective","none","important")):this.classList.remove("visible")}get expanded(){return this._expanded}set expanded(t){this._expanded=t,this.expanded?this.classList.add("expanded"):this.classList.remove("expanded")}get isPlanExpired(){return this._isPlanExpired}set isPlanExpired(t){this._isPlanExpired=t,this.checkToEnableUpgradeButton()}get apiKey(){return this._apiKey}set apiKey(t){this._apiKey=t,this.onApiKeyChange(),ra({apiKey:this.apiKey}),this.checkUrl()}get projectVersionKey(){return this._projectVersionKey}set projectVersionKey(t){try{this._projectVersionKey=t,this.projectVersionKey&&qr("projectVersionKey",this.projectVersionKey,!1,"sessionStorage"),this.exitReviewModeCalled||this.detectVersion()}catch(t){console.warn("Error in set projectVersionKey: ",t),la("Error in set projectVersionKey: ",t)}}get menuOpenedId(){return this._menuOpenedId}set menuOpenedId(t){this._menuOpenedId=t,this.menuOpenedId?this.addWindowClickEventListener():this.removeWindowClickEventListener()}get isUserGlobalContact(){return this._isUserGlobalContact}set isUserGlobalContact(t){this._isUserGlobalContact=t,this.checkToEnableUpgradeButton()}connectedCallback(){super.connectedCallback(),this.expanded=!0,this.setAttribute("data-velt-comment-disabled","true"),this.style.zIndex="2147483577";const t=document.createElement("style");t.innerHTML='body[data-velt-ongoing-recording="screen"] superflow-toolbar { display: none !important; }',document.head.appendChild(t),this.addStyles(),setTimeout((()=>{const t=document.querySelectorAll('script[src*="snippyly.min.js"]');(null==t?void 0:t.length)>1&&console.warn("Multiple superflow scripts installed.")}),1e3)}render(){var t,e,i,n,o,s,r,a,l;return this.loadPlugin?!this.snippylyUser||this.loading||null===this.isPlanExpired?O`
|
|
1349
2462
|
<div class="snippyly-plugin-container">
|
|
1350
2463
|
<div class="toolbar" id="smallToolbar">
|
|
1351
2464
|
<!-- <div class="toolbar-section">
|
|
@@ -1374,12 +2487,12 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1374
2487
|
<div class="toolbar-section">
|
|
1375
2488
|
<div class="toolbar-divider"></div>
|
|
1376
2489
|
</div>
|
|
1377
|
-
${this.snippylyUserRole?
|
|
2490
|
+
${this.snippylyUserRole?O`
|
|
1378
2491
|
<div class="toolbar-section comment-viewmode-section ${st({"d-none":!this.expanded})}">
|
|
1379
2492
|
<div class="toolbar-actions1 ${st({"d-none":!this.commentElement})}">
|
|
1380
2493
|
<velt-sidebar-button>
|
|
1381
2494
|
<div class="action-border tooltip">
|
|
1382
|
-
<div class="tooltiptext">${
|
|
2495
|
+
<div class="tooltiptext">${fa("All Comments")}</div>
|
|
1383
2496
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
|
|
1384
2497
|
<g clip-path="url(#clip0_5417_64176)">
|
|
1385
2498
|
<path d="M3 13.4545H6.56308C6.94874 13.4546 7.32675 13.5676 7.65478 13.7806C7.9828 13.9937 8.24787 14.2985 8.42031 14.6608L8.65662 15.1573C8.82912 15.5199 9.09434 15.8248 9.42254 16.0378C9.75074 16.2509 10.129 16.3637 10.5148 16.3636H13.4852C13.871 16.3637 14.2493 16.2509 14.5775 16.0378C14.9057 15.8248 15.1709 15.5199 15.3434 15.1573L15.5797 14.6608C15.7522 14.2983 16.0174 13.9934 16.3456 13.7804C16.6738 13.5673 17.052 13.4545 17.4378 13.4545H21M3 13.7823V17.8182C3 18.3968 3.21882 18.9518 3.60832 19.361C3.99782 19.7701 4.52609 20 5.07692 20H18.9231C19.4739 20 20.0022 19.7701 20.3917 19.361C20.7812 18.9518 21 18.3968 21 17.8182V13.7823C21 13.5651 20.9686 13.3488 20.9077 13.1413L18.6831 5.53988C18.5524 5.09405 18.2892 4.70395 17.932 4.42681C17.5748 4.14967 17.1425 4.00008 16.6985 4H7.30246C6.85841 4.00008 6.42608 4.14967 6.0689 4.42681C5.71172 4.70395 5.44849 5.09405 5.31785 5.53988L3.09231 13.1413C3.03133 13.349 3.00021 13.565 3 13.7823Z" stroke="#8F95B2" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
@@ -1399,10 +2512,10 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1399
2512
|
</div>
|
|
1400
2513
|
</div>
|
|
1401
2514
|
`:null}
|
|
1402
|
-
${!this.customLoginEnabledLocally||this.loading?
|
|
2515
|
+
${!this.customLoginEnabledLocally||this.loading?O`
|
|
1403
2516
|
<div class="toolbar-section" @click=${()=>this.loginWithGoogle()}>
|
|
1404
2517
|
<a class="toolbar-button sign-in-button ${st({loading:this.loading})}">
|
|
1405
|
-
${this.loading?
|
|
2518
|
+
${this.loading?O`
|
|
1406
2519
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid">
|
|
1407
2520
|
<g transform="rotate(0 50 50)">
|
|
1408
2521
|
<rect x="47" y="6" rx="3" ry="12" width="6" height="24" fill="white">
|
|
@@ -1454,19 +2567,19 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1454
2567
|
</rect>
|
|
1455
2568
|
</g>
|
|
1456
2569
|
</svg>
|
|
1457
|
-
${
|
|
1458
|
-
`:
|
|
2570
|
+
${fa("Signing In")}
|
|
2571
|
+
`:O`${this.signInError?O`
|
|
1459
2572
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1460
2573
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.64754 5.99921C8.27961 6.01309 7.97008 5.72609 7.95619 5.35816C7.92488 4.5287 7.8809 3.92331 7.83766 3.48926C7.79508 3.06179 7.53702 2.8046 7.1773 2.76063C6.75313 2.70878 6.15477 2.66634 5.33367 2.66634C4.51254 2.66634 3.91418 2.70878 3.49002 2.76063C3.13048 2.80458 2.87229 3.06189 2.8297 3.48946C2.74944 4.29515 2.667 5.68713 2.667 7.99968C2.667 10.3122 2.74944 11.7042 2.8297 12.5099C2.87229 12.9375 3.13048 13.1948 3.49002 13.2387C3.91418 13.2906 4.51254 13.333 5.33367 13.333C6.15477 13.333 6.75313 13.2906 7.1773 13.2387C7.53702 13.1947 7.79508 12.9376 7.83766 12.5101C7.8809 12.076 7.92488 11.4706 7.95619 10.6412C7.97008 10.2733 8.27961 9.98626 8.64754 10.0001C9.01546 10.014 9.30247 10.3236 9.28858 10.6915C9.25644 11.5428 9.21087 12.1761 9.16443 12.6423C9.06679 13.6224 8.38345 14.4345 7.33908 14.5622C6.85294 14.6216 6.19979 14.6663 5.33367 14.6663C4.46752 14.6663 3.81436 14.6216 3.32822 14.5622C2.28377 14.4345 1.60055 13.622 1.50293 12.6421C1.41698 11.7792 1.33367 10.3407 1.33367 7.99968C1.33367 5.65866 1.41698 4.22013 1.50293 3.35729C1.60055 2.37738 2.28377 1.56483 3.32822 1.43715C3.81436 1.37772 4.46752 1.33301 5.33367 1.33301C6.19979 1.33301 6.85294 1.37772 7.33908 1.43714C8.38345 1.56481 9.06679 2.37697 9.16443 3.35709C9.21087 3.8233 9.25644 4.45651 9.28858 5.30786C9.30247 5.67579 9.01546 5.98532 8.64754 5.99921Z" fill="white"/>
|
|
1461
2574
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.1966 6.13807C10.9362 5.87772 10.9362 5.45561 11.1966 5.19526C11.4569 4.93491 11.879 4.93491 12.1394 5.19526L14.4727 7.5286C14.7331 7.78894 14.7331 8.21105 14.4727 8.4714L12.1394 10.8047C11.879 11.0651 11.4569 11.0651 11.1966 10.8047C10.9362 10.5444 10.9362 10.1223 11.1966 9.86193L12.3918 8.66667H6.0013C5.63311 8.66667 5.33463 8.36819 5.33463 8C5.33463 7.63181 5.63311 7.33333 6.0013 7.33333L12.3918 7.33333L11.1966 6.13807Z" fill="white"/>
|
|
1462
2575
|
</svg>
|
|
1463
|
-
<span>${
|
|
1464
|
-
`:
|
|
2576
|
+
<span>${fa("Sign in again!")}</span>
|
|
2577
|
+
`:O`
|
|
1465
2578
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1466
2579
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.64754 5.99921C8.27961 6.01309 7.97008 5.72609 7.95619 5.35816C7.92488 4.5287 7.8809 3.92331 7.83766 3.48926C7.79508 3.06179 7.53702 2.8046 7.1773 2.76063C6.75313 2.70878 6.15477 2.66634 5.33367 2.66634C4.51254 2.66634 3.91418 2.70878 3.49002 2.76063C3.13048 2.80458 2.87229 3.06189 2.8297 3.48946C2.74944 4.29515 2.667 5.68713 2.667 7.99968C2.667 10.3122 2.74944 11.7042 2.8297 12.5099C2.87229 12.9375 3.13048 13.1948 3.49002 13.2387C3.91418 13.2906 4.51254 13.333 5.33367 13.333C6.15477 13.333 6.75313 13.2906 7.1773 13.2387C7.53702 13.1947 7.79508 12.9376 7.83766 12.5101C7.8809 12.076 7.92488 11.4706 7.95619 10.6412C7.97008 10.2733 8.27961 9.98626 8.64754 10.0001C9.01546 10.014 9.30247 10.3236 9.28858 10.6915C9.25644 11.5428 9.21087 12.1761 9.16443 12.6423C9.06679 13.6224 8.38345 14.4345 7.33908 14.5622C6.85294 14.6216 6.19979 14.6663 5.33367 14.6663C4.46752 14.6663 3.81436 14.6216 3.32822 14.5622C2.28377 14.4345 1.60055 13.622 1.50293 12.6421C1.41698 11.7792 1.33367 10.3407 1.33367 7.99968C1.33367 5.65866 1.41698 4.22013 1.50293 3.35729C1.60055 2.37738 2.28377 1.56483 3.32822 1.43715C3.81436 1.37772 4.46752 1.33301 5.33367 1.33301C6.19979 1.33301 6.85294 1.37772 7.33908 1.43714C8.38345 1.56481 9.06679 2.37697 9.16443 3.35709C9.21087 3.8233 9.25644 4.45651 9.28858 5.30786C9.30247 5.67579 9.01546 5.98532 8.64754 5.99921Z" fill="white"/>
|
|
1467
2580
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.1966 6.13807C10.9362 5.87772 10.9362 5.45561 11.1966 5.19526C11.4569 4.93491 11.879 4.93491 12.1394 5.19526L14.4727 7.5286C14.7331 7.78894 14.7331 8.21105 14.4727 8.4714L12.1394 10.8047C11.879 11.0651 11.4569 11.0651 11.1966 10.8047C10.9362 10.5444 10.9362 10.1223 11.1966 9.86193L12.3918 8.66667H6.0013C5.63311 8.66667 5.33463 8.36819 5.33463 8C5.33463 7.63181 5.63311 7.33333 6.0013 7.33333L12.3918 7.33333L11.1966 6.13807Z" fill="white"/>
|
|
1468
2581
|
</svg>
|
|
1469
|
-
<span>${
|
|
2582
|
+
<span>${fa("Sign in to comment")}</span>
|
|
1470
2583
|
`}`}
|
|
1471
2584
|
</a>
|
|
1472
2585
|
</div>
|
|
@@ -1491,12 +2604,12 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1491
2604
|
d="M0.351589 9.03355C0.00514201 9.8932 -0.0880133 10.8436 0.0843205 11.7602C0.256654 12.6768 0.686445 13.517 1.31742 14.1708C1.72451 14.6098 2.20989 14.9589 2.74541 15.1979C3.28094 15.4368 3.85595 15.5608 4.4371 15.5628C5.03193 15.5613 5.62062 15.4353 6.16924 15.192C6.9885 14.8437 7.68929 14.2415 8.17981 13.4645C8.67033 12.6874 8.92771 11.7717 8.91823 10.8372V6.12115H4.46544C3.58239 6.11147 2.71718 6.38434 1.98312 6.90402C1.24906 7.4237 0.680388 8.16595 0.351589 9.03355Z"
|
|
1492
2605
|
fill="#A259FE" />
|
|
1493
2606
|
</svg>
|
|
1494
|
-
<p>${
|
|
2607
|
+
<p>${fa("Superflow")}</p>
|
|
1495
2608
|
</div>
|
|
1496
2609
|
<div class="menu-point-wrap">
|
|
1497
|
-
${
|
|
2610
|
+
${fa("Sign in to comment on this page.")}
|
|
1498
2611
|
<a href="https://www.usesuperflow.com/features" target="_blank">
|
|
1499
|
-
${
|
|
2612
|
+
${fa("Learn more")}
|
|
1500
2613
|
<svg width="14" height="14" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1501
2614
|
<path d="M4.30881 1.72602C3.67106 1.86293 3.11953 2.1682 2.64215 2.64149C2.29011 2.99745 2.05915 3.34183 1.89878 3.76037C1.66018 4.37857 1.668 4.08911 1.668 10.0007C1.668 15.9122 1.66018 15.6228 1.89878 16.241C2.29385 17.2699 3.29164 18.0876 4.38704 18.291C4.70779 18.3496 15.2947 18.3496 15.6154 18.291C16.2297 18.1775 16.9494 17.7942 17.3838 17.3481C17.8221 16.8942 18.1506 16.284 18.2797 15.6736C18.3227 15.4702 18.3345 14.8051 18.3345 12.2973V9.17907H17.5129H16.6913V12.1017C16.6913 13.7957 16.6756 15.126 16.6522 15.259C16.5348 15.975 15.9753 16.5343 15.2593 16.6517C14.9503 16.7025 5.05201 16.7025 4.74282 16.6517C4.03857 16.5382 3.48296 15.9944 3.34997 15.2862C3.29912 15.0085 3.29521 5.06326 3.34997 4.74251C3.46731 4.02653 4.02684 3.467 4.74282 3.34966C4.87582 3.32619 6.20609 3.31054 7.90013 3.31054H10.8226V2.48895V1.66735L7.68482 1.67126C5.25184 1.67126 4.48891 1.68691 4.30881 1.72602Z" fill="#4C5366"/>
|
|
1502
2615
|
<path d="M12.5058 2.48917V3.31077H14.0004H15.4988L13.3548 5.45481L11.2148 7.59477L11.7939 8.17385C12.1108 8.49069 12.3887 8.74902 12.4082 8.74902C12.4317 8.74902 13.4019 7.79443 14.5679 6.62845L16.6924 4.50413V6.0026V7.49715H17.514H18.3352V4.58253V1.66791H15.4206H12.5058V2.48917Z" fill="#4C5366"/>
|
|
@@ -1504,7 +2617,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1504
2617
|
</a>
|
|
1505
2618
|
</div>
|
|
1506
2619
|
<hr />
|
|
1507
|
-
${(null===window||void 0===window?void 0:window.Velt)?
|
|
2620
|
+
${(null===window||void 0===window?void 0:window.Velt)?O`
|
|
1508
2621
|
<div class="menu-point">
|
|
1509
2622
|
<velt-user-request-tool type="feedback"></velt-user-request-tool>
|
|
1510
2623
|
</div>
|
|
@@ -1514,7 +2627,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1514
2627
|
<div class="menu-point">
|
|
1515
2628
|
<velt-user-request-tool type="contactUs"></velt-user-request-tool>
|
|
1516
2629
|
</div>
|
|
1517
|
-
`:
|
|
2630
|
+
`:O``}
|
|
1518
2631
|
<div class="menu-point" @click=${()=>this.joinCommunity()}>
|
|
1519
2632
|
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1520
2633
|
<path d="M6.28358 14.5984C6.28358 15.748 5.35444 16.6772 4.20484 16.6772C3.05523 16.6772 2.1261 15.748 2.1261 14.5984C2.1261 13.4488 3.05523 12.5197 4.20484 12.5197H6.28358V14.5984ZM7.32295 14.5984C7.32295 13.4488 8.25208 12.5197 9.40169 12.5197C10.5513 12.5197 11.4804 13.4488 11.4804 14.5984V19.7953C11.4804 20.9449 10.5513 21.874 9.40169 21.874C8.25208 21.874 7.32295 20.9449 7.32295 19.7953V14.5984Z" fill="#777E91" />
|
|
@@ -1522,7 +2635,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1522
2635
|
<path d="M17.7323 9.38582C17.7323 8.23622 18.6614 7.30708 19.811 7.30708C20.9606 7.30708 21.8897 8.23622 21.8897 9.38582C21.8897 10.5354 20.9606 11.4646 19.811 11.4646H17.7323V9.38582ZM16.6929 9.38582C16.6929 10.5354 15.7637 11.4646 14.6141 11.4646C13.4645 11.4646 12.5354 10.5354 12.5354 9.38582V4.17322C12.5354 3.02362 13.4645 2.09448 14.6141 2.09448C15.7637 2.09448 16.6929 3.02362 16.6929 4.17322V9.38582Z" fill="#777E91" />
|
|
1523
2636
|
<path d="M14.6141 17.7165C15.7637 17.7165 16.6929 18.6457 16.6929 19.7953C16.6929 20.9449 15.7637 21.874 14.6141 21.874C13.4645 21.874 12.5354 20.9449 12.5354 19.7953V17.7165H14.6141ZM14.6141 16.6772C13.4645 16.6772 12.5354 15.748 12.5354 14.5984C12.5354 13.4488 13.4645 12.5197 14.6141 12.5197H19.8267C20.9763 12.5197 21.9055 13.4488 21.9055 14.5984C21.9055 15.748 20.9763 16.6772 19.8267 16.6772H14.6141Z" fill="#777E91" />
|
|
1524
2637
|
</svg>
|
|
1525
|
-
<p>${
|
|
2638
|
+
<p>${fa("Join Community")}</p>
|
|
1526
2639
|
</div>
|
|
1527
2640
|
<hr />
|
|
1528
2641
|
<div class="menu-point" @click=${()=>this.toggleQRCodeVisibility()}>
|
|
@@ -1533,7 +2646,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1533
2646
|
<path fill="#777E91" d="M9 2h5v5H9V2Zm1 1v3h3V3h-3ZM8 8v2h1v1H8v1h2v-2h1v2h1v-1h2v-1h-3V8H8Zm2 2H9V9h1v1Zm4 2h-1v1h-2v1h3v-2Zm-4 2v-1H8v1h2Z"/>
|
|
1534
2647
|
<path fill="#777E91" d="M12 9h2V8h-2v1Z"/>
|
|
1535
2648
|
</svg>
|
|
1536
|
-
<p>${
|
|
2649
|
+
<p>${fa("Open in Mobile")}</p>
|
|
1537
2650
|
</div>
|
|
1538
2651
|
<div class="menu-point" @click=${()=>this.removeSnippyly()}>
|
|
1539
2652
|
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
@@ -1541,15 +2654,15 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1541
2654
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.29289 8.29289C8.68342 7.90237 9.31658 7.90237 9.70711 8.29289L12 10.5858L14.2929 8.29289C14.6834 7.90237 15.3166 7.90237 15.7071 8.29289C16.0976 8.68342 16.0976 9.31658 15.7071 9.70711L13.4142 12L15.7071 14.2929C16.0976 14.6834 16.0976 15.3166 15.7071 15.7071C15.3166 16.0976 14.6834 16.0976 14.2929 15.7071L12 13.4142L9.70711 15.7071C9.31658 16.0976 8.68342 16.0976 8.29289 15.7071C7.90237 15.3166 7.90237 14.6834 8.29289 14.2929L10.5858 12L8.29289 9.70711C7.90237 9.31658 7.90237 8.68342 8.29289 8.29289Z" fill="#777E91"/>
|
|
1542
2655
|
</svg>
|
|
1543
2656
|
|
|
1544
|
-
<p>${
|
|
2657
|
+
<p>${fa("Exit Review Mode")}</p>
|
|
1545
2658
|
</div>
|
|
1546
|
-
${this.customLoginEnabledLocally?null:
|
|
2659
|
+
${this.customLoginEnabledLocally?null:O`
|
|
1547
2660
|
<div class="menu-point" @click=${()=>this.loginWithGoogle()}>
|
|
1548
2661
|
<svg width="20" height="20" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1549
2662
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.64754 5.99921C8.27961 6.01309 7.97008 5.72609 7.95619 5.35816C7.92488 4.5287 7.8809 3.92331 7.83766 3.48926C7.79508 3.06179 7.53702 2.8046 7.1773 2.76063C6.75313 2.70878 6.15477 2.66634 5.33367 2.66634C4.51254 2.66634 3.91418 2.70878 3.49002 2.76063C3.13048 2.80458 2.87229 3.06189 2.8297 3.48946C2.74944 4.29515 2.667 5.68713 2.667 7.99968C2.667 10.3122 2.74944 11.7042 2.8297 12.5099C2.87229 12.9375 3.13048 13.1948 3.49002 13.2387C3.91418 13.2906 4.51254 13.333 5.33367 13.333C6.15477 13.333 6.75313 13.2906 7.1773 13.2387C7.53702 13.1947 7.79508 12.9376 7.83766 12.5101C7.8809 12.076 7.92488 11.4706 7.95619 10.6412C7.97008 10.2733 8.27961 9.98626 8.64754 10.0001C9.01546 10.014 9.30247 10.3236 9.28858 10.6915C9.25644 11.5428 9.21087 12.1761 9.16443 12.6423C9.06679 13.6224 8.38345 14.4345 7.33908 14.5622C6.85294 14.6216 6.19979 14.6663 5.33367 14.6663C4.46752 14.6663 3.81436 14.6216 3.32822 14.5622C2.28377 14.4345 1.60055 13.622 1.50293 12.6421C1.41698 11.7792 1.33367 10.3407 1.33367 7.99968C1.33367 5.65866 1.41698 4.22013 1.50293 3.35729C1.60055 2.37738 2.28377 1.56483 3.32822 1.43715C3.81436 1.37772 4.46752 1.33301 5.33367 1.33301C6.19979 1.33301 6.85294 1.37772 7.33908 1.43714C8.38345 1.56481 9.06679 2.37697 9.16443 3.35709C9.21087 3.8233 9.25644 4.45651 9.28858 5.30786C9.30247 5.67579 9.01546 5.98532 8.64754 5.99921Z" fill="#777E91"/>
|
|
1550
2663
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.1966 6.13807C10.9362 5.87772 10.9362 5.45561 11.1966 5.19526C11.4569 4.93491 11.879 4.93491 12.1394 5.19526L14.4727 7.5286C14.7331 7.78894 14.7331 8.21105 14.4727 8.4714L12.1394 10.8047C11.879 11.0651 11.4569 11.0651 11.1966 10.8047C10.9362 10.5444 10.9362 10.1223 11.1966 9.86193L12.3918 8.66667H6.0013C5.63311 8.66667 5.33463 8.36819 5.33463 8C5.33463 7.63181 5.63311 7.33333 6.0013 7.33333L12.3918 7.33333L11.1966 6.13807Z" fill="#777E91"/>
|
|
1551
2664
|
</svg>
|
|
1552
|
-
<p>${
|
|
2665
|
+
<p>${fa("Sign in")}</p>
|
|
1553
2666
|
</div>
|
|
1554
2667
|
`}
|
|
1555
2668
|
</div>
|
|
@@ -1565,43 +2678,43 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1565
2678
|
</svg>
|
|
1566
2679
|
</div>
|
|
1567
2680
|
</div>
|
|
1568
|
-
${this.showQrCode&&this.qrCode?
|
|
2681
|
+
${this.showQrCode&&this.qrCode?O`
|
|
1569
2682
|
<div class="qrcode-container">
|
|
1570
2683
|
<img class="qrcode" src=${this.qrCode} />
|
|
1571
2684
|
<button class="qrcode-container-close-btn" @click=${()=>this.toggleQRCodeVisibility()}>x</button>
|
|
1572
2685
|
</div>
|
|
1573
2686
|
`:null}
|
|
1574
2687
|
</div>
|
|
1575
|
-
${this.showLiveDemoModal?
|
|
2688
|
+
${this.showLiveDemoModal?O`
|
|
1576
2689
|
<div class="snippyly-plugin-modal-container" @click=${()=>this.onLiveDemoModalNextClick()}>
|
|
1577
2690
|
<div class="s-modal" @click=${t=>null==t?void 0:t.stopPropagation()}>
|
|
1578
2691
|
<img src="https://app.usesuperflow.com/assets/party-emoji.svg" />
|
|
1579
2692
|
<div class="s-modal-text">
|
|
1580
|
-
<h1>${
|
|
2693
|
+
<h1>${fa("Try Superflow using the toolbar below.")}</h1>
|
|
1581
2694
|
<p>
|
|
1582
|
-
${
|
|
1583
|
-
${
|
|
2695
|
+
${fa("Get ready to drop your first comment!")} <br/>
|
|
2696
|
+
${fa("But before you do that, you definitely deserve a high five!")}
|
|
1584
2697
|
</p>
|
|
1585
2698
|
</div>
|
|
1586
|
-
<div class="s-button s-primary" @click=${()=>this.onLiveDemoModalNextClick()}>${
|
|
2699
|
+
<div class="s-button s-primary" @click=${()=>this.onLiveDemoModalNextClick()}>${fa("Done")}</div>
|
|
1587
2700
|
</div>
|
|
1588
2701
|
</div>
|
|
1589
|
-
`:
|
|
1590
|
-
${this.showFigmaDemoModal?
|
|
2702
|
+
`:O``}
|
|
2703
|
+
${this.showFigmaDemoModal?O`
|
|
1591
2704
|
<div class="snippyly-plugin-modal-container" @click=${()=>this.onFigmaDemoModalNextClick()}>
|
|
1592
2705
|
<div class="s-modal" @click=${t=>null==t?void 0:t.stopPropagation()}>
|
|
1593
2706
|
<img src="https://app.usesuperflow.com/assets/party-emoji.svg" />
|
|
1594
2707
|
<div class="s-modal-text">
|
|
1595
2708
|
<h1>
|
|
1596
|
-
${
|
|
1597
|
-
${
|
|
2709
|
+
${fa("Sign in on the toolbar below and add")}<br/>
|
|
2710
|
+
${fa("comments on the design flaws.")}
|
|
1598
2711
|
</h1>
|
|
1599
2712
|
</div>
|
|
1600
|
-
<div class="s-button s-primary" @click=${()=>this.onFigmaDemoModalNextClick()}>${
|
|
2713
|
+
<div class="s-button s-primary" @click=${()=>this.onFigmaDemoModalNextClick()}>${fa("Done")}</div>
|
|
1601
2714
|
</div>
|
|
1602
2715
|
</div>
|
|
1603
|
-
`:
|
|
1604
|
-
`:
|
|
2716
|
+
`:O``}
|
|
2717
|
+
`:O`
|
|
1605
2718
|
<div class="snippyly-plugin-container">
|
|
1606
2719
|
${this.disableCommentModeButton()}
|
|
1607
2720
|
<div class="toolbar ${st({expanded:this.expanded,"add-comment-mode":this.addCommentMode})}">
|
|
@@ -1636,7 +2749,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1636
2749
|
|
|
1637
2750
|
<!-- Below features should only be allowed if user role is available -->
|
|
1638
2751
|
|
|
1639
|
-
${this.snippylyUserRole&&!this.isPlanExpired?
|
|
2752
|
+
${this.snippylyUserRole&&!this.isPlanExpired?O`
|
|
1640
2753
|
<!-- divider -->
|
|
1641
2754
|
<div class="toolbar-section d-xs-none ${st({"d-none":!this.expanded})}">
|
|
1642
2755
|
<div class="toolbar-divider"></div>
|
|
@@ -1672,14 +2785,14 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1672
2785
|
<div class="toolbar-section huddle-recorder-section ${st({"d-none":!this.expanded})}">
|
|
1673
2786
|
<div class="toolbar-actions">
|
|
1674
2787
|
<div class="action tooltip comment-tool-container">
|
|
1675
|
-
<div class="tooltiptext">${this.allFeatureDisabled?
|
|
1676
|
-
${!this.allFeatureDisabled&&this.showTourCommentTooltip?
|
|
2788
|
+
<div class="tooltiptext">${this.allFeatureDisabled?fa("Commenting is disabled. Contact admin."):fa("Comment")}</div>
|
|
2789
|
+
${!this.allFeatureDisabled&&this.showTourCommentTooltip?O`
|
|
1677
2790
|
<div class="tour-tooltiptext" @click=${()=>this.onTourCommentTooltipClick()}>
|
|
1678
|
-
<div class="tour-tooltip-content">${
|
|
1679
|
-
<button class="tour-tooltip-action" @click=${()=>this.onTourCommentTooltipClick()}>${
|
|
2791
|
+
<div class="tour-tooltip-content">${fa("Click to add comments on this page.")}</div>
|
|
2792
|
+
<button class="tour-tooltip-action" @click=${()=>this.onTourCommentTooltipClick()}>${fa("Ok")}</button>
|
|
1680
2793
|
</div>
|
|
1681
2794
|
`:null}
|
|
1682
|
-
${this.allFeatureDisabled?
|
|
2795
|
+
${this.allFeatureDisabled?O`
|
|
1683
2796
|
<div class="custom-tool">
|
|
1684
2797
|
<div class="action" slot="button">
|
|
1685
2798
|
<svg class="toolbar-icon"
|
|
@@ -1689,7 +2802,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1689
2802
|
</svg>
|
|
1690
2803
|
</div>
|
|
1691
2804
|
</div>
|
|
1692
|
-
`:
|
|
2805
|
+
`:O`
|
|
1693
2806
|
<velt-comment-tool class="custom-tool">
|
|
1694
2807
|
<div class="action" slot="button" @click=${()=>this.onTourCommentTooltipClick()}>
|
|
1695
2808
|
<svg class="toolbar-icon ${st({active:this.addCommentMode||this.showTourCommentTooltip})}"
|
|
@@ -1702,8 +2815,8 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1702
2815
|
`}
|
|
1703
2816
|
</div>
|
|
1704
2817
|
<div class="action tooltip ${st({"d-none":this.addCommentMode})}">
|
|
1705
|
-
<div class="tooltiptext">${this.allFeatureDisabled?
|
|
1706
|
-
${this.allFeatureDisabled?
|
|
2818
|
+
<div class="tooltiptext">${this.allFeatureDisabled?fa("Arrow feature is disabled. Contact admin."):fa("Arrow")}</div>
|
|
2819
|
+
${this.allFeatureDisabled?O`
|
|
1707
2820
|
<div class="custom-tool">
|
|
1708
2821
|
<div class="action">
|
|
1709
2822
|
<svg class="toolbar-icon" width="32" height="32" viewBox="0 0 32 32"
|
|
@@ -1713,7 +2826,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1713
2826
|
</svg>
|
|
1714
2827
|
</div>
|
|
1715
2828
|
</div>
|
|
1716
|
-
`:
|
|
2829
|
+
`:O`
|
|
1717
2830
|
<velt-arrow-tool class="custom-tool">
|
|
1718
2831
|
<div class="action">
|
|
1719
2832
|
<svg class="toolbar-icon" width="32" height="32" viewBox="0 0 32 32"
|
|
@@ -1726,12 +2839,12 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1726
2839
|
`}
|
|
1727
2840
|
</div>
|
|
1728
2841
|
<div class="tooltip cursor-pointer ${st({"d-none":this.addCommentMode})}">
|
|
1729
|
-
<div class="tooltiptext">${
|
|
2842
|
+
<div class="tooltiptext">${fa("Live Huddle")}</div>
|
|
1730
2843
|
<velt-huddle-tool type="all"></velt-huddle-tool>
|
|
1731
2844
|
</div>
|
|
1732
|
-
${this.staging&&!this.addCommentMode?
|
|
2845
|
+
${this.staging&&!this.addCommentMode?O`
|
|
1733
2846
|
<div class="tooltip cursor-pointer">
|
|
1734
|
-
<div class="tooltiptext">${
|
|
2847
|
+
<div class="tooltiptext">${fa("Recording")}</div>
|
|
1735
2848
|
<velt-recorder-tool type="all"></velt-recorder-tool>
|
|
1736
2849
|
</div>
|
|
1737
2850
|
`:null}
|
|
@@ -1748,7 +2861,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1748
2861
|
<div class="toolbar-actions1">
|
|
1749
2862
|
<velt-sidebar-button>
|
|
1750
2863
|
<div class="action-border tooltip">
|
|
1751
|
-
<div class="tooltiptext">${
|
|
2864
|
+
<div class="tooltiptext">${fa("Open Comments")}</div>
|
|
1752
2865
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
|
|
1753
2866
|
<g clip-path="url(#clip0_5417_64176)">
|
|
1754
2867
|
<path d="M3 13.4545H6.56308C6.94874 13.4546 7.32675 13.5676 7.65478 13.7806C7.9828 13.9937 8.24787 14.2985 8.42031 14.6608L8.65662 15.1573C8.82912 15.5199 9.09434 15.8248 9.42254 16.0378C9.75074 16.2509 10.129 16.3637 10.5148 16.3636H13.4852C13.871 16.3637 14.2493 16.2509 14.5775 16.0378C14.9057 15.8248 15.1709 15.5199 15.3434 15.1573L15.5797 14.6608C15.7522 14.2983 16.0174 13.9934 16.3456 13.7804C16.6738 13.5673 17.052 13.4545 17.4378 13.4545H21M3 13.7823V17.8182C3 18.3968 3.21882 18.9518 3.60832 19.361C3.99782 19.7701 4.52609 20 5.07692 20H18.9231C19.4739 20 20.0022 19.7701 20.3917 19.361C20.7812 18.9518 21 18.3968 21 17.8182V13.7823C21 13.5651 20.9686 13.3488 20.9077 13.1413L18.6831 5.53988C18.5524 5.09405 18.2892 4.70395 17.932 4.42681C17.5748 4.14967 17.1425 4.00008 16.6985 4H7.30246C6.85841 4.00008 6.42608 4.14967 6.0689 4.42681C5.71172 4.70395 5.44849 5.09405 5.31785 5.53988L3.09231 13.1413C3.03133 13.349 3.00021 13.565 3 13.7823Z" stroke="#8F95B2" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
@@ -1762,15 +2875,15 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1762
2875
|
<p class="action-text">${null===(e=this.comments)||void 0===e?void 0:e.length}</p>
|
|
1763
2876
|
</div>
|
|
1764
2877
|
</velt-sidebar-button>
|
|
1765
|
-
${this.isUserGlobalContact||"Admin"===this.snippylyUserRole?
|
|
2878
|
+
${this.isUserGlobalContact||"Admin"===this.snippylyUserRole?O`
|
|
1766
2879
|
<velt-menu class="d-sm-none">
|
|
1767
2880
|
<div menu-trigger class="action-border dropdown tooltip">
|
|
1768
|
-
<div class="tooltiptext">${
|
|
2881
|
+
<div class="tooltiptext">${fa("Views")}</div>
|
|
1769
2882
|
<svg width="16" height="24" viewBox="0 0 16 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1770
2883
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.99939 16.3333C10.7497 16.3333 12.7055 14.6051 13.8509 13.1658C14.2482 12.6665 14.2482 12.0001 13.8509 11.5009C12.7055 10.0616 10.7497 8.33333 7.99939 8.33333C5.24906 8.33333 3.29326 10.0616 2.14788 11.5009C1.75062 12.0001 1.75062 12.6665 2.14788 13.1658C3.29325 14.6051 5.24906 16.3333 7.99939 16.3333ZM14.8942 13.996C15.6782 13.0108 15.6782 11.6558 14.8942 10.6707C13.6487 9.10551 11.3504 7 7.99939 7C4.64837 7 2.3501 9.10551 1.10458 10.6707C0.320609 11.6558 0.320609 13.0108 1.10458 13.996C2.3501 15.5612 4.64837 17.6667 7.99939 17.6667C11.3504 17.6667 13.6487 15.5612 14.8942 13.996Z" fill="#8F95B2"/>
|
|
1771
2884
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.33301 12.3332C9.33301 13.0696 8.73605 13.6665 7.99967 13.6665C7.26329 13.6665 6.66634 13.0696 6.66634 12.3332C6.66634 12.3142 6.66674 12.2954 6.66752 12.2767C6.77144 12.3133 6.88324 12.3332 6.99967 12.3332C7.55196 12.3332 7.99967 11.8855 7.99967 11.3332C7.99967 11.2167 7.97977 11.1049 7.94319 11.001C7.96192 11.0002 7.98075 10.9998 7.99967 10.9998C8.73605 10.9998 9.33301 11.5968 9.33301 12.3332ZM10.6663 12.3332C10.6663 13.8059 9.47243 14.9998 7.99967 14.9998C6.52692 14.9998 5.33301 13.8059 5.33301 12.3332C5.33301 10.8604 6.52692 9.6665 7.99967 9.6665C9.47243 9.6665 10.6663 10.8604 10.6663 12.3332Z" fill="#8F95B2"/>
|
|
1772
2885
|
</svg>
|
|
1773
|
-
<p class="action-text" style="margin-left:4px">${
|
|
2886
|
+
<p class="action-text" style="margin-left:4px">${fa(this.viewMode||"External")}</p>
|
|
1774
2887
|
<svg class="toolbar-icon-dropdown-arrow" viewBox="0 0 16 16" fill="none"
|
|
1775
2888
|
xmlns="http://www.w3.org/2000/svg">
|
|
1776
2889
|
<path fill-rule="evenodd" clip-rule="evenodd"
|
|
@@ -1778,9 +2891,9 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1778
2891
|
</svg>
|
|
1779
2892
|
</div>
|
|
1780
2893
|
<div menu-items>
|
|
1781
|
-
<div @click=${()=>this.setViewMode("Internal")}>${
|
|
1782
|
-
<div @click=${()=>this.setViewMode(null)}>${
|
|
1783
|
-
<div @click=${()=>this.setViewMode("All")}>${
|
|
2894
|
+
<div @click=${()=>this.setViewMode("Internal")}>${fa("Internal")}</div>
|
|
2895
|
+
<div @click=${()=>this.setViewMode(null)}>${fa("External")}</div>
|
|
2896
|
+
<div @click=${()=>this.setViewMode("All")}>${fa("All")}</div>
|
|
1784
2897
|
</div>
|
|
1785
2898
|
</velt-menu>
|
|
1786
2899
|
`:null}
|
|
@@ -1790,17 +2903,17 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1790
2903
|
<!-- divider -->
|
|
1791
2904
|
<div class="toolbar-section ${st({"d-none":!this.expanded||this.addCommentMode})}">
|
|
1792
2905
|
<div class="toolbar-divider"></div>
|
|
1793
|
-
</div>`:
|
|
1794
|
-
${this.isPlanExpired&&this.isUserGlobalContact?
|
|
2906
|
+
</div>`:O`
|
|
2907
|
+
${this.isPlanExpired&&this.isUserGlobalContact?O`
|
|
1795
2908
|
<div>
|
|
1796
2909
|
<a class="toolbar-button sign-in-button" @click=${()=>this.onUpgradePlanClick()}>
|
|
1797
|
-
${
|
|
2910
|
+
${fa("Upgrade")}
|
|
1798
2911
|
</a>
|
|
1799
2912
|
</div>
|
|
1800
2913
|
`:null}
|
|
1801
2914
|
<div class="tooltip ${st({"d-none":!this.expanded||this.addCommentMode})}">
|
|
1802
2915
|
<div class="tooltiptext">
|
|
1803
|
-
${this.snippylyUserRole?this.isUserGlobalContact?
|
|
2916
|
+
${this.snippylyUserRole?this.isUserGlobalContact?fa("Your plan has expired! Please upgrade."):O`${fa("Your plan has expired!")} <br/> ${fa("Please contact the admin.")}`:O`${fa("You don't have access.")} <br/> ${fa("Reach out to the admin of this project.")}`}
|
|
1804
2917
|
</div>
|
|
1805
2918
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1806
2919
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM13 16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16C11 15.4477 11.4477 15 12 15C12.5523 15 13 15.4477 13 16ZM13 12C13 12.5523 12.5523 13 12 13C11.4477 13 11 12.5523 11 12V8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8V12Z" fill="#FF7162"/>
|
|
@@ -1811,14 +2924,14 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1811
2924
|
<!-- actions 2 -->
|
|
1812
2925
|
<div class="toolbar-section user-profile-section ${st({"d-none":!this.expanded||this.addCommentMode})}">
|
|
1813
2926
|
<div class="toolbar-actions2">
|
|
1814
|
-
${"Admin"===this.snippylyUserRole&&this.staging&&!this.isPlanExpired?
|
|
2927
|
+
${"Admin"===this.snippylyUserRole&&this.staging&&!this.isPlanExpired?O`
|
|
1815
2928
|
<div class="action tooltip cursor-pointer d-sm-none user-invite-tool-container">
|
|
1816
|
-
<div class="tooltiptext">${
|
|
2929
|
+
<div class="tooltiptext">${fa("Share")}</div>
|
|
1817
2930
|
<velt-user-invite-tool></velt-user-invite-tool>
|
|
1818
2931
|
</div>
|
|
1819
2932
|
`:null}
|
|
1820
2933
|
<div class="action">
|
|
1821
|
-
${(null===(i=this.snippylyUser)||void 0===i?void 0:i.photoUrl)?
|
|
2934
|
+
${(null===(i=this.snippylyUser)||void 0===i?void 0:i.photoUrl)?O`<img class="toolbar-img profile-img" src=${null===(n=this.snippylyUser)||void 0===n?void 0:n.photoUrl} referrerpolicy="no-referrer" title=${null===(o=this.snippylyUser)||void 0===o?void 0:o.name} />`:O`<div class="profile-initial"><span>${(null===(r=null===(s=this.snippylyUser)||void 0===s?void 0:s.name)||void 0===r?void 0:r.charAt(0))||(null===(l=null===(a=this.snippylyUser)||void 0===a?void 0:a.email)||void 0===l?void 0:l.charAt(0))}</span></div>`}
|
|
1822
2935
|
</div>
|
|
1823
2936
|
</div>
|
|
1824
2937
|
</div>
|
|
@@ -1843,12 +2956,12 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1843
2956
|
d="M0.351589 9.03355C0.00514201 9.8932 -0.0880133 10.8436 0.0843205 11.7602C0.256654 12.6768 0.686445 13.517 1.31742 14.1708C1.72451 14.6098 2.20989 14.9589 2.74541 15.1979C3.28094 15.4368 3.85595 15.5608 4.4371 15.5628C5.03193 15.5613 5.62062 15.4353 6.16924 15.192C6.9885 14.8437 7.68929 14.2415 8.17981 13.4645C8.67033 12.6874 8.92771 11.7717 8.91823 10.8372V6.12115H4.46544C3.58239 6.11147 2.71718 6.38434 1.98312 6.90402C1.24906 7.4237 0.680388 8.16595 0.351589 9.03355Z"
|
|
1844
2957
|
fill="#A259FE" />
|
|
1845
2958
|
</svg>
|
|
1846
|
-
<p>${
|
|
2959
|
+
<p>${fa("Superflow")}</p>
|
|
1847
2960
|
</div>
|
|
1848
2961
|
<div class="menu-point-wrap">
|
|
1849
|
-
${
|
|
2962
|
+
${fa("Add comments & recordings on this page.")}
|
|
1850
2963
|
<a href="https://www.usesuperflow.com/features" target="_blank">
|
|
1851
|
-
${
|
|
2964
|
+
${fa("Learn more")}
|
|
1852
2965
|
<svg width="14" height="14" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1853
2966
|
<path d="M4.30881 1.72602C3.67106 1.86293 3.11953 2.1682 2.64215 2.64149C2.29011 2.99745 2.05915 3.34183 1.89878 3.76037C1.66018 4.37857 1.668 4.08911 1.668 10.0007C1.668 15.9122 1.66018 15.6228 1.89878 16.241C2.29385 17.2699 3.29164 18.0876 4.38704 18.291C4.70779 18.3496 15.2947 18.3496 15.6154 18.291C16.2297 18.1775 16.9494 17.7942 17.3838 17.3481C17.8221 16.8942 18.1506 16.284 18.2797 15.6736C18.3227 15.4702 18.3345 14.8051 18.3345 12.2973V9.17907H17.5129H16.6913V12.1017C16.6913 13.7957 16.6756 15.126 16.6522 15.259C16.5348 15.975 15.9753 16.5343 15.2593 16.6517C14.9503 16.7025 5.05201 16.7025 4.74282 16.6517C4.03857 16.5382 3.48296 15.9944 3.34997 15.2862C3.29912 15.0085 3.29521 5.06326 3.34997 4.74251C3.46731 4.02653 4.02684 3.467 4.74282 3.34966C4.87582 3.32619 6.20609 3.31054 7.90013 3.31054H10.8226V2.48895V1.66735L7.68482 1.67126C5.25184 1.67126 4.48891 1.68691 4.30881 1.72602Z" fill="#4C5366"/>
|
|
1854
2967
|
<path d="M12.5058 2.48917V3.31077H14.0004H15.4988L13.3548 5.45481L11.2148 7.59477L11.7939 8.17385C12.1108 8.49069 12.3887 8.74902 12.4082 8.74902C12.4317 8.74902 13.4019 7.79443 14.5679 6.62845L16.6924 4.50413V6.0026V7.49715H17.514H18.3352V4.58253V1.66791H15.4206H12.5058V2.48917Z" fill="#4C5366"/>
|
|
@@ -1856,16 +2969,16 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1856
2969
|
</a>
|
|
1857
2970
|
</div>
|
|
1858
2971
|
<hr />
|
|
1859
|
-
${this.isUserGlobalContact?
|
|
2972
|
+
${this.isUserGlobalContact?O`
|
|
1860
2973
|
<div class="menu-point" @click=${()=>this.goToAdminPortal()}>
|
|
1861
2974
|
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1862
2975
|
<path d="M4.30881 1.72602C3.67106 1.86293 3.11953 2.1682 2.64215 2.64149C2.29011 2.99745 2.05915 3.34183 1.89878 3.76037C1.66018 4.37857 1.668 4.08911 1.668 10.0007C1.668 15.9122 1.66018 15.6228 1.89878 16.241C2.29385 17.2699 3.29164 18.0876 4.38704 18.291C4.70779 18.3496 15.2947 18.3496 15.6154 18.291C16.2297 18.1775 16.9494 17.7942 17.3838 17.3481C17.8221 16.8942 18.1506 16.284 18.2797 15.6736C18.3227 15.4702 18.3345 14.8051 18.3345 12.2973V9.17907H17.5129H16.6913V12.1017C16.6913 13.7957 16.6756 15.126 16.6522 15.259C16.5348 15.975 15.9753 16.5343 15.2593 16.6517C14.9503 16.7025 5.05201 16.7025 4.74282 16.6517C4.03857 16.5382 3.48296 15.9944 3.34997 15.2862C3.29912 15.0085 3.29521 5.06326 3.34997 4.74251C3.46731 4.02653 4.02684 3.467 4.74282 3.34966C4.87582 3.32619 6.20609 3.31054 7.90013 3.31054H10.8226V2.48895V1.66735L7.68482 1.67126C5.25184 1.67126 4.48891 1.68691 4.30881 1.72602Z" fill="#4C5366"/>
|
|
1863
2976
|
<path d="M12.5058 2.48917V3.31077H14.0004H15.4988L13.3548 5.45481L11.2148 7.59477L11.7939 8.17385C12.1108 8.49069 12.3887 8.74902 12.4082 8.74902C12.4317 8.74902 13.4019 7.79443 14.5679 6.62845L16.6924 4.50413V6.0026V7.49715H17.514H18.3352V4.58253V1.66791H15.4206H12.5058V2.48917Z" fill="#4C5366"/>
|
|
1864
2977
|
</svg>
|
|
1865
|
-
<p>${
|
|
2978
|
+
<p>${fa("View project")}</p>
|
|
1866
2979
|
</div>
|
|
1867
2980
|
<hr />
|
|
1868
|
-
`:
|
|
2981
|
+
`:O``}
|
|
1869
2982
|
<div class="menu-point">
|
|
1870
2983
|
<velt-user-request-tool type="feedback"></velt-user-request-tool>
|
|
1871
2984
|
</div>
|
|
@@ -1882,7 +2995,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1882
2995
|
<path d="M17.7323 9.38582C17.7323 8.23622 18.6614 7.30708 19.811 7.30708C20.9606 7.30708 21.8897 8.23622 21.8897 9.38582C21.8897 10.5354 20.9606 11.4646 19.811 11.4646H17.7323V9.38582ZM16.6929 9.38582C16.6929 10.5354 15.7637 11.4646 14.6141 11.4646C13.4645 11.4646 12.5354 10.5354 12.5354 9.38582V4.17322C12.5354 3.02362 13.4645 2.09448 14.6141 2.09448C15.7637 2.09448 16.6929 3.02362 16.6929 4.17322V9.38582Z" fill="#777E91" />
|
|
1883
2996
|
<path d="M14.6141 17.7165C15.7637 17.7165 16.6929 18.6457 16.6929 19.7953C16.6929 20.9449 15.7637 21.874 14.6141 21.874C13.4645 21.874 12.5354 20.9449 12.5354 19.7953V17.7165H14.6141ZM14.6141 16.6772C13.4645 16.6772 12.5354 15.748 12.5354 14.5984C12.5354 13.4488 13.4645 12.5197 14.6141 12.5197H19.8267C20.9763 12.5197 21.9055 13.4488 21.9055 14.5984C21.9055 15.748 20.9763 16.6772 19.8267 16.6772H14.6141Z" fill="#777E91" />
|
|
1884
2997
|
</svg>
|
|
1885
|
-
<p>${
|
|
2998
|
+
<p>${fa("Join Community")}</p>
|
|
1886
2999
|
</div>
|
|
1887
3000
|
<hr />
|
|
1888
3001
|
<div class="menu-point" @click=${()=>this.toggleQRCodeVisibility()}>
|
|
@@ -1893,7 +3006,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1893
3006
|
<path fill="#777E91" d="M9 2h5v5H9V2Zm1 1v3h3V3h-3ZM8 8v2h1v1H8v1h2v-2h1v2h1v-1h2v-1h-3V8H8Zm2 2H9V9h1v1Zm4 2h-1v1h-2v1h3v-2Zm-4 2v-1H8v1h2Z"/>
|
|
1894
3007
|
<path fill="#777E91" d="M12 9h2V8h-2v1Z"/>
|
|
1895
3008
|
</svg>
|
|
1896
|
-
<p>${
|
|
3009
|
+
<p>${fa("Open in Mobile")}</p>
|
|
1897
3010
|
</div>
|
|
1898
3011
|
<div class="menu-point" @click=${()=>this.removeSnippyly()}>
|
|
1899
3012
|
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
@@ -1901,9 +3014,9 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1901
3014
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.29289 8.29289C8.68342 7.90237 9.31658 7.90237 9.70711 8.29289L12 10.5858L14.2929 8.29289C14.6834 7.90237 15.3166 7.90237 15.7071 8.29289C16.0976 8.68342 16.0976 9.31658 15.7071 9.70711L13.4142 12L15.7071 14.2929C16.0976 14.6834 16.0976 15.3166 15.7071 15.7071C15.3166 16.0976 14.6834 16.0976 14.2929 15.7071L12 13.4142L9.70711 15.7071C9.31658 16.0976 8.68342 16.0976 8.29289 15.7071C7.90237 15.3166 7.90237 14.6834 8.29289 14.2929L10.5858 12L8.29289 9.70711C7.90237 9.31658 7.90237 8.68342 8.29289 8.29289Z" fill="#777E91"/>
|
|
1902
3015
|
</svg>
|
|
1903
3016
|
|
|
1904
|
-
<p>${
|
|
3017
|
+
<p>${fa("Exit Review Mode")}</p>
|
|
1905
3018
|
</div>
|
|
1906
|
-
${this.customLoginEnabledLocally?null:
|
|
3019
|
+
${this.customLoginEnabledLocally?null:O`
|
|
1907
3020
|
<div class="menu-point" @click=${()=>this.signOutUser()}>
|
|
1908
3021
|
<svg
|
|
1909
3022
|
width="20"
|
|
@@ -1925,7 +3038,7 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1925
3038
|
fill="#4C5366"
|
|
1926
3039
|
/>
|
|
1927
3040
|
</svg>
|
|
1928
|
-
<p>${
|
|
3041
|
+
<p>${fa("Sign Out")}</p>
|
|
1929
3042
|
</div>
|
|
1930
3043
|
`}
|
|
1931
3044
|
</div>
|
|
@@ -1943,55 +3056,55 @@ class cn extends ii{}cn.Encryptor=class extends cn{processBlock(t,e){const i=t,o
|
|
|
1943
3056
|
</div>
|
|
1944
3057
|
|
|
1945
3058
|
</div>
|
|
1946
|
-
${this.showQrCode&&this.qrCode?
|
|
3059
|
+
${this.showQrCode&&this.qrCode?O`
|
|
1947
3060
|
<div class="qrcode-container">
|
|
1948
3061
|
<img class="qrcode" src=${this.qrCode} />
|
|
1949
3062
|
<button class="qrcode-container-close-btn" @click=${()=>this.toggleQRCodeVisibility()}>x</button>
|
|
1950
3063
|
</div>
|
|
1951
3064
|
`:null}
|
|
1952
3065
|
</div>
|
|
1953
|
-
${this.showOnboardingModal?
|
|
3066
|
+
${this.showOnboardingModal?O`
|
|
1954
3067
|
<div class="snippyly-plugin-modal-container" @click=${()=>this.onboardingNextClick()}>
|
|
1955
3068
|
<div class="s-modal" @click=${t=>null==t?void 0:t.stopPropagation()}>
|
|
1956
3069
|
<img src="https://app.usesuperflow.com/assets/party-emoji.svg" />
|
|
1957
3070
|
<div class="s-modal-text">
|
|
1958
|
-
<h1>${
|
|
3071
|
+
<h1>${fa("You’re a SuperFlow installation wizard!")}</h1>
|
|
1959
3072
|
<p>
|
|
1960
|
-
${
|
|
1961
|
-
${
|
|
3073
|
+
${fa("Get ready to drop your first comment!")} <br/>
|
|
3074
|
+
${fa("But before you do that, you definitely deserve a high five!")}
|
|
1962
3075
|
</p>
|
|
1963
3076
|
</div>
|
|
1964
|
-
<div class="s-button s-primary" @click=${()=>this.onboardingNextClick()}>${
|
|
3077
|
+
<div class="s-button s-primary" @click=${()=>this.onboardingNextClick()}>${fa("Next")}</div>
|
|
1965
3078
|
</div>
|
|
1966
3079
|
</div>
|
|
1967
|
-
`:
|
|
1968
|
-
${this.showLiveDemoModal?
|
|
3080
|
+
`:O``}
|
|
3081
|
+
${this.showLiveDemoModal?O`
|
|
1969
3082
|
<div class="snippyly-plugin-modal-container" @click=${()=>this.onLiveDemoModalNextClick()}>
|
|
1970
3083
|
<div class="s-modal" @click=${t=>null==t?void 0:t.stopPropagation()}>
|
|
1971
3084
|
<img src="https://app.usesuperflow.com/assets/party-emoji.svg" />
|
|
1972
3085
|
<div class="s-modal-text">
|
|
1973
|
-
<h1>${
|
|
3086
|
+
<h1>${fa("Try Superflow using the toolbar below.")}</h1>
|
|
1974
3087
|
<p>
|
|
1975
|
-
${
|
|
1976
|
-
${
|
|
3088
|
+
${fa("Get ready to drop your first comment!")} <br/>
|
|
3089
|
+
${fa("But before you do that, you definitely deserve a high five!")}
|
|
1977
3090
|
</p>
|
|
1978
3091
|
</div>
|
|
1979
|
-
<div class="s-button s-primary" @click=${()=>this.onLiveDemoModalNextClick()}>${
|
|
3092
|
+
<div class="s-button s-primary" @click=${()=>this.onLiveDemoModalNextClick()}>${fa("Done")}</div>
|
|
1980
3093
|
</div>
|
|
1981
3094
|
</div>
|
|
1982
|
-
`:
|
|
1983
|
-
${this.showFigmaDemoModal?
|
|
3095
|
+
`:O``}
|
|
3096
|
+
${this.showFigmaDemoModal?O`
|
|
1984
3097
|
<div class="snippyly-plugin-modal-container" @click=${()=>this.onFigmaDemoModalNextClick()}>
|
|
1985
3098
|
<div class="s-modal" @click=${t=>null==t?void 0:t.stopPropagation()}>
|
|
1986
3099
|
<img src="https://app.usesuperflow.com/assets/party-emoji.svg" />
|
|
1987
3100
|
<div class="s-modal-text">
|
|
1988
3101
|
<h1>
|
|
1989
|
-
${
|
|
1990
|
-
${
|
|
3102
|
+
${fa("Sign in on the toolbar below and add")}<br/>
|
|
3103
|
+
${fa("comments on the design flaws.")}
|
|
1991
3104
|
</h1>
|
|
1992
3105
|
</div>
|
|
1993
|
-
<div class="s-button s-primary" @click=${()=>this.onFigmaDemoModalNextClick()}>${
|
|
3106
|
+
<div class="s-button s-primary" @click=${()=>this.onFigmaDemoModalNextClick()}>${fa("Done")}</div>
|
|
1994
3107
|
</div>
|
|
1995
3108
|
</div>
|
|
1996
|
-
`:
|
|
1997
|
-
`:
|
|
3109
|
+
`:O``}
|
|
3110
|
+
`:O``}}ma.styles=[da,ua],va([it()],ma.prototype,"loadPlugin",null),va([it()],ma.prototype,"comments",void 0),va([it()],ma.prototype,"commentElement",void 0),va([it()],ma.prototype,"contactElement",void 0),va([it()],ma.prototype,"rewriterElement",void 0),va([it()],ma.prototype,"presenceElement",void 0),va([it()],ma.prototype,"commentSubscription",void 0),va([it()],ma.prototype,"selectionElement",void 0),va([it()],ma.prototype,"addCommentMode",void 0),va([it()],ma.prototype,"showTourCommentTooltip",void 0),va([it()],ma.prototype,"allFeatureDisabled",void 0),va([it()],ma.prototype,"allFeatureRestricted",void 0),va([it()],ma.prototype,"_expanded",void 0),va([it()],ma.prototype,"loading",void 0),va([it()],ma.prototype,"signInError",void 0),va([it()],ma.prototype,"snippylyUser",void 0),va([it()],ma.prototype,"snippylyUserRole",void 0),va([it()],ma.prototype,"_isPlanExpired",void 0),va([it()],ma.prototype,"showOnboardingModal",void 0),va([it()],ma.prototype,"showLiveDemoModal",void 0),va([it()],ma.prototype,"showFigmaDemoModal",void 0),va([et()],ma.prototype,"apiKey",null),va([et()],ma.prototype,"projectId",void 0),va([it()],ma.prototype,"staging",void 0),va([et()],ma.prototype,"projectVersionKey",null),va([it()],ma.prototype,"projectVersion",void 0),va([it()],ma.prototype,"_menuOpenedId",void 0),va([it()],ma.prototype,"copyLinkTooltip",void 0),va([it()],ma.prototype,"invalidApiKey",void 0),va([it()],ma.prototype,"documentId",void 0),va([it()],ma.prototype,"_isUserGlobalContact",void 0),va([it()],ma.prototype,"location",void 0),va([it()],ma.prototype,"viewMode",void 0),va([it()],ma.prototype,"qrCode",void 0),va([it()],ma.prototype,"showQrCode",void 0),va([it()],ma.prototype,"customLoginEnabledLocally",void 0),va([et()],ma.prototype,"customLoginEnabled",void 0),va([it()],ma.prototype,"providedUser",void 0),va([it()],ma.prototype,"autoTranslation",void 0),(t=>{if(customElements.get("superflow-toolbar")||customElements.get("snippyly-plugin"))return;const e={allow:["sdkUrl","windowVariables","snippylyPlugin"],loaders:{windowVariables:()=>{const t=null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_API_KEY;return{valid:!!t,type:"windowVariables",apiKey:t,staging:!!(null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_STAGING),projectVersionKey:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_PROJECT_VERSION_KEY,projectId:null===window||void 0===window?void 0:window.SUPERFLOW_TOOLBAR_PROJECT_ID}},snippylyPlugin:()=>{const t=document.querySelector("snippyly-plugin");if(!t)return;const e=t.getAttribute("apiKey"),i=!!t.getAttribute("staging"),n=t.getAttribute("projectVersionKey"),o=t.getAttribute("projectId");return null==t||t.remove(),{valid:!!e,type:"snippylyPlugin",apiKey:e,staging:i,projectVersionKey:n,projectId:o}},sdkUrl:()=>{const t=document.getElementById("superflowToolbarScript");if(!t)return;const e=null==t?void 0:t.src,i=new URL(e).searchParams,n=i.has("apiKey")?i.get("apiKey"):void 0;return{valid:!!n,type:"sdkUrl",apiKey:n,staging:void 0,projectVersionKey:void 0,projectId:i.has("projectId")?i.get("projectId"):void 0}}},load:()=>{for(let t=0;t<e.allow.length;t++){const i=e.allow[t],n=e.loaders[i]();if(n&&n.valid)return n}}},i=()=>{try{const i=e.load();if(customElements.define("superflow-toolbar",t),i&&i.valid){(()=>{try{document.querySelectorAll("superflow-toolbar").forEach((t=>{t.remove()})),document.querySelectorAll("snippyly-plugin").forEach((t=>{t.remove()}))}catch(t){console.warn("Error in removeSuperflowToolbarTag: ",t)}})();const t={};return t.apiKey=i.apiKey,i.staging&&(t.staging="true"),i.projectVersionKey&&(t.projectVersionKey=i.projectVersionKey),i.projectId&&(t.projectId=i.projectId),void((t={})=>{try{const e=document.createElement("superflow-toolbar");Object.keys(t||{}).forEach((i=>{e.setAttribute(i,t[i])})),document.body.appendChild(e)}catch(t){console.warn("Error in loadSuperflowToolbarTag: ",t)}})(t)}}catch(t){console.warn("Error in initSuperflow: ",t)}};(null===document||void 0===document?void 0:document.body)?i():null===document||void 0===document||document.addEventListener("DOMContentLoaded",(()=>{i()}))})(ma);class wa extends X{}customElements.get("snippyly-plugin")||customElements.define("snippyly-plugin",wa);export{wa as SnippylyPlugin,ma as SuperflowToolbar};
|