@blinkk/root-cms 2.1.1 → 2.2.1-alpha.0
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/dist/app.js +120 -131
- package/dist/cli.js +4 -4
- package/dist/{client-Vr32ZRmC.d.ts → client-BKO9Ikqy.d.ts} +4 -4
- package/dist/client.d.ts +1 -1
- package/dist/client.js +1 -1
- package/dist/core.d.ts +3 -3
- package/dist/core.js +1 -1
- package/dist/functions.d.ts +2 -2
- package/dist/functions.js +3 -3
- package/dist/plugin.d.ts +1 -1
- package/dist/plugin.js +258 -14
- package/dist/project.d.ts +1 -1
- package/dist/ui/signin.js +15 -1381
- package/dist/ui/signin.js.LEGAL.txt +578 -0
- package/dist/ui/ui.css +1 -1
- package/dist/ui/ui.js +141 -3413
- package/dist/ui/ui.js.LEGAL.txt +1789 -0
- package/package.json +27 -25
- /package/dist/{schema-UCmjggdA.d.ts → schema-FB6Ck9sN.d.ts} +0 -0
package/dist/ui/signin.js
CHANGED
|
@@ -1,1381 +1,15 @@
|
|
|
1
|
-
"use strict";(()=>{var Cn=function(n){let e=[],t=0;for(let r=0;r<n.length;r++){let i=n.charCodeAt(r);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&r+1<n.length&&(n.charCodeAt(r+1)&64512)===56320?(i=65536+((i&1023)<<10)+(n.charCodeAt(++r)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e},Ei=function(n){let e=[],t=0,r=0;for(;t<n.length;){let i=n[t++];if(i<128)e[r++]=String.fromCharCode(i);else if(i>191&&i<224){let s=n[t++];e[r++]=String.fromCharCode((i&31)<<6|s&63)}else if(i>239&&i<365){let s=n[t++],o=n[t++],c=n[t++],a=((i&7)<<18|(s&63)<<12|(o&63)<<6|c&63)-65536;e[r++]=String.fromCharCode(55296+(a>>10)),e[r++]=String.fromCharCode(56320+(a&1023))}else{let s=n[t++],o=n[t++];e[r++]=String.fromCharCode((i&15)<<12|(s&63)<<6|o&63)}}return e.join("")},Nn={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:typeof atob=="function",encodeByteArray(n,e){if(!Array.isArray(n))throw Error("encodeByteArray takes an array as a parameter");this.init_();let t=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,r=[];for(let i=0;i<n.length;i+=3){let s=n[i],o=i+1<n.length,c=o?n[i+1]:0,a=i+2<n.length,l=a?n[i+2]:0,d=s>>2,u=(s&3)<<4|c>>4,_=(c&15)<<2|l>>6,h=l&63;a||(h=64,o||(_=64)),r.push(t[d],t[u],t[_],t[h])}return r.join("")},encodeString(n,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(n):this.encodeByteArray(Cn(n),e)},decodeString(n,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(n):Ei(this.decodeStringToByteArray(n,e))},decodeStringToByteArray(n,e){this.init_();let t=e?this.charToByteMapWebSafe_:this.charToByteMap_,r=[];for(let i=0;i<n.length;){let s=t[n.charAt(i++)],c=i<n.length?t[n.charAt(i)]:0;++i;let l=i<n.length?t[n.charAt(i)]:64;++i;let u=i<n.length?t[n.charAt(i)]:64;if(++i,s==null||c==null||l==null||u==null)throw new Tt;let _=s<<2|c>>4;if(r.push(_),l!==64){let h=c<<4&240|l>>2;if(r.push(h),u!==64){let v=l<<6&192|u;r.push(v)}}}return r},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let n=0;n<this.ENCODED_VALS.length;n++)this.byteToCharMap_[n]=this.ENCODED_VALS.charAt(n),this.charToByteMap_[this.byteToCharMap_[n]]=n,this.byteToCharMapWebSafe_[n]=this.ENCODED_VALS_WEBSAFE.charAt(n),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[n]]=n,n>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(n)]=n,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(n)]=n)}}},Tt=class extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}},wi=function(n){let e=Cn(n);return Nn.encodeByteArray(e,!0)},St=function(n){return wi(n).replace(/\./g,"")},Rt=function(n){try{return Nn.decodeString(n,!0)}catch(e){console.error("base64Decode failed: ",e)}return null};function bi(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("Unable to locate global object.")}var Ti=()=>bi().__FIREBASE_DEFAULTS__,Ai=()=>{if(typeof process>"u"||typeof process.env>"u")return;let n=process.env.__FIREBASE_DEFAULTS__;if(n)return JSON.parse(n)},Si=()=>{if(typeof document>"u")return;let n;try{n=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}let e=n&&Rt(n[1]);return e&&JSON.parse(e)},kt=()=>{try{return Ti()||Ai()||Si()}catch(n){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${n}`);return}},Dn=n=>{var e,t;return(t=(e=kt())===null||e===void 0?void 0:e.emulatorHosts)===null||t===void 0?void 0:t[n]};var Ot=()=>{var n;return(n=kt())===null||n===void 0?void 0:n.config},Pt=n=>{var e;return(e=kt())===null||e===void 0?void 0:e[`_${n}`]};var Le=class{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}wrapCallback(e){return(t,r)=>{t?this.reject(t):this.resolve(r),typeof e=="function"&&(this.promise.catch(()=>{}),e.length===1?e(t):e(t,r))}}};function b(){return typeof navigator<"u"&&typeof navigator.userAgent=="string"?navigator.userAgent:""}function Ln(){return typeof window<"u"&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(b())}function Mn(){let n=typeof chrome=="object"?chrome.runtime:typeof browser=="object"?browser.runtime:void 0;return typeof n=="object"&&n.id!==void 0}function xn(){return typeof navigator=="object"&&navigator.product==="ReactNative"}function Un(){let n=b();return n.indexOf("MSIE ")>=0||n.indexOf("Trident/")>=0}function Fn(){try{return typeof indexedDB=="object"}catch{return!1}}function Vn(){return new Promise((n,e)=>{try{let t=!0,r="validate-browser-context-for-indexeddb-analytics-module",i=self.indexedDB.open(r);i.onsuccess=()=>{i.result.close(),t||self.indexedDB.deleteDatabase(r),n(!0)},i.onupgradeneeded=()=>{t=!1},i.onerror=()=>{var s;e(((s=i.error)===null||s===void 0?void 0:s.message)||"")}}catch(t){e(t)}})}var Ri="FirebaseError",P=class n extends Error{constructor(e,t,r){super(t),this.code=e,this.customData=r,this.name=Ri,Object.setPrototypeOf(this,n.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,x.prototype.create)}},x=class{constructor(e,t,r){this.service=e,this.serviceName=t,this.errors=r}create(e,...t){let r=t[0]||{},i=`${this.service}/${e}`,s=this.errors[e],o=s?ki(s,r):"Error",c=`${this.serviceName}: ${o} (${i}).`;return new P(i,c,r)}};function ki(n,e){return n.replace(Oi,(t,r)=>{let i=e[r];return i!=null?String(i):`<${r}?>`})}var Oi=/\{\$([^}]+)}/g;function Hn(n){for(let e in n)if(Object.prototype.hasOwnProperty.call(n,e))return!1;return!0}function se(n,e){if(n===e)return!0;let t=Object.keys(n),r=Object.keys(e);for(let i of t){if(!r.includes(i))return!1;let s=n[i],o=e[i];if(Pn(s)&&Pn(o)){if(!se(s,o))return!1}else if(s!==o)return!1}for(let i of r)if(!t.includes(i))return!1;return!0}function Pn(n){return n!==null&&typeof n=="object"}function oe(n){let e=[];for(let[t,r]of Object.entries(n))Array.isArray(r)?r.forEach(i=>{e.push(encodeURIComponent(t)+"="+encodeURIComponent(i))}):e.push(encodeURIComponent(t)+"="+encodeURIComponent(r));return e.length?"&"+e.join("&"):""}function ae(n){let e={};return n.replace(/^\?/,"").split("&").forEach(r=>{if(r){let[i,s]=r.split("=");e[decodeURIComponent(i)]=decodeURIComponent(s)}}),e}function ce(n){let e=n.indexOf("?");if(!e)return"";let t=n.indexOf("#",e);return n.substring(e,t>0?t:void 0)}function Wn(n,e){let t=new At(n,e);return t.subscribe.bind(t)}var At=class{constructor(e,t){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=t,this.task.then(()=>{e(this)}).catch(r=>{this.error(r)})}next(e){this.forEachObserver(t=>{t.next(e)})}error(e){this.forEachObserver(t=>{t.error(e)}),this.close(e)}complete(){this.forEachObserver(e=>{e.complete()}),this.close()}subscribe(e,t,r){let i;if(e===void 0&&t===void 0&&r===void 0)throw new Error("Missing Observer.");Pi(e,["next","error","complete"])?i=e:i={next:e,error:t,complete:r},i.next===void 0&&(i.next=bt),i.error===void 0&&(i.error=bt),i.complete===void 0&&(i.complete=bt);let s=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then(()=>{try{this.finalError?i.error(this.finalError):i.complete()}catch{}}),this.observers.push(i),s}unsubscribeOne(e){this.observers===void 0||this.observers[e]===void 0||(delete this.observers[e],this.observerCount-=1,this.observerCount===0&&this.onNoObservers!==void 0&&this.onNoObservers(this))}forEachObserver(e){if(!this.finalized)for(let t=0;t<this.observers.length;t++)this.sendOne(t,e)}sendOne(e,t){this.task.then(()=>{if(this.observers!==void 0&&this.observers[e]!==void 0)try{t(this.observers[e])}catch(r){typeof console<"u"&&console.error&&console.error(r)}})}close(e){this.finalized||(this.finalized=!0,e!==void 0&&(this.finalError=e),this.task.then(()=>{this.observers=void 0,this.onNoObservers=void 0}))}};function Pi(n,e){if(typeof n!="object"||n===null)return!1;for(let t of e)if(t in n&&typeof n[t]=="function")return!0;return!1}function bt(){}var Ka=4*60*60*1e3;function H(n){return n&&n._delegate?n._delegate:n}var C=class{constructor(e,t,r){this.name=e,this.instanceFactory=t,this.type=r,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}};var G="[DEFAULT]";var Ct=class{constructor(e,t){this.name=e,this.container=t,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(e){let t=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(t)){let r=new Le;if(this.instancesDeferred.set(t,r),this.isInitialized(t)||this.shouldAutoInitialize())try{let i=this.getOrInitializeService({instanceIdentifier:t});i&&r.resolve(i)}catch{}}return this.instancesDeferred.get(t).promise}getImmediate(e){var t;let r=this.normalizeInstanceIdentifier(e?.identifier),i=(t=e?.optional)!==null&&t!==void 0?t:!1;if(this.isInitialized(r)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:r})}catch(s){if(i)return null;throw s}else{if(i)return null;throw Error(`Service ${this.name} is not available`)}}getComponent(){return this.component}setComponent(e){if(e.name!==this.name)throw Error(`Mismatching Component ${e.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=e,!!this.shouldAutoInitialize()){if(Ni(e))try{this.getOrInitializeService({instanceIdentifier:G})}catch{}for(let[t,r]of this.instancesDeferred.entries()){let i=this.normalizeInstanceIdentifier(t);try{let s=this.getOrInitializeService({instanceIdentifier:i});r.resolve(s)}catch{}}}}clearInstance(e=G){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}async delete(){let e=Array.from(this.instances.values());await Promise.all([...e.filter(t=>"INTERNAL"in t).map(t=>t.INTERNAL.delete()),...e.filter(t=>"_delete"in t).map(t=>t._delete())])}isComponentSet(){return this.component!=null}isInitialized(e=G){return this.instances.has(e)}getOptions(e=G){return this.instancesOptions.get(e)||{}}initialize(e={}){let{options:t={}}=e,r=this.normalizeInstanceIdentifier(e.instanceIdentifier);if(this.isInitialized(r))throw Error(`${this.name}(${r}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);let i=this.getOrInitializeService({instanceIdentifier:r,options:t});for(let[s,o]of this.instancesDeferred.entries()){let c=this.normalizeInstanceIdentifier(s);r===c&&o.resolve(i)}return i}onInit(e,t){var r;let i=this.normalizeInstanceIdentifier(t),s=(r=this.onInitCallbacks.get(i))!==null&&r!==void 0?r:new Set;s.add(e),this.onInitCallbacks.set(i,s);let o=this.instances.get(i);return o&&e(o,i),()=>{s.delete(e)}}invokeOnInitCallbacks(e,t){let r=this.onInitCallbacks.get(t);if(r)for(let i of r)try{i(e,t)}catch{}}getOrInitializeService({instanceIdentifier:e,options:t={}}){let r=this.instances.get(e);if(!r&&this.component&&(r=this.component.instanceFactory(this.container,{instanceIdentifier:Ci(e),options:t}),this.instances.set(e,r),this.instancesOptions.set(e,t),this.invokeOnInitCallbacks(r,e),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,e,r)}catch{}return r||null}normalizeInstanceIdentifier(e=G){return this.component?this.component.multipleInstances?e:G:e}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!=="EXPLICIT"}};function Ci(n){return n===G?void 0:n}function Ni(n){return n.instantiationMode==="EAGER"}var Me=class{constructor(e){this.name=e,this.providers=new Map}addComponent(e){let t=this.getProvider(e.name);if(t.isComponentSet())throw new Error(`Component ${e.name} has already been registered with ${this.name}`);t.setComponent(e)}addOrOverwriteComponent(e){this.getProvider(e.name).isComponentSet()&&this.providers.delete(e.name),this.addComponent(e)}getProvider(e){if(this.providers.has(e))return this.providers.get(e);let t=new Ct(e,this);return this.providers.set(e,t),t}getProviders(){return Array.from(this.providers.values())}};var Di=[],m;(function(n){n[n.DEBUG=0]="DEBUG",n[n.VERBOSE=1]="VERBOSE",n[n.INFO=2]="INFO",n[n.WARN=3]="WARN",n[n.ERROR=4]="ERROR",n[n.SILENT=5]="SILENT"})(m||(m={}));var Li={debug:m.DEBUG,verbose:m.VERBOSE,info:m.INFO,warn:m.WARN,error:m.ERROR,silent:m.SILENT},Mi=m.INFO,xi={[m.DEBUG]:"log",[m.VERBOSE]:"log",[m.INFO]:"info",[m.WARN]:"warn",[m.ERROR]:"error"},Ui=(n,e,...t)=>{if(e<n.logLevel)return;let r=new Date().toISOString(),i=xi[e];if(i)console[i](`[${r}] ${n.name}:`,...t);else throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`)},ue=class{constructor(e){this.name=e,this._logLevel=Mi,this._logHandler=Ui,this._userLogHandler=null,Di.push(this)}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in m))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel=typeof e=="string"?Li[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if(typeof e!="function")throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,m.DEBUG,...e),this._logHandler(this,m.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,m.VERBOSE,...e),this._logHandler(this,m.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,m.INFO,...e),this._logHandler(this,m.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,m.WARN,...e),this._logHandler(this,m.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,m.ERROR,...e),this._logHandler(this,m.ERROR,...e)}};var Fi=(n,e)=>e.some(t=>n instanceof t),Bn,jn;function Vi(){return Bn||(Bn=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Hi(){return jn||(jn=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}var $n=new WeakMap,Dt=new WeakMap,zn=new WeakMap,Nt=new WeakMap,Mt=new WeakMap;function Wi(n){let e=new Promise((t,r)=>{let i=()=>{n.removeEventListener("success",s),n.removeEventListener("error",o)},s=()=>{t(N(n.result)),i()},o=()=>{r(n.error),i()};n.addEventListener("success",s),n.addEventListener("error",o)});return e.then(t=>{t instanceof IDBCursor&&$n.set(t,n)}).catch(()=>{}),Mt.set(e,n),e}function Bi(n){if(Dt.has(n))return;let e=new Promise((t,r)=>{let i=()=>{n.removeEventListener("complete",s),n.removeEventListener("error",o),n.removeEventListener("abort",o)},s=()=>{t(),i()},o=()=>{r(n.error||new DOMException("AbortError","AbortError")),i()};n.addEventListener("complete",s),n.addEventListener("error",o),n.addEventListener("abort",o)});Dt.set(n,e)}var Lt={get(n,e,t){if(n instanceof IDBTransaction){if(e==="done")return Dt.get(n);if(e==="objectStoreNames")return n.objectStoreNames||zn.get(n);if(e==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return N(n[e])},set(n,e,t){return n[e]=t,!0},has(n,e){return n instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in n}};function qn(n){Lt=n(Lt)}function ji(n){return n===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...t){let r=n.call(xe(this),e,...t);return zn.set(r,e.sort?e.sort():[e]),N(r)}:Hi().includes(n)?function(...e){return n.apply(xe(this),e),N($n.get(this))}:function(...e){return N(n.apply(xe(this),e))}}function $i(n){return typeof n=="function"?ji(n):(n instanceof IDBTransaction&&Bi(n),Fi(n,Vi())?new Proxy(n,Lt):n)}function N(n){if(n instanceof IDBRequest)return Wi(n);if(Nt.has(n))return Nt.get(n);let e=$i(n);return e!==n&&(Nt.set(n,e),Mt.set(e,n)),e}var xe=n=>Mt.get(n);function Kn(n,e,{blocked:t,upgrade:r,blocking:i,terminated:s}={}){let o=indexedDB.open(n,e),c=N(o);return r&&o.addEventListener("upgradeneeded",a=>{r(N(o.result),a.oldVersion,a.newVersion,N(o.transaction),a)}),t&&o.addEventListener("blocked",a=>t(a.oldVersion,a.newVersion,a)),c.then(a=>{s&&a.addEventListener("close",()=>s()),i&&a.addEventListener("versionchange",l=>i(l.oldVersion,l.newVersion,l))}).catch(()=>{}),c}var zi=["get","getKey","getAll","getAllKeys","count"],qi=["put","add","delete","clear"],xt=new Map;function Gn(n,e){if(!(n instanceof IDBDatabase&&!(e in n)&&typeof e=="string"))return;if(xt.get(e))return xt.get(e);let t=e.replace(/FromIndex$/,""),r=e!==t,i=qi.includes(t);if(!(t in(r?IDBIndex:IDBObjectStore).prototype)||!(i||zi.includes(t)))return;let s=async function(o,...c){let a=this.transaction(o,i?"readwrite":"readonly"),l=a.store;return r&&(l=l.index(c.shift())),(await Promise.all([l[t](...c),i&&a.done]))[0]};return xt.set(e,s),s}qn(n=>({...n,get:(e,t,r)=>Gn(e,t)||n.get(e,t,r),has:(e,t)=>!!Gn(e,t)||n.has(e,t)}));var Ft=class{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(t=>{if(Gi(t)){let r=t.getImmediate();return`${r.library}/${r.version}`}else return null}).filter(t=>t).join(" ")}};function Gi(n){let e=n.getComponent();return e?.type==="VERSION"}var Vt="@firebase/app",Jn="0.9.22";var K=new ue("@firebase/app"),Ki="@firebase/app-compat",Ji="@firebase/analytics-compat",Yi="@firebase/analytics",Xi="@firebase/app-check-compat",Qi="@firebase/app-check",Zi="@firebase/auth",es="@firebase/auth-compat",ts="@firebase/database",ns="@firebase/database-compat",rs="@firebase/functions",is="@firebase/functions-compat",ss="@firebase/installations",os="@firebase/installations-compat",as="@firebase/messaging",cs="@firebase/messaging-compat",us="@firebase/performance",ls="@firebase/performance-compat",ds="@firebase/remote-config",hs="@firebase/remote-config-compat",fs="@firebase/storage",ps="@firebase/storage-compat",_s="@firebase/firestore",ms="@firebase/firestore-compat",gs="firebase",vs="10.5.2";var Ht="[DEFAULT]",Is={[Vt]:"fire-core",[Ki]:"fire-core-compat",[Yi]:"fire-analytics",[Ji]:"fire-analytics-compat",[Qi]:"fire-app-check",[Xi]:"fire-app-check-compat",[Zi]:"fire-auth",[es]:"fire-auth-compat",[ts]:"fire-rtdb",[ns]:"fire-rtdb-compat",[rs]:"fire-fn",[is]:"fire-fn-compat",[ss]:"fire-iid",[os]:"fire-iid-compat",[as]:"fire-fcm",[cs]:"fire-fcm-compat",[us]:"fire-perf",[ls]:"fire-perf-compat",[ds]:"fire-rc",[hs]:"fire-rc-compat",[fs]:"fire-gcs",[ps]:"fire-gcs-compat",[_s]:"fire-fst",[ms]:"fire-fst-compat","fire-js":"fire-js",[gs]:"fire-js-all"};var Ue=new Map,Wt=new Map;function ys(n,e){try{n.container.addComponent(e)}catch(t){K.debug(`Component ${e.name} failed to register with FirebaseApp ${n.name}`,t)}}function le(n){let e=n.name;if(Wt.has(e))return K.debug(`There were multiple attempts to register component ${e}.`),!1;Wt.set(e,n);for(let t of Ue.values())ys(t,n);return!0}function zt(n,e){let t=n.container.getProvider("heartbeat").getImmediate({optional:!0});return t&&t.triggerHeartbeat(),n.container.getProvider(e)}var Es={"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","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}."},W=new x("app","Firebase",Es);var Bt=class{constructor(e,t,r){this._isDeleted=!1,this._options=Object.assign({},e),this._config=Object.assign({},t),this._name=t.name,this._automaticDataCollectionEnabled=t.automaticDataCollectionEnabled,this._container=r,this.container.addComponent(new C("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}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(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw W.create("app-deleted",{appName:this._name})}};var de=vs;function qt(n,e={}){let t=n;typeof e!="object"&&(e={name:e});let r=Object.assign({name:Ht,automaticDataCollectionEnabled:!1},e),i=r.name;if(typeof i!="string"||!i)throw W.create("bad-app-name",{appName:String(i)});if(t||(t=Ot()),!t)throw W.create("no-options");let s=Ue.get(i);if(s){if(se(t,s.options)&&se(r,s.config))return s;throw W.create("duplicate-app",{appName:i})}let o=new Me(i);for(let a of Wt.values())o.addComponent(a);let c=new Bt(t,r,o);return Ue.set(i,c),c}function Zn(n=Ht){let e=Ue.get(n);if(!e&&n===Ht&&Ot())return qt();if(!e)throw W.create("no-app",{appName:n});return e}function B(n,e,t){var r;let i=(r=Is[n])!==null&&r!==void 0?r:n;t&&(i+=`-${t}`);let s=i.match(/\s|\//),o=e.match(/\s|\//);if(s||o){let c=[`Unable to register library "${i}" with version "${e}":`];s&&c.push(`library name "${i}" contains illegal characters (whitespace or "/")`),s&&o&&c.push("and"),o&&c.push(`version name "${e}" contains illegal characters (whitespace or "/")`),K.warn(c.join(" "));return}le(new C(`${i}-version`,()=>({library:i,version:e}),"VERSION"))}var ws="firebase-heartbeat-database",bs=1,ve="firebase-heartbeat-store",Ut=null;function er(){return Ut||(Ut=Kn(ws,bs,{upgrade:(n,e)=>{switch(e){case 0:n.createObjectStore(ve)}}}).catch(n=>{throw W.create("idb-open",{originalErrorMessage:n.message})})),Ut}async function Ts(n){try{return await(await er()).transaction(ve).objectStore(ve).get(tr(n))}catch(e){if(e instanceof P)K.warn(e.message);else{let t=W.create("idb-get",{originalErrorMessage:e?.message});K.warn(t.message)}}}async function Yn(n,e){try{let r=(await er()).transaction(ve,"readwrite");await r.objectStore(ve).put(e,tr(n)),await r.done}catch(t){if(t instanceof P)K.warn(t.message);else{let r=W.create("idb-set",{originalErrorMessage:t?.message});K.warn(r.message)}}}function tr(n){return`${n.name}!${n.options.appId}`}var As=1024,Ss=30*24*60*60*1e3,jt=class{constructor(e){this.container=e,this._heartbeatsCache=null;let t=this.container.getProvider("app").getImmediate();this._storage=new $t(t),this._heartbeatsCachePromise=this._storage.read().then(r=>(this._heartbeatsCache=r,r))}async triggerHeartbeat(){let t=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),r=Xn();if(this._heartbeatsCache===null&&(this._heartbeatsCache=await this._heartbeatsCachePromise),!(this._heartbeatsCache.lastSentHeartbeatDate===r||this._heartbeatsCache.heartbeats.some(i=>i.date===r)))return this._heartbeatsCache.heartbeats.push({date:r,agent:t}),this._heartbeatsCache.heartbeats=this._heartbeatsCache.heartbeats.filter(i=>{let s=new Date(i.date).valueOf();return Date.now()-s<=Ss}),this._storage.overwrite(this._heartbeatsCache)}async getHeartbeatsHeader(){if(this._heartbeatsCache===null&&await this._heartbeatsCachePromise,this._heartbeatsCache===null||this._heartbeatsCache.heartbeats.length===0)return"";let e=Xn(),{heartbeatsToSend:t,unsentEntries:r}=Rs(this._heartbeatsCache.heartbeats),i=St(JSON.stringify({version:2,heartbeats:t}));return this._heartbeatsCache.lastSentHeartbeatDate=e,r.length>0?(this._heartbeatsCache.heartbeats=r,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),i}};function Xn(){return new Date().toISOString().substring(0,10)}function Rs(n,e=As){let t=[],r=n.slice();for(let i of n){let s=t.find(o=>o.agent===i.agent);if(s){if(s.dates.push(i.date),Qn(t)>e){s.dates.pop();break}}else if(t.push({agent:i.agent,dates:[i.date]}),Qn(t)>e){t.pop();break}r=r.slice(1)}return{heartbeatsToSend:t,unsentEntries:r}}var $t=class{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return Fn()?Vn().then(()=>!0).catch(()=>!1):!1}async read(){return await this._canUseIndexedDBPromise?await Ts(this.app)||{heartbeats:[]}:{heartbeats:[]}}async overwrite(e){var t;if(await this._canUseIndexedDBPromise){let i=await this.read();return Yn(this.app,{lastSentHeartbeatDate:(t=e.lastSentHeartbeatDate)!==null&&t!==void 0?t:i.lastSentHeartbeatDate,heartbeats:e.heartbeats})}else return}async add(e){var t;if(await this._canUseIndexedDBPromise){let i=await this.read();return Yn(this.app,{lastSentHeartbeatDate:(t=e.lastSentHeartbeatDate)!==null&&t!==void 0?t:i.lastSentHeartbeatDate,heartbeats:[...i.heartbeats,...e.heartbeats]})}else return}};function Qn(n){return St(JSON.stringify({version:2,heartbeats:n})).length}function ks(n){le(new C("platform-logger",e=>new Ft(e),"PRIVATE")),le(new C("heartbeat",e=>new jt(e),"PRIVATE")),B(Vt,Jn,n),B(Vt,Jn,"esm2017"),B("fire-js","")}ks("");var Os="firebase",Ps="10.5.2";B(Os,Ps,"app");function Fe(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t}function gr(){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."}}var vr=gr,Ir=new x("auth","Firebase",gr());var $e=new ue("@firebase/auth");function Cs(n,...e){$e.logLevel<=m.WARN&&$e.warn(`Auth (${de}): ${n}`,...e)}function He(n,...e){$e.logLevel<=m.ERROR&&$e.error(`Auth (${de}): ${n}`,...e)}function O(n,...e){throw fn(n,...e)}function L(n,...e){return fn(n,...e)}function yr(n,e,t){let r=Object.assign(Object.assign({},vr()),{[e]:t});return new x("auth","Firebase",r).create(e,{appName:n.name})}function Ns(n,e,t){let r=t;if(!(e instanceof r))throw r.name!==e.constructor.name&&O(n,"argument-error"),yr(n,"argument-error",`Type of ${e.constructor.name} does not match expected instance.Did you pass a reference from a different Auth SDK?`)}function fn(n,...e){if(typeof n!="string"){let t=e[0],r=[...e.slice(1)];return r[0]&&(r[0].appName=n.name),n._errorFactory.create(t,...r)}return Ir.create(n,...e)}function f(n,e,...t){if(!n)throw fn(e,...t)}function D(n){let e="INTERNAL ASSERTION FAILED: "+n;throw He(e),new Error(e)}function F(n,e){n||D(e)}function Jt(){var n;return typeof self<"u"&&((n=self.location)===null||n===void 0?void 0:n.href)||""}function Ds(){return nr()==="http:"||nr()==="https:"}function nr(){var n;return typeof self<"u"&&((n=self.location)===null||n===void 0?void 0:n.protocol)||null}function Ls(){return typeof navigator<"u"&&navigator&&"onLine"in navigator&&typeof navigator.onLine=="boolean"&&(Ds()||Mn()||"connection"in navigator)?navigator.onLine:!0}function Ms(){if(typeof navigator>"u")return null;let n=navigator;return n.languages&&n.languages[0]||n.language||null}var J=class{constructor(e,t){this.shortDelay=e,this.longDelay=t,F(t>e,"Short delay should be less than long delay!"),this.isMobile=Ln()||xn()}get(){return Ls()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}};function pn(n,e){F(n.emulator,"Emulator should always be set here");let{url:t}=n.emulator;return e?`${t}${e.startsWith("/")?e.slice(1):e}`:t}var ze=class{static initialize(e,t,r){this.fetchImpl=e,t&&(this.headersImpl=t),r&&(this.responseImpl=r)}static fetch(){if(this.fetchImpl)return this.fetchImpl;if(typeof self<"u"&&"fetch"in self)return self.fetch;if(typeof globalThis<"u"&&globalThis.fetch)return globalThis.fetch;if(typeof fetch<"u")return fetch;D("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){if(this.headersImpl)return this.headersImpl;if(typeof self<"u"&&"Headers"in self)return self.Headers;if(typeof globalThis<"u"&&globalThis.Headers)return globalThis.Headers;if(typeof Headers<"u")return Headers;D("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){if(this.responseImpl)return this.responseImpl;if(typeof self<"u"&&"Response"in self)return self.Response;if(typeof globalThis<"u"&&globalThis.Response)return globalThis.Response;if(typeof Response<"u")return Response;D("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}};var xs={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"missing-password",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",PASSWORD_DOES_NOT_MEET_REQUIREMENTS:"password-does-not-meet-requirements",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error",RECAPTCHA_NOT_ENABLED:"recaptcha-not-enabled",MISSING_RECAPTCHA_TOKEN:"missing-recaptcha-token",INVALID_RECAPTCHA_TOKEN:"invalid-recaptcha-token",INVALID_RECAPTCHA_ACTION:"invalid-recaptcha-action",MISSING_CLIENT_TYPE:"missing-client-type",MISSING_RECAPTCHA_VERSION:"missing-recaptcha-version",INVALID_RECAPTCHA_VERSION:"invalid-recaptcha-version",INVALID_REQ_TYPE:"invalid-req-type"};var Us=new J(3e4,6e4);function T(n,e){return n.tenantId&&!e.tenantId?Object.assign(Object.assign({},e),{tenantId:n.tenantId}):e}async function S(n,e,t,r,i={}){return Er(n,i,async()=>{let s={},o={};r&&(e==="GET"?o=r:s={body:JSON.stringify(r)});let c=oe(Object.assign({key:n.config.apiKey},o)).slice(1),a=await n._getAdditionalHeaders();return a["Content-Type"]="application/json",n.languageCode&&(a["X-Firebase-Locale"]=n.languageCode),ze.fetch()(wr(n,n.config.apiHost,t,c),Object.assign({method:e,headers:a,referrerPolicy:"no-referrer"},s))})}async function Er(n,e,t){n._canInitEmulator=!1;let r=Object.assign(Object.assign({},xs),e);try{let i=new Yt(n),s=await Promise.race([t(),i.promise]);i.clearNetworkTimeout();let o=await s.json();if("needConfirmation"in o)throw Ie(n,"account-exists-with-different-credential",o);if(s.ok&&!("errorMessage"in o))return o;{let c=s.ok?o.errorMessage:o.error.message,[a,l]=c.split(" : ");if(a==="FEDERATED_USER_ID_ALREADY_LINKED")throw Ie(n,"credential-already-in-use",o);if(a==="EMAIL_EXISTS")throw Ie(n,"email-already-in-use",o);if(a==="USER_DISABLED")throw Ie(n,"user-disabled",o);let d=r[a]||a.toLowerCase().replace(/[_\s]+/g,"-");if(l)throw yr(n,d,l);O(n,d)}}catch(i){if(i instanceof P)throw i;O(n,"network-request-failed",{message:String(i)})}}async function te(n,e,t,r,i={}){let s=await S(n,e,t,r,i);return"mfaPendingCredential"in s&&O(n,"multi-factor-auth-required",{_serverResponse:s}),s}function wr(n,e,t,r){let i=`${e}${t}?${r}`;return n.config.emulator?pn(n.config,i):`${n.config.apiScheme}://${i}`}function Fs(n){switch(n){case"ENFORCE":return"ENFORCE";case"AUDIT":return"AUDIT";case"OFF":return"OFF";default:return"ENFORCEMENT_STATE_UNSPECIFIED"}}var Yt=class{constructor(e){this.auth=e,this.timer=null,this.promise=new Promise((t,r)=>{this.timer=setTimeout(()=>r(L(this.auth,"network-request-failed")),Us.get())})}clearNetworkTimeout(){clearTimeout(this.timer)}};function Ie(n,e,t){let r={appName:n.name};t.email&&(r.email=t.email),t.phoneNumber&&(r.phoneNumber=t.phoneNumber);let i=L(n,e,r);return i.customData._tokenResponse=t,i}function rr(n){return n!==void 0&&n.enterprise!==void 0}var Xt=class{constructor(e){if(this.siteKey="",this.recaptchaEnforcementState=[],e.recaptchaKey===void 0)throw new Error("recaptchaKey undefined");this.siteKey=e.recaptchaKey.split("/")[3],this.recaptchaEnforcementState=e.recaptchaEnforcementState}getProviderEnforcementState(e){if(!this.recaptchaEnforcementState||this.recaptchaEnforcementState.length===0)return null;for(let t of this.recaptchaEnforcementState)if(t.provider&&t.provider===e)return Fs(t.enforcementState);return null}isProviderEnabled(e){return this.getProviderEnforcementState(e)==="ENFORCE"||this.getProviderEnforcementState(e)==="AUDIT"}};async function Vs(n,e){return S(n,"GET","/v2/recaptchaConfig",T(n,e))}async function Hs(n,e){return S(n,"POST","/v1/accounts:delete",e)}async function Ws(n,e){return S(n,"POST","/v1/accounts:lookup",e)}function ye(n){if(n)try{let e=new Date(Number(n));if(!isNaN(e.getTime()))return e.toUTCString()}catch{}}async function br(n,e=!1){let t=H(n),r=await t.getIdToken(e),i=_n(r);f(i&&i.exp&&i.auth_time&&i.iat,t.auth,"internal-error");let s=typeof i.firebase=="object"?i.firebase:void 0,o=s?.sign_in_provider;return{claims:i,token:r,authTime:ye(Gt(i.auth_time)),issuedAtTime:ye(Gt(i.iat)),expirationTime:ye(Gt(i.exp)),signInProvider:o||null,signInSecondFactor:s?.sign_in_second_factor||null}}function Gt(n){return Number(n)*1e3}function _n(n){let[e,t,r]=n.split(".");if(e===void 0||t===void 0||r===void 0)return He("JWT malformed, contained fewer than 3 sections"),null;try{let i=Rt(t);return i?JSON.parse(i):(He("Failed to decode base64 JWT payload"),null)}catch(i){return He("Caught error parsing JWT payload as JSON",i?.toString()),null}}function Bs(n){let e=_n(n);return f(e,"internal-error"),f(typeof e.exp<"u","internal-error"),f(typeof e.iat<"u","internal-error"),Number(e.exp)-Number(e.iat)}async function Ee(n,e,t=!1){if(t)return e;try{return await e}catch(r){throw r instanceof P&&js(r)&&n.auth.currentUser===n&&await n.auth.signOut(),r}}function js({code:n}){return n==="auth/user-disabled"||n==="auth/user-token-expired"}var Qt=class{constructor(e){this.user=e,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,this.timerId!==null&&clearTimeout(this.timerId))}getInterval(e){var t;if(e){let r=this.errorBackoff;return this.errorBackoff=Math.min(this.errorBackoff*2,96e4),r}else{this.errorBackoff=3e4;let i=((t=this.user.stsTokenManager.expirationTime)!==null&&t!==void 0?t:0)-Date.now()-3e5;return Math.max(0,i)}}schedule(e=!1){if(!this.isRunning)return;let t=this.getInterval(e);this.timerId=setTimeout(async()=>{await this.iteration()},t)}async iteration(){try{await this.user.getIdToken(!0)}catch(e){e?.code==="auth/network-request-failed"&&this.schedule(!0);return}this.schedule()}};var qe=class{constructor(e,t){this.createdAt=e,this.lastLoginAt=t,this._initializeTime()}_initializeTime(){this.lastSignInTime=ye(this.lastLoginAt),this.creationTime=ye(this.createdAt)}_copy(e){this.createdAt=e.createdAt,this.lastLoginAt=e.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}};async function Ge(n){var e;let t=n.auth,r=await n.getIdToken(),i=await Ee(n,Ws(t,{idToken:r}));f(i?.users.length,t,"internal-error");let s=i.users[0];n._notifyReloadListener(s);let o=!((e=s.providerUserInfo)===null||e===void 0)&&e.length?zs(s.providerUserInfo):[],c=$s(n.providerData,o),a=n.isAnonymous,l=!(n.email&&s.passwordHash)&&!c?.length,d=a?l:!1,u={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:c,metadata:new qe(s.createdAt,s.lastLoginAt),isAnonymous:d};Object.assign(n,u)}async function Tr(n){let e=H(n);await Ge(e),await e.auth._persistUserIfCurrent(e),e.auth._notifyListenersIfCurrent(e)}function $s(n,e){return[...n.filter(r=>!e.some(i=>i.providerId===r.providerId)),...e]}function zs(n){return n.map(e=>{var{providerId:t}=e,r=Fe(e,["providerId"]);return{providerId:t,uid:r.rawId||"",displayName:r.displayName||null,email:r.email||null,phoneNumber:r.phoneNumber||null,photoURL:r.photoUrl||null}})}async function qs(n,e){let t=await Er(n,{},async()=>{let r=oe({grant_type:"refresh_token",refresh_token:e}).slice(1),{tokenApiHost:i,apiKey:s}=n.config,o=wr(n,i,"/v1/token",`key=${s}`),c=await n._getAdditionalHeaders();return c["Content-Type"]="application/x-www-form-urlencoded",ze.fetch()(o,{method:"POST",headers:c,body:r})});return{accessToken:t.access_token,expiresIn:t.expires_in,refreshToken:t.refresh_token}}var Ke=class n{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(e){f(e.idToken,"internal-error"),f(typeof e.idToken<"u","internal-error"),f(typeof e.refreshToken<"u","internal-error");let t="expiresIn"in e&&typeof e.expiresIn<"u"?Number(e.expiresIn):Bs(e.idToken);this.updateTokensAndExpiration(e.idToken,e.refreshToken,t)}async getToken(e,t=!1){return f(!this.accessToken||this.refreshToken,e,"user-token-expired"),!t&&this.accessToken&&!this.isExpired?this.accessToken:this.refreshToken?(await this.refresh(e,this.refreshToken),this.accessToken):null}clearRefreshToken(){this.refreshToken=null}async refresh(e,t){let{accessToken:r,refreshToken:i,expiresIn:s}=await qs(e,t);this.updateTokensAndExpiration(r,i,Number(s))}updateTokensAndExpiration(e,t,r){this.refreshToken=t||null,this.accessToken=e||null,this.expirationTime=Date.now()+r*1e3}static fromJSON(e,t){let{refreshToken:r,accessToken:i,expirationTime:s}=t,o=new n;return r&&(f(typeof r=="string","internal-error",{appName:e}),o.refreshToken=r),i&&(f(typeof i=="string","internal-error",{appName:e}),o.accessToken=i),s&&(f(typeof s=="number","internal-error",{appName:e}),o.expirationTime=s),o}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(e){this.accessToken=e.accessToken,this.refreshToken=e.refreshToken,this.expirationTime=e.expirationTime}_clone(){return Object.assign(new n,this.toJSON())}_performRefresh(){return D("not implemented")}};function j(n,e){f(typeof n=="string"||typeof n>"u","internal-error",{appName:e})}var we=class n{constructor(e){var{uid:t,auth:r,stsTokenManager:i}=e,s=Fe(e,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.proactiveRefresh=new Qt(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=t,this.auth=r,this.stsTokenManager=i,this.accessToken=i.accessToken,this.displayName=s.displayName||null,this.email=s.email||null,this.emailVerified=s.emailVerified||!1,this.phoneNumber=s.phoneNumber||null,this.photoURL=s.photoURL||null,this.isAnonymous=s.isAnonymous||!1,this.tenantId=s.tenantId||null,this.providerData=s.providerData?[...s.providerData]:[],this.metadata=new qe(s.createdAt||void 0,s.lastLoginAt||void 0)}async getIdToken(e){let t=await Ee(this,this.stsTokenManager.getToken(this.auth,e));return f(t,this.auth,"internal-error"),this.accessToken!==t&&(this.accessToken=t,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),t}getIdTokenResult(e){return br(this,e)}reload(){return Tr(this)}_assign(e){this!==e&&(f(this.uid===e.uid,this.auth,"internal-error"),this.displayName=e.displayName,this.photoURL=e.photoURL,this.email=e.email,this.emailVerified=e.emailVerified,this.phoneNumber=e.phoneNumber,this.isAnonymous=e.isAnonymous,this.tenantId=e.tenantId,this.providerData=e.providerData.map(t=>Object.assign({},t)),this.metadata._copy(e.metadata),this.stsTokenManager._assign(e.stsTokenManager))}_clone(e){let t=new n(Object.assign(Object.assign({},this),{auth:e,stsTokenManager:this.stsTokenManager._clone()}));return t.metadata._copy(this.metadata),t}_onReload(e){f(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=e,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(e){this.reloadListener?this.reloadListener(e):this.reloadUserInfo=e}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}async _updateTokensIfNecessary(e,t=!1){let r=!1;e.idToken&&e.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(e),r=!0),t&&await Ge(this),await this.auth._persistUserIfCurrent(this),r&&this.auth._notifyListenersIfCurrent(this)}async delete(){let e=await this.getIdToken();return await Ee(this,Hs(this.auth,{idToken:e})),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(e=>Object.assign({},e)),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(e,t){var r,i,s,o,c,a,l,d;let u=(r=t.displayName)!==null&&r!==void 0?r:void 0,_=(i=t.email)!==null&&i!==void 0?i:void 0,h=(s=t.phoneNumber)!==null&&s!==void 0?s:void 0,v=(o=t.photoURL)!==null&&o!==void 0?o:void 0,R=(c=t.tenantId)!==null&&c!==void 0?c:void 0,I=(a=t._redirectEventId)!==null&&a!==void 0?a:void 0,g=(l=t.createdAt)!==null&&l!==void 0?l:void 0,y=(d=t.lastLoginAt)!==null&&d!==void 0?d:void 0,{uid:k,emailVerified:z,isAnonymous:V,providerData:re,stsTokenManager:q}=t;f(k&&q,e,"internal-error");let ge=Ke.fromJSON(this.name,q);f(typeof k=="string",e,"internal-error"),j(u,e.name),j(_,e.name),f(typeof z=="boolean",e,"internal-error"),f(typeof V=="boolean",e,"internal-error"),j(h,e.name),j(v,e.name),j(R,e.name),j(I,e.name),j(g,e.name),j(y,e.name);let A=new n({uid:k,auth:e,email:_,emailVerified:z,displayName:u,isAnonymous:V,photoURL:v,phoneNumber:h,tenantId:R,stsTokenManager:ge,createdAt:g,lastLoginAt:y});return re&&Array.isArray(re)&&(A.providerData=re.map(ie=>Object.assign({},ie))),I&&(A._redirectEventId=I),A}static async _fromIdTokenResponse(e,t,r=!1){let i=new Ke;i.updateFromServerResponse(t);let s=new n({uid:t.localId,auth:e,stsTokenManager:i,isAnonymous:r});return await Ge(s),s}};var ir=new Map;function U(n){F(n instanceof Function,"Expected a class definition");let e=ir.get(n);return e?(F(e instanceof n,"Instance stored in cache mismatched with class"),e):(e=new n,ir.set(n,e),e)}var Je=class{constructor(){this.type="NONE",this.storage={}}async _isAvailable(){return!0}async _set(e,t){this.storage[e]=t}async _get(e){let t=this.storage[e];return t===void 0?null:t}async _remove(e){delete this.storage[e]}_addListener(e,t){}_removeListener(e,t){}};Je.type="NONE";var Zt=Je;function We(n,e,t){return`firebase:${n}:${e}:${t}`}var Ye=class n{constructor(e,t,r){this.persistence=e,this.auth=t,this.userKey=r;let{config:i,name:s}=this.auth;this.fullUserKey=We(this.userKey,i.apiKey,s),this.fullPersistenceKey=We("persistence",i.apiKey,s),this.boundEventHandler=t._onStorageEvent.bind(t),this.persistence._addListener(this.fullUserKey,this.boundEventHandler)}setCurrentUser(e){return this.persistence._set(this.fullUserKey,e.toJSON())}async getCurrentUser(){let e=await this.persistence._get(this.fullUserKey);return e?we._fromJSON(this.auth,e):null}removeCurrentUser(){return this.persistence._remove(this.fullUserKey)}savePersistenceForRedirect(){return this.persistence._set(this.fullPersistenceKey,this.persistence.type)}async setPersistence(e){if(this.persistence===e)return;let t=await this.getCurrentUser();if(await this.removeCurrentUser(),this.persistence=e,t)return this.setCurrentUser(t)}delete(){this.persistence._removeListener(this.fullUserKey,this.boundEventHandler)}static async create(e,t,r="authUser"){if(!t.length)return new n(U(Zt),e,r);let i=(await Promise.all(t.map(async l=>{if(await l._isAvailable())return l}))).filter(l=>l),s=i[0]||U(Zt),o=We(r,e.config.apiKey,e.name),c=null;for(let l of t)try{let d=await l._get(o);if(d){let u=we._fromJSON(e,d);l!==s&&(c=u),s=l;break}}catch{}let a=i.filter(l=>l._shouldAllowMigration);return!s._shouldAllowMigration||!a.length?new n(s,e,r):(s=a[0],c&&await s._set(o,c.toJSON()),await Promise.all(t.map(async l=>{if(l!==s)try{await l._remove(o)}catch{}})),new n(s,e,r))}};function sr(n){let e=n.toLowerCase();if(e.includes("opera/")||e.includes("opr/")||e.includes("opios/"))return"Opera";if(Rr(e))return"IEMobile";if(e.includes("msie")||e.includes("trident/"))return"IE";if(e.includes("edge/"))return"Edge";if(Ar(e))return"Firefox";if(e.includes("silk/"))return"Silk";if(Or(e))return"Blackberry";if(Pr(e))return"Webos";if(mn(e))return"Safari";if((e.includes("chrome/")||Sr(e))&&!e.includes("edge/"))return"Chrome";if(kr(e))return"Android";{let t=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,r=n.match(t);if(r?.length===2)return r[1]}return"Other"}function Ar(n=b()){return/firefox\//i.test(n)}function mn(n=b()){let e=n.toLowerCase();return e.includes("safari/")&&!e.includes("chrome/")&&!e.includes("crios/")&&!e.includes("android")}function Sr(n=b()){return/crios\//i.test(n)}function Rr(n=b()){return/iemobile/i.test(n)}function kr(n=b()){return/android/i.test(n)}function Or(n=b()){return/blackberry/i.test(n)}function Pr(n=b()){return/webos/i.test(n)}function pt(n=b()){return/iphone|ipad|ipod/i.test(n)||/macintosh/i.test(n)&&/mobile/i.test(n)}function Gs(n=b()){var e;return pt(n)&&!!(!((e=window.navigator)===null||e===void 0)&&e.standalone)}function Ks(){return Un()&&document.documentMode===10}function Cr(n=b()){return pt(n)||kr(n)||Pr(n)||Or(n)||/windows phone/i.test(n)||Rr(n)}function Js(){try{return!!(window&&window!==window.top)}catch{return!1}}function Nr(n,e=[]){let t;switch(n){case"Browser":t=sr(b());break;case"Worker":t=`${sr(b())}-${n}`;break;default:t=n}let r=e.length?e.join(","):"FirebaseCore-web";return`${t}/JsCore/${de}/${r}`}var en=class{constructor(e){this.auth=e,this.queue=[]}pushCallback(e,t){let r=s=>new Promise((o,c)=>{try{let a=e(s);o(a)}catch(a){c(a)}});r.onAbort=t,this.queue.push(r);let i=this.queue.length-1;return()=>{this.queue[i]=()=>Promise.resolve()}}async runMiddleware(e){if(this.auth.currentUser===e)return;let t=[];try{for(let r of this.queue)await r(e),r.onAbort&&t.push(r.onAbort)}catch(r){t.reverse();for(let i of t)try{i()}catch{}throw this.auth._errorFactory.create("login-blocked",{originalMessage:r?.message})}}};async function Ys(n,e={}){return S(n,"GET","/v2/passwordPolicy",T(n,e))}var Xs=6,tn=class{constructor(e){var t,r,i,s;let o=e.customStrengthOptions;this.customStrengthOptions={},this.customStrengthOptions.minPasswordLength=(t=o.minPasswordLength)!==null&&t!==void 0?t:Xs,o.maxPasswordLength&&(this.customStrengthOptions.maxPasswordLength=o.maxPasswordLength),o.containsLowercaseCharacter!==void 0&&(this.customStrengthOptions.containsLowercaseLetter=o.containsLowercaseCharacter),o.containsUppercaseCharacter!==void 0&&(this.customStrengthOptions.containsUppercaseLetter=o.containsUppercaseCharacter),o.containsNumericCharacter!==void 0&&(this.customStrengthOptions.containsNumericCharacter=o.containsNumericCharacter),o.containsNonAlphanumericCharacter!==void 0&&(this.customStrengthOptions.containsNonAlphanumericCharacter=o.containsNonAlphanumericCharacter),this.enforcementState=e.enforcementState,this.enforcementState==="ENFORCEMENT_STATE_UNSPECIFIED"&&(this.enforcementState="OFF"),this.allowedNonAlphanumericCharacters=(i=(r=e.allowedNonAlphanumericCharacters)===null||r===void 0?void 0:r.join(""))!==null&&i!==void 0?i:"",this.forceUpgradeOnSignin=(s=e.forceUpgradeOnSignin)!==null&&s!==void 0?s:!1,this.schemaVersion=e.schemaVersion}validatePassword(e){var t,r,i,s,o,c;let a={isValid:!0,passwordPolicy:this};return this.validatePasswordLengthOptions(e,a),this.validatePasswordCharacterOptions(e,a),a.isValid&&(a.isValid=(t=a.meetsMinPasswordLength)!==null&&t!==void 0?t:!0),a.isValid&&(a.isValid=(r=a.meetsMaxPasswordLength)!==null&&r!==void 0?r:!0),a.isValid&&(a.isValid=(i=a.containsLowercaseLetter)!==null&&i!==void 0?i:!0),a.isValid&&(a.isValid=(s=a.containsUppercaseLetter)!==null&&s!==void 0?s:!0),a.isValid&&(a.isValid=(o=a.containsNumericCharacter)!==null&&o!==void 0?o:!0),a.isValid&&(a.isValid=(c=a.containsNonAlphanumericCharacter)!==null&&c!==void 0?c:!0),a}validatePasswordLengthOptions(e,t){let r=this.customStrengthOptions.minPasswordLength,i=this.customStrengthOptions.maxPasswordLength;r&&(t.meetsMinPasswordLength=e.length>=r),i&&(t.meetsMaxPasswordLength=e.length<=i)}validatePasswordCharacterOptions(e,t){this.updatePasswordCharacterOptionsStatuses(t,!1,!1,!1,!1);let r;for(let i=0;i<e.length;i++)r=e.charAt(i),this.updatePasswordCharacterOptionsStatuses(t,r>="a"&&r<="z",r>="A"&&r<="Z",r>="0"&&r<="9",this.allowedNonAlphanumericCharacters.includes(r))}updatePasswordCharacterOptionsStatuses(e,t,r,i,s){this.customStrengthOptions.containsLowercaseLetter&&(e.containsLowercaseLetter||(e.containsLowercaseLetter=t)),this.customStrengthOptions.containsUppercaseLetter&&(e.containsUppercaseLetter||(e.containsUppercaseLetter=r)),this.customStrengthOptions.containsNumericCharacter&&(e.containsNumericCharacter||(e.containsNumericCharacter=i)),this.customStrengthOptions.containsNonAlphanumericCharacter&&(e.containsNonAlphanumericCharacter||(e.containsNonAlphanumericCharacter=s))}};var nn=class{constructor(e,t,r,i){this.app=e,this.heartbeatServiceProvider=t,this.appCheckServiceProvider=r,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new Xe(this),this.idTokenSubscription=new Xe(this),this.beforeStateQueue=new en(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION=1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=Ir,this._agentRecaptchaConfig=null,this._tenantRecaptchaConfigs={},this._projectPasswordPolicy=null,this._tenantPasswordPolicies={},this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=e.name,this.clientVersion=i.sdkClientVersion}_initializeWithPersistence(e,t){return t&&(this._popupRedirectResolver=U(t)),this._initializationPromise=this.queue(async()=>{var r,i;if(!this._deleted&&(this.persistenceManager=await Ye.create(this,e),!this._deleted)){if(!((r=this._popupRedirectResolver)===null||r===void 0)&&r._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch{}await this.initializeCurrentUser(t),this.lastNotifiedUid=((i=this.currentUser)===null||i===void 0?void 0:i.uid)||null,!this._deleted&&(this._isInitialized=!0)}}),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;let e=await this.assertedPersistence.getCurrentUser();if(!(!this.currentUser&&!e)){if(this.currentUser&&e&&this.currentUser.uid===e.uid){this._currentUser._assign(e),await this.currentUser.getIdToken();return}await this._updateCurrentUser(e,!0)}}async initializeCurrentUser(e){var t;let r=await this.assertedPersistence.getCurrentUser(),i=r,s=!1;if(e&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();let o=(t=this.redirectUser)===null||t===void 0?void 0:t._redirectEventId,c=i?._redirectEventId,a=await this.tryRedirectSignIn(e);(!o||o===c)&&a?.user&&(i=a.user,s=!0)}if(!i)return this.directlySetCurrentUser(null);if(!i._redirectEventId){if(s)try{await this.beforeStateQueue.runMiddleware(i)}catch(o){i=r,this._popupRedirectResolver._overrideRedirectResult(this,()=>Promise.reject(o))}return i?this.reloadAndSetCurrentUserOrClear(i):this.directlySetCurrentUser(null)}return f(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===i._redirectEventId?this.directlySetCurrentUser(i):this.reloadAndSetCurrentUserOrClear(i)}async tryRedirectSignIn(e){let t=null;try{t=await this._popupRedirectResolver._completeRedirectFn(this,e,!0)}catch{await this._setRedirectUser(null)}return t}async reloadAndSetCurrentUserOrClear(e){try{await Ge(e)}catch(t){if(t?.code!=="auth/network-request-failed")return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(e)}useDeviceLanguage(){this.languageCode=Ms()}async _delete(){this._deleted=!0}async updateCurrentUser(e){let t=e?H(e):null;return t&&f(t.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(t&&t._clone(this))}async _updateCurrentUser(e,t=!1){if(!this._deleted)return e&&f(this.tenantId===e.tenantId,this,"tenant-id-mismatch"),t||await this.beforeStateQueue.runMiddleware(e),this.queue(async()=>{await this.directlySetCurrentUser(e),this.notifyAuthListeners()})}async signOut(){return await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0)}setPersistence(e){return this.queue(async()=>{await this.assertedPersistence.setPersistence(U(e))})}_getRecaptchaConfig(){return this.tenantId==null?this._agentRecaptchaConfig:this._tenantRecaptchaConfigs[this.tenantId]}async validatePassword(e){this._getPasswordPolicyInternal()||await this._updatePasswordPolicy();let t=this._getPasswordPolicyInternal();return t.schemaVersion!==this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION?Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version",{})):t.validatePassword(e)}_getPasswordPolicyInternal(){return this.tenantId===null?this._projectPasswordPolicy:this._tenantPasswordPolicies[this.tenantId]}async _updatePasswordPolicy(){let e=await Ys(this),t=new tn(e);this.tenantId===null?this._projectPasswordPolicy=t:this._tenantPasswordPolicies[this.tenantId]=t}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(e){this._errorFactory=new x("auth","Firebase",e())}onAuthStateChanged(e,t,r){return this.registerStateListener(this.authStateSubscription,e,t,r)}beforeAuthStateChanged(e,t){return this.beforeStateQueue.pushCallback(e,t)}onIdTokenChanged(e,t,r){return this.registerStateListener(this.idTokenSubscription,e,t,r)}authStateReady(){return new Promise((e,t)=>{if(this.currentUser)e();else{let r=this.onAuthStateChanged(()=>{r(),e()},t)}})}toJSON(){var e;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:(e=this._currentUser)===null||e===void 0?void 0:e.toJSON()}}async _setRedirectUser(e,t){let r=await this.getOrInitRedirectPersistenceManager(t);return e===null?r.removeCurrentUser():r.setCurrentUser(e)}async getOrInitRedirectPersistenceManager(e){if(!this.redirectPersistenceManager){let t=e&&U(e)||this._popupRedirectResolver;f(t,this,"argument-error"),this.redirectPersistenceManager=await Ye.create(this,[U(t._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(e){var t,r;return this._isInitialized&&await this.queue(async()=>{}),((t=this._currentUser)===null||t===void 0?void 0:t._redirectEventId)===e?this._currentUser:((r=this.redirectUser)===null||r===void 0?void 0:r._redirectEventId)===e?this.redirectUser:null}async _persistUserIfCurrent(e){if(e===this.currentUser)return this.queue(async()=>this.directlySetCurrentUser(e))}_notifyListenersIfCurrent(e){e===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 e,t;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);let r=(t=(e=this.currentUser)===null||e===void 0?void 0:e.uid)!==null&&t!==void 0?t:null;this.lastNotifiedUid!==r&&(this.lastNotifiedUid=r,this.authStateSubscription.next(this.currentUser))}registerStateListener(e,t,r,i){if(this._deleted)return()=>{};let s=typeof t=="function"?t:t.next.bind(t),o=!1,c=this._isInitialized?Promise.resolve():this._initializationPromise;if(f(c,this,"internal-error"),c.then(()=>{o||s(this.currentUser)}),typeof t=="function"){let a=e.addObserver(t,r,i);return()=>{o=!0,a()}}else{let a=e.addObserver(t);return()=>{o=!0,a()}}}async directlySetCurrentUser(e){this.currentUser&&this.currentUser!==e&&this._currentUser._stopProactiveRefresh(),e&&this.isProactiveRefreshEnabled&&e._startProactiveRefresh(),this.currentUser=e,e?await this.assertedPersistence.setCurrentUser(e):await this.assertedPersistence.removeCurrentUser()}queue(e){return this.operations=this.operations.then(e,e),this.operations}get assertedPersistence(){return f(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(e){!e||this.frameworks.includes(e)||(this.frameworks.push(e),this.frameworks.sort(),this.clientVersion=Nr(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){var e;let t={"X-Client-Version":this.clientVersion};this.app.options.appId&&(t["X-Firebase-gmpid"]=this.app.options.appId);let r=await((e=this.heartbeatServiceProvider.getImmediate({optional:!0}))===null||e===void 0?void 0:e.getHeartbeatsHeader());r&&(t["X-Firebase-Client"]=r);let i=await this._getAppCheckToken();return i&&(t["X-Firebase-AppCheck"]=i),t}async _getAppCheckToken(){var e;let t=await((e=this.appCheckServiceProvider.getImmediate({optional:!0}))===null||e===void 0?void 0:e.getToken());return t?.error&&Cs(`Error while retrieving App Check token: ${t.error}`),t?.token}};function pe(n){return H(n)}var Xe=class{constructor(e){this.auth=e,this.observer=null,this.addObserver=Wn(t=>this.observer=t)}get next(){return f(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}};function Qs(){var n,e;return(e=(n=document.getElementsByTagName("head"))===null||n===void 0?void 0:n[0])!==null&&e!==void 0?e:document}function Dr(n){return new Promise((e,t)=>{let r=document.createElement("script");r.setAttribute("src",n),r.onload=e,r.onerror=i=>{let s=L("internal-error");s.customData=i,t(s)},r.type="text/javascript",r.charset="UTF-8",Qs().appendChild(r)})}function Lr(n){return`__${n}${Math.floor(Math.random()*1e6)}`}var Zs="https://www.google.com/recaptcha/enterprise.js?render=",eo="recaptcha-enterprise",to="NO_RECAPTCHA",rn=class{constructor(e){this.type=eo,this.auth=pe(e)}async verify(e="verify",t=!1){async function r(s){if(!t){if(s.tenantId==null&&s._agentRecaptchaConfig!=null)return s._agentRecaptchaConfig.siteKey;if(s.tenantId!=null&&s._tenantRecaptchaConfigs[s.tenantId]!==void 0)return s._tenantRecaptchaConfigs[s.tenantId].siteKey}return new Promise(async(o,c)=>{Vs(s,{clientType:"CLIENT_TYPE_WEB",version:"RECAPTCHA_ENTERPRISE"}).then(a=>{if(a.recaptchaKey===void 0)c(new Error("recaptcha Enterprise site key undefined"));else{let l=new Xt(a);return s.tenantId==null?s._agentRecaptchaConfig=l:s._tenantRecaptchaConfigs[s.tenantId]=l,o(l.siteKey)}}).catch(a=>{c(a)})})}function i(s,o,c){let a=window.grecaptcha;rr(a)?a.enterprise.ready(()=>{a.enterprise.execute(s,{action:e}).then(l=>{o(l)}).catch(()=>{o(to)})}):c(Error("No reCAPTCHA enterprise script loaded."))}return new Promise((s,o)=>{r(this.auth).then(c=>{if(!t&&rr(window.grecaptcha))i(c,s,o);else{if(typeof window>"u"){o(new Error("RecaptchaVerifier is only supported in browser"));return}Dr(Zs+c).then(()=>{i(c,s,o)}).catch(a=>{o(a)})}}).catch(c=>{o(c)})})}};async function or(n,e,t,r=!1){let i=new rn(n),s;try{s=await i.verify(t)}catch{s=await i.verify(t,!0)}let o=Object.assign({},e);return r?Object.assign(o,{captchaResp:s}):Object.assign(o,{captchaResponse:s}),Object.assign(o,{clientType:"CLIENT_TYPE_WEB"}),Object.assign(o,{recaptchaVersion:"RECAPTCHA_ENTERPRISE"}),o}async function no(n,e,t,r){var i;if(!((i=n._getRecaptchaConfig())===null||i===void 0)&&i.isProviderEnabled("EMAIL_PASSWORD_PROVIDER")){let s=await or(n,e,t,t==="getOobCode");return r(n,s)}else return r(n,e).catch(async s=>{if(s.code==="auth/missing-recaptcha-token"){console.log(`${t} is protected by reCAPTCHA Enterprise for this project. Automatically triggering the reCAPTCHA flow and restarting the flow.`);let o=await or(n,e,t,t==="getOobCode");return r(n,o)}else return Promise.reject(s)})}function Mr(n,e){let t=zt(n,"auth");if(t.isInitialized()){let i=t.getImmediate(),s=t.getOptions();if(se(s,e??{}))return i;O(i,"already-initialized")}return t.initialize({options:e})}function ro(n,e){let t=e?.persistence||[],r=(Array.isArray(t)?t:[t]).map(U);e?.errorMap&&n._updateErrorMap(e.errorMap),n._initializeWithPersistence(r,e?.popupRedirectResolver)}function xr(n,e,t){let r=pe(n);f(r._canInitEmulator,r,"emulator-config-failed"),f(/^https?:\/\//.test(e),r,"invalid-emulator-scheme");let i=!!t?.disableWarnings,s=Ur(e),{host:o,port:c}=io(e),a=c===null?"":`:${c}`;r.config.emulator={url:`${s}//${o}${a}/`},r.settings.appVerificationDisabledForTesting=!0,r.emulatorConfig=Object.freeze({host:o,port:c,protocol:s.replace(":",""),options:Object.freeze({disableWarnings:i})}),i||so()}function Ur(n){let e=n.indexOf(":");return e<0?"":n.substr(0,e+1)}function io(n){let e=Ur(n),t=/(\/\/)?([^?#/]+)/.exec(n.substr(e.length));if(!t)return{host:"",port:null};let r=t[2].split("@").pop()||"",i=/^(\[[^\]]+\])(:|$)/.exec(r);if(i){let s=i[1];return{host:s,port:ar(r.substr(s.length+1))}}else{let[s,o]=r.split(":");return{host:s,port:ar(o)}}}function ar(n){if(!n)return null;let e=Number(n);return isNaN(e)?null:e}function so(){function n(){let e=document.createElement("p"),t=e.style;e.innerText="Running in emulator mode. Do not use with production credentials.",t.position="fixed",t.width="100%",t.backgroundColor="#ffffff",t.border=".1em solid #000000",t.color="#b50000",t.bottom="0px",t.left="0px",t.margin="0px",t.zIndex="10000",t.textAlign="center",e.classList.add("firebase-emulator-warning"),document.body.appendChild(e)}typeof console<"u"&&typeof console.info=="function"&&console.info("WARNING: You are using the Auth Emulator, which is intended for local testing only. Do not use with production credentials."),typeof window<"u"&&typeof document<"u"&&(document.readyState==="loading"?window.addEventListener("DOMContentLoaded",n):n())}var Y=class{constructor(e,t){this.providerId=e,this.signInMethod=t}toJSON(){return D("not implemented")}_getIdTokenResponse(e){return D("not implemented")}_linkToIdToken(e,t){return D("not implemented")}_getReauthenticationResolver(e){return D("not implemented")}};async function oo(n,e){return S(n,"POST","/v1/accounts:update",e)}async function ao(n,e){return te(n,"POST","/v1/accounts:signInWithPassword",T(n,e))}async function co(n,e){return te(n,"POST","/v1/accounts:signInWithEmailLink",T(n,e))}async function uo(n,e){return te(n,"POST","/v1/accounts:signInWithEmailLink",T(n,e))}var be=class n extends Y{constructor(e,t,r,i=null){super("password",r),this._email=e,this._password=t,this._tenantId=i}static _fromEmailAndPassword(e,t){return new n(e,t,"password")}static _fromEmailAndCode(e,t,r=null){return new n(e,t,"emailLink",r)}toJSON(){return{email:this._email,password:this._password,signInMethod:this.signInMethod,tenantId:this._tenantId}}static fromJSON(e){let t=typeof e=="string"?JSON.parse(e):e;if(t?.email&&t?.password){if(t.signInMethod==="password")return this._fromEmailAndPassword(t.email,t.password);if(t.signInMethod==="emailLink")return this._fromEmailAndCode(t.email,t.password,t.tenantId)}return null}async _getIdTokenResponse(e){switch(this.signInMethod){case"password":let t={returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return no(e,t,"signInWithPassword",ao);case"emailLink":return co(e,{email:this._email,oobCode:this._password});default:O(e,"internal-error")}}async _linkToIdToken(e,t){switch(this.signInMethod){case"password":return oo(e,{idToken:t,returnSecureToken:!0,email:this._email,password:this._password});case"emailLink":return uo(e,{idToken:t,email:this._email,oobCode:this._password});default:O(e,"internal-error")}}_getReauthenticationResolver(e){return this._getIdTokenResponse(e)}};async function he(n,e){return te(n,"POST","/v1/accounts:signInWithIdp",T(n,e))}var lo="http://localhost",X=class n extends Y{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(e){let t=new n(e.providerId,e.signInMethod);return e.idToken||e.accessToken?(e.idToken&&(t.idToken=e.idToken),e.accessToken&&(t.accessToken=e.accessToken),e.nonce&&!e.pendingToken&&(t.nonce=e.nonce),e.pendingToken&&(t.pendingToken=e.pendingToken)):e.oauthToken&&e.oauthTokenSecret?(t.accessToken=e.oauthToken,t.secret=e.oauthTokenSecret):O("argument-error"),t}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(e){let t=typeof e=="string"?JSON.parse(e):e,{providerId:r,signInMethod:i}=t,s=Fe(t,["providerId","signInMethod"]);if(!r||!i)return null;let o=new n(r,i);return o.idToken=s.idToken||void 0,o.accessToken=s.accessToken||void 0,o.secret=s.secret,o.nonce=s.nonce,o.pendingToken=s.pendingToken||null,o}_getIdTokenResponse(e){let t=this.buildRequest();return he(e,t)}_linkToIdToken(e,t){let r=this.buildRequest();return r.idToken=t,he(e,r)}_getReauthenticationResolver(e){let t=this.buildRequest();return t.autoCreate=!1,he(e,t)}buildRequest(){let e={requestUri:lo,returnSecureToken:!0};if(this.pendingToken)e.pendingToken=this.pendingToken;else{let t={};this.idToken&&(t.id_token=this.idToken),this.accessToken&&(t.access_token=this.accessToken),this.secret&&(t.oauth_token_secret=this.secret),t.providerId=this.providerId,this.nonce&&!this.pendingToken&&(t.nonce=this.nonce),e.postBody=oe(t)}return e}};async function ho(n,e){return S(n,"POST","/v1/accounts:sendVerificationCode",T(n,e))}async function fo(n,e){return te(n,"POST","/v1/accounts:signInWithPhoneNumber",T(n,e))}async function po(n,e){let t=await te(n,"POST","/v1/accounts:signInWithPhoneNumber",T(n,e));if(t.temporaryProof)throw Ie(n,"account-exists-with-different-credential",t);return t}var _o={USER_NOT_FOUND:"user-not-found"};async function mo(n,e){let t=Object.assign(Object.assign({},e),{operation:"REAUTH"});return te(n,"POST","/v1/accounts:signInWithPhoneNumber",T(n,t),_o)}var Te=class n extends Y{constructor(e){super("phone","phone"),this.params=e}static _fromVerification(e,t){return new n({verificationId:e,verificationCode:t})}static _fromTokenResponse(e,t){return new n({phoneNumber:e,temporaryProof:t})}_getIdTokenResponse(e){return fo(e,this._makeVerificationRequest())}_linkToIdToken(e,t){return po(e,Object.assign({idToken:t},this._makeVerificationRequest()))}_getReauthenticationResolver(e){return mo(e,this._makeVerificationRequest())}_makeVerificationRequest(){let{temporaryProof:e,phoneNumber:t,verificationId:r,verificationCode:i}=this.params;return e&&t?{temporaryProof:e,phoneNumber:t}:{sessionInfo:r,code:i}}toJSON(){let e={providerId:this.providerId};return this.params.phoneNumber&&(e.phoneNumber=this.params.phoneNumber),this.params.temporaryProof&&(e.temporaryProof=this.params.temporaryProof),this.params.verificationCode&&(e.verificationCode=this.params.verificationCode),this.params.verificationId&&(e.verificationId=this.params.verificationId),e}static fromJSON(e){typeof e=="string"&&(e=JSON.parse(e));let{verificationId:t,verificationCode:r,phoneNumber:i,temporaryProof:s}=e;return!r&&!t&&!i&&!s?null:new n({verificationId:t,verificationCode:r,phoneNumber:i,temporaryProof:s})}};function go(n){switch(n){case"recoverEmail":return"RECOVER_EMAIL";case"resetPassword":return"PASSWORD_RESET";case"signIn":return"EMAIL_SIGNIN";case"verifyEmail":return"VERIFY_EMAIL";case"verifyAndChangeEmail":return"VERIFY_AND_CHANGE_EMAIL";case"revertSecondFactorAddition":return"REVERT_SECOND_FACTOR_ADDITION";default:return null}}function vo(n){let e=ae(ce(n)).link,t=e?ae(ce(e)).deep_link_id:null,r=ae(ce(n)).deep_link_id;return(r?ae(ce(r)).link:null)||r||t||e||n}var Qe=class n{constructor(e){var t,r,i,s,o,c;let a=ae(ce(e)),l=(t=a.apiKey)!==null&&t!==void 0?t:null,d=(r=a.oobCode)!==null&&r!==void 0?r:null,u=go((i=a.mode)!==null&&i!==void 0?i:null);f(l&&d&&u,"argument-error"),this.apiKey=l,this.operation=u,this.code=d,this.continueUrl=(s=a.continueUrl)!==null&&s!==void 0?s:null,this.languageCode=(o=a.languageCode)!==null&&o!==void 0?o:null,this.tenantId=(c=a.tenantId)!==null&&c!==void 0?c:null}static parseLink(e){let t=vo(e);try{return new n(t)}catch{return null}}};var fe=class n{constructor(){this.providerId=n.PROVIDER_ID}static credential(e,t){return be._fromEmailAndPassword(e,t)}static credentialWithLink(e,t){let r=Qe.parseLink(t);return f(r,"argument-error"),be._fromEmailAndCode(e,r.code,r.tenantId)}};fe.PROVIDER_ID="password";fe.EMAIL_PASSWORD_SIGN_IN_METHOD="password";fe.EMAIL_LINK_SIGN_IN_METHOD="emailLink";var Ae=class{constructor(e){this.providerId=e,this.defaultLanguageCode=null,this.customParameters={}}setDefaultLanguage(e){this.defaultLanguageCode=e}setCustomParameters(e){return this.customParameters=e,this}getCustomParameters(){return this.customParameters}};var Q=class extends Ae{constructor(){super(...arguments),this.scopes=[]}addScope(e){return this.scopes.includes(e)||this.scopes.push(e),this}getScopes(){return[...this.scopes]}};var Se=class n extends Q{constructor(){super("facebook.com")}static credential(e){return X._fromParams({providerId:n.PROVIDER_ID,signInMethod:n.FACEBOOK_SIGN_IN_METHOD,accessToken:e})}static credentialFromResult(e){return n.credentialFromTaggedObject(e)}static credentialFromError(e){return n.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e||!("oauthAccessToken"in e)||!e.oauthAccessToken)return null;try{return n.credential(e.oauthAccessToken)}catch{return null}}};Se.FACEBOOK_SIGN_IN_METHOD="facebook.com";Se.PROVIDER_ID="facebook.com";var Z=class n extends Q{constructor(){super("google.com"),this.addScope("profile")}static credential(e,t){return X._fromParams({providerId:n.PROVIDER_ID,signInMethod:n.GOOGLE_SIGN_IN_METHOD,idToken:e,accessToken:t})}static credentialFromResult(e){return n.credentialFromTaggedObject(e)}static credentialFromError(e){return n.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{oauthIdToken:t,oauthAccessToken:r}=e;if(!t&&!r)return null;try{return n.credential(t,r)}catch{return null}}};Z.GOOGLE_SIGN_IN_METHOD="google.com";Z.PROVIDER_ID="google.com";var Re=class n extends Q{constructor(){super("github.com")}static credential(e){return X._fromParams({providerId:n.PROVIDER_ID,signInMethod:n.GITHUB_SIGN_IN_METHOD,accessToken:e})}static credentialFromResult(e){return n.credentialFromTaggedObject(e)}static credentialFromError(e){return n.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e||!("oauthAccessToken"in e)||!e.oauthAccessToken)return null;try{return n.credential(e.oauthAccessToken)}catch{return null}}};Re.GITHUB_SIGN_IN_METHOD="github.com";Re.PROVIDER_ID="github.com";var ke=class n extends Q{constructor(){super("twitter.com")}static credential(e,t){return X._fromParams({providerId:n.PROVIDER_ID,signInMethod:n.TWITTER_SIGN_IN_METHOD,oauthToken:e,oauthTokenSecret:t})}static credentialFromResult(e){return n.credentialFromTaggedObject(e)}static credentialFromError(e){return n.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{oauthAccessToken:t,oauthTokenSecret:r}=e;if(!t||!r)return null;try{return n.credential(t,r)}catch{return null}}};ke.TWITTER_SIGN_IN_METHOD="twitter.com";ke.PROVIDER_ID="twitter.com";var Oe=class n{constructor(e){this.user=e.user,this.providerId=e.providerId,this._tokenResponse=e._tokenResponse,this.operationType=e.operationType}static async _fromIdTokenResponse(e,t,r,i=!1){let s=await we._fromIdTokenResponse(e,r,i),o=cr(r);return new n({user:s,providerId:o,_tokenResponse:r,operationType:t})}static async _forOperation(e,t,r){await e._updateTokensIfNecessary(r,!0);let i=cr(r);return new n({user:e,providerId:i,_tokenResponse:r,operationType:t})}};function cr(n){return n.providerId?n.providerId:"phoneNumber"in n?"phone":null}var sn=class n extends P{constructor(e,t,r,i){var s;super(t.code,t.message),this.operationType=r,this.user=i,Object.setPrototypeOf(this,n.prototype),this.customData={appName:e.name,tenantId:(s=e.tenantId)!==null&&s!==void 0?s:void 0,_serverResponse:t.customData._serverResponse,operationType:r}}static _fromErrorAndOperation(e,t,r,i){return new n(e,t,r,i)}};function Fr(n,e,t,r){return(e==="reauthenticate"?t._getReauthenticationResolver(n):t._getIdTokenResponse(n)).catch(s=>{throw s.code==="auth/multi-factor-auth-required"?sn._fromErrorAndOperation(n,s,e,r):s})}async function Io(n,e,t=!1){let r=await Ee(n,e._linkToIdToken(n.auth,await n.getIdToken()),t);return Oe._forOperation(n,"link",r)}async function yo(n,e,t=!1){let{auth:r}=n,i="reauthenticate";try{let s=await Ee(n,Fr(r,i,e,n),t);f(s.idToken,r,"internal-error");let o=_n(s.idToken);f(o,r,"internal-error");let{sub:c}=o;return f(n.uid===c,r,"user-mismatch"),Oe._forOperation(n,i,s)}catch(s){throw s?.code==="auth/user-not-found"&&O(r,"user-mismatch"),s}}async function Eo(n,e,t=!1){let r="signIn",i=await Fr(n,r,e),s=await Oe._fromIdTokenResponse(n,r,i);return t||await n._updateCurrentUser(s.user),s}function Vr(n,e,t,r){return H(n).onIdTokenChanged(e,t,r)}function Hr(n,e,t){return H(n).beforeAuthStateChanged(e,t)}function wo(n,e){return S(n,"POST","/v2/accounts/mfaEnrollment:start",T(n,e))}function bo(n,e){return S(n,"POST","/v2/accounts/mfaEnrollment:finalize",T(n,e))}function To(n,e){return S(n,"POST","/v2/accounts/mfaEnrollment:start",T(n,e))}function Ao(n,e){return S(n,"POST","/v2/accounts/mfaEnrollment:finalize",T(n,e))}var Ze="__sak";var et=class{constructor(e,t){this.storageRetriever=e,this.type=t}_isAvailable(){try{return this.storage?(this.storage.setItem(Ze,"1"),this.storage.removeItem(Ze),Promise.resolve(!0)):Promise.resolve(!1)}catch{return Promise.resolve(!1)}}_set(e,t){return this.storage.setItem(e,JSON.stringify(t)),Promise.resolve()}_get(e){let t=this.storage.getItem(e);return Promise.resolve(t?JSON.parse(t):null)}_remove(e){return this.storage.removeItem(e),Promise.resolve()}get storage(){return this.storageRetriever()}};function So(){let n=b();return mn(n)||pt(n)}var Ro=1e3,ko=10,tt=class extends et{constructor(){super(()=>window.localStorage,"LOCAL"),this.boundEventHandler=(e,t)=>this.onStorageEvent(e,t),this.listeners={},this.localCache={},this.pollTimer=null,this.safariLocalStorageNotSynced=So()&&Js(),this.fallbackToPolling=Cr(),this._shouldAllowMigration=!0}forAllChangedKeys(e){for(let t of Object.keys(this.listeners)){let r=this.storage.getItem(t),i=this.localCache[t];r!==i&&e(t,i,r)}}onStorageEvent(e,t=!1){if(!e.key){this.forAllChangedKeys((o,c,a)=>{this.notifyListeners(o,a)});return}let r=e.key;if(t?this.detachListener():this.stopPolling(),this.safariLocalStorageNotSynced){let o=this.storage.getItem(r);if(e.newValue!==o)e.newValue!==null?this.storage.setItem(r,e.newValue):this.storage.removeItem(r);else if(this.localCache[r]===e.newValue&&!t)return}let i=()=>{let o=this.storage.getItem(r);!t&&this.localCache[r]===o||this.notifyListeners(r,o)},s=this.storage.getItem(r);Ks()&&s!==e.newValue&&e.newValue!==e.oldValue?setTimeout(i,ko):i()}notifyListeners(e,t){this.localCache[e]=t;let r=this.listeners[e];if(r)for(let i of Array.from(r))i(t&&JSON.parse(t))}startPolling(){this.stopPolling(),this.pollTimer=setInterval(()=>{this.forAllChangedKeys((e,t,r)=>{this.onStorageEvent(new StorageEvent("storage",{key:e,oldValue:t,newValue:r}),!0)})},Ro)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(e,t){Object.keys(this.listeners).length===0&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[e]||(this.listeners[e]=new Set,this.localCache[e]=this.storage.getItem(e)),this.listeners[e].add(t)}_removeListener(e,t){this.listeners[e]&&(this.listeners[e].delete(t),this.listeners[e].size===0&&delete this.listeners[e]),Object.keys(this.listeners).length===0&&(this.detachListener(),this.stopPolling())}async _set(e,t){await super._set(e,t),this.localCache[e]=JSON.stringify(t)}async _get(e){let t=await super._get(e);return this.localCache[e]=JSON.stringify(t),t}async _remove(e){await super._remove(e),delete this.localCache[e]}};tt.type="LOCAL";var Wr=tt;var nt=class extends et{constructor(){super(()=>window.sessionStorage,"SESSION")}_addListener(e,t){}_removeListener(e,t){}};nt.type="SESSION";var gn=nt;function Oo(n){return Promise.all(n.map(async e=>{try{return{fulfilled:!0,value:await e}}catch(t){return{fulfilled:!1,reason:t}}}))}var rt=class n{constructor(e){this.eventTarget=e,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(e){let t=this.receivers.find(i=>i.isListeningto(e));if(t)return t;let r=new n(e);return this.receivers.push(r),r}isListeningto(e){return this.eventTarget===e}async handleEvent(e){let t=e,{eventId:r,eventType:i,data:s}=t.data,o=this.handlersMap[i];if(!o?.size)return;t.ports[0].postMessage({status:"ack",eventId:r,eventType:i});let c=Array.from(o).map(async l=>l(t.origin,s)),a=await Oo(c);t.ports[0].postMessage({status:"done",eventId:r,eventType:i,response:a})}_subscribe(e,t){Object.keys(this.handlersMap).length===0&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[e]||(this.handlersMap[e]=new Set),this.handlersMap[e].add(t)}_unsubscribe(e,t){this.handlersMap[e]&&t&&this.handlersMap[e].delete(t),(!t||this.handlersMap[e].size===0)&&delete this.handlersMap[e],Object.keys(this.handlersMap).length===0&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}};rt.receivers=[];function vn(n="",e=10){let t="";for(let r=0;r<e;r++)t+=Math.floor(Math.random()*10);return n+t}var on=class{constructor(e){this.target=e,this.handlers=new Set}removeMessageHandler(e){e.messageChannel&&(e.messageChannel.port1.removeEventListener("message",e.onMessage),e.messageChannel.port1.close()),this.handlers.delete(e)}async _send(e,t,r=50){let i=typeof MessageChannel<"u"?new MessageChannel:null;if(!i)throw new Error("connection_unavailable");let s,o;return new Promise((c,a)=>{let l=vn("",20);i.port1.start();let d=setTimeout(()=>{a(new Error("unsupported_event"))},r);o={messageChannel:i,onMessage(u){let _=u;if(_.data.eventId===l)switch(_.data.status){case"ack":clearTimeout(d),s=setTimeout(()=>{a(new Error("timeout"))},3e3);break;case"done":clearTimeout(s),c(_.data.response);break;default:clearTimeout(d),clearTimeout(s),a(new Error("invalid_response"));break}}},this.handlers.add(o),i.port1.addEventListener("message",o.onMessage),this.target.postMessage({eventType:e,eventId:l,data:t},[i.port2])}).finally(()=>{o&&this.removeMessageHandler(o)})}};function M(){return window}function Po(n){M().location.href=n}function Br(){return typeof M().WorkerGlobalScope<"u"&&typeof M().importScripts=="function"}async function Co(){if(!navigator?.serviceWorker)return null;try{return(await navigator.serviceWorker.ready).active}catch{return null}}function No(){var n;return((n=navigator?.serviceWorker)===null||n===void 0?void 0:n.controller)||null}function Do(){return Br()?self:null}var jr="firebaseLocalStorageDb",Lo=1,it="firebaseLocalStorage",$r="fbase_key",ee=class{constructor(e){this.request=e}toPromise(){return new Promise((e,t)=>{this.request.addEventListener("success",()=>{e(this.request.result)}),this.request.addEventListener("error",()=>{t(this.request.error)})})}};function _t(n,e){return n.transaction([it],e?"readwrite":"readonly").objectStore(it)}function Mo(){let n=indexedDB.deleteDatabase(jr);return new ee(n).toPromise()}function an(){let n=indexedDB.open(jr,Lo);return new Promise((e,t)=>{n.addEventListener("error",()=>{t(n.error)}),n.addEventListener("upgradeneeded",()=>{let r=n.result;try{r.createObjectStore(it,{keyPath:$r})}catch(i){t(i)}}),n.addEventListener("success",async()=>{let r=n.result;r.objectStoreNames.contains(it)?e(r):(r.close(),await Mo(),e(await an()))})})}async function ur(n,e,t){let r=_t(n,!0).put({[$r]:e,value:t});return new ee(r).toPromise()}async function xo(n,e){let t=_t(n,!1).get(e),r=await new ee(t).toPromise();return r===void 0?null:r.value}function lr(n,e){let t=_t(n,!0).delete(e);return new ee(t).toPromise()}var Uo=800,Fo=3,st=class{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:(this.db=await an(),this.db)}async _withRetries(e){let t=0;for(;;)try{let r=await this._openDb();return await e(r)}catch(r){if(t++>Fo)throw r;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return Br()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=rt._getInstance(Do()),this.receiver._subscribe("keyChanged",async(e,t)=>({keyProcessed:(await this._poll()).includes(t.key)})),this.receiver._subscribe("ping",async(e,t)=>["keyChanged"])}async initializeSender(){var e,t;if(this.activeServiceWorker=await Co(),!this.activeServiceWorker)return;this.sender=new on(this.activeServiceWorker);let r=await this.sender._send("ping",{},800);r&&!((e=r[0])===null||e===void 0)&&e.fulfilled&&!((t=r[0])===null||t===void 0)&&t.value.includes("keyChanged")&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(e){if(!(!this.sender||!this.activeServiceWorker||No()!==this.activeServiceWorker))try{await this.sender._send("keyChanged",{key:e},this.serviceWorkerReceiverAvailable?800:50)}catch{}}async _isAvailable(){try{if(!indexedDB)return!1;let e=await an();return await ur(e,Ze,"1"),await lr(e,Ze),!0}catch{}return!1}async _withPendingWrite(e){this.pendingWrites++;try{await e()}finally{this.pendingWrites--}}async _set(e,t){return this._withPendingWrite(async()=>(await this._withRetries(r=>ur(r,e,t)),this.localCache[e]=t,this.notifyServiceWorker(e)))}async _get(e){let t=await this._withRetries(r=>xo(r,e));return this.localCache[e]=t,t}async _remove(e){return this._withPendingWrite(async()=>(await this._withRetries(t=>lr(t,e)),delete this.localCache[e],this.notifyServiceWorker(e)))}async _poll(){let e=await this._withRetries(i=>{let s=_t(i,!1).getAll();return new ee(s).toPromise()});if(!e)return[];if(this.pendingWrites!==0)return[];let t=[],r=new Set;for(let{fbase_key:i,value:s}of e)r.add(i),JSON.stringify(this.localCache[i])!==JSON.stringify(s)&&(this.notifyListeners(i,s),t.push(i));for(let i of Object.keys(this.localCache))this.localCache[i]&&!r.has(i)&&(this.notifyListeners(i,null),t.push(i));return t}notifyListeners(e,t){this.localCache[e]=t;let r=this.listeners[e];if(r)for(let i of Array.from(r))i(t)}startPolling(){this.stopPolling(),this.pollTimer=setInterval(async()=>this._poll(),Uo)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(e,t){Object.keys(this.listeners).length===0&&this.startPolling(),this.listeners[e]||(this.listeners[e]=new Set,this._get(e)),this.listeners[e].add(t)}_removeListener(e,t){this.listeners[e]&&(this.listeners[e].delete(t),this.listeners[e].size===0&&delete this.listeners[e]),Object.keys(this.listeners).length===0&&this.stopPolling()}};st.type="LOCAL";var zr=st;function Vo(n,e){return S(n,"POST","/v2/accounts/mfaSignIn:start",T(n,e))}function Ho(n,e){return S(n,"POST","/v2/accounts/mfaSignIn:finalize",T(n,e))}function Wo(n,e){return S(n,"POST","/v2/accounts/mfaSignIn:finalize",T(n,e))}var yc=Lr("rcb"),Ec=new J(3e4,6e4);var Bo="recaptcha";async function jo(n,e,t){var r;let i=await t.verify();try{f(typeof i=="string",n,"argument-error"),f(t.type===Bo,n,"argument-error");let s;if(typeof e=="string"?s={phoneNumber:e}:s=e,"session"in s){let o=s.session;if("phoneNumber"in s)return f(o.type==="enroll",n,"internal-error"),(await wo(n,{idToken:o.credential,phoneEnrollmentInfo:{phoneNumber:s.phoneNumber,recaptchaToken:i}})).phoneSessionInfo.sessionInfo;{f(o.type==="signin",n,"internal-error");let c=((r=s.multiFactorHint)===null||r===void 0?void 0:r.uid)||s.multiFactorUid;return f(c,n,"missing-multi-factor-info"),(await Vo(n,{mfaPendingCredential:o.credential,mfaEnrollmentId:c,phoneSignInInfo:{recaptchaToken:i}})).phoneResponseInfo.sessionInfo}}else{let{sessionInfo:o}=await ho(n,{phoneNumber:s.phoneNumber,recaptchaToken:i});return o}}finally{t._reset()}}var Pe=class n{constructor(e){this.providerId=n.PROVIDER_ID,this.auth=pe(e)}verifyPhoneNumber(e,t){return jo(this.auth,e,H(t))}static credential(e,t){return Te._fromVerification(e,t)}static credentialFromResult(e){let t=e;return n.credentialFromTaggedObject(t)}static credentialFromError(e){return n.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{phoneNumber:t,temporaryProof:r}=e;return t&&r?Te._fromTokenResponse(t,r):null}};Pe.PROVIDER_ID="phone";Pe.PHONE_SIGN_IN_METHOD="phone";function qr(n,e){return e?U(e):(f(n._popupRedirectResolver,n,"argument-error"),n._popupRedirectResolver)}var Ce=class extends Y{constructor(e){super("custom","custom"),this.params=e}_getIdTokenResponse(e){return he(e,this._buildIdpRequest())}_linkToIdToken(e,t){return he(e,this._buildIdpRequest(t))}_getReauthenticationResolver(e){return he(e,this._buildIdpRequest())}_buildIdpRequest(e){let t={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 e&&(t.idToken=e),t}};function $o(n){return Eo(n.auth,new Ce(n),n.bypassAuthState)}function zo(n){let{auth:e,user:t}=n;return f(t,e,"internal-error"),yo(t,new Ce(n),n.bypassAuthState)}async function qo(n){let{auth:e,user:t}=n;return f(t,e,"internal-error"),Io(t,new Ce(n),n.bypassAuthState)}var ot=class{constructor(e,t,r,i,s=!1){this.auth=e,this.resolver=r,this.user=i,this.bypassAuthState=s,this.pendingPromise=null,this.eventManager=null,this.filter=Array.isArray(t)?t:[t]}execute(){return new Promise(async(e,t)=>{this.pendingPromise={resolve:e,reject:t};try{this.eventManager=await this.resolver._initialize(this.auth),await this.onExecution(),this.eventManager.registerConsumer(this)}catch(r){this.reject(r)}})}async onAuthEvent(e){let{urlResponse:t,sessionId:r,postBody:i,tenantId:s,error:o,type:c}=e;if(o){this.reject(o);return}let a={auth:this.auth,requestUri:t,sessionId:r,tenantId:s||void 0,postBody:i||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(c)(a))}catch(l){this.reject(l)}}onError(e){this.reject(e)}getIdpTask(e){switch(e){case"signInViaPopup":case"signInViaRedirect":return $o;case"linkViaPopup":case"linkViaRedirect":return qo;case"reauthViaPopup":case"reauthViaRedirect":return zo;default:O(this.auth,"internal-error")}}resolve(e){F(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(e),this.unregisterAndCleanUp()}reject(e){F(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.reject(e),this.unregisterAndCleanUp()}unregisterAndCleanUp(){this.eventManager&&this.eventManager.unregisterConsumer(this),this.pendingPromise=null,this.cleanUp()}};var Go=new J(2e3,1e4);async function In(n,e,t){let r=pe(n);Ns(n,e,Ae);let i=qr(r,t);return new at(r,"signInViaPopup",e,i).executeNotNull()}var at=class n extends ot{constructor(e,t,r,i,s){super(e,t,i,s),this.provider=r,this.authWindow=null,this.pollId=null,n.currentPopupAction&&n.currentPopupAction.cancel(),n.currentPopupAction=this}async executeNotNull(){let e=await this.execute();return f(e,this.auth,"internal-error"),e}async onExecution(){F(this.filter.length===1,"Popup operations only handle one event");let e=vn();this.authWindow=await this.resolver._openPopup(this.auth,this.provider,this.filter[0],e),this.authWindow.associatedEvent=e,this.resolver._originValidation(this.auth).catch(t=>{this.reject(t)}),this.resolver._isIframeWebStorageSupported(this.auth,t=>{t||this.reject(L(this.auth,"web-storage-unsupported"))}),this.pollUserCancellation()}get eventId(){var e;return((e=this.authWindow)===null||e===void 0?void 0:e.associatedEvent)||null}cancel(){this.reject(L(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,n.currentPopupAction=null}pollUserCancellation(){let e=()=>{var t,r;if(!((r=(t=this.authWindow)===null||t===void 0?void 0:t.window)===null||r===void 0)&&r.closed){this.pollId=window.setTimeout(()=>{this.pollId=null,this.reject(L(this.auth,"popup-closed-by-user"))},8e3);return}this.pollId=window.setTimeout(e,Go.get())};e()}};at.currentPopupAction=null;var Ko="pendingRedirect",Be=new Map,cn=class extends ot{constructor(e,t,r=!1){super(e,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],t,void 0,r),this.eventId=null}async execute(){let e=Be.get(this.auth._key());if(!e){try{let r=await Jo(this.resolver,this.auth)?await super.execute():null;e=()=>Promise.resolve(r)}catch(t){e=()=>Promise.reject(t)}Be.set(this.auth._key(),e)}return this.bypassAuthState||Be.set(this.auth._key(),()=>Promise.resolve(null)),e()}async onAuthEvent(e){if(e.type==="signInViaRedirect")return super.onAuthEvent(e);if(e.type==="unknown"){this.resolve(null);return}if(e.eventId){let t=await this.auth._redirectUserForId(e.eventId);if(t)return this.user=t,super.onAuthEvent(e);this.resolve(null)}}async onExecution(){}cleanUp(){}};async function Jo(n,e){let t=Qo(e),r=Xo(n);if(!await r._isAvailable())return!1;let i=await r._get(t)==="true";return await r._remove(t),i}function Yo(n,e){Be.set(n._key(),e)}function Xo(n){return U(n._redirectPersistence)}function Qo(n){return We(Ko,n.config.apiKey,n.name)}async function Zo(n,e,t=!1){let r=pe(n),i=qr(r,e),o=await new cn(r,i,t).execute();return o&&!t&&(delete o.user._redirectEventId,await r._persistUserIfCurrent(o.user),await r._setRedirectUser(null,e)),o}var ea=10*60*1e3,un=class{constructor(e){this.auth=e,this.cachedEventUids=new Set,this.consumers=new Set,this.queuedRedirectEvent=null,this.hasHandledPotentialRedirect=!1,this.lastProcessedEventTime=Date.now()}registerConsumer(e){this.consumers.add(e),this.queuedRedirectEvent&&this.isEventForConsumer(this.queuedRedirectEvent,e)&&(this.sendToConsumer(this.queuedRedirectEvent,e),this.saveEventToCache(this.queuedRedirectEvent),this.queuedRedirectEvent=null)}unregisterConsumer(e){this.consumers.delete(e)}onEvent(e){if(this.hasEventBeenHandled(e))return!1;let t=!1;return this.consumers.forEach(r=>{this.isEventForConsumer(e,r)&&(t=!0,this.sendToConsumer(e,r),this.saveEventToCache(e))}),this.hasHandledPotentialRedirect||!ta(e)||(this.hasHandledPotentialRedirect=!0,t||(this.queuedRedirectEvent=e,t=!0)),t}sendToConsumer(e,t){var r;if(e.error&&!Gr(e)){let i=((r=e.error.code)===null||r===void 0?void 0:r.split("auth/")[1])||"internal-error";t.onError(L(this.auth,i))}else t.onAuthEvent(e)}isEventForConsumer(e,t){let r=t.eventId===null||!!e.eventId&&e.eventId===t.eventId;return t.filter.includes(e.type)&&r}hasEventBeenHandled(e){return Date.now()-this.lastProcessedEventTime>=ea&&this.cachedEventUids.clear(),this.cachedEventUids.has(dr(e))}saveEventToCache(e){this.cachedEventUids.add(dr(e)),this.lastProcessedEventTime=Date.now()}};function dr(n){return[n.type,n.eventId,n.sessionId,n.tenantId].filter(e=>e).join("-")}function Gr({type:n,error:e}){return n==="unknown"&&e?.code==="auth/no-auth-event"}function ta(n){switch(n.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return Gr(n);default:return!1}}async function na(n,e={}){return S(n,"GET","/v1/projects",e)}var ra=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,ia=/^https?/;async function sa(n){if(n.config.emulator)return;let{authorizedDomains:e}=await na(n);for(let t of e)try{if(oa(t))return}catch{}O(n,"unauthorized-domain")}function oa(n){let e=Jt(),{protocol:t,hostname:r}=new URL(e);if(n.startsWith("chrome-extension://")){let o=new URL(n);return o.hostname===""&&r===""?t==="chrome-extension:"&&n.replace("chrome-extension://","")===e.replace("chrome-extension://",""):t==="chrome-extension:"&&o.hostname===r}if(!ia.test(t))return!1;if(ra.test(n))return r===n;let i=n.replace(/\./g,"\\.");return new RegExp("^(.+\\."+i+"|"+i+")$","i").test(r)}var aa=new J(3e4,6e4);function hr(){let n=M().___jsl;if(n?.H){for(let e of Object.keys(n.H))if(n.H[e].r=n.H[e].r||[],n.H[e].L=n.H[e].L||[],n.H[e].r=[...n.H[e].L],n.CP)for(let t=0;t<n.CP.length;t++)n.CP[t]=null}}function ca(n){return new Promise((e,t)=>{var r,i,s;function o(){hr(),gapi.load("gapi.iframes",{callback:()=>{e(gapi.iframes.getContext())},ontimeout:()=>{hr(),t(L(n,"network-request-failed"))},timeout:aa.get()})}if(!((i=(r=M().gapi)===null||r===void 0?void 0:r.iframes)===null||i===void 0)&&i.Iframe)e(gapi.iframes.getContext());else if(!((s=M().gapi)===null||s===void 0)&&s.load)o();else{let c=Lr("iframefcb");return M()[c]=()=>{gapi.load?o():t(L(n,"network-request-failed"))},Dr(`https://apis.google.com/js/api.js?onload=${c}`).catch(a=>t(a))}}).catch(e=>{throw je=null,e})}var je=null;function ua(n){return je=je||ca(n),je}var la=new J(5e3,15e3),da="__/auth/iframe",ha="emulator/auth/iframe",fa={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"},"aria-hidden":"true",tabindex:"-1"},pa=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function _a(n){let e=n.config;f(e.authDomain,n,"auth-domain-config-required");let t=e.emulator?pn(e,ha):`https://${n.config.authDomain}/${da}`,r={apiKey:e.apiKey,appName:n.name,v:de},i=pa.get(n.config.apiHost);i&&(r.eid=i);let s=n._getFrameworks();return s.length&&(r.fw=s.join(",")),`${t}?${oe(r).slice(1)}`}async function ma(n){let e=await ua(n),t=M().gapi;return f(t,n,"internal-error"),e.open({where:document.body,url:_a(n),messageHandlersFilter:t.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:fa,dontclear:!0},r=>new Promise(async(i,s)=>{await r.restyle({setHideOnLeave:!1});let o=L(n,"network-request-failed"),c=M().setTimeout(()=>{s(o)},la.get());function a(){M().clearTimeout(c),i(r)}r.ping(a).then(a,()=>{s(o)})}))}var ga={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"},va=500,Ia=600,ya="_blank",Ea="http://localhost",ct=class{constructor(e){this.window=e,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch{}}};function wa(n,e,t,r=va,i=Ia){let s=Math.max((window.screen.availHeight-i)/2,0).toString(),o=Math.max((window.screen.availWidth-r)/2,0).toString(),c="",a=Object.assign(Object.assign({},ga),{width:r.toString(),height:i.toString(),top:s,left:o}),l=b().toLowerCase();t&&(c=Sr(l)?ya:t),Ar(l)&&(e=e||Ea,a.scrollbars="yes");let d=Object.entries(a).reduce((_,[h,v])=>`${_}${h}=${v},`,"");if(Gs(l)&&c!=="_self")return ba(e||"",c),new ct(null);let u=window.open(e||"",c,d);f(u,n,"popup-blocked");try{u.focus()}catch{}return new ct(u)}function ba(n,e){let t=document.createElement("a");t.href=n,t.target=e;let r=document.createEvent("MouseEvent");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),t.dispatchEvent(r)}var Ta="__/auth/handler",Aa="emulator/auth/handler",Sa=encodeURIComponent("fac");async function fr(n,e,t,r,i,s){f(n.config.authDomain,n,"auth-domain-config-required"),f(n.config.apiKey,n,"invalid-api-key");let o={apiKey:n.config.apiKey,appName:n.name,authType:t,redirectUrl:r,v:de,eventId:i};if(e instanceof Ae){e.setDefaultLanguage(n.languageCode),o.providerId=e.providerId||"",Hn(e.getCustomParameters())||(o.customParameters=JSON.stringify(e.getCustomParameters()));for(let[d,u]of Object.entries(s||{}))o[d]=u}if(e instanceof Q){let d=e.getScopes().filter(u=>u!=="");d.length>0&&(o.scopes=d.join(","))}n.tenantId&&(o.tid=n.tenantId);let c=o;for(let d of Object.keys(c))c[d]===void 0&&delete c[d];let a=await n._getAppCheckToken(),l=a?`#${Sa}=${encodeURIComponent(a)}`:"";return`${Ra(n)}?${oe(c).slice(1)}${l}`}function Ra({config:n}){return n.emulator?pn(n,Aa):`https://${n.authDomain}/${Ta}`}var Kt="webStorageSupport",ln=class{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=gn,this._completeRedirectFn=Zo,this._overrideRedirectResult=Yo}async _openPopup(e,t,r,i){var s;F((s=this.eventManagers[e._key()])===null||s===void 0?void 0:s.manager,"_initialize() not called before _openPopup()");let o=await fr(e,t,r,Jt(),i);return wa(e,o,vn())}async _openRedirect(e,t,r,i){await this._originValidation(e);let s=await fr(e,t,r,Jt(),i);return Po(s),new Promise(()=>{})}_initialize(e){let t=e._key();if(this.eventManagers[t]){let{manager:i,promise:s}=this.eventManagers[t];return i?Promise.resolve(i):(F(s,"If manager is not set, promise should be"),s)}let r=this.initAndGetManager(e);return this.eventManagers[t]={promise:r},r.catch(()=>{delete this.eventManagers[t]}),r}async initAndGetManager(e){let t=await ma(e),r=new un(e);return t.register("authEvent",i=>(f(i?.authEvent,e,"invalid-auth-event"),{status:r.onEvent(i.authEvent)?"ACK":"ERROR"}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER),this.eventManagers[e._key()]={manager:r},this.iframes[e._key()]=t,r}_isIframeWebStorageSupported(e,t){this.iframes[e._key()].send(Kt,{type:Kt},i=>{var s;let o=(s=i?.[0])===null||s===void 0?void 0:s[Kt];o!==void 0&&t(!!o),O(e,"internal-error")},gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(e){let t=e._key();return this.originValidationPromises[t]||(this.originValidationPromises[t]=sa(e)),this.originValidationPromises[t]}get _shouldInitProactively(){return Cr()||mn()||pt()}},Kr=ln,ut=class{constructor(e){this.factorId=e}_process(e,t,r){switch(t.type){case"enroll":return this._finalizeEnroll(e,t.credential,r);case"signin":return this._finalizeSignIn(e,t.credential);default:return D("unexpected MultiFactorSessionType")}}},dn=class n extends ut{constructor(e){super("phone"),this.credential=e}static _fromCredential(e){return new n(e)}_finalizeEnroll(e,t,r){return bo(e,{idToken:t,displayName:r,phoneVerificationInfo:this.credential._makeVerificationRequest()})}_finalizeSignIn(e,t){return Ho(e,{mfaPendingCredential:t,phoneVerificationInfo:this.credential._makeVerificationRequest()})}},lt=class{constructor(){}static assertion(e){return dn._fromCredential(e)}};lt.FACTOR_ID="phone";var dt=class{static assertionForEnrollment(e,t){return ht._fromSecret(e,t)}static assertionForSignIn(e,t){return ht._fromEnrollmentId(e,t)}static async generateSecret(e){var t;let r=e;f(typeof((t=r.user)===null||t===void 0?void 0:t.auth)<"u","internal-error");let i=await To(r.user.auth,{idToken:r.credential,totpEnrollmentInfo:{}});return ft._fromStartTotpMfaEnrollmentResponse(i,r.user.auth)}};dt.FACTOR_ID="totp";var ht=class n extends ut{constructor(e,t,r){super("totp"),this.otp=e,this.enrollmentId=t,this.secret=r}static _fromSecret(e,t){return new n(t,void 0,e)}static _fromEnrollmentId(e,t){return new n(t,e)}async _finalizeEnroll(e,t,r){return f(typeof this.secret<"u",e,"argument-error"),Ao(e,{idToken:t,displayName:r,totpVerificationInfo:this.secret._makeTotpVerificationInfo(this.otp)})}async _finalizeSignIn(e,t){f(this.enrollmentId!==void 0&&this.otp!==void 0,e,"argument-error");let r={verificationCode:this.otp};return Wo(e,{mfaPendingCredential:t,mfaEnrollmentId:this.enrollmentId,totpVerificationInfo:r})}},ft=class n{constructor(e,t,r,i,s,o,c){this.sessionInfo=o,this.auth=c,this.secretKey=e,this.hashingAlgorithm=t,this.codeLength=r,this.codeIntervalSeconds=i,this.enrollmentCompletionDeadline=s}static _fromStartTotpMfaEnrollmentResponse(e,t){return new n(e.totpSessionInfo.sharedSecretKey,e.totpSessionInfo.hashingAlgorithm,e.totpSessionInfo.verificationCodeLength,e.totpSessionInfo.periodSec,new Date(e.totpSessionInfo.finalizeEnrollmentTime).toUTCString(),e.totpSessionInfo.sessionInfo,t)}_makeTotpVerificationInfo(e){return{sessionInfo:this.sessionInfo,verificationCode:e}}generateQrCodeUrl(e,t){var r;let i=!1;return(Ve(e)||Ve(t))&&(i=!0),i&&(Ve(e)&&(e=((r=this.auth.currentUser)===null||r===void 0?void 0:r.email)||"unknownuser"),Ve(t)&&(t=this.auth.name)),`otpauth://totp/${t}:${e}?secret=${this.secretKey}&issuer=${t}&algorithm=${this.hashingAlgorithm}&digits=${this.codeLength}`}};function Ve(n){return typeof n>"u"||n?.length===0}var pr="@firebase/auth",_r="1.3.2";var hn=class{constructor(e){this.auth=e,this.internalListeners=new Map}getUid(){var e;return this.assertAuthConfigured(),((e=this.auth.currentUser)===null||e===void 0?void 0:e.uid)||null}async getToken(e){return this.assertAuthConfigured(),await this.auth._initializationPromise,this.auth.currentUser?{accessToken:await this.auth.currentUser.getIdToken(e)}:null}addAuthTokenListener(e){if(this.assertAuthConfigured(),this.internalListeners.has(e))return;let t=this.auth.onIdTokenChanged(r=>{e(r?.stsTokenManager.accessToken||null)});this.internalListeners.set(e,t),this.updateProactiveRefresh()}removeAuthTokenListener(e){this.assertAuthConfigured();let t=this.internalListeners.get(e);t&&(this.internalListeners.delete(e),t(),this.updateProactiveRefresh())}assertAuthConfigured(){f(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}};function ka(n){switch(n){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}function Oa(n){le(new C("auth",(e,{options:t})=>{let r=e.getProvider("app").getImmediate(),i=e.getProvider("heartbeat"),s=e.getProvider("app-check-internal"),{apiKey:o,authDomain:c}=r.options;f(o&&!o.includes(":"),"invalid-api-key",{appName:r.name});let a={apiKey:o,authDomain:c,clientPlatform:n,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:Nr(n)},l=new nn(r,i,s,a);return ro(l,t),l},"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback((e,t,r)=>{e.getProvider("auth-internal").initialize()})),le(new C("auth-internal",e=>{let t=pe(e.getProvider("auth").getImmediate());return(r=>new hn(r))(t)},"PRIVATE").setInstantiationMode("EXPLICIT")),B(pr,_r,ka(n)),B(pr,_r,"esm2017")}var Pa=5*60,Ca=Pt("authIdTokenMaxAge")||Pa,mr=null,Na=n=>async e=>{let t=e&&await e.getIdTokenResult(),r=t&&(new Date().getTime()-Date.parse(t.issuedAtTime))/1e3;if(r&&r>Ca)return;let i=t?.token;mr!==i&&(mr=i,await fetch(n,{method:i?"POST":"DELETE",headers:i?{Authorization:`Bearer ${i}`}:{}}))};function yn(n=Zn()){let e=zt(n,"auth");if(e.isInitialized())return e.getImmediate();let t=Mr(n,{popupRedirectResolver:Kr,persistence:[zr,Wr,gn]}),r=Pt("authTokenSyncURL");if(r){let s=Na(r);Hr(t,s,()=>s(t.currentUser)),Vr(t,o=>s(o))}let i=Dn("auth");return i&&xr(t,`http://${i}`),t}Oa("Browser");var yt,p,ei,Da,ne,Jr,ti,En,La,Ne={},ni=[],Ma=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,bn=Array.isArray;function $(n,e){for(var t in e)n[t]=e[t];return n}function ri(n){var e=n.parentNode;e&&e.removeChild(n)}function xa(n,e,t){var r,i,s,o={};for(s in e)s=="key"?r=e[s]:s=="ref"?i=e[s]:o[s]=e[s];if(arguments.length>2&&(o.children=arguments.length>3?yt.call(arguments,2):t),typeof n=="function"&&n.defaultProps!=null)for(s in n.defaultProps)o[s]===void 0&&(o[s]=n.defaultProps[s]);return gt(n,o,r,i,null)}function gt(n,e,t,r,i){var s={type:n,props:e,key:t,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:i??++ei,__i:-1,__u:0};return i==null&&p.vnode!=null&&p.vnode(s),s}function me(n){return n.children}function vt(n,e){this.props=n,this.context=e}function _e(n,e){if(e==null)return n.__?_e(n.__,n.__i+1):null;for(var t;e<n.__k.length;e++)if((t=n.__k[e])!=null&&t.__e!=null)return t.__e;return typeof n.type=="function"?_e(n):null}function ii(n){var e,t;if((n=n.__)!=null&&n.__c!=null){for(n.__e=n.__c.base=null,e=0;e<n.__k.length;e++)if((t=n.__k[e])!=null&&t.__e!=null){n.__e=n.__c.base=t.__e;break}return ii(n)}}function Yr(n){(!n.__d&&(n.__d=!0)&&ne.push(n)&&!It.__r++||Jr!==p.debounceRendering)&&((Jr=p.debounceRendering)||ti)(It)}function It(){var n,e,t,r,i,s,o,c,a;for(ne.sort(En);n=ne.shift();)n.__d&&(e=ne.length,r=void 0,s=(i=(t=n).__v).__e,c=[],a=[],(o=t.__P)&&((r=$({},i)).__v=i.__v+1,p.vnode&&p.vnode(r),Tn(o,r,i,t.__n,o.ownerSVGElement!==void 0,32&i.__u?[s]:null,c,s??_e(i),!!(32&i.__u),a),r.__.__k[r.__i]=r,ai(c,r,a),r.__e!=s&&ii(r)),ne.length>e&&ne.sort(En));It.__r=0}function si(n,e,t,r,i,s,o,c,a,l,d){var u,_,h,v,R,I=r&&r.__k||ni,g=e.length;for(t.__d=a,Ua(t,e,I),a=t.__d,u=0;u<g;u++)(h=t.__k[u])!=null&&typeof h!="boolean"&&typeof h!="function"&&(_=h.__i===-1?Ne:I[h.__i]||Ne,h.__i=u,Tn(n,h,_,i,s,o,c,a,l,d),v=h.__e,h.ref&&_.ref!=h.ref&&(_.ref&&An(_.ref,null,h),d.push(h.ref,h.__c||v,h)),R==null&&v!=null&&(R=v),65536&h.__u||_.__k===h.__k?a=oi(h,a,n):typeof h.type=="function"&&h.__d!==void 0?a=h.__d:v&&(a=v.nextSibling),h.__d=void 0,h.__u&=-196609);t.__d=a,t.__e=R}function Ua(n,e,t){var r,i,s,o,c,a=e.length,l=t.length,d=l,u=0;for(n.__k=[],r=0;r<a;r++)(i=n.__k[r]=(i=e[r])==null||typeof i=="boolean"||typeof i=="function"?null:typeof i=="string"||typeof i=="number"||typeof i=="bigint"||i.constructor==String?gt(null,i,null,null,i):bn(i)?gt(me,{children:i},null,null,null):i.constructor===void 0&&i.__b>0?gt(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)!=null?(i.__=n,i.__b=n.__b+1,c=Fa(i,t,o=r+u,d),i.__i=c,s=null,c!==-1&&(d--,(s=t[c])&&(s.__u|=131072)),s==null||s.__v===null?(c==-1&&u--,typeof i.type!="function"&&(i.__u|=65536)):c!==o&&(c===o+1?u++:c>o?d>a-o?u+=c-o:u--:u=c<o&&c==o-1?c-o:0,c!==r+u&&(i.__u|=65536))):(s=t[r])&&s.key==null&&s.__e&&(s.__e==n.__d&&(n.__d=_e(s)),wn(s,s,!1),t[r]=null,d--);if(d)for(r=0;r<l;r++)(s=t[r])!=null&&!(131072&s.__u)&&(s.__e==n.__d&&(n.__d=_e(s)),wn(s,s))}function oi(n,e,t){var r,i;if(typeof n.type=="function"){for(r=n.__k,i=0;r&&i<r.length;i++)r[i]&&(r[i].__=n,e=oi(r[i],e,t));return e}return n.__e!=e&&(t.insertBefore(n.__e,e||null),e=n.__e),e&&e.nextSibling}function Fa(n,e,t,r){var i=n.key,s=n.type,o=t-1,c=t+1,a=e[t];if(a===null||a&&i==a.key&&s===a.type)return t;if(r>(a!=null&&!(131072&a.__u)?1:0))for(;o>=0||c<e.length;){if(o>=0){if((a=e[o])&&!(131072&a.__u)&&i==a.key&&s===a.type)return o;o--}if(c<e.length){if((a=e[c])&&!(131072&a.__u)&&i==a.key&&s===a.type)return c;c++}}return-1}function Xr(n,e,t){e[0]==="-"?n.setProperty(e,t??""):n[e]=t==null?"":typeof t!="number"||Ma.test(e)?t:t+"px"}function mt(n,e,t,r,i){var s;e:if(e==="style")if(typeof t=="string")n.style.cssText=t;else{if(typeof r=="string"&&(n.style.cssText=r=""),r)for(e in r)t&&e in t||Xr(n.style,e,"");if(t)for(e in t)r&&t[e]===r[e]||Xr(n.style,e,t[e])}else if(e[0]==="o"&&e[1]==="n")s=e!==(e=e.replace(/(PointerCapture)$|Capture$/,"$1")),e=e.toLowerCase()in n?e.toLowerCase().slice(2):e.slice(2),n.l||(n.l={}),n.l[e+s]=t,t?r?t.u=r.u:(t.u=Date.now(),n.addEventListener(e,s?Zr:Qr,s)):n.removeEventListener(e,s?Zr:Qr,s);else{if(i)e=e.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(e!=="width"&&e!=="height"&&e!=="href"&&e!=="list"&&e!=="form"&&e!=="tabIndex"&&e!=="download"&&e!=="rowSpan"&&e!=="colSpan"&&e!=="role"&&e in n)try{n[e]=t??"";break e}catch{}typeof t=="function"||(t==null||t===!1&&e[4]!=="-"?n.removeAttribute(e):n.setAttribute(e,t))}}function Qr(n){var e=this.l[n.type+!1];if(n.t){if(n.t<=e.u)return}else n.t=Date.now();return e(p.event?p.event(n):n)}function Zr(n){return this.l[n.type+!0](p.event?p.event(n):n)}function Tn(n,e,t,r,i,s,o,c,a,l){var d,u,_,h,v,R,I,g,y,k,z,V,re,q,ge,A=e.type;if(e.constructor!==void 0)return null;128&t.__u&&(a=!!(32&t.__u),s=[c=e.__e=t.__e]),(d=p.__b)&&d(e);e:if(typeof A=="function")try{if(g=e.props,y=(d=A.contextType)&&r[d.__c],k=d?y?y.props.value:d.__:r,t.__c?I=(u=e.__c=t.__c).__=u.__E:("prototype"in A&&A.prototype.render?e.__c=u=new A(g,k):(e.__c=u=new vt(g,k),u.constructor=A,u.render=Ha),y&&y.sub(u),u.props=g,u.state||(u.state={}),u.context=k,u.__n=r,_=u.__d=!0,u.__h=[],u._sb=[]),u.__s==null&&(u.__s=u.state),A.getDerivedStateFromProps!=null&&(u.__s==u.state&&(u.__s=$({},u.__s)),$(u.__s,A.getDerivedStateFromProps(g,u.__s))),h=u.props,v=u.state,u.__v=e,_)A.getDerivedStateFromProps==null&&u.componentWillMount!=null&&u.componentWillMount(),u.componentDidMount!=null&&u.__h.push(u.componentDidMount);else{if(A.getDerivedStateFromProps==null&&g!==h&&u.componentWillReceiveProps!=null&&u.componentWillReceiveProps(g,k),!u.__e&&(u.shouldComponentUpdate!=null&&u.shouldComponentUpdate(g,u.__s,k)===!1||e.__v===t.__v)){for(e.__v!==t.__v&&(u.props=g,u.state=u.__s,u.__d=!1),e.__e=t.__e,e.__k=t.__k,e.__k.forEach(function(ie){ie&&(ie.__=e)}),z=0;z<u._sb.length;z++)u.__h.push(u._sb[z]);u._sb=[],u.__h.length&&o.push(u);break e}u.componentWillUpdate!=null&&u.componentWillUpdate(g,u.__s,k),u.componentDidUpdate!=null&&u.__h.push(function(){u.componentDidUpdate(h,v,R)})}if(u.context=k,u.props=g,u.__P=n,u.__e=!1,V=p.__r,re=0,"prototype"in A&&A.prototype.render){for(u.state=u.__s,u.__d=!1,V&&V(e),d=u.render(u.props,u.state,u.context),q=0;q<u._sb.length;q++)u.__h.push(u._sb[q]);u._sb=[]}else do u.__d=!1,V&&V(e),d=u.render(u.props,u.state,u.context),u.state=u.__s;while(u.__d&&++re<25);u.state=u.__s,u.getChildContext!=null&&(r=$($({},r),u.getChildContext())),_||u.getSnapshotBeforeUpdate==null||(R=u.getSnapshotBeforeUpdate(h,v)),si(n,bn(ge=d!=null&&d.type===me&&d.key==null?d.props.children:d)?ge:[ge],e,t,r,i,s,o,c,a,l),u.base=e.__e,e.__u&=-161,u.__h.length&&o.push(u),I&&(u.__E=u.__=null)}catch(ie){e.__v=null,a||s!=null?(e.__e=c,e.__u|=a?160:32,s[s.indexOf(c)]=null):(e.__e=t.__e,e.__k=t.__k),p.__e(ie,e,t)}else s==null&&e.__v===t.__v?(e.__k=t.__k,e.__e=t.__e):e.__e=Va(t.__e,e,t,r,i,s,o,a,l);(d=p.diffed)&&d(e)}function ai(n,e,t){e.__d=void 0;for(var r=0;r<t.length;r++)An(t[r],t[++r],t[++r]);p.__c&&p.__c(e,n),n.some(function(i){try{n=i.__h,i.__h=[],n.some(function(s){s.call(i)})}catch(s){p.__e(s,i.__v)}})}function Va(n,e,t,r,i,s,o,c,a){var l,d,u,_,h,v,R,I=t.props,g=e.props,y=e.type;if(y==="svg"&&(i=!0),s!=null){for(l=0;l<s.length;l++)if((h=s[l])&&"setAttribute"in h==!!y&&(y?h.localName===y:h.nodeType===3)){n=h,s[l]=null;break}}if(n==null){if(y===null)return document.createTextNode(g);n=i?document.createElementNS("http://www.w3.org/2000/svg",y):document.createElement(y,g.is&&g),s=null,c=!1}if(y===null)I===g||c&&n.data===g||(n.data=g);else{if(s=s&&yt.call(n.childNodes),I=t.props||Ne,!c&&s!=null)for(I={},l=0;l<n.attributes.length;l++)I[(h=n.attributes[l]).name]=h.value;for(l in I)h=I[l],l=="children"||(l=="dangerouslySetInnerHTML"?u=h:l==="key"||l in g||mt(n,l,null,h,i));for(l in g)h=g[l],l=="children"?_=h:l=="dangerouslySetInnerHTML"?d=h:l=="value"?v=h:l=="checked"?R=h:l==="key"||c&&typeof h!="function"||I[l]===h||mt(n,l,h,I[l],i);if(d)c||u&&(d.__html===u.__html||d.__html===n.innerHTML)||(n.innerHTML=d.__html),e.__k=[];else if(u&&(n.innerHTML=""),si(n,bn(_)?_:[_],e,t,r,i&&y!=="foreignObject",s,o,s?s[0]:t.__k&&_e(t,0),c,a),s!=null)for(l=s.length;l--;)s[l]!=null&&ri(s[l]);c||(l="value",v!==void 0&&(v!==n[l]||y==="progress"&&!v||y==="option"&&v!==I[l])&&mt(n,l,v,I[l],!1),l="checked",R!==void 0&&R!==n[l]&&mt(n,l,R,I[l],!1))}return n}function An(n,e,t){try{typeof n=="function"?n(e):n.current=e}catch(r){p.__e(r,t)}}function wn(n,e,t){var r,i;if(p.unmount&&p.unmount(n),(r=n.ref)&&(r.current&&r.current!==n.__e||An(r,null,e)),(r=n.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(s){p.__e(s,e)}r.base=r.__P=null,n.__c=void 0}if(r=n.__k)for(i=0;i<r.length;i++)r[i]&&wn(r[i],e,t||typeof n.type!="function");t||n.__e==null||ri(n.__e),n.__=n.__e=n.__d=void 0}function Ha(n,e,t){return this.constructor(n,t)}function ci(n,e,t){var r,i,s,o;p.__&&p.__(n,e),i=(r=typeof t=="function")?null:t&&t.__k||e.__k,s=[],o=[],Tn(e,n=(!r&&t||e).__k=xa(me,null,[n]),i||Ne,Ne,e.ownerSVGElement!==void 0,!r&&t?[t]:i?null:e.firstChild?yt.call(e.childNodes):null,s,!r&&t?t:i?i.__e:e.firstChild,r,o),ai(s,n,o)}yt=ni.slice,p={__e:function(n,e,t,r){for(var i,s,o;e=e.__;)if((i=e.__c)&&!i.__)try{if((s=i.constructor)&&s.getDerivedStateFromError!=null&&(i.setState(s.getDerivedStateFromError(n)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(n,r||{}),o=i.__d),o)return i.__E=i}catch(c){n=c}throw n}},ei=0,Da=function(n){return n!=null&&n.constructor==null},vt.prototype.setState=function(n,e){var t;t=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=$({},this.state),typeof n=="function"&&(n=n($({},t),this.props)),n&&$(t,n),n!=null&&this.__v&&(e&&this._sb.push(e),Yr(this))},vt.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),Yr(this))},vt.prototype.render=me,ne=[],ti=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,En=function(n,e){return n.__v.__b-e.__v.__b},It.__r=0,La=0;var Rn,E,Sn,ui,kn=0,mi=[],Et=[],li=p.__b,di=p.__r,hi=p.diffed,fi=p.__c,pi=p.unmount;function Wa(n,e){p.__h&&p.__h(E,n,kn||e),kn=0;var t=E.__H||(E.__H={__:[],__h:[]});return n>=t.__.length&&t.__.push({__V:Et}),t.__[n]}function gi(n){return kn=1,Ba(vi,n)}function Ba(n,e,t){var r=Wa(Rn++,2);if(r.t=n,!r.__c&&(r.__=[t?t(e):vi(void 0,e),function(c){var a=r.__N?r.__N[0]:r.__[0],l=r.t(a,c);a!==l&&(r.__N=[l,r.__[1]],r.__c.setState({}))}],r.__c=E,!E.u)){var i=function(c,a,l){if(!r.__c.__H)return!0;var d=r.__c.__H.__.filter(function(_){return _.__c});if(d.every(function(_){return!_.__N}))return!s||s.call(this,c,a,l);var u=!1;return d.forEach(function(_){if(_.__N){var h=_.__[0];_.__=_.__N,_.__N=void 0,h!==_.__[0]&&(u=!0)}}),!(!u&&r.__c.props===c)&&(!s||s.call(this,c,a,l))};E.u=!0;var s=E.shouldComponentUpdate,o=E.componentWillUpdate;E.componentWillUpdate=function(c,a,l){if(this.__e){var d=s;s=void 0,i(c,a,l),s=d}o&&o.call(this,c,a,l)},E.shouldComponentUpdate=i}return r.__N||r.__}function ja(){for(var n;n=mi.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(wt),n.__H.__h.forEach(On),n.__H.__h=[]}catch(e){n.__H.__h=[],p.__e(e,n.__v)}}p.__b=function(n){E=null,li&&li(n)},p.__r=function(n){di&&di(n),Rn=0;var e=(E=n.__c).__H;e&&(Sn===E?(e.__h=[],E.__h=[],e.__.forEach(function(t){t.__N&&(t.__=t.__N),t.__V=Et,t.__N=t.i=void 0})):(e.__h.forEach(wt),e.__h.forEach(On),e.__h=[],Rn=0)),Sn=E},p.diffed=function(n){hi&&hi(n);var e=n.__c;e&&e.__H&&(e.__H.__h.length&&(mi.push(e)!==1&&ui===p.requestAnimationFrame||((ui=p.requestAnimationFrame)||$a)(ja)),e.__H.__.forEach(function(t){t.i&&(t.__H=t.i),t.__V!==Et&&(t.__=t.__V),t.i=void 0,t.__V=Et})),Sn=E=null},p.__c=function(n,e){e.some(function(t){try{t.__h.forEach(wt),t.__h=t.__h.filter(function(r){return!r.__||On(r)})}catch(r){e.some(function(i){i.__h&&(i.__h=[])}),e=[],p.__e(r,t.__v)}}),fi&&fi(n,e)},p.unmount=function(n){pi&&pi(n);var e,t=n.__c;t&&t.__H&&(t.__H.__.forEach(function(r){try{wt(r)}catch(i){e=i}}),t.__H=void 0,e&&p.__e(e,t.__v))};var _i=typeof requestAnimationFrame=="function";function $a(n){var e,t=function(){clearTimeout(r),_i&&cancelAnimationFrame(e),setTimeout(n)},r=setTimeout(t,100);_i&&(e=requestAnimationFrame(t))}function wt(n){var e=E,t=n.__c;typeof t=="function"&&(n.__c=void 0,t()),E=e}function On(n){var e=E;n.__c=n.__(),E=e}function vi(n,e){return typeof e=="function"?e(n):e}var za=0,Hu=Array.isArray;function w(n,e,t,r,i,s){var o,c,a={};for(c in e)c=="ref"?o=e[c]:a[c]=e[c];var l={type:n,props:a,key:t,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:--za,__i:-1,__u:0,__source:i,__self:s};if(typeof n=="function"&&(o=n.defaultProps))for(c in o)a[c]===void 0&&(a[c]=o[c]);return p.vnode&&p.vnode(l),l}function De(){let[n,e]=gi(""),t=window.__ROOT_CTX.name;function r(i){e(i)}return w("div",{className:"signin",children:[w("div",{className:"signin__headline",children:[t&&w("h1",{className:"signin__headline__title",children:t}),w("p",{className:"signin__headline__body",children:t?`Sign in to continue to ${t}`:"Sign in to continue"})]}),w(De.Button,{onError:r}),n&&w("p",{className:"signin__error",children:n})]})}De.Button=n=>{async function e(r){try{return await r.json()}catch(i){console.error(i)}return{}}async function t(){let r=new Z;r.addScope("profile"),r.addScope("email");let s=(await In(window.firebase.auth,r)).user,o=await s.getIdToken(),c=await fetch("/cms/login",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({idToken:o})}),a=await e(c);if(c.status===401){let l=s?.email||"(no email)";a.reason?n.onError(`Login failed for: ${l}. Reason: ${a.reason}. If you believe this is a mistake, please contact a developer to help resolve the issue.`):n.onError(`Login failed for: ${l}. If you believe this is a mistake, please contact a developer to help resolve the issue.`);return}if(c.status!==200){console.error("login failed"),console.log(c.status,a),n.onError("An unknown error has occurred.");return}if(!a.success){console.error("login failed"),console.log(c.status,a),a.reason?n.onError(`Login failed. Reason: ${a.reason}`):n.onError("Login failed.");return}qa()}return w("button",{className:"signin__button",onClick:t,children:[w("div",{className:"signin__button__icon",children:w(De.GLogo,{})}),w("div",{className:"signin__button__label",children:"Sign in with Google"})]})};De.GLogo=()=>w("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 48 48",children:w("g",{children:[w("path",{fill:"#EA4335",d:"M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"}),w("path",{fill:"#4285F4",d:"M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"}),w("path",{fill:"#FBBC05",d:"M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"}),w("path",{fill:"#34A853",d:"M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"}),w("path",{fill:"none",d:"M0 0h48v48H0z"})]})});function qa(){let e=new URLSearchParams(window.location.search).get("continue");(!e||!e.startsWith("/")||e.startsWith("/cms/login"))&&(e="/cms"),window.location.replace(e)}var Ii=qt(window.__ROOT_CTX.firebaseConfig),Ga=yn(Ii);window.firebase={app:Ii,auth:Ga};var yi=document.getElementById("root");yi.innerHTML="";ci(w(De,{}),yi);})();
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
16
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
17
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
18
|
-
* See the License for the specific language governing permissions and
|
|
19
|
-
* limitations under the License.
|
|
20
|
-
*)
|
|
21
|
-
|
|
22
|
-
@firebase/util/dist/index.esm2017.js:
|
|
23
|
-
(**
|
|
24
|
-
* @license
|
|
25
|
-
* Copyright 2017 Google LLC
|
|
26
|
-
*
|
|
27
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
28
|
-
* you may not use this file except in compliance with the License.
|
|
29
|
-
* You may obtain a copy of the License at
|
|
30
|
-
*
|
|
31
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
32
|
-
*
|
|
33
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
34
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
35
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
36
|
-
* See the License for the specific language governing permissions and
|
|
37
|
-
* limitations under the License.
|
|
38
|
-
*)
|
|
39
|
-
|
|
40
|
-
@firebase/util/dist/index.esm2017.js:
|
|
41
|
-
(**
|
|
42
|
-
* @license
|
|
43
|
-
* Copyright 2017 Google LLC
|
|
44
|
-
*
|
|
45
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
46
|
-
* you may not use this file except in compliance with the License.
|
|
47
|
-
* You may obtain a copy of the License at
|
|
48
|
-
*
|
|
49
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
50
|
-
*
|
|
51
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
52
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
53
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
54
|
-
* See the License for the specific language governing permissions and
|
|
55
|
-
* limitations under the License.
|
|
56
|
-
*)
|
|
57
|
-
|
|
58
|
-
@firebase/util/dist/index.esm2017.js:
|
|
59
|
-
(**
|
|
60
|
-
* @license
|
|
61
|
-
* Copyright 2022 Google LLC
|
|
62
|
-
*
|
|
63
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
64
|
-
* you may not use this file except in compliance with the License.
|
|
65
|
-
* You may obtain a copy of the License at
|
|
66
|
-
*
|
|
67
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
68
|
-
*
|
|
69
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
70
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
71
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
72
|
-
* See the License for the specific language governing permissions and
|
|
73
|
-
* limitations under the License.
|
|
74
|
-
*)
|
|
75
|
-
|
|
76
|
-
@firebase/util/dist/index.esm2017.js:
|
|
77
|
-
(**
|
|
78
|
-
* @license
|
|
79
|
-
* Copyright 2017 Google LLC
|
|
80
|
-
*
|
|
81
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
82
|
-
* you may not use this file except in compliance with the License.
|
|
83
|
-
* You may obtain a copy of the License at
|
|
84
|
-
*
|
|
85
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
86
|
-
*
|
|
87
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
88
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
89
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
90
|
-
* See the License for the specific language governing permissions and
|
|
91
|
-
* limitations under the License.
|
|
92
|
-
*)
|
|
93
|
-
(**
|
|
94
|
-
* @license
|
|
95
|
-
* Copyright 2021 Google LLC
|
|
96
|
-
*
|
|
97
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
98
|
-
* you may not use this file except in compliance with the License.
|
|
99
|
-
* You may obtain a copy of the License at
|
|
100
|
-
*
|
|
101
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
102
|
-
*
|
|
103
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
104
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
105
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
106
|
-
* See the License for the specific language governing permissions and
|
|
107
|
-
* limitations under the License.
|
|
108
|
-
*)
|
|
109
|
-
|
|
110
|
-
@firebase/util/dist/index.esm2017.js:
|
|
111
|
-
(**
|
|
112
|
-
* @license
|
|
113
|
-
* Copyright 2017 Google LLC
|
|
114
|
-
*
|
|
115
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
116
|
-
* you may not use this file except in compliance with the License.
|
|
117
|
-
* You may obtain a copy of the License at
|
|
118
|
-
*
|
|
119
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
120
|
-
*
|
|
121
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
122
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
123
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
124
|
-
* See the License for the specific language governing permissions and
|
|
125
|
-
* limitations under the License.
|
|
126
|
-
*)
|
|
127
|
-
|
|
128
|
-
@firebase/util/dist/index.esm2017.js:
|
|
129
|
-
(**
|
|
130
|
-
* @license
|
|
131
|
-
* Copyright 2017 Google LLC
|
|
132
|
-
*
|
|
133
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
134
|
-
* you may not use this file except in compliance with the License.
|
|
135
|
-
* You may obtain a copy of the License at
|
|
136
|
-
*
|
|
137
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
138
|
-
*
|
|
139
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
140
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
141
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
142
|
-
* See the License for the specific language governing permissions and
|
|
143
|
-
* limitations under the License.
|
|
144
|
-
*)
|
|
145
|
-
|
|
146
|
-
@firebase/util/dist/index.esm2017.js:
|
|
147
|
-
(**
|
|
148
|
-
* @license
|
|
149
|
-
* Copyright 2017 Google LLC
|
|
150
|
-
*
|
|
151
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
152
|
-
* you may not use this file except in compliance with the License.
|
|
153
|
-
* You may obtain a copy of the License at
|
|
154
|
-
*
|
|
155
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
156
|
-
*
|
|
157
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
158
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
159
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
160
|
-
* See the License for the specific language governing permissions and
|
|
161
|
-
* limitations under the License.
|
|
162
|
-
*)
|
|
163
|
-
|
|
164
|
-
@firebase/util/dist/index.esm2017.js:
|
|
165
|
-
(**
|
|
166
|
-
* @license
|
|
167
|
-
* Copyright 2017 Google LLC
|
|
168
|
-
*
|
|
169
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
170
|
-
* you may not use this file except in compliance with the License.
|
|
171
|
-
* You may obtain a copy of the License at
|
|
172
|
-
*
|
|
173
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
174
|
-
*
|
|
175
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
176
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
177
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
178
|
-
* See the License for the specific language governing permissions and
|
|
179
|
-
* limitations under the License.
|
|
180
|
-
*)
|
|
181
|
-
|
|
182
|
-
@firebase/util/dist/index.esm2017.js:
|
|
183
|
-
(**
|
|
184
|
-
* @license
|
|
185
|
-
* Copyright 2022 Google LLC
|
|
186
|
-
*
|
|
187
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
188
|
-
* you may not use this file except in compliance with the License.
|
|
189
|
-
* You may obtain a copy of the License at
|
|
190
|
-
*
|
|
191
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
192
|
-
*
|
|
193
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
194
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
195
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
196
|
-
* See the License for the specific language governing permissions and
|
|
197
|
-
* limitations under the License.
|
|
198
|
-
*)
|
|
199
|
-
|
|
200
|
-
@firebase/util/dist/index.esm2017.js:
|
|
201
|
-
(**
|
|
202
|
-
* @license
|
|
203
|
-
* Copyright 2017 Google LLC
|
|
204
|
-
*
|
|
205
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
206
|
-
* you may not use this file except in compliance with the License.
|
|
207
|
-
* You may obtain a copy of the License at
|
|
208
|
-
*
|
|
209
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
210
|
-
*
|
|
211
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
212
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
213
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
214
|
-
* See the License for the specific language governing permissions and
|
|
215
|
-
* limitations under the License.
|
|
216
|
-
*)
|
|
217
|
-
|
|
218
|
-
@firebase/util/dist/index.esm2017.js:
|
|
219
|
-
(**
|
|
220
|
-
* @license
|
|
221
|
-
* Copyright 2017 Google LLC
|
|
222
|
-
*
|
|
223
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
224
|
-
* you may not use this file except in compliance with the License.
|
|
225
|
-
* You may obtain a copy of the License at
|
|
226
|
-
*
|
|
227
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
228
|
-
*
|
|
229
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
230
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
231
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
232
|
-
* See the License for the specific language governing permissions and
|
|
233
|
-
* limitations under the License.
|
|
234
|
-
*)
|
|
235
|
-
|
|
236
|
-
@firebase/util/dist/index.esm2017.js:
|
|
237
|
-
(**
|
|
238
|
-
* @license
|
|
239
|
-
* Copyright 2017 Google LLC
|
|
240
|
-
*
|
|
241
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
242
|
-
* you may not use this file except in compliance with the License.
|
|
243
|
-
* You may obtain a copy of the License at
|
|
244
|
-
*
|
|
245
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
246
|
-
*
|
|
247
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
248
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
249
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
250
|
-
* See the License for the specific language governing permissions and
|
|
251
|
-
* limitations under the License.
|
|
252
|
-
*)
|
|
253
|
-
|
|
254
|
-
@firebase/util/dist/index.esm2017.js:
|
|
255
|
-
(**
|
|
256
|
-
* @license
|
|
257
|
-
* Copyright 2022 Google LLC
|
|
258
|
-
*
|
|
259
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
260
|
-
* you may not use this file except in compliance with the License.
|
|
261
|
-
* You may obtain a copy of the License at
|
|
262
|
-
*
|
|
263
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
264
|
-
*
|
|
265
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
266
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
267
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
268
|
-
* See the License for the specific language governing permissions and
|
|
269
|
-
* limitations under the License.
|
|
270
|
-
*)
|
|
271
|
-
|
|
272
|
-
@firebase/util/dist/index.esm2017.js:
|
|
273
|
-
(**
|
|
274
|
-
* @license
|
|
275
|
-
* Copyright 2019 Google LLC
|
|
276
|
-
*
|
|
277
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
278
|
-
* you may not use this file except in compliance with the License.
|
|
279
|
-
* You may obtain a copy of the License at
|
|
280
|
-
*
|
|
281
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
282
|
-
*
|
|
283
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
284
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
285
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
286
|
-
* See the License for the specific language governing permissions and
|
|
287
|
-
* limitations under the License.
|
|
288
|
-
*)
|
|
289
|
-
|
|
290
|
-
@firebase/util/dist/index.esm2017.js:
|
|
291
|
-
(**
|
|
292
|
-
* @license
|
|
293
|
-
* Copyright 2020 Google LLC
|
|
294
|
-
*
|
|
295
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
296
|
-
* you may not use this file except in compliance with the License.
|
|
297
|
-
* You may obtain a copy of the License at
|
|
298
|
-
*
|
|
299
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
300
|
-
*
|
|
301
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
302
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
303
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
304
|
-
* See the License for the specific language governing permissions and
|
|
305
|
-
* limitations under the License.
|
|
306
|
-
*)
|
|
307
|
-
|
|
308
|
-
@firebase/util/dist/index.esm2017.js:
|
|
309
|
-
(**
|
|
310
|
-
* @license
|
|
311
|
-
* Copyright 2021 Google LLC
|
|
312
|
-
*
|
|
313
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
314
|
-
* you may not use this file except in compliance with the License.
|
|
315
|
-
* You may obtain a copy of the License at
|
|
316
|
-
*
|
|
317
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
318
|
-
*
|
|
319
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
320
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
321
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
322
|
-
* See the License for the specific language governing permissions and
|
|
323
|
-
* limitations under the License.
|
|
324
|
-
*)
|
|
325
|
-
|
|
326
|
-
@firebase/component/dist/esm/index.esm2017.js:
|
|
327
|
-
(**
|
|
328
|
-
* @license
|
|
329
|
-
* Copyright 2019 Google LLC
|
|
330
|
-
*
|
|
331
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
332
|
-
* you may not use this file except in compliance with the License.
|
|
333
|
-
* You may obtain a copy of the License at
|
|
334
|
-
*
|
|
335
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
336
|
-
*
|
|
337
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
338
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
339
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
340
|
-
* See the License for the specific language governing permissions and
|
|
341
|
-
* limitations under the License.
|
|
342
|
-
*)
|
|
343
|
-
|
|
344
|
-
@firebase/logger/dist/esm/index.esm2017.js:
|
|
345
|
-
(**
|
|
346
|
-
* @license
|
|
347
|
-
* Copyright 2017 Google LLC
|
|
348
|
-
*
|
|
349
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
350
|
-
* you may not use this file except in compliance with the License.
|
|
351
|
-
* You may obtain a copy of the License at
|
|
352
|
-
*
|
|
353
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
354
|
-
*
|
|
355
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
356
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
357
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
358
|
-
* See the License for the specific language governing permissions and
|
|
359
|
-
* limitations under the License.
|
|
360
|
-
*)
|
|
361
|
-
|
|
362
|
-
@firebase/app/dist/esm/index.esm2017.js:
|
|
363
|
-
(**
|
|
364
|
-
* @license
|
|
365
|
-
* Copyright 2019 Google LLC
|
|
366
|
-
*
|
|
367
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
368
|
-
* you may not use this file except in compliance with the License.
|
|
369
|
-
* You may obtain a copy of the License at
|
|
370
|
-
*
|
|
371
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
372
|
-
*
|
|
373
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
374
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
375
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
376
|
-
* See the License for the specific language governing permissions and
|
|
377
|
-
* limitations under the License.
|
|
378
|
-
*)
|
|
379
|
-
|
|
380
|
-
@firebase/app/dist/esm/index.esm2017.js:
|
|
381
|
-
(**
|
|
382
|
-
* @license
|
|
383
|
-
* Copyright 2019 Google LLC
|
|
384
|
-
*
|
|
385
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
386
|
-
* you may not use this file except in compliance with the License.
|
|
387
|
-
* You may obtain a copy of the License at
|
|
388
|
-
*
|
|
389
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
390
|
-
*
|
|
391
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
392
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
393
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
394
|
-
* See the License for the specific language governing permissions and
|
|
395
|
-
* limitations under the License.
|
|
396
|
-
*)
|
|
397
|
-
|
|
398
|
-
@firebase/app/dist/esm/index.esm2017.js:
|
|
399
|
-
(**
|
|
400
|
-
* @license
|
|
401
|
-
* Copyright 2021 Google LLC
|
|
402
|
-
*
|
|
403
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
404
|
-
* you may not use this file except in compliance with the License.
|
|
405
|
-
* You may obtain a copy of the License at
|
|
406
|
-
*
|
|
407
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
408
|
-
*
|
|
409
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
410
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
411
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
412
|
-
* See the License for the specific language governing permissions and
|
|
413
|
-
* limitations under the License.
|
|
414
|
-
*)
|
|
415
|
-
(**
|
|
416
|
-
* @license
|
|
417
|
-
* Copyright 2019 Google LLC
|
|
418
|
-
*
|
|
419
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
420
|
-
* you may not use this file except in compliance with the License.
|
|
421
|
-
* You may obtain a copy of the License at
|
|
422
|
-
*
|
|
423
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
424
|
-
*
|
|
425
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
426
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
427
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
428
|
-
* See the License for the specific language governing permissions and
|
|
429
|
-
* limitations under the License.
|
|
430
|
-
*)
|
|
431
|
-
|
|
432
|
-
firebase/app/dist/esm/index.esm.js:
|
|
433
|
-
(**
|
|
434
|
-
* @license
|
|
435
|
-
* Copyright 2020 Google LLC
|
|
436
|
-
*
|
|
437
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
438
|
-
* you may not use this file except in compliance with the License.
|
|
439
|
-
* You may obtain a copy of the License at
|
|
440
|
-
*
|
|
441
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
442
|
-
*
|
|
443
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
444
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
445
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
446
|
-
* See the License for the specific language governing permissions and
|
|
447
|
-
* limitations under the License.
|
|
448
|
-
*)
|
|
449
|
-
|
|
450
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
451
|
-
(**
|
|
452
|
-
* @license
|
|
453
|
-
* Copyright 2021 Google LLC
|
|
454
|
-
*
|
|
455
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
456
|
-
* you may not use this file except in compliance with the License.
|
|
457
|
-
* You may obtain a copy of the License at
|
|
458
|
-
*
|
|
459
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
460
|
-
*
|
|
461
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
462
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
463
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
464
|
-
* See the License for the specific language governing permissions and
|
|
465
|
-
* limitations under the License.
|
|
466
|
-
*)
|
|
467
|
-
|
|
468
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
469
|
-
(**
|
|
470
|
-
* @license
|
|
471
|
-
* Copyright 2020 Google LLC
|
|
472
|
-
*
|
|
473
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
474
|
-
* you may not use this file except in compliance with the License.
|
|
475
|
-
* You may obtain a copy of the License at
|
|
476
|
-
*
|
|
477
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
478
|
-
*
|
|
479
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
480
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
481
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
482
|
-
* See the License for the specific language governing permissions and
|
|
483
|
-
* limitations under the License.
|
|
484
|
-
*)
|
|
485
|
-
|
|
486
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
487
|
-
(**
|
|
488
|
-
* @license
|
|
489
|
-
* Copyright 2020 Google LLC
|
|
490
|
-
*
|
|
491
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
492
|
-
* you may not use this file except in compliance with the License.
|
|
493
|
-
* You may obtain a copy of the License at
|
|
494
|
-
*
|
|
495
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
496
|
-
*
|
|
497
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
498
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
499
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
500
|
-
* See the License for the specific language governing permissions and
|
|
501
|
-
* limitations under the License.
|
|
502
|
-
*)
|
|
503
|
-
|
|
504
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
505
|
-
(**
|
|
506
|
-
* @license
|
|
507
|
-
* Copyright 2020 Google LLC
|
|
508
|
-
*
|
|
509
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
510
|
-
* you may not use this file except in compliance with the License.
|
|
511
|
-
* You may obtain a copy of the License at
|
|
512
|
-
*
|
|
513
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
514
|
-
*
|
|
515
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
516
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
517
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
518
|
-
* See the License for the specific language governing permissions and
|
|
519
|
-
* limitations under the License.
|
|
520
|
-
*)
|
|
521
|
-
|
|
522
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
523
|
-
(**
|
|
524
|
-
* @license
|
|
525
|
-
* Copyright 2020 Google LLC
|
|
526
|
-
*
|
|
527
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
528
|
-
* you may not use this file except in compliance with the License.
|
|
529
|
-
* You may obtain a copy of the License at
|
|
530
|
-
*
|
|
531
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
532
|
-
*
|
|
533
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
534
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
535
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
536
|
-
* See the License for the specific language governing permissions and
|
|
537
|
-
* limitations under the License.
|
|
538
|
-
*)
|
|
539
|
-
|
|
540
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
541
|
-
(**
|
|
542
|
-
* @license
|
|
543
|
-
* Copyright 2020 Google LLC
|
|
544
|
-
*
|
|
545
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
546
|
-
* you may not use this file except in compliance with the License.
|
|
547
|
-
* You may obtain a copy of the License at
|
|
548
|
-
*
|
|
549
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
550
|
-
*
|
|
551
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
552
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
553
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
554
|
-
* See the License for the specific language governing permissions and
|
|
555
|
-
* limitations under the License.
|
|
556
|
-
*)
|
|
557
|
-
|
|
558
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
559
|
-
(**
|
|
560
|
-
* @license
|
|
561
|
-
* Copyright 2020 Google LLC
|
|
562
|
-
*
|
|
563
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
564
|
-
* you may not use this file except in compliance with the License.
|
|
565
|
-
* You may obtain a copy of the License at
|
|
566
|
-
*
|
|
567
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
568
|
-
*
|
|
569
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
570
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
571
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
572
|
-
* See the License for the specific language governing permissions and
|
|
573
|
-
* limitations under the License.
|
|
574
|
-
*)
|
|
575
|
-
(**
|
|
576
|
-
* @license
|
|
577
|
-
* Copyright 2019 Google LLC
|
|
578
|
-
*
|
|
579
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
580
|
-
* you may not use this file except in compliance with the License.
|
|
581
|
-
* You may obtain a copy of the License at
|
|
582
|
-
*
|
|
583
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
584
|
-
*
|
|
585
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
586
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
587
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
588
|
-
* See the License for the specific language governing permissions and
|
|
589
|
-
* limitations under the License.
|
|
590
|
-
*)
|
|
591
|
-
|
|
592
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
593
|
-
(**
|
|
594
|
-
* @license
|
|
595
|
-
* Copyright 2020 Google LLC
|
|
596
|
-
*
|
|
597
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
598
|
-
* you may not use this file except in compliance with the License.
|
|
599
|
-
* You may obtain a copy of the License at
|
|
600
|
-
*
|
|
601
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
602
|
-
*
|
|
603
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
604
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
605
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
606
|
-
* See the License for the specific language governing permissions and
|
|
607
|
-
* limitations under the License.
|
|
608
|
-
*)
|
|
609
|
-
(**
|
|
610
|
-
* @license
|
|
611
|
-
* Copyright 2022 Google LLC
|
|
612
|
-
*
|
|
613
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
614
|
-
* you may not use this file except in compliance with the License.
|
|
615
|
-
* You may obtain a copy of the License at
|
|
616
|
-
*
|
|
617
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
618
|
-
*
|
|
619
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
620
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
621
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
622
|
-
* See the License for the specific language governing permissions and
|
|
623
|
-
* limitations under the License.
|
|
624
|
-
*)
|
|
625
|
-
(**
|
|
626
|
-
* @license
|
|
627
|
-
* Copyright 2023 Google LLC
|
|
628
|
-
*
|
|
629
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
630
|
-
* you may not use this file except in compliance with the License.
|
|
631
|
-
* You may obtain a copy of the License at
|
|
632
|
-
*
|
|
633
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
634
|
-
*
|
|
635
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
636
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
637
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
638
|
-
* See the License for the specific language governing permissions and
|
|
639
|
-
* limitations under the License.
|
|
640
|
-
*)
|
|
641
|
-
|
|
642
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
643
|
-
(**
|
|
644
|
-
* @license
|
|
645
|
-
* Copyright 2020 Google LLC
|
|
646
|
-
*
|
|
647
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
648
|
-
* you may not use this file except in compliance with the License.
|
|
649
|
-
* You may obtain a copy of the License at
|
|
650
|
-
*
|
|
651
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
652
|
-
*
|
|
653
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
654
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
655
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
656
|
-
* See the License for the specific language governing permissions and
|
|
657
|
-
* limitations under the License.
|
|
658
|
-
*)
|
|
659
|
-
|
|
660
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
661
|
-
(**
|
|
662
|
-
* @license
|
|
663
|
-
* Copyright 2020 Google LLC
|
|
664
|
-
*
|
|
665
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
666
|
-
* you may not use this file except in compliance with the License.
|
|
667
|
-
* You may obtain a copy of the License at
|
|
668
|
-
*
|
|
669
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
670
|
-
*
|
|
671
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
672
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
673
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
674
|
-
* See the License for the specific language governing permissions and
|
|
675
|
-
* limitations under the License.
|
|
676
|
-
*)
|
|
677
|
-
|
|
678
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
679
|
-
(**
|
|
680
|
-
* @license
|
|
681
|
-
* Copyright 2020 Google LLC
|
|
682
|
-
*
|
|
683
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
684
|
-
* you may not use this file except in compliance with the License.
|
|
685
|
-
* You may obtain a copy of the License at
|
|
686
|
-
*
|
|
687
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
688
|
-
*
|
|
689
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
690
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
691
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
692
|
-
* See the License for the specific language governing permissions and
|
|
693
|
-
* limitations under the License.
|
|
694
|
-
*)
|
|
695
|
-
|
|
696
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
697
|
-
(**
|
|
698
|
-
* @license
|
|
699
|
-
* Copyright 2020 Google LLC
|
|
700
|
-
*
|
|
701
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
702
|
-
* you may not use this file except in compliance with the License.
|
|
703
|
-
* You may obtain a copy of the License at
|
|
704
|
-
*
|
|
705
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
706
|
-
*
|
|
707
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
708
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
709
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
710
|
-
* See the License for the specific language governing permissions and
|
|
711
|
-
* limitations under the License.
|
|
712
|
-
*)
|
|
713
|
-
(**
|
|
714
|
-
* @license
|
|
715
|
-
* Copyright 2019 Google LLC
|
|
716
|
-
*
|
|
717
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
718
|
-
* you may not use this file except in compliance with the License.
|
|
719
|
-
* You may obtain a copy of the License at
|
|
720
|
-
*
|
|
721
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
722
|
-
*
|
|
723
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
724
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
725
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
726
|
-
* See the License for the specific language governing permissions and
|
|
727
|
-
* limitations under the License.
|
|
728
|
-
*)
|
|
729
|
-
|
|
730
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
731
|
-
(**
|
|
732
|
-
* @license
|
|
733
|
-
* Copyright 2020 Google LLC
|
|
734
|
-
*
|
|
735
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
736
|
-
* you may not use this file except in compliance with the License.
|
|
737
|
-
* You may obtain a copy of the License at
|
|
738
|
-
*
|
|
739
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
740
|
-
*
|
|
741
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
742
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
743
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
744
|
-
* See the License for the specific language governing permissions and
|
|
745
|
-
* limitations under the License.
|
|
746
|
-
*)
|
|
747
|
-
|
|
748
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
749
|
-
(**
|
|
750
|
-
* @license
|
|
751
|
-
* Copyright 2020 Google LLC
|
|
752
|
-
*
|
|
753
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
754
|
-
* you may not use this file except in compliance with the License.
|
|
755
|
-
* You may obtain a copy of the License at
|
|
756
|
-
*
|
|
757
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
758
|
-
*
|
|
759
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
760
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
761
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
762
|
-
* See the License for the specific language governing permissions and
|
|
763
|
-
* limitations under the License.
|
|
764
|
-
*)
|
|
765
|
-
|
|
766
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
767
|
-
(**
|
|
768
|
-
* @license
|
|
769
|
-
* Copyright 2020 Google LLC
|
|
770
|
-
*
|
|
771
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
772
|
-
* you may not use this file except in compliance with the License.
|
|
773
|
-
* You may obtain a copy of the License at
|
|
774
|
-
*
|
|
775
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
776
|
-
*
|
|
777
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
778
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
779
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
780
|
-
* See the License for the specific language governing permissions and
|
|
781
|
-
* limitations under the License.
|
|
782
|
-
*)
|
|
783
|
-
|
|
784
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
785
|
-
(**
|
|
786
|
-
* @license
|
|
787
|
-
* Copyright 2020 Google LLC
|
|
788
|
-
*
|
|
789
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
790
|
-
* you may not use this file except in compliance with the License.
|
|
791
|
-
* You may obtain a copy of the License at
|
|
792
|
-
*
|
|
793
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
794
|
-
*
|
|
795
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
796
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
797
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
798
|
-
* See the License for the specific language governing permissions and
|
|
799
|
-
* limitations under the License.
|
|
800
|
-
*)
|
|
801
|
-
|
|
802
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
803
|
-
(**
|
|
804
|
-
* @license
|
|
805
|
-
* Copyright 2020 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
|
-
*)
|
|
819
|
-
|
|
820
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
821
|
-
(**
|
|
822
|
-
* @license
|
|
823
|
-
* Copyright 2019 Google LLC
|
|
824
|
-
*
|
|
825
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
826
|
-
* you may not use this file except in compliance with the License.
|
|
827
|
-
* You may obtain a copy of the License at
|
|
828
|
-
*
|
|
829
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
830
|
-
*
|
|
831
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
832
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
833
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
834
|
-
* See the License for the specific language governing permissions and
|
|
835
|
-
* limitations under the License.
|
|
836
|
-
*)
|
|
837
|
-
|
|
838
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
839
|
-
(**
|
|
840
|
-
* @license
|
|
841
|
-
* Copyright 2019 Google LLC
|
|
842
|
-
*
|
|
843
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
844
|
-
* you may not use this file except in compliance with the License.
|
|
845
|
-
* You may obtain a copy of the License at
|
|
846
|
-
*
|
|
847
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
848
|
-
*
|
|
849
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
850
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
851
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
852
|
-
* See the License for the specific language governing permissions and
|
|
853
|
-
* limitations under the License.
|
|
854
|
-
*)
|
|
855
|
-
(**
|
|
856
|
-
* @license
|
|
857
|
-
* Copyright 2020 Google LLC
|
|
858
|
-
*
|
|
859
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
860
|
-
* you may not use this file except in compliance with the License.
|
|
861
|
-
* You may obtain a copy of the License at
|
|
862
|
-
*
|
|
863
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
864
|
-
*
|
|
865
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
866
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
867
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
868
|
-
* See the License for the specific language governing permissions and
|
|
869
|
-
* limitations under the License.
|
|
870
|
-
*)
|
|
871
|
-
|
|
872
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
873
|
-
(**
|
|
874
|
-
* @license
|
|
875
|
-
* Copyright 2020 Google LLC
|
|
876
|
-
*
|
|
877
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
878
|
-
* you may not use this file except in compliance with the License.
|
|
879
|
-
* You may obtain a copy of the License at
|
|
880
|
-
*
|
|
881
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
882
|
-
*
|
|
883
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
884
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
885
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
886
|
-
* See the License for the specific language governing permissions and
|
|
887
|
-
* limitations under the License.
|
|
888
|
-
*)
|
|
889
|
-
|
|
890
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
891
|
-
(**
|
|
892
|
-
* @license
|
|
893
|
-
* Copyright 2020 Google LLC
|
|
894
|
-
*
|
|
895
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
896
|
-
* you may not use this file except in compliance with the License.
|
|
897
|
-
* You may obtain a copy of the License at
|
|
898
|
-
*
|
|
899
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
900
|
-
*
|
|
901
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
902
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
903
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
904
|
-
* See the License for the specific language governing permissions and
|
|
905
|
-
* limitations under the License.
|
|
906
|
-
*)
|
|
907
|
-
|
|
908
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
909
|
-
(**
|
|
910
|
-
* @license
|
|
911
|
-
* Copyright 2020 Google LLC
|
|
912
|
-
*
|
|
913
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
914
|
-
* you may not use this file except in compliance with the License.
|
|
915
|
-
* You may obtain a copy of the License at
|
|
916
|
-
*
|
|
917
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
918
|
-
*
|
|
919
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
920
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
921
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
922
|
-
* See the License for the specific language governing permissions and
|
|
923
|
-
* limitations under the License.
|
|
924
|
-
*)
|
|
925
|
-
|
|
926
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
927
|
-
(**
|
|
928
|
-
* @license
|
|
929
|
-
* Copyright 2020 Google LLC
|
|
930
|
-
*
|
|
931
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
932
|
-
* you may not use this file except in compliance with the License.
|
|
933
|
-
* You may obtain a copy of the License at
|
|
934
|
-
*
|
|
935
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
936
|
-
*
|
|
937
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
938
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
939
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
940
|
-
* See the License for the specific language governing permissions and
|
|
941
|
-
* limitations under the License.
|
|
942
|
-
*)
|
|
943
|
-
|
|
944
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
945
|
-
(**
|
|
946
|
-
* @license
|
|
947
|
-
* Copyright 2020 Google LLC
|
|
948
|
-
*
|
|
949
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
950
|
-
* you may not use this file except in compliance with the License.
|
|
951
|
-
* You may obtain a copy of the License at
|
|
952
|
-
*
|
|
953
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
954
|
-
*
|
|
955
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
956
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
957
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
958
|
-
* See the License for the specific language governing permissions and
|
|
959
|
-
* limitations under the License.
|
|
960
|
-
*)
|
|
961
|
-
|
|
962
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
963
|
-
(**
|
|
964
|
-
* @license
|
|
965
|
-
* Copyright 2020 Google LLC
|
|
966
|
-
*
|
|
967
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
968
|
-
* you may not use this file except in compliance with the License.
|
|
969
|
-
* You may obtain a copy of the License at
|
|
970
|
-
*
|
|
971
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
972
|
-
*
|
|
973
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
974
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
975
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
976
|
-
* See the License for the specific language governing permissions and
|
|
977
|
-
* limitations under the License.
|
|
978
|
-
*)
|
|
979
|
-
|
|
980
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
981
|
-
(**
|
|
982
|
-
* @license
|
|
983
|
-
* Copyright 2020 Google LLC
|
|
984
|
-
*
|
|
985
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
986
|
-
* you may not use this file except in compliance with the License.
|
|
987
|
-
* You may obtain a copy of the License at
|
|
988
|
-
*
|
|
989
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
990
|
-
*
|
|
991
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
992
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
993
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
994
|
-
* See the License for the specific language governing permissions and
|
|
995
|
-
* limitations under the License.
|
|
996
|
-
*)
|
|
997
|
-
|
|
998
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
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
|
-
*)
|
|
1015
|
-
|
|
1016
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1017
|
-
(**
|
|
1018
|
-
* @license
|
|
1019
|
-
* Copyright 2020 Google LLC
|
|
1020
|
-
*
|
|
1021
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1022
|
-
* you may not use this file except in compliance with the License.
|
|
1023
|
-
* You may obtain a copy of the License at
|
|
1024
|
-
*
|
|
1025
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1026
|
-
*
|
|
1027
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1028
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1029
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1030
|
-
* See the License for the specific language governing permissions and
|
|
1031
|
-
* limitations under the License.
|
|
1032
|
-
*)
|
|
1033
|
-
|
|
1034
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1035
|
-
(**
|
|
1036
|
-
* @license
|
|
1037
|
-
* Copyright 2020 Google LLC
|
|
1038
|
-
*
|
|
1039
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1040
|
-
* you may not use this file except in compliance with the License.
|
|
1041
|
-
* You may obtain a copy of the License at
|
|
1042
|
-
*
|
|
1043
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1044
|
-
*
|
|
1045
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1046
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1047
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1048
|
-
* See the License for the specific language governing permissions and
|
|
1049
|
-
* limitations under the License.
|
|
1050
|
-
*)
|
|
1051
|
-
|
|
1052
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1053
|
-
(**
|
|
1054
|
-
* @license
|
|
1055
|
-
* Copyright 2019 Google LLC
|
|
1056
|
-
*
|
|
1057
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1058
|
-
* you may not use this file except in compliance with the License.
|
|
1059
|
-
* You may obtain a copy of the License at
|
|
1060
|
-
*
|
|
1061
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1062
|
-
*
|
|
1063
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1064
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1065
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1066
|
-
* See the License for the specific language governing permissions and
|
|
1067
|
-
* limitations under the License.
|
|
1068
|
-
*)
|
|
1069
|
-
|
|
1070
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1071
|
-
(**
|
|
1072
|
-
* @license
|
|
1073
|
-
* Copyright 2020 Google LLC
|
|
1074
|
-
*
|
|
1075
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1076
|
-
* you may not use this file except in compliance with the License.
|
|
1077
|
-
* You may obtain a copy of the License at
|
|
1078
|
-
*
|
|
1079
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1080
|
-
*
|
|
1081
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1082
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1083
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1084
|
-
* See the License for the specific language governing permissions and
|
|
1085
|
-
* limitations under the License.
|
|
1086
|
-
*)
|
|
1087
|
-
|
|
1088
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1089
|
-
(**
|
|
1090
|
-
* @license
|
|
1091
|
-
* Copyright 2020 Google LLC
|
|
1092
|
-
*
|
|
1093
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1094
|
-
* you may not use this file except in compliance with the License.
|
|
1095
|
-
* You may obtain a copy of the License at
|
|
1096
|
-
*
|
|
1097
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1098
|
-
*
|
|
1099
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1100
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1101
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1102
|
-
* See the License for the specific language governing permissions and
|
|
1103
|
-
* limitations under the License.
|
|
1104
|
-
*)
|
|
1105
|
-
|
|
1106
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1107
|
-
(**
|
|
1108
|
-
* @license
|
|
1109
|
-
* Copyright 2020 Google LLC
|
|
1110
|
-
*
|
|
1111
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1112
|
-
* you may not use this file except in compliance with the License.
|
|
1113
|
-
* You may obtain a copy of the License at
|
|
1114
|
-
*
|
|
1115
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1116
|
-
*
|
|
1117
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1118
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1119
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1120
|
-
* See the License for the specific language governing permissions and
|
|
1121
|
-
* limitations under the License.
|
|
1122
|
-
*)
|
|
1123
|
-
|
|
1124
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1125
|
-
(**
|
|
1126
|
-
* @license
|
|
1127
|
-
* Copyright 2020 Google LLC
|
|
1128
|
-
*
|
|
1129
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1130
|
-
* you may not use this file except in compliance with the License.
|
|
1131
|
-
* You may obtain a copy of the License at
|
|
1132
|
-
*
|
|
1133
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1134
|
-
*
|
|
1135
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1136
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1137
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1138
|
-
* See the License for the specific language governing permissions and
|
|
1139
|
-
* limitations under the License.
|
|
1140
|
-
*)
|
|
1141
|
-
|
|
1142
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1143
|
-
(**
|
|
1144
|
-
* @license
|
|
1145
|
-
* Copyright 2019 Google LLC
|
|
1146
|
-
*
|
|
1147
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1148
|
-
* you may not use this file except in compliance with the License.
|
|
1149
|
-
* You may obtain a copy of the License at
|
|
1150
|
-
*
|
|
1151
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1152
|
-
*
|
|
1153
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1154
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1155
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1156
|
-
* See the License for the specific language governing permissions and
|
|
1157
|
-
* limitations under the License.
|
|
1158
|
-
*)
|
|
1159
|
-
(**
|
|
1160
|
-
* @license
|
|
1161
|
-
* Copyright 2020 Google LLC
|
|
1162
|
-
*
|
|
1163
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1164
|
-
* you may not use this file except in compliance with the License.
|
|
1165
|
-
* You may obtain a copy of the License at
|
|
1166
|
-
*
|
|
1167
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1168
|
-
*
|
|
1169
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1170
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1171
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1172
|
-
* See the License for the specific language governing permissions and
|
|
1173
|
-
* limitations under the License.
|
|
1174
|
-
*)
|
|
1175
|
-
(**
|
|
1176
|
-
* @license
|
|
1177
|
-
* Copyright 2020 Google LLC.
|
|
1178
|
-
*
|
|
1179
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1180
|
-
* you may not use this file except in compliance with the License.
|
|
1181
|
-
* You may obtain a copy of the License at
|
|
1182
|
-
*
|
|
1183
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1184
|
-
*
|
|
1185
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1186
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1187
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1188
|
-
* See the License for the specific language governing permissions and
|
|
1189
|
-
* limitations under the License.
|
|
1190
|
-
*)
|
|
1191
|
-
|
|
1192
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1193
|
-
(**
|
|
1194
|
-
* @license
|
|
1195
|
-
* Copyright 2020 Google LLC
|
|
1196
|
-
*
|
|
1197
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1198
|
-
* you may not use this file except in compliance with the License.
|
|
1199
|
-
* You may obtain a copy of the License at
|
|
1200
|
-
*
|
|
1201
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1202
|
-
*
|
|
1203
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1204
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1205
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1206
|
-
* See the License for the specific language governing permissions and
|
|
1207
|
-
* limitations under the License.
|
|
1208
|
-
*)
|
|
1209
|
-
|
|
1210
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1211
|
-
(**
|
|
1212
|
-
* @license
|
|
1213
|
-
* Copyright 2020 Google LLC
|
|
1214
|
-
*
|
|
1215
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1216
|
-
* you may not use this file except in compliance with the License.
|
|
1217
|
-
* You may obtain a copy of the License at
|
|
1218
|
-
*
|
|
1219
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1220
|
-
*
|
|
1221
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1222
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1223
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1224
|
-
* See the License for the specific language governing permissions and
|
|
1225
|
-
* limitations under the License.
|
|
1226
|
-
*)
|
|
1227
|
-
|
|
1228
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1229
|
-
(**
|
|
1230
|
-
* @license
|
|
1231
|
-
* Copyright 2020 Google LLC
|
|
1232
|
-
*
|
|
1233
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1234
|
-
* you may not use this file except in compliance with the License.
|
|
1235
|
-
* You may obtain a copy of the License at
|
|
1236
|
-
*
|
|
1237
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1238
|
-
*
|
|
1239
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1240
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1241
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1242
|
-
* See the License for the specific language governing permissions and
|
|
1243
|
-
* limitations under the License.
|
|
1244
|
-
*)
|
|
1245
|
-
|
|
1246
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
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
|
-
*)
|
|
1263
|
-
(**
|
|
1264
|
-
* @license
|
|
1265
|
-
* Copyright 2021 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
|
-
*)
|
|
1279
|
-
(**
|
|
1280
|
-
* @license
|
|
1281
|
-
* Copyright 2019 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
|
-
|
|
1296
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1297
|
-
(**
|
|
1298
|
-
* @license
|
|
1299
|
-
* Copyright 2020 Google LLC
|
|
1300
|
-
*
|
|
1301
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1302
|
-
* you may not use this file except in compliance with the License.
|
|
1303
|
-
* You may obtain a copy of the License at
|
|
1304
|
-
*
|
|
1305
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1306
|
-
*
|
|
1307
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1308
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1309
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1310
|
-
* See the License for the specific language governing permissions and
|
|
1311
|
-
* limitations under the License.
|
|
1312
|
-
*)
|
|
1313
|
-
|
|
1314
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1315
|
-
(**
|
|
1316
|
-
* @license
|
|
1317
|
-
* Copyright 2020 Google LLC
|
|
1318
|
-
*
|
|
1319
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1320
|
-
* you may not use this file except in compliance with the License.
|
|
1321
|
-
* You may obtain a copy of the License at
|
|
1322
|
-
*
|
|
1323
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1324
|
-
*
|
|
1325
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1326
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1327
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1328
|
-
* See the License for the specific language governing permissions and
|
|
1329
|
-
* limitations under the License.
|
|
1330
|
-
*)
|
|
1331
|
-
|
|
1332
|
-
@firebase/auth/dist/esm2017/index-94e5f531.js:
|
|
1333
|
-
(**
|
|
1334
|
-
* @license
|
|
1335
|
-
* Copyright 2020 Google LLC
|
|
1336
|
-
*
|
|
1337
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1338
|
-
* you may not use this file except in compliance with the License.
|
|
1339
|
-
* You may obtain a copy of the License at
|
|
1340
|
-
*
|
|
1341
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1342
|
-
*
|
|
1343
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1344
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1345
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1346
|
-
* See the License for the specific language governing permissions and
|
|
1347
|
-
* limitations under the License.
|
|
1348
|
-
*)
|
|
1349
|
-
(**
|
|
1350
|
-
* @license
|
|
1351
|
-
* Copyright 2020 Google LLC.
|
|
1352
|
-
*
|
|
1353
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1354
|
-
* you may not use this file except in compliance with the License.
|
|
1355
|
-
* You may obtain a copy of the License at
|
|
1356
|
-
*
|
|
1357
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1358
|
-
*
|
|
1359
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1360
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1361
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1362
|
-
* See the License for the specific language governing permissions and
|
|
1363
|
-
* limitations under the License.
|
|
1364
|
-
*)
|
|
1365
|
-
(**
|
|
1366
|
-
* @license
|
|
1367
|
-
* Copyright 2021 Google LLC
|
|
1368
|
-
*
|
|
1369
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1370
|
-
* you may not use this file except in compliance with the License.
|
|
1371
|
-
* You may obtain a copy of the License at
|
|
1372
|
-
*
|
|
1373
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1374
|
-
*
|
|
1375
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
1376
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1377
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1378
|
-
* See the License for the specific language governing permissions and
|
|
1379
|
-
* limitations under the License.
|
|
1380
|
-
*)
|
|
1381
|
-
*/
|
|
1
|
+
"use strict";(()=>{var Yn=()=>{};var Zn=function(t){let e=[],n=0;for(let r=0;r<t.length;r++){let i=t.charCodeAt(r);i<128?e[n++]=i:i<2048?(e[n++]=i>>6|192,e[n++]=i&63|128):(i&64512)===55296&&r+1<t.length&&(t.charCodeAt(r+1)&64512)===56320?(i=65536+((i&1023)<<10)+(t.charCodeAt(++r)&1023),e[n++]=i>>18|240,e[n++]=i>>12&63|128,e[n++]=i>>6&63|128,e[n++]=i&63|128):(e[n++]=i>>12|224,e[n++]=i>>6&63|128,e[n++]=i&63|128)}return e},ts=function(t){let e=[],n=0,r=0;for(;n<t.length;){let i=t[n++];if(i<128)e[r++]=String.fromCharCode(i);else if(i>191&&i<224){let s=t[n++];e[r++]=String.fromCharCode((i&31)<<6|s&63)}else if(i>239&&i<365){let s=t[n++],o=t[n++],a=t[n++],u=((i&7)<<18|(s&63)<<12|(o&63)<<6|a&63)-65536;e[r++]=String.fromCharCode(55296+(u>>10)),e[r++]=String.fromCharCode(56320+(u&1023))}else{let s=t[n++],o=t[n++];e[r++]=String.fromCharCode((i&15)<<12|(s&63)<<6|o&63)}}return e.join("")},er={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:typeof atob=="function",encodeByteArray(t,e){if(!Array.isArray(t))throw Error("encodeByteArray takes an array as a parameter");this.init_();let n=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,r=[];for(let i=0;i<t.length;i+=3){let s=t[i],o=i+1<t.length,a=o?t[i+1]:0,u=i+2<t.length,c=u?t[i+2]:0,h=s>>2,l=(s&3)<<4|a>>4,d=(a&15)<<2|c>>6,f=c&63;u||(f=64,o||(d=64)),r.push(n[h],n[l],n[d],n[f])}return r.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(Zn(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):ts(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();let n=e?this.charToByteMapWebSafe_:this.charToByteMap_,r=[];for(let i=0;i<t.length;){let s=n[t.charAt(i++)],a=i<t.length?n[t.charAt(i)]:0;++i;let c=i<t.length?n[t.charAt(i)]:64;++i;let l=i<t.length?n[t.charAt(i)]:64;if(++i,s==null||a==null||c==null||l==null)throw new xt;let d=s<<2|a>>4;if(r.push(d),c!==64){let f=a<<4&240|c>>2;if(r.push(f),l!==64){let g=c<<6&192|l;r.push(g)}}}return r},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)}}},xt=class extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}},ns=function(t){let e=Zn(t);return er.encodeByteArray(e,!0)},Vt=function(t){return ns(t).replace(/\./g,"")},je=function(t){try{return er.decodeString(t,!0)}catch(e){console.error("base64Decode failed: ",e)}return null};function rs(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("Unable to locate global object.")}var is=()=>rs().__FIREBASE_DEFAULTS__,ss=()=>{if(typeof process>"u"||typeof process.env>"u")return;let t=process.env.__FIREBASE_DEFAULTS__;if(t)return JSON.parse(t)},os=()=>{if(typeof document>"u")return;let t;try{t=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}let e=t&&je(t[1]);return e&&JSON.parse(e)},Ht=()=>{try{return Yn()||is()||ss()||os()}catch(t){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${t}`);return}},tr=t=>Ht()?.emulatorHosts?.[t];var Wt=()=>Ht()?.config,Bt=t=>Ht()?.[`_${t}`];var ze=class{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((e,n)=>{this.resolve=e,this.reject=n})}wrapCallback(e){return(n,r)=>{n?this.reject(n):this.resolve(r),typeof e=="function"&&(this.promise.catch(()=>{}),e.length===1?e(n):e(n,r))}}};function ve(t){try{return(t.startsWith("http://")||t.startsWith("https://")?new URL(t).hostname:t).endsWith(".cloudworkstations.dev")}catch{return!1}}async function nr(t){return(await fetch(t,{credentials:"include"})).ok}var ye={};function as(){let t={prod:[],emulator:[]};for(let e of Object.keys(ye))ye[e]?t.emulator.push(e):t.prod.push(e);return t}function cs(t){let e=document.getElementById(t),n=!1;return e||(e=document.createElement("div"),e.setAttribute("id",t),n=!0),{created:n,element:e}}var Xn=!1;function rr(t,e){if(typeof window>"u"||typeof document>"u"||!ve(window.location.host)||ye[t]===e||ye[t]||Xn)return;ye[t]=e;function n(d){return`__firebase__banner__${d}`}let r="__firebase__banner",s=as().prod.length>0;function o(){let d=document.getElementById(r);d&&d.remove()}function a(d){d.style.display="flex",d.style.background="#7faaf0",d.style.position="fixed",d.style.bottom="5px",d.style.left="5px",d.style.padding=".5em",d.style.borderRadius="5px",d.style.alignItems="center"}function u(d,f){d.setAttribute("width","24"),d.setAttribute("id",f),d.setAttribute("height","24"),d.setAttribute("viewBox","0 0 24 24"),d.setAttribute("fill","none"),d.style.marginLeft="-6px"}function c(){let d=document.createElement("span");return d.style.cursor="pointer",d.style.marginLeft="16px",d.style.fontSize="24px",d.innerHTML=" ×",d.onclick=()=>{Xn=!0,o()},d}function h(d,f){d.setAttribute("id",f),d.innerText="Learn more",d.href="https://firebase.google.com/docs/studio/preview-apps#preview-backend",d.setAttribute("target","__blank"),d.style.paddingLeft="5px",d.style.textDecoration="underline"}function l(){let d=cs(r),f=n("text"),g=document.getElementById(f)||document.createElement("span"),A=n("learnmore"),y=document.getElementById(A)||document.createElement("a"),_=n("preprendIcon"),m=document.getElementById(_)||document.createElementNS("http://www.w3.org/2000/svg","svg");if(d.created){let C=d.element;a(C),h(y,A);let D=c();u(m,_),C.append(m,g,y,D),document.body.appendChild(C)}s?(g.innerText="Preview backend disconnected.",m.innerHTML=`<g clip-path="url(#clip0_6013_33858)">
|
|
2
|
+
<path d="M4.8 17.6L12 5.6L19.2 17.6H4.8ZM6.91667 16.4H17.0833L12 7.93333L6.91667 16.4ZM12 15.6C12.1667 15.6 12.3056 15.5444 12.4167 15.4333C12.5389 15.3111 12.6 15.1667 12.6 15C12.6 14.8333 12.5389 14.6944 12.4167 14.5833C12.3056 14.4611 12.1667 14.4 12 14.4C11.8333 14.4 11.6889 14.4611 11.5667 14.5833C11.4556 14.6944 11.4 14.8333 11.4 15C11.4 15.1667 11.4556 15.3111 11.5667 15.4333C11.6889 15.5444 11.8333 15.6 12 15.6ZM11.4 13.6H12.6V10.4H11.4V13.6Z" fill="#212121"/>
|
|
3
|
+
</g>
|
|
4
|
+
<defs>
|
|
5
|
+
<clipPath id="clip0_6013_33858">
|
|
6
|
+
<rect width="24" height="24" fill="white"/>
|
|
7
|
+
</clipPath>
|
|
8
|
+
</defs>`):(m.innerHTML=`<g clip-path="url(#clip0_6083_34804)">
|
|
9
|
+
<path d="M11.4 15.2H12.6V11.2H11.4V15.2ZM12 10C12.1667 10 12.3056 9.94444 12.4167 9.83333C12.5389 9.71111 12.6 9.56667 12.6 9.4C12.6 9.23333 12.5389 9.09444 12.4167 8.98333C12.3056 8.86111 12.1667 8.8 12 8.8C11.8333 8.8 11.6889 8.86111 11.5667 8.98333C11.4556 9.09444 11.4 9.23333 11.4 9.4C11.4 9.56667 11.4556 9.71111 11.5667 9.83333C11.6889 9.94444 11.8333 10 12 10ZM12 18.4C11.1222 18.4 10.2944 18.2333 9.51667 17.9C8.73889 17.5667 8.05556 17.1111 7.46667 16.5333C6.88889 15.9444 6.43333 15.2611 6.1 14.4833C5.76667 13.7056 5.6 12.8778 5.6 12C5.6 11.1111 5.76667 10.2833 6.1 9.51667C6.43333 8.73889 6.88889 8.06111 7.46667 7.48333C8.05556 6.89444 8.73889 6.43333 9.51667 6.1C10.2944 5.76667 11.1222 5.6 12 5.6C12.8889 5.6 13.7167 5.76667 14.4833 6.1C15.2611 6.43333 15.9389 6.89444 16.5167 7.48333C17.1056 8.06111 17.5667 8.73889 17.9 9.51667C18.2333 10.2833 18.4 11.1111 18.4 12C18.4 12.8778 18.2333 13.7056 17.9 14.4833C17.5667 15.2611 17.1056 15.9444 16.5167 16.5333C15.9389 17.1111 15.2611 17.5667 14.4833 17.9C13.7167 18.2333 12.8889 18.4 12 18.4ZM12 17.2C13.4444 17.2 14.6722 16.6944 15.6833 15.6833C16.6944 14.6722 17.2 13.4444 17.2 12C17.2 10.5556 16.6944 9.32778 15.6833 8.31667C14.6722 7.30555 13.4444 6.8 12 6.8C10.5556 6.8 9.32778 7.30555 8.31667 8.31667C7.30556 9.32778 6.8 10.5556 6.8 12C6.8 13.4444 7.30556 14.6722 8.31667 15.6833C9.32778 16.6944 10.5556 17.2 12 17.2Z" fill="#212121"/>
|
|
10
|
+
</g>
|
|
11
|
+
<defs>
|
|
12
|
+
<clipPath id="clip0_6083_34804">
|
|
13
|
+
<rect width="24" height="24" fill="white"/>
|
|
14
|
+
</clipPath>
|
|
15
|
+
</defs>`,g.innerText="Preview backend running in this workspace."),g.setAttribute("id",f)}document.readyState==="loading"?window.addEventListener("DOMContentLoaded",l):l()}function S(){return typeof navigator<"u"&&typeof navigator.userAgent=="string"?navigator.userAgent:""}function ir(){return typeof window<"u"&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(S())}function sr(){return typeof navigator<"u"&&navigator.userAgent==="Cloudflare-Workers"}function or(){let t=typeof chrome=="object"?chrome.runtime:typeof browser=="object"?browser.runtime:void 0;return typeof t=="object"&&t.id!==void 0}function ar(){return typeof navigator=="object"&&navigator.product==="ReactNative"}function cr(){let t=S();return t.indexOf("MSIE ")>=0||t.indexOf("Trident/")>=0}function ur(){try{return typeof indexedDB=="object"}catch{return!1}}function lr(){return new Promise((t,e)=>{try{let n=!0,r="validate-browser-context-for-indexeddb-analytics-module",i=self.indexedDB.open(r);i.onsuccess=()=>{i.result.close(),n||self.indexedDB.deleteDatabase(r),t(!0)},i.onupgradeneeded=()=>{n=!1},i.onerror=()=>{e(i.error?.message||"")}}catch(n){e(n)}})}var us="FirebaseError",P=class t extends Error{constructor(e,n,r){super(n),this.code=e,this.customData=r,this.name=us,Object.setPrototypeOf(this,t.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,V.prototype.create)}},V=class{constructor(e,n,r){this.service=e,this.serviceName=n,this.errors=r}create(e,...n){let r=n[0]||{},i=`${this.service}/${e}`,s=this.errors[e],o=s?ls(s,r):"Error",a=`${this.serviceName}: ${o} (${i}).`;return new P(i,a,r)}};function ls(t,e){return t.replace(ds,(n,r)=>{let i=e[r];return i!=null?String(i):`<${r}?>`})}var ds=/\{\$([^}]+)}/g;function dr(t){for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}function z(t,e){if(t===e)return!0;let n=Object.keys(t),r=Object.keys(e);for(let i of n){if(!r.includes(i))return!1;let s=t[i],o=e[i];if(Qn(s)&&Qn(o)){if(!z(s,o))return!1}else if(s!==o)return!1}for(let i of r)if(!n.includes(i))return!1;return!0}function Qn(t){return t!==null&&typeof t=="object"}function ce(t){let e=[];for(let[n,r]of Object.entries(t))Array.isArray(r)?r.forEach(i=>{e.push(encodeURIComponent(n)+"="+encodeURIComponent(i))}):e.push(encodeURIComponent(n)+"="+encodeURIComponent(r));return e.length?"&"+e.join("&"):""}function ue(t){let e={};return t.replace(/^\?/,"").split("&").forEach(r=>{if(r){let[i,s]=r.split("=");e[decodeURIComponent(i)]=decodeURIComponent(s)}}),e}function le(t){let e=t.indexOf("?");if(!e)return"";let n=t.indexOf("#",e);return t.substring(e,n>0?n:void 0)}function hr(t,e){let n=new Ft(t,e);return n.subscribe.bind(n)}var Ft=class{constructor(e,n){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=n,this.task.then(()=>{e(this)}).catch(r=>{this.error(r)})}next(e){this.forEachObserver(n=>{n.next(e)})}error(e){this.forEachObserver(n=>{n.error(e)}),this.close(e)}complete(){this.forEachObserver(e=>{e.complete()}),this.close()}subscribe(e,n,r){let i;if(e===void 0&&n===void 0&&r===void 0)throw new Error("Missing Observer.");hs(e,["next","error","complete"])?i=e:i={next:e,error:n,complete:r},i.next===void 0&&(i.next=Ut),i.error===void 0&&(i.error=Ut),i.complete===void 0&&(i.complete=Ut);let s=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then(()=>{try{this.finalError?i.error(this.finalError):i.complete()}catch{}}),this.observers.push(i),s}unsubscribeOne(e){this.observers===void 0||this.observers[e]===void 0||(delete this.observers[e],this.observerCount-=1,this.observerCount===0&&this.onNoObservers!==void 0&&this.onNoObservers(this))}forEachObserver(e){if(!this.finalized)for(let n=0;n<this.observers.length;n++)this.sendOne(n,e)}sendOne(e,n){this.task.then(()=>{if(this.observers!==void 0&&this.observers[e]!==void 0)try{n(this.observers[e])}catch(r){typeof console<"u"&&console.error&&console.error(r)}})}close(e){this.finalized||(this.finalized=!0,e!==void 0&&(this.finalError=e),this.task.then(()=>{this.observers=void 0,this.onNoObservers=void 0}))}};function hs(t,e){if(typeof t!="object"||t===null)return!1;for(let n of e)if(n in t&&typeof t[n]=="function")return!0;return!1}function Ut(){}var Rc=14400*1e3;function j(t){return t&&t._delegate?t._delegate:t}var M=class{constructor(e,n,r){this.name=e,this.instanceFactory=n,this.type=r,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}};var Y="[DEFAULT]";var $t=class{constructor(e,n){this.name=e,this.container=n,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(e){let n=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(n)){let r=new ze;if(this.instancesDeferred.set(n,r),this.isInitialized(n)||this.shouldAutoInitialize())try{let i=this.getOrInitializeService({instanceIdentifier:n});i&&r.resolve(i)}catch{}}return this.instancesDeferred.get(n).promise}getImmediate(e){let n=this.normalizeInstanceIdentifier(e?.identifier),r=e?.optional??!1;if(this.isInitialized(n)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:n})}catch(i){if(r)return null;throw i}else{if(r)return null;throw Error(`Service ${this.name} is not available`)}}getComponent(){return this.component}setComponent(e){if(e.name!==this.name)throw Error(`Mismatching Component ${e.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=e,!!this.shouldAutoInitialize()){if(ps(e))try{this.getOrInitializeService({instanceIdentifier:Y})}catch{}for(let[n,r]of this.instancesDeferred.entries()){let i=this.normalizeInstanceIdentifier(n);try{let s=this.getOrInitializeService({instanceIdentifier:i});r.resolve(s)}catch{}}}}clearInstance(e=Y){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}async delete(){let e=Array.from(this.instances.values());await Promise.all([...e.filter(n=>"INTERNAL"in n).map(n=>n.INTERNAL.delete()),...e.filter(n=>"_delete"in n).map(n=>n._delete())])}isComponentSet(){return this.component!=null}isInitialized(e=Y){return this.instances.has(e)}getOptions(e=Y){return this.instancesOptions.get(e)||{}}initialize(e={}){let{options:n={}}=e,r=this.normalizeInstanceIdentifier(e.instanceIdentifier);if(this.isInitialized(r))throw Error(`${this.name}(${r}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);let i=this.getOrInitializeService({instanceIdentifier:r,options:n});for(let[s,o]of this.instancesDeferred.entries()){let a=this.normalizeInstanceIdentifier(s);r===a&&o.resolve(i)}return i}onInit(e,n){let r=this.normalizeInstanceIdentifier(n),i=this.onInitCallbacks.get(r)??new Set;i.add(e),this.onInitCallbacks.set(r,i);let s=this.instances.get(r);return s&&e(s,r),()=>{i.delete(e)}}invokeOnInitCallbacks(e,n){let r=this.onInitCallbacks.get(n);if(r)for(let i of r)try{i(e,n)}catch{}}getOrInitializeService({instanceIdentifier:e,options:n={}}){let r=this.instances.get(e);if(!r&&this.component&&(r=this.component.instanceFactory(this.container,{instanceIdentifier:fs(e),options:n}),this.instances.set(e,r),this.instancesOptions.set(e,n),this.invokeOnInitCallbacks(r,e),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,e,r)}catch{}return r||null}normalizeInstanceIdentifier(e=Y){return this.component?this.component.multipleInstances?e:Y:e}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!=="EXPLICIT"}};function fs(t){return t===Y?void 0:t}function ps(t){return t.instantiationMode==="EAGER"}var qe=class{constructor(e){this.name=e,this.providers=new Map}addComponent(e){let n=this.getProvider(e.name);if(n.isComponentSet())throw new Error(`Component ${e.name} has already been registered with ${this.name}`);n.setComponent(e)}addOrOverwriteComponent(e){this.getProvider(e.name).isComponentSet()&&this.providers.delete(e.name),this.addComponent(e)}getProvider(e){if(this.providers.has(e))return this.providers.get(e);let n=new $t(e,this);return this.providers.set(e,n),n}getProviders(){return Array.from(this.providers.values())}};var _s=[],E;(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"})(E||(E={}));var ms={debug:E.DEBUG,verbose:E.VERBOSE,info:E.INFO,warn:E.WARN,error:E.ERROR,silent:E.SILENT},gs=E.INFO,Is={[E.DEBUG]:"log",[E.VERBOSE]:"log",[E.INFO]:"info",[E.WARN]:"warn",[E.ERROR]:"error"},Es=(t,e,...n)=>{if(e<t.logLevel)return;let r=new Date().toISOString(),i=Is[e];if(i)console[i](`[${r}] ${t.name}:`,...n);else throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`)},de=class{constructor(e){this.name=e,this._logLevel=gs,this._logHandler=Es,this._userLogHandler=null,_s.push(this)}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in E))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel=typeof e=="string"?ms[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if(typeof e!="function")throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,E.DEBUG,...e),this._logHandler(this,E.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,E.VERBOSE,...e),this._logHandler(this,E.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,E.INFO,...e),this._logHandler(this,E.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,E.WARN,...e),this._logHandler(this,E.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,E.ERROR,...e),this._logHandler(this,E.ERROR,...e)}};var ys=(t,e)=>e.some(n=>t instanceof n),fr,pr;function vs(){return fr||(fr=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function ws(){return pr||(pr=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}var _r=new WeakMap,jt=new WeakMap,mr=new WeakMap,zt=new WeakMap,Gt=new WeakMap;function Ts(t){let e=new Promise((n,r)=>{let i=()=>{t.removeEventListener("success",s),t.removeEventListener("error",o)},s=()=>{n(U(t.result)),i()},o=()=>{r(t.error),i()};t.addEventListener("success",s),t.addEventListener("error",o)});return e.then(n=>{n instanceof IDBCursor&&_r.set(n,t)}).catch(()=>{}),Gt.set(e,t),e}function bs(t){if(jt.has(t))return;let e=new Promise((n,r)=>{let i=()=>{t.removeEventListener("complete",s),t.removeEventListener("error",o),t.removeEventListener("abort",o)},s=()=>{n(),i()},o=()=>{r(t.error||new DOMException("AbortError","AbortError")),i()};t.addEventListener("complete",s),t.addEventListener("error",o),t.addEventListener("abort",o)});jt.set(t,e)}var qt={get(t,e,n){if(t instanceof IDBTransaction){if(e==="done")return jt.get(t);if(e==="objectStoreNames")return t.objectStoreNames||mr.get(t);if(e==="store")return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return U(t[e])},set(t,e,n){return t[e]=n,!0},has(t,e){return t instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in t}};function gr(t){qt=t(qt)}function As(t){return t===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...n){let r=t.call(Ge(this),e,...n);return mr.set(r,e.sort?e.sort():[e]),U(r)}:ws().includes(t)?function(...e){return t.apply(Ge(this),e),U(_r.get(this))}:function(...e){return U(t.apply(Ge(this),e))}}function Ss(t){return typeof t=="function"?As(t):(t instanceof IDBTransaction&&bs(t),ys(t,vs())?new Proxy(t,qt):t)}function U(t){if(t instanceof IDBRequest)return Ts(t);if(zt.has(t))return zt.get(t);let e=Ss(t);return e!==t&&(zt.set(t,e),Gt.set(e,t)),e}var Ge=t=>Gt.get(t);function Er(t,e,{blocked:n,upgrade:r,blocking:i,terminated:s}={}){let o=indexedDB.open(t,e),a=U(o);return r&&o.addEventListener("upgradeneeded",u=>{r(U(o.result),u.oldVersion,u.newVersion,U(o.transaction),u)}),n&&o.addEventListener("blocked",u=>n(u.oldVersion,u.newVersion,u)),a.then(u=>{s&&u.addEventListener("close",()=>s()),i&&u.addEventListener("versionchange",c=>i(c.oldVersion,c.newVersion,c))}).catch(()=>{}),a}var ks=["get","getKey","getAll","getAllKeys","count"],Cs=["put","add","delete","clear"],Kt=new Map;function Ir(t,e){if(!(t instanceof IDBDatabase&&!(e in t)&&typeof e=="string"))return;if(Kt.get(e))return Kt.get(e);let n=e.replace(/FromIndex$/,""),r=e!==n,i=Cs.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!(i||ks.includes(n)))return;let s=async function(o,...a){let u=this.transaction(o,i?"readwrite":"readonly"),c=u.store;return r&&(c=c.index(a.shift())),(await Promise.all([c[n](...a),i&&u.done]))[0]};return Kt.set(e,s),s}gr(t=>({...t,get:(e,n,r)=>Ir(e,n)||t.get(e,n,r),has:(e,n)=>!!Ir(e,n)||t.has(e,n)}));var Yt=class{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(n=>{if(Rs(n)){let r=n.getImmediate();return`${r.library}/${r.version}`}else return null}).filter(n=>n).join(" ")}};function Rs(t){return t.getComponent()?.type==="VERSION"}var Xt="@firebase/app",yr="0.14.2";var H=new de("@firebase/app"),Ps="@firebase/app-compat",Ns="@firebase/analytics-compat",Os="@firebase/analytics",Ds="@firebase/app-check-compat",Ls="@firebase/app-check",Ms="@firebase/auth",Us="@firebase/auth-compat",xs="@firebase/database",Fs="@firebase/data-connect",Vs="@firebase/database-compat",Hs="@firebase/functions",Ws="@firebase/functions-compat",Bs="@firebase/installations",$s="@firebase/installations-compat",zs="@firebase/messaging",js="@firebase/messaging-compat",qs="@firebase/performance",Gs="@firebase/performance-compat",Ks="@firebase/remote-config",Js="@firebase/remote-config-compat",Ys="@firebase/storage",Xs="@firebase/storage-compat",Qs="@firebase/firestore",Zs="@firebase/ai",eo="@firebase/firestore-compat",to="firebase",no="12.2.0";var Qt="[DEFAULT]",ro={[Xt]:"fire-core",[Ps]:"fire-core-compat",[Os]:"fire-analytics",[Ns]:"fire-analytics-compat",[Ls]:"fire-app-check",[Ds]:"fire-app-check-compat",[Ms]:"fire-auth",[Us]:"fire-auth-compat",[xs]:"fire-rtdb",[Fs]:"fire-data-connect",[Vs]:"fire-rtdb-compat",[Hs]:"fire-fn",[Ws]:"fire-fn-compat",[Bs]:"fire-iid",[$s]:"fire-iid-compat",[zs]:"fire-fcm",[js]:"fire-fcm-compat",[qs]:"fire-perf",[Gs]:"fire-perf-compat",[Ks]:"fire-rc",[Js]:"fire-rc-compat",[Ys]:"fire-gcs",[Xs]:"fire-gcs-compat",[Qs]:"fire-fst",[eo]:"fire-fst-compat",[Zs]:"fire-vertex","fire-js":"fire-js",[to]:"fire-js-all"};var Ke=new Map,io=new Map,Zt=new Map;function vr(t,e){try{t.container.addComponent(e)}catch(n){H.debug(`Component ${e.name} failed to register with FirebaseApp ${t.name}`,n)}}function he(t){let e=t.name;if(Zt.has(e))return H.debug(`There were multiple attempts to register component ${e}.`),!1;Zt.set(e,t);for(let n of Ke.values())vr(n,t);for(let n of io.values())vr(n,t);return!0}function rn(t,e){let n=t.container.getProvider("heartbeat").getImmediate({optional:!0});return n&&n.triggerHeartbeat(),t.container.getProvider(e)}function N(t){return t==null?!1:t.settings!==void 0}var so={"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}'","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","server-app-deleted":"Firebase Server App has been deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invalid-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.","finalization-registry-not-supported":"FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.","invalid-server-app-environment":"FirebaseServerApp is not for use in browser environments."},q=new V("app","Firebase",so);var en=class{constructor(e,n,r){this._isDeleted=!1,this._options={...e},this._config={...n},this._name=n.name,this._automaticDataCollectionEnabled=n.automaticDataCollectionEnabled,this._container=r,this.container.addComponent(new M("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}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(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw q.create("app-deleted",{appName:this._name})}};var fe=no;function sn(t,e={}){let n=t;typeof e!="object"&&(e={name:e});let r={name:Qt,automaticDataCollectionEnabled:!0,...e},i=r.name;if(typeof i!="string"||!i)throw q.create("bad-app-name",{appName:String(i)});if(n||(n=Wt()),!n)throw q.create("no-options");let s=Ke.get(i);if(s){if(z(n,s.options)&&z(r,s.config))return s;throw q.create("duplicate-app",{appName:i})}let o=new qe(i);for(let u of Zt.values())o.addComponent(u);let a=new en(n,r,o);return Ke.set(i,a),a}function Ar(t=Qt){let e=Ke.get(t);if(!e&&t===Qt&&Wt())return sn();if(!e)throw q.create("no-app",{appName:t});return e}function G(t,e,n){let r=ro[t]??t;n&&(r+=`-${n}`);let i=r.match(/\s|\//),s=e.match(/\s|\//);if(i||s){let o=[`Unable to register library "${r}" with version "${e}":`];i&&o.push(`library name "${r}" contains illegal characters (whitespace or "/")`),i&&s&&o.push("and"),s&&o.push(`version name "${e}" contains illegal characters (whitespace or "/")`),H.warn(o.join(" "));return}he(new M(`${r}-version`,()=>({library:r,version:e}),"VERSION"))}var oo="firebase-heartbeat-database",ao=1,we="firebase-heartbeat-store",Jt=null;function Sr(){return Jt||(Jt=Er(oo,ao,{upgrade:(t,e)=>{switch(e){case 0:try{t.createObjectStore(we)}catch(n){console.warn(n)}}}}).catch(t=>{throw q.create("idb-open",{originalErrorMessage:t.message})})),Jt}async function co(t){try{let n=(await Sr()).transaction(we),r=await n.objectStore(we).get(kr(t));return await n.done,r}catch(e){if(e instanceof P)H.warn(e.message);else{let n=q.create("idb-get",{originalErrorMessage:e?.message});H.warn(n.message)}}}async function wr(t,e){try{let r=(await Sr()).transaction(we,"readwrite");await r.objectStore(we).put(e,kr(t)),await r.done}catch(n){if(n instanceof P)H.warn(n.message);else{let r=q.create("idb-set",{originalErrorMessage:n?.message});H.warn(r.message)}}}function kr(t){return`${t.name}!${t.options.appId}`}var uo=1024,lo=30,tn=class{constructor(e){this.container=e,this._heartbeatsCache=null;let n=this.container.getProvider("app").getImmediate();this._storage=new nn(n),this._heartbeatsCachePromise=this._storage.read().then(r=>(this._heartbeatsCache=r,r))}async triggerHeartbeat(){try{let n=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),r=Tr();if(this._heartbeatsCache?.heartbeats==null&&(this._heartbeatsCache=await this._heartbeatsCachePromise,this._heartbeatsCache?.heartbeats==null)||this._heartbeatsCache.lastSentHeartbeatDate===r||this._heartbeatsCache.heartbeats.some(i=>i.date===r))return;if(this._heartbeatsCache.heartbeats.push({date:r,agent:n}),this._heartbeatsCache.heartbeats.length>lo){let i=fo(this._heartbeatsCache.heartbeats);this._heartbeatsCache.heartbeats.splice(i,1)}return this._storage.overwrite(this._heartbeatsCache)}catch(e){H.warn(e)}}async getHeartbeatsHeader(){try{if(this._heartbeatsCache===null&&await this._heartbeatsCachePromise,this._heartbeatsCache?.heartbeats==null||this._heartbeatsCache.heartbeats.length===0)return"";let e=Tr(),{heartbeatsToSend:n,unsentEntries:r}=ho(this._heartbeatsCache.heartbeats),i=Vt(JSON.stringify({version:2,heartbeats:n}));return this._heartbeatsCache.lastSentHeartbeatDate=e,r.length>0?(this._heartbeatsCache.heartbeats=r,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),i}catch(e){return H.warn(e),""}}};function Tr(){return new Date().toISOString().substring(0,10)}function ho(t,e=uo){let n=[],r=t.slice();for(let i of t){let s=n.find(o=>o.agent===i.agent);if(s){if(s.dates.push(i.date),br(n)>e){s.dates.pop();break}}else if(n.push({agent:i.agent,dates:[i.date]}),br(n)>e){n.pop();break}r=r.slice(1)}return{heartbeatsToSend:n,unsentEntries:r}}var nn=class{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return ur()?lr().then(()=>!0).catch(()=>!1):!1}async read(){if(await this._canUseIndexedDBPromise){let n=await co(this.app);return n?.heartbeats?n:{heartbeats:[]}}else return{heartbeats:[]}}async overwrite(e){if(await this._canUseIndexedDBPromise){let r=await this.read();return wr(this.app,{lastSentHeartbeatDate:e.lastSentHeartbeatDate??r.lastSentHeartbeatDate,heartbeats:e.heartbeats})}else return}async add(e){if(await this._canUseIndexedDBPromise){let r=await this.read();return wr(this.app,{lastSentHeartbeatDate:e.lastSentHeartbeatDate??r.lastSentHeartbeatDate,heartbeats:[...r.heartbeats,...e.heartbeats]})}else return}};function br(t){return Vt(JSON.stringify({version:2,heartbeats:t})).length}function fo(t){if(t.length===0)return-1;let e=0,n=t[0].date;for(let r=1;r<t.length;r++)t[r].date<n&&(n=t[r].date,e=r);return e}function po(t){he(new M("platform-logger",e=>new Yt(e),"PRIVATE")),he(new M("heartbeat",e=>new tn(e),"PRIVATE")),G(Xt,yr,t),G(Xt,yr,"esm2020"),G("fire-js","")}po("");var _o="firebase",mo="12.2.1";G(_o,mo,"app");function qr(){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."}}var Gr=qr,Kr=new V("auth","Firebase",qr());var tt=new de("@firebase/auth");function go(t,...e){tt.logLevel<=E.WARN&&tt.warn(`Auth (${fe}): ${t}`,...e)}function Ye(t,...e){tt.logLevel<=E.ERROR&&tt.error(`Auth (${fe}): ${t}`,...e)}function R(t,...e){throw Pn(t,...e)}function O(t,...e){return Pn(t,...e)}function Rn(t,e,n){let r={...Gr(),[e]:n};return new V("auth","Firebase",r).create(e,{appName:t.name})}function X(t){return Rn(t,"operation-not-supported-in-this-environment","Operations that alter the current user are not supported in conjunction with FirebaseServerApp")}function Io(t,e,n){let r=n;if(!(e instanceof r))throw r.name!==e.constructor.name&&R(t,"argument-error"),Rn(t,"argument-error",`Type of ${e.constructor.name} does not match expected instance.Did you pass a reference from a different Auth SDK?`)}function Pn(t,...e){if(typeof t!="string"){let n=e[0],r=[...e.slice(1)];return r[0]&&(r[0].appName=t.name),t._errorFactory.create(n,...r)}return Kr.create(t,...e)}function p(t,e,...n){if(!t)throw Pn(e,...n)}function x(t){let e="INTERNAL ASSERTION FAILED: "+t;throw Ye(e),new Error(e)}function B(t,e){t||x(e)}function dn(){return typeof self<"u"&&self.location?.href||""}function Eo(){return Cr()==="http:"||Cr()==="https:"}function Cr(){return typeof self<"u"&&self.location?.protocol||null}function yo(){return typeof navigator<"u"&&navigator&&"onLine"in navigator&&typeof navigator.onLine=="boolean"&&(Eo()||or()||"connection"in navigator)?navigator.onLine:!0}function vo(){if(typeof navigator>"u")return null;let t=navigator;return t.languages&&t.languages[0]||t.language||null}var Q=class{constructor(e,n){this.shortDelay=e,this.longDelay=n,B(n>e,"Short delay should be less than long delay!"),this.isMobile=ir()||ar()}get(){return yo()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}};function Nn(t,e){B(t.emulator,"Emulator should always be set here");let{url:n}=t.emulator;return e?`${n}${e.startsWith("/")?e.slice(1):e}`:n}var nt=class{static initialize(e,n,r){this.fetchImpl=e,n&&(this.headersImpl=n),r&&(this.responseImpl=r)}static fetch(){if(this.fetchImpl)return this.fetchImpl;if(typeof self<"u"&&"fetch"in self)return self.fetch;if(typeof globalThis<"u"&&globalThis.fetch)return globalThis.fetch;if(typeof fetch<"u")return fetch;x("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){if(this.headersImpl)return this.headersImpl;if(typeof self<"u"&&"Headers"in self)return self.Headers;if(typeof globalThis<"u"&&globalThis.Headers)return globalThis.Headers;if(typeof Headers<"u")return Headers;x("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){if(this.responseImpl)return this.responseImpl;if(typeof self<"u"&&"Response"in self)return self.Response;if(typeof globalThis<"u"&&globalThis.Response)return globalThis.Response;if(typeof Response<"u")return Response;x("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}};var wo={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"missing-password",INVALID_LOGIN_CREDENTIALS:"invalid-credential",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",PASSWORD_DOES_NOT_MEET_REQUIREMENTS:"password-does-not-meet-requirements",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error",RECAPTCHA_NOT_ENABLED:"recaptcha-not-enabled",MISSING_RECAPTCHA_TOKEN:"missing-recaptcha-token",INVALID_RECAPTCHA_TOKEN:"invalid-recaptcha-token",INVALID_RECAPTCHA_ACTION:"invalid-recaptcha-action",MISSING_CLIENT_TYPE:"missing-client-type",MISSING_RECAPTCHA_VERSION:"missing-recaptcha-version",INVALID_RECAPTCHA_VERSION:"invalid-recaptcha-version",INVALID_REQ_TYPE:"invalid-req-type"};var To=["/v1/accounts:signInWithCustomToken","/v1/accounts:signInWithEmailLink","/v1/accounts:signInWithIdp","/v1/accounts:signInWithPassword","/v1/accounts:signInWithPhoneNumber","/v1/token"],bo=new Q(3e4,6e4);function b(t,e){return t.tenantId&&!e.tenantId?{...e,tenantId:t.tenantId}:e}async function k(t,e,n,r,i={}){return Jr(t,i,async()=>{let s={},o={};r&&(e==="GET"?o=r:s={body:JSON.stringify(r)});let a=ce({key:t.config.apiKey,...o}).slice(1),u=await t._getAdditionalHeaders();u["Content-Type"]="application/json",t.languageCode&&(u["X-Firebase-Locale"]=t.languageCode);let c={method:e,headers:u,...s};return sr()||(c.referrerPolicy="no-referrer"),t.emulatorConfig&&ve(t.emulatorConfig.host)&&(c.credentials="include"),nt.fetch()(await Yr(t,t.config.apiHost,n,a),c)})}async function Jr(t,e,n){t._canInitEmulator=!1;let r={...wo,...e};try{let i=new hn(t),s=await Promise.race([n(),i.promise]);i.clearNetworkTimeout();let o=await s.json();if("needConfirmation"in o)throw be(t,"account-exists-with-different-credential",o);if(s.ok&&!("errorMessage"in o))return o;{let a=s.ok?o.errorMessage:o.error.message,[u,c]=a.split(" : ");if(u==="FEDERATED_USER_ID_ALREADY_LINKED")throw be(t,"credential-already-in-use",o);if(u==="EMAIL_EXISTS")throw be(t,"email-already-in-use",o);if(u==="USER_DISABLED")throw be(t,"user-disabled",o);let h=r[u]||u.toLowerCase().replace(/[_\s]+/g,"-");if(c)throw Rn(t,h,c);R(t,h)}}catch(i){if(i instanceof P)throw i;R(t,"network-request-failed",{message:String(i)})}}async function ie(t,e,n,r,i={}){let s=await k(t,e,n,r,i);return"mfaPendingCredential"in s&&R(t,"multi-factor-auth-required",{_serverResponse:s}),s}async function Yr(t,e,n,r){let i=`${e}${n}?${r}`,s=t,o=s.config.emulator?Nn(t.config,i):`${t.config.apiScheme}://${i}`;return To.includes(n)&&(await s._persistenceManagerAvailable,s._getPersistenceType()==="COOKIE")?s._getPersistence()._getFinalTarget(o).toString():o}function Ao(t){switch(t){case"ENFORCE":return"ENFORCE";case"AUDIT":return"AUDIT";case"OFF":return"OFF";default:return"ENFORCEMENT_STATE_UNSPECIFIED"}}var hn=class{clearNetworkTimeout(){clearTimeout(this.timer)}constructor(e){this.auth=e,this.timer=null,this.promise=new Promise((n,r)=>{this.timer=setTimeout(()=>r(O(this.auth,"network-request-failed")),bo.get())})}};function be(t,e,n){let r={appName:t.name};n.email&&(r.email=n.email),n.phoneNumber&&(r.phoneNumber=n.phoneNumber);let i=O(t,e,r);return i.customData._tokenResponse=n,i}function Rr(t){return t!==void 0&&t.enterprise!==void 0}var rt=class{constructor(e){if(this.siteKey="",this.recaptchaEnforcementState=[],e.recaptchaKey===void 0)throw new Error("recaptchaKey undefined");this.siteKey=e.recaptchaKey.split("/")[3],this.recaptchaEnforcementState=e.recaptchaEnforcementState}getProviderEnforcementState(e){if(!this.recaptchaEnforcementState||this.recaptchaEnforcementState.length===0)return null;for(let n of this.recaptchaEnforcementState)if(n.provider&&n.provider===e)return Ao(n.enforcementState);return null}isProviderEnabled(e){return this.getProviderEnforcementState(e)==="ENFORCE"||this.getProviderEnforcementState(e)==="AUDIT"}isAnyProviderEnabled(){return this.isProviderEnabled("EMAIL_PASSWORD_PROVIDER")||this.isProviderEnabled("PHONE_PROVIDER")}};async function Xr(t,e){return k(t,"GET","/v2/recaptchaConfig",b(t,e))}async function So(t,e){return k(t,"POST","/v1/accounts:delete",e)}async function it(t,e){return k(t,"POST","/v1/accounts:lookup",e)}function Ae(t){if(t)try{let e=new Date(Number(t));if(!isNaN(e.getTime()))return e.toUTCString()}catch{}}async function Qr(t,e=!1){let n=j(t),r=await n.getIdToken(e),i=On(r);p(i&&i.exp&&i.auth_time&&i.iat,n.auth,"internal-error");let s=typeof i.firebase=="object"?i.firebase:void 0,o=s?.sign_in_provider;return{claims:i,token:r,authTime:Ae(on(i.auth_time)),issuedAtTime:Ae(on(i.iat)),expirationTime:Ae(on(i.exp)),signInProvider:o||null,signInSecondFactor:s?.sign_in_second_factor||null}}function on(t){return Number(t)*1e3}function On(t){let[e,n,r]=t.split(".");if(e===void 0||n===void 0||r===void 0)return Ye("JWT malformed, contained fewer than 3 sections"),null;try{let i=je(n);return i?JSON.parse(i):(Ye("Failed to decode base64 JWT payload"),null)}catch(i){return Ye("Caught error parsing JWT payload as JSON",i?.toString()),null}}function Pr(t){let e=On(t);return p(e,"internal-error"),p(typeof e.exp<"u","internal-error"),p(typeof e.iat<"u","internal-error"),Number(e.exp)-Number(e.iat)}async function Re(t,e,n=!1){if(n)return e;try{return await e}catch(r){throw r instanceof P&&ko(r)&&t.auth.currentUser===t&&await t.auth.signOut(),r}}function ko({code:t}){return t==="auth/user-disabled"||t==="auth/user-token-expired"}var fn=class{constructor(e){this.user=e,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,this.timerId!==null&&clearTimeout(this.timerId))}getInterval(e){if(e){let n=this.errorBackoff;return this.errorBackoff=Math.min(this.errorBackoff*2,96e4),n}else{this.errorBackoff=3e4;let r=(this.user.stsTokenManager.expirationTime??0)-Date.now()-3e5;return Math.max(0,r)}}schedule(e=!1){if(!this.isRunning)return;let n=this.getInterval(e);this.timerId=setTimeout(async()=>{await this.iteration()},n)}async iteration(){try{await this.user.getIdToken(!0)}catch(e){e?.code==="auth/network-request-failed"&&this.schedule(!0);return}this.schedule()}};var Pe=class{constructor(e,n){this.createdAt=e,this.lastLoginAt=n,this._initializeTime()}_initializeTime(){this.lastSignInTime=Ae(this.lastLoginAt),this.creationTime=Ae(this.createdAt)}_copy(e){this.createdAt=e.createdAt,this.lastLoginAt=e.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}};async function st(t){let e=t.auth,n=await t.getIdToken(),r=await Re(t,it(e,{idToken:n}));p(r?.users.length,e,"internal-error");let i=r.users[0];t._notifyReloadListener(i);let s=i.providerUserInfo?.length?ei(i.providerUserInfo):[],o=Co(t.providerData,s),a=t.isAnonymous,u=!(t.email&&i.passwordHash)&&!o?.length,c=a?u:!1,h={uid:i.localId,displayName:i.displayName||null,photoURL:i.photoUrl||null,email:i.email||null,emailVerified:i.emailVerified||!1,phoneNumber:i.phoneNumber||null,tenantId:i.tenantId||null,providerData:o,metadata:new Pe(i.createdAt,i.lastLoginAt),isAnonymous:c};Object.assign(t,h)}async function Zr(t){let e=j(t);await st(e),await e.auth._persistUserIfCurrent(e),e.auth._notifyListenersIfCurrent(e)}function Co(t,e){return[...t.filter(r=>!e.some(i=>i.providerId===r.providerId)),...e]}function ei(t){return t.map(({providerId:e,...n})=>({providerId:e,uid:n.rawId||"",displayName:n.displayName||null,email:n.email||null,phoneNumber:n.phoneNumber||null,photoURL:n.photoUrl||null}))}async function Ro(t,e){let n=await Jr(t,{},async()=>{let r=ce({grant_type:"refresh_token",refresh_token:e}).slice(1),{tokenApiHost:i,apiKey:s}=t.config,o=await Yr(t,i,"/v1/token",`key=${s}`),a=await t._getAdditionalHeaders();a["Content-Type"]="application/x-www-form-urlencoded";let u={method:"POST",headers:a,body:r};return t.emulatorConfig&&ve(t.emulatorConfig.host)&&(u.credentials="include"),nt.fetch()(o,u)});return{accessToken:n.access_token,expiresIn:n.expires_in,refreshToken:n.refresh_token}}async function Po(t,e){return k(t,"POST","/v2/accounts:revokeToken",b(t,e))}var Se=class t{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(e){p(e.idToken,"internal-error"),p(typeof e.idToken<"u","internal-error"),p(typeof e.refreshToken<"u","internal-error");let n="expiresIn"in e&&typeof e.expiresIn<"u"?Number(e.expiresIn):Pr(e.idToken);this.updateTokensAndExpiration(e.idToken,e.refreshToken,n)}updateFromIdToken(e){p(e.length!==0,"internal-error");let n=Pr(e);this.updateTokensAndExpiration(e,null,n)}async getToken(e,n=!1){return!n&&this.accessToken&&!this.isExpired?this.accessToken:(p(this.refreshToken,e,"user-token-expired"),this.refreshToken?(await this.refresh(e,this.refreshToken),this.accessToken):null)}clearRefreshToken(){this.refreshToken=null}async refresh(e,n){let{accessToken:r,refreshToken:i,expiresIn:s}=await Ro(e,n);this.updateTokensAndExpiration(r,i,Number(s))}updateTokensAndExpiration(e,n,r){this.refreshToken=n||null,this.accessToken=e||null,this.expirationTime=Date.now()+r*1e3}static fromJSON(e,n){let{refreshToken:r,accessToken:i,expirationTime:s}=n,o=new t;return r&&(p(typeof r=="string","internal-error",{appName:e}),o.refreshToken=r),i&&(p(typeof i=="string","internal-error",{appName:e}),o.accessToken=i),s&&(p(typeof s=="number","internal-error",{appName:e}),o.expirationTime=s),o}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(e){this.accessToken=e.accessToken,this.refreshToken=e.refreshToken,this.expirationTime=e.expirationTime}_clone(){return Object.assign(new t,this.toJSON())}_performRefresh(){return x("not implemented")}};function K(t,e){p(typeof t=="string"||typeof t>"u","internal-error",{appName:e})}var J=class t{constructor({uid:e,auth:n,stsTokenManager:r,...i}){this.providerId="firebase",this.proactiveRefresh=new fn(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=e,this.auth=n,this.stsTokenManager=r,this.accessToken=r.accessToken,this.displayName=i.displayName||null,this.email=i.email||null,this.emailVerified=i.emailVerified||!1,this.phoneNumber=i.phoneNumber||null,this.photoURL=i.photoURL||null,this.isAnonymous=i.isAnonymous||!1,this.tenantId=i.tenantId||null,this.providerData=i.providerData?[...i.providerData]:[],this.metadata=new Pe(i.createdAt||void 0,i.lastLoginAt||void 0)}async getIdToken(e){let n=await Re(this,this.stsTokenManager.getToken(this.auth,e));return p(n,this.auth,"internal-error"),this.accessToken!==n&&(this.accessToken=n,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),n}getIdTokenResult(e){return Qr(this,e)}reload(){return Zr(this)}_assign(e){this!==e&&(p(this.uid===e.uid,this.auth,"internal-error"),this.displayName=e.displayName,this.photoURL=e.photoURL,this.email=e.email,this.emailVerified=e.emailVerified,this.phoneNumber=e.phoneNumber,this.isAnonymous=e.isAnonymous,this.tenantId=e.tenantId,this.providerData=e.providerData.map(n=>({...n})),this.metadata._copy(e.metadata),this.stsTokenManager._assign(e.stsTokenManager))}_clone(e){let n=new t({...this,auth:e,stsTokenManager:this.stsTokenManager._clone()});return n.metadata._copy(this.metadata),n}_onReload(e){p(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=e,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(e){this.reloadListener?this.reloadListener(e):this.reloadUserInfo=e}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}async _updateTokensIfNecessary(e,n=!1){let r=!1;e.idToken&&e.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(e),r=!0),n&&await st(this),await this.auth._persistUserIfCurrent(this),r&&this.auth._notifyListenersIfCurrent(this)}async delete(){if(N(this.auth.app))return Promise.reject(X(this.auth));let e=await this.getIdToken();return await Re(this,So(this.auth,{idToken:e})),this.stsTokenManager.clearRefreshToken(),this.auth.signOut()}toJSON(){return{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(e=>({...e})),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(e,n){let r=n.displayName??void 0,i=n.email??void 0,s=n.phoneNumber??void 0,o=n.photoURL??void 0,a=n.tenantId??void 0,u=n._redirectEventId??void 0,c=n.createdAt??void 0,h=n.lastLoginAt??void 0,{uid:l,emailVerified:d,isAnonymous:f,providerData:g,stsTokenManager:A}=n;p(l&&A,e,"internal-error");let y=Se.fromJSON(this.name,A);p(typeof l=="string",e,"internal-error"),K(r,e.name),K(i,e.name),p(typeof d=="boolean",e,"internal-error"),p(typeof f=="boolean",e,"internal-error"),K(s,e.name),K(o,e.name),K(a,e.name),K(u,e.name),K(c,e.name),K(h,e.name);let _=new t({uid:l,auth:e,email:i,emailVerified:d,displayName:r,isAnonymous:f,photoURL:o,phoneNumber:s,tenantId:a,stsTokenManager:y,createdAt:c,lastLoginAt:h});return g&&Array.isArray(g)&&(_.providerData=g.map(m=>({...m}))),u&&(_._redirectEventId=u),_}static async _fromIdTokenResponse(e,n,r=!1){let i=new Se;i.updateFromServerResponse(n);let s=new t({uid:n.localId,auth:e,stsTokenManager:i,isAnonymous:r});return await st(s),s}static async _fromGetAccountInfoResponse(e,n,r){let i=n.users[0];p(i.localId!==void 0,"internal-error");let s=i.providerUserInfo!==void 0?ei(i.providerUserInfo):[],o=!(i.email&&i.passwordHash)&&!s?.length,a=new Se;a.updateFromIdToken(r);let u=new t({uid:i.localId,auth:e,stsTokenManager:a,isAnonymous:o}),c={uid:i.localId,displayName:i.displayName||null,photoURL:i.photoUrl||null,email:i.email||null,emailVerified:i.emailVerified||!1,phoneNumber:i.phoneNumber||null,tenantId:i.tenantId||null,providerData:s,metadata:new Pe(i.createdAt,i.lastLoginAt),isAnonymous:!(i.email&&i.passwordHash)&&!s?.length};return Object.assign(u,c),u}};var Nr=new Map;function W(t){B(t instanceof Function,"Expected a class definition");let e=Nr.get(t);return e?(B(e instanceof t,"Instance stored in cache mismatched with class"),e):(e=new t,Nr.set(t,e),e)}var ot=class{constructor(){this.type="NONE",this.storage={}}async _isAvailable(){return!0}async _set(e,n){this.storage[e]=n}async _get(e){let n=this.storage[e];return n===void 0?null:n}async _remove(e){delete this.storage[e]}_addListener(e,n){}_removeListener(e,n){}};ot.type="NONE";var pn=ot;function Xe(t,e,n){return`firebase:${t}:${e}:${n}`}var at=class t{constructor(e,n,r){this.persistence=e,this.auth=n,this.userKey=r;let{config:i,name:s}=this.auth;this.fullUserKey=Xe(this.userKey,i.apiKey,s),this.fullPersistenceKey=Xe("persistence",i.apiKey,s),this.boundEventHandler=n._onStorageEvent.bind(n),this.persistence._addListener(this.fullUserKey,this.boundEventHandler)}setCurrentUser(e){return this.persistence._set(this.fullUserKey,e.toJSON())}async getCurrentUser(){let e=await this.persistence._get(this.fullUserKey);if(!e)return null;if(typeof e=="string"){let n=await it(this.auth,{idToken:e}).catch(()=>{});return n?J._fromGetAccountInfoResponse(this.auth,n,e):null}return J._fromJSON(this.auth,e)}removeCurrentUser(){return this.persistence._remove(this.fullUserKey)}savePersistenceForRedirect(){return this.persistence._set(this.fullPersistenceKey,this.persistence.type)}async setPersistence(e){if(this.persistence===e)return;let n=await this.getCurrentUser();if(await this.removeCurrentUser(),this.persistence=e,n)return this.setCurrentUser(n)}delete(){this.persistence._removeListener(this.fullUserKey,this.boundEventHandler)}static async create(e,n,r="authUser"){if(!n.length)return new t(W(pn),e,r);let i=(await Promise.all(n.map(async c=>{if(await c._isAvailable())return c}))).filter(c=>c),s=i[0]||W(pn),o=Xe(r,e.config.apiKey,e.name),a=null;for(let c of n)try{let h=await c._get(o);if(h){let l;if(typeof h=="string"){let d=await it(e,{idToken:h}).catch(()=>{});if(!d)break;l=await J._fromGetAccountInfoResponse(e,d,h)}else l=J._fromJSON(e,h);c!==s&&(a=l),s=c;break}}catch{}let u=i.filter(c=>c._shouldAllowMigration);return!s._shouldAllowMigration||!u.length?new t(s,e,r):(s=u[0],a&&await s._set(o,a.toJSON()),await Promise.all(n.map(async c=>{if(c!==s)try{await c._remove(o)}catch{}})),new t(s,e,r))}};function Or(t){let e=t.toLowerCase();if(e.includes("opera/")||e.includes("opr/")||e.includes("opios/"))return"Opera";if(ii(e))return"IEMobile";if(e.includes("msie")||e.includes("trident/"))return"IE";if(e.includes("edge/"))return"Edge";if(ti(e))return"Firefox";if(e.includes("silk/"))return"Silk";if(oi(e))return"Blackberry";if(ai(e))return"Webos";if(ni(e))return"Safari";if((e.includes("chrome/")||ri(e))&&!e.includes("edge/"))return"Chrome";if(si(e))return"Android";{let n=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,r=t.match(n);if(r?.length===2)return r[1]}return"Other"}function ti(t=S()){return/firefox\//i.test(t)}function ni(t=S()){let e=t.toLowerCase();return e.includes("safari/")&&!e.includes("chrome/")&&!e.includes("crios/")&&!e.includes("android")}function ri(t=S()){return/crios\//i.test(t)}function ii(t=S()){return/iemobile/i.test(t)}function si(t=S()){return/android/i.test(t)}function oi(t=S()){return/blackberry/i.test(t)}function ai(t=S()){return/webos/i.test(t)}function Dn(t=S()){return/iphone|ipad|ipod/i.test(t)||/macintosh/i.test(t)&&/mobile/i.test(t)}function No(t=S()){return Dn(t)&&!!window.navigator?.standalone}function Oo(){return cr()&&document.documentMode===10}function ci(t=S()){return Dn(t)||si(t)||ai(t)||oi(t)||/windows phone/i.test(t)||ii(t)}function ui(t,e=[]){let n;switch(t){case"Browser":n=Or(S());break;case"Worker":n=`${Or(S())}-${t}`;break;default:n=t}let r=e.length?e.join(","):"FirebaseCore-web";return`${n}/JsCore/${fe}/${r}`}var _n=class{constructor(e){this.auth=e,this.queue=[]}pushCallback(e,n){let r=s=>new Promise((o,a)=>{try{let u=e(s);o(u)}catch(u){a(u)}});r.onAbort=n,this.queue.push(r);let i=this.queue.length-1;return()=>{this.queue[i]=()=>Promise.resolve()}}async runMiddleware(e){if(this.auth.currentUser===e)return;let n=[];try{for(let r of this.queue)await r(e),r.onAbort&&n.push(r.onAbort)}catch(r){n.reverse();for(let i of n)try{i()}catch{}throw this.auth._errorFactory.create("login-blocked",{originalMessage:r?.message})}}};async function Do(t,e={}){return k(t,"GET","/v2/passwordPolicy",b(t,e))}var Lo=6,mn=class{constructor(e){let n=e.customStrengthOptions;this.customStrengthOptions={},this.customStrengthOptions.minPasswordLength=n.minPasswordLength??Lo,n.maxPasswordLength&&(this.customStrengthOptions.maxPasswordLength=n.maxPasswordLength),n.containsLowercaseCharacter!==void 0&&(this.customStrengthOptions.containsLowercaseLetter=n.containsLowercaseCharacter),n.containsUppercaseCharacter!==void 0&&(this.customStrengthOptions.containsUppercaseLetter=n.containsUppercaseCharacter),n.containsNumericCharacter!==void 0&&(this.customStrengthOptions.containsNumericCharacter=n.containsNumericCharacter),n.containsNonAlphanumericCharacter!==void 0&&(this.customStrengthOptions.containsNonAlphanumericCharacter=n.containsNonAlphanumericCharacter),this.enforcementState=e.enforcementState,this.enforcementState==="ENFORCEMENT_STATE_UNSPECIFIED"&&(this.enforcementState="OFF"),this.allowedNonAlphanumericCharacters=e.allowedNonAlphanumericCharacters?.join("")??"",this.forceUpgradeOnSignin=e.forceUpgradeOnSignin??!1,this.schemaVersion=e.schemaVersion}validatePassword(e){let n={isValid:!0,passwordPolicy:this};return this.validatePasswordLengthOptions(e,n),this.validatePasswordCharacterOptions(e,n),n.isValid&&(n.isValid=n.meetsMinPasswordLength??!0),n.isValid&&(n.isValid=n.meetsMaxPasswordLength??!0),n.isValid&&(n.isValid=n.containsLowercaseLetter??!0),n.isValid&&(n.isValid=n.containsUppercaseLetter??!0),n.isValid&&(n.isValid=n.containsNumericCharacter??!0),n.isValid&&(n.isValid=n.containsNonAlphanumericCharacter??!0),n}validatePasswordLengthOptions(e,n){let r=this.customStrengthOptions.minPasswordLength,i=this.customStrengthOptions.maxPasswordLength;r&&(n.meetsMinPasswordLength=e.length>=r),i&&(n.meetsMaxPasswordLength=e.length<=i)}validatePasswordCharacterOptions(e,n){this.updatePasswordCharacterOptionsStatuses(n,!1,!1,!1,!1);let r;for(let i=0;i<e.length;i++)r=e.charAt(i),this.updatePasswordCharacterOptionsStatuses(n,r>="a"&&r<="z",r>="A"&&r<="Z",r>="0"&&r<="9",this.allowedNonAlphanumericCharacters.includes(r))}updatePasswordCharacterOptionsStatuses(e,n,r,i,s){this.customStrengthOptions.containsLowercaseLetter&&(e.containsLowercaseLetter||(e.containsLowercaseLetter=n)),this.customStrengthOptions.containsUppercaseLetter&&(e.containsUppercaseLetter||(e.containsUppercaseLetter=r)),this.customStrengthOptions.containsNumericCharacter&&(e.containsNumericCharacter||(e.containsNumericCharacter=i)),this.customStrengthOptions.containsNonAlphanumericCharacter&&(e.containsNonAlphanumericCharacter||(e.containsNonAlphanumericCharacter=s))}};var gn=class{constructor(e,n,r,i){this.app=e,this.heartbeatServiceProvider=n,this.appCheckServiceProvider=r,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new ct(this),this.idTokenSubscription=new ct(this),this.beforeStateQueue=new _n(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION=1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=Kr,this._agentRecaptchaConfig=null,this._tenantRecaptchaConfigs={},this._projectPasswordPolicy=null,this._tenantPasswordPolicies={},this._resolvePersistenceManagerAvailable=void 0,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=e.name,this.clientVersion=i.sdkClientVersion,this._persistenceManagerAvailable=new Promise(s=>this._resolvePersistenceManagerAvailable=s)}_initializeWithPersistence(e,n){return n&&(this._popupRedirectResolver=W(n)),this._initializationPromise=this.queue(async()=>{if(!this._deleted&&(this.persistenceManager=await at.create(this,e),this._resolvePersistenceManagerAvailable?.(),!this._deleted)){if(this._popupRedirectResolver?._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch{}await this.initializeCurrentUser(n),this.lastNotifiedUid=this.currentUser?.uid||null,!this._deleted&&(this._isInitialized=!0)}}),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;let e=await this.assertedPersistence.getCurrentUser();if(!(!this.currentUser&&!e)){if(this.currentUser&&e&&this.currentUser.uid===e.uid){this._currentUser._assign(e),await this.currentUser.getIdToken();return}await this._updateCurrentUser(e,!0)}}async initializeCurrentUserFromIdToken(e){try{let n=await it(this,{idToken:e}),r=await J._fromGetAccountInfoResponse(this,n,e);await this.directlySetCurrentUser(r)}catch(n){console.warn("FirebaseServerApp could not login user with provided authIdToken: ",n),await this.directlySetCurrentUser(null)}}async initializeCurrentUser(e){if(N(this.app)){let s=this.app.settings.authIdToken;return s?new Promise(o=>{setTimeout(()=>this.initializeCurrentUserFromIdToken(s).then(o,o))}):this.directlySetCurrentUser(null)}let n=await this.assertedPersistence.getCurrentUser(),r=n,i=!1;if(e&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();let s=this.redirectUser?._redirectEventId,o=r?._redirectEventId,a=await this.tryRedirectSignIn(e);(!s||s===o)&&a?.user&&(r=a.user,i=!0)}if(!r)return this.directlySetCurrentUser(null);if(!r._redirectEventId){if(i)try{await this.beforeStateQueue.runMiddleware(r)}catch(s){r=n,this._popupRedirectResolver._overrideRedirectResult(this,()=>Promise.reject(s))}return r?this.reloadAndSetCurrentUserOrClear(r):this.directlySetCurrentUser(null)}return p(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===r._redirectEventId?this.directlySetCurrentUser(r):this.reloadAndSetCurrentUserOrClear(r)}async tryRedirectSignIn(e){let n=null;try{n=await this._popupRedirectResolver._completeRedirectFn(this,e,!0)}catch{await this._setRedirectUser(null)}return n}async reloadAndSetCurrentUserOrClear(e){try{await st(e)}catch(n){if(n?.code!=="auth/network-request-failed")return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(e)}useDeviceLanguage(){this.languageCode=vo()}async _delete(){this._deleted=!0}async updateCurrentUser(e){if(N(this.app))return Promise.reject(X(this));let n=e?j(e):null;return n&&p(n.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(n&&n._clone(this))}async _updateCurrentUser(e,n=!1){if(!this._deleted)return e&&p(this.tenantId===e.tenantId,this,"tenant-id-mismatch"),n||await this.beforeStateQueue.runMiddleware(e),this.queue(async()=>{await this.directlySetCurrentUser(e),this.notifyAuthListeners()})}async signOut(){return N(this.app)?Promise.reject(X(this)):(await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0))}setPersistence(e){return N(this.app)?Promise.reject(X(this)):this.queue(async()=>{await this.assertedPersistence.setPersistence(W(e))})}_getRecaptchaConfig(){return this.tenantId==null?this._agentRecaptchaConfig:this._tenantRecaptchaConfigs[this.tenantId]}async validatePassword(e){this._getPasswordPolicyInternal()||await this._updatePasswordPolicy();let n=this._getPasswordPolicyInternal();return n.schemaVersion!==this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION?Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version",{})):n.validatePassword(e)}_getPasswordPolicyInternal(){return this.tenantId===null?this._projectPasswordPolicy:this._tenantPasswordPolicies[this.tenantId]}async _updatePasswordPolicy(){let e=await Do(this),n=new mn(e);this.tenantId===null?this._projectPasswordPolicy=n:this._tenantPasswordPolicies[this.tenantId]=n}_getPersistenceType(){return this.assertedPersistence.persistence.type}_getPersistence(){return this.assertedPersistence.persistence}_updateErrorMap(e){this._errorFactory=new V("auth","Firebase",e())}onAuthStateChanged(e,n,r){return this.registerStateListener(this.authStateSubscription,e,n,r)}beforeAuthStateChanged(e,n){return this.beforeStateQueue.pushCallback(e,n)}onIdTokenChanged(e,n,r){return this.registerStateListener(this.idTokenSubscription,e,n,r)}authStateReady(){return new Promise((e,n)=>{if(this.currentUser)e();else{let r=this.onAuthStateChanged(()=>{r(),e()},n)}})}async revokeAccessToken(e){if(this.currentUser){let n=await this.currentUser.getIdToken(),r={providerId:"apple.com",tokenType:"ACCESS_TOKEN",token:e,idToken:n};this.tenantId!=null&&(r.tenantId=this.tenantId),await Po(this,r)}}toJSON(){return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:this._currentUser?.toJSON()}}async _setRedirectUser(e,n){let r=await this.getOrInitRedirectPersistenceManager(n);return e===null?r.removeCurrentUser():r.setCurrentUser(e)}async getOrInitRedirectPersistenceManager(e){if(!this.redirectPersistenceManager){let n=e&&W(e)||this._popupRedirectResolver;p(n,this,"argument-error"),this.redirectPersistenceManager=await at.create(this,[W(n._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(e){return this._isInitialized&&await this.queue(async()=>{}),this._currentUser?._redirectEventId===e?this._currentUser:this.redirectUser?._redirectEventId===e?this.redirectUser:null}async _persistUserIfCurrent(e){if(e===this.currentUser)return this.queue(async()=>this.directlySetCurrentUser(e))}_notifyListenersIfCurrent(e){e===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(){if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);let e=this.currentUser?.uid??null;this.lastNotifiedUid!==e&&(this.lastNotifiedUid=e,this.authStateSubscription.next(this.currentUser))}registerStateListener(e,n,r,i){if(this._deleted)return()=>{};let s=typeof n=="function"?n:n.next.bind(n),o=!1,a=this._isInitialized?Promise.resolve():this._initializationPromise;if(p(a,this,"internal-error"),a.then(()=>{o||s(this.currentUser)}),typeof n=="function"){let u=e.addObserver(n,r,i);return()=>{o=!0,u()}}else{let u=e.addObserver(n);return()=>{o=!0,u()}}}async directlySetCurrentUser(e){this.currentUser&&this.currentUser!==e&&this._currentUser._stopProactiveRefresh(),e&&this.isProactiveRefreshEnabled&&e._startProactiveRefresh(),this.currentUser=e,e?await this.assertedPersistence.setCurrentUser(e):await this.assertedPersistence.removeCurrentUser()}queue(e){return this.operations=this.operations.then(e,e),this.operations}get assertedPersistence(){return p(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(e){!e||this.frameworks.includes(e)||(this.frameworks.push(e),this.frameworks.sort(),this.clientVersion=ui(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){let e={"X-Client-Version":this.clientVersion};this.app.options.appId&&(e["X-Firebase-gmpid"]=this.app.options.appId);let n=await this.heartbeatServiceProvider.getImmediate({optional:!0})?.getHeartbeatsHeader();n&&(e["X-Firebase-Client"]=n);let r=await this._getAppCheckToken();return r&&(e["X-Firebase-AppCheck"]=r),e}async _getAppCheckToken(){if(N(this.app)&&this.app.settings.appCheckToken)return this.app.settings.appCheckToken;let e=await this.appCheckServiceProvider.getImmediate({optional:!0})?.getToken();return e?.error&&go(`Error while retrieving App Check token: ${e.error}`),e?.token}};function se(t){return j(t)}var ct=class{constructor(e){this.auth=e,this.observer=null,this.addObserver=hr(n=>this.observer=n)}get next(){return p(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}};var St={async loadJS(){throw new Error("Unable to load external scripts")},recaptchaV2Script:"",recaptchaEnterpriseScript:"",gapiScript:""};function Mo(t){St=t}function li(t){return St.loadJS(t)}function Uo(){return St.recaptchaEnterpriseScript}function xo(){return St.gapiScript}function di(t){return`__${t}${Math.floor(Math.random()*1e6)}`}var In=class{constructor(){this.enterprise=new En}ready(e){e()}execute(e,n){return Promise.resolve("token")}render(e,n){return""}},En=class{ready(e){e()}execute(e,n){return Promise.resolve("token")}render(e,n){return""}};var Fo="recaptcha-enterprise",ke="NO_RECAPTCHA",ut=class{constructor(e){this.type=Fo,this.auth=se(e)}async verify(e="verify",n=!1){async function r(s){if(!n){if(s.tenantId==null&&s._agentRecaptchaConfig!=null)return s._agentRecaptchaConfig.siteKey;if(s.tenantId!=null&&s._tenantRecaptchaConfigs[s.tenantId]!==void 0)return s._tenantRecaptchaConfigs[s.tenantId].siteKey}return new Promise(async(o,a)=>{Xr(s,{clientType:"CLIENT_TYPE_WEB",version:"RECAPTCHA_ENTERPRISE"}).then(u=>{if(u.recaptchaKey===void 0)a(new Error("recaptcha Enterprise site key undefined"));else{let c=new rt(u);return s.tenantId==null?s._agentRecaptchaConfig=c:s._tenantRecaptchaConfigs[s.tenantId]=c,o(c.siteKey)}}).catch(u=>{a(u)})})}function i(s,o,a){let u=window.grecaptcha;Rr(u)?u.enterprise.ready(()=>{u.enterprise.execute(s,{action:e}).then(c=>{o(c)}).catch(()=>{o(ke)})}):a(Error("No reCAPTCHA enterprise script loaded."))}return this.auth.settings.appVerificationDisabledForTesting?new In().execute("siteKey",{action:"verify"}):new Promise((s,o)=>{r(this.auth).then(a=>{if(!n&&Rr(window.grecaptcha))i(a,s,o);else{if(typeof window>"u"){o(new Error("RecaptchaVerifier is only supported in browser"));return}let u=Uo();u.length!==0&&(u+=a),li(u).then(()=>{i(a,s,o)}).catch(c=>{o(c)})}}).catch(a=>{o(a)})})}};async function Te(t,e,n,r=!1,i=!1){let s=new ut(t),o;if(i)o=ke;else try{o=await s.verify(n)}catch{o=await s.verify(n,!0)}let a={...e};if(n==="mfaSmsEnrollment"||n==="mfaSmsSignIn"){if("phoneEnrollmentInfo"in a){let u=a.phoneEnrollmentInfo.phoneNumber,c=a.phoneEnrollmentInfo.recaptchaToken;Object.assign(a,{phoneEnrollmentInfo:{phoneNumber:u,recaptchaToken:c,captchaResponse:o,clientType:"CLIENT_TYPE_WEB",recaptchaVersion:"RECAPTCHA_ENTERPRISE"}})}else if("phoneSignInInfo"in a){let u=a.phoneSignInInfo.recaptchaToken;Object.assign(a,{phoneSignInInfo:{recaptchaToken:u,captchaResponse:o,clientType:"CLIENT_TYPE_WEB",recaptchaVersion:"RECAPTCHA_ENTERPRISE"}})}return a}return r?Object.assign(a,{captchaResp:o}):Object.assign(a,{captchaResponse:o}),Object.assign(a,{clientType:"CLIENT_TYPE_WEB"}),Object.assign(a,{recaptchaVersion:"RECAPTCHA_ENTERPRISE"}),a}async function Ce(t,e,n,r,i){if(i==="EMAIL_PASSWORD_PROVIDER")if(t._getRecaptchaConfig()?.isProviderEnabled("EMAIL_PASSWORD_PROVIDER")){let s=await Te(t,e,n,n==="getOobCode");return r(t,s)}else return r(t,e).catch(async s=>{if(s.code==="auth/missing-recaptcha-token"){console.log(`${n} is protected by reCAPTCHA Enterprise for this project. Automatically triggering the reCAPTCHA flow and restarting the flow.`);let o=await Te(t,e,n,n==="getOobCode");return r(t,o)}else return Promise.reject(s)});else if(i==="PHONE_PROVIDER")if(t._getRecaptchaConfig()?.isProviderEnabled("PHONE_PROVIDER")){let s=await Te(t,e,n);return r(t,s).catch(async o=>{if(t._getRecaptchaConfig()?.getProviderEnforcementState("PHONE_PROVIDER")==="AUDIT"&&(o.code==="auth/missing-recaptcha-token"||o.code==="auth/invalid-app-credential")){console.log(`Failed to verify with reCAPTCHA Enterprise. Automatically triggering the reCAPTCHA v2 flow to complete the ${n} flow.`);let a=await Te(t,e,n,!1,!0);return r(t,a)}return Promise.reject(o)})}else{let s=await Te(t,e,n,!1,!0);return r(t,s)}else return Promise.reject(i+" provider is not supported.")}async function Vo(t){let e=se(t),n=await Xr(e,{clientType:"CLIENT_TYPE_WEB",version:"RECAPTCHA_ENTERPRISE"}),r=new rt(n);e.tenantId==null?e._agentRecaptchaConfig=r:e._tenantRecaptchaConfigs[e.tenantId]=r,r.isAnyProviderEnabled()&&new ut(e).verify()}function hi(t,e){let n=rn(t,"auth");if(n.isInitialized()){let i=n.getImmediate(),s=n.getOptions();if(z(s,e??{}))return i;R(i,"already-initialized")}return n.initialize({options:e})}function Ho(t,e){let n=e?.persistence||[],r=(Array.isArray(n)?n:[n]).map(W);e?.errorMap&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(r,e?.popupRedirectResolver)}function fi(t,e,n){let r=se(t);p(/^https?:\/\//.test(e),r,"invalid-emulator-scheme");let i=!!n?.disableWarnings,s=pi(e),{host:o,port:a}=Wo(e),u=a===null?"":`:${a}`,c={url:`${s}//${o}${u}/`},h=Object.freeze({host:o,port:a,protocol:s.replace(":",""),options:Object.freeze({disableWarnings:i})});if(!r._canInitEmulator){p(r.config.emulator&&r.emulatorConfig,r,"emulator-config-failed"),p(z(c,r.config.emulator)&&z(h,r.emulatorConfig),r,"emulator-config-failed");return}r.config.emulator=c,r.emulatorConfig=h,r.settings.appVerificationDisabledForTesting=!0,ve(o)?(nr(`${s}//${o}${u}`),rr("Auth",!0)):i||Bo()}function pi(t){let e=t.indexOf(":");return e<0?"":t.substr(0,e+1)}function Wo(t){let e=pi(t),n=/(\/\/)?([^?#/]+)/.exec(t.substr(e.length));if(!n)return{host:"",port:null};let r=n[2].split("@").pop()||"",i=/^(\[[^\]]+\])(:|$)/.exec(r);if(i){let s=i[1];return{host:s,port:Dr(r.substr(s.length+1))}}else{let[s,o]=r.split(":");return{host:s,port:Dr(o)}}}function Dr(t){if(!t)return null;let e=Number(t);return isNaN(e)?null:e}function Bo(){function t(){let e=document.createElement("p"),n=e.style;e.innerText="Running in emulator mode. Do not use with production credentials.",n.position="fixed",n.width="100%",n.backgroundColor="#ffffff",n.border=".1em solid #000000",n.color="#b50000",n.bottom="0px",n.left="0px",n.margin="0px",n.zIndex="10000",n.textAlign="center",e.classList.add("firebase-emulator-warning"),document.body.appendChild(e)}typeof console<"u"&&typeof console.info=="function"&&console.info("WARNING: You are using the Auth Emulator, which is intended for local testing only. Do not use with production credentials."),typeof window<"u"&&typeof document<"u"&&(document.readyState==="loading"?window.addEventListener("DOMContentLoaded",t):t())}var Z=class{constructor(e,n){this.providerId=e,this.signInMethod=n}toJSON(){return x("not implemented")}_getIdTokenResponse(e){return x("not implemented")}_linkToIdToken(e,n){return x("not implemented")}_getReauthenticationResolver(e){return x("not implemented")}};async function $o(t,e){return k(t,"POST","/v1/accounts:signUp",e)}async function zo(t,e){return ie(t,"POST","/v1/accounts:signInWithPassword",b(t,e))}async function jo(t,e){return ie(t,"POST","/v1/accounts:signInWithEmailLink",b(t,e))}async function qo(t,e){return ie(t,"POST","/v1/accounts:signInWithEmailLink",b(t,e))}var Ne=class t extends Z{constructor(e,n,r,i=null){super("password",r),this._email=e,this._password=n,this._tenantId=i}static _fromEmailAndPassword(e,n){return new t(e,n,"password")}static _fromEmailAndCode(e,n,r=null){return new t(e,n,"emailLink",r)}toJSON(){return{email:this._email,password:this._password,signInMethod:this.signInMethod,tenantId:this._tenantId}}static fromJSON(e){let n=typeof e=="string"?JSON.parse(e):e;if(n?.email&&n?.password){if(n.signInMethod==="password")return this._fromEmailAndPassword(n.email,n.password);if(n.signInMethod==="emailLink")return this._fromEmailAndCode(n.email,n.password,n.tenantId)}return null}async _getIdTokenResponse(e){switch(this.signInMethod){case"password":let n={returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return Ce(e,n,"signInWithPassword",zo,"EMAIL_PASSWORD_PROVIDER");case"emailLink":return jo(e,{email:this._email,oobCode:this._password});default:R(e,"internal-error")}}async _linkToIdToken(e,n){switch(this.signInMethod){case"password":let r={idToken:n,returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return Ce(e,r,"signUpPassword",$o,"EMAIL_PASSWORD_PROVIDER");case"emailLink":return qo(e,{idToken:n,email:this._email,oobCode:this._password});default:R(e,"internal-error")}}_getReauthenticationResolver(e){return this._getIdTokenResponse(e)}};async function pe(t,e){return ie(t,"POST","/v1/accounts:signInWithIdp",b(t,e))}var Go="http://localhost",ee=class t extends Z{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(e){let n=new t(e.providerId,e.signInMethod);return e.idToken||e.accessToken?(e.idToken&&(n.idToken=e.idToken),e.accessToken&&(n.accessToken=e.accessToken),e.nonce&&!e.pendingToken&&(n.nonce=e.nonce),e.pendingToken&&(n.pendingToken=e.pendingToken)):e.oauthToken&&e.oauthTokenSecret?(n.accessToken=e.oauthToken,n.secret=e.oauthTokenSecret):R("argument-error"),n}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(e){let n=typeof e=="string"?JSON.parse(e):e,{providerId:r,signInMethod:i,...s}=n;if(!r||!i)return null;let o=new t(r,i);return o.idToken=s.idToken||void 0,o.accessToken=s.accessToken||void 0,o.secret=s.secret,o.nonce=s.nonce,o.pendingToken=s.pendingToken||null,o}_getIdTokenResponse(e){let n=this.buildRequest();return pe(e,n)}_linkToIdToken(e,n){let r=this.buildRequest();return r.idToken=n,pe(e,r)}_getReauthenticationResolver(e){let n=this.buildRequest();return n.autoCreate=!1,pe(e,n)}buildRequest(){let e={requestUri:Go,returnSecureToken:!0};if(this.pendingToken)e.pendingToken=this.pendingToken;else{let n={};this.idToken&&(n.id_token=this.idToken),this.accessToken&&(n.access_token=this.accessToken),this.secret&&(n.oauth_token_secret=this.secret),n.providerId=this.providerId,this.nonce&&!this.pendingToken&&(n.nonce=this.nonce),e.postBody=ce(n)}return e}};async function Lr(t,e){return k(t,"POST","/v1/accounts:sendVerificationCode",b(t,e))}async function Ko(t,e){return ie(t,"POST","/v1/accounts:signInWithPhoneNumber",b(t,e))}async function Jo(t,e){let n=await ie(t,"POST","/v1/accounts:signInWithPhoneNumber",b(t,e));if(n.temporaryProof)throw be(t,"account-exists-with-different-credential",n);return n}var Yo={USER_NOT_FOUND:"user-not-found"};async function Xo(t,e){let n={...e,operation:"REAUTH"};return ie(t,"POST","/v1/accounts:signInWithPhoneNumber",b(t,n),Yo)}var Oe=class t extends Z{constructor(e){super("phone","phone"),this.params=e}static _fromVerification(e,n){return new t({verificationId:e,verificationCode:n})}static _fromTokenResponse(e,n){return new t({phoneNumber:e,temporaryProof:n})}_getIdTokenResponse(e){return Ko(e,this._makeVerificationRequest())}_linkToIdToken(e,n){return Jo(e,{idToken:n,...this._makeVerificationRequest()})}_getReauthenticationResolver(e){return Xo(e,this._makeVerificationRequest())}_makeVerificationRequest(){let{temporaryProof:e,phoneNumber:n,verificationId:r,verificationCode:i}=this.params;return e&&n?{temporaryProof:e,phoneNumber:n}:{sessionInfo:r,code:i}}toJSON(){let e={providerId:this.providerId};return this.params.phoneNumber&&(e.phoneNumber=this.params.phoneNumber),this.params.temporaryProof&&(e.temporaryProof=this.params.temporaryProof),this.params.verificationCode&&(e.verificationCode=this.params.verificationCode),this.params.verificationId&&(e.verificationId=this.params.verificationId),e}static fromJSON(e){typeof e=="string"&&(e=JSON.parse(e));let{verificationId:n,verificationCode:r,phoneNumber:i,temporaryProof:s}=e;return!r&&!n&&!i&&!s?null:new t({verificationId:n,verificationCode:r,phoneNumber:i,temporaryProof:s})}};function Qo(t){switch(t){case"recoverEmail":return"RECOVER_EMAIL";case"resetPassword":return"PASSWORD_RESET";case"signIn":return"EMAIL_SIGNIN";case"verifyEmail":return"VERIFY_EMAIL";case"verifyAndChangeEmail":return"VERIFY_AND_CHANGE_EMAIL";case"revertSecondFactorAddition":return"REVERT_SECOND_FACTOR_ADDITION";default:return null}}function Zo(t){let e=ue(le(t)).link,n=e?ue(le(e)).deep_link_id:null,r=ue(le(t)).deep_link_id;return(r?ue(le(r)).link:null)||r||n||e||t}var lt=class t{constructor(e){let n=ue(le(e)),r=n.apiKey??null,i=n.oobCode??null,s=Qo(n.mode??null);p(r&&i&&s,"argument-error"),this.apiKey=r,this.operation=s,this.code=i,this.continueUrl=n.continueUrl??null,this.languageCode=n.lang??null,this.tenantId=n.tenantId??null}static parseLink(e){let n=Zo(e);try{return new t(n)}catch{return null}}};var _e=class t{constructor(){this.providerId=t.PROVIDER_ID}static credential(e,n){return Ne._fromEmailAndPassword(e,n)}static credentialWithLink(e,n){let r=lt.parseLink(n);return p(r,"argument-error"),Ne._fromEmailAndCode(e,r.code,r.tenantId)}};_e.PROVIDER_ID="password";_e.EMAIL_PASSWORD_SIGN_IN_METHOD="password";_e.EMAIL_LINK_SIGN_IN_METHOD="emailLink";var De=class{constructor(e){this.providerId=e,this.defaultLanguageCode=null,this.customParameters={}}setDefaultLanguage(e){this.defaultLanguageCode=e}setCustomParameters(e){return this.customParameters=e,this}getCustomParameters(){return this.customParameters}};var te=class extends De{constructor(){super(...arguments),this.scopes=[]}addScope(e){return this.scopes.includes(e)||this.scopes.push(e),this}getScopes(){return[...this.scopes]}};var Le=class t extends te{constructor(){super("facebook.com")}static credential(e){return ee._fromParams({providerId:t.PROVIDER_ID,signInMethod:t.FACEBOOK_SIGN_IN_METHOD,accessToken:e})}static credentialFromResult(e){return t.credentialFromTaggedObject(e)}static credentialFromError(e){return t.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e||!("oauthAccessToken"in e)||!e.oauthAccessToken)return null;try{return t.credential(e.oauthAccessToken)}catch{return null}}};Le.FACEBOOK_SIGN_IN_METHOD="facebook.com";Le.PROVIDER_ID="facebook.com";var ne=class t extends te{constructor(){super("google.com"),this.addScope("profile")}static credential(e,n){return ee._fromParams({providerId:t.PROVIDER_ID,signInMethod:t.GOOGLE_SIGN_IN_METHOD,idToken:e,accessToken:n})}static credentialFromResult(e){return t.credentialFromTaggedObject(e)}static credentialFromError(e){return t.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{oauthIdToken:n,oauthAccessToken:r}=e;if(!n&&!r)return null;try{return t.credential(n,r)}catch{return null}}};ne.GOOGLE_SIGN_IN_METHOD="google.com";ne.PROVIDER_ID="google.com";var Me=class t extends te{constructor(){super("github.com")}static credential(e){return ee._fromParams({providerId:t.PROVIDER_ID,signInMethod:t.GITHUB_SIGN_IN_METHOD,accessToken:e})}static credentialFromResult(e){return t.credentialFromTaggedObject(e)}static credentialFromError(e){return t.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e||!("oauthAccessToken"in e)||!e.oauthAccessToken)return null;try{return t.credential(e.oauthAccessToken)}catch{return null}}};Me.GITHUB_SIGN_IN_METHOD="github.com";Me.PROVIDER_ID="github.com";var Ue=class t extends te{constructor(){super("twitter.com")}static credential(e,n){return ee._fromParams({providerId:t.PROVIDER_ID,signInMethod:t.TWITTER_SIGN_IN_METHOD,oauthToken:e,oauthTokenSecret:n})}static credentialFromResult(e){return t.credentialFromTaggedObject(e)}static credentialFromError(e){return t.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{oauthAccessToken:n,oauthTokenSecret:r}=e;if(!n||!r)return null;try{return t.credential(n,r)}catch{return null}}};Ue.TWITTER_SIGN_IN_METHOD="twitter.com";Ue.PROVIDER_ID="twitter.com";var xe=class t{constructor(e){this.user=e.user,this.providerId=e.providerId,this._tokenResponse=e._tokenResponse,this.operationType=e.operationType}static async _fromIdTokenResponse(e,n,r,i=!1){let s=await J._fromIdTokenResponse(e,r,i),o=Mr(r);return new t({user:s,providerId:o,_tokenResponse:r,operationType:n})}static async _forOperation(e,n,r){await e._updateTokensIfNecessary(r,!0);let i=Mr(r);return new t({user:e,providerId:i,_tokenResponse:r,operationType:n})}};function Mr(t){return t.providerId?t.providerId:"phoneNumber"in t?"phone":null}var yn=class t extends P{constructor(e,n,r,i){super(n.code,n.message),this.operationType=r,this.user=i,Object.setPrototypeOf(this,t.prototype),this.customData={appName:e.name,tenantId:e.tenantId??void 0,_serverResponse:n.customData._serverResponse,operationType:r}}static _fromErrorAndOperation(e,n,r,i){return new t(e,n,r,i)}};function _i(t,e,n,r){return(e==="reauthenticate"?n._getReauthenticationResolver(t):n._getIdTokenResponse(t)).catch(s=>{throw s.code==="auth/multi-factor-auth-required"?yn._fromErrorAndOperation(t,s,e,r):s})}async function ea(t,e,n=!1){let r=await Re(t,e._linkToIdToken(t.auth,await t.getIdToken()),n);return xe._forOperation(t,"link",r)}async function ta(t,e,n=!1){let{auth:r}=t;if(N(r.app))return Promise.reject(X(r));let i="reauthenticate";try{let s=await Re(t,_i(r,i,e,t),n);p(s.idToken,r,"internal-error");let o=On(s.idToken);p(o,r,"internal-error");let{sub:a}=o;return p(t.uid===a,r,"user-mismatch"),xe._forOperation(t,i,s)}catch(s){throw s?.code==="auth/user-not-found"&&R(r,"user-mismatch"),s}}async function na(t,e,n=!1){if(N(t.app))return Promise.reject(X(t));let r="signIn",i=await _i(t,r,e),s=await xe._fromIdTokenResponse(t,r,i);return n||await t._updateCurrentUser(s.user),s}function mi(t,e,n,r){return j(t).onIdTokenChanged(e,n,r)}function gi(t,e,n){return j(t).beforeAuthStateChanged(e,n)}function Ur(t,e){return k(t,"POST","/v2/accounts/mfaEnrollment:start",b(t,e))}function ra(t,e){return k(t,"POST","/v2/accounts/mfaEnrollment:finalize",b(t,e))}function ia(t,e){return k(t,"POST","/v2/accounts/mfaEnrollment:start",b(t,e))}function sa(t,e){return k(t,"POST","/v2/accounts/mfaEnrollment:finalize",b(t,e))}var dt="__sak";var ht=class{constructor(e,n){this.storageRetriever=e,this.type=n}_isAvailable(){try{return this.storage?(this.storage.setItem(dt,"1"),this.storage.removeItem(dt),Promise.resolve(!0)):Promise.resolve(!1)}catch{return Promise.resolve(!1)}}_set(e,n){return this.storage.setItem(e,JSON.stringify(n)),Promise.resolve()}_get(e){let n=this.storage.getItem(e);return Promise.resolve(n?JSON.parse(n):null)}_remove(e){return this.storage.removeItem(e),Promise.resolve()}get storage(){return this.storageRetriever()}};var oa=1e3,aa=10,ft=class extends ht{constructor(){super(()=>window.localStorage,"LOCAL"),this.boundEventHandler=(e,n)=>this.onStorageEvent(e,n),this.listeners={},this.localCache={},this.pollTimer=null,this.fallbackToPolling=ci(),this._shouldAllowMigration=!0}forAllChangedKeys(e){for(let n of Object.keys(this.listeners)){let r=this.storage.getItem(n),i=this.localCache[n];r!==i&&e(n,i,r)}}onStorageEvent(e,n=!1){if(!e.key){this.forAllChangedKeys((o,a,u)=>{this.notifyListeners(o,u)});return}let r=e.key;n?this.detachListener():this.stopPolling();let i=()=>{let o=this.storage.getItem(r);!n&&this.localCache[r]===o||this.notifyListeners(r,o)},s=this.storage.getItem(r);Oo()&&s!==e.newValue&&e.newValue!==e.oldValue?setTimeout(i,aa):i()}notifyListeners(e,n){this.localCache[e]=n;let r=this.listeners[e];if(r)for(let i of Array.from(r))i(n&&JSON.parse(n))}startPolling(){this.stopPolling(),this.pollTimer=setInterval(()=>{this.forAllChangedKeys((e,n,r)=>{this.onStorageEvent(new StorageEvent("storage",{key:e,oldValue:n,newValue:r}),!0)})},oa)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(e,n){Object.keys(this.listeners).length===0&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[e]||(this.listeners[e]=new Set,this.localCache[e]=this.storage.getItem(e)),this.listeners[e].add(n)}_removeListener(e,n){this.listeners[e]&&(this.listeners[e].delete(n),this.listeners[e].size===0&&delete this.listeners[e]),Object.keys(this.listeners).length===0&&(this.detachListener(),this.stopPolling())}async _set(e,n){await super._set(e,n),this.localCache[e]=JSON.stringify(n)}async _get(e){let n=await super._get(e);return this.localCache[e]=JSON.stringify(n),n}async _remove(e){await super._remove(e),delete this.localCache[e]}};ft.type="LOCAL";var Ii=ft;var ca=1e3;function an(t){let e=t.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),n=RegExp(`${e}=([^;]+)`);return document.cookie.match(n)?.[1]??null}function cn(t){return`${window.location.protocol==="http:"?"__dev_":"__HOST-"}FIREBASE_${t.split(":")[3]}`}var vn=class{constructor(){this.type="COOKIE",this.listenerUnsubscribes=new Map}_getFinalTarget(e){if(typeof window===void 0)return e;let n=new URL(`${window.location.origin}/__cookies__`);return n.searchParams.set("finalTarget",e),n}async _isAvailable(){return typeof isSecureContext=="boolean"&&!isSecureContext||typeof navigator>"u"||typeof document>"u"?!1:navigator.cookieEnabled??!0}async _set(e,n){}async _get(e){if(!this._isAvailable())return null;let n=cn(e);return window.cookieStore?(await window.cookieStore.get(n))?.value:an(n)}async _remove(e){if(!this._isAvailable()||!await this._get(e))return;let r=cn(e);document.cookie=`${r}=;Max-Age=34560000;Partitioned;Secure;SameSite=Strict;Path=/;Priority=High`,await fetch("/__cookies__",{method:"DELETE"}).catch(()=>{})}_addListener(e,n){if(!this._isAvailable())return;let r=cn(e);if(window.cookieStore){let a=(c=>{let h=c.changed.find(d=>d.name===r);h&&n(h.value),c.deleted.find(d=>d.name===r)&&n(null)}),u=()=>window.cookieStore.removeEventListener("change",a);return this.listenerUnsubscribes.set(n,u),window.cookieStore.addEventListener("change",a)}let i=an(r),s=setInterval(()=>{let a=an(r);a!==i&&(n(a),i=a)},ca),o=()=>clearInterval(s);this.listenerUnsubscribes.set(n,o)}_removeListener(e,n){let r=this.listenerUnsubscribes.get(n);r&&(r(),this.listenerUnsubscribes.delete(n))}};vn.type="COOKIE";var pt=class extends ht{constructor(){super(()=>window.sessionStorage,"SESSION")}_addListener(e,n){}_removeListener(e,n){}};pt.type="SESSION";var Ln=pt;function ua(t){return Promise.all(t.map(async e=>{try{return{fulfilled:!0,value:await e}}catch(n){return{fulfilled:!1,reason:n}}}))}var _t=class t{constructor(e){this.eventTarget=e,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(e){let n=this.receivers.find(i=>i.isListeningto(e));if(n)return n;let r=new t(e);return this.receivers.push(r),r}isListeningto(e){return this.eventTarget===e}async handleEvent(e){let n=e,{eventId:r,eventType:i,data:s}=n.data,o=this.handlersMap[i];if(!o?.size)return;n.ports[0].postMessage({status:"ack",eventId:r,eventType:i});let a=Array.from(o).map(async c=>c(n.origin,s)),u=await ua(a);n.ports[0].postMessage({status:"done",eventId:r,eventType:i,response:u})}_subscribe(e,n){Object.keys(this.handlersMap).length===0&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[e]||(this.handlersMap[e]=new Set),this.handlersMap[e].add(n)}_unsubscribe(e,n){this.handlersMap[e]&&n&&this.handlersMap[e].delete(n),(!n||this.handlersMap[e].size===0)&&delete this.handlersMap[e],Object.keys(this.handlersMap).length===0&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}};_t.receivers=[];function Mn(t="",e=10){let n="";for(let r=0;r<e;r++)n+=Math.floor(Math.random()*10);return t+n}var wn=class{constructor(e){this.target=e,this.handlers=new Set}removeMessageHandler(e){e.messageChannel&&(e.messageChannel.port1.removeEventListener("message",e.onMessage),e.messageChannel.port1.close()),this.handlers.delete(e)}async _send(e,n,r=50){let i=typeof MessageChannel<"u"?new MessageChannel:null;if(!i)throw new Error("connection_unavailable");let s,o;return new Promise((a,u)=>{let c=Mn("",20);i.port1.start();let h=setTimeout(()=>{u(new Error("unsupported_event"))},r);o={messageChannel:i,onMessage(l){let d=l;if(d.data.eventId===c)switch(d.data.status){case"ack":clearTimeout(h),s=setTimeout(()=>{u(new Error("timeout"))},3e3);break;case"done":clearTimeout(s),a(d.data.response);break;default:clearTimeout(h),clearTimeout(s),u(new Error("invalid_response"));break}}},this.handlers.add(o),i.port1.addEventListener("message",o.onMessage),this.target.postMessage({eventType:e,eventId:c,data:n},[i.port2])}).finally(()=>{o&&this.removeMessageHandler(o)})}};function F(){return window}function la(t){F().location.href=t}function Ei(){return typeof F().WorkerGlobalScope<"u"&&typeof F().importScripts=="function"}async function da(){if(!navigator?.serviceWorker)return null;try{return(await navigator.serviceWorker.ready).active}catch{return null}}function ha(){return navigator?.serviceWorker?.controller||null}function fa(){return Ei()?self:null}var yi="firebaseLocalStorageDb",pa=1,mt="firebaseLocalStorage",vi="fbase_key",re=class{constructor(e){this.request=e}toPromise(){return new Promise((e,n)=>{this.request.addEventListener("success",()=>{e(this.request.result)}),this.request.addEventListener("error",()=>{n(this.request.error)})})}};function kt(t,e){return t.transaction([mt],e?"readwrite":"readonly").objectStore(mt)}function _a(){let t=indexedDB.deleteDatabase(yi);return new re(t).toPromise()}function Tn(){let t=indexedDB.open(yi,pa);return new Promise((e,n)=>{t.addEventListener("error",()=>{n(t.error)}),t.addEventListener("upgradeneeded",()=>{let r=t.result;try{r.createObjectStore(mt,{keyPath:vi})}catch(i){n(i)}}),t.addEventListener("success",async()=>{let r=t.result;r.objectStoreNames.contains(mt)?e(r):(r.close(),await _a(),e(await Tn()))})})}async function xr(t,e,n){let r=kt(t,!0).put({[vi]:e,value:n});return new re(r).toPromise()}async function ma(t,e){let n=kt(t,!1).get(e),r=await new re(n).toPromise();return r===void 0?null:r.value}function Fr(t,e){let n=kt(t,!0).delete(e);return new re(n).toPromise()}var ga=800,Ia=3,gt=class{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:(this.db=await Tn(),this.db)}async _withRetries(e){let n=0;for(;;)try{let r=await this._openDb();return await e(r)}catch(r){if(n++>Ia)throw r;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return Ei()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=_t._getInstance(fa()),this.receiver._subscribe("keyChanged",async(e,n)=>({keyProcessed:(await this._poll()).includes(n.key)})),this.receiver._subscribe("ping",async(e,n)=>["keyChanged"])}async initializeSender(){if(this.activeServiceWorker=await da(),!this.activeServiceWorker)return;this.sender=new wn(this.activeServiceWorker);let e=await this.sender._send("ping",{},800);e&&e[0]?.fulfilled&&e[0]?.value.includes("keyChanged")&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(e){if(!(!this.sender||!this.activeServiceWorker||ha()!==this.activeServiceWorker))try{await this.sender._send("keyChanged",{key:e},this.serviceWorkerReceiverAvailable?800:50)}catch{}}async _isAvailable(){try{if(!indexedDB)return!1;let e=await Tn();return await xr(e,dt,"1"),await Fr(e,dt),!0}catch{}return!1}async _withPendingWrite(e){this.pendingWrites++;try{await e()}finally{this.pendingWrites--}}async _set(e,n){return this._withPendingWrite(async()=>(await this._withRetries(r=>xr(r,e,n)),this.localCache[e]=n,this.notifyServiceWorker(e)))}async _get(e){let n=await this._withRetries(r=>ma(r,e));return this.localCache[e]=n,n}async _remove(e){return this._withPendingWrite(async()=>(await this._withRetries(n=>Fr(n,e)),delete this.localCache[e],this.notifyServiceWorker(e)))}async _poll(){let e=await this._withRetries(i=>{let s=kt(i,!1).getAll();return new re(s).toPromise()});if(!e)return[];if(this.pendingWrites!==0)return[];let n=[],r=new Set;if(e.length!==0)for(let{fbase_key:i,value:s}of e)r.add(i),JSON.stringify(this.localCache[i])!==JSON.stringify(s)&&(this.notifyListeners(i,s),n.push(i));for(let i of Object.keys(this.localCache))this.localCache[i]&&!r.has(i)&&(this.notifyListeners(i,null),n.push(i));return n}notifyListeners(e,n){this.localCache[e]=n;let r=this.listeners[e];if(r)for(let i of Array.from(r))i(n)}startPolling(){this.stopPolling(),this.pollTimer=setInterval(async()=>this._poll(),ga)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(e,n){Object.keys(this.listeners).length===0&&this.startPolling(),this.listeners[e]||(this.listeners[e]=new Set,this._get(e)),this.listeners[e].add(n)}_removeListener(e,n){this.listeners[e]&&(this.listeners[e].delete(n),this.listeners[e].size===0&&delete this.listeners[e]),Object.keys(this.listeners).length===0&&this.stopPolling()}};gt.type="LOCAL";var wi=gt;function Vr(t,e){return k(t,"POST","/v2/accounts/mfaSignIn:start",b(t,e))}function Ea(t,e){return k(t,"POST","/v2/accounts/mfaSignIn:finalize",b(t,e))}function ya(t,e){return k(t,"POST","/v2/accounts/mfaSignIn:finalize",b(t,e))}var tu=di("rcb"),nu=new Q(3e4,6e4);var Qe="recaptcha";async function va(t,e,n){if(!t._getRecaptchaConfig())try{await Vo(t)}catch{console.log("Failed to initialize reCAPTCHA Enterprise config. Triggering the reCAPTCHA v2 verification.")}try{let r;if(typeof e=="string"?r={phoneNumber:e}:r=e,"session"in r){let i=r.session;if("phoneNumber"in r){p(i.type==="enroll",t,"internal-error");let s={idToken:i.credential,phoneEnrollmentInfo:{phoneNumber:r.phoneNumber,clientType:"CLIENT_TYPE_WEB"}};return(await Ce(t,s,"mfaSmsEnrollment",async(c,h)=>{if(h.phoneEnrollmentInfo.captchaResponse===ke){p(n?.type===Qe,c,"argument-error");let l=await un(c,h,n);return Ur(c,l)}return Ur(c,h)},"PHONE_PROVIDER").catch(c=>Promise.reject(c))).phoneSessionInfo.sessionInfo}else{p(i.type==="signin",t,"internal-error");let s=r.multiFactorHint?.uid||r.multiFactorUid;p(s,t,"missing-multi-factor-info");let o={mfaPendingCredential:i.credential,mfaEnrollmentId:s,phoneSignInInfo:{clientType:"CLIENT_TYPE_WEB"}};return(await Ce(t,o,"mfaSmsSignIn",async(h,l)=>{if(l.phoneSignInInfo.captchaResponse===ke){p(n?.type===Qe,h,"argument-error");let d=await un(h,l,n);return Vr(h,d)}return Vr(h,l)},"PHONE_PROVIDER").catch(h=>Promise.reject(h))).phoneResponseInfo.sessionInfo}}else{let i={phoneNumber:r.phoneNumber,clientType:"CLIENT_TYPE_WEB"};return(await Ce(t,i,"sendVerificationCode",async(u,c)=>{if(c.captchaResponse===ke){p(n?.type===Qe,u,"argument-error");let h=await un(u,c,n);return Lr(u,h)}return Lr(u,c)},"PHONE_PROVIDER").catch(u=>Promise.reject(u))).sessionInfo}}finally{n?._reset()}}async function un(t,e,n){p(n.type===Qe,t,"argument-error");let r=await n.verify();p(typeof r=="string",t,"argument-error");let i={...e};if("phoneEnrollmentInfo"in i){let s=i.phoneEnrollmentInfo.phoneNumber,o=i.phoneEnrollmentInfo.captchaResponse,a=i.phoneEnrollmentInfo.clientType,u=i.phoneEnrollmentInfo.recaptchaVersion;return Object.assign(i,{phoneEnrollmentInfo:{phoneNumber:s,recaptchaToken:r,captchaResponse:o,clientType:a,recaptchaVersion:u}}),i}else if("phoneSignInInfo"in i){let s=i.phoneSignInInfo.captchaResponse,o=i.phoneSignInInfo.clientType,a=i.phoneSignInInfo.recaptchaVersion;return Object.assign(i,{phoneSignInInfo:{recaptchaToken:r,captchaResponse:s,clientType:o,recaptchaVersion:a}}),i}else return Object.assign(i,{recaptchaToken:r}),i}var Fe=class t{constructor(e){this.providerId=t.PROVIDER_ID,this.auth=se(e)}verifyPhoneNumber(e,n){return va(this.auth,e,j(n))}static credential(e,n){return Oe._fromVerification(e,n)}static credentialFromResult(e){let n=e;return t.credentialFromTaggedObject(n)}static credentialFromError(e){return t.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{phoneNumber:n,temporaryProof:r}=e;return n&&r?Oe._fromTokenResponse(n,r):null}};Fe.PROVIDER_ID="phone";Fe.PHONE_SIGN_IN_METHOD="phone";function Ti(t,e){return e?W(e):(p(t._popupRedirectResolver,t,"argument-error"),t._popupRedirectResolver)}var Ve=class extends Z{constructor(e){super("custom","custom"),this.params=e}_getIdTokenResponse(e){return pe(e,this._buildIdpRequest())}_linkToIdToken(e,n){return pe(e,this._buildIdpRequest(n))}_getReauthenticationResolver(e){return pe(e,this._buildIdpRequest())}_buildIdpRequest(e){let n={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 e&&(n.idToken=e),n}};function wa(t){return na(t.auth,new Ve(t),t.bypassAuthState)}function Ta(t){let{auth:e,user:n}=t;return p(n,e,"internal-error"),ta(n,new Ve(t),t.bypassAuthState)}async function ba(t){let{auth:e,user:n}=t;return p(n,e,"internal-error"),ea(n,new Ve(t),t.bypassAuthState)}var It=class{constructor(e,n,r,i,s=!1){this.auth=e,this.resolver=r,this.user=i,this.bypassAuthState=s,this.pendingPromise=null,this.eventManager=null,this.filter=Array.isArray(n)?n:[n]}execute(){return new Promise(async(e,n)=>{this.pendingPromise={resolve:e,reject:n};try{this.eventManager=await this.resolver._initialize(this.auth),await this.onExecution(),this.eventManager.registerConsumer(this)}catch(r){this.reject(r)}})}async onAuthEvent(e){let{urlResponse:n,sessionId:r,postBody:i,tenantId:s,error:o,type:a}=e;if(o){this.reject(o);return}let u={auth:this.auth,requestUri:n,sessionId:r,tenantId:s||void 0,postBody:i||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(a)(u))}catch(c){this.reject(c)}}onError(e){this.reject(e)}getIdpTask(e){switch(e){case"signInViaPopup":case"signInViaRedirect":return wa;case"linkViaPopup":case"linkViaRedirect":return ba;case"reauthViaPopup":case"reauthViaRedirect":return Ta;default:R(this.auth,"internal-error")}}resolve(e){B(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(e),this.unregisterAndCleanUp()}reject(e){B(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.reject(e),this.unregisterAndCleanUp()}unregisterAndCleanUp(){this.eventManager&&this.eventManager.unregisterConsumer(this),this.pendingPromise=null,this.cleanUp()}};var Aa=new Q(2e3,1e4);async function Un(t,e,n){if(N(t.app))return Promise.reject(O(t,"operation-not-supported-in-this-environment"));let r=se(t);Io(t,e,De);let i=Ti(r,n);return new Et(r,"signInViaPopup",e,i).executeNotNull()}var Et=class t extends It{constructor(e,n,r,i,s){super(e,n,i,s),this.provider=r,this.authWindow=null,this.pollId=null,t.currentPopupAction&&t.currentPopupAction.cancel(),t.currentPopupAction=this}async executeNotNull(){let e=await this.execute();return p(e,this.auth,"internal-error"),e}async onExecution(){B(this.filter.length===1,"Popup operations only handle one event");let e=Mn();this.authWindow=await this.resolver._openPopup(this.auth,this.provider,this.filter[0],e),this.authWindow.associatedEvent=e,this.resolver._originValidation(this.auth).catch(n=>{this.reject(n)}),this.resolver._isIframeWebStorageSupported(this.auth,n=>{n||this.reject(O(this.auth,"web-storage-unsupported"))}),this.pollUserCancellation()}get eventId(){return this.authWindow?.associatedEvent||null}cancel(){this.reject(O(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,t.currentPopupAction=null}pollUserCancellation(){let e=()=>{if(this.authWindow?.window?.closed){this.pollId=window.setTimeout(()=>{this.pollId=null,this.reject(O(this.auth,"popup-closed-by-user"))},8e3);return}this.pollId=window.setTimeout(e,Aa.get())};e()}};Et.currentPopupAction=null;var Sa="pendingRedirect",Ze=new Map,bn=class extends It{constructor(e,n,r=!1){super(e,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],n,void 0,r),this.eventId=null}async execute(){let e=Ze.get(this.auth._key());if(!e){try{let r=await ka(this.resolver,this.auth)?await super.execute():null;e=()=>Promise.resolve(r)}catch(n){e=()=>Promise.reject(n)}Ze.set(this.auth._key(),e)}return this.bypassAuthState||Ze.set(this.auth._key(),()=>Promise.resolve(null)),e()}async onAuthEvent(e){if(e.type==="signInViaRedirect")return super.onAuthEvent(e);if(e.type==="unknown"){this.resolve(null);return}if(e.eventId){let n=await this.auth._redirectUserForId(e.eventId);if(n)return this.user=n,super.onAuthEvent(e);this.resolve(null)}}async onExecution(){}cleanUp(){}};async function ka(t,e){let n=Pa(e),r=Ra(t);if(!await r._isAvailable())return!1;let i=await r._get(n)==="true";return await r._remove(n),i}function Ca(t,e){Ze.set(t._key(),e)}function Ra(t){return W(t._redirectPersistence)}function Pa(t){return Xe(Sa,t.config.apiKey,t.name)}async function Na(t,e,n=!1){if(N(t.app))return Promise.reject(X(t));let r=se(t),i=Ti(r,e),o=await new bn(r,i,n).execute();return o&&!n&&(delete o.user._redirectEventId,await r._persistUserIfCurrent(o.user),await r._setRedirectUser(null,e)),o}var Oa=600*1e3,An=class{constructor(e){this.auth=e,this.cachedEventUids=new Set,this.consumers=new Set,this.queuedRedirectEvent=null,this.hasHandledPotentialRedirect=!1,this.lastProcessedEventTime=Date.now()}registerConsumer(e){this.consumers.add(e),this.queuedRedirectEvent&&this.isEventForConsumer(this.queuedRedirectEvent,e)&&(this.sendToConsumer(this.queuedRedirectEvent,e),this.saveEventToCache(this.queuedRedirectEvent),this.queuedRedirectEvent=null)}unregisterConsumer(e){this.consumers.delete(e)}onEvent(e){if(this.hasEventBeenHandled(e))return!1;let n=!1;return this.consumers.forEach(r=>{this.isEventForConsumer(e,r)&&(n=!0,this.sendToConsumer(e,r),this.saveEventToCache(e))}),this.hasHandledPotentialRedirect||!Da(e)||(this.hasHandledPotentialRedirect=!0,n||(this.queuedRedirectEvent=e,n=!0)),n}sendToConsumer(e,n){if(e.error&&!bi(e)){let r=e.error.code?.split("auth/")[1]||"internal-error";n.onError(O(this.auth,r))}else n.onAuthEvent(e)}isEventForConsumer(e,n){let r=n.eventId===null||!!e.eventId&&e.eventId===n.eventId;return n.filter.includes(e.type)&&r}hasEventBeenHandled(e){return Date.now()-this.lastProcessedEventTime>=Oa&&this.cachedEventUids.clear(),this.cachedEventUids.has(Hr(e))}saveEventToCache(e){this.cachedEventUids.add(Hr(e)),this.lastProcessedEventTime=Date.now()}};function Hr(t){return[t.type,t.eventId,t.sessionId,t.tenantId].filter(e=>e).join("-")}function bi({type:t,error:e}){return t==="unknown"&&e?.code==="auth/no-auth-event"}function Da(t){switch(t.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return bi(t);default:return!1}}async function La(t,e={}){return k(t,"GET","/v1/projects",e)}var Ma=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,Ua=/^https?/;async function xa(t){if(t.config.emulator)return;let{authorizedDomains:e}=await La(t);for(let n of e)try{if(Fa(n))return}catch{}R(t,"unauthorized-domain")}function Fa(t){let e=dn(),{protocol:n,hostname:r}=new URL(e);if(t.startsWith("chrome-extension://")){let o=new URL(t);return o.hostname===""&&r===""?n==="chrome-extension:"&&t.replace("chrome-extension://","")===e.replace("chrome-extension://",""):n==="chrome-extension:"&&o.hostname===r}if(!Ua.test(n))return!1;if(Ma.test(t))return r===t;let i=t.replace(/\./g,"\\.");return new RegExp("^(.+\\."+i+"|"+i+")$","i").test(r)}var Va=new Q(3e4,6e4);function Wr(){let t=F().___jsl;if(t?.H){for(let 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 n=0;n<t.CP.length;n++)t.CP[n]=null}}function Ha(t){return new Promise((e,n)=>{function r(){Wr(),gapi.load("gapi.iframes",{callback:()=>{e(gapi.iframes.getContext())},ontimeout:()=>{Wr(),n(O(t,"network-request-failed"))},timeout:Va.get()})}if(F().gapi?.iframes?.Iframe)e(gapi.iframes.getContext());else if(F().gapi?.load)r();else{let i=di("iframefcb");return F()[i]=()=>{gapi.load?r():n(O(t,"network-request-failed"))},li(`${xo()}?onload=${i}`).catch(s=>n(s))}}).catch(e=>{throw et=null,e})}var et=null;function Wa(t){return et=et||Ha(t),et}var Ba=new Q(5e3,15e3),$a="__/auth/iframe",za="emulator/auth/iframe",ja={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"},"aria-hidden":"true",tabindex:"-1"},qa=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function Ga(t){let e=t.config;p(e.authDomain,t,"auth-domain-config-required");let n=e.emulator?Nn(e,za):`https://${t.config.authDomain}/${$a}`,r={apiKey:e.apiKey,appName:t.name,v:fe},i=qa.get(t.config.apiHost);i&&(r.eid=i);let s=t._getFrameworks();return s.length&&(r.fw=s.join(",")),`${n}?${ce(r).slice(1)}`}async function Ka(t){let e=await Wa(t),n=F().gapi;return p(n,t,"internal-error"),e.open({where:document.body,url:Ga(t),messageHandlersFilter:n.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:ja,dontclear:!0},r=>new Promise(async(i,s)=>{await r.restyle({setHideOnLeave:!1});let o=O(t,"network-request-failed"),a=F().setTimeout(()=>{s(o)},Ba.get());function u(){F().clearTimeout(a),i(r)}r.ping(u).then(u,()=>{s(o)})}))}var Ja={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"},Ya=500,Xa=600,Qa="_blank",Za="http://localhost",yt=class{constructor(e){this.window=e,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch{}}};function ec(t,e,n,r=Ya,i=Xa){let s=Math.max((window.screen.availHeight-i)/2,0).toString(),o=Math.max((window.screen.availWidth-r)/2,0).toString(),a="",u={...Ja,width:r.toString(),height:i.toString(),top:s,left:o},c=S().toLowerCase();n&&(a=ri(c)?Qa:n),ti(c)&&(e=e||Za,u.scrollbars="yes");let h=Object.entries(u).reduce((d,[f,g])=>`${d}${f}=${g},`,"");if(No(c)&&a!=="_self")return tc(e||"",a),new yt(null);let l=window.open(e||"",a,h);p(l,t,"popup-blocked");try{l.focus()}catch{}return new yt(l)}function tc(t,e){let n=document.createElement("a");n.href=t,n.target=e;let r=document.createEvent("MouseEvent");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),n.dispatchEvent(r)}var nc="__/auth/handler",rc="emulator/auth/handler",ic=encodeURIComponent("fac");async function Br(t,e,n,r,i,s){p(t.config.authDomain,t,"auth-domain-config-required"),p(t.config.apiKey,t,"invalid-api-key");let o={apiKey:t.config.apiKey,appName:t.name,authType:n,redirectUrl:r,v:fe,eventId:i};if(e instanceof De){e.setDefaultLanguage(t.languageCode),o.providerId=e.providerId||"",dr(e.getCustomParameters())||(o.customParameters=JSON.stringify(e.getCustomParameters()));for(let[h,l]of Object.entries(s||{}))o[h]=l}if(e instanceof te){let h=e.getScopes().filter(l=>l!=="");h.length>0&&(o.scopes=h.join(","))}t.tenantId&&(o.tid=t.tenantId);let a=o;for(let h of Object.keys(a))a[h]===void 0&&delete a[h];let u=await t._getAppCheckToken(),c=u?`#${ic}=${encodeURIComponent(u)}`:"";return`${sc(t)}?${ce(a).slice(1)}${c}`}function sc({config:t}){return t.emulator?Nn(t,rc):`https://${t.authDomain}/${nc}`}var ln="webStorageSupport",Sn=class{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=Ln,this._completeRedirectFn=Na,this._overrideRedirectResult=Ca}async _openPopup(e,n,r,i){B(this.eventManagers[e._key()]?.manager,"_initialize() not called before _openPopup()");let s=await Br(e,n,r,dn(),i);return ec(e,s,Mn())}async _openRedirect(e,n,r,i){await this._originValidation(e);let s=await Br(e,n,r,dn(),i);return la(s),new Promise(()=>{})}_initialize(e){let n=e._key();if(this.eventManagers[n]){let{manager:i,promise:s}=this.eventManagers[n];return i?Promise.resolve(i):(B(s,"If manager is not set, promise should be"),s)}let r=this.initAndGetManager(e);return this.eventManagers[n]={promise:r},r.catch(()=>{delete this.eventManagers[n]}),r}async initAndGetManager(e){let n=await Ka(e),r=new An(e);return n.register("authEvent",i=>(p(i?.authEvent,e,"invalid-auth-event"),{status:r.onEvent(i.authEvent)?"ACK":"ERROR"}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER),this.eventManagers[e._key()]={manager:r},this.iframes[e._key()]=n,r}_isIframeWebStorageSupported(e,n){this.iframes[e._key()].send(ln,{type:ln},i=>{let s=i?.[0]?.[ln];s!==void 0&&n(!!s),R(e,"internal-error")},gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(e){let n=e._key();return this.originValidationPromises[n]||(this.originValidationPromises[n]=xa(e)),this.originValidationPromises[n]}get _shouldInitProactively(){return ci()||ni()||Dn()}},Ai=Sn,vt=class{constructor(e){this.factorId=e}_process(e,n,r){switch(n.type){case"enroll":return this._finalizeEnroll(e,n.credential,r);case"signin":return this._finalizeSignIn(e,n.credential);default:return x("unexpected MultiFactorSessionType")}}},kn=class t extends vt{constructor(e){super("phone"),this.credential=e}static _fromCredential(e){return new t(e)}_finalizeEnroll(e,n,r){return ra(e,{idToken:n,displayName:r,phoneVerificationInfo:this.credential._makeVerificationRequest()})}_finalizeSignIn(e,n){return Ea(e,{mfaPendingCredential:n,phoneVerificationInfo:this.credential._makeVerificationRequest()})}},wt=class{constructor(){}static assertion(e){return kn._fromCredential(e)}};wt.FACTOR_ID="phone";var Tt=class{static assertionForEnrollment(e,n){return bt._fromSecret(e,n)}static assertionForSignIn(e,n){return bt._fromEnrollmentId(e,n)}static async generateSecret(e){let n=e;p(typeof n.user?.auth<"u","internal-error");let r=await ia(n.user.auth,{idToken:n.credential,totpEnrollmentInfo:{}});return At._fromStartTotpMfaEnrollmentResponse(r,n.user.auth)}};Tt.FACTOR_ID="totp";var bt=class t extends vt{constructor(e,n,r){super("totp"),this.otp=e,this.enrollmentId=n,this.secret=r}static _fromSecret(e,n){return new t(n,void 0,e)}static _fromEnrollmentId(e,n){return new t(n,e)}async _finalizeEnroll(e,n,r){return p(typeof this.secret<"u",e,"argument-error"),sa(e,{idToken:n,displayName:r,totpVerificationInfo:this.secret._makeTotpVerificationInfo(this.otp)})}async _finalizeSignIn(e,n){p(this.enrollmentId!==void 0&&this.otp!==void 0,e,"argument-error");let r={verificationCode:this.otp};return ya(e,{mfaPendingCredential:n,mfaEnrollmentId:this.enrollmentId,totpVerificationInfo:r})}},At=class t{constructor(e,n,r,i,s,o,a){this.sessionInfo=o,this.auth=a,this.secretKey=e,this.hashingAlgorithm=n,this.codeLength=r,this.codeIntervalSeconds=i,this.enrollmentCompletionDeadline=s}static _fromStartTotpMfaEnrollmentResponse(e,n){return new t(e.totpSessionInfo.sharedSecretKey,e.totpSessionInfo.hashingAlgorithm,e.totpSessionInfo.verificationCodeLength,e.totpSessionInfo.periodSec,new Date(e.totpSessionInfo.finalizeEnrollmentTime).toUTCString(),e.totpSessionInfo.sessionInfo,n)}_makeTotpVerificationInfo(e){return{sessionInfo:this.sessionInfo,verificationCode:e}}generateQrCodeUrl(e,n){let r=!1;return(Je(e)||Je(n))&&(r=!0),r&&(Je(e)&&(e=this.auth.currentUser?.email||"unknownuser"),Je(n)&&(n=this.auth.name)),`otpauth://totp/${n}:${e}?secret=${this.secretKey}&issuer=${n}&algorithm=${this.hashingAlgorithm}&digits=${this.codeLength}`}};function Je(t){return typeof t>"u"||t?.length===0}var $r="@firebase/auth",zr="1.11.0";var Cn=class{constructor(e){this.auth=e,this.internalListeners=new Map}getUid(){return this.assertAuthConfigured(),this.auth.currentUser?.uid||null}async getToken(e){return this.assertAuthConfigured(),await this.auth._initializationPromise,this.auth.currentUser?{accessToken:await this.auth.currentUser.getIdToken(e)}:null}addAuthTokenListener(e){if(this.assertAuthConfigured(),this.internalListeners.has(e))return;let n=this.auth.onIdTokenChanged(r=>{e(r?.stsTokenManager.accessToken||null)});this.internalListeners.set(e,n),this.updateProactiveRefresh()}removeAuthTokenListener(e){this.assertAuthConfigured();let n=this.internalListeners.get(e);n&&(this.internalListeners.delete(e),n(),this.updateProactiveRefresh())}assertAuthConfigured(){p(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}};function oc(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";case"WebExtension":return"web-extension";default:return}}function ac(t){he(new M("auth",(e,{options:n})=>{let r=e.getProvider("app").getImmediate(),i=e.getProvider("heartbeat"),s=e.getProvider("app-check-internal"),{apiKey:o,authDomain:a}=r.options;p(o&&!o.includes(":"),"invalid-api-key",{appName:r.name});let u={apiKey:o,authDomain:a,clientPlatform:t,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:ui(t)},c=new gn(r,i,s,u);return Ho(c,n),c},"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback((e,n,r)=>{e.getProvider("auth-internal").initialize()})),he(new M("auth-internal",e=>{let n=se(e.getProvider("auth").getImmediate());return(r=>new Cn(r))(n)},"PRIVATE").setInstantiationMode("EXPLICIT")),G($r,zr,oc(t)),G($r,zr,"esm2020")}var cc=300,uc=Bt("authIdTokenMaxAge")||cc,jr=null,lc=t=>async e=>{let n=e&&await e.getIdTokenResult(),r=n&&(new Date().getTime()-Date.parse(n.issuedAtTime))/1e3;if(r&&r>uc)return;let i=n?.token;jr!==i&&(jr=i,await fetch(t,{method:i?"POST":"DELETE",headers:i?{Authorization:`Bearer ${i}`}:{}}))};function xn(t=Ar()){let e=rn(t,"auth");if(e.isInitialized())return e.getImmediate();let n=hi(t,{popupRedirectResolver:Ai,persistence:[wi,Ii,Ln]}),r=Bt("authTokenSyncURL");if(r&&typeof isSecureContext=="boolean"&&isSecureContext){let s=new URL(r,location.origin);if(location.origin===s.origin){let o=lc(s.toString());gi(n,o,()=>o(n.currentUser)),mi(n,a=>o(a))}}let i=tr("auth");return i&&fi(n,`http://${i}`),n}function dc(){return document.getElementsByTagName("head")?.[0]??document}Mo({loadJS(t){return new Promise((e,n)=>{let r=document.createElement("script");r.setAttribute("src",t),r.onload=e,r.onerror=i=>{let s=O("internal-error");s.customData=i,n(s)},r.type="text/javascript",r.charset="UTF-8",dc().appendChild(r)})},gapiScript:"https://apis.google.com/js/api.js",recaptchaV2Script:"https://www.google.com/recaptcha/api.js",recaptchaEnterpriseScript:"https://www.google.com/recaptcha/enterprise.js?render="});ac("Browser");var Ot,I,Pi,hc,oe,Si,Ni,Oi,Di,Wn,Fn,Vn,fc,He={},Li=[],pc=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Dt=Array.isArray;function $(t,e){for(var n in e)t[n]=e[n];return t}function Bn(t){t&&t.parentNode&&t.parentNode.removeChild(t)}function _c(t,e,n){var r,i,s,o={};for(s in e)s=="key"?r=e[s]:s=="ref"?i=e[s]:o[s]=e[s];if(arguments.length>2&&(o.children=arguments.length>3?Ot.call(arguments,2):n),typeof t=="function"&&t.defaultProps!=null)for(s in t.defaultProps)o[s]===void 0&&(o[s]=t.defaultProps[s]);return Rt(t,o,r,i,null)}function Rt(t,e,n,r,i){var s={type:t,props:e,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Pi,__i:-1,__u:0};return i==null&&I.vnode!=null&&I.vnode(s),s}function ge(t){return t.children}function Pt(t,e){this.props=t,this.context=e}function me(t,e){if(e==null)return t.__?me(t.__,t.__i+1):null;for(var n;e<t.__k.length;e++)if((n=t.__k[e])!=null&&n.__e!=null)return n.__e;return typeof t.type=="function"?me(t):null}function Mi(t){var e,n;if((t=t.__)!=null&&t.__c!=null){for(t.__e=t.__c.base=null,e=0;e<t.__k.length;e++)if((n=t.__k[e])!=null&&n.__e!=null){t.__e=t.__c.base=n.__e;break}return Mi(t)}}function ki(t){(!t.__d&&(t.__d=!0)&&oe.push(t)&&!Nt.__r++||Si!=I.debounceRendering)&&((Si=I.debounceRendering)||Ni)(Nt)}function Nt(){for(var t,e,n,r,i,s,o,a=1;oe.length;)oe.length>a&&oe.sort(Oi),t=oe.shift(),a=oe.length,t.__d&&(n=void 0,i=(r=(e=t).__v).__e,s=[],o=[],e.__P&&((n=$({},r)).__v=r.__v+1,I.vnode&&I.vnode(n),$n(e.__P,n,r,e.__n,e.__P.namespaceURI,32&r.__u?[i]:null,s,i??me(r),!!(32&r.__u),o),n.__v=r.__v,n.__.__k[n.__i]=n,Fi(s,n,o),n.__e!=i&&Mi(n)));Nt.__r=0}function Ui(t,e,n,r,i,s,o,a,u,c,h){var l,d,f,g,A,y,_,m=r&&r.__k||Li,C=e.length;for(u=mc(n,e,m,u,C),l=0;l<C;l++)(f=n.__k[l])!=null&&(d=f.__i==-1?He:m[f.__i]||He,f.__i=l,y=$n(t,f,d,i,s,o,a,u,c,h),g=f.__e,f.ref&&d.ref!=f.ref&&(d.ref&&zn(d.ref,null,f),h.push(f.ref,f.__c||g,f)),A==null&&g!=null&&(A=g),(_=!!(4&f.__u))||d.__k===f.__k?u=xi(f,u,t,_):typeof f.type=="function"&&y!==void 0?u=y:g&&(u=g.nextSibling),f.__u&=-7);return n.__e=A,u}function mc(t,e,n,r,i){var s,o,a,u,c,h=n.length,l=h,d=0;for(t.__k=new Array(i),s=0;s<i;s++)(o=e[s])!=null&&typeof o!="boolean"&&typeof o!="function"?(u=s+d,(o=t.__k[s]=typeof o=="string"||typeof o=="number"||typeof o=="bigint"||o.constructor==String?Rt(null,o,null,null,null):Dt(o)?Rt(ge,{children:o},null,null,null):o.constructor==null&&o.__b>0?Rt(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=t,o.__b=t.__b+1,a=null,(c=o.__i=gc(o,n,u,l))!=-1&&(l--,(a=n[c])&&(a.__u|=2)),a==null||a.__v==null?(c==-1&&(i>h?d--:i<h&&d++),typeof o.type!="function"&&(o.__u|=4)):c!=u&&(c==u-1?d--:c==u+1?d++:(c>u?d--:d++,o.__u|=4))):t.__k[s]=null;if(l)for(s=0;s<h;s++)(a=n[s])!=null&&(2&a.__u)==0&&(a.__e==r&&(r=me(a)),Hi(a,a));return r}function xi(t,e,n,r){var i,s;if(typeof t.type=="function"){for(i=t.__k,s=0;i&&s<i.length;s++)i[s]&&(i[s].__=t,e=xi(i[s],e,n,r));return e}t.__e!=e&&(r&&(e&&t.type&&!e.parentNode&&(e=me(t)),n.insertBefore(t.__e,e||null)),e=t.__e);do e=e&&e.nextSibling;while(e!=null&&e.nodeType==8);return e}function gc(t,e,n,r){var i,s,o,a=t.key,u=t.type,c=e[n],h=c!=null&&(2&c.__u)==0;if(c===null&&t.key==null||h&&a==c.key&&u==c.type)return n;if(r>(h?1:0)){for(i=n-1,s=n+1;i>=0||s<e.length;)if((c=e[o=i>=0?i--:s++])!=null&&(2&c.__u)==0&&a==c.key&&u==c.type)return o}return-1}function Ci(t,e,n){e[0]=="-"?t.setProperty(e,n??""):t[e]=n==null?"":typeof n!="number"||pc.test(e)?n:n+"px"}function Ct(t,e,n,r,i){var s,o;e:if(e=="style")if(typeof n=="string")t.style.cssText=n;else{if(typeof r=="string"&&(t.style.cssText=r=""),r)for(e in r)n&&e in n||Ci(t.style,e,"");if(n)for(e in n)r&&n[e]==r[e]||Ci(t.style,e,n[e])}else if(e[0]=="o"&&e[1]=="n")s=e!=(e=e.replace(Di,"$1")),o=e.toLowerCase(),e=o in t||e=="onFocusOut"||e=="onFocusIn"?o.slice(2):e.slice(2),t.l||(t.l={}),t.l[e+s]=n,n?r?n.u=r.u:(n.u=Wn,t.addEventListener(e,s?Vn:Fn,s)):t.removeEventListener(e,s?Vn:Fn,s);else{if(i=="http://www.w3.org/2000/svg")e=e.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(e!="width"&&e!="height"&&e!="href"&&e!="list"&&e!="form"&&e!="tabIndex"&&e!="download"&&e!="rowSpan"&&e!="colSpan"&&e!="role"&&e!="popover"&&e in t)try{t[e]=n??"";break e}catch{}typeof n=="function"||(n==null||n===!1&&e[4]!="-"?t.removeAttribute(e):t.setAttribute(e,e=="popover"&&n==1?"":n))}}function Ri(t){return function(e){if(this.l){var n=this.l[e.type+t];if(e.t==null)e.t=Wn++;else if(e.t<n.u)return;return n(I.event?I.event(e):e)}}}function $n(t,e,n,r,i,s,o,a,u,c){var h,l,d,f,g,A,y,_,m,C,D,Be,Ie,Jn,$e,Ee,Mt,L=e.type;if(e.constructor!=null)return null;128&n.__u&&(u=!!(32&n.__u),s=[a=e.__e=n.__e]),(h=I.__b)&&h(e);e:if(typeof L=="function")try{if(_=e.props,m="prototype"in L&&L.prototype.render,C=(h=L.contextType)&&r[h.__c],D=h?C?C.props.value:h.__:r,n.__c?y=(l=e.__c=n.__c).__=l.__E:(m?e.__c=l=new L(_,D):(e.__c=l=new Pt(_,D),l.constructor=L,l.render=Ec),C&&C.sub(l),l.props=_,l.state||(l.state={}),l.context=D,l.__n=r,d=l.__d=!0,l.__h=[],l._sb=[]),m&&l.__s==null&&(l.__s=l.state),m&&L.getDerivedStateFromProps!=null&&(l.__s==l.state&&(l.__s=$({},l.__s)),$(l.__s,L.getDerivedStateFromProps(_,l.__s))),f=l.props,g=l.state,l.__v=e,d)m&&L.getDerivedStateFromProps==null&&l.componentWillMount!=null&&l.componentWillMount(),m&&l.componentDidMount!=null&&l.__h.push(l.componentDidMount);else{if(m&&L.getDerivedStateFromProps==null&&_!==f&&l.componentWillReceiveProps!=null&&l.componentWillReceiveProps(_,D),!l.__e&&l.shouldComponentUpdate!=null&&l.shouldComponentUpdate(_,l.__s,D)===!1||e.__v==n.__v){for(e.__v!=n.__v&&(l.props=_,l.state=l.__s,l.__d=!1),e.__e=n.__e,e.__k=n.__k,e.__k.some(function(ae){ae&&(ae.__=e)}),Be=0;Be<l._sb.length;Be++)l.__h.push(l._sb[Be]);l._sb=[],l.__h.length&&o.push(l);break e}l.componentWillUpdate!=null&&l.componentWillUpdate(_,l.__s,D),m&&l.componentDidUpdate!=null&&l.__h.push(function(){l.componentDidUpdate(f,g,A)})}if(l.context=D,l.props=_,l.__P=t,l.__e=!1,Ie=I.__r,Jn=0,m){for(l.state=l.__s,l.__d=!1,Ie&&Ie(e),h=l.render(l.props,l.state,l.context),$e=0;$e<l._sb.length;$e++)l.__h.push(l._sb[$e]);l._sb=[]}else do l.__d=!1,Ie&&Ie(e),h=l.render(l.props,l.state,l.context),l.state=l.__s;while(l.__d&&++Jn<25);l.state=l.__s,l.getChildContext!=null&&(r=$($({},r),l.getChildContext())),m&&!d&&l.getSnapshotBeforeUpdate!=null&&(A=l.getSnapshotBeforeUpdate(f,g)),Ee=h,h!=null&&h.type===ge&&h.key==null&&(Ee=Vi(h.props.children)),a=Ui(t,Dt(Ee)?Ee:[Ee],e,n,r,i,s,o,a,u,c),l.base=e.__e,e.__u&=-161,l.__h.length&&o.push(l),y&&(l.__E=l.__=null)}catch(ae){if(e.__v=null,u||s!=null)if(ae.then){for(e.__u|=u?160:128;a&&a.nodeType==8&&a.nextSibling;)a=a.nextSibling;s[s.indexOf(a)]=null,e.__e=a}else{for(Mt=s.length;Mt--;)Bn(s[Mt]);Hn(e)}else e.__e=n.__e,e.__k=n.__k,ae.then||Hn(e);I.__e(ae,e,n)}else s==null&&e.__v==n.__v?(e.__k=n.__k,e.__e=n.__e):a=e.__e=Ic(n.__e,e,n,r,i,s,o,u,c);return(h=I.diffed)&&h(e),128&e.__u?void 0:a}function Hn(t){t&&t.__c&&(t.__c.__e=!0),t&&t.__k&&t.__k.forEach(Hn)}function Fi(t,e,n){for(var r=0;r<n.length;r++)zn(n[r],n[++r],n[++r]);I.__c&&I.__c(e,t),t.some(function(i){try{t=i.__h,i.__h=[],t.some(function(s){s.call(i)})}catch(s){I.__e(s,i.__v)}})}function Vi(t){return typeof t!="object"||t==null||t.__b&&t.__b>0?t:Dt(t)?t.map(Vi):$({},t)}function Ic(t,e,n,r,i,s,o,a,u){var c,h,l,d,f,g,A,y=n.props,_=e.props,m=e.type;if(m=="svg"?i="http://www.w3.org/2000/svg":m=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),s!=null){for(c=0;c<s.length;c++)if((f=s[c])&&"setAttribute"in f==!!m&&(m?f.localName==m:f.nodeType==3)){t=f,s[c]=null;break}}if(t==null){if(m==null)return document.createTextNode(_);t=document.createElementNS(i,m,_.is&&_),a&&(I.__m&&I.__m(e,s),a=!1),s=null}if(m==null)y===_||a&&t.data==_||(t.data=_);else{if(s=s&&Ot.call(t.childNodes),y=n.props||He,!a&&s!=null)for(y={},c=0;c<t.attributes.length;c++)y[(f=t.attributes[c]).name]=f.value;for(c in y)if(f=y[c],c!="children"){if(c=="dangerouslySetInnerHTML")l=f;else if(!(c in _)){if(c=="value"&&"defaultValue"in _||c=="checked"&&"defaultChecked"in _)continue;Ct(t,c,null,f,i)}}for(c in _)f=_[c],c=="children"?d=f:c=="dangerouslySetInnerHTML"?h=f:c=="value"?g=f:c=="checked"?A=f:a&&typeof f!="function"||y[c]===f||Ct(t,c,f,y[c],i);if(h)a||l&&(h.__html==l.__html||h.__html==t.innerHTML)||(t.innerHTML=h.__html),e.__k=[];else if(l&&(t.innerHTML=""),Ui(e.type=="template"?t.content:t,Dt(d)?d:[d],e,n,r,m=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,o,s?s[0]:n.__k&&me(n,0),a,u),s!=null)for(c=s.length;c--;)Bn(s[c]);a||(c="value",m=="progress"&&g==null?t.removeAttribute("value"):g!=null&&(g!==t[c]||m=="progress"&&!g||m=="option"&&g!=y[c])&&Ct(t,c,g,y[c],i),c="checked",A!=null&&A!=t[c]&&Ct(t,c,A,y[c],i))}return t}function zn(t,e,n){try{if(typeof t=="function"){var r=typeof t.__u=="function";r&&t.__u(),r&&e==null||(t.__u=t(e))}else t.current=e}catch(i){I.__e(i,n)}}function Hi(t,e,n){var r,i;if(I.unmount&&I.unmount(t),(r=t.ref)&&(r.current&&r.current!=t.__e||zn(r,null,e)),(r=t.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(s){I.__e(s,e)}r.base=r.__P=null}if(r=t.__k)for(i=0;i<r.length;i++)r[i]&&Hi(r[i],e,n||typeof t.type!="function");n||Bn(t.__e),t.__c=t.__=t.__e=void 0}function Ec(t,e,n){return this.constructor(t,n)}function Wi(t,e,n){var r,i,s,o;e==document&&(e=document.documentElement),I.__&&I.__(t,e),i=(r=typeof n=="function")?null:n&&n.__k||e.__k,s=[],o=[],$n(e,t=(!r&&n||e).__k=_c(ge,null,[t]),i||He,He,e.namespaceURI,!r&&n?[n]:i?null:e.firstChild?Ot.call(e.childNodes):null,s,!r&&n?n:i?i.__e:e.firstChild,r,o),Fi(s,t,o)}Ot=Li.slice,I={__e:function(t,e,n,r){for(var i,s,o;e=e.__;)if((i=e.__c)&&!i.__)try{if((s=i.constructor)&&s.getDerivedStateFromError!=null&&(i.setState(s.getDerivedStateFromError(t)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(t,r||{}),o=i.__d),o)return i.__E=i}catch(a){t=a}throw t}},Pi=0,hc=function(t){return t!=null&&t.constructor==null},Pt.prototype.setState=function(t,e){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=$({},this.state),typeof t=="function"&&(t=t($({},n),this.props)),t&&$(n,t),t!=null&&this.__v&&(e&&this._sb.push(e),ki(this))},Pt.prototype.forceUpdate=function(t){this.__v&&(this.__e=!0,t&&this.__h.push(t),ki(this))},Pt.prototype.render=ge,oe=[],Ni=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Oi=function(t,e){return t.__v.__b-e.__v.__b},Nt.__r=0,Di=/(PointerCapture)$|Capture$/i,Wn=0,Fn=Ri(!1),Vn=Ri(!0),fc=0;var qn,v,jn,Bi,Gn=0,Yi=[],T=I,$i=T.__b,zi=T.__r,ji=T.diffed,qi=T.__c,Gi=T.unmount,Ki=T.__;function yc(t,e){T.__h&&T.__h(v,t,Gn||e),Gn=0;var n=v.__H||(v.__H={__:[],__h:[]});return t>=n.__.length&&n.__.push({}),n.__[t]}function Xi(t){return Gn=1,vc(Qi,t)}function vc(t,e,n){var r=yc(qn++,2);if(r.t=t,!r.__c&&(r.__=[n?n(e):Qi(void 0,e),function(a){var u=r.__N?r.__N[0]:r.__[0],c=r.t(u,a);u!==c&&(r.__N=[c,r.__[1]],r.__c.setState({}))}],r.__c=v,!v.__f)){var i=function(a,u,c){if(!r.__c.__H)return!0;var h=r.__c.__H.__.filter(function(d){return!!d.__c});if(h.every(function(d){return!d.__N}))return!s||s.call(this,a,u,c);var l=r.__c.props!==a;return h.forEach(function(d){if(d.__N){var f=d.__[0];d.__=d.__N,d.__N=void 0,f!==d.__[0]&&(l=!0)}}),s&&s.call(this,a,u,c)||l};v.__f=!0;var s=v.shouldComponentUpdate,o=v.componentWillUpdate;v.componentWillUpdate=function(a,u,c){if(this.__e){var h=s;s=void 0,i(a,u,c),s=h}o&&o.call(this,a,u,c)},v.shouldComponentUpdate=i}return r.__N||r.__}function wc(){for(var t;t=Yi.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(Lt),t.__H.__h.forEach(Kn),t.__H.__h=[]}catch(e){t.__H.__h=[],T.__e(e,t.__v)}}T.__b=function(t){v=null,$i&&$i(t)},T.__=function(t,e){t&&e.__k&&e.__k.__m&&(t.__m=e.__k.__m),Ki&&Ki(t,e)},T.__r=function(t){zi&&zi(t),qn=0;var e=(v=t.__c).__H;e&&(jn===v?(e.__h=[],v.__h=[],e.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(e.__h.forEach(Lt),e.__h.forEach(Kn),e.__h=[],qn=0)),jn=v},T.diffed=function(t){ji&&ji(t);var e=t.__c;e&&e.__H&&(e.__H.__h.length&&(Yi.push(e)!==1&&Bi===T.requestAnimationFrame||((Bi=T.requestAnimationFrame)||Tc)(wc)),e.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),jn=v=null},T.__c=function(t,e){e.some(function(n){try{n.__h.forEach(Lt),n.__h=n.__h.filter(function(r){return!r.__||Kn(r)})}catch(r){e.some(function(i){i.__h&&(i.__h=[])}),e=[],T.__e(r,n.__v)}}),qi&&qi(t,e)},T.unmount=function(t){Gi&&Gi(t);var e,n=t.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{Lt(r)}catch(i){e=i}}),n.__H=void 0,e&&T.__e(e,n.__v))};var Ji=typeof requestAnimationFrame=="function";function Tc(t){var e,n=function(){clearTimeout(r),Ji&&cancelAnimationFrame(e),setTimeout(t)},r=setTimeout(n,35);Ji&&(e=requestAnimationFrame(n))}function Lt(t){var e=v,n=t.__c;typeof n=="function"&&(t.__c=void 0,n()),v=e}function Kn(t){var e=v;t.__c=t.__(),v=e}function Qi(t,e){return typeof e=="function"?e(t):e}var bc=0,Tl=Array.isArray;function w(t,e,n,r,i,s){e||(e={});var o,a,u=e;if("ref"in u)for(a in u={},e)a=="ref"?o=e[a]:u[a]=e[a];var c={type:t,props:u,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--bc,__i:-1,__u:0,__source:i,__self:s};if(typeof t=="function"&&(o=t.defaultProps))for(a in o)u[a]===void 0&&(u[a]=o[a]);return I.vnode&&I.vnode(c),c}function We(){let[t,e]=Xi(""),n=window.__ROOT_CTX.name;function r(i){e(i)}return w("div",{className:"signin",children:[w("div",{className:"signin__headline",children:[n&&w("h1",{className:"signin__headline__title",children:n}),w("p",{className:"signin__headline__body",children:n?`Sign in to continue to ${n}`:"Sign in to continue"})]}),w(We.Button,{onError:r}),t&&w("p",{className:"signin__error",children:t})]})}We.Button=t=>{async function e(r){try{return await r.json()}catch(i){console.error(i)}return{}}async function n(){let r=new ne;r.addScope("profile"),r.addScope("email");let s=(await Un(window.firebase.auth,r)).user,o=await s.getIdToken(),a=await fetch("/cms/login",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({idToken:o})}),u=await e(a);if(a.status===401){let c=s?.email||"(no email)";u.reason?t.onError(`Login failed for: ${c}. Reason: ${u.reason}. If you believe this is a mistake, please contact a developer to help resolve the issue.`):t.onError(`Login failed for: ${c}. If you believe this is a mistake, please contact a developer to help resolve the issue.`);return}if(a.status!==200){console.error("login failed"),console.log(a.status,u),t.onError("An unknown error has occurred.");return}if(!u.success){console.error("login failed"),console.log(a.status,u),u.reason?t.onError(`Login failed. Reason: ${u.reason}`):t.onError("Login failed.");return}Ac()}return w("button",{className:"signin__button",onClick:n,children:[w("div",{className:"signin__button__icon",children:w(We.GLogo,{})}),w("div",{className:"signin__button__label",children:"Sign in with Google"})]})};We.GLogo=()=>w("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 48 48",children:w("g",{children:[w("path",{fill:"#EA4335",d:"M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"}),w("path",{fill:"#4285F4",d:"M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"}),w("path",{fill:"#FBBC05",d:"M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"}),w("path",{fill:"#34A853",d:"M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"}),w("path",{fill:"none",d:"M0 0h48v48H0z"})]})});function Ac(){let e=new URLSearchParams(window.location.search).get("continue");(!e||!e.startsWith("/")||e.startsWith("/cms/login"))&&(e="/cms"),window.location.replace(e)}var Zi=sn(window.__ROOT_CTX.firebaseConfig),Sc=xn(Zi);window.firebase={app:Zi,auth:Sc};var es=document.getElementById("root");es.innerHTML="";Wi(w(We,{}),es);})();
|