@entropic-bond/firebase 1.13.4 → 1.13.5
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/lib/auth/firebase-auth.d.ts +3 -2
- package/lib/cloud-functions/firebase-cloud-functions.d.ts +2 -1
- package/lib/cloud-functions/firebase-cloud-functions.spec.d.ts +1 -0
- package/lib/cloud-storage/firebase-cloud-storage.d.ts +2 -1
- package/lib/entropic-bond-firebase.js +4443 -4896
- package/lib/entropic-bond-firebase.js.map +1 -1
- package/lib/entropic-bond-firebase.umd.cjs +249 -264
- package/lib/entropic-bond-firebase.umd.cjs.map +1 -1
- package/lib/firebase-helper.d.ts +5 -4
- package/lib/mocks/test-user.d.ts +1 -0
- package/lib/store/firebase-datasource.d.ts +3 -2
- package/package.json +5 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(Ee,Gt){typeof exports=="object"&&typeof module<"u"?Gt(exports):typeof define=="function"&&define.amd?define(["exports"],Gt):(Ee=typeof globalThis<"u"?globalThis:Ee||self,Gt(Ee["entropic-bond-firebase"]={}))})(this,function(Ee){"use strict";/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2017 Google LLC
|
|
4
4
|
*
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
29
29
|
* See the License for the specific language governing permissions and
|
|
30
30
|
* limitations under the License.
|
|
31
|
-
*/const
|
|
31
|
+
*/const Gt=function(t){const e=[];let n=0;for(let r=0;r<t.length;r++){let s=t.charCodeAt(r);s<128?e[n++]=s:s<2048?(e[n++]=s>>6|192,e[n++]=s&63|128):(s&64512)===55296&&r+1<t.length&&(t.charCodeAt(r+1)&64512)===56320?(s=65536+((s&1023)<<10)+(t.charCodeAt(++r)&1023),e[n++]=s>>18|240,e[n++]=s>>12&63|128,e[n++]=s>>6&63|128,e[n++]=s&63|128):(e[n++]=s>>12|224,e[n++]=s>>6&63|128,e[n++]=s&63|128)}return e},If=function(t){const e=[];let n=0,r=0;for(;n<t.length;){const s=t[n++];if(s<128)e[r++]=String.fromCharCode(s);else if(s>191&&s<224){const i=t[n++];e[r++]=String.fromCharCode((s&31)<<6|i&63)}else if(s>239&&s<365){const i=t[n++],o=t[n++],a=t[n++],c=((s&7)<<18|(i&63)<<12|(o&63)<<6|a&63)-65536;e[r++]=String.fromCharCode(55296+(c>>10)),e[r++]=String.fromCharCode(56320+(c&1023))}else{const i=t[n++],o=t[n++];e[r++]=String.fromCharCode((s&15)<<12|(i&63)<<6|o&63)}}return e.join("")},Qa={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_();const n=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,r=[];for(let s=0;s<t.length;s+=3){const i=t[s],o=s+1<t.length,a=o?t[s+1]:0,c=s+2<t.length,u=c?t[s+2]:0,l=i>>2,h=(i&3)<<4|a>>4;let d=(a&15)<<2|u>>6,f=u&63;c||(f=64,o||(d=64)),r.push(n[l],n[h],n[d],n[f])}return r.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(Gt(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):If(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();const n=e?this.charToByteMapWebSafe_:this.charToByteMap_,r=[];for(let s=0;s<t.length;){const i=n[t.charAt(s++)],a=s<t.length?n[t.charAt(s)]:0;++s;const u=s<t.length?n[t.charAt(s)]:64;++s;const h=s<t.length?n[t.charAt(s)]:64;if(++s,i==null||a==null||u==null||h==null)throw new wf;const d=i<<2|a>>4;if(r.push(d),u!==64){const f=a<<4&240|u>>2;if(r.push(f),h!==64){const E=u<<6&192|h;r.push(E)}}}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)}}};class wf extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const Af=function(t){const e=Gt(t);return Qa.encodeByteArray(e,!0)},xr=function(t){return Af(t).replace(/\./g,"")},Ya=function(t){try{return Qa.decodeString(t,!0)}catch(e){console.error("base64Decode failed: ",e)}return null};/**
|
|
32
32
|
* @license
|
|
33
33
|
* Copyright 2022 Google LLC
|
|
34
34
|
*
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
44
44
|
* See the License for the specific language governing permissions and
|
|
45
45
|
* limitations under the License.
|
|
46
|
-
*/function
|
|
46
|
+
*/function Rf(){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.")}/**
|
|
47
47
|
* @license
|
|
48
48
|
* Copyright 2022 Google LLC
|
|
49
49
|
*
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
59
59
|
* See the License for the specific language governing permissions and
|
|
60
60
|
* limitations under the License.
|
|
61
|
-
*/const
|
|
61
|
+
*/const Pf=()=>Rf().__FIREBASE_DEFAULTS__,Sf=()=>{if(typeof process>"u"||typeof process.env>"u")return;const t=process.env.__FIREBASE_DEFAULTS__;if(t)return JSON.parse(t)},Cf=()=>{if(typeof document>"u")return;let t;try{t=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}const e=t&&Ya(t[1]);return e&&JSON.parse(e)},Fr=()=>{try{return Pf()||Sf()||Cf()}catch(t){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${t}`);return}},Xa=t=>{var e,n;return(n=(e=Fr())===null||e===void 0?void 0:e.emulatorHosts)===null||n===void 0?void 0:n[t]},yi=t=>{const e=Xa(t);if(!e)return;const n=e.lastIndexOf(":");if(n<=0||n+1===e.length)throw new Error(`Invalid host ${e} with no separate hostname and port!`);const r=parseInt(e.substring(n+1),10);return e[0]==="["?[e.substring(1,n-1),r]:[e.substring(0,n),r]},Ja=()=>{var t;return(t=Fr())===null||t===void 0?void 0:t.config},Za=t=>{var e;return(e=Fr())===null||e===void 0?void 0:e[`_${t}`]};/**
|
|
62
62
|
* @license
|
|
63
63
|
* Copyright 2017 Google LLC
|
|
64
64
|
*
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
74
74
|
* See the License for the specific language governing permissions and
|
|
75
75
|
* limitations under the License.
|
|
76
|
-
*/class
|
|
76
|
+
*/class bf{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))}}}/**
|
|
77
77
|
* @license
|
|
78
78
|
* Copyright 2021 Google LLC
|
|
79
79
|
*
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
89
89
|
* See the License for the specific language governing permissions and
|
|
90
90
|
* limitations under the License.
|
|
91
|
-
*/function
|
|
91
|
+
*/function ec(t,e){if(t.uid)throw new Error('The "uid" field is no longer supported by mockUserToken. Please use "sub" instead for Firebase Auth User ID.');const n={alg:"none",type:"JWT"},r=e||"demo-project",s=t.iat||0,i=t.sub||t.user_id;if(!i)throw new Error("mockUserToken must contain 'sub' or 'user_id' field!");const o=Object.assign({iss:`https://securetoken.google.com/${r}`,aud:r,iat:s,exp:s+3600,auth_time:s,sub:i,user_id:i,firebase:{sign_in_provider:"custom",identities:{}}},t);return[xr(JSON.stringify(n)),xr(JSON.stringify(o)),""].join(".")}/**
|
|
92
92
|
* @license
|
|
93
93
|
* Copyright 2017 Google LLC
|
|
94
94
|
*
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
104
104
|
* See the License for the specific language governing permissions and
|
|
105
105
|
* limitations under the License.
|
|
106
|
-
*/function
|
|
106
|
+
*/function ie(){return typeof navigator<"u"&&typeof navigator.userAgent=="string"?navigator.userAgent:""}function kf(){return typeof window<"u"&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(ie())}function Nf(){var t;const e=(t=Fr())===null||t===void 0?void 0:t.forceEnvironment;if(e==="node")return!0;if(e==="browser")return!1;try{return Object.prototype.toString.call(global.process)==="[object process]"}catch{return!1}}function Df(){const t=typeof chrome=="object"?chrome.runtime:typeof browser=="object"?browser.runtime:void 0;return typeof t=="object"&&t.id!==void 0}function Of(){return typeof navigator=="object"&&navigator.product==="ReactNative"}function Vf(){const t=ie();return t.indexOf("MSIE ")>=0||t.indexOf("Trident/")>=0}function Lf(){try{return typeof indexedDB=="object"}catch{return!1}}function Mf(){return new Promise((t,e)=>{try{let n=!0;const r="validate-browser-context-for-indexeddb-analytics-module",s=self.indexedDB.open(r);s.onsuccess=()=>{s.result.close(),n||self.indexedDB.deleteDatabase(r),t(!0)},s.onupgradeneeded=()=>{n=!1},s.onerror=()=>{var i;e(((i=s.error)===null||i===void 0?void 0:i.message)||"")}}catch(n){e(n)}})}/**
|
|
107
107
|
* @license
|
|
108
108
|
* Copyright 2017 Google LLC
|
|
109
109
|
*
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
119
119
|
* See the License for the specific language governing permissions and
|
|
120
120
|
* limitations under the License.
|
|
121
|
-
*/const
|
|
121
|
+
*/const Uf="FirebaseError";class be extends Error{constructor(e,n,r){super(n),this.code=e,this.customData=r,this.name=Uf,Object.setPrototypeOf(this,be.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,kn.prototype.create)}}class kn{constructor(e,n,r){this.service=e,this.serviceName=n,this.errors=r}create(e,...n){const r=n[0]||{},s=`${this.service}/${e}`,i=this.errors[e],o=i?xf(i,r):"Error",a=`${this.serviceName}: ${o} (${s}).`;return new be(s,a,r)}}function xf(t,e){return t.replace(Ff,(n,r)=>{const s=e[r];return s!=null?String(s):`<${r}?>`})}const Ff=/\{\$([^}]+)}/g;function Bf(t){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}function Br(t,e){if(t===e)return!0;const n=Object.keys(t),r=Object.keys(e);for(const s of n){if(!r.includes(s))return!1;const i=t[s],o=e[s];if(tc(i)&&tc(o)){if(!Br(i,o))return!1}else if(i!==o)return!1}for(const s of r)if(!n.includes(s))return!1;return!0}function tc(t){return t!==null&&typeof t=="object"}/**
|
|
122
122
|
* @license
|
|
123
123
|
* Copyright 2017 Google LLC
|
|
124
124
|
*
|
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
134
134
|
* See the License for the specific language governing permissions and
|
|
135
135
|
* limitations under the License.
|
|
136
|
-
*/function
|
|
136
|
+
*/function Nn(t){const e=[];for(const[n,r]of Object.entries(t))Array.isArray(r)?r.forEach(s=>{e.push(encodeURIComponent(n)+"="+encodeURIComponent(s))}):e.push(encodeURIComponent(n)+"="+encodeURIComponent(r));return e.length?"&"+e.join("&"):""}function Dn(t){const e={};return t.replace(/^\?/,"").split("&").forEach(r=>{if(r){const[s,i]=r.split("=");e[decodeURIComponent(s)]=decodeURIComponent(i)}}),e}function On(t){const e=t.indexOf("?");if(!e)return"";const n=t.indexOf("#",e);return t.substring(e,n>0?n:void 0)}function qf(t,e){const n=new $f(t,e);return n.subscribe.bind(n)}class $f{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 s;if(e===void 0&&n===void 0&&r===void 0)throw new Error("Missing Observer.");jf(e,["next","error","complete"])?s=e:s={next:e,error:n,complete:r},s.next===void 0&&(s.next=Ei),s.error===void 0&&(s.error=Ei),s.complete===void 0&&(s.complete=Ei);const i=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then(()=>{try{this.finalError?s.error(this.finalError):s.complete()}catch{}}),this.observers.push(s),i}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 jf(t,e){if(typeof t!="object"||t===null)return!1;for(const n of e)if(n in t&&typeof t[n]=="function")return!0;return!1}function Ei(){}/**
|
|
137
137
|
* @license
|
|
138
138
|
* Copyright 2021 Google LLC
|
|
139
139
|
*
|
|
@@ -148,7 +148,7 @@
|
|
|
148
148
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
149
149
|
* See the License for the specific language governing permissions and
|
|
150
150
|
* limitations under the License.
|
|
151
|
-
*/function
|
|
151
|
+
*/function M(t){return t&&t._delegate?t._delegate:t}class Ke{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}}/**
|
|
152
152
|
* @license
|
|
153
153
|
* Copyright 2019 Google LLC
|
|
154
154
|
*
|
|
@@ -178,7 +178,7 @@
|
|
|
178
178
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
179
179
|
* See the License for the specific language governing permissions and
|
|
180
180
|
* limitations under the License.
|
|
181
|
-
*/class
|
|
181
|
+
*/class zf{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){const n=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(n)){const r=new bf;if(this.instancesDeferred.set(n,r),this.isInitialized(n)||this.shouldAutoInitialize())try{const s=this.getOrInitializeService({instanceIdentifier:n});s&&r.resolve(s)}catch{}}return this.instancesDeferred.get(n).promise}getImmediate(e){var n;const r=this.normalizeInstanceIdentifier(e==null?void 0:e.identifier),s=(n=e==null?void 0:e.optional)!==null&&n!==void 0?n:!1;if(this.isInitialized(r)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:r})}catch(i){if(s)return null;throw i}else{if(s)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(Wf(e))try{this.getOrInitializeService({instanceIdentifier:Pt})}catch{}for(const[n,r]of this.instancesDeferred.entries()){const s=this.normalizeInstanceIdentifier(n);try{const i=this.getOrInitializeService({instanceIdentifier:s});r.resolve(i)}catch{}}}}clearInstance(e=Pt){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}async delete(){const 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=Pt){return this.instances.has(e)}getOptions(e=Pt){return this.instancesOptions.get(e)||{}}initialize(e={}){const{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`);const s=this.getOrInitializeService({instanceIdentifier:r,options:n});for(const[i,o]of this.instancesDeferred.entries()){const a=this.normalizeInstanceIdentifier(i);r===a&&o.resolve(s)}return s}onInit(e,n){var r;const s=this.normalizeInstanceIdentifier(n),i=(r=this.onInitCallbacks.get(s))!==null&&r!==void 0?r:new Set;i.add(e),this.onInitCallbacks.set(s,i);const o=this.instances.get(s);return o&&e(o,s),()=>{i.delete(e)}}invokeOnInitCallbacks(e,n){const r=this.onInitCallbacks.get(n);if(r)for(const s of r)try{s(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:Hf(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=Pt){return this.component?this.component.multipleInstances?e:Pt:e}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!=="EXPLICIT"}}function Hf(t){return t===Pt?void 0:t}function Wf(t){return t.instantiationMode==="EAGER"}/**
|
|
182
182
|
* @license
|
|
183
183
|
* Copyright 2019 Google LLC
|
|
184
184
|
*
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
194
194
|
* See the License for the specific language governing permissions and
|
|
195
195
|
* limitations under the License.
|
|
196
|
-
*/class
|
|
196
|
+
*/class Gf{constructor(e){this.name=e,this.providers=new Map}addComponent(e){const 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);const n=new zf(e,this);return this.providers.set(e,n),n}getProviders(){return Array.from(this.providers.values())}}/**
|
|
197
197
|
* @license
|
|
198
198
|
* Copyright 2017 Google LLC
|
|
199
199
|
*
|
|
@@ -208,7 +208,7 @@
|
|
|
208
208
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
209
209
|
* See the License for the specific language governing permissions and
|
|
210
210
|
* limitations under the License.
|
|
211
|
-
*/var
|
|
211
|
+
*/var D;(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"})(D||(D={}));const Kf={debug:D.DEBUG,verbose:D.VERBOSE,info:D.INFO,warn:D.WARN,error:D.ERROR,silent:D.SILENT},Qf=D.INFO,Yf={[D.DEBUG]:"log",[D.VERBOSE]:"log",[D.INFO]:"info",[D.WARN]:"warn",[D.ERROR]:"error"},Xf=(t,e,...n)=>{if(e<t.logLevel)return;const r=new Date().toISOString(),s=Yf[e];if(s)console[s](`[${r}] ${t.name}:`,...n);else throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`)};class vi{constructor(e){this.name=e,this._logLevel=Qf,this._logHandler=Xf,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in D))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel=typeof e=="string"?Kf[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,D.DEBUG,...e),this._logHandler(this,D.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,D.VERBOSE,...e),this._logHandler(this,D.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,D.INFO,...e),this._logHandler(this,D.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,D.WARN,...e),this._logHandler(this,D.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,D.ERROR,...e),this._logHandler(this,D.ERROR,...e)}}const Jf=(t,e)=>e.some(n=>t instanceof n);let nc,rc;function Zf(){return nc||(nc=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function ep(){return rc||(rc=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const sc=new WeakMap,Ti=new WeakMap,ic=new WeakMap,Ii=new WeakMap,wi=new WeakMap;function tp(t){const e=new Promise((n,r)=>{const s=()=>{t.removeEventListener("success",i),t.removeEventListener("error",o)},i=()=>{n(ct(t.result)),s()},o=()=>{r(t.error),s()};t.addEventListener("success",i),t.addEventListener("error",o)});return e.then(n=>{n instanceof IDBCursor&&sc.set(n,t)}).catch(()=>{}),wi.set(e,t),e}function np(t){if(Ti.has(t))return;const e=new Promise((n,r)=>{const s=()=>{t.removeEventListener("complete",i),t.removeEventListener("error",o),t.removeEventListener("abort",o)},i=()=>{n(),s()},o=()=>{r(t.error||new DOMException("AbortError","AbortError")),s()};t.addEventListener("complete",i),t.addEventListener("error",o),t.addEventListener("abort",o)});Ti.set(t,e)}let Ai={get(t,e,n){if(t instanceof IDBTransaction){if(e==="done")return Ti.get(t);if(e==="objectStoreNames")return t.objectStoreNames||ic.get(t);if(e==="store")return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return ct(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 rp(t){Ai=t(Ai)}function sp(t){return t===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...n){const r=t.call(Ri(this),e,...n);return ic.set(r,e.sort?e.sort():[e]),ct(r)}:ep().includes(t)?function(...e){return t.apply(Ri(this),e),ct(sc.get(this))}:function(...e){return ct(t.apply(Ri(this),e))}}function ip(t){return typeof t=="function"?sp(t):(t instanceof IDBTransaction&&np(t),Jf(t,Zf())?new Proxy(t,Ai):t)}function ct(t){if(t instanceof IDBRequest)return tp(t);if(Ii.has(t))return Ii.get(t);const e=ip(t);return e!==t&&(Ii.set(t,e),wi.set(e,t)),e}const Ri=t=>wi.get(t);function op(t,e,{blocked:n,upgrade:r,blocking:s,terminated:i}={}){const o=indexedDB.open(t,e),a=ct(o);return r&&o.addEventListener("upgradeneeded",c=>{r(ct(o.result),c.oldVersion,c.newVersion,ct(o.transaction),c)}),n&&o.addEventListener("blocked",c=>n(c.oldVersion,c.newVersion,c)),a.then(c=>{i&&c.addEventListener("close",()=>i()),s&&c.addEventListener("versionchange",u=>s(u.oldVersion,u.newVersion,u))}).catch(()=>{}),a}const ap=["get","getKey","getAll","getAllKeys","count"],cp=["put","add","delete","clear"],Pi=new Map;function oc(t,e){if(!(t instanceof IDBDatabase&&!(e in t)&&typeof e=="string"))return;if(Pi.get(e))return Pi.get(e);const n=e.replace(/FromIndex$/,""),r=e!==n,s=cp.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!(s||ap.includes(n)))return;const i=async function(o,...a){const c=this.transaction(o,s?"readwrite":"readonly");let u=c.store;return r&&(u=u.index(a.shift())),(await Promise.all([u[n](...a),s&&c.done]))[0]};return Pi.set(e,i),i}rp(t=>({...t,get:(e,n,r)=>oc(e,n)||t.get(e,n,r),has:(e,n)=>!!oc(e,n)||t.has(e,n)}));/**
|
|
212
212
|
* @license
|
|
213
213
|
* Copyright 2019 Google LLC
|
|
214
214
|
*
|
|
@@ -223,7 +223,7 @@
|
|
|
223
223
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
224
224
|
* See the License for the specific language governing permissions and
|
|
225
225
|
* limitations under the License.
|
|
226
|
-
*/class
|
|
226
|
+
*/class up{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(n=>{if(lp(n)){const r=n.getImmediate();return`${r.library}/${r.version}`}else return null}).filter(n=>n).join(" ")}}function lp(t){const e=t.getComponent();return(e==null?void 0:e.type)==="VERSION"}const Si="@firebase/app",ac="0.9.23";/**
|
|
227
227
|
* @license
|
|
228
228
|
* Copyright 2019 Google LLC
|
|
229
229
|
*
|
|
@@ -238,7 +238,7 @@
|
|
|
238
238
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
239
239
|
* See the License for the specific language governing permissions and
|
|
240
240
|
* limitations under the License.
|
|
241
|
-
*/const St=new
|
|
241
|
+
*/const St=new vi("@firebase/app"),hp="@firebase/app-compat",dp="@firebase/analytics-compat",fp="@firebase/analytics",pp="@firebase/app-check-compat",mp="@firebase/app-check",gp="@firebase/auth",_p="@firebase/auth-compat",yp="@firebase/database",Ep="@firebase/database-compat",vp="@firebase/functions",Tp="@firebase/functions-compat",Ip="@firebase/installations",wp="@firebase/installations-compat",Ap="@firebase/messaging",Rp="@firebase/messaging-compat",Pp="@firebase/performance",Sp="@firebase/performance-compat",Cp="@firebase/remote-config",bp="@firebase/remote-config-compat",kp="@firebase/storage",Np="@firebase/storage-compat",Dp="@firebase/firestore",Op="@firebase/firestore-compat",Vp="firebase",Lp="10.6.0";/**
|
|
242
242
|
* @license
|
|
243
243
|
* Copyright 2019 Google LLC
|
|
244
244
|
*
|
|
@@ -253,7 +253,7 @@
|
|
|
253
253
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
254
254
|
* See the License for the specific language governing permissions and
|
|
255
255
|
* limitations under the License.
|
|
256
|
-
*/const
|
|
256
|
+
*/const Ci="[DEFAULT]",Mp={[Si]:"fire-core",[hp]:"fire-core-compat",[fp]:"fire-analytics",[dp]:"fire-analytics-compat",[mp]:"fire-app-check",[pp]:"fire-app-check-compat",[gp]:"fire-auth",[_p]:"fire-auth-compat",[yp]:"fire-rtdb",[Ep]:"fire-rtdb-compat",[vp]:"fire-fn",[Tp]:"fire-fn-compat",[Ip]:"fire-iid",[wp]:"fire-iid-compat",[Ap]:"fire-fcm",[Rp]:"fire-fcm-compat",[Pp]:"fire-perf",[Sp]:"fire-perf-compat",[Cp]:"fire-rc",[bp]:"fire-rc-compat",[kp]:"fire-gcs",[Np]:"fire-gcs-compat",[Dp]:"fire-fst",[Op]:"fire-fst-compat","fire-js":"fire-js",[Vp]:"fire-js-all"};/**
|
|
257
257
|
* @license
|
|
258
258
|
* Copyright 2019 Google LLC
|
|
259
259
|
*
|
|
@@ -268,7 +268,7 @@
|
|
|
268
268
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
269
269
|
* See the License for the specific language governing permissions and
|
|
270
270
|
* limitations under the License.
|
|
271
|
-
*/const qr=new Map,
|
|
271
|
+
*/const qr=new Map,bi=new Map;function Up(t,e){try{t.container.addComponent(e)}catch(n){St.debug(`Component ${e.name} failed to register with FirebaseApp ${t.name}`,n)}}function ut(t){const e=t.name;if(bi.has(e))return St.debug(`There were multiple attempts to register component ${e}.`),!1;bi.set(e,t);for(const n of qr.values())Up(n,t);return!0}function Vn(t,e){const n=t.container.getProvider("heartbeat").getImmediate({optional:!0});return n&&n.triggerHeartbeat(),t.container.getProvider(e)}/**
|
|
272
272
|
* @license
|
|
273
273
|
* Copyright 2019 Google LLC
|
|
274
274
|
*
|
|
@@ -283,7 +283,7 @@
|
|
|
283
283
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
284
284
|
* See the License for the specific language governing permissions and
|
|
285
285
|
* limitations under the License.
|
|
286
|
-
*/const
|
|
286
|
+
*/const xp={"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}."},lt=new kn("app","Firebase",xp);/**
|
|
287
287
|
* @license
|
|
288
288
|
* Copyright 2019 Google LLC
|
|
289
289
|
*
|
|
@@ -298,7 +298,7 @@
|
|
|
298
298
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
299
299
|
* See the License for the specific language governing permissions and
|
|
300
300
|
* limitations under the License.
|
|
301
|
-
*/class
|
|
301
|
+
*/class Fp{constructor(e,n,r){this._isDeleted=!1,this._options=Object.assign({},e),this._config=Object.assign({},n),this._name=n.name,this._automaticDataCollectionEnabled=n.automaticDataCollectionEnabled,this._container=r,this.container.addComponent(new Ke("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 lt.create("app-deleted",{appName:this._name})}}/**
|
|
302
302
|
* @license
|
|
303
303
|
* Copyright 2019 Google LLC
|
|
304
304
|
*
|
|
@@ -313,7 +313,7 @@
|
|
|
313
313
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
314
314
|
* See the License for the specific language governing permissions and
|
|
315
315
|
* limitations under the License.
|
|
316
|
-
*/const
|
|
316
|
+
*/const Ct=Lp;function cc(t,e={}){let n=t;typeof e!="object"&&(e={name:e});const r=Object.assign({name:Ci,automaticDataCollectionEnabled:!1},e),s=r.name;if(typeof s!="string"||!s)throw lt.create("bad-app-name",{appName:String(s)});if(n||(n=Ja()),!n)throw lt.create("no-options");const i=qr.get(s);if(i){if(Br(n,i.options)&&Br(r,i.config))return i;throw lt.create("duplicate-app",{appName:s})}const o=new Gf(s);for(const c of bi.values())o.addComponent(c);const a=new Fp(n,r,o);return qr.set(s,a),a}function $r(t=Ci){const e=qr.get(t);if(!e&&t===Ci&&Ja())return cc();if(!e)throw lt.create("no-app",{appName:t});return e}function Ae(t,e,n){var r;let s=(r=Mp[t])!==null&&r!==void 0?r:t;n&&(s+=`-${n}`);const i=s.match(/\s|\//),o=e.match(/\s|\//);if(i||o){const a=[`Unable to register library "${s}" with version "${e}":`];i&&a.push(`library name "${s}" contains illegal characters (whitespace or "/")`),i&&o&&a.push("and"),o&&a.push(`version name "${e}" contains illegal characters (whitespace or "/")`),St.warn(a.join(" "));return}ut(new Ke(`${s}-version`,()=>({library:s,version:e}),"VERSION"))}/**
|
|
317
317
|
* @license
|
|
318
318
|
* Copyright 2021 Google LLC
|
|
319
319
|
*
|
|
@@ -328,7 +328,7 @@
|
|
|
328
328
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
329
329
|
* See the License for the specific language governing permissions and
|
|
330
330
|
* limitations under the License.
|
|
331
|
-
*/const
|
|
331
|
+
*/const Bp="firebase-heartbeat-database",qp=1,Ln="firebase-heartbeat-store";let ki=null;function uc(){return ki||(ki=op(Bp,qp,{upgrade:(t,e)=>{switch(e){case 0:t.createObjectStore(Ln)}}}).catch(t=>{throw lt.create("idb-open",{originalErrorMessage:t.message})})),ki}async function $p(t){try{return await(await uc()).transaction(Ln).objectStore(Ln).get(hc(t))}catch(e){if(e instanceof be)St.warn(e.message);else{const n=lt.create("idb-get",{originalErrorMessage:e==null?void 0:e.message});St.warn(n.message)}}}async function lc(t,e){try{const r=(await uc()).transaction(Ln,"readwrite");await r.objectStore(Ln).put(e,hc(t)),await r.done}catch(n){if(n instanceof be)St.warn(n.message);else{const r=lt.create("idb-set",{originalErrorMessage:n==null?void 0:n.message});St.warn(r.message)}}}function hc(t){return`${t.name}!${t.options.appId}`}/**
|
|
332
332
|
* @license
|
|
333
333
|
* Copyright 2021 Google LLC
|
|
334
334
|
*
|
|
@@ -343,7 +343,7 @@
|
|
|
343
343
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
344
344
|
* See the License for the specific language governing permissions and
|
|
345
345
|
* limitations under the License.
|
|
346
|
-
*/const
|
|
346
|
+
*/const jp=1024,zp=30*24*60*60*1e3;class Hp{constructor(e){this.container=e,this._heartbeatsCache=null;const n=this.container.getProvider("app").getImmediate();this._storage=new Gp(n),this._heartbeatsCachePromise=this._storage.read().then(r=>(this._heartbeatsCache=r,r))}async triggerHeartbeat(){var e;const r=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),s=dc();if(((e=this._heartbeatsCache)===null||e===void 0?void 0:e.heartbeats)==null&&(this._heartbeatsCache=await this._heartbeatsCachePromise),!(this._heartbeatsCache.lastSentHeartbeatDate===s||this._heartbeatsCache.heartbeats.some(i=>i.date===s)))return this._heartbeatsCache.heartbeats.push({date:s,agent:r}),this._heartbeatsCache.heartbeats=this._heartbeatsCache.heartbeats.filter(i=>{const o=new Date(i.date).valueOf();return Date.now()-o<=zp}),this._storage.overwrite(this._heartbeatsCache)}async getHeartbeatsHeader(){var e;if(this._heartbeatsCache===null&&await this._heartbeatsCachePromise,((e=this._heartbeatsCache)===null||e===void 0?void 0:e.heartbeats)==null||this._heartbeatsCache.heartbeats.length===0)return"";const n=dc(),{heartbeatsToSend:r,unsentEntries:s}=Wp(this._heartbeatsCache.heartbeats),i=xr(JSON.stringify({version:2,heartbeats:r}));return this._heartbeatsCache.lastSentHeartbeatDate=n,s.length>0?(this._heartbeatsCache.heartbeats=s,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),i}}function dc(){return new Date().toISOString().substring(0,10)}function Wp(t,e=jp){const n=[];let r=t.slice();for(const s of t){const i=n.find(o=>o.agent===s.agent);if(i){if(i.dates.push(s.date),fc(n)>e){i.dates.pop();break}}else if(n.push({agent:s.agent,dates:[s.date]}),fc(n)>e){n.pop();break}r=r.slice(1)}return{heartbeatsToSend:n,unsentEntries:r}}class Gp{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return Lf()?Mf().then(()=>!0).catch(()=>!1):!1}async read(){return await this._canUseIndexedDBPromise?await $p(this.app)||{heartbeats:[]}:{heartbeats:[]}}async overwrite(e){var n;if(await this._canUseIndexedDBPromise){const s=await this.read();return lc(this.app,{lastSentHeartbeatDate:(n=e.lastSentHeartbeatDate)!==null&&n!==void 0?n:s.lastSentHeartbeatDate,heartbeats:e.heartbeats})}else return}async add(e){var n;if(await this._canUseIndexedDBPromise){const s=await this.read();return lc(this.app,{lastSentHeartbeatDate:(n=e.lastSentHeartbeatDate)!==null&&n!==void 0?n:s.lastSentHeartbeatDate,heartbeats:[...s.heartbeats,...e.heartbeats]})}else return}}function fc(t){return xr(JSON.stringify({version:2,heartbeats:t})).length}/**
|
|
347
347
|
* @license
|
|
348
348
|
* Copyright 2019 Google LLC
|
|
349
349
|
*
|
|
@@ -358,15 +358,15 @@
|
|
|
358
358
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
359
359
|
* See the License for the specific language governing permissions and
|
|
360
360
|
* limitations under the License.
|
|
361
|
-
*/function rm(t){ut(new Ye("platform-logger",e=>new yp(e),"PRIVATE")),ut(new Ye("heartbeat",e=>new em(e),"PRIVATE")),Ae(ki,fc,t),Ae(ki,fc,"esm2017"),Ae("fire-js","")}rm("");var sm=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},y,Vi=Vi||{},R=sm||self;function Hr(t){var e=typeof t;return e=e!="object"?e:t?Array.isArray(t)?"array":e:"null",e=="array"||e=="object"&&typeof t.length=="number"}function Un(t){var e=typeof t;return e=="object"&&t!=null||e=="function"}function im(t){return Object.prototype.hasOwnProperty.call(t,Li)&&t[Li]||(t[Li]=++om)}var Li="closure_uid_"+(1e9*Math.random()>>>0),om=0;function am(t,e,n){return t.call.apply(t.bind,arguments)}function cm(t,e,n){if(!t)throw Error();if(2<arguments.length){var r=Array.prototype.slice.call(arguments,2);return function(){var s=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(s,r),t.apply(e,s)}}return function(){return t.apply(e,arguments)}}function ae(t,e,n){return Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?ae=am:ae=cm,ae.apply(null,arguments)}function Wr(t,e){var n=Array.prototype.slice.call(arguments,1);return function(){var r=n.slice();return r.push.apply(r,arguments),t.apply(this,r)}}function X(t,e){function n(){}n.prototype=e.prototype,t.$=e.prototype,t.prototype=new n,t.prototype.constructor=t,t.ac=function(r,s,i){for(var o=Array(arguments.length-2),a=2;a<arguments.length;a++)o[a-2]=arguments[a];return e.prototype[s].apply(r,o)}}function ht(){this.s=this.s,this.o=this.o}var um=0;ht.prototype.s=!1,ht.prototype.sa=function(){!this.s&&(this.s=!0,this.N(),um!=0)&&im(this)},ht.prototype.N=function(){if(this.o)for(;this.o.length;)this.o.shift()()};const Ec=Array.prototype.indexOf?function(t,e){return Array.prototype.indexOf.call(t,e,void 0)}:function(t,e){if(typeof t=="string")return typeof e!="string"||e.length!=1?-1:t.indexOf(e,0);for(let n=0;n<t.length;n++)if(n in t&&t[n]===e)return n;return-1};function Mi(t){const e=t.length;if(0<e){const n=Array(e);for(let r=0;r<e;r++)n[r]=t[r];return n}return[]}function Tc(t,e){for(let n=1;n<arguments.length;n++){const r=arguments[n];if(Hr(r)){const s=t.length||0,i=r.length||0;t.length=s+i;for(let o=0;o<i;o++)t[s+o]=r[o]}else t.push(r)}}function ce(t,e){this.type=t,this.g=this.target=e,this.defaultPrevented=!1}ce.prototype.h=function(){this.defaultPrevented=!0};var lm=function(){if(!R.addEventListener||!Object.defineProperty)return!1;var t=!1,e=Object.defineProperty({},"passive",{get:function(){t=!0}});try{const n=()=>{};R.addEventListener("test",n,e),R.removeEventListener("test",n,e)}catch{}return t}();function Fn(t){return/^[\s\xa0]*$/.test(t)}function Gr(){var t=R.navigator;return t&&(t=t.userAgent)?t:""}function xe(t){return Gr().indexOf(t)!=-1}function xi(t){return xi[" "](t),t}xi[" "]=function(){};function hm(t,e){var n=rg;return Object.prototype.hasOwnProperty.call(n,t)?n[t]:n[t]=e(t)}var dm=xe("Opera"),Yt=xe("Trident")||xe("MSIE"),wc=xe("Edge"),Ui=wc||Yt,Ic=xe("Gecko")&&!(Gr().toLowerCase().indexOf("webkit")!=-1&&!xe("Edge"))&&!(xe("Trident")||xe("MSIE"))&&!xe("Edge"),fm=Gr().toLowerCase().indexOf("webkit")!=-1&&!xe("Edge");function Ac(){var t=R.document;return t?t.documentMode:void 0}var Fi;e:{var Bi="",ji=function(){var t=Gr();if(Ic)return/rv:([^\);]+)(\)|;)/.exec(t);if(wc)return/Edge\/([\d\.]+)/.exec(t);if(Yt)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(t);if(fm)return/WebKit\/(\S+)/.exec(t);if(dm)return/(?:Version)[ \/]?(\S+)/.exec(t)}();if(ji&&(Bi=ji?ji[1]:""),Yt){var $i=Ac();if($i!=null&&$i>parseFloat(Bi)){Fi=String($i);break e}}Fi=Bi}var qi;if(R.document&&Yt){var Rc=Ac();qi=Rc||parseInt(Fi,10)||void 0}else qi=void 0;var pm=qi;function Bn(t,e){if(ce.call(this,t?t.type:""),this.relatedTarget=this.g=this.target=null,this.button=this.screenY=this.screenX=this.clientY=this.clientX=0,this.key="",this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1,this.state=null,this.pointerId=0,this.pointerType="",this.i=null,t){var n=this.type=t.type,r=t.changedTouches&&t.changedTouches.length?t.changedTouches[0]:null;if(this.target=t.target||t.srcElement,this.g=e,e=t.relatedTarget){if(Ic){e:{try{xi(e.nodeName);var s=!0;break e}catch{}s=!1}s||(e=null)}}else n=="mouseover"?e=t.fromElement:n=="mouseout"&&(e=t.toElement);this.relatedTarget=e,r?(this.clientX=r.clientX!==void 0?r.clientX:r.pageX,this.clientY=r.clientY!==void 0?r.clientY:r.pageY,this.screenX=r.screenX||0,this.screenY=r.screenY||0):(this.clientX=t.clientX!==void 0?t.clientX:t.pageX,this.clientY=t.clientY!==void 0?t.clientY:t.pageY,this.screenX=t.screenX||0,this.screenY=t.screenY||0),this.button=t.button,this.key=t.key||"",this.ctrlKey=t.ctrlKey,this.altKey=t.altKey,this.shiftKey=t.shiftKey,this.metaKey=t.metaKey,this.pointerId=t.pointerId||0,this.pointerType=typeof t.pointerType=="string"?t.pointerType:mm[t.pointerType]||"",this.state=t.state,this.i=t,t.defaultPrevented&&Bn.$.h.call(this)}}X(Bn,ce);var mm={2:"touch",3:"pen",4:"mouse"};Bn.prototype.h=function(){Bn.$.h.call(this);var t=this.i;t.preventDefault?t.preventDefault():t.returnValue=!1};var jn="closure_listenable_"+(1e6*Math.random()|0),gm=0;function _m(t,e,n,r,s){this.listener=t,this.proxy=null,this.src=e,this.type=n,this.capture=!!r,this.la=s,this.key=++gm,this.fa=this.ia=!1}function Kr(t){t.fa=!0,t.listener=null,t.proxy=null,t.src=null,t.la=null}function zi(t,e,n){for(const r in t)e.call(n,t[r],r,t)}function ym(t,e){for(const n in t)e.call(void 0,t[n],n,t)}function Pc(t){const e={};for(const n in t)e[n]=t[n];return e}const Sc="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function bc(t,e){let n,r;for(let s=1;s<arguments.length;s++){r=arguments[s];for(n in r)t[n]=r[n];for(let i=0;i<Sc.length;i++)n=Sc[i],Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}}function Qr(t){this.src=t,this.g={},this.h=0}Qr.prototype.add=function(t,e,n,r,s){var i=t.toString();t=this.g[i],t||(t=this.g[i]=[],this.h++);var o=Wi(t,e,r,s);return-1<o?(e=t[o],n||(e.ia=!1)):(e=new _m(e,this.src,i,!!r,s),e.ia=n,t.push(e)),e};function Hi(t,e){var n=e.type;if(n in t.g){var r=t.g[n],s=Ec(r,e),i;(i=0<=s)&&Array.prototype.splice.call(r,s,1),i&&(Kr(e),t.g[n].length==0&&(delete t.g[n],t.h--))}}function Wi(t,e,n,r){for(var s=0;s<t.length;++s){var i=t[s];if(!i.fa&&i.listener==e&&i.capture==!!n&&i.la==r)return s}return-1}var Gi="closure_lm_"+(1e6*Math.random()|0),Ki={};function Cc(t,e,n,r,s){if(r&&r.once)return Dc(t,e,n,r,s);if(Array.isArray(e)){for(var i=0;i<e.length;i++)Cc(t,e[i],n,r,s);return null}return n=Ji(n),t&&t[jn]?t.O(e,n,Un(r)?!!r.capture:!!r,s):kc(t,e,n,!1,r,s)}function kc(t,e,n,r,s,i){if(!e)throw Error("Invalid event type");var o=Un(s)?!!s.capture:!!s,a=Yi(t);if(a||(t[Gi]=a=new Qr(t)),n=a.add(e,n,r,o,i),n.proxy)return n;if(r=vm(),n.proxy=r,r.src=t,r.listener=n,t.addEventListener)lm||(s=o),s===void 0&&(s=!1),t.addEventListener(e.toString(),r,s);else if(t.attachEvent)t.attachEvent(Oc(e.toString()),r);else if(t.addListener&&t.removeListener)t.addListener(r);else throw Error("addEventListener and attachEvent are unavailable.");return n}function vm(){function t(n){return e.call(t.src,t.listener,n)}const e=Em;return t}function Dc(t,e,n,r,s){if(Array.isArray(e)){for(var i=0;i<e.length;i++)Dc(t,e[i],n,r,s);return null}return n=Ji(n),t&&t[jn]?t.P(e,n,Un(r)?!!r.capture:!!r,s):kc(t,e,n,!0,r,s)}function Nc(t,e,n,r,s){if(Array.isArray(e))for(var i=0;i<e.length;i++)Nc(t,e[i],n,r,s);else r=Un(r)?!!r.capture:!!r,n=Ji(n),t&&t[jn]?(t=t.i,e=String(e).toString(),e in t.g&&(i=t.g[e],n=Wi(i,n,r,s),-1<n&&(Kr(i[n]),Array.prototype.splice.call(i,n,1),i.length==0&&(delete t.g[e],t.h--)))):t&&(t=Yi(t))&&(e=t.g[e.toString()],t=-1,e&&(t=Wi(e,n,r,s)),(n=-1<t?e[t]:null)&&Qi(n))}function Qi(t){if(typeof t!="number"&&t&&!t.fa){var e=t.src;if(e&&e[jn])Hi(e.i,t);else{var n=t.type,r=t.proxy;e.removeEventListener?e.removeEventListener(n,r,t.capture):e.detachEvent?e.detachEvent(Oc(n),r):e.addListener&&e.removeListener&&e.removeListener(r),(n=Yi(e))?(Hi(n,t),n.h==0&&(n.src=null,e[Gi]=null)):Kr(t)}}}function Oc(t){return t in Ki?Ki[t]:Ki[t]="on"+t}function Em(t,e){if(t.fa)t=!0;else{e=new Bn(e,this);var n=t.listener,r=t.la||t.src;t.ia&&Qi(t),t=n.call(r,e)}return t}function Yi(t){return t=t[Gi],t instanceof Qr?t:null}var Xi="__closure_events_fn_"+(1e9*Math.random()>>>0);function Ji(t){return typeof t=="function"?t:(t[Xi]||(t[Xi]=function(e){return t.handleEvent(e)}),t[Xi])}function J(){ht.call(this),this.i=new Qr(this),this.S=this,this.J=null}X(J,ht),J.prototype[jn]=!0,J.prototype.removeEventListener=function(t,e,n,r){Nc(this,t,e,n,r)};function ee(t,e){var n,r=t.J;if(r)for(n=[];r;r=r.J)n.push(r);if(t=t.S,r=e.type||e,typeof e=="string")e=new ce(e,t);else if(e instanceof ce)e.target=e.target||t;else{var s=e;e=new ce(r,t),bc(e,s)}if(s=!0,n)for(var i=n.length-1;0<=i;i--){var o=e.g=n[i];s=Yr(o,r,!0,e)&&s}if(o=e.g=t,s=Yr(o,r,!0,e)&&s,s=Yr(o,r,!1,e)&&s,n)for(i=0;i<n.length;i++)o=e.g=n[i],s=Yr(o,r,!1,e)&&s}J.prototype.N=function(){if(J.$.N.call(this),this.i){var t=this.i,e;for(e in t.g){for(var n=t.g[e],r=0;r<n.length;r++)Kr(n[r]);delete t.g[e],t.h--}}this.J=null},J.prototype.O=function(t,e,n,r){return this.i.add(String(t),e,!1,n,r)},J.prototype.P=function(t,e,n,r){return this.i.add(String(t),e,!0,n,r)};function Yr(t,e,n,r){if(e=t.i.g[String(e)],!e)return!0;e=e.concat();for(var s=!0,i=0;i<e.length;++i){var o=e[i];if(o&&!o.fa&&o.capture==n){var a=o.listener,c=o.la||o.src;o.ia&&Hi(t.i,o),s=a.call(c,r)!==!1&&s}}return s&&!r.defaultPrevented}var Zi=R.JSON.stringify;class Tm{constructor(e,n){this.i=e,this.j=n,this.h=0,this.g=null}get(){let e;return 0<this.h?(this.h--,e=this.g,this.g=e.next,e.next=null):e=this.i(),e}}function wm(){var t=eo;let e=null;return t.g&&(e=t.g,t.g=t.g.next,t.g||(t.h=null),e.next=null),e}class Im{constructor(){this.h=this.g=null}add(e,n){const r=Vc.get();r.set(e,n),this.h?this.h.next=r:this.g=r,this.h=r}}var Vc=new Tm(()=>new Am,t=>t.reset());class Am{constructor(){this.next=this.g=this.h=null}set(e,n){this.h=e,this.g=n,this.next=null}reset(){this.next=this.g=this.h=null}}function Rm(t){var e=1;t=t.split(":");const n=[];for(;0<e&&t.length;)n.push(t.shift()),e--;return t.length&&n.push(t.join(":")),n}function Pm(t){R.setTimeout(()=>{throw t},0)}let $n,qn=!1,eo=new Im,Lc=()=>{const t=R.Promise.resolve(void 0);$n=()=>{t.then(Sm)}};var Sm=()=>{for(var t;t=wm();){try{t.h.call(t.g)}catch(n){Pm(n)}var e=Vc;e.j(t),100>e.h&&(e.h++,t.next=e.g,e.g=t)}qn=!1};function Xr(t,e){J.call(this),this.h=t||1,this.g=e||R,this.j=ae(this.qb,this),this.l=Date.now()}X(Xr,J),y=Xr.prototype,y.ga=!1,y.T=null,y.qb=function(){if(this.ga){var t=Date.now()-this.l;0<t&&t<.8*this.h?this.T=this.g.setTimeout(this.j,this.h-t):(this.T&&(this.g.clearTimeout(this.T),this.T=null),ee(this,"tick"),this.ga&&(to(this),this.start()))}},y.start=function(){this.ga=!0,this.T||(this.T=this.g.setTimeout(this.j,this.h),this.l=Date.now())};function to(t){t.ga=!1,t.T&&(t.g.clearTimeout(t.T),t.T=null)}y.N=function(){Xr.$.N.call(this),to(this),delete this.g};function no(t,e,n){if(typeof t=="function")n&&(t=ae(t,n));else if(t&&typeof t.handleEvent=="function")t=ae(t.handleEvent,t);else throw Error("Invalid listener argument");return 2147483647<Number(e)?-1:R.setTimeout(t,e||0)}function Mc(t){t.g=no(()=>{t.g=null,t.i&&(t.i=!1,Mc(t))},t.j);const e=t.h;t.h=null,t.m.apply(null,e)}class bm extends ht{constructor(e,n){super(),this.m=e,this.j=n,this.h=null,this.i=!1,this.g=null}l(e){this.h=arguments,this.g?this.i=!0:Mc(this)}N(){super.N(),this.g&&(R.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function zn(t){ht.call(this),this.h=t,this.g={}}X(zn,ht);var xc=[];function Uc(t,e,n,r){Array.isArray(n)||(n&&(xc[0]=n.toString()),n=xc);for(var s=0;s<n.length;s++){var i=Cc(e,n[s],r||t.handleEvent,!1,t.h||t);if(!i)break;t.g[i.key]=i}}function Fc(t){zi(t.g,function(e,n){this.g.hasOwnProperty(n)&&Qi(e)},t),t.g={}}zn.prototype.N=function(){zn.$.N.call(this),Fc(this)},zn.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented")};function Jr(){this.g=!0}Jr.prototype.Ea=function(){this.g=!1};function Cm(t,e,n,r,s,i){t.info(function(){if(t.g)if(i)for(var o="",a=i.split("&"),c=0;c<a.length;c++){var u=a[c].split("=");if(1<u.length){var l=u[0];u=u[1];var h=l.split("_");o=2<=h.length&&h[1]=="type"?o+(l+"="+u+"&"):o+(l+"=redacted&")}}else o=null;else o=i;return"XMLHTTP REQ ("+r+") [attempt "+s+"]: "+e+`
|
|
361
|
+
*/function Kp(t){ut(new Ke("platform-logger",e=>new up(e),"PRIVATE")),ut(new Ke("heartbeat",e=>new Hp(e),"PRIVATE")),Ae(Si,ac,t),Ae(Si,ac,"esm2017"),Ae("fire-js","")}Kp("");var Qp=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},y,Ni=Ni||{},R=Qp||self;function jr(t){var e=typeof t;return e=e!="object"?e:t?Array.isArray(t)?"array":e:"null",e=="array"||e=="object"&&typeof t.length=="number"}function Mn(t){var e=typeof t;return e=="object"&&t!=null||e=="function"}function Yp(t){return Object.prototype.hasOwnProperty.call(t,Di)&&t[Di]||(t[Di]=++Xp)}var Di="closure_uid_"+(1e9*Math.random()>>>0),Xp=0;function Jp(t,e,n){return t.call.apply(t.bind,arguments)}function Zp(t,e,n){if(!t)throw Error();if(2<arguments.length){var r=Array.prototype.slice.call(arguments,2);return function(){var s=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(s,r),t.apply(e,s)}}return function(){return t.apply(e,arguments)}}function oe(t,e,n){return Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?oe=Jp:oe=Zp,oe.apply(null,arguments)}function zr(t,e){var n=Array.prototype.slice.call(arguments,1);return function(){var r=n.slice();return r.push.apply(r,arguments),t.apply(this,r)}}function Y(t,e){function n(){}n.prototype=e.prototype,t.$=e.prototype,t.prototype=new n,t.prototype.constructor=t,t.ac=function(r,s,i){for(var o=Array(arguments.length-2),a=2;a<arguments.length;a++)o[a-2]=arguments[a];return e.prototype[s].apply(r,o)}}function ht(){this.s=this.s,this.o=this.o}var em=0;ht.prototype.s=!1,ht.prototype.sa=function(){!this.s&&(this.s=!0,this.N(),em!=0)&&Yp(this)},ht.prototype.N=function(){if(this.o)for(;this.o.length;)this.o.shift()()};const pc=Array.prototype.indexOf?function(t,e){return Array.prototype.indexOf.call(t,e,void 0)}:function(t,e){if(typeof t=="string")return typeof e!="string"||e.length!=1?-1:t.indexOf(e,0);for(let n=0;n<t.length;n++)if(n in t&&t[n]===e)return n;return-1};function Oi(t){const e=t.length;if(0<e){const n=Array(e);for(let r=0;r<e;r++)n[r]=t[r];return n}return[]}function mc(t,e){for(let n=1;n<arguments.length;n++){const r=arguments[n];if(jr(r)){const s=t.length||0,i=r.length||0;t.length=s+i;for(let o=0;o<i;o++)t[s+o]=r[o]}else t.push(r)}}function ae(t,e){this.type=t,this.g=this.target=e,this.defaultPrevented=!1}ae.prototype.h=function(){this.defaultPrevented=!0};var tm=function(){if(!R.addEventListener||!Object.defineProperty)return!1;var t=!1,e=Object.defineProperty({},"passive",{get:function(){t=!0}});try{R.addEventListener("test",()=>{},e),R.removeEventListener("test",()=>{},e)}catch{}return t}();function Un(t){return/^[\s\xa0]*$/.test(t)}function Hr(){var t=R.navigator;return t&&(t=t.userAgent)?t:""}function Le(t){return Hr().indexOf(t)!=-1}function Vi(t){return Vi[" "](t),t}Vi[" "]=function(){};function nm(t,e){var n=Km;return Object.prototype.hasOwnProperty.call(n,t)?n[t]:n[t]=e(t)}var rm=Le("Opera"),Kt=Le("Trident")||Le("MSIE"),gc=Le("Edge"),Li=gc||Kt,_c=Le("Gecko")&&!(Hr().toLowerCase().indexOf("webkit")!=-1&&!Le("Edge"))&&!(Le("Trident")||Le("MSIE"))&&!Le("Edge"),sm=Hr().toLowerCase().indexOf("webkit")!=-1&&!Le("Edge");function yc(){var t=R.document;return t?t.documentMode:void 0}var Mi;e:{var Ui="",xi=function(){var t=Hr();if(_c)return/rv:([^\);]+)(\)|;)/.exec(t);if(gc)return/Edge\/([\d\.]+)/.exec(t);if(Kt)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(t);if(sm)return/WebKit\/(\S+)/.exec(t);if(rm)return/(?:Version)[ \/]?(\S+)/.exec(t)}();if(xi&&(Ui=xi?xi[1]:""),Kt){var Fi=yc();if(Fi!=null&&Fi>parseFloat(Ui)){Mi=String(Fi);break e}}Mi=Ui}var Bi;if(R.document&&Kt){var Ec=yc();Bi=Ec||parseInt(Mi,10)||void 0}else Bi=void 0;var im=Bi;function xn(t,e){if(ae.call(this,t?t.type:""),this.relatedTarget=this.g=this.target=null,this.button=this.screenY=this.screenX=this.clientY=this.clientX=0,this.key="",this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1,this.state=null,this.pointerId=0,this.pointerType="",this.i=null,t){var n=this.type=t.type,r=t.changedTouches&&t.changedTouches.length?t.changedTouches[0]:null;if(this.target=t.target||t.srcElement,this.g=e,e=t.relatedTarget){if(_c){e:{try{Vi(e.nodeName);var s=!0;break e}catch{}s=!1}s||(e=null)}}else n=="mouseover"?e=t.fromElement:n=="mouseout"&&(e=t.toElement);this.relatedTarget=e,r?(this.clientX=r.clientX!==void 0?r.clientX:r.pageX,this.clientY=r.clientY!==void 0?r.clientY:r.pageY,this.screenX=r.screenX||0,this.screenY=r.screenY||0):(this.clientX=t.clientX!==void 0?t.clientX:t.pageX,this.clientY=t.clientY!==void 0?t.clientY:t.pageY,this.screenX=t.screenX||0,this.screenY=t.screenY||0),this.button=t.button,this.key=t.key||"",this.ctrlKey=t.ctrlKey,this.altKey=t.altKey,this.shiftKey=t.shiftKey,this.metaKey=t.metaKey,this.pointerId=t.pointerId||0,this.pointerType=typeof t.pointerType=="string"?t.pointerType:om[t.pointerType]||"",this.state=t.state,this.i=t,t.defaultPrevented&&xn.$.h.call(this)}}Y(xn,ae);var om={2:"touch",3:"pen",4:"mouse"};xn.prototype.h=function(){xn.$.h.call(this);var t=this.i;t.preventDefault?t.preventDefault():t.returnValue=!1};var Fn="closure_listenable_"+(1e6*Math.random()|0),am=0;function cm(t,e,n,r,s){this.listener=t,this.proxy=null,this.src=e,this.type=n,this.capture=!!r,this.la=s,this.key=++am,this.fa=this.ia=!1}function Wr(t){t.fa=!0,t.listener=null,t.proxy=null,t.src=null,t.la=null}function qi(t,e,n){for(const r in t)e.call(n,t[r],r,t)}function um(t,e){for(const n in t)e.call(void 0,t[n],n,t)}function vc(t){const e={};for(const n in t)e[n]=t[n];return e}const Tc="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function Ic(t,e){let n,r;for(let s=1;s<arguments.length;s++){r=arguments[s];for(n in r)t[n]=r[n];for(let i=0;i<Tc.length;i++)n=Tc[i],Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}}function Gr(t){this.src=t,this.g={},this.h=0}Gr.prototype.add=function(t,e,n,r,s){var i=t.toString();t=this.g[i],t||(t=this.g[i]=[],this.h++);var o=ji(t,e,r,s);return-1<o?(e=t[o],n||(e.ia=!1)):(e=new cm(e,this.src,i,!!r,s),e.ia=n,t.push(e)),e};function $i(t,e){var n=e.type;if(n in t.g){var r=t.g[n],s=pc(r,e),i;(i=0<=s)&&Array.prototype.splice.call(r,s,1),i&&(Wr(e),t.g[n].length==0&&(delete t.g[n],t.h--))}}function ji(t,e,n,r){for(var s=0;s<t.length;++s){var i=t[s];if(!i.fa&&i.listener==e&&i.capture==!!n&&i.la==r)return s}return-1}var zi="closure_lm_"+(1e6*Math.random()|0),Hi={};function wc(t,e,n,r,s){if(r&&r.once)return Rc(t,e,n,r,s);if(Array.isArray(e)){for(var i=0;i<e.length;i++)wc(t,e[i],n,r,s);return null}return n=Qi(n),t&&t[Fn]?t.O(e,n,Mn(r)?!!r.capture:!!r,s):Ac(t,e,n,!1,r,s)}function Ac(t,e,n,r,s,i){if(!e)throw Error("Invalid event type");var o=Mn(s)?!!s.capture:!!s,a=Gi(t);if(a||(t[zi]=a=new Gr(t)),n=a.add(e,n,r,o,i),n.proxy)return n;if(r=lm(),n.proxy=r,r.src=t,r.listener=n,t.addEventListener)tm||(s=o),s===void 0&&(s=!1),t.addEventListener(e.toString(),r,s);else if(t.attachEvent)t.attachEvent(Sc(e.toString()),r);else if(t.addListener&&t.removeListener)t.addListener(r);else throw Error("addEventListener and attachEvent are unavailable.");return n}function lm(){function t(n){return e.call(t.src,t.listener,n)}const e=hm;return t}function Rc(t,e,n,r,s){if(Array.isArray(e)){for(var i=0;i<e.length;i++)Rc(t,e[i],n,r,s);return null}return n=Qi(n),t&&t[Fn]?t.P(e,n,Mn(r)?!!r.capture:!!r,s):Ac(t,e,n,!0,r,s)}function Pc(t,e,n,r,s){if(Array.isArray(e))for(var i=0;i<e.length;i++)Pc(t,e[i],n,r,s);else r=Mn(r)?!!r.capture:!!r,n=Qi(n),t&&t[Fn]?(t=t.i,e=String(e).toString(),e in t.g&&(i=t.g[e],n=ji(i,n,r,s),-1<n&&(Wr(i[n]),Array.prototype.splice.call(i,n,1),i.length==0&&(delete t.g[e],t.h--)))):t&&(t=Gi(t))&&(e=t.g[e.toString()],t=-1,e&&(t=ji(e,n,r,s)),(n=-1<t?e[t]:null)&&Wi(n))}function Wi(t){if(typeof t!="number"&&t&&!t.fa){var e=t.src;if(e&&e[Fn])$i(e.i,t);else{var n=t.type,r=t.proxy;e.removeEventListener?e.removeEventListener(n,r,t.capture):e.detachEvent?e.detachEvent(Sc(n),r):e.addListener&&e.removeListener&&e.removeListener(r),(n=Gi(e))?($i(n,t),n.h==0&&(n.src=null,e[zi]=null)):Wr(t)}}}function Sc(t){return t in Hi?Hi[t]:Hi[t]="on"+t}function hm(t,e){if(t.fa)t=!0;else{e=new xn(e,this);var n=t.listener,r=t.la||t.src;t.ia&&Wi(t),t=n.call(r,e)}return t}function Gi(t){return t=t[zi],t instanceof Gr?t:null}var Ki="__closure_events_fn_"+(1e9*Math.random()>>>0);function Qi(t){return typeof t=="function"?t:(t[Ki]||(t[Ki]=function(e){return t.handleEvent(e)}),t[Ki])}function X(){ht.call(this),this.i=new Gr(this),this.S=this,this.J=null}Y(X,ht),X.prototype[Fn]=!0,X.prototype.removeEventListener=function(t,e,n,r){Pc(this,t,e,n,r)};function Z(t,e){var n,r=t.J;if(r)for(n=[];r;r=r.J)n.push(r);if(t=t.S,r=e.type||e,typeof e=="string")e=new ae(e,t);else if(e instanceof ae)e.target=e.target||t;else{var s=e;e=new ae(r,t),Ic(e,s)}if(s=!0,n)for(var i=n.length-1;0<=i;i--){var o=e.g=n[i];s=Kr(o,r,!0,e)&&s}if(o=e.g=t,s=Kr(o,r,!0,e)&&s,s=Kr(o,r,!1,e)&&s,n)for(i=0;i<n.length;i++)o=e.g=n[i],s=Kr(o,r,!1,e)&&s}X.prototype.N=function(){if(X.$.N.call(this),this.i){var t=this.i,e;for(e in t.g){for(var n=t.g[e],r=0;r<n.length;r++)Wr(n[r]);delete t.g[e],t.h--}}this.J=null},X.prototype.O=function(t,e,n,r){return this.i.add(String(t),e,!1,n,r)},X.prototype.P=function(t,e,n,r){return this.i.add(String(t),e,!0,n,r)};function Kr(t,e,n,r){if(e=t.i.g[String(e)],!e)return!0;e=e.concat();for(var s=!0,i=0;i<e.length;++i){var o=e[i];if(o&&!o.fa&&o.capture==n){var a=o.listener,c=o.la||o.src;o.ia&&$i(t.i,o),s=a.call(c,r)!==!1&&s}}return s&&!r.defaultPrevented}var Yi=R.JSON.stringify;class dm{constructor(e,n){this.i=e,this.j=n,this.h=0,this.g=null}get(){let e;return 0<this.h?(this.h--,e=this.g,this.g=e.next,e.next=null):e=this.i(),e}}function fm(){var t=Xi;let e=null;return t.g&&(e=t.g,t.g=t.g.next,t.g||(t.h=null),e.next=null),e}class pm{constructor(){this.h=this.g=null}add(e,n){const r=Cc.get();r.set(e,n),this.h?this.h.next=r:this.g=r,this.h=r}}var Cc=new dm(()=>new mm,t=>t.reset());class mm{constructor(){this.next=this.g=this.h=null}set(e,n){this.h=e,this.g=n,this.next=null}reset(){this.next=this.g=this.h=null}}function gm(t){var e=1;t=t.split(":");const n=[];for(;0<e&&t.length;)n.push(t.shift()),e--;return t.length&&n.push(t.join(":")),n}function _m(t){R.setTimeout(()=>{throw t},0)}let Bn,qn=!1,Xi=new pm,bc=()=>{const t=R.Promise.resolve(void 0);Bn=()=>{t.then(ym)}};var ym=()=>{for(var t;t=fm();){try{t.h.call(t.g)}catch(n){_m(n)}var e=Cc;e.j(t),100>e.h&&(e.h++,t.next=e.g,e.g=t)}qn=!1};function Qr(t,e){X.call(this),this.h=t||1,this.g=e||R,this.j=oe(this.qb,this),this.l=Date.now()}Y(Qr,X),y=Qr.prototype,y.ga=!1,y.T=null,y.qb=function(){if(this.ga){var t=Date.now()-this.l;0<t&&t<.8*this.h?this.T=this.g.setTimeout(this.j,this.h-t):(this.T&&(this.g.clearTimeout(this.T),this.T=null),Z(this,"tick"),this.ga&&(Ji(this),this.start()))}},y.start=function(){this.ga=!0,this.T||(this.T=this.g.setTimeout(this.j,this.h),this.l=Date.now())};function Ji(t){t.ga=!1,t.T&&(t.g.clearTimeout(t.T),t.T=null)}y.N=function(){Qr.$.N.call(this),Ji(this),delete this.g};function Zi(t,e,n){if(typeof t=="function")n&&(t=oe(t,n));else if(t&&typeof t.handleEvent=="function")t=oe(t.handleEvent,t);else throw Error("Invalid listener argument");return 2147483647<Number(e)?-1:R.setTimeout(t,e||0)}function kc(t){t.g=Zi(()=>{t.g=null,t.i&&(t.i=!1,kc(t))},t.j);const e=t.h;t.h=null,t.m.apply(null,e)}class Em extends ht{constructor(e,n){super(),this.m=e,this.j=n,this.h=null,this.i=!1,this.g=null}l(e){this.h=arguments,this.g?this.i=!0:kc(this)}N(){super.N(),this.g&&(R.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function $n(t){ht.call(this),this.h=t,this.g={}}Y($n,ht);var Nc=[];function Dc(t,e,n,r){Array.isArray(n)||(n&&(Nc[0]=n.toString()),n=Nc);for(var s=0;s<n.length;s++){var i=wc(e,n[s],r||t.handleEvent,!1,t.h||t);if(!i)break;t.g[i.key]=i}}function Oc(t){qi(t.g,function(e,n){this.g.hasOwnProperty(n)&&Wi(e)},t),t.g={}}$n.prototype.N=function(){$n.$.N.call(this),Oc(this)},$n.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented")};function Yr(){this.g=!0}Yr.prototype.Ea=function(){this.g=!1};function vm(t,e,n,r,s,i){t.info(function(){if(t.g)if(i)for(var o="",a=i.split("&"),c=0;c<a.length;c++){var u=a[c].split("=");if(1<u.length){var l=u[0];u=u[1];var h=l.split("_");o=2<=h.length&&h[1]=="type"?o+(l+"="+u+"&"):o+(l+"=redacted&")}}else o=null;else o=i;return"XMLHTTP REQ ("+r+") [attempt "+s+"]: "+e+`
|
|
362
362
|
`+n+`
|
|
363
|
-
`+o})}function
|
|
363
|
+
`+o})}function Tm(t,e,n,r,s,i,o){t.info(function(){return"XMLHTTP RESP ("+r+") [ attempt "+s+"]: "+e+`
|
|
364
364
|
`+n+`
|
|
365
|
-
`+i+" "+o})}function
|
|
366
|
-
`,n);return r==-1?ao:(n=Number(e.substring(n,r)),isNaN(n)?Kc:(r+=1,r+n>e.length?ao:(e=e.slice(r,r+n),t.o=r+n,e)))}y.cancel=function(){this.J=!0,kt(this)};function Qn(t){t.Y=Date.now()+t.P,Jc(t,t.P)}function Jc(t,e){if(t.C!=null)throw Error("WatchDog timer not null");t.C=Wn(ae(t.lb,t),e)}function ns(t){t.C&&(R.clearTimeout(t.C),t.C=null)}y.lb=function(){this.C=null;const t=Date.now();0<=t-this.Y?(Dm(this.j,this.B),this.L!=2&&(Hn(),fe(17)),kt(this),this.s=2,Yn(this)):Jc(this,this.Y-t)};function Yn(t){t.l.H==0||t.J||Ru(t.l,t)}function kt(t){ns(t);var e=t.M;e&&typeof e.sa=="function"&&e.sa(),t.M=null,to(t.V),Fc(t.U),t.g&&(e=t.g,t.g=null,e.abort(),e.sa())}function uo(t,e){try{var n=t.l;if(n.H!=0&&(n.g==t||lo(n.i,t))){if(!t.K&&lo(n.i,t)&&n.H==3){try{var r=n.Ja.g.parse(e)}catch{r=null}if(Array.isArray(r)&&r.length==3){var s=r;if(s[0]==0){e:if(!n.u){if(n.g)if(n.g.G+3e3<t.G)ds(n),ls(n);else break e;go(n),fe(18)}}else n.Fa=s[1],0<n.Fa-n.V&&37500>s[2]&&n.G&&n.A==0&&!n.v&&(n.v=Wn(ae(n.ib,n),6e3));if(1>=cu(n.i)&&n.oa){try{n.oa()}catch{}n.oa=void 0}}else Nt(n,11)}else if((t.K||n.g==t)&&ds(n),!Fn(e))for(s=n.Ja.g.parse(e),e=0;e<s.length;e++){let u=s[e];if(n.V=u[0],u=u[1],n.H==2)if(u[0]=="c"){n.K=u[1],n.pa=u[2];const l=u[3];l!=null&&(n.ra=l,n.l.info("VER="+n.ra));const h=u[4];h!=null&&(n.Ga=h,n.l.info("SVER="+n.Ga));const d=u[5];d!=null&&typeof d=="number"&&0<d&&(r=1.5*d,n.L=r,n.l.info("backChannelRequestTimeoutMs_="+r)),r=n;const f=t.g;if(f){const E=f.g?f.g.getResponseHeader("X-Client-Wire-Protocol"):null;if(E){var i=r.i;i.g||E.indexOf("spdy")==-1&&E.indexOf("quic")==-1&&E.indexOf("h2")==-1||(i.j=i.l,i.g=new Set,i.h&&(ho(i,i.h),i.h=null))}if(r.F){const T=f.g?f.g.getResponseHeader("X-HTTP-Session-Id"):null;T&&(r.Da=T,j(r.I,r.F,T))}}n.H=3,n.h&&n.h.Ba(),n.ca&&(n.S=Date.now()-t.G,n.l.info("Handshake RTT: "+n.S+"ms")),r=n;var o=t;if(r.wa=bu(r,r.J?r.pa:null,r.Y),o.K){uu(r.i,o);var a=o,c=r.L;c&&a.setTimeout(c),a.C&&(ns(a),Qn(a)),r.g=o}else Iu(r);0<n.j.length&&hs(n)}else u[0]!="stop"&&u[0]!="close"||Nt(n,7);else n.H==3&&(u[0]=="stop"||u[0]=="close"?u[0]=="stop"?Nt(n,7):mo(n):u[0]!="noop"&&n.h&&n.h.Aa(u),n.A=0)}}Hn(4)}catch{}}function Lm(t){if(t.Z&&typeof t.Z=="function")return t.Z();if(typeof Map<"u"&&t instanceof Map||typeof Set<"u"&&t instanceof Set)return Array.from(t.values());if(typeof t=="string")return t.split("");if(Hr(t)){for(var e=[],n=t.length,r=0;r<n;r++)e.push(t[r]);return e}e=[],n=0;for(r in t)e[n++]=t[r];return e}function Mm(t){if(t.ta&&typeof t.ta=="function")return t.ta();if(!t.Z||typeof t.Z!="function"){if(typeof Map<"u"&&t instanceof Map)return Array.from(t.keys());if(!(typeof Set<"u"&&t instanceof Set)){if(Hr(t)||typeof t=="string"){var e=[];t=t.length;for(var n=0;n<t;n++)e.push(n);return e}e=[],n=0;for(const r in t)e[n++]=r;return e}}}function Zc(t,e){if(t.forEach&&typeof t.forEach=="function")t.forEach(e,void 0);else if(Hr(t)||typeof t=="string")Array.prototype.forEach.call(t,e,void 0);else for(var n=Mm(t),r=Lm(t),s=r.length,i=0;i<s;i++)e.call(void 0,r[i],n&&n[i],t)}var eu=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$");function xm(t,e){if(t){t=t.split("&");for(var n=0;n<t.length;n++){var r=t[n].indexOf("="),s=null;if(0<=r){var i=t[n].substring(0,r);s=t[n].substring(r+1)}else i=t[n];e(i,s?decodeURIComponent(s.replace(/\+/g," ")):"")}}}function Dt(t){if(this.g=this.s=this.j="",this.m=null,this.o=this.l="",this.h=!1,t instanceof Dt){this.h=t.h,rs(this,t.j),this.s=t.s,this.g=t.g,ss(this,t.m),this.l=t.l;var e=t.i,n=new Zn;n.i=e.i,e.g&&(n.g=new Map(e.g),n.h=e.h),tu(this,n),this.o=t.o}else t&&(e=String(t).match(eu))?(this.h=!1,rs(this,e[1]||"",!0),this.s=Xn(e[2]||""),this.g=Xn(e[3]||"",!0),ss(this,e[4]),this.l=Xn(e[5]||"",!0),tu(this,e[6]||"",!0),this.o=Xn(e[7]||"")):(this.h=!1,this.i=new Zn(null,this.h))}Dt.prototype.toString=function(){var t=[],e=this.j;e&&t.push(Jn(e,nu,!0),":");var n=this.g;return(n||e=="file")&&(t.push("//"),(e=this.s)&&t.push(Jn(e,nu,!0),"@"),t.push(encodeURIComponent(String(n)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),n=this.m,n!=null&&t.push(":",String(n))),(n=this.l)&&(this.g&&n.charAt(0)!="/"&&t.push("/"),t.push(Jn(n,n.charAt(0)=="/"?Bm:Fm,!0))),(n=this.i.toString())&&t.push("?",n),(n=this.o)&&t.push("#",Jn(n,$m)),t.join("")};function Xe(t){return new Dt(t)}function rs(t,e,n){t.j=n?Xn(e,!0):e,t.j&&(t.j=t.j.replace(/:$/,""))}function ss(t,e){if(e){if(e=Number(e),isNaN(e)||0>e)throw Error("Bad port number "+e);t.m=e}else t.m=null}function tu(t,e,n){e instanceof Zn?(t.i=e,qm(t.i,t.h)):(n||(e=Jn(e,jm)),t.i=new Zn(e,t.h))}function j(t,e,n){t.i.set(e,n)}function is(t){return j(t,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)),t}function Xn(t,e){return t?e?decodeURI(t.replace(/%25/g,"%2525")):decodeURIComponent(t):""}function Jn(t,e,n){return typeof t=="string"?(t=encodeURI(t).replace(e,Um),n&&(t=t.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),t):null}function Um(t){return t=t.charCodeAt(0),"%"+(t>>4&15).toString(16)+(t&15).toString(16)}var nu=/[#\/\?@]/g,Fm=/[#\?:]/g,Bm=/[#\?]/g,jm=/[#\?@]/g,$m=/#/g;function Zn(t,e){this.h=this.g=null,this.i=t||null,this.j=!!e}function dt(t){t.g||(t.g=new Map,t.h=0,t.i&&xm(t.i,function(e,n){t.add(decodeURIComponent(e.replace(/\+/g," ")),n)}))}y=Zn.prototype,y.add=function(t,e){dt(this),this.i=null,t=Jt(this,t);var n=this.g.get(t);return n||this.g.set(t,n=[]),n.push(e),this.h+=1,this};function ru(t,e){dt(t),e=Jt(t,e),t.g.has(e)&&(t.i=null,t.h-=t.g.get(e).length,t.g.delete(e))}function su(t,e){return dt(t),e=Jt(t,e),t.g.has(e)}y.forEach=function(t,e){dt(this),this.g.forEach(function(n,r){n.forEach(function(s){t.call(e,s,r,this)},this)},this)},y.ta=function(){dt(this);const t=Array.from(this.g.values()),e=Array.from(this.g.keys()),n=[];for(let r=0;r<e.length;r++){const s=t[r];for(let i=0;i<s.length;i++)n.push(e[r])}return n},y.Z=function(t){dt(this);let e=[];if(typeof t=="string")su(this,t)&&(e=e.concat(this.g.get(Jt(this,t))));else{t=Array.from(this.g.values());for(let n=0;n<t.length;n++)e=e.concat(t[n])}return e},y.set=function(t,e){return dt(this),this.i=null,t=Jt(this,t),su(this,t)&&(this.h-=this.g.get(t).length),this.g.set(t,[e]),this.h+=1,this},y.get=function(t,e){return t?(t=this.Z(t),0<t.length?String(t[0]):e):e};function iu(t,e,n){ru(t,e),0<n.length&&(t.i=null,t.g.set(Jt(t,e),Mi(n)),t.h+=n.length)}y.toString=function(){if(this.i)return this.i;if(!this.g)return"";const t=[],e=Array.from(this.g.keys());for(var n=0;n<e.length;n++){var r=e[n];const i=encodeURIComponent(String(r)),o=this.Z(r);for(r=0;r<o.length;r++){var s=i;o[r]!==""&&(s+="="+encodeURIComponent(String(o[r]))),t.push(s)}}return this.i=t.join("&")};function Jt(t,e){return e=String(e),t.j&&(e=e.toLowerCase()),e}function qm(t,e){e&&!t.j&&(dt(t),t.i=null,t.g.forEach(function(n,r){var s=r.toLowerCase();r!=s&&(ru(this,r),iu(this,s,n))},t)),t.j=e}var zm=class{constructor(t,e){this.g=t,this.map=e}};function ou(t){this.l=t||Hm,R.PerformanceNavigationTiming?(t=R.performance.getEntriesByType("navigation"),t=0<t.length&&(t[0].nextHopProtocol=="hq"||t[0].nextHopProtocol=="h2")):t=!!(R.g&&R.g.Ka&&R.g.Ka()&&R.g.Ka().dc),this.j=t?this.l:1,this.g=null,1<this.j&&(this.g=new Set),this.h=null,this.i=[]}var Hm=10;function au(t){return t.h?!0:t.g?t.g.size>=t.j:!1}function cu(t){return t.h?1:t.g?t.g.size:0}function lo(t,e){return t.h?t.h==e:t.g?t.g.has(e):!1}function ho(t,e){t.g?t.g.add(e):t.h=e}function uu(t,e){t.h&&t.h==e?t.h=null:t.g&&t.g.has(e)&&t.g.delete(e)}ou.prototype.cancel=function(){if(this.i=lu(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(const t of this.g.values())t.cancel();this.g.clear()}};function lu(t){if(t.h!=null)return t.i.concat(t.h.F);if(t.g!=null&&t.g.size!==0){let e=t.i;for(const n of t.g.values())e=e.concat(n.F);return e}return Mi(t.i)}var Wm=class{stringify(t){return R.JSON.stringify(t,void 0)}parse(t){return R.JSON.parse(t,void 0)}};function Gm(){this.g=new Wm}function Km(t,e,n){const r=n||"";try{Zc(t,function(s,i){let o=s;Un(s)&&(o=Zi(s)),e.push(r+i+"="+encodeURIComponent(o))})}catch(s){throw e.push(r+"type="+encodeURIComponent("_badmap")),s}}function Qm(t,e){const n=new Jr;if(R.Image){const r=new Image;r.onload=Wr(os,n,r,"TestLoadImage: loaded",!0,e),r.onerror=Wr(os,n,r,"TestLoadImage: error",!1,e),r.onabort=Wr(os,n,r,"TestLoadImage: abort",!1,e),r.ontimeout=Wr(os,n,r,"TestLoadImage: timeout",!1,e),R.setTimeout(function(){r.ontimeout&&r.ontimeout()},1e4),r.src=t}else e(!1)}function os(t,e,n,r,s){try{e.onload=null,e.onerror=null,e.onabort=null,e.ontimeout=null,s(r)}catch{}}function as(t){this.l=t.ec||null,this.j=t.ob||!1}X(as,ro),as.prototype.g=function(){return new cs(this.l,this.j)},as.prototype.i=function(t){return function(){return t}}({});function cs(t,e){J.call(this),this.F=t,this.u=e,this.m=void 0,this.readyState=fo,this.status=0,this.responseType=this.responseText=this.response=this.statusText="",this.onreadystatechange=null,this.v=new Headers,this.h=null,this.C="GET",this.B="",this.g=!1,this.A=this.j=this.l=null}X(cs,J);var fo=0;y=cs.prototype,y.open=function(t,e){if(this.readyState!=fo)throw this.abort(),Error("Error reopening a connection");this.C=t,this.B=e,this.readyState=1,tr(this)},y.send=function(t){if(this.readyState!=1)throw this.abort(),Error("need to call open() first. ");this.g=!0;const e={headers:this.v,method:this.C,credentials:this.m,cache:void 0};t&&(e.body=t),(this.F||R).fetch(new Request(this.B,e)).then(this.$a.bind(this),this.ka.bind(this))},y.abort=function(){this.response=this.responseText="",this.v=new Headers,this.status=0,this.j&&this.j.cancel("Request was aborted.").catch(()=>{}),1<=this.readyState&&this.g&&this.readyState!=4&&(this.g=!1,er(this)),this.readyState=fo},y.$a=function(t){if(this.g&&(this.l=t,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=t.headers,this.readyState=2,tr(this)),this.g&&(this.readyState=3,tr(this),this.g)))if(this.responseType==="arraybuffer")t.arrayBuffer().then(this.Ya.bind(this),this.ka.bind(this));else if(typeof R.ReadableStream<"u"&&"body"in t){if(this.j=t.body.getReader(),this.u){if(this.responseType)throw Error('responseType must be empty for "streamBinaryChunks" mode responses.');this.response=[]}else this.response=this.responseText="",this.A=new TextDecoder;hu(this)}else t.text().then(this.Za.bind(this),this.ka.bind(this))};function hu(t){t.j.read().then(t.Xa.bind(t)).catch(t.ka.bind(t))}y.Xa=function(t){if(this.g){if(this.u&&t.value)this.response.push(t.value);else if(!this.u){var e=t.value?t.value:new Uint8Array(0);(e=this.A.decode(e,{stream:!t.done}))&&(this.response=this.responseText+=e)}t.done?er(this):tr(this),this.readyState==3&&hu(this)}},y.Za=function(t){this.g&&(this.response=this.responseText=t,er(this))},y.Ya=function(t){this.g&&(this.response=t,er(this))},y.ka=function(){this.g&&er(this)};function er(t){t.readyState=4,t.l=null,t.j=null,t.A=null,tr(t)}y.setRequestHeader=function(t,e){this.v.append(t,e)},y.getResponseHeader=function(t){return this.h&&this.h.get(t.toLowerCase())||""},y.getAllResponseHeaders=function(){if(!this.h)return"";const t=[],e=this.h.entries();for(var n=e.next();!n.done;)n=n.value,t.push(n[0]+": "+n[1]),n=e.next();return t.join(`\r
|
|
367
|
-
`)};function
|
|
368
|
-
`);for(let r=0;r<t.length;r++){if(
|
|
369
|
-
`}),e}function po(t,e,n){e:{for(r in n){var r=!1;break e}r=!0}r||(n=yu(n),typeof t=="string"?n!=null&&encodeURIComponent(String(n)):j(t,e,n))}function nr(t,e,n){return n&&n.internalChannelParams&&n.internalChannelParams[t]||e}function vu(t){this.Ga=0,this.j=[],this.l=new Jr,this.pa=this.wa=this.I=this.Y=this.g=this.Da=this.F=this.na=this.o=this.U=this.s=null,this.fb=this.W=0,this.cb=nr("failFast",!1,t),this.G=this.v=this.u=this.m=this.h=null,this.aa=!0,this.Fa=this.V=-1,this.ba=this.A=this.C=0,this.ab=nr("baseRetryDelayMs",5e3,t),this.hb=nr("retryDelaySeedMs",1e4,t),this.eb=nr("forwardChannelMaxRetries",2,t),this.xa=nr("forwardChannelRequestTimeoutMs",2e4,t),this.va=t&&t.xmlHttpFactory||void 0,this.Ha=t&&t.useFetchStreams||!1,this.L=void 0,this.J=t&&t.supportsCrossDomainXhr||!1,this.K="",this.i=new ou(t&&t.concurrentRequestLimit),this.Ja=new Gm,this.P=t&&t.fastHandshake||!1,this.O=t&&t.encodeInitMessageHeaders||!1,this.P&&this.O&&(this.O=!1),this.bb=t&&t.bc||!1,t&&t.Ea&&this.l.Ea(),t&&t.forceLongPolling&&(this.aa=!1),this.ca=!this.P&&this.aa&&t&&t.detectBufferingProxy||!1,this.qa=void 0,t&&t.longPollingTimeout&&0<t.longPollingTimeout&&(this.qa=t.longPollingTimeout),this.oa=void 0,this.S=0,this.M=!1,this.ma=this.B=null}y=vu.prototype,y.ra=8,y.H=1;function mo(t){if(Eu(t),t.H==3){var e=t.W++,n=Xe(t.I);if(j(n,"SID",t.K),j(n,"RID",e),j(n,"TYPE","terminate"),rr(t,n),e=new Kn(t,t.l,e),e.L=2,e.A=is(Xe(n)),n=!1,R.navigator&&R.navigator.sendBeacon)try{n=R.navigator.sendBeacon(e.A.toString(),"")}catch{}!n&&R.Image&&(new Image().src=e.A,n=!0),n||(e.g=Cu(e.l,null),e.g.ha(e.A)),e.G=Date.now(),Qn(e)}Su(t)}function ls(t){t.g&&(_o(t),t.g.cancel(),t.g=null)}function Eu(t){ls(t),t.u&&(R.clearTimeout(t.u),t.u=null),ds(t),t.i.cancel(),t.m&&(typeof t.m=="number"&&R.clearTimeout(t.m),t.m=null)}function hs(t){if(!au(t.i)&&!t.m){t.m=!0;var e=t.Na;$n||Lc(),qn||($n(),qn=!0),eo.add(e,t),t.C=0}}function tg(t,e){return cu(t.i)>=t.i.j-(t.m?1:0)?!1:t.m?(t.j=e.F.concat(t.j),!0):t.H==1||t.H==2||t.C>=(t.cb?0:t.eb)?!1:(t.m=Wn(ae(t.Na,t,e),Pu(t,t.C)),t.C++,!0)}y.Na=function(t){if(this.m)if(this.m=null,this.H==1){if(!t){this.W=Math.floor(1e5*Math.random()),t=this.W++;const s=new Kn(this,this.l,t);let i=this.s;if(this.U&&(i?(i=Pc(i),bc(i,this.U)):i=this.U),this.o!==null||this.O||(s.I=i,i=null),this.P)e:{for(var e=0,n=0;n<this.j.length;n++){t:{var r=this.j[n];if("__data__"in r.map&&(r=r.map.__data__,typeof r=="string")){r=r.length;break t}r=void 0}if(r===void 0)break;if(e+=r,4096<e){e=n;break e}if(e===4096||n===this.j.length-1){e=n+1;break e}}e=1e3}else e=1e3;e=wu(this,s,e),n=Xe(this.I),j(n,"RID",t),j(n,"CVER",22),this.F&&j(n,"X-HTTP-Session-Id",this.F),rr(this,n),i&&(this.O?e="headers="+encodeURIComponent(String(yu(i)))+"&"+e:this.o&&po(n,this.o,i)),ho(this.i,s),this.bb&&j(n,"TYPE","init"),this.P?(j(n,"$req",e),j(n,"SID","null"),s.aa=!0,co(s,n,null)):co(s,n,e),this.H=2}}else this.H==3&&(t?Tu(this,t):this.j.length==0||au(this.i)||Tu(this))};function Tu(t,e){var n;e?n=e.m:n=t.W++;const r=Xe(t.I);j(r,"SID",t.K),j(r,"RID",n),j(r,"AID",t.V),rr(t,r),t.o&&t.s&&po(r,t.o,t.s),n=new Kn(t,t.l,n,t.C+1),t.o===null&&(n.I=t.s),e&&(t.j=e.F.concat(t.j)),e=wu(t,n,1e3),n.setTimeout(Math.round(.5*t.xa)+Math.round(.5*t.xa*Math.random())),ho(t.i,n),co(n,r,e)}function rr(t,e){t.na&&zi(t.na,function(n,r){j(e,r,n)}),t.h&&Zc({},function(n,r){j(e,r,n)})}function wu(t,e,n){n=Math.min(t.j.length,n);var r=t.h?ae(t.h.Va,t.h,t):null;e:{var s=t.j;let i=-1;for(;;){const o=["count="+n];i==-1?0<n?(i=s[0].g,o.push("ofs="+i)):i=0:o.push("ofs="+i);let a=!0;for(let c=0;c<n;c++){let u=s[c].g;const l=s[c].map;if(u-=i,0>u)i=Math.max(0,s[c].g-100),a=!1;else try{Km(l,o,"req"+u+"_")}catch{r&&r(l)}}if(a){r=o.join("&");break e}}}return t=t.j.splice(0,n),e.F=t,r}function Iu(t){if(!t.g&&!t.u){t.ba=1;var e=t.Ma;$n||Lc(),qn||($n(),qn=!0),eo.add(e,t),t.A=0}}function go(t){return t.g||t.u||3<=t.A?!1:(t.ba++,t.u=Wn(ae(t.Ma,t),Pu(t,t.A)),t.A++,!0)}y.Ma=function(){if(this.u=null,Au(this),this.ca&&!(this.M||this.g==null||0>=this.S)){var t=2*this.S;this.l.info("BP detection timer enabled: "+t),this.B=Wn(ae(this.jb,this),t)}},y.jb=function(){this.B&&(this.B=null,this.l.info("BP detection timeout reached."),this.l.info("Buffering proxy detected and switch to long-polling!"),this.G=!1,this.M=!0,fe(10),ls(this),Au(this))};function _o(t){t.B!=null&&(R.clearTimeout(t.B),t.B=null)}function Au(t){t.g=new Kn(t,t.l,"rpc",t.ba),t.o===null&&(t.g.I=t.s),t.g.O=0;var e=Xe(t.wa);j(e,"RID","rpc"),j(e,"SID",t.K),j(e,"AID",t.V),j(e,"CI",t.G?"0":"1"),!t.G&&t.qa&&j(e,"TO",t.qa),j(e,"TYPE","xmlhttp"),rr(t,e),t.o&&t.s&&po(e,t.o,t.s),t.L&&t.g.setTimeout(t.L);var n=t.g;t=t.pa,n.L=1,n.A=is(Xe(e)),n.u=null,n.S=!0,Qc(n,t)}y.ib=function(){this.v!=null&&(this.v=null,ls(this),go(this),fe(19))};function ds(t){t.v!=null&&(R.clearTimeout(t.v),t.v=null)}function Ru(t,e){var n=null;if(t.g==e){ds(t),_o(t),t.g=null;var r=2}else if(lo(t.i,e))n=e.F,uu(t.i,e),r=1;else return;if(t.H!=0){if(e.i)if(r==1){n=e.u?e.u.length:0,e=Date.now()-e.G;var s=t.C;r=Zr(),ee(r,new qc(r,n)),hs(t)}else Iu(t);else if(s=e.s,s==3||s==0&&0<e.ca||!(r==1&&tg(t,e)||r==2&&go(t)))switch(n&&0<n.length&&(e=t.i,e.i=e.i.concat(n)),s){case 1:Nt(t,5);break;case 4:Nt(t,10);break;case 3:Nt(t,6);break;default:Nt(t,2)}}}function Pu(t,e){let n=t.ab+Math.floor(Math.random()*t.hb);return t.isActive()||(n*=2),n*e}function Nt(t,e){if(t.l.info("Error code "+e),e==2){var n=null;t.h&&(n=null);var r=ae(t.pb,t);n||(n=new Dt("//www.google.com/images/cleardot.gif"),R.location&&R.location.protocol=="http"||rs(n,"https"),is(n)),Qm(n.toString(),r)}else fe(2);t.H=0,t.h&&t.h.za(e),Su(t),Eu(t)}y.pb=function(t){t?(this.l.info("Successfully pinged google.com"),fe(2)):(this.l.info("Failed to ping google.com"),fe(1))};function Su(t){if(t.H=0,t.ma=[],t.h){const e=lu(t.i);(e.length!=0||t.j.length!=0)&&(Tc(t.ma,e),Tc(t.ma,t.j),t.i.i.length=0,Mi(t.j),t.j.length=0),t.h.ya()}}function bu(t,e,n){var r=n instanceof Dt?Xe(n):new Dt(n);if(r.g!="")e&&(r.g=e+"."+r.g),ss(r,r.m);else{var s=R.location;r=s.protocol,e=e?e+"."+s.hostname:s.hostname,s=+s.port;var i=new Dt(null);r&&rs(i,r),e&&(i.g=e),s&&ss(i,s),n&&(i.l=n),r=i}return n=t.F,e=t.Da,n&&e&&j(r,n,e),j(r,"VER",t.ra),rr(t,r),r}function Cu(t,e,n){if(e&&!t.J)throw Error("Can't create secondary domain capable XhrIo object.");return e=t.Ha&&!t.va?new H(new as({ob:n})):new H(t.va),e.Oa(t.J),e}y.isActive=function(){return!!this.h&&this.h.isActive(this)};function ku(){}y=ku.prototype,y.Ba=function(){},y.Aa=function(){},y.za=function(){},y.ya=function(){},y.isActive=function(){return!0},y.Va=function(){};function fs(){if(Yt&&!(10<=Number(pm)))throw Error("Environmental error: no available transport.")}fs.prototype.g=function(t,e){return new Ee(t,e)};function Ee(t,e){J.call(this),this.g=new vu(e),this.l=t,this.h=e&&e.messageUrlParams||null,t=e&&e.messageHeaders||null,e&&e.clientProtocolHeaderRequired&&(t?t["X-Client-Protocol"]="webchannel":t={"X-Client-Protocol":"webchannel"}),this.g.s=t,t=e&&e.initMessageHeaders||null,e&&e.messageContentType&&(t?t["X-WebChannel-Content-Type"]=e.messageContentType:t={"X-WebChannel-Content-Type":e.messageContentType}),e&&e.Ca&&(t?t["X-WebChannel-Client-Profile"]=e.Ca:t={"X-WebChannel-Client-Profile":e.Ca}),this.g.U=t,(t=e&&e.cc)&&!Fn(t)&&(this.g.o=t),this.A=e&&e.supportsCrossDomainXhr||!1,this.v=e&&e.sendRawJson||!1,(e=e&&e.httpSessionIdParam)&&!Fn(e)&&(this.g.F=e,t=this.h,t!==null&&e in t&&(t=this.h,e in t&&delete t[e])),this.j=new Zt(this)}X(Ee,J),Ee.prototype.m=function(){this.g.h=this.j,this.A&&(this.g.J=!0);var t=this.g,e=this.l,n=this.h||void 0;fe(0),t.Y=e,t.na=n||{},t.G=t.aa,t.I=bu(t,null,t.Y),hs(t)},Ee.prototype.close=function(){mo(this.g)},Ee.prototype.u=function(t){var e=this.g;if(typeof t=="string"){var n={};n.__data__=t,t=n}else this.v&&(n={},n.__data__=Zi(t),t=n);e.j.push(new zm(e.fb++,t)),e.H==3&&hs(e)},Ee.prototype.N=function(){this.g.h=null,delete this.j,mo(this.g),delete this.g,Ee.$.N.call(this)};function Du(t){so.call(this),t.__headers__&&(this.headers=t.__headers__,this.statusCode=t.__status__,delete t.__headers__,delete t.__status__);var e=t.__sm__;if(e){e:{for(const n in e){t=n;break e}t=void 0}(this.i=t)&&(t=this.i,e=e!==null&&t in e?e[t]:void 0),this.data=e}else this.data=t}X(Du,so);function Nu(){io.call(this),this.status=1}X(Nu,io);function Zt(t){this.g=t}X(Zt,ku),Zt.prototype.Ba=function(){ee(this.g,"a")},Zt.prototype.Aa=function(t){ee(this.g,new Du(t))},Zt.prototype.za=function(t){ee(this.g,new Nu)},Zt.prototype.ya=function(){ee(this.g,"b")};function ng(){this.blockSize=-1}function ke(){this.blockSize=-1,this.blockSize=64,this.g=Array(4),this.m=Array(this.blockSize),this.i=this.h=0,this.reset()}X(ke,ng),ke.prototype.reset=function(){this.g[0]=1732584193,this.g[1]=4023233417,this.g[2]=2562383102,this.g[3]=271733878,this.i=this.h=0};function yo(t,e,n){n||(n=0);var r=Array(16);if(typeof e=="string")for(var s=0;16>s;++s)r[s]=e.charCodeAt(n++)|e.charCodeAt(n++)<<8|e.charCodeAt(n++)<<16|e.charCodeAt(n++)<<24;else for(s=0;16>s;++s)r[s]=e[n++]|e[n++]<<8|e[n++]<<16|e[n++]<<24;e=t.g[0],n=t.g[1],s=t.g[2];var i=t.g[3],o=e+(i^n&(s^i))+r[0]+3614090360&4294967295;e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[1]+3905402710&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[2]+606105819&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[3]+3250441966&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(i^n&(s^i))+r[4]+4118548399&4294967295,e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[5]+1200080426&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[6]+2821735955&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[7]+4249261313&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(i^n&(s^i))+r[8]+1770035416&4294967295,e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[9]+2336552879&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[10]+4294925233&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[11]+2304563134&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(i^n&(s^i))+r[12]+1804603682&4294967295,e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[13]+4254626195&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[14]+2792965006&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[15]+1236535329&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(s^i&(n^s))+r[1]+4129170786&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[6]+3225465664&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[11]+643717713&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[0]+3921069994&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(s^i&(n^s))+r[5]+3593408605&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[10]+38016083&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[15]+3634488961&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[4]+3889429448&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(s^i&(n^s))+r[9]+568446438&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[14]+3275163606&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[3]+4107603335&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[8]+1163531501&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(s^i&(n^s))+r[13]+2850285829&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[2]+4243563512&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[7]+1735328473&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[12]+2368359562&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(n^s^i)+r[5]+4294588738&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[8]+2272392833&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[11]+1839030562&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[14]+4259657740&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(n^s^i)+r[1]+2763975236&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[4]+1272893353&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[7]+4139469664&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[10]+3200236656&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(n^s^i)+r[13]+681279174&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[0]+3936430074&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[3]+3572445317&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[6]+76029189&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(n^s^i)+r[9]+3654602809&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[12]+3873151461&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[15]+530742520&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[2]+3299628645&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(s^(n|~i))+r[0]+4096336452&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[7]+1126891415&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[14]+2878612391&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[5]+4237533241&4294967295,n=s+(o<<21&4294967295|o>>>11),o=e+(s^(n|~i))+r[12]+1700485571&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[3]+2399980690&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[10]+4293915773&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[1]+2240044497&4294967295,n=s+(o<<21&4294967295|o>>>11),o=e+(s^(n|~i))+r[8]+1873313359&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[15]+4264355552&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[6]+2734768916&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[13]+1309151649&4294967295,n=s+(o<<21&4294967295|o>>>11),o=e+(s^(n|~i))+r[4]+4149444226&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[11]+3174756917&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[2]+718787259&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[9]+3951481745&4294967295,t.g[0]=t.g[0]+e&4294967295,t.g[1]=t.g[1]+(s+(o<<21&4294967295|o>>>11))&4294967295,t.g[2]=t.g[2]+s&4294967295,t.g[3]=t.g[3]+i&4294967295}ke.prototype.j=function(t,e){e===void 0&&(e=t.length);for(var n=e-this.blockSize,r=this.m,s=this.h,i=0;i<e;){if(s==0)for(;i<=n;)yo(this,t,i),i+=this.blockSize;if(typeof t=="string"){for(;i<e;)if(r[s++]=t.charCodeAt(i++),s==this.blockSize){yo(this,r),s=0;break}}else for(;i<e;)if(r[s++]=t[i++],s==this.blockSize){yo(this,r),s=0;break}}this.h=s,this.i+=e},ke.prototype.l=function(){var t=Array((56>this.h?this.blockSize:2*this.blockSize)-this.h);t[0]=128;for(var e=1;e<t.length-8;++e)t[e]=0;var n=8*this.i;for(e=t.length-8;e<t.length;++e)t[e]=n&255,n/=256;for(this.j(t),t=Array(16),e=n=0;4>e;++e)for(var r=0;32>r;r+=8)t[n++]=this.g[e]>>>r&255;return t};function U(t,e){this.h=e;for(var n=[],r=!0,s=t.length-1;0<=s;s--){var i=t[s]|0;r&&i==e||(n[s]=i,r=!1)}this.g=n}var rg={};function vo(t){return-128<=t&&128>t?hm(t,function(e){return new U([e|0],0>e?-1:0)}):new U([t|0],0>t?-1:0)}function Fe(t){if(isNaN(t)||!isFinite(t))return en;if(0>t)return te(Fe(-t));for(var e=[],n=1,r=0;t>=n;r++)e[r]=t/n|0,n*=Eo;return new U(e,0)}function Ou(t,e){if(t.length==0)throw Error("number format error: empty string");if(e=e||10,2>e||36<e)throw Error("radix out of range: "+e);if(t.charAt(0)=="-")return te(Ou(t.substring(1),e));if(0<=t.indexOf("-"))throw Error('number format error: interior "-" character');for(var n=Fe(Math.pow(e,8)),r=en,s=0;s<t.length;s+=8){var i=Math.min(8,t.length-s),o=parseInt(t.substring(s,s+i),e);8>i?(i=Fe(Math.pow(e,i)),r=r.R(i).add(Fe(o))):(r=r.R(n),r=r.add(Fe(o)))}return r}var Eo=4294967296,en=vo(0),To=vo(1),Vu=vo(16777216);y=U.prototype,y.ea=function(){if(Re(this))return-te(this).ea();for(var t=0,e=1,n=0;n<this.g.length;n++){var r=this.D(n);t+=(0<=r?r:Eo+r)*e,e*=Eo}return t},y.toString=function(t){if(t=t||10,2>t||36<t)throw Error("radix out of range: "+t);if(Je(this))return"0";if(Re(this))return"-"+te(this).toString(t);for(var e=Fe(Math.pow(t,6)),n=this,r="";;){var s=gs(n,e).g;n=ps(n,s.R(e));var i=((0<n.g.length?n.g[0]:n.h)>>>0).toString(t);if(n=s,Je(n))return i+r;for(;6>i.length;)i="0"+i;r=i+r}},y.D=function(t){return 0>t?0:t<this.g.length?this.g[t]:this.h};function Je(t){if(t.h!=0)return!1;for(var e=0;e<t.g.length;e++)if(t.g[e]!=0)return!1;return!0}function Re(t){return t.h==-1}y.X=function(t){return t=ps(this,t),Re(t)?-1:Je(t)?0:1};function te(t){for(var e=t.g.length,n=[],r=0;r<e;r++)n[r]=~t.g[r];return new U(n,~t.h).add(To)}y.abs=function(){return Re(this)?te(this):this},y.add=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0,s=0;s<=e;s++){var i=r+(this.D(s)&65535)+(t.D(s)&65535),o=(i>>>16)+(this.D(s)>>>16)+(t.D(s)>>>16);r=o>>>16,i&=65535,o&=65535,n[s]=o<<16|i}return new U(n,n[n.length-1]&-2147483648?-1:0)};function ps(t,e){return t.add(te(e))}y.R=function(t){if(Je(this)||Je(t))return en;if(Re(this))return Re(t)?te(this).R(te(t)):te(te(this).R(t));if(Re(t))return te(this.R(te(t)));if(0>this.X(Vu)&&0>t.X(Vu))return Fe(this.ea()*t.ea());for(var e=this.g.length+t.g.length,n=[],r=0;r<2*e;r++)n[r]=0;for(r=0;r<this.g.length;r++)for(var s=0;s<t.g.length;s++){var i=this.D(r)>>>16,o=this.D(r)&65535,a=t.D(s)>>>16,c=t.D(s)&65535;n[2*r+2*s]+=o*c,ms(n,2*r+2*s),n[2*r+2*s+1]+=i*c,ms(n,2*r+2*s+1),n[2*r+2*s+1]+=o*a,ms(n,2*r+2*s+1),n[2*r+2*s+2]+=i*a,ms(n,2*r+2*s+2)}for(r=0;r<e;r++)n[r]=n[2*r+1]<<16|n[2*r];for(r=e;r<2*e;r++)n[r]=0;return new U(n,0)};function ms(t,e){for(;(t[e]&65535)!=t[e];)t[e+1]+=t[e]>>>16,t[e]&=65535,e++}function sr(t,e){this.g=t,this.h=e}function gs(t,e){if(Je(e))throw Error("division by zero");if(Je(t))return new sr(en,en);if(Re(t))return e=gs(te(t),e),new sr(te(e.g),te(e.h));if(Re(e))return e=gs(t,te(e)),new sr(te(e.g),e.h);if(30<t.g.length){if(Re(t)||Re(e))throw Error("slowDivide_ only works with positive integers.");for(var n=To,r=e;0>=r.X(t);)n=Lu(n),r=Lu(r);var s=tn(n,1),i=tn(r,1);for(r=tn(r,2),n=tn(n,2);!Je(r);){var o=i.add(r);0>=o.X(t)&&(s=s.add(n),i=o),r=tn(r,1),n=tn(n,1)}return e=ps(t,s.R(e)),new sr(s,e)}for(s=en;0<=t.X(e);){for(n=Math.max(1,Math.floor(t.ea()/e.ea())),r=Math.ceil(Math.log(n)/Math.LN2),r=48>=r?1:Math.pow(2,r-48),i=Fe(n),o=i.R(e);Re(o)||0<o.X(t);)n-=r,i=Fe(n),o=i.R(e);Je(i)&&(i=To),s=s.add(i),t=ps(t,o)}return new sr(s,t)}y.gb=function(t){return gs(this,t).h},y.and=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0;r<e;r++)n[r]=this.D(r)&t.D(r);return new U(n,this.h&t.h)},y.or=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0;r<e;r++)n[r]=this.D(r)|t.D(r);return new U(n,this.h|t.h)},y.xor=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0;r<e;r++)n[r]=this.D(r)^t.D(r);return new U(n,this.h^t.h)};function Lu(t){for(var e=t.g.length+1,n=[],r=0;r<e;r++)n[r]=t.D(r)<<1|t.D(r-1)>>>31;return new U(n,t.h)}function tn(t,e){var n=e>>5;e%=32;for(var r=t.g.length-n,s=[],i=0;i<r;i++)s[i]=0<e?t.D(i+n)>>>e|t.D(i+n+1)<<32-e:t.D(i+n);return new U(s,t.h)}fs.prototype.createWebChannel=fs.prototype.g,Ee.prototype.send=Ee.prototype.u,Ee.prototype.open=Ee.prototype.m,Ee.prototype.close=Ee.prototype.close,es.NO_ERROR=0,es.TIMEOUT=8,es.HTTP_ERROR=6,zc.COMPLETE="complete",Wc.EventType=Gn,Gn.OPEN="a",Gn.CLOSE="b",Gn.ERROR="c",Gn.MESSAGE="d",J.prototype.listen=J.prototype.O,H.prototype.listenOnce=H.prototype.P,H.prototype.getLastError=H.prototype.Sa,H.prototype.getLastErrorCode=H.prototype.Ia,H.prototype.getStatus=H.prototype.da,H.prototype.getResponseJson=H.prototype.Wa,H.prototype.getResponseText=H.prototype.ja,H.prototype.send=H.prototype.ha,H.prototype.setWithCredentials=H.prototype.Oa,ke.prototype.digest=ke.prototype.l,ke.prototype.reset=ke.prototype.reset,ke.prototype.update=ke.prototype.j,U.prototype.add=U.prototype.add,U.prototype.multiply=U.prototype.R,U.prototype.modulo=U.prototype.gb,U.prototype.compare=U.prototype.X,U.prototype.toNumber=U.prototype.ea,U.prototype.toString=U.prototype.toString,U.prototype.getBits=U.prototype.D,U.fromNumber=Fe,U.fromString=Ou;var sg=function(){return new fs},ig=function(){return Zr()},wo=es,og=zc,ag=Ct,Mu={xb:0,Ab:1,Bb:2,Ub:3,Zb:4,Wb:5,Xb:6,Vb:7,Tb:8,Yb:9,PROXY:10,NOPROXY:11,Rb:12,Nb:13,Ob:14,Mb:15,Pb:16,Qb:17,tb:18,sb:19,ub:20},_s=Wc,cg=H,ug=ke,nn=U;const xu="@firebase/firestore";/**
|
|
365
|
+
`+i+" "+o})}function Qt(t,e,n,r){t.info(function(){return"XMLHTTP TEXT ("+e+"): "+wm(t,n)+(r?" "+r:"")})}function Im(t,e){t.info(function(){return"TIMEOUT: "+e})}Yr.prototype.info=function(){};function wm(t,e){if(!t.g)return e;if(!e)return null;try{var n=JSON.parse(e);if(n){for(t=0;t<n.length;t++)if(Array.isArray(n[t])){var r=n[t];if(!(2>r.length)){var s=r[1];if(Array.isArray(s)&&!(1>s.length)){var i=s[0];if(i!="noop"&&i!="stop"&&i!="close")for(var o=1;o<s.length;o++)s[o]=""}}}}return Yi(n)}catch{return e}}var bt={},Vc=null;function Xr(){return Vc=Vc||new X}bt.Ta="serverreachability";function Lc(t){ae.call(this,bt.Ta,t)}Y(Lc,ae);function jn(t){const e=Xr();Z(e,new Lc(e))}bt.STAT_EVENT="statevent";function Mc(t,e){ae.call(this,bt.STAT_EVENT,t),this.stat=e}Y(Mc,ae);function fe(t){const e=Xr();Z(e,new Mc(e,t))}bt.Ua="timingevent";function Uc(t,e){ae.call(this,bt.Ua,t),this.size=e}Y(Uc,ae);function zn(t,e){if(typeof t!="function")throw Error("Fn must not be null and must be a function");return R.setTimeout(function(){t()},e)}var Jr={NO_ERROR:0,rb:1,Eb:2,Db:3,yb:4,Cb:5,Fb:6,Qa:7,TIMEOUT:8,Ib:9},xc={wb:"complete",Sb:"success",Ra:"error",Qa:"abort",Kb:"ready",Lb:"readystatechange",TIMEOUT:"timeout",Gb:"incrementaldata",Jb:"progress",zb:"downloadprogress",$b:"uploadprogress"};function eo(){}eo.prototype.h=null;function Fc(t){return t.h||(t.h=t.i())}function Bc(){}var Hn={OPEN:"a",vb:"b",Ra:"c",Hb:"d"};function to(){ae.call(this,"d")}Y(to,ae);function no(){ae.call(this,"c")}Y(no,ae);var ro;function Zr(){}Y(Zr,eo),Zr.prototype.g=function(){return new XMLHttpRequest},Zr.prototype.i=function(){return{}},ro=new Zr;function Wn(t,e,n,r){this.l=t,this.j=e,this.m=n,this.W=r||1,this.U=new $n(this),this.P=Am,t=Li?125:void 0,this.V=new Qr(t),this.I=null,this.i=!1,this.s=this.A=this.v=this.L=this.G=this.Y=this.B=null,this.F=[],this.g=null,this.C=0,this.o=this.u=null,this.ca=-1,this.J=!1,this.O=0,this.M=null,this.ba=this.K=this.aa=this.S=!1,this.h=new qc}function qc(){this.i=null,this.g="",this.h=!1}var Am=45e3,so={},es={};y=Wn.prototype,y.setTimeout=function(t){this.P=t};function io(t,e,n){t.L=1,t.v=ss(Qe(e)),t.s=n,t.S=!0,$c(t,null)}function $c(t,e){t.G=Date.now(),Gn(t),t.A=Qe(t.v);var n=t.A,r=t.W;Array.isArray(r)||(r=[String(r)]),Jc(n.i,"t",r),t.C=0,n=t.l.J,t.h=new qc,t.g=Iu(t.l,n?e:null,!t.s),0<t.O&&(t.M=new Em(oe(t.Pa,t,t.g),t.O)),Dc(t.U,t.g,"readystatechange",t.nb),e=t.I?vc(t.I):{},t.s?(t.u||(t.u="POST"),e["Content-Type"]="application/x-www-form-urlencoded",t.g.ha(t.A,t.u,t.s,e)):(t.u="GET",t.g.ha(t.A,t.u,null,e)),jn(),vm(t.j,t.u,t.A,t.m,t.W,t.s)}y.nb=function(t){t=t.target;const e=this.M;e&&Me(t)==3?e.l():this.Pa(t)},y.Pa=function(t){try{if(t==this.g)e:{const l=Me(this.g);var e=this.g.Ia();const h=this.g.da();if(!(3>l)&&(l!=3||Li||this.g&&(this.h.h||this.g.ja()||lu(this.g)))){this.J||l!=4||e==7||(e==8||0>=h?jn(3):jn(2)),ts(this);var n=this.g.da();this.ca=n;t:if(jc(this)){var r=lu(this.g);t="";var s=r.length,i=Me(this.g)==4;if(!this.h.i){if(typeof TextDecoder>"u"){kt(this),Kn(this);var o="";break t}this.h.i=new R.TextDecoder}for(e=0;e<s;e++)this.h.h=!0,t+=this.h.i.decode(r[e],{stream:i&&e==s-1});r.splice(0,s),this.h.g+=t,this.C=0,o=this.h.g}else o=this.g.ja();if(this.i=n==200,Tm(this.j,this.u,this.A,this.m,this.W,l,n),this.i){if(this.aa&&!this.K){t:{if(this.g){var a,c=this.g;if((a=c.g?c.g.getResponseHeader("X-HTTP-Initial-Response"):null)&&!Un(a)){var u=a;break t}}u=null}if(n=u)Qt(this.j,this.m,n,"Initial handshake response via X-HTTP-Initial-Response"),this.K=!0,oo(this,n);else{this.i=!1,this.o=3,fe(12),kt(this),Kn(this);break e}}this.S?(zc(this,l,o),Li&&this.i&&l==3&&(Dc(this.U,this.V,"tick",this.mb),this.V.start())):(Qt(this.j,this.m,o,null),oo(this,o)),l==4&&kt(this),this.i&&!this.J&&(l==4?yu(this.l,this):(this.i=!1,Gn(this)))}else Hm(this.g),n==400&&0<o.indexOf("Unknown SID")?(this.o=3,fe(12)):(this.o=0,fe(13)),kt(this),Kn(this)}}}catch{}finally{}};function jc(t){return t.g?t.u=="GET"&&t.L!=2&&t.l.Ha:!1}function zc(t,e,n){let r=!0,s;for(;!t.J&&t.C<n.length;)if(s=Rm(t,n),s==es){e==4&&(t.o=4,fe(14),r=!1),Qt(t.j,t.m,null,"[Incomplete Response]");break}else if(s==so){t.o=4,fe(15),Qt(t.j,t.m,n,"[Invalid Chunk]"),r=!1;break}else Qt(t.j,t.m,s,null),oo(t,s);jc(t)&&s!=es&&s!=so&&(t.h.g="",t.C=0),e!=4||n.length!=0||t.h.h||(t.o=1,fe(16),r=!1),t.i=t.i&&r,r?0<n.length&&!t.ba&&(t.ba=!0,e=t.l,e.g==t&&e.ca&&!e.M&&(e.l.info("Great, no buffering proxy detected. Bytes received: "+n.length),po(e),e.M=!0,fe(11))):(Qt(t.j,t.m,n,"[Invalid Chunked Response]"),kt(t),Kn(t))}y.mb=function(){if(this.g){var t=Me(this.g),e=this.g.ja();this.C<e.length&&(ts(this),zc(this,t,e),this.i&&t!=4&&Gn(this))}};function Rm(t,e){var n=t.C,r=e.indexOf(`
|
|
366
|
+
`,n);return r==-1?es:(n=Number(e.substring(n,r)),isNaN(n)?so:(r+=1,r+n>e.length?es:(e=e.slice(r,r+n),t.C=r+n,e)))}y.cancel=function(){this.J=!0,kt(this)};function Gn(t){t.Y=Date.now()+t.P,Hc(t,t.P)}function Hc(t,e){if(t.B!=null)throw Error("WatchDog timer not null");t.B=zn(oe(t.lb,t),e)}function ts(t){t.B&&(R.clearTimeout(t.B),t.B=null)}y.lb=function(){this.B=null;const t=Date.now();0<=t-this.Y?(Im(this.j,this.A),this.L!=2&&(jn(),fe(17)),kt(this),this.o=2,Kn(this)):Hc(this,this.Y-t)};function Kn(t){t.l.H==0||t.J||yu(t.l,t)}function kt(t){ts(t);var e=t.M;e&&typeof e.sa=="function"&&e.sa(),t.M=null,Ji(t.V),Oc(t.U),t.g&&(e=t.g,t.g=null,e.abort(),e.sa())}function oo(t,e){try{var n=t.l;if(n.H!=0&&(n.g==t||ao(n.i,t))){if(!t.K&&ao(n.i,t)&&n.H==3){try{var r=n.Ja.g.parse(e)}catch{r=null}if(Array.isArray(r)&&r.length==3){var s=r;if(s[0]==0){e:if(!n.u){if(n.g)if(n.g.G+3e3<t.G)ls(n),cs(n);else break e;fo(n),fe(18)}}else n.Fa=s[1],0<n.Fa-n.V&&37500>s[2]&&n.G&&n.A==0&&!n.v&&(n.v=zn(oe(n.ib,n),6e3));if(1>=tu(n.i)&&n.oa){try{n.oa()}catch{}n.oa=void 0}}else Dt(n,11)}else if((t.K||n.g==t)&&ls(n),!Un(e))for(s=n.Ja.g.parse(e),e=0;e<s.length;e++){let u=s[e];if(n.V=u[0],u=u[1],n.H==2)if(u[0]=="c"){n.K=u[1],n.pa=u[2];const l=u[3];l!=null&&(n.ra=l,n.l.info("VER="+n.ra));const h=u[4];h!=null&&(n.Ga=h,n.l.info("SVER="+n.Ga));const d=u[5];d!=null&&typeof d=="number"&&0<d&&(r=1.5*d,n.L=r,n.l.info("backChannelRequestTimeoutMs_="+r)),r=n;const f=t.g;if(f){const E=f.g?f.g.getResponseHeader("X-Client-Wire-Protocol"):null;if(E){var i=r.i;i.g||E.indexOf("spdy")==-1&&E.indexOf("quic")==-1&&E.indexOf("h2")==-1||(i.j=i.l,i.g=new Set,i.h&&(co(i,i.h),i.h=null))}if(r.F){const v=f.g?f.g.getResponseHeader("X-HTTP-Session-Id"):null;v&&(r.Da=v,q(r.I,r.F,v))}}n.H=3,n.h&&n.h.Ba(),n.ca&&(n.S=Date.now()-t.G,n.l.info("Handshake RTT: "+n.S+"ms")),r=n;var o=t;if(r.wa=Tu(r,r.J?r.pa:null,r.Y),o.K){nu(r.i,o);var a=o,c=r.L;c&&a.setTimeout(c),a.B&&(ts(a),Gn(a)),r.g=o}else gu(r);0<n.j.length&&us(n)}else u[0]!="stop"&&u[0]!="close"||Dt(n,7);else n.H==3&&(u[0]=="stop"||u[0]=="close"?u[0]=="stop"?Dt(n,7):ho(n):u[0]!="noop"&&n.h&&n.h.Aa(u),n.A=0)}}jn(4)}catch{}}function Pm(t){if(t.Z&&typeof t.Z=="function")return t.Z();if(typeof Map<"u"&&t instanceof Map||typeof Set<"u"&&t instanceof Set)return Array.from(t.values());if(typeof t=="string")return t.split("");if(jr(t)){for(var e=[],n=t.length,r=0;r<n;r++)e.push(t[r]);return e}e=[],n=0;for(r in t)e[n++]=t[r];return e}function Sm(t){if(t.ta&&typeof t.ta=="function")return t.ta();if(!t.Z||typeof t.Z!="function"){if(typeof Map<"u"&&t instanceof Map)return Array.from(t.keys());if(!(typeof Set<"u"&&t instanceof Set)){if(jr(t)||typeof t=="string"){var e=[];t=t.length;for(var n=0;n<t;n++)e.push(n);return e}e=[],n=0;for(const r in t)e[n++]=r;return e}}}function Wc(t,e){if(t.forEach&&typeof t.forEach=="function")t.forEach(e,void 0);else if(jr(t)||typeof t=="string")Array.prototype.forEach.call(t,e,void 0);else for(var n=Sm(t),r=Pm(t),s=r.length,i=0;i<s;i++)e.call(void 0,r[i],n&&n[i],t)}var Gc=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$");function Cm(t,e){if(t){t=t.split("&");for(var n=0;n<t.length;n++){var r=t[n].indexOf("="),s=null;if(0<=r){var i=t[n].substring(0,r);s=t[n].substring(r+1)}else i=t[n];e(i,s?decodeURIComponent(s.replace(/\+/g," ")):"")}}}function Nt(t){if(this.g=this.s=this.j="",this.m=null,this.o=this.l="",this.h=!1,t instanceof Nt){this.h=t.h,ns(this,t.j),this.s=t.s,this.g=t.g,rs(this,t.m),this.l=t.l;var e=t.i,n=new Xn;n.i=e.i,e.g&&(n.g=new Map(e.g),n.h=e.h),Kc(this,n),this.o=t.o}else t&&(e=String(t).match(Gc))?(this.h=!1,ns(this,e[1]||"",!0),this.s=Qn(e[2]||""),this.g=Qn(e[3]||"",!0),rs(this,e[4]),this.l=Qn(e[5]||"",!0),Kc(this,e[6]||"",!0),this.o=Qn(e[7]||"")):(this.h=!1,this.i=new Xn(null,this.h))}Nt.prototype.toString=function(){var t=[],e=this.j;e&&t.push(Yn(e,Qc,!0),":");var n=this.g;return(n||e=="file")&&(t.push("//"),(e=this.s)&&t.push(Yn(e,Qc,!0),"@"),t.push(encodeURIComponent(String(n)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),n=this.m,n!=null&&t.push(":",String(n))),(n=this.l)&&(this.g&&n.charAt(0)!="/"&&t.push("/"),t.push(Yn(n,n.charAt(0)=="/"?Nm:km,!0))),(n=this.i.toString())&&t.push("?",n),(n=this.o)&&t.push("#",Yn(n,Om)),t.join("")};function Qe(t){return new Nt(t)}function ns(t,e,n){t.j=n?Qn(e,!0):e,t.j&&(t.j=t.j.replace(/:$/,""))}function rs(t,e){if(e){if(e=Number(e),isNaN(e)||0>e)throw Error("Bad port number "+e);t.m=e}else t.m=null}function Kc(t,e,n){e instanceof Xn?(t.i=e,Vm(t.i,t.h)):(n||(e=Yn(e,Dm)),t.i=new Xn(e,t.h))}function q(t,e,n){t.i.set(e,n)}function ss(t){return q(t,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)),t}function Qn(t,e){return t?e?decodeURI(t.replace(/%25/g,"%2525")):decodeURIComponent(t):""}function Yn(t,e,n){return typeof t=="string"?(t=encodeURI(t).replace(e,bm),n&&(t=t.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),t):null}function bm(t){return t=t.charCodeAt(0),"%"+(t>>4&15).toString(16)+(t&15).toString(16)}var Qc=/[#\/\?@]/g,km=/[#\?:]/g,Nm=/[#\?]/g,Dm=/[#\?@]/g,Om=/#/g;function Xn(t,e){this.h=this.g=null,this.i=t||null,this.j=!!e}function dt(t){t.g||(t.g=new Map,t.h=0,t.i&&Cm(t.i,function(e,n){t.add(decodeURIComponent(e.replace(/\+/g," ")),n)}))}y=Xn.prototype,y.add=function(t,e){dt(this),this.i=null,t=Yt(this,t);var n=this.g.get(t);return n||this.g.set(t,n=[]),n.push(e),this.h+=1,this};function Yc(t,e){dt(t),e=Yt(t,e),t.g.has(e)&&(t.i=null,t.h-=t.g.get(e).length,t.g.delete(e))}function Xc(t,e){return dt(t),e=Yt(t,e),t.g.has(e)}y.forEach=function(t,e){dt(this),this.g.forEach(function(n,r){n.forEach(function(s){t.call(e,s,r,this)},this)},this)},y.ta=function(){dt(this);const t=Array.from(this.g.values()),e=Array.from(this.g.keys()),n=[];for(let r=0;r<e.length;r++){const s=t[r];for(let i=0;i<s.length;i++)n.push(e[r])}return n},y.Z=function(t){dt(this);let e=[];if(typeof t=="string")Xc(this,t)&&(e=e.concat(this.g.get(Yt(this,t))));else{t=Array.from(this.g.values());for(let n=0;n<t.length;n++)e=e.concat(t[n])}return e},y.set=function(t,e){return dt(this),this.i=null,t=Yt(this,t),Xc(this,t)&&(this.h-=this.g.get(t).length),this.g.set(t,[e]),this.h+=1,this},y.get=function(t,e){return t?(t=this.Z(t),0<t.length?String(t[0]):e):e};function Jc(t,e,n){Yc(t,e),0<n.length&&(t.i=null,t.g.set(Yt(t,e),Oi(n)),t.h+=n.length)}y.toString=function(){if(this.i)return this.i;if(!this.g)return"";const t=[],e=Array.from(this.g.keys());for(var n=0;n<e.length;n++){var r=e[n];const i=encodeURIComponent(String(r)),o=this.Z(r);for(r=0;r<o.length;r++){var s=i;o[r]!==""&&(s+="="+encodeURIComponent(String(o[r]))),t.push(s)}}return this.i=t.join("&")};function Yt(t,e){return e=String(e),t.j&&(e=e.toLowerCase()),e}function Vm(t,e){e&&!t.j&&(dt(t),t.i=null,t.g.forEach(function(n,r){var s=r.toLowerCase();r!=s&&(Yc(this,r),Jc(this,s,n))},t)),t.j=e}var Lm=class{constructor(t,e){this.g=t,this.map=e}};function Zc(t){this.l=t||Mm,R.PerformanceNavigationTiming?(t=R.performance.getEntriesByType("navigation"),t=0<t.length&&(t[0].nextHopProtocol=="hq"||t[0].nextHopProtocol=="h2")):t=!!(R.g&&R.g.Ka&&R.g.Ka()&&R.g.Ka().dc),this.j=t?this.l:1,this.g=null,1<this.j&&(this.g=new Set),this.h=null,this.i=[]}var Mm=10;function eu(t){return t.h?!0:t.g?t.g.size>=t.j:!1}function tu(t){return t.h?1:t.g?t.g.size:0}function ao(t,e){return t.h?t.h==e:t.g?t.g.has(e):!1}function co(t,e){t.g?t.g.add(e):t.h=e}function nu(t,e){t.h&&t.h==e?t.h=null:t.g&&t.g.has(e)&&t.g.delete(e)}Zc.prototype.cancel=function(){if(this.i=ru(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(const t of this.g.values())t.cancel();this.g.clear()}};function ru(t){if(t.h!=null)return t.i.concat(t.h.F);if(t.g!=null&&t.g.size!==0){let e=t.i;for(const n of t.g.values())e=e.concat(n.F);return e}return Oi(t.i)}var Um=class{stringify(t){return R.JSON.stringify(t,void 0)}parse(t){return R.JSON.parse(t,void 0)}};function xm(){this.g=new Um}function Fm(t,e,n){const r=n||"";try{Wc(t,function(s,i){let o=s;Mn(s)&&(o=Yi(s)),e.push(r+i+"="+encodeURIComponent(o))})}catch(s){throw e.push(r+"type="+encodeURIComponent("_badmap")),s}}function Bm(t,e){const n=new Yr;if(R.Image){const r=new Image;r.onload=zr(is,n,r,"TestLoadImage: loaded",!0,e),r.onerror=zr(is,n,r,"TestLoadImage: error",!1,e),r.onabort=zr(is,n,r,"TestLoadImage: abort",!1,e),r.ontimeout=zr(is,n,r,"TestLoadImage: timeout",!1,e),R.setTimeout(function(){r.ontimeout&&r.ontimeout()},1e4),r.src=t}else e(!1)}function is(t,e,n,r,s){try{e.onload=null,e.onerror=null,e.onabort=null,e.ontimeout=null,s(r)}catch{}}function Jn(t){this.l=t.ec||null,this.j=t.ob||!1}Y(Jn,eo),Jn.prototype.g=function(){return new os(this.l,this.j)},Jn.prototype.i=function(t){return function(){return t}}({});function os(t,e){X.call(this),this.F=t,this.u=e,this.m=void 0,this.readyState=uo,this.status=0,this.responseType=this.responseText=this.response=this.statusText="",this.onreadystatechange=null,this.v=new Headers,this.h=null,this.C="GET",this.B="",this.g=!1,this.A=this.j=this.l=null}Y(os,X);var uo=0;y=os.prototype,y.open=function(t,e){if(this.readyState!=uo)throw this.abort(),Error("Error reopening a connection");this.C=t,this.B=e,this.readyState=1,er(this)},y.send=function(t){if(this.readyState!=1)throw this.abort(),Error("need to call open() first. ");this.g=!0;const e={headers:this.v,method:this.C,credentials:this.m,cache:void 0};t&&(e.body=t),(this.F||R).fetch(new Request(this.B,e)).then(this.$a.bind(this),this.ka.bind(this))},y.abort=function(){this.response=this.responseText="",this.v=new Headers,this.status=0,this.j&&this.j.cancel("Request was aborted.").catch(()=>{}),1<=this.readyState&&this.g&&this.readyState!=4&&(this.g=!1,Zn(this)),this.readyState=uo},y.$a=function(t){if(this.g&&(this.l=t,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=t.headers,this.readyState=2,er(this)),this.g&&(this.readyState=3,er(this),this.g)))if(this.responseType==="arraybuffer")t.arrayBuffer().then(this.Ya.bind(this),this.ka.bind(this));else if(typeof R.ReadableStream<"u"&&"body"in t){if(this.j=t.body.getReader(),this.u){if(this.responseType)throw Error('responseType must be empty for "streamBinaryChunks" mode responses.');this.response=[]}else this.response=this.responseText="",this.A=new TextDecoder;su(this)}else t.text().then(this.Za.bind(this),this.ka.bind(this))};function su(t){t.j.read().then(t.Xa.bind(t)).catch(t.ka.bind(t))}y.Xa=function(t){if(this.g){if(this.u&&t.value)this.response.push(t.value);else if(!this.u){var e=t.value?t.value:new Uint8Array(0);(e=this.A.decode(e,{stream:!t.done}))&&(this.response=this.responseText+=e)}t.done?Zn(this):er(this),this.readyState==3&&su(this)}},y.Za=function(t){this.g&&(this.response=this.responseText=t,Zn(this))},y.Ya=function(t){this.g&&(this.response=t,Zn(this))},y.ka=function(){this.g&&Zn(this)};function Zn(t){t.readyState=4,t.l=null,t.j=null,t.A=null,er(t)}y.setRequestHeader=function(t,e){this.v.append(t,e)},y.getResponseHeader=function(t){return this.h&&this.h.get(t.toLowerCase())||""},y.getAllResponseHeaders=function(){if(!this.h)return"";const t=[],e=this.h.entries();for(var n=e.next();!n.done;)n=n.value,t.push(n[0]+": "+n[1]),n=e.next();return t.join(`\r
|
|
367
|
+
`)};function er(t){t.onreadystatechange&&t.onreadystatechange.call(t)}Object.defineProperty(os.prototype,"withCredentials",{get:function(){return this.m==="include"},set:function(t){this.m=t?"include":"same-origin"}});var qm=R.JSON.parse;function H(t){X.call(this),this.headers=new Map,this.u=t||null,this.h=!1,this.C=this.g=null,this.I="",this.m=0,this.j="",this.l=this.G=this.v=this.F=!1,this.B=0,this.A=null,this.K=iu,this.L=this.M=!1}Y(H,X);var iu="",$m=/^https?$/i,jm=["POST","PUT"];y=H.prototype,y.Oa=function(t){this.M=t},y.ha=function(t,e,n,r){if(this.g)throw Error("[goog.net.XhrIo] Object is active with another request="+this.I+"; newUri="+t);e=e?e.toUpperCase():"GET",this.I=t,this.j="",this.m=0,this.F=!1,this.h=!0,this.g=this.u?this.u.g():ro.g(),this.C=this.u?Fc(this.u):Fc(ro),this.g.onreadystatechange=oe(this.La,this);try{this.G=!0,this.g.open(e,String(t),!0),this.G=!1}catch(i){ou(this,i);return}if(t=n||"",n=new Map(this.headers),r)if(Object.getPrototypeOf(r)===Object.prototype)for(var s in r)n.set(s,r[s]);else if(typeof r.keys=="function"&&typeof r.get=="function")for(const i of r.keys())n.set(i,r.get(i));else throw Error("Unknown input type for opt_headers: "+String(r));r=Array.from(n.keys()).find(i=>i.toLowerCase()=="content-type"),s=R.FormData&&t instanceof R.FormData,!(0<=pc(jm,e))||r||s||n.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8");for(const[i,o]of n)this.g.setRequestHeader(i,o);this.K&&(this.g.responseType=this.K),"withCredentials"in this.g&&this.g.withCredentials!==this.M&&(this.g.withCredentials=this.M);try{uu(this),0<this.B&&((this.L=zm(this.g))?(this.g.timeout=this.B,this.g.ontimeout=oe(this.ua,this)):this.A=Zi(this.ua,this.B,this)),this.v=!0,this.g.send(t),this.v=!1}catch(i){ou(this,i)}};function zm(t){return Kt&&typeof t.timeout=="number"&&t.ontimeout!==void 0}y.ua=function(){typeof Ni<"u"&&this.g&&(this.j="Timed out after "+this.B+"ms, aborting",this.m=8,Z(this,"timeout"),this.abort(8))};function ou(t,e){t.h=!1,t.g&&(t.l=!0,t.g.abort(),t.l=!1),t.j=e,t.m=5,au(t),as(t)}function au(t){t.F||(t.F=!0,Z(t,"complete"),Z(t,"error"))}y.abort=function(t){this.g&&this.h&&(this.h=!1,this.l=!0,this.g.abort(),this.l=!1,this.m=t||7,Z(this,"complete"),Z(this,"abort"),as(this))},y.N=function(){this.g&&(this.h&&(this.h=!1,this.l=!0,this.g.abort(),this.l=!1),as(this,!0)),H.$.N.call(this)},y.La=function(){this.s||(this.G||this.v||this.l?cu(this):this.kb())},y.kb=function(){cu(this)};function cu(t){if(t.h&&typeof Ni<"u"&&(!t.C[1]||Me(t)!=4||t.da()!=2)){if(t.v&&Me(t)==4)Zi(t.La,0,t);else if(Z(t,"readystatechange"),Me(t)==4){t.h=!1;try{const o=t.da();e:switch(o){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:var e=!0;break e;default:e=!1}var n;if(!(n=e)){var r;if(r=o===0){var s=String(t.I).match(Gc)[1]||null;!s&&R.self&&R.self.location&&(s=R.self.location.protocol.slice(0,-1)),r=!$m.test(s?s.toLowerCase():"")}n=r}if(n)Z(t,"complete"),Z(t,"success");else{t.m=6;try{var i=2<Me(t)?t.g.statusText:""}catch{i=""}t.j=i+" ["+t.da()+"]",au(t)}}finally{as(t)}}}}function as(t,e){if(t.g){uu(t);const n=t.g,r=t.C[0]?()=>{}:null;t.g=null,t.C=null,e||Z(t,"ready");try{n.onreadystatechange=r}catch{}}}function uu(t){t.g&&t.L&&(t.g.ontimeout=null),t.A&&(R.clearTimeout(t.A),t.A=null)}y.isActive=function(){return!!this.g};function Me(t){return t.g?t.g.readyState:0}y.da=function(){try{return 2<Me(this)?this.g.status:-1}catch{return-1}},y.ja=function(){try{return this.g?this.g.responseText:""}catch{return""}},y.Wa=function(t){if(this.g){var e=this.g.responseText;return t&&e.indexOf(t)==0&&(e=e.substring(t.length)),qm(e)}};function lu(t){try{if(!t.g)return null;if("response"in t.g)return t.g.response;switch(t.K){case iu:case"text":return t.g.responseText;case"arraybuffer":if("mozResponseArrayBuffer"in t.g)return t.g.mozResponseArrayBuffer}return null}catch{return null}}function Hm(t){const e={};t=(t.g&&2<=Me(t)&&t.g.getAllResponseHeaders()||"").split(`\r
|
|
368
|
+
`);for(let r=0;r<t.length;r++){if(Un(t[r]))continue;var n=gm(t[r]);const s=n[0];if(n=n[1],typeof n!="string")continue;n=n.trim();const i=e[s]||[];e[s]=i,i.push(n)}um(e,function(r){return r.join(", ")})}y.Ia=function(){return this.m},y.Sa=function(){return typeof this.j=="string"?this.j:String(this.j)};function hu(t){let e="";return qi(t,function(n,r){e+=r,e+=":",e+=n,e+=`\r
|
|
369
|
+
`}),e}function lo(t,e,n){e:{for(r in n){var r=!1;break e}r=!0}r||(n=hu(n),typeof t=="string"?n!=null&&encodeURIComponent(String(n)):q(t,e,n))}function tr(t,e,n){return n&&n.internalChannelParams&&n.internalChannelParams[t]||e}function du(t){this.Ga=0,this.j=[],this.l=new Yr,this.pa=this.wa=this.I=this.Y=this.g=this.Da=this.F=this.na=this.o=this.U=this.s=null,this.fb=this.W=0,this.cb=tr("failFast",!1,t),this.G=this.v=this.u=this.m=this.h=null,this.aa=!0,this.Fa=this.V=-1,this.ba=this.A=this.C=0,this.ab=tr("baseRetryDelayMs",5e3,t),this.hb=tr("retryDelaySeedMs",1e4,t),this.eb=tr("forwardChannelMaxRetries",2,t),this.xa=tr("forwardChannelRequestTimeoutMs",2e4,t),this.va=t&&t.xmlHttpFactory||void 0,this.Ha=t&&t.useFetchStreams||!1,this.L=void 0,this.J=t&&t.supportsCrossDomainXhr||!1,this.K="",this.i=new Zc(t&&t.concurrentRequestLimit),this.Ja=new xm,this.P=t&&t.fastHandshake||!1,this.O=t&&t.encodeInitMessageHeaders||!1,this.P&&this.O&&(this.O=!1),this.bb=t&&t.bc||!1,t&&t.Ea&&this.l.Ea(),t&&t.forceLongPolling&&(this.aa=!1),this.ca=!this.P&&this.aa&&t&&t.detectBufferingProxy||!1,this.qa=void 0,t&&t.longPollingTimeout&&0<t.longPollingTimeout&&(this.qa=t.longPollingTimeout),this.oa=void 0,this.S=0,this.M=!1,this.ma=this.B=null}y=du.prototype,y.ra=8,y.H=1;function ho(t){if(fu(t),t.H==3){var e=t.W++,n=Qe(t.I);if(q(n,"SID",t.K),q(n,"RID",e),q(n,"TYPE","terminate"),nr(t,n),e=new Wn(t,t.l,e),e.L=2,e.v=ss(Qe(n)),n=!1,R.navigator&&R.navigator.sendBeacon)try{n=R.navigator.sendBeacon(e.v.toString(),"")}catch{}!n&&R.Image&&(new Image().src=e.v,n=!0),n||(e.g=Iu(e.l,null),e.g.ha(e.v)),e.G=Date.now(),Gn(e)}vu(t)}function cs(t){t.g&&(po(t),t.g.cancel(),t.g=null)}function fu(t){cs(t),t.u&&(R.clearTimeout(t.u),t.u=null),ls(t),t.i.cancel(),t.m&&(typeof t.m=="number"&&R.clearTimeout(t.m),t.m=null)}function us(t){if(!eu(t.i)&&!t.m){t.m=!0;var e=t.Na;Bn||bc(),qn||(Bn(),qn=!0),Xi.add(e,t),t.C=0}}function Wm(t,e){return tu(t.i)>=t.i.j-(t.m?1:0)?!1:t.m?(t.j=e.F.concat(t.j),!0):t.H==1||t.H==2||t.C>=(t.cb?0:t.eb)?!1:(t.m=zn(oe(t.Na,t,e),Eu(t,t.C)),t.C++,!0)}y.Na=function(t){if(this.m)if(this.m=null,this.H==1){if(!t){this.W=Math.floor(1e5*Math.random()),t=this.W++;const s=new Wn(this,this.l,t);let i=this.s;if(this.U&&(i?(i=vc(i),Ic(i,this.U)):i=this.U),this.o!==null||this.O||(s.I=i,i=null),this.P)e:{for(var e=0,n=0;n<this.j.length;n++){t:{var r=this.j[n];if("__data__"in r.map&&(r=r.map.__data__,typeof r=="string")){r=r.length;break t}r=void 0}if(r===void 0)break;if(e+=r,4096<e){e=n;break e}if(e===4096||n===this.j.length-1){e=n+1;break e}}e=1e3}else e=1e3;e=mu(this,s,e),n=Qe(this.I),q(n,"RID",t),q(n,"CVER",22),this.F&&q(n,"X-HTTP-Session-Id",this.F),nr(this,n),i&&(this.O?e="headers="+encodeURIComponent(String(hu(i)))+"&"+e:this.o&&lo(n,this.o,i)),co(this.i,s),this.bb&&q(n,"TYPE","init"),this.P?(q(n,"$req",e),q(n,"SID","null"),s.aa=!0,io(s,n,null)):io(s,n,e),this.H=2}}else this.H==3&&(t?pu(this,t):this.j.length==0||eu(this.i)||pu(this))};function pu(t,e){var n;e?n=e.m:n=t.W++;const r=Qe(t.I);q(r,"SID",t.K),q(r,"RID",n),q(r,"AID",t.V),nr(t,r),t.o&&t.s&&lo(r,t.o,t.s),n=new Wn(t,t.l,n,t.C+1),t.o===null&&(n.I=t.s),e&&(t.j=e.F.concat(t.j)),e=mu(t,n,1e3),n.setTimeout(Math.round(.5*t.xa)+Math.round(.5*t.xa*Math.random())),co(t.i,n),io(n,r,e)}function nr(t,e){t.na&&qi(t.na,function(n,r){q(e,r,n)}),t.h&&Wc({},function(n,r){q(e,r,n)})}function mu(t,e,n){n=Math.min(t.j.length,n);var r=t.h?oe(t.h.Va,t.h,t):null;e:{var s=t.j;let i=-1;for(;;){const o=["count="+n];i==-1?0<n?(i=s[0].g,o.push("ofs="+i)):i=0:o.push("ofs="+i);let a=!0;for(let c=0;c<n;c++){let u=s[c].g;const l=s[c].map;if(u-=i,0>u)i=Math.max(0,s[c].g-100),a=!1;else try{Fm(l,o,"req"+u+"_")}catch{r&&r(l)}}if(a){r=o.join("&");break e}}}return t=t.j.splice(0,n),e.F=t,r}function gu(t){if(!t.g&&!t.u){t.ba=1;var e=t.Ma;Bn||bc(),qn||(Bn(),qn=!0),Xi.add(e,t),t.A=0}}function fo(t){return t.g||t.u||3<=t.A?!1:(t.ba++,t.u=zn(oe(t.Ma,t),Eu(t,t.A)),t.A++,!0)}y.Ma=function(){if(this.u=null,_u(this),this.ca&&!(this.M||this.g==null||0>=this.S)){var t=2*this.S;this.l.info("BP detection timer enabled: "+t),this.B=zn(oe(this.jb,this),t)}},y.jb=function(){this.B&&(this.B=null,this.l.info("BP detection timeout reached."),this.l.info("Buffering proxy detected and switch to long-polling!"),this.G=!1,this.M=!0,fe(10),cs(this),_u(this))};function po(t){t.B!=null&&(R.clearTimeout(t.B),t.B=null)}function _u(t){t.g=new Wn(t,t.l,"rpc",t.ba),t.o===null&&(t.g.I=t.s),t.g.O=0;var e=Qe(t.wa);q(e,"RID","rpc"),q(e,"SID",t.K),q(e,"AID",t.V),q(e,"CI",t.G?"0":"1"),!t.G&&t.qa&&q(e,"TO",t.qa),q(e,"TYPE","xmlhttp"),nr(t,e),t.o&&t.s&&lo(e,t.o,t.s),t.L&&t.g.setTimeout(t.L);var n=t.g;t=t.pa,n.L=1,n.v=ss(Qe(e)),n.s=null,n.S=!0,$c(n,t)}y.ib=function(){this.v!=null&&(this.v=null,cs(this),fo(this),fe(19))};function ls(t){t.v!=null&&(R.clearTimeout(t.v),t.v=null)}function yu(t,e){var n=null;if(t.g==e){ls(t),po(t),t.g=null;var r=2}else if(ao(t.i,e))n=e.F,nu(t.i,e),r=1;else return;if(t.H!=0){if(e.i)if(r==1){n=e.s?e.s.length:0,e=Date.now()-e.G;var s=t.C;r=Xr(),Z(r,new Uc(r,n)),us(t)}else gu(t);else if(s=e.o,s==3||s==0&&0<e.ca||!(r==1&&Wm(t,e)||r==2&&fo(t)))switch(n&&0<n.length&&(e=t.i,e.i=e.i.concat(n)),s){case 1:Dt(t,5);break;case 4:Dt(t,10);break;case 3:Dt(t,6);break;default:Dt(t,2)}}}function Eu(t,e){let n=t.ab+Math.floor(Math.random()*t.hb);return t.isActive()||(n*=2),n*e}function Dt(t,e){if(t.l.info("Error code "+e),e==2){var n=null;t.h&&(n=null);var r=oe(t.pb,t);n||(n=new Nt("//www.google.com/images/cleardot.gif"),R.location&&R.location.protocol=="http"||ns(n,"https"),ss(n)),Bm(n.toString(),r)}else fe(2);t.H=0,t.h&&t.h.za(e),vu(t),fu(t)}y.pb=function(t){t?(this.l.info("Successfully pinged google.com"),fe(2)):(this.l.info("Failed to ping google.com"),fe(1))};function vu(t){if(t.H=0,t.ma=[],t.h){const e=ru(t.i);(e.length!=0||t.j.length!=0)&&(mc(t.ma,e),mc(t.ma,t.j),t.i.i.length=0,Oi(t.j),t.j.length=0),t.h.ya()}}function Tu(t,e,n){var r=n instanceof Nt?Qe(n):new Nt(n);if(r.g!="")e&&(r.g=e+"."+r.g),rs(r,r.m);else{var s=R.location;r=s.protocol,e=e?e+"."+s.hostname:s.hostname,s=+s.port;var i=new Nt(null);r&&ns(i,r),e&&(i.g=e),s&&rs(i,s),n&&(i.l=n),r=i}return n=t.F,e=t.Da,n&&e&&q(r,n,e),q(r,"VER",t.ra),nr(t,r),r}function Iu(t,e,n){if(e&&!t.J)throw Error("Can't create secondary domain capable XhrIo object.");return e=n&&t.Ha&&!t.va?new H(new Jn({ob:!0})):new H(t.va),e.Oa(t.J),e}y.isActive=function(){return!!this.h&&this.h.isActive(this)};function wu(){}y=wu.prototype,y.Ba=function(){},y.Aa=function(){},y.za=function(){},y.ya=function(){},y.isActive=function(){return!0},y.Va=function(){};function hs(){if(Kt&&!(10<=Number(im)))throw Error("Environmental error: no available transport.")}hs.prototype.g=function(t,e){return new ve(t,e)};function ve(t,e){X.call(this),this.g=new du(e),this.l=t,this.h=e&&e.messageUrlParams||null,t=e&&e.messageHeaders||null,e&&e.clientProtocolHeaderRequired&&(t?t["X-Client-Protocol"]="webchannel":t={"X-Client-Protocol":"webchannel"}),this.g.s=t,t=e&&e.initMessageHeaders||null,e&&e.messageContentType&&(t?t["X-WebChannel-Content-Type"]=e.messageContentType:t={"X-WebChannel-Content-Type":e.messageContentType}),e&&e.Ca&&(t?t["X-WebChannel-Client-Profile"]=e.Ca:t={"X-WebChannel-Client-Profile":e.Ca}),this.g.U=t,(t=e&&e.cc)&&!Un(t)&&(this.g.o=t),this.A=e&&e.supportsCrossDomainXhr||!1,this.v=e&&e.sendRawJson||!1,(e=e&&e.httpSessionIdParam)&&!Un(e)&&(this.g.F=e,t=this.h,t!==null&&e in t&&(t=this.h,e in t&&delete t[e])),this.j=new Xt(this)}Y(ve,X),ve.prototype.m=function(){this.g.h=this.j,this.A&&(this.g.J=!0);var t=this.g,e=this.l,n=this.h||void 0;fe(0),t.Y=e,t.na=n||{},t.G=t.aa,t.I=Tu(t,null,t.Y),us(t)},ve.prototype.close=function(){ho(this.g)},ve.prototype.u=function(t){var e=this.g;if(typeof t=="string"){var n={};n.__data__=t,t=n}else this.v&&(n={},n.__data__=Yi(t),t=n);e.j.push(new Lm(e.fb++,t)),e.H==3&&us(e)},ve.prototype.N=function(){this.g.h=null,delete this.j,ho(this.g),delete this.g,ve.$.N.call(this)};function Au(t){to.call(this),t.__headers__&&(this.headers=t.__headers__,this.statusCode=t.__status__,delete t.__headers__,delete t.__status__);var e=t.__sm__;if(e){e:{for(const n in e){t=n;break e}t=void 0}(this.i=t)&&(t=this.i,e=e!==null&&t in e?e[t]:void 0),this.data=e}else this.data=t}Y(Au,to);function Ru(){no.call(this),this.status=1}Y(Ru,no);function Xt(t){this.g=t}Y(Xt,wu),Xt.prototype.Ba=function(){Z(this.g,"a")},Xt.prototype.Aa=function(t){Z(this.g,new Au(t))},Xt.prototype.za=function(t){Z(this.g,new Ru)},Xt.prototype.ya=function(){Z(this.g,"b")};function Gm(){this.blockSize=-1}function ke(){this.blockSize=-1,this.blockSize=64,this.g=Array(4),this.m=Array(this.blockSize),this.i=this.h=0,this.reset()}Y(ke,Gm),ke.prototype.reset=function(){this.g[0]=1732584193,this.g[1]=4023233417,this.g[2]=2562383102,this.g[3]=271733878,this.i=this.h=0};function mo(t,e,n){n||(n=0);var r=Array(16);if(typeof e=="string")for(var s=0;16>s;++s)r[s]=e.charCodeAt(n++)|e.charCodeAt(n++)<<8|e.charCodeAt(n++)<<16|e.charCodeAt(n++)<<24;else for(s=0;16>s;++s)r[s]=e[n++]|e[n++]<<8|e[n++]<<16|e[n++]<<24;e=t.g[0],n=t.g[1],s=t.g[2];var i=t.g[3],o=e+(i^n&(s^i))+r[0]+3614090360&4294967295;e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[1]+3905402710&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[2]+606105819&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[3]+3250441966&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(i^n&(s^i))+r[4]+4118548399&4294967295,e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[5]+1200080426&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[6]+2821735955&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[7]+4249261313&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(i^n&(s^i))+r[8]+1770035416&4294967295,e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[9]+2336552879&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[10]+4294925233&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[11]+2304563134&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(i^n&(s^i))+r[12]+1804603682&4294967295,e=n+(o<<7&4294967295|o>>>25),o=i+(s^e&(n^s))+r[13]+4254626195&4294967295,i=e+(o<<12&4294967295|o>>>20),o=s+(n^i&(e^n))+r[14]+2792965006&4294967295,s=i+(o<<17&4294967295|o>>>15),o=n+(e^s&(i^e))+r[15]+1236535329&4294967295,n=s+(o<<22&4294967295|o>>>10),o=e+(s^i&(n^s))+r[1]+4129170786&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[6]+3225465664&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[11]+643717713&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[0]+3921069994&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(s^i&(n^s))+r[5]+3593408605&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[10]+38016083&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[15]+3634488961&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[4]+3889429448&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(s^i&(n^s))+r[9]+568446438&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[14]+3275163606&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[3]+4107603335&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[8]+1163531501&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(s^i&(n^s))+r[13]+2850285829&4294967295,e=n+(o<<5&4294967295|o>>>27),o=i+(n^s&(e^n))+r[2]+4243563512&4294967295,i=e+(o<<9&4294967295|o>>>23),o=s+(e^n&(i^e))+r[7]+1735328473&4294967295,s=i+(o<<14&4294967295|o>>>18),o=n+(i^e&(s^i))+r[12]+2368359562&4294967295,n=s+(o<<20&4294967295|o>>>12),o=e+(n^s^i)+r[5]+4294588738&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[8]+2272392833&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[11]+1839030562&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[14]+4259657740&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(n^s^i)+r[1]+2763975236&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[4]+1272893353&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[7]+4139469664&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[10]+3200236656&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(n^s^i)+r[13]+681279174&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[0]+3936430074&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[3]+3572445317&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[6]+76029189&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(n^s^i)+r[9]+3654602809&4294967295,e=n+(o<<4&4294967295|o>>>28),o=i+(e^n^s)+r[12]+3873151461&4294967295,i=e+(o<<11&4294967295|o>>>21),o=s+(i^e^n)+r[15]+530742520&4294967295,s=i+(o<<16&4294967295|o>>>16),o=n+(s^i^e)+r[2]+3299628645&4294967295,n=s+(o<<23&4294967295|o>>>9),o=e+(s^(n|~i))+r[0]+4096336452&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[7]+1126891415&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[14]+2878612391&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[5]+4237533241&4294967295,n=s+(o<<21&4294967295|o>>>11),o=e+(s^(n|~i))+r[12]+1700485571&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[3]+2399980690&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[10]+4293915773&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[1]+2240044497&4294967295,n=s+(o<<21&4294967295|o>>>11),o=e+(s^(n|~i))+r[8]+1873313359&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[15]+4264355552&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[6]+2734768916&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[13]+1309151649&4294967295,n=s+(o<<21&4294967295|o>>>11),o=e+(s^(n|~i))+r[4]+4149444226&4294967295,e=n+(o<<6&4294967295|o>>>26),o=i+(n^(e|~s))+r[11]+3174756917&4294967295,i=e+(o<<10&4294967295|o>>>22),o=s+(e^(i|~n))+r[2]+718787259&4294967295,s=i+(o<<15&4294967295|o>>>17),o=n+(i^(s|~e))+r[9]+3951481745&4294967295,t.g[0]=t.g[0]+e&4294967295,t.g[1]=t.g[1]+(s+(o<<21&4294967295|o>>>11))&4294967295,t.g[2]=t.g[2]+s&4294967295,t.g[3]=t.g[3]+i&4294967295}ke.prototype.j=function(t,e){e===void 0&&(e=t.length);for(var n=e-this.blockSize,r=this.m,s=this.h,i=0;i<e;){if(s==0)for(;i<=n;)mo(this,t,i),i+=this.blockSize;if(typeof t=="string"){for(;i<e;)if(r[s++]=t.charCodeAt(i++),s==this.blockSize){mo(this,r),s=0;break}}else for(;i<e;)if(r[s++]=t[i++],s==this.blockSize){mo(this,r),s=0;break}}this.h=s,this.i+=e},ke.prototype.l=function(){var t=Array((56>this.h?this.blockSize:2*this.blockSize)-this.h);t[0]=128;for(var e=1;e<t.length-8;++e)t[e]=0;var n=8*this.i;for(e=t.length-8;e<t.length;++e)t[e]=n&255,n/=256;for(this.j(t),t=Array(16),e=n=0;4>e;++e)for(var r=0;32>r;r+=8)t[n++]=this.g[e]>>>r&255;return t};function x(t,e){this.h=e;for(var n=[],r=!0,s=t.length-1;0<=s;s--){var i=t[s]|0;r&&i==e||(n[s]=i,r=!1)}this.g=n}var Km={};function go(t){return-128<=t&&128>t?nm(t,function(e){return new x([e|0],0>e?-1:0)}):new x([t|0],0>t?-1:0)}function Ue(t){if(isNaN(t)||!isFinite(t))return Jt;if(0>t)return ee(Ue(-t));for(var e=[],n=1,r=0;t>=n;r++)e[r]=t/n|0,n*=_o;return new x(e,0)}function Pu(t,e){if(t.length==0)throw Error("number format error: empty string");if(e=e||10,2>e||36<e)throw Error("radix out of range: "+e);if(t.charAt(0)=="-")return ee(Pu(t.substring(1),e));if(0<=t.indexOf("-"))throw Error('number format error: interior "-" character');for(var n=Ue(Math.pow(e,8)),r=Jt,s=0;s<t.length;s+=8){var i=Math.min(8,t.length-s),o=parseInt(t.substring(s,s+i),e);8>i?(i=Ue(Math.pow(e,i)),r=r.R(i).add(Ue(o))):(r=r.R(n),r=r.add(Ue(o)))}return r}var _o=4294967296,Jt=go(0),yo=go(1),Su=go(16777216);y=x.prototype,y.ea=function(){if(Re(this))return-ee(this).ea();for(var t=0,e=1,n=0;n<this.g.length;n++){var r=this.D(n);t+=(0<=r?r:_o+r)*e,e*=_o}return t},y.toString=function(t){if(t=t||10,2>t||36<t)throw Error("radix out of range: "+t);if(Ye(this))return"0";if(Re(this))return"-"+ee(this).toString(t);for(var e=Ue(Math.pow(t,6)),n=this,r="";;){var s=ps(n,e).g;n=ds(n,s.R(e));var i=((0<n.g.length?n.g[0]:n.h)>>>0).toString(t);if(n=s,Ye(n))return i+r;for(;6>i.length;)i="0"+i;r=i+r}},y.D=function(t){return 0>t?0:t<this.g.length?this.g[t]:this.h};function Ye(t){if(t.h!=0)return!1;for(var e=0;e<t.g.length;e++)if(t.g[e]!=0)return!1;return!0}function Re(t){return t.h==-1}y.X=function(t){return t=ds(this,t),Re(t)?-1:Ye(t)?0:1};function ee(t){for(var e=t.g.length,n=[],r=0;r<e;r++)n[r]=~t.g[r];return new x(n,~t.h).add(yo)}y.abs=function(){return Re(this)?ee(this):this},y.add=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0,s=0;s<=e;s++){var i=r+(this.D(s)&65535)+(t.D(s)&65535),o=(i>>>16)+(this.D(s)>>>16)+(t.D(s)>>>16);r=o>>>16,i&=65535,o&=65535,n[s]=o<<16|i}return new x(n,n[n.length-1]&-2147483648?-1:0)};function ds(t,e){return t.add(ee(e))}y.R=function(t){if(Ye(this)||Ye(t))return Jt;if(Re(this))return Re(t)?ee(this).R(ee(t)):ee(ee(this).R(t));if(Re(t))return ee(this.R(ee(t)));if(0>this.X(Su)&&0>t.X(Su))return Ue(this.ea()*t.ea());for(var e=this.g.length+t.g.length,n=[],r=0;r<2*e;r++)n[r]=0;for(r=0;r<this.g.length;r++)for(var s=0;s<t.g.length;s++){var i=this.D(r)>>>16,o=this.D(r)&65535,a=t.D(s)>>>16,c=t.D(s)&65535;n[2*r+2*s]+=o*c,fs(n,2*r+2*s),n[2*r+2*s+1]+=i*c,fs(n,2*r+2*s+1),n[2*r+2*s+1]+=o*a,fs(n,2*r+2*s+1),n[2*r+2*s+2]+=i*a,fs(n,2*r+2*s+2)}for(r=0;r<e;r++)n[r]=n[2*r+1]<<16|n[2*r];for(r=e;r<2*e;r++)n[r]=0;return new x(n,0)};function fs(t,e){for(;(t[e]&65535)!=t[e];)t[e+1]+=t[e]>>>16,t[e]&=65535,e++}function rr(t,e){this.g=t,this.h=e}function ps(t,e){if(Ye(e))throw Error("division by zero");if(Ye(t))return new rr(Jt,Jt);if(Re(t))return e=ps(ee(t),e),new rr(ee(e.g),ee(e.h));if(Re(e))return e=ps(t,ee(e)),new rr(ee(e.g),e.h);if(30<t.g.length){if(Re(t)||Re(e))throw Error("slowDivide_ only works with positive integers.");for(var n=yo,r=e;0>=r.X(t);)n=Cu(n),r=Cu(r);var s=Zt(n,1),i=Zt(r,1);for(r=Zt(r,2),n=Zt(n,2);!Ye(r);){var o=i.add(r);0>=o.X(t)&&(s=s.add(n),i=o),r=Zt(r,1),n=Zt(n,1)}return e=ds(t,s.R(e)),new rr(s,e)}for(s=Jt;0<=t.X(e);){for(n=Math.max(1,Math.floor(t.ea()/e.ea())),r=Math.ceil(Math.log(n)/Math.LN2),r=48>=r?1:Math.pow(2,r-48),i=Ue(n),o=i.R(e);Re(o)||0<o.X(t);)n-=r,i=Ue(n),o=i.R(e);Ye(i)&&(i=yo),s=s.add(i),t=ds(t,o)}return new rr(s,t)}y.gb=function(t){return ps(this,t).h},y.and=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0;r<e;r++)n[r]=this.D(r)&t.D(r);return new x(n,this.h&t.h)},y.or=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0;r<e;r++)n[r]=this.D(r)|t.D(r);return new x(n,this.h|t.h)},y.xor=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],r=0;r<e;r++)n[r]=this.D(r)^t.D(r);return new x(n,this.h^t.h)};function Cu(t){for(var e=t.g.length+1,n=[],r=0;r<e;r++)n[r]=t.D(r)<<1|t.D(r-1)>>>31;return new x(n,t.h)}function Zt(t,e){var n=e>>5;e%=32;for(var r=t.g.length-n,s=[],i=0;i<r;i++)s[i]=0<e?t.D(i+n)>>>e|t.D(i+n+1)<<32-e:t.D(i+n);return new x(s,t.h)}hs.prototype.createWebChannel=hs.prototype.g,ve.prototype.send=ve.prototype.u,ve.prototype.open=ve.prototype.m,ve.prototype.close=ve.prototype.close,Jr.NO_ERROR=0,Jr.TIMEOUT=8,Jr.HTTP_ERROR=6,xc.COMPLETE="complete",Bc.EventType=Hn,Hn.OPEN="a",Hn.CLOSE="b",Hn.ERROR="c",Hn.MESSAGE="d",X.prototype.listen=X.prototype.O,H.prototype.listenOnce=H.prototype.P,H.prototype.getLastError=H.prototype.Sa,H.prototype.getLastErrorCode=H.prototype.Ia,H.prototype.getStatus=H.prototype.da,H.prototype.getResponseJson=H.prototype.Wa,H.prototype.getResponseText=H.prototype.ja,H.prototype.send=H.prototype.ha,H.prototype.setWithCredentials=H.prototype.Oa,ke.prototype.digest=ke.prototype.l,ke.prototype.reset=ke.prototype.reset,ke.prototype.update=ke.prototype.j,x.prototype.add=x.prototype.add,x.prototype.multiply=x.prototype.R,x.prototype.modulo=x.prototype.gb,x.prototype.compare=x.prototype.X,x.prototype.toNumber=x.prototype.ea,x.prototype.toString=x.prototype.toString,x.prototype.getBits=x.prototype.D,x.fromNumber=Ue,x.fromString=Pu;var Qm=function(){return new hs},Ym=function(){return Xr()},Eo=Jr,Xm=xc,Jm=bt,bu={xb:0,Ab:1,Bb:2,Ub:3,Zb:4,Wb:5,Xb:6,Vb:7,Tb:8,Yb:9,PROXY:10,NOPROXY:11,Rb:12,Nb:13,Ob:14,Mb:15,Pb:16,Qb:17,tb:18,sb:19,ub:20},Zm=Jn,ms=Bc,eg=H,tg=ke,en=x;const ku="@firebase/firestore";/**
|
|
370
370
|
* @license
|
|
371
371
|
* Copyright 2017 Google LLC
|
|
372
372
|
*
|
|
@@ -381,7 +381,7 @@
|
|
|
381
381
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
382
382
|
* See the License for the specific language governing permissions and
|
|
383
383
|
* limitations under the License.
|
|
384
|
-
*/class
|
|
384
|
+
*/class ce{constructor(e){this.uid=e}isAuthenticated(){return this.uid!=null}toKey(){return this.isAuthenticated()?"uid:"+this.uid:"anonymous-user"}isEqual(e){return e.uid===this.uid}}ce.UNAUTHENTICATED=new ce(null),ce.GOOGLE_CREDENTIALS=new ce("google-credentials-uid"),ce.FIRST_PARTY=new ce("first-party-uid"),ce.MOCK_USER=new ce("mock-user");/**
|
|
385
385
|
* @license
|
|
386
386
|
* Copyright 2017 Google LLC
|
|
387
387
|
*
|
|
@@ -396,7 +396,7 @@
|
|
|
396
396
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
397
397
|
* See the License for the specific language governing permissions and
|
|
398
398
|
* limitations under the License.
|
|
399
|
-
*/let
|
|
399
|
+
*/let tn="10.5.2";/**
|
|
400
400
|
* @license
|
|
401
401
|
* Copyright 2017 Google LLC
|
|
402
402
|
*
|
|
@@ -411,7 +411,7 @@
|
|
|
411
411
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
412
412
|
* See the License for the specific language governing permissions and
|
|
413
413
|
* limitations under the License.
|
|
414
|
-
*/const Ot=new
|
|
414
|
+
*/const Ot=new vi("@firebase/firestore");function sr(){return Ot.logLevel}function T(t,...e){if(Ot.logLevel<=D.DEBUG){const n=e.map(vo);Ot.debug(`Firestore (${tn}): ${t}`,...n)}}function Xe(t,...e){if(Ot.logLevel<=D.ERROR){const n=e.map(vo);Ot.error(`Firestore (${tn}): ${t}`,...n)}}function nn(t,...e){if(Ot.logLevel<=D.WARN){const n=e.map(vo);Ot.warn(`Firestore (${tn}): ${t}`,...n)}}function vo(t){if(typeof t=="string")return t;try{/**
|
|
415
415
|
* @license
|
|
416
416
|
* Copyright 2020 Google LLC
|
|
417
417
|
*
|
|
@@ -441,7 +441,7 @@
|
|
|
441
441
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
442
442
|
* See the License for the specific language governing permissions and
|
|
443
443
|
* limitations under the License.
|
|
444
|
-
*/function A(t="Unexpected state"){const e=`FIRESTORE (${
|
|
444
|
+
*/function A(t="Unexpected state"){const e=`FIRESTORE (${tn}) INTERNAL ASSERTION FAILED: `+t;throw Xe(e),new Error(e)}function F(t,e){t||A()}function P(t,e){return t}/**
|
|
445
445
|
* @license
|
|
446
446
|
* Copyright 2017 Google LLC
|
|
447
447
|
*
|
|
@@ -456,7 +456,7 @@
|
|
|
456
456
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
457
457
|
* See the License for the specific language governing permissions and
|
|
458
458
|
* limitations under the License.
|
|
459
|
-
*/const p={OK:"ok",CANCELLED:"cancelled",UNKNOWN:"unknown",INVALID_ARGUMENT:"invalid-argument",DEADLINE_EXCEEDED:"deadline-exceeded",NOT_FOUND:"not-found",ALREADY_EXISTS:"already-exists",PERMISSION_DENIED:"permission-denied",UNAUTHENTICATED:"unauthenticated",RESOURCE_EXHAUSTED:"resource-exhausted",FAILED_PRECONDITION:"failed-precondition",ABORTED:"aborted",OUT_OF_RANGE:"out-of-range",UNIMPLEMENTED:"unimplemented",INTERNAL:"internal",UNAVAILABLE:"unavailable",DATA_LOSS:"data-loss"};class
|
|
459
|
+
*/const p={OK:"ok",CANCELLED:"cancelled",UNKNOWN:"unknown",INVALID_ARGUMENT:"invalid-argument",DEADLINE_EXCEEDED:"deadline-exceeded",NOT_FOUND:"not-found",ALREADY_EXISTS:"already-exists",PERMISSION_DENIED:"permission-denied",UNAUTHENTICATED:"unauthenticated",RESOURCE_EXHAUSTED:"resource-exhausted",FAILED_PRECONDITION:"failed-precondition",ABORTED:"aborted",OUT_OF_RANGE:"out-of-range",UNIMPLEMENTED:"unimplemented",INTERNAL:"internal",UNAVAILABLE:"unavailable",DATA_LOSS:"data-loss"};class _ extends be{constructor(e,n){super(e,n),this.code=e,this.message=n,this.toString=()=>`${this.name}: [code=${this.code}]: ${this.message}`}}/**
|
|
460
460
|
* @license
|
|
461
461
|
* Copyright 2017 Google LLC
|
|
462
462
|
*
|
|
@@ -471,7 +471,7 @@
|
|
|
471
471
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
472
472
|
* See the License for the specific language governing permissions and
|
|
473
473
|
* limitations under the License.
|
|
474
|
-
*/class
|
|
474
|
+
*/class xe{constructor(){this.promise=new Promise((e,n)=>{this.resolve=e,this.reject=n})}}/**
|
|
475
475
|
* @license
|
|
476
476
|
* Copyright 2017 Google LLC
|
|
477
477
|
*
|
|
@@ -486,7 +486,7 @@
|
|
|
486
486
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
487
487
|
* See the License for the specific language governing permissions and
|
|
488
488
|
* limitations under the License.
|
|
489
|
-
*/class
|
|
489
|
+
*/class Nu{constructor(e,n){this.user=n,this.type="OAuth",this.headers=new Map,this.headers.set("Authorization",`Bearer ${e}`)}}class ng{getToken(){return Promise.resolve(null)}invalidateToken(){}start(e,n){e.enqueueRetryable(()=>n(ce.UNAUTHENTICATED))}shutdown(){}}class rg{constructor(e){this.token=e,this.changeListener=null}getToken(){return Promise.resolve(this.token)}invalidateToken(){}start(e,n){this.changeListener=n,e.enqueueRetryable(()=>n(this.token.user))}shutdown(){this.changeListener=null}}class sg{constructor(e){this.t=e,this.currentUser=ce.UNAUTHENTICATED,this.i=0,this.forceRefresh=!1,this.auth=null}start(e,n){let r=this.i;const s=c=>this.i!==r?(r=this.i,n(c)):Promise.resolve();let i=new xe;this.o=()=>{this.i++,this.currentUser=this.u(),i.resolve(),i=new xe,e.enqueueRetryable(()=>s(this.currentUser))};const o=()=>{const c=i;e.enqueueRetryable(async()=>{await c.promise,await s(this.currentUser)})},a=c=>{T("FirebaseAuthCredentialsProvider","Auth detected"),this.auth=c,this.auth.addAuthTokenListener(this.o),o()};this.t.onInit(c=>a(c)),setTimeout(()=>{if(!this.auth){const c=this.t.getImmediate({optional:!0});c?a(c):(T("FirebaseAuthCredentialsProvider","Auth not yet detected"),i.resolve(),i=new xe)}},0),o()}getToken(){const e=this.i,n=this.forceRefresh;return this.forceRefresh=!1,this.auth?this.auth.getToken(n).then(r=>this.i!==e?(T("FirebaseAuthCredentialsProvider","getToken aborted due to token change."),this.getToken()):r?(F(typeof r.accessToken=="string"),new Nu(r.accessToken,this.currentUser)):null):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.auth&&this.auth.removeAuthTokenListener(this.o)}u(){const e=this.auth&&this.auth.getUid();return F(e===null||typeof e=="string"),new ce(e)}}class ig{constructor(e,n,r){this.l=e,this.h=n,this.P=r,this.type="FirstParty",this.user=ce.FIRST_PARTY,this.I=new Map}T(){return this.P?this.P():null}get headers(){this.I.set("X-Goog-AuthUser",this.l);const e=this.T();return e&&this.I.set("Authorization",e),this.h&&this.I.set("X-Goog-Iam-Authorization-Token",this.h),this.I}}class og{constructor(e,n,r){this.l=e,this.h=n,this.P=r}getToken(){return Promise.resolve(new ig(this.l,this.h,this.P))}start(e,n){e.enqueueRetryable(()=>n(ce.FIRST_PARTY))}shutdown(){}invalidateToken(){}}class ag{constructor(e){this.value=e,this.type="AppCheck",this.headers=new Map,e&&e.length>0&&this.headers.set("x-firebase-appcheck",this.value)}}class cg{constructor(e){this.A=e,this.forceRefresh=!1,this.appCheck=null,this.R=null}start(e,n){const r=i=>{i.error!=null&&T("FirebaseAppCheckTokenProvider",`Error getting App Check token; using placeholder token instead. Error: ${i.error.message}`);const o=i.token!==this.R;return this.R=i.token,T("FirebaseAppCheckTokenProvider",`Received ${o?"new":"existing"} token.`),o?n(i.token):Promise.resolve()};this.o=i=>{e.enqueueRetryable(()=>r(i))};const s=i=>{T("FirebaseAppCheckTokenProvider","AppCheck detected"),this.appCheck=i,this.appCheck.addTokenListener(this.o)};this.A.onInit(i=>s(i)),setTimeout(()=>{if(!this.appCheck){const i=this.A.getImmediate({optional:!0});i?s(i):T("FirebaseAppCheckTokenProvider","AppCheck not yet detected")}},0)}getToken(){const e=this.forceRefresh;return this.forceRefresh=!1,this.appCheck?this.appCheck.getToken(e).then(n=>n?(F(typeof n.token=="string"),this.R=n.token,new ag(n.token)):null):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.appCheck&&this.appCheck.removeTokenListener(this.o)}}/**
|
|
490
490
|
* @license
|
|
491
491
|
* Copyright 2020 Google LLC
|
|
492
492
|
*
|
|
@@ -501,7 +501,7 @@
|
|
|
501
501
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
502
502
|
* See the License for the specific language governing permissions and
|
|
503
503
|
* limitations under the License.
|
|
504
|
-
*/function
|
|
504
|
+
*/function ug(t){const e=typeof self<"u"&&(self.crypto||self.msCrypto),n=new Uint8Array(t);if(e&&typeof e.getRandomValues=="function")e.getRandomValues(n);else for(let r=0;r<t;r++)n[r]=Math.floor(256*Math.random());return n}/**
|
|
505
505
|
* @license
|
|
506
506
|
* Copyright 2017 Google LLC
|
|
507
507
|
*
|
|
@@ -516,7 +516,7 @@
|
|
|
516
516
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
517
517
|
* See the License for the specific language governing permissions and
|
|
518
518
|
* limitations under the License.
|
|
519
|
-
*/class
|
|
519
|
+
*/class Du{static newId(){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=Math.floor(256/e.length)*e.length;let r="";for(;r.length<20;){const s=ug(40);for(let i=0;i<s.length;++i)r.length<20&&s[i]<n&&(r+=e.charAt(s[i]%e.length))}return r}}function L(t,e){return t<e?-1:t>e?1:0}function rn(t,e,n){return t.length===e.length&&t.every((r,s)=>n(r,e[s]))}/**
|
|
520
520
|
* @license
|
|
521
521
|
* Copyright 2017 Google LLC
|
|
522
522
|
*
|
|
@@ -531,7 +531,7 @@
|
|
|
531
531
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
532
532
|
* See the License for the specific language governing permissions and
|
|
533
533
|
* limitations under the License.
|
|
534
|
-
*/class
|
|
534
|
+
*/class Q{constructor(e,n){if(this.seconds=e,this.nanoseconds=n,n<0)throw new _(p.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+n);if(n>=1e9)throw new _(p.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+n);if(e<-62135596800)throw new _(p.INVALID_ARGUMENT,"Timestamp seconds out of range: "+e);if(e>=253402300800)throw new _(p.INVALID_ARGUMENT,"Timestamp seconds out of range: "+e)}static now(){return Q.fromMillis(Date.now())}static fromDate(e){return Q.fromMillis(e.getTime())}static fromMillis(e){const n=Math.floor(e/1e3),r=Math.floor(1e6*(e-1e3*n));return new Q(n,r)}toDate(){return new Date(this.toMillis())}toMillis(){return 1e3*this.seconds+this.nanoseconds/1e6}_compareTo(e){return this.seconds===e.seconds?L(this.nanoseconds,e.nanoseconds):L(this.seconds,e.seconds)}isEqual(e){return e.seconds===this.seconds&&e.nanoseconds===this.nanoseconds}toString(){return"Timestamp(seconds="+this.seconds+", nanoseconds="+this.nanoseconds+")"}toJSON(){return{seconds:this.seconds,nanoseconds:this.nanoseconds}}valueOf(){const e=this.seconds- -62135596800;return String(e).padStart(12,"0")+"."+String(this.nanoseconds).padStart(9,"0")}}/**
|
|
535
535
|
* @license
|
|
536
536
|
* Copyright 2017 Google LLC
|
|
537
537
|
*
|
|
@@ -546,7 +546,7 @@
|
|
|
546
546
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
547
547
|
* See the License for the specific language governing permissions and
|
|
548
548
|
* limitations under the License.
|
|
549
|
-
*/class S{constructor(e){this.timestamp=e}static fromTimestamp(e){return new S(e)}static min(){return new S(new
|
|
549
|
+
*/class S{constructor(e){this.timestamp=e}static fromTimestamp(e){return new S(e)}static min(){return new S(new Q(0,0))}static max(){return new S(new Q(253402300799,999999999))}compareTo(e){return this.timestamp._compareTo(e.timestamp)}isEqual(e){return this.timestamp.isEqual(e.timestamp)}toMicroseconds(){return 1e6*this.timestamp.seconds+this.timestamp.nanoseconds/1e3}toString(){return"SnapshotVersion("+this.timestamp.toString()+")"}toTimestamp(){return this.timestamp}}/**
|
|
550
550
|
* @license
|
|
551
551
|
* Copyright 2017 Google LLC
|
|
552
552
|
*
|
|
@@ -561,7 +561,7 @@
|
|
|
561
561
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
562
562
|
* See the License for the specific language governing permissions and
|
|
563
563
|
* limitations under the License.
|
|
564
|
-
*/class
|
|
564
|
+
*/class ir{constructor(e,n,r){n===void 0?n=0:n>e.length&&A(),r===void 0?r=e.length-n:r>e.length-n&&A(),this.segments=e,this.offset=n,this.len=r}get length(){return this.len}isEqual(e){return ir.comparator(this,e)===0}child(e){const n=this.segments.slice(this.offset,this.limit());return e instanceof ir?e.forEach(r=>{n.push(r)}):n.push(e),this.construct(n)}limit(){return this.offset+this.length}popFirst(e){return e=e===void 0?1:e,this.construct(this.segments,this.offset+e,this.length-e)}popLast(){return this.construct(this.segments,this.offset,this.length-1)}firstSegment(){return this.segments[this.offset]}lastSegment(){return this.get(this.length-1)}get(e){return this.segments[this.offset+e]}isEmpty(){return this.length===0}isPrefixOf(e){if(e.length<this.length)return!1;for(let n=0;n<this.length;n++)if(this.get(n)!==e.get(n))return!1;return!0}isImmediateParentOf(e){if(this.length+1!==e.length)return!1;for(let n=0;n<this.length;n++)if(this.get(n)!==e.get(n))return!1;return!0}forEach(e){for(let n=this.offset,r=this.limit();n<r;n++)e(this.segments[n])}toArray(){return this.segments.slice(this.offset,this.limit())}static comparator(e,n){const r=Math.min(e.length,n.length);for(let s=0;s<r;s++){const i=e.get(s),o=n.get(s);if(i<o)return-1;if(i>o)return 1}return e.length<n.length?-1:e.length>n.length?1:0}}class B extends ir{construct(e,n,r){return new B(e,n,r)}canonicalString(){return this.toArray().join("/")}toString(){return this.canonicalString()}static fromString(...e){const n=[];for(const r of e){if(r.indexOf("//")>=0)throw new _(p.INVALID_ARGUMENT,`Invalid segment (${r}). Paths must not contain // in them.`);n.push(...r.split("/").filter(s=>s.length>0))}return new B(n)}static emptyPath(){return new B([])}}const lg=/^[_a-zA-Z][_a-zA-Z0-9]*$/;class te extends ir{construct(e,n,r){return new te(e,n,r)}static isValidIdentifier(e){return lg.test(e)}canonicalString(){return this.toArray().map(e=>(e=e.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),te.isValidIdentifier(e)||(e="`"+e+"`"),e)).join(".")}toString(){return this.canonicalString()}isKeyField(){return this.length===1&&this.get(0)==="__name__"}static keyField(){return new te(["__name__"])}static fromServerFormat(e){const n=[];let r="",s=0;const i=()=>{if(r.length===0)throw new _(p.INVALID_ARGUMENT,`Invalid field path (${e}). Paths must not be empty, begin with '.', end with '.', or contain '..'`);n.push(r),r=""};let o=!1;for(;s<e.length;){const a=e[s];if(a==="\\"){if(s+1===e.length)throw new _(p.INVALID_ARGUMENT,"Path has trailing escape character: "+e);const c=e[s+1];if(c!=="\\"&&c!=="."&&c!=="`")throw new _(p.INVALID_ARGUMENT,"Path has invalid escape sequence: "+e);r+=c,s+=2}else a==="`"?(o=!o,s++):a!=="."||o?(r+=a,s++):(i(),s++)}if(i(),o)throw new _(p.INVALID_ARGUMENT,"Unterminated ` in path: "+e);return new te(n)}static emptyPath(){return new te([])}}/**
|
|
565
565
|
* @license
|
|
566
566
|
* Copyright 2017 Google LLC
|
|
567
567
|
*
|
|
@@ -576,7 +576,7 @@
|
|
|
576
576
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
577
577
|
* See the License for the specific language governing permissions and
|
|
578
578
|
* limitations under the License.
|
|
579
|
-
*/class
|
|
579
|
+
*/class I{constructor(e){this.path=e}static fromPath(e){return new I(B.fromString(e))}static fromName(e){return new I(B.fromString(e).popFirst(5))}static empty(){return new I(B.emptyPath())}get collectionGroup(){return this.path.popLast().lastSegment()}hasCollectionId(e){return this.path.length>=2&&this.path.get(this.path.length-2)===e}getCollectionGroup(){return this.path.get(this.path.length-2)}getCollectionPath(){return this.path.popLast()}isEqual(e){return e!==null&&B.comparator(this.path,e.path)===0}toString(){return this.path.toString()}static comparator(e,n){return B.comparator(e.path,n.path)}static isDocumentKey(e){return e.length%2==0}static fromSegments(e){return new I(new B(e.slice()))}}function hg(t,e){const n=t.toTimestamp().seconds,r=t.toTimestamp().nanoseconds+1,s=S.fromTimestamp(r===1e9?new Q(n+1,0):new Q(n,r));return new ft(s,I.empty(),e)}function dg(t){return new ft(t.readTime,t.key,-1)}class ft{constructor(e,n,r){this.readTime=e,this.documentKey=n,this.largestBatchId=r}static min(){return new ft(S.min(),I.empty(),-1)}static max(){return new ft(S.max(),I.empty(),-1)}}function fg(t,e){let n=t.readTime.compareTo(e.readTime);return n!==0?n:(n=I.comparator(t.documentKey,e.documentKey),n!==0?n:L(t.largestBatchId,e.largestBatchId))}/**
|
|
580
580
|
* @license
|
|
581
581
|
* Copyright 2020 Google LLC
|
|
582
582
|
*
|
|
@@ -591,7 +591,7 @@
|
|
|
591
591
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
592
592
|
* See the License for the specific language governing permissions and
|
|
593
593
|
* limitations under the License.
|
|
594
|
-
*/const
|
|
594
|
+
*/const pg="The current tab is not in the required state to perform this operation. It might be necessary to refresh the browser tab.";class mg{constructor(){this.onCommittedListeners=[]}addOnCommittedListener(e){this.onCommittedListeners.push(e)}raiseOnCommittedEvent(){this.onCommittedListeners.forEach(e=>e())}}/**
|
|
595
595
|
* @license
|
|
596
596
|
* Copyright 2017 Google LLC
|
|
597
597
|
*
|
|
@@ -606,7 +606,7 @@
|
|
|
606
606
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
607
607
|
* See the License for the specific language governing permissions and
|
|
608
608
|
* limitations under the License.
|
|
609
|
-
*/async function
|
|
609
|
+
*/async function or(t){if(t.code!==p.FAILED_PRECONDITION||t.message!==pg)throw t;T("LocalStore","Unexpectedly lost primary lease")}/**
|
|
610
610
|
* @license
|
|
611
611
|
* Copyright 2017 Google LLC
|
|
612
612
|
*
|
|
@@ -621,22 +621,7 @@
|
|
|
621
621
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
622
622
|
* See the License for the specific language governing permissions and
|
|
623
623
|
* limitations under the License.
|
|
624
|
-
*/class m{constructor(e){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,e(n=>{this.isDone=!0,this.result=n,this.nextCallback&&this.nextCallback(n)},n=>{this.isDone=!0,this.error=n,this.catchCallback&&this.catchCallback(n)})}catch(e){return this.next(void 0,e)}next(e,n){return this.callbackAttached&&A(),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(n,this.error):this.wrapSuccess(e,this.result):new m((r,s)=>{this.nextCallback=i=>{this.wrapSuccess(e,i).next(r,s)},this.catchCallback=i=>{this.wrapFailure(n,i).next(r,s)}})}toPromise(){return new Promise((e,n)=>{this.next(e,n)})}wrapUserFunction(e){try{const n=e();return n instanceof m?n:m.resolve(n)}catch(n){return m.reject(n)}}wrapSuccess(e,n){return e?this.wrapUserFunction(()=>e(n)):m.resolve(n)}wrapFailure(e,n){return e?this.wrapUserFunction(()=>e(n)):m.reject(n)}static resolve(e){return new m((n,r)=>{n(e)})}static reject(e){return new m((n,r)=>{r(e)})}static waitFor(e){return new m((n,r)=>{let s=0,i=0,o=!1;e.forEach(a=>{++s,a.next(()=>{++i,o&&i===s&&n()},c=>r(c))}),o=!0,i===s&&n()})}static or(e){let n=m.resolve(!1);for(const r of e)n=n.next(s=>s?m.resolve(s):r());return n}static forEach(e,n){const r=[];return e.forEach((s,i)=>{r.push(n.call(this,s,i))}),this.waitFor(r)}static mapArray(e,n){return new m((r,s)=>{const i=e.length,o=new Array(i);let a=0;for(let c=0;c<i;c++){const u=c;n(e[u]).next(l=>{o[u]=l,++a,a===i&&r(o)},l=>s(l))}})}static doWhile(e,n){return new m((r,s)=>{const i=()=>{e()===!0?n().next(()=>{i()},s):r()};i()})}}/**
|
|
625
|
-
* @license
|
|
626
|
-
* Copyright 2017 Google LLC
|
|
627
|
-
*
|
|
628
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
629
|
-
* you may not use this file except in compliance with the License.
|
|
630
|
-
* You may obtain a copy of the License at
|
|
631
|
-
*
|
|
632
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
633
|
-
*
|
|
634
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
635
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
636
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
637
|
-
* See the License for the specific language governing permissions and
|
|
638
|
-
* limitations under the License.
|
|
639
|
-
*/class Ao{constructor(e,n){this.action=e,this.transaction=n,this.aborted=!1,this.V=new De,this.transaction.oncomplete=()=>{this.V.resolve()},this.transaction.onabort=()=>{n.error?this.V.reject(new cr(e,n.error)):this.V.resolve()},this.transaction.onerror=r=>{const s=Ro(r.target.error);this.V.reject(new cr(e,s))}}static open(e,n,r,s){try{return new Ao(n,e.transaction(s,r))}catch(i){throw new cr(n,i)}}get m(){return this.V.promise}abort(e){e&&this.V.reject(e),this.aborted||(v("SimpleDb","Aborting transaction:",e?e.message:"Client-initiated abort"),this.aborted=!0,this.transaction.abort())}g(){const e=this.transaction;this.aborted||typeof e.commit!="function"||e.commit()}store(e){const n=this.transaction.objectStore(e);return new Rg(n)}}class Vt{constructor(e,n,r){this.name=e,this.version=n,this.p=r,Vt.S(W())===12.2&&Be("Firestore persistence suffers from a bug in iOS 12.2 Safari that may cause your app to stop working. See https://stackoverflow.com/q/56496296/110915 for details and a potential workaround.")}static delete(e){return v("SimpleDb","Removing database:",e),Lt(window.indexedDB.deleteDatabase(e)).toPromise()}static D(){if(!oc())return!1;if(Vt.C())return!0;const e=W(),n=Vt.S(e),r=0<n&&n<10,s=Vt.v(e),i=0<s&&s<4.5;return!(e.indexOf("MSIE ")>0||e.indexOf("Trident/")>0||e.indexOf("Edge/")>0||r||i)}static C(){var e;return typeof process<"u"&&((e=process.__PRIVATE_env)===null||e===void 0?void 0:e.F)==="YES"}static M(e,n){return e.store(n)}static S(e){const n=e.match(/i(?:phone|pad|pod) os ([\d_]+)/i),r=n?n[1].split("_").slice(0,2).join("."):"-1";return Number(r)}static v(e){const n=e.match(/Android ([\d.]+)/i),r=n?n[1].split(".").slice(0,2).join("."):"-1";return Number(r)}async O(e){return this.db||(v("SimpleDb","Opening database:",this.name),this.db=await new Promise((n,r)=>{const s=indexedDB.open(this.name,this.version);s.onsuccess=i=>{const o=i.target.result;n(o)},s.onblocked=()=>{r(new cr(e,"Cannot upgrade IndexedDB schema while another tab is open. Close all tabs that access Firestore and reload this page to proceed."))},s.onerror=i=>{const o=i.target.error;o.name==="VersionError"?r(new g(p.FAILED_PRECONDITION,"A newer version of the Firestore SDK was previously used and so the persisted data is not compatible with the version of the SDK you are now using. The SDK will operate with persistence disabled. If you need persistence, please re-upgrade to a newer version of the SDK or else clear the persisted IndexedDB data for your app to start fresh.")):o.name==="InvalidStateError"?r(new g(p.FAILED_PRECONDITION,"Unable to open an IndexedDB connection. This could be due to running in a private browsing session on a browser whose private browsing sessions do not support IndexedDB: "+o)):r(new cr(e,o))},s.onupgradeneeded=i=>{v("SimpleDb",'Database "'+this.name+'" requires upgrade from version:',i.oldVersion);const o=i.target.result;this.p.N(o,s.transaction,i.oldVersion,this.version).next(()=>{v("SimpleDb","Database upgrade to version "+this.version+" complete")})}})),this.B&&(this.db.onversionchange=n=>this.B(n)),this.db}L(e){this.B=e,this.db&&(this.db.onversionchange=n=>e(n))}async runTransaction(e,n,r,s){const i=n==="readonly";let o=0;for(;;){++o;try{this.db=await this.O(e);const a=Ao.open(this.db,e,i?"readonly":"readwrite",r),c=s(a).next(u=>(a.g(),u)).catch(u=>(a.abort(u),m.reject(u))).toPromise();return c.catch(()=>{}),await a.m,c}catch(a){const c=a,u=c.name!=="FirebaseError"&&o<3;if(v("SimpleDb","Transaction failed with error:",c.message,"Retrying:",u),this.close(),!u)return Promise.reject(c)}}}close(){this.db&&this.db.close(),this.db=void 0}}class Ag{constructor(e){this.k=e,this.q=!1,this.K=null}get isDone(){return this.q}get $(){return this.K}set cursor(e){this.k=e}done(){this.q=!0}U(e){this.K=e}delete(){return Lt(this.k.delete())}}class cr extends g{constructor(e,n){super(p.UNAVAILABLE,`IndexedDB transaction '${e}' failed: ${n}`),this.name="IndexedDbTransactionError"}}function ur(t){return t.name==="IndexedDbTransactionError"}class Rg{constructor(e){this.store=e}put(e,n){let r;return n!==void 0?(v("SimpleDb","PUT",this.store.name,e,n),r=this.store.put(n,e)):(v("SimpleDb","PUT",this.store.name,"<auto-key>",e),r=this.store.put(e)),Lt(r)}add(e){return v("SimpleDb","ADD",this.store.name,e,e),Lt(this.store.add(e))}get(e){return Lt(this.store.get(e)).next(n=>(n===void 0&&(n=null),v("SimpleDb","GET",this.store.name,e,n),n))}delete(e){return v("SimpleDb","DELETE",this.store.name,e),Lt(this.store.delete(e))}count(){return v("SimpleDb","COUNT",this.store.name),Lt(this.store.count())}W(e,n){const r=this.options(e,n),s=r.index?this.store.index(r.index):this.store;if(typeof s.getAll=="function"){const i=s.getAll(r.range);return new m((o,a)=>{i.onerror=c=>{a(c.target.error)},i.onsuccess=c=>{o(c.target.result)}})}{const i=this.cursor(r),o=[];return this.G(i,(a,c)=>{o.push(c)}).next(()=>o)}}j(e,n){const r=this.store.getAll(e,n===null?void 0:n);return new m((s,i)=>{r.onerror=o=>{i(o.target.error)},r.onsuccess=o=>{s(o.target.result)}})}H(e,n){v("SimpleDb","DELETE ALL",this.store.name);const r=this.options(e,n);r.J=!1;const s=this.cursor(r);return this.G(s,(i,o,a)=>a.delete())}Y(e,n){let r;n?r=e:(r={},n=e);const s=this.cursor(r);return this.G(s,n)}Z(e){const n=this.cursor({});return new m((r,s)=>{n.onerror=i=>{const o=Ro(i.target.error);s(o)},n.onsuccess=i=>{const o=i.target.result;o?e(o.primaryKey,o.value).next(a=>{a?o.continue():r()}):r()}})}G(e,n){const r=[];return new m((s,i)=>{e.onerror=o=>{i(o.target.error)},e.onsuccess=o=>{const a=o.target.result;if(!a)return void s();const c=new Ag(a),u=n(a.primaryKey,a.value,c);if(u instanceof m){const l=u.catch(h=>(c.done(),m.reject(h)));r.push(l)}c.isDone?s():c.$===null?a.continue():a.continue(c.$)}}).next(()=>m.waitFor(r))}options(e,n){let r;return e!==void 0&&(typeof e=="string"?r=e:n=e),{index:r,range:n}}cursor(e){let n="next";if(e.reverse&&(n="prev"),e.index){const r=this.store.index(e.index);return e.J?r.openKeyCursor(e.range,n):r.openCursor(e.range,n)}return this.store.openCursor(e.range,n)}}function Lt(t){return new m((e,n)=>{t.onsuccess=r=>{const s=r.target.result;e(s)},t.onerror=r=>{const s=Ro(r.target.error);n(s)}})}let Bu=!1;function Ro(t){const e=Vt.S(W());if(e>=12.2&&e<13){const n="An internal error was encountered in the Indexed Database server";if(t.message.indexOf(n)>=0){const r=new g("internal",`IOS_INDEXEDDB_BUG1: IndexedDb has thrown '${n}'. This is likely due to an unavoidable bug in iOS. See https://stackoverflow.com/q/56496296/110915 for details and a potential workaround.`);return Bu||(Bu=!0,setTimeout(()=>{throw r},0)),r}}return t}/**
|
|
624
|
+
*/class m{constructor(e){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,e(n=>{this.isDone=!0,this.result=n,this.nextCallback&&this.nextCallback(n)},n=>{this.isDone=!0,this.error=n,this.catchCallback&&this.catchCallback(n)})}catch(e){return this.next(void 0,e)}next(e,n){return this.callbackAttached&&A(),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(n,this.error):this.wrapSuccess(e,this.result):new m((r,s)=>{this.nextCallback=i=>{this.wrapSuccess(e,i).next(r,s)},this.catchCallback=i=>{this.wrapFailure(n,i).next(r,s)}})}toPromise(){return new Promise((e,n)=>{this.next(e,n)})}wrapUserFunction(e){try{const n=e();return n instanceof m?n:m.resolve(n)}catch(n){return m.reject(n)}}wrapSuccess(e,n){return e?this.wrapUserFunction(()=>e(n)):m.resolve(n)}wrapFailure(e,n){return e?this.wrapUserFunction(()=>e(n)):m.reject(n)}static resolve(e){return new m((n,r)=>{n(e)})}static reject(e){return new m((n,r)=>{r(e)})}static waitFor(e){return new m((n,r)=>{let s=0,i=0,o=!1;e.forEach(a=>{++s,a.next(()=>{++i,o&&i===s&&n()},c=>r(c))}),o=!0,i===s&&n()})}static or(e){let n=m.resolve(!1);for(const r of e)n=n.next(s=>s?m.resolve(s):r());return n}static forEach(e,n){const r=[];return e.forEach((s,i)=>{r.push(n.call(this,s,i))}),this.waitFor(r)}static mapArray(e,n){return new m((r,s)=>{const i=e.length,o=new Array(i);let a=0;for(let c=0;c<i;c++){const u=c;n(e[u]).next(l=>{o[u]=l,++a,a===i&&r(o)},l=>s(l))}})}static doWhile(e,n){return new m((r,s)=>{const i=()=>{e()===!0?n().next(()=>{i()},s):r()};i()})}}function ar(t){return t.name==="IndexedDbTransactionError"}/**
|
|
640
625
|
* @license
|
|
641
626
|
* Copyright 2018 Google LLC
|
|
642
627
|
*
|
|
@@ -651,7 +636,7 @@
|
|
|
651
636
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
652
637
|
* See the License for the specific language governing permissions and
|
|
653
638
|
* limitations under the License.
|
|
654
|
-
*/class
|
|
639
|
+
*/class To{constructor(e,n){this.previousValue=e,n&&(n.sequenceNumberHandler=r=>this.se(r),this.oe=r=>n.writeSequenceNumber(r))}se(e){return this.previousValue=Math.max(e,this.previousValue),this.previousValue}next(){const e=++this.previousValue;return this.oe&&this.oe(e),e}}To._e=-1;function gs(t){return t==null}function _s(t){return t===0&&1/t==-1/0}function gg(t){return typeof t=="number"&&Number.isInteger(t)&&!_s(t)&&t<=Number.MAX_SAFE_INTEGER&&t>=Number.MIN_SAFE_INTEGER}/**
|
|
655
640
|
* @license
|
|
656
641
|
* Copyright 2017 Google LLC
|
|
657
642
|
*
|
|
@@ -666,7 +651,7 @@
|
|
|
666
651
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
667
652
|
* See the License for the specific language governing permissions and
|
|
668
653
|
* limitations under the License.
|
|
669
|
-
*/function
|
|
654
|
+
*/function Ou(t){let e=0;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&e++;return e}function Vt(t,e){for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&e(n,t[n])}function Vu(t){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}/**
|
|
670
655
|
* @license
|
|
671
656
|
* Copyright 2017 Google LLC
|
|
672
657
|
*
|
|
@@ -681,7 +666,7 @@
|
|
|
681
666
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
682
667
|
* See the License for the specific language governing permissions and
|
|
683
668
|
* limitations under the License.
|
|
684
|
-
*/class
|
|
669
|
+
*/class j{constructor(e,n){this.comparator=e,this.root=n||ne.EMPTY}insert(e,n){return new j(this.comparator,this.root.insert(e,n,this.comparator).copy(null,null,ne.BLACK,null,null))}remove(e){return new j(this.comparator,this.root.remove(e,this.comparator).copy(null,null,ne.BLACK,null,null))}get(e){let n=this.root;for(;!n.isEmpty();){const r=this.comparator(e,n.key);if(r===0)return n.value;r<0?n=n.left:r>0&&(n=n.right)}return null}indexOf(e){let n=0,r=this.root;for(;!r.isEmpty();){const s=this.comparator(e,r.key);if(s===0)return n+r.left.size;s<0?r=r.left:(n+=r.left.size+1,r=r.right)}return-1}isEmpty(){return this.root.isEmpty()}get size(){return this.root.size}minKey(){return this.root.minKey()}maxKey(){return this.root.maxKey()}inorderTraversal(e){return this.root.inorderTraversal(e)}forEach(e){this.inorderTraversal((n,r)=>(e(n,r),!1))}toString(){const e=[];return this.inorderTraversal((n,r)=>(e.push(`${n}:${r}`),!1)),`{${e.join(", ")}}`}reverseTraversal(e){return this.root.reverseTraversal(e)}getIterator(){return new ys(this.root,null,this.comparator,!1)}getIteratorFrom(e){return new ys(this.root,e,this.comparator,!1)}getReverseIterator(){return new ys(this.root,null,this.comparator,!0)}getReverseIteratorFrom(e){return new ys(this.root,e,this.comparator,!0)}}class ys{constructor(e,n,r,s){this.isReverse=s,this.nodeStack=[];let i=1;for(;!e.isEmpty();)if(i=n?r(e.key,n):1,n&&s&&(i*=-1),i<0)e=this.isReverse?e.left:e.right;else{if(i===0){this.nodeStack.push(e);break}this.nodeStack.push(e),e=this.isReverse?e.right:e.left}}getNext(){let e=this.nodeStack.pop();const n={key:e.key,value:e.value};if(this.isReverse)for(e=e.left;!e.isEmpty();)this.nodeStack.push(e),e=e.right;else for(e=e.right;!e.isEmpty();)this.nodeStack.push(e),e=e.left;return n}hasNext(){return this.nodeStack.length>0}peek(){if(this.nodeStack.length===0)return null;const e=this.nodeStack[this.nodeStack.length-1];return{key:e.key,value:e.value}}}class ne{constructor(e,n,r,s,i){this.key=e,this.value=n,this.color=r??ne.RED,this.left=s??ne.EMPTY,this.right=i??ne.EMPTY,this.size=this.left.size+1+this.right.size}copy(e,n,r,s,i){return new ne(e??this.key,n??this.value,r??this.color,s??this.left,i??this.right)}isEmpty(){return!1}inorderTraversal(e){return this.left.inorderTraversal(e)||e(this.key,this.value)||this.right.inorderTraversal(e)}reverseTraversal(e){return this.right.reverseTraversal(e)||e(this.key,this.value)||this.left.reverseTraversal(e)}min(){return this.left.isEmpty()?this:this.left.min()}minKey(){return this.min().key}maxKey(){return this.right.isEmpty()?this.key:this.right.maxKey()}insert(e,n,r){let s=this;const i=r(e,s.key);return s=i<0?s.copy(null,null,null,s.left.insert(e,n,r),null):i===0?s.copy(null,n,null,null,null):s.copy(null,null,null,null,s.right.insert(e,n,r)),s.fixUp()}removeMin(){if(this.left.isEmpty())return ne.EMPTY;let e=this;return e.left.isRed()||e.left.left.isRed()||(e=e.moveRedLeft()),e=e.copy(null,null,null,e.left.removeMin(),null),e.fixUp()}remove(e,n){let r,s=this;if(n(e,s.key)<0)s.left.isEmpty()||s.left.isRed()||s.left.left.isRed()||(s=s.moveRedLeft()),s=s.copy(null,null,null,s.left.remove(e,n),null);else{if(s.left.isRed()&&(s=s.rotateRight()),s.right.isEmpty()||s.right.isRed()||s.right.left.isRed()||(s=s.moveRedRight()),n(e,s.key)===0){if(s.right.isEmpty())return ne.EMPTY;r=s.right.min(),s=s.copy(r.key,r.value,null,null,s.right.removeMin())}s=s.copy(null,null,null,null,s.right.remove(e,n))}return s.fixUp()}isRed(){return this.color}fixUp(){let e=this;return e.right.isRed()&&!e.left.isRed()&&(e=e.rotateLeft()),e.left.isRed()&&e.left.left.isRed()&&(e=e.rotateRight()),e.left.isRed()&&e.right.isRed()&&(e=e.colorFlip()),e}moveRedLeft(){let e=this.colorFlip();return e.right.left.isRed()&&(e=e.copy(null,null,null,null,e.right.rotateRight()),e=e.rotateLeft(),e=e.colorFlip()),e}moveRedRight(){let e=this.colorFlip();return e.left.left.isRed()&&(e=e.rotateRight(),e=e.colorFlip()),e}rotateLeft(){const e=this.copy(null,null,ne.RED,null,this.right.left);return this.right.copy(null,null,this.color,e,null)}rotateRight(){const e=this.copy(null,null,ne.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,e)}colorFlip(){const e=this.left.copy(null,null,!this.left.color,null,null),n=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,e,n)}checkMaxDepth(){const e=this.check();return Math.pow(2,e)<=this.size+1}check(){if(this.isRed()&&this.left.isRed()||this.right.isRed())throw A();const e=this.left.check();if(e!==this.right.check())throw A();return e+(this.isRed()?0:1)}}ne.EMPTY=null,ne.RED=!0,ne.BLACK=!1,ne.EMPTY=new class{constructor(){this.size=0}get key(){throw A()}get value(){throw A()}get color(){throw A()}get left(){throw A()}get right(){throw A()}copy(e,n,r,s,i){return this}insert(e,n,r){return new ne(e,n)}remove(e,n){return this}isEmpty(){return!0}inorderTraversal(e){return!1}reverseTraversal(e){return!1}minKey(){return null}maxKey(){return null}isRed(){return!1}checkMaxDepth(){return!0}check(){return 0}};/**
|
|
685
670
|
* @license
|
|
686
671
|
* Copyright 2017 Google LLC
|
|
687
672
|
*
|
|
@@ -696,7 +681,7 @@
|
|
|
696
681
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
697
682
|
* See the License for the specific language governing permissions and
|
|
698
683
|
* limitations under the License.
|
|
699
|
-
*/class
|
|
684
|
+
*/class re{constructor(e){this.comparator=e,this.data=new j(this.comparator)}has(e){return this.data.get(e)!==null}first(){return this.data.minKey()}last(){return this.data.maxKey()}get size(){return this.data.size}indexOf(e){return this.data.indexOf(e)}forEach(e){this.data.inorderTraversal((n,r)=>(e(n),!1))}forEachInRange(e,n){const r=this.data.getIteratorFrom(e[0]);for(;r.hasNext();){const s=r.getNext();if(this.comparator(s.key,e[1])>=0)return;n(s.key)}}forEachWhile(e,n){let r;for(r=n!==void 0?this.data.getIteratorFrom(n):this.data.getIterator();r.hasNext();)if(!e(r.getNext().key))return}firstAfterOrEqual(e){const n=this.data.getIteratorFrom(e);return n.hasNext()?n.getNext().key:null}getIterator(){return new Lu(this.data.getIterator())}getIteratorFrom(e){return new Lu(this.data.getIteratorFrom(e))}add(e){return this.copy(this.data.remove(e).insert(e,!0))}delete(e){return this.has(e)?this.copy(this.data.remove(e)):this}isEmpty(){return this.data.isEmpty()}unionWith(e){let n=this;return n.size<e.size&&(n=e,e=this),e.forEach(r=>{n=n.add(r)}),n}isEqual(e){if(!(e instanceof re)||this.size!==e.size)return!1;const n=this.data.getIterator(),r=e.data.getIterator();for(;n.hasNext();){const s=n.getNext().key,i=r.getNext().key;if(this.comparator(s,i)!==0)return!1}return!0}toArray(){const e=[];return this.forEach(n=>{e.push(n)}),e}toString(){const e=[];return this.forEach(n=>e.push(n)),"SortedSet("+e.toString()+")"}copy(e){const n=new re(this.comparator);return n.data=e,n}}class Lu{constructor(e){this.iter=e}getNext(){return this.iter.getNext().key}hasNext(){return this.iter.hasNext()}}/**
|
|
700
685
|
* @license
|
|
701
686
|
* Copyright 2020 Google LLC
|
|
702
687
|
*
|
|
@@ -711,7 +696,7 @@
|
|
|
711
696
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
712
697
|
* See the License for the specific language governing permissions and
|
|
713
698
|
* limitations under the License.
|
|
714
|
-
*/class Te{constructor(e){this.fields=e,e.sort(
|
|
699
|
+
*/class Te{constructor(e){this.fields=e,e.sort(te.comparator)}static empty(){return new Te([])}unionWith(e){let n=new re(te.comparator);for(const r of this.fields)n=n.add(r);for(const r of e)n=n.add(r);return new Te(n.toArray())}covers(e){for(const n of this.fields)if(n.isPrefixOf(e))return!0;return!1}isEqual(e){return rn(this.fields,e.fields,(n,r)=>n.isEqual(r))}}/**
|
|
715
700
|
* @license
|
|
716
701
|
* Copyright 2023 Google LLC
|
|
717
702
|
*
|
|
@@ -726,7 +711,7 @@
|
|
|
726
711
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
727
712
|
* See the License for the specific language governing permissions and
|
|
728
713
|
* limitations under the License.
|
|
729
|
-
*/class
|
|
714
|
+
*/class Mu extends Error{constructor(){super(...arguments),this.name="Base64DecodeError"}}/**
|
|
730
715
|
* @license
|
|
731
716
|
* Copyright 2020 Google LLC
|
|
732
717
|
*
|
|
@@ -741,7 +726,7 @@
|
|
|
741
726
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
742
727
|
* See the License for the specific language governing permissions and
|
|
743
728
|
* limitations under the License.
|
|
744
|
-
*/class
|
|
729
|
+
*/class ue{constructor(e){this.binaryString=e}static fromBase64String(e){const n=function(s){try{return atob(s)}catch(i){throw typeof DOMException<"u"&&i instanceof DOMException?new Mu("Invalid base64 string: "+i):i}}(e);return new ue(n)}static fromUint8Array(e){const n=function(s){let i="";for(let o=0;o<s.length;++o)i+=String.fromCharCode(s[o]);return i}(e);return new ue(n)}[Symbol.iterator](){let e=0;return{next:()=>e<this.binaryString.length?{value:this.binaryString.charCodeAt(e++),done:!1}:{value:void 0,done:!0}}}toBase64(){return function(n){return btoa(n)}(this.binaryString)}toUint8Array(){return function(n){const r=new Uint8Array(n.length);for(let s=0;s<n.length;s++)r[s]=n.charCodeAt(s);return r}(this.binaryString)}approximateByteSize(){return 2*this.binaryString.length}compareTo(e){return L(this.binaryString,e.binaryString)}isEqual(e){return this.binaryString===e.binaryString}}ue.EMPTY_BYTE_STRING=new ue("");const _g=new RegExp(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.(\d+))?Z$/);function pt(t){if(F(!!t),typeof t=="string"){let e=0;const n=_g.exec(t);if(F(!!n),n[1]){let s=n[1];s=(s+"000000000").substr(0,9),e=Number(s)}const r=new Date(t);return{seconds:Math.floor(r.getTime()/1e3),nanos:e}}return{seconds:W(t.seconds),nanos:W(t.nanos)}}function W(t){return typeof t=="number"?t:typeof t=="string"?Number(t):0}function Lt(t){return typeof t=="string"?ue.fromBase64String(t):ue.fromUint8Array(t)}/**
|
|
745
730
|
* @license
|
|
746
731
|
* Copyright 2020 Google LLC
|
|
747
732
|
*
|
|
@@ -756,7 +741,7 @@
|
|
|
756
741
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
757
742
|
* See the License for the specific language governing permissions and
|
|
758
743
|
* limitations under the License.
|
|
759
|
-
*/function
|
|
744
|
+
*/function Es(t){var e,n;return((n=(((e=t==null?void 0:t.mapValue)===null||e===void 0?void 0:e.fields)||{}).__type__)===null||n===void 0?void 0:n.stringValue)==="server_timestamp"}function Io(t){const e=t.mapValue.fields.__previous_value__;return Es(e)?Io(e):e}function cr(t){const e=pt(t.mapValue.fields.__local_write_time__.timestampValue);return new Q(e.seconds,e.nanos)}/**
|
|
760
745
|
* @license
|
|
761
746
|
* Copyright 2017 Google LLC
|
|
762
747
|
*
|
|
@@ -771,7 +756,7 @@
|
|
|
771
756
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
772
757
|
* See the License for the specific language governing permissions and
|
|
773
758
|
* limitations under the License.
|
|
774
|
-
*/class
|
|
759
|
+
*/class yg{constructor(e,n,r,s,i,o,a,c,u){this.databaseId=e,this.appId=n,this.persistenceKey=r,this.host=s,this.ssl=i,this.forceLongPolling=o,this.autoDetectLongPolling=a,this.longPollingOptions=c,this.useFetchStreams=u}}class ur{constructor(e,n){this.projectId=e,this.database=n||"(default)"}static empty(){return new ur("","")}get isDefaultDatabase(){return this.database==="(default)"}isEqual(e){return e instanceof ur&&e.projectId===this.projectId&&e.database===this.database}}/**
|
|
775
760
|
* @license
|
|
776
761
|
* Copyright 2020 Google LLC
|
|
777
762
|
*
|
|
@@ -786,7 +771,7 @@
|
|
|
786
771
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
787
772
|
* See the License for the specific language governing permissions and
|
|
788
773
|
* limitations under the License.
|
|
789
|
-
*/const
|
|
774
|
+
*/const vs={mapValue:{fields:{__type__:{stringValue:"__max__"}}}};function Mt(t){return"nullValue"in t?0:"booleanValue"in t?1:"integerValue"in t||"doubleValue"in t?2:"timestampValue"in t?3:"stringValue"in t?5:"bytesValue"in t?6:"referenceValue"in t?7:"geoPointValue"in t?8:"arrayValue"in t?9:"mapValue"in t?Es(t)?4:Eg(t)?9007199254740991:10:A()}function Fe(t,e){if(t===e)return!0;const n=Mt(t);if(n!==Mt(e))return!1;switch(n){case 0:case 9007199254740991:return!0;case 1:return t.booleanValue===e.booleanValue;case 4:return cr(t).isEqual(cr(e));case 3:return function(s,i){if(typeof s.timestampValue=="string"&&typeof i.timestampValue=="string"&&s.timestampValue.length===i.timestampValue.length)return s.timestampValue===i.timestampValue;const o=pt(s.timestampValue),a=pt(i.timestampValue);return o.seconds===a.seconds&&o.nanos===a.nanos}(t,e);case 5:return t.stringValue===e.stringValue;case 6:return function(s,i){return Lt(s.bytesValue).isEqual(Lt(i.bytesValue))}(t,e);case 7:return t.referenceValue===e.referenceValue;case 8:return function(s,i){return W(s.geoPointValue.latitude)===W(i.geoPointValue.latitude)&&W(s.geoPointValue.longitude)===W(i.geoPointValue.longitude)}(t,e);case 2:return function(s,i){if("integerValue"in s&&"integerValue"in i)return W(s.integerValue)===W(i.integerValue);if("doubleValue"in s&&"doubleValue"in i){const o=W(s.doubleValue),a=W(i.doubleValue);return o===a?_s(o)===_s(a):isNaN(o)&&isNaN(a)}return!1}(t,e);case 9:return rn(t.arrayValue.values||[],e.arrayValue.values||[],Fe);case 10:return function(s,i){const o=s.mapValue.fields||{},a=i.mapValue.fields||{};if(Ou(o)!==Ou(a))return!1;for(const c in o)if(o.hasOwnProperty(c)&&(a[c]===void 0||!Fe(o[c],a[c])))return!1;return!0}(t,e);default:return A()}}function lr(t,e){return(t.values||[]).find(n=>Fe(n,e))!==void 0}function sn(t,e){if(t===e)return 0;const n=Mt(t),r=Mt(e);if(n!==r)return L(n,r);switch(n){case 0:case 9007199254740991:return 0;case 1:return L(t.booleanValue,e.booleanValue);case 2:return function(i,o){const a=W(i.integerValue||i.doubleValue),c=W(o.integerValue||o.doubleValue);return a<c?-1:a>c?1:a===c?0:isNaN(a)?isNaN(c)?0:-1:1}(t,e);case 3:return Uu(t.timestampValue,e.timestampValue);case 4:return Uu(cr(t),cr(e));case 5:return L(t.stringValue,e.stringValue);case 6:return function(i,o){const a=Lt(i),c=Lt(o);return a.compareTo(c)}(t.bytesValue,e.bytesValue);case 7:return function(i,o){const a=i.split("/"),c=o.split("/");for(let u=0;u<a.length&&u<c.length;u++){const l=L(a[u],c[u]);if(l!==0)return l}return L(a.length,c.length)}(t.referenceValue,e.referenceValue);case 8:return function(i,o){const a=L(W(i.latitude),W(o.latitude));return a!==0?a:L(W(i.longitude),W(o.longitude))}(t.geoPointValue,e.geoPointValue);case 9:return function(i,o){const a=i.values||[],c=o.values||[];for(let u=0;u<a.length&&u<c.length;++u){const l=sn(a[u],c[u]);if(l)return l}return L(a.length,c.length)}(t.arrayValue,e.arrayValue);case 10:return function(i,o){if(i===vs.mapValue&&o===vs.mapValue)return 0;if(i===vs.mapValue)return 1;if(o===vs.mapValue)return-1;const a=i.fields||{},c=Object.keys(a),u=o.fields||{},l=Object.keys(u);c.sort(),l.sort();for(let h=0;h<c.length&&h<l.length;++h){const d=L(c[h],l[h]);if(d!==0)return d;const f=sn(a[c[h]],u[l[h]]);if(f!==0)return f}return L(c.length,l.length)}(t.mapValue,e.mapValue);default:throw A()}}function Uu(t,e){if(typeof t=="string"&&typeof e=="string"&&t.length===e.length)return L(t,e);const n=pt(t),r=pt(e),s=L(n.seconds,r.seconds);return s!==0?s:L(n.nanos,r.nanos)}function on(t){return wo(t)}function wo(t){return"nullValue"in t?"null":"booleanValue"in t?""+t.booleanValue:"integerValue"in t?""+t.integerValue:"doubleValue"in t?""+t.doubleValue:"timestampValue"in t?function(n){const r=pt(n);return`time(${r.seconds},${r.nanos})`}(t.timestampValue):"stringValue"in t?t.stringValue:"bytesValue"in t?function(n){return Lt(n).toBase64()}(t.bytesValue):"referenceValue"in t?function(n){return I.fromName(n).toString()}(t.referenceValue):"geoPointValue"in t?function(n){return`geo(${n.latitude},${n.longitude})`}(t.geoPointValue):"arrayValue"in t?function(n){let r="[",s=!0;for(const i of n.values||[])s?s=!1:r+=",",r+=wo(i);return r+"]"}(t.arrayValue):"mapValue"in t?function(n){const r=Object.keys(n.fields||{}).sort();let s="{",i=!0;for(const o of r)i?i=!1:s+=",",s+=`${o}:${wo(n.fields[o])}`;return s+"}"}(t.mapValue):A()}function Ts(t,e){return{referenceValue:`projects/${t.projectId}/databases/${t.database}/documents/${e.path.canonicalString()}`}}function Ao(t){return!!t&&"integerValue"in t}function Ro(t){return!!t&&"arrayValue"in t}function xu(t){return!!t&&"nullValue"in t}function Fu(t){return!!t&&"doubleValue"in t&&isNaN(Number(t.doubleValue))}function Is(t){return!!t&&"mapValue"in t}function hr(t){if(t.geoPointValue)return{geoPointValue:Object.assign({},t.geoPointValue)};if(t.timestampValue&&typeof t.timestampValue=="object")return{timestampValue:Object.assign({},t.timestampValue)};if(t.mapValue){const e={mapValue:{fields:{}}};return Vt(t.mapValue.fields,(n,r)=>e.mapValue.fields[n]=hr(r)),e}if(t.arrayValue){const e={arrayValue:{values:[]}};for(let n=0;n<(t.arrayValue.values||[]).length;++n)e.arrayValue.values[n]=hr(t.arrayValue.values[n]);return e}return Object.assign({},t)}function Eg(t){return(((t.mapValue||{}).fields||{}).__type__||{}).stringValue==="__max__"}/**
|
|
790
775
|
* @license
|
|
791
776
|
* Copyright 2017 Google LLC
|
|
792
777
|
*
|
|
@@ -801,7 +786,7 @@
|
|
|
801
786
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
802
787
|
* See the License for the specific language governing permissions and
|
|
803
788
|
* limitations under the License.
|
|
804
|
-
*/class
|
|
789
|
+
*/class ge{constructor(e){this.value=e}static empty(){return new ge({mapValue:{}})}field(e){if(e.isEmpty())return this.value;{let n=this.value;for(let r=0;r<e.length-1;++r)if(n=(n.mapValue.fields||{})[e.get(r)],!Is(n))return null;return n=(n.mapValue.fields||{})[e.lastSegment()],n||null}}set(e,n){this.getFieldsMap(e.popLast())[e.lastSegment()]=hr(n)}setAll(e){let n=te.emptyPath(),r={},s=[];e.forEach((o,a)=>{if(!n.isImmediateParentOf(a)){const c=this.getFieldsMap(n);this.applyChanges(c,r,s),r={},s=[],n=a.popLast()}o?r[a.lastSegment()]=hr(o):s.push(a.lastSegment())});const i=this.getFieldsMap(n);this.applyChanges(i,r,s)}delete(e){const n=this.field(e.popLast());Is(n)&&n.mapValue.fields&&delete n.mapValue.fields[e.lastSegment()]}isEqual(e){return Fe(this.value,e.value)}getFieldsMap(e){let n=this.value;n.mapValue.fields||(n.mapValue={fields:{}});for(let r=0;r<e.length;++r){let s=n.mapValue.fields[e.get(r)];Is(s)&&s.mapValue.fields||(s={mapValue:{fields:{}}},n.mapValue.fields[e.get(r)]=s),n=s}return n.mapValue.fields}applyChanges(e,n,r){Vt(n,(s,i)=>e[s]=i);for(const s of r)delete e[s]}clone(){return new ge(hr(this.value))}}function Bu(t){const e=[];return Vt(t.fields,(n,r)=>{const s=new te([n]);if(Is(r)){const i=Bu(r.mapValue).fields;if(i.length===0)e.push(s);else for(const o of i)e.push(s.child(o))}else e.push(s)}),new Te(e)}/**
|
|
805
790
|
* @license
|
|
806
791
|
* Copyright 2017 Google LLC
|
|
807
792
|
*
|
|
@@ -816,7 +801,7 @@
|
|
|
816
801
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
817
802
|
* See the License for the specific language governing permissions and
|
|
818
803
|
* limitations under the License.
|
|
819
|
-
*/class
|
|
804
|
+
*/class le{constructor(e,n,r,s,i,o,a){this.key=e,this.documentType=n,this.version=r,this.readTime=s,this.createTime=i,this.data=o,this.documentState=a}static newInvalidDocument(e){return new le(e,0,S.min(),S.min(),S.min(),ge.empty(),0)}static newFoundDocument(e,n,r,s){return new le(e,1,n,S.min(),r,s,0)}static newNoDocument(e,n){return new le(e,2,n,S.min(),S.min(),ge.empty(),0)}static newUnknownDocument(e,n){return new le(e,3,n,S.min(),S.min(),ge.empty(),2)}convertToFoundDocument(e,n){return!this.createTime.isEqual(S.min())||this.documentType!==2&&this.documentType!==0||(this.createTime=e),this.version=e,this.documentType=1,this.data=n,this.documentState=0,this}convertToNoDocument(e){return this.version=e,this.documentType=2,this.data=ge.empty(),this.documentState=0,this}convertToUnknownDocument(e){return this.version=e,this.documentType=3,this.data=ge.empty(),this.documentState=2,this}setHasCommittedMutations(){return this.documentState=2,this}setHasLocalMutations(){return this.documentState=1,this.version=S.min(),this}setReadTime(e){return this.readTime=e,this}get hasLocalMutations(){return this.documentState===1}get hasCommittedMutations(){return this.documentState===2}get hasPendingWrites(){return this.hasLocalMutations||this.hasCommittedMutations}isValidDocument(){return this.documentType!==0}isFoundDocument(){return this.documentType===1}isNoDocument(){return this.documentType===2}isUnknownDocument(){return this.documentType===3}isEqual(e){return e instanceof le&&this.key.isEqual(e.key)&&this.version.isEqual(e.version)&&this.documentType===e.documentType&&this.documentState===e.documentState&&this.data.isEqual(e.data)}mutableCopy(){return new le(this.key,this.documentType,this.version,this.readTime,this.createTime,this.data.clone(),this.documentState)}toString(){return`Document(${this.key}, ${this.version}, ${JSON.stringify(this.data.value)}, {createTime: ${this.createTime}}), {documentType: ${this.documentType}}), {documentState: ${this.documentState}})`}}/**
|
|
820
805
|
* @license
|
|
821
806
|
* Copyright 2022 Google LLC
|
|
822
807
|
*
|
|
@@ -831,7 +816,7 @@
|
|
|
831
816
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
832
817
|
* See the License for the specific language governing permissions and
|
|
833
818
|
* limitations under the License.
|
|
834
|
-
*/class
|
|
819
|
+
*/class an{constructor(e,n){this.position=e,this.inclusive=n}}function qu(t,e,n){let r=0;for(let s=0;s<t.position.length;s++){const i=e[s],o=t.position[s];if(i.field.isKeyField()?r=I.comparator(I.fromName(o.referenceValue),n.key):r=sn(o,n.data.field(i.field)),i.dir==="desc"&&(r*=-1),r!==0)break}return r}function $u(t,e){if(t===null)return e===null;if(e===null||t.inclusive!==e.inclusive||t.position.length!==e.position.length)return!1;for(let n=0;n<t.position.length;n++)if(!Fe(t.position[n],e.position[n]))return!1;return!0}/**
|
|
835
820
|
* @license
|
|
836
821
|
* Copyright 2022 Google LLC
|
|
837
822
|
*
|
|
@@ -846,7 +831,7 @@
|
|
|
846
831
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
847
832
|
* See the License for the specific language governing permissions and
|
|
848
833
|
* limitations under the License.
|
|
849
|
-
*/class
|
|
834
|
+
*/class dr{constructor(e,n="asc"){this.field=e,this.dir=n}}function vg(t,e){return t.dir===e.dir&&t.field.isEqual(e.field)}/**
|
|
850
835
|
* @license
|
|
851
836
|
* Copyright 2022 Google LLC
|
|
852
837
|
*
|
|
@@ -861,7 +846,7 @@
|
|
|
861
846
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
862
847
|
* See the License for the specific language governing permissions and
|
|
863
848
|
* limitations under the License.
|
|
864
|
-
*/class
|
|
849
|
+
*/class ju{}class G extends ju{constructor(e,n,r){super(),this.field=e,this.op=n,this.value=r}static create(e,n,r){return e.isKeyField()?n==="in"||n==="not-in"?this.createKeyFieldInFilter(e,n,r):new Ig(e,n,r):n==="array-contains"?new Rg(e,r):n==="in"?new Pg(e,r):n==="not-in"?new Sg(e,r):n==="array-contains-any"?new Cg(e,r):new G(e,n,r)}static createKeyFieldInFilter(e,n,r){return n==="in"?new wg(e,r):new Ag(e,r)}matches(e){const n=e.data.field(this.field);return this.op==="!="?n!==null&&this.matchesComparison(sn(n,this.value)):n!==null&&Mt(this.value)===Mt(n)&&this.matchesComparison(sn(n,this.value))}matchesComparison(e){switch(this.op){case"<":return e<0;case"<=":return e<=0;case"==":return e===0;case"!=":return e!==0;case">":return e>0;case">=":return e>=0;default:return A()}}isInequality(){return["<","<=",">",">=","!=","not-in"].indexOf(this.op)>=0}getFlattenedFilters(){return[this]}getFilters(){return[this]}}class Ne extends ju{constructor(e,n){super(),this.filters=e,this.op=n,this.ue=null}static create(e,n){return new Ne(e,n)}matches(e){return zu(this)?this.filters.find(n=>!n.matches(e))===void 0:this.filters.find(n=>n.matches(e))!==void 0}getFlattenedFilters(){return this.ue!==null||(this.ue=this.filters.reduce((e,n)=>e.concat(n.getFlattenedFilters()),[])),this.ue}getFilters(){return Object.assign([],this.filters)}}function zu(t){return t.op==="and"}function Hu(t){return Tg(t)&&zu(t)}function Tg(t){for(const e of t.filters)if(e instanceof Ne)return!1;return!0}function Po(t){if(t instanceof G)return t.field.canonicalString()+t.op.toString()+on(t.value);if(Hu(t))return t.filters.map(e=>Po(e)).join(",");{const e=t.filters.map(n=>Po(n)).join(",");return`${t.op}(${e})`}}function Wu(t,e){return t instanceof G?function(r,s){return s instanceof G&&r.op===s.op&&r.field.isEqual(s.field)&&Fe(r.value,s.value)}(t,e):t instanceof Ne?function(r,s){return s instanceof Ne&&r.op===s.op&&r.filters.length===s.filters.length?r.filters.reduce((i,o,a)=>i&&Wu(o,s.filters[a]),!0):!1}(t,e):void A()}function Gu(t){return t instanceof G?function(n){return`${n.field.canonicalString()} ${n.op} ${on(n.value)}`}(t):t instanceof Ne?function(n){return n.op.toString()+" {"+n.getFilters().map(Gu).join(" ,")+"}"}(t):"Filter"}class Ig extends G{constructor(e,n,r){super(e,n,r),this.key=I.fromName(r.referenceValue)}matches(e){const n=I.comparator(e.key,this.key);return this.matchesComparison(n)}}class wg extends G{constructor(e,n){super(e,"in",n),this.keys=Ku("in",n)}matches(e){return this.keys.some(n=>n.isEqual(e.key))}}class Ag extends G{constructor(e,n){super(e,"not-in",n),this.keys=Ku("not-in",n)}matches(e){return!this.keys.some(n=>n.isEqual(e.key))}}function Ku(t,e){var n;return(((n=e.arrayValue)===null||n===void 0?void 0:n.values)||[]).map(r=>I.fromName(r.referenceValue))}class Rg extends G{constructor(e,n){super(e,"array-contains",n)}matches(e){const n=e.data.field(this.field);return Ro(n)&&lr(n.arrayValue,this.value)}}class Pg extends G{constructor(e,n){super(e,"in",n)}matches(e){const n=e.data.field(this.field);return n!==null&&lr(this.value.arrayValue,n)}}class Sg extends G{constructor(e,n){super(e,"not-in",n)}matches(e){if(lr(this.value.arrayValue,{nullValue:"NULL_VALUE"}))return!1;const n=e.data.field(this.field);return n!==null&&!lr(this.value.arrayValue,n)}}class Cg extends G{constructor(e,n){super(e,"array-contains-any",n)}matches(e){const n=e.data.field(this.field);return!(!Ro(n)||!n.arrayValue.values)&&n.arrayValue.values.some(r=>lr(this.value.arrayValue,r))}}/**
|
|
865
850
|
* @license
|
|
866
851
|
* Copyright 2019 Google LLC
|
|
867
852
|
*
|
|
@@ -876,7 +861,7 @@
|
|
|
876
861
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
877
862
|
* See the License for the specific language governing permissions and
|
|
878
863
|
* limitations under the License.
|
|
879
|
-
*/class
|
|
864
|
+
*/class bg{constructor(e,n=null,r=[],s=[],i=null,o=null,a=null){this.path=e,this.collectionGroup=n,this.orderBy=r,this.filters=s,this.limit=i,this.startAt=o,this.endAt=a,this.ce=null}}function Qu(t,e=null,n=[],r=[],s=null,i=null,o=null){return new bg(t,e,n,r,s,i,o)}function So(t){const e=P(t);if(e.ce===null){let n=e.path.canonicalString();e.collectionGroup!==null&&(n+="|cg:"+e.collectionGroup),n+="|f:",n+=e.filters.map(r=>Po(r)).join(","),n+="|ob:",n+=e.orderBy.map(r=>function(i){return i.field.canonicalString()+i.dir}(r)).join(","),gs(e.limit)||(n+="|l:",n+=e.limit),e.startAt&&(n+="|lb:",n+=e.startAt.inclusive?"b:":"a:",n+=e.startAt.position.map(r=>on(r)).join(",")),e.endAt&&(n+="|ub:",n+=e.endAt.inclusive?"a:":"b:",n+=e.endAt.position.map(r=>on(r)).join(",")),e.ce=n}return e.ce}function Co(t,e){if(t.limit!==e.limit||t.orderBy.length!==e.orderBy.length)return!1;for(let n=0;n<t.orderBy.length;n++)if(!vg(t.orderBy[n],e.orderBy[n]))return!1;if(t.filters.length!==e.filters.length)return!1;for(let n=0;n<t.filters.length;n++)if(!Wu(t.filters[n],e.filters[n]))return!1;return t.collectionGroup===e.collectionGroup&&!!t.path.isEqual(e.path)&&!!$u(t.startAt,e.startAt)&&$u(t.endAt,e.endAt)}function bo(t){return I.isDocumentKey(t.path)&&t.collectionGroup===null&&t.filters.length===0}/**
|
|
880
865
|
* @license
|
|
881
866
|
* Copyright 2017 Google LLC
|
|
882
867
|
*
|
|
@@ -891,7 +876,7 @@
|
|
|
891
876
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
892
877
|
* See the License for the specific language governing permissions and
|
|
893
878
|
* limitations under the License.
|
|
894
|
-
*/class
|
|
879
|
+
*/class Ut{constructor(e,n=null,r=[],s=[],i=null,o="F",a=null,c=null){this.path=e,this.collectionGroup=n,this.explicitOrderBy=r,this.filters=s,this.limit=i,this.limitType=o,this.startAt=a,this.endAt=c,this.le=null,this.he=null,this.Pe=null,this.startAt,this.endAt}}function kg(t,e,n,r,s,i,o,a){return new Ut(t,e,n,r,s,i,o,a)}function ko(t){return new Ut(t)}function Yu(t){return t.filters.length===0&&t.limit===null&&t.startAt==null&&t.endAt==null&&(t.explicitOrderBy.length===0||t.explicitOrderBy.length===1&&t.explicitOrderBy[0].field.isKeyField())}function No(t){return t.collectionGroup!==null}function cn(t){const e=P(t);if(e.le===null){e.le=[];const n=new Set;for(const i of e.explicitOrderBy)e.le.push(i),n.add(i.field.canonicalString());const r=e.explicitOrderBy.length>0?e.explicitOrderBy[e.explicitOrderBy.length-1].dir:"asc";(function(o){let a=new re(te.comparator);return o.filters.forEach(c=>{c.getFlattenedFilters().forEach(u=>{u.isInequality()&&(a=a.add(u.field))})}),a})(e).forEach(i=>{n.has(i.canonicalString())||i.isKeyField()||e.le.push(new dr(i,r))}),n.has(te.keyField().canonicalString())||e.le.push(new dr(te.keyField(),r))}return e.le}function Be(t){const e=P(t);return e.he||(e.he=Xu(e,cn(t))),e.he}function Xu(t,e){if(t.limitType==="F")return Qu(t.path,t.collectionGroup,e,t.filters,t.limit,t.startAt,t.endAt);{e=e.map(s=>{const i=s.dir==="desc"?"asc":"desc";return new dr(s.field,i)});const n=t.endAt?new an(t.endAt.position,t.endAt.inclusive):null,r=t.startAt?new an(t.startAt.position,t.startAt.inclusive):null;return Qu(t.path,t.collectionGroup,e,t.filters,t.limit,n,r)}}function Do(t,e){const n=t.filters.concat([e]);return new Ut(t.path,t.collectionGroup,t.explicitOrderBy.slice(),n,t.limit,t.limitType,t.startAt,t.endAt)}function ws(t,e,n){return new Ut(t.path,t.collectionGroup,t.explicitOrderBy.slice(),t.filters.slice(),e,n,t.startAt,t.endAt)}function As(t,e){return Co(Be(t),Be(e))&&t.limitType===e.limitType}function Ju(t){return`${So(Be(t))}|lt:${t.limitType}`}function un(t){return`Query(target=${function(n){let r=n.path.canonicalString();return n.collectionGroup!==null&&(r+=" collectionGroup="+n.collectionGroup),n.filters.length>0&&(r+=`, filters: [${n.filters.map(s=>Gu(s)).join(", ")}]`),gs(n.limit)||(r+=", limit: "+n.limit),n.orderBy.length>0&&(r+=`, orderBy: [${n.orderBy.map(s=>function(o){return`${o.field.canonicalString()} (${o.dir})`}(s)).join(", ")}]`),n.startAt&&(r+=", startAt: ",r+=n.startAt.inclusive?"b:":"a:",r+=n.startAt.position.map(s=>on(s)).join(",")),n.endAt&&(r+=", endAt: ",r+=n.endAt.inclusive?"a:":"b:",r+=n.endAt.position.map(s=>on(s)).join(",")),`Target(${r})`}(Be(t))}; limitType=${t.limitType})`}function Rs(t,e){return e.isFoundDocument()&&function(r,s){const i=s.key.path;return r.collectionGroup!==null?s.key.hasCollectionId(r.collectionGroup)&&r.path.isPrefixOf(i):I.isDocumentKey(r.path)?r.path.isEqual(i):r.path.isImmediateParentOf(i)}(t,e)&&function(r,s){for(const i of cn(r))if(!i.field.isKeyField()&&s.data.field(i.field)===null)return!1;return!0}(t,e)&&function(r,s){for(const i of r.filters)if(!i.matches(s))return!1;return!0}(t,e)&&function(r,s){return!(r.startAt&&!function(o,a,c){const u=qu(o,a,c);return o.inclusive?u<=0:u<0}(r.startAt,cn(r),s)||r.endAt&&!function(o,a,c){const u=qu(o,a,c);return o.inclusive?u>=0:u>0}(r.endAt,cn(r),s))}(t,e)}function Ng(t){return t.collectionGroup||(t.path.length%2==1?t.path.lastSegment():t.path.get(t.path.length-2))}function Zu(t){return(e,n)=>{let r=!1;for(const s of cn(t)){const i=Dg(s,e,n);if(i!==0)return i;r=r||s.field.isKeyField()}return 0}}function Dg(t,e,n){const r=t.field.isKeyField()?I.comparator(e.key,n.key):function(i,o,a){const c=o.data.field(i),u=a.data.field(i);return c!==null&&u!==null?sn(c,u):A()}(t.field,e,n);switch(t.dir){case"asc":return r;case"desc":return-1*r;default:return A()}}/**
|
|
895
880
|
* @license
|
|
896
881
|
* Copyright 2017 Google LLC
|
|
897
882
|
*
|
|
@@ -906,7 +891,7 @@
|
|
|
906
891
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
907
892
|
* See the License for the specific language governing permissions and
|
|
908
893
|
* limitations under the License.
|
|
909
|
-
*/class
|
|
894
|
+
*/class ln{constructor(e,n){this.mapKeyFn=e,this.equalsFn=n,this.inner={},this.innerSize=0}get(e){const n=this.mapKeyFn(e),r=this.inner[n];if(r!==void 0){for(const[s,i]of r)if(this.equalsFn(s,e))return i}}has(e){return this.get(e)!==void 0}set(e,n){const r=this.mapKeyFn(e),s=this.inner[r];if(s===void 0)return this.inner[r]=[[e,n]],void this.innerSize++;for(let i=0;i<s.length;i++)if(this.equalsFn(s[i][0],e))return void(s[i]=[e,n]);s.push([e,n]),this.innerSize++}delete(e){const n=this.mapKeyFn(e),r=this.inner[n];if(r===void 0)return!1;for(let s=0;s<r.length;s++)if(this.equalsFn(r[s][0],e))return r.length===1?delete this.inner[n]:r.splice(s,1),this.innerSize--,!0;return!1}forEach(e){Vt(this.inner,(n,r)=>{for(const[s,i]of r)e(s,i)})}isEmpty(){return Vu(this.inner)}size(){return this.innerSize}}/**
|
|
910
895
|
* @license
|
|
911
896
|
* Copyright 2017 Google LLC
|
|
912
897
|
*
|
|
@@ -921,7 +906,7 @@
|
|
|
921
906
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
922
907
|
* See the License for the specific language governing permissions and
|
|
923
908
|
* limitations under the License.
|
|
924
|
-
*/const
|
|
909
|
+
*/const Og=new j(I.comparator);function Je(){return Og}const el=new j(I.comparator);function fr(...t){let e=el;for(const n of t)e=e.insert(n.key,n);return e}function tl(t){let e=el;return t.forEach((n,r)=>e=e.insert(n,r.overlayedDocument)),e}function xt(){return pr()}function nl(){return pr()}function pr(){return new ln(t=>t.toString(),(t,e)=>t.isEqual(e))}const Vg=new j(I.comparator),Lg=new re(I.comparator);function N(...t){let e=Lg;for(const n of t)e=e.add(n);return e}const Mg=new re(L);function Ug(){return Mg}/**
|
|
925
910
|
* @license
|
|
926
911
|
* Copyright 2020 Google LLC
|
|
927
912
|
*
|
|
@@ -936,7 +921,7 @@
|
|
|
936
921
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
937
922
|
* See the License for the specific language governing permissions and
|
|
938
923
|
* limitations under the License.
|
|
939
|
-
*/function
|
|
924
|
+
*/function rl(t,e){if(t.useProto3Json){if(isNaN(e))return{doubleValue:"NaN"};if(e===1/0)return{doubleValue:"Infinity"};if(e===-1/0)return{doubleValue:"-Infinity"}}return{doubleValue:_s(e)?"-0":e}}function sl(t){return{integerValue:""+t}}function xg(t,e){return gg(e)?sl(e):rl(t,e)}/**
|
|
940
925
|
* @license
|
|
941
926
|
* Copyright 2018 Google LLC
|
|
942
927
|
*
|
|
@@ -951,7 +936,7 @@
|
|
|
951
936
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
952
937
|
* See the License for the specific language governing permissions and
|
|
953
938
|
* limitations under the License.
|
|
954
|
-
*/class
|
|
939
|
+
*/class Ps{constructor(){this._=void 0}}function Fg(t,e,n){return t instanceof Ss?function(s,i){const o={fields:{__type__:{stringValue:"server_timestamp"},__local_write_time__:{timestampValue:{seconds:s.seconds,nanos:s.nanoseconds}}}};return i&&Es(i)&&(i=Io(i)),i&&(o.fields.__previous_value__=i),{mapValue:o}}(n,e):t instanceof mr?ol(t,e):t instanceof gr?al(t,e):function(s,i){const o=il(s,i),a=cl(o)+cl(s.Ie);return Ao(o)&&Ao(s.Ie)?sl(a):rl(s.serializer,a)}(t,e)}function Bg(t,e,n){return t instanceof mr?ol(t,e):t instanceof gr?al(t,e):n}function il(t,e){return t instanceof Cs?function(r){return Ao(r)||function(i){return!!i&&"doubleValue"in i}(r)}(e)?e:{integerValue:0}:null}class Ss extends Ps{}class mr extends Ps{constructor(e){super(),this.elements=e}}function ol(t,e){const n=ul(e);for(const r of t.elements)n.some(s=>Fe(s,r))||n.push(r);return{arrayValue:{values:n}}}class gr extends Ps{constructor(e){super(),this.elements=e}}function al(t,e){let n=ul(e);for(const r of t.elements)n=n.filter(s=>!Fe(s,r));return{arrayValue:{values:n}}}class Cs extends Ps{constructor(e,n){super(),this.serializer=e,this.Ie=n}}function cl(t){return W(t.integerValue||t.doubleValue)}function ul(t){return Ro(t)&&t.arrayValue.values?t.arrayValue.values.slice():[]}function qg(t,e){return t.field.isEqual(e.field)&&function(r,s){return r instanceof mr&&s instanceof mr||r instanceof gr&&s instanceof gr?rn(r.elements,s.elements,Fe):r instanceof Cs&&s instanceof Cs?Fe(r.Ie,s.Ie):r instanceof Ss&&s instanceof Ss}(t.transform,e.transform)}class $g{constructor(e,n){this.version=e,this.transformResults=n}}class Pe{constructor(e,n){this.updateTime=e,this.exists=n}static none(){return new Pe}static exists(e){return new Pe(void 0,e)}static updateTime(e){return new Pe(e)}get isNone(){return this.updateTime===void 0&&this.exists===void 0}isEqual(e){return this.exists===e.exists&&(this.updateTime?!!e.updateTime&&this.updateTime.isEqual(e.updateTime):!e.updateTime)}}function bs(t,e){return t.updateTime!==void 0?e.isFoundDocument()&&e.version.isEqual(t.updateTime):t.exists===void 0||t.exists===e.isFoundDocument()}class ks{}function ll(t,e){if(!t.hasLocalMutations||e&&e.fields.length===0)return null;if(e===null)return t.isNoDocument()?new Ns(t.key,Pe.none()):new yr(t.key,t.data,Pe.none());{const n=t.data,r=ge.empty();let s=new re(te.comparator);for(let i of e.fields)if(!s.has(i)){let o=n.field(i);o===null&&i.length>1&&(i=i.popLast(),o=n.field(i)),o===null?r.delete(i):r.set(i,o),s=s.add(i)}return new mt(t.key,r,new Te(s.toArray()),Pe.none())}}function jg(t,e,n){t instanceof yr?function(s,i,o){const a=s.value.clone(),c=fl(s.fieldTransforms,i,o.transformResults);a.setAll(c),i.convertToFoundDocument(o.version,a).setHasCommittedMutations()}(t,e,n):t instanceof mt?function(s,i,o){if(!bs(s.precondition,i))return void i.convertToUnknownDocument(o.version);const a=fl(s.fieldTransforms,i,o.transformResults),c=i.data;c.setAll(dl(s)),c.setAll(a),i.convertToFoundDocument(o.version,c).setHasCommittedMutations()}(t,e,n):function(s,i,o){i.convertToNoDocument(o.version).setHasCommittedMutations()}(0,e,n)}function _r(t,e,n,r){return t instanceof yr?function(i,o,a,c){if(!bs(i.precondition,o))return a;const u=i.value.clone(),l=pl(i.fieldTransforms,c,o);return u.setAll(l),o.convertToFoundDocument(o.version,u).setHasLocalMutations(),null}(t,e,n,r):t instanceof mt?function(i,o,a,c){if(!bs(i.precondition,o))return a;const u=pl(i.fieldTransforms,c,o),l=o.data;return l.setAll(dl(i)),l.setAll(u),o.convertToFoundDocument(o.version,l).setHasLocalMutations(),a===null?null:a.unionWith(i.fieldMask.fields).unionWith(i.fieldTransforms.map(h=>h.field))}(t,e,n,r):function(i,o,a){return bs(i.precondition,o)?(o.convertToNoDocument(o.version).setHasLocalMutations(),null):a}(t,e,n)}function zg(t,e){let n=null;for(const r of t.fieldTransforms){const s=e.data.field(r.field),i=il(r.transform,s||null);i!=null&&(n===null&&(n=ge.empty()),n.set(r.field,i))}return n||null}function hl(t,e){return t.type===e.type&&!!t.key.isEqual(e.key)&&!!t.precondition.isEqual(e.precondition)&&!!function(r,s){return r===void 0&&s===void 0||!(!r||!s)&&rn(r,s,(i,o)=>qg(i,o))}(t.fieldTransforms,e.fieldTransforms)&&(t.type===0?t.value.isEqual(e.value):t.type!==1||t.data.isEqual(e.data)&&t.fieldMask.isEqual(e.fieldMask))}class yr extends ks{constructor(e,n,r,s=[]){super(),this.key=e,this.value=n,this.precondition=r,this.fieldTransforms=s,this.type=0}getFieldMask(){return null}}class mt extends ks{constructor(e,n,r,s,i=[]){super(),this.key=e,this.data=n,this.fieldMask=r,this.precondition=s,this.fieldTransforms=i,this.type=1}getFieldMask(){return this.fieldMask}}function dl(t){const e=new Map;return t.fieldMask.fields.forEach(n=>{if(!n.isEmpty()){const r=t.data.field(n);e.set(n,r)}}),e}function fl(t,e,n){const r=new Map;F(t.length===n.length);for(let s=0;s<n.length;s++){const i=t[s],o=i.transform,a=e.data.field(i.field);r.set(i.field,Bg(o,a,n[s]))}return r}function pl(t,e,n){const r=new Map;for(const s of t){const i=s.transform,o=n.data.field(s.field);r.set(s.field,Fg(i,o,e))}return r}class Ns extends ks{constructor(e,n){super(),this.key=e,this.precondition=n,this.type=2,this.fieldTransforms=[]}getFieldMask(){return null}}class Hg extends ks{constructor(e,n){super(),this.key=e,this.precondition=n,this.type=3,this.fieldTransforms=[]}getFieldMask(){return null}}/**
|
|
955
940
|
* @license
|
|
956
941
|
* Copyright 2017 Google LLC
|
|
957
942
|
*
|
|
@@ -966,7 +951,7 @@
|
|
|
966
951
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
967
952
|
* See the License for the specific language governing permissions and
|
|
968
953
|
* limitations under the License.
|
|
969
|
-
*/class
|
|
954
|
+
*/class Wg{constructor(e,n,r,s){this.batchId=e,this.localWriteTime=n,this.baseMutations=r,this.mutations=s}applyToRemoteDocument(e,n){const r=n.mutationResults;for(let s=0;s<this.mutations.length;s++){const i=this.mutations[s];i.key.isEqual(e.key)&&jg(i,e,r[s])}}applyToLocalView(e,n){for(const r of this.baseMutations)r.key.isEqual(e.key)&&(n=_r(r,e,n,this.localWriteTime));for(const r of this.mutations)r.key.isEqual(e.key)&&(n=_r(r,e,n,this.localWriteTime));return n}applyToLocalDocumentSet(e,n){const r=nl();return this.mutations.forEach(s=>{const i=e.get(s.key),o=i.overlayedDocument;let a=this.applyToLocalView(o,i.mutatedFields);a=n.has(s.key)?null:a;const c=ll(o,a);c!==null&&r.set(s.key,c),o.isValidDocument()||o.convertToNoDocument(S.min())}),r}keys(){return this.mutations.reduce((e,n)=>e.add(n.key),N())}isEqual(e){return this.batchId===e.batchId&&rn(this.mutations,e.mutations,(n,r)=>hl(n,r))&&rn(this.baseMutations,e.baseMutations,(n,r)=>hl(n,r))}}class Oo{constructor(e,n,r,s){this.batch=e,this.commitVersion=n,this.mutationResults=r,this.docVersions=s}static from(e,n,r){F(e.mutations.length===r.length);let s=function(){return Vg}();const i=e.mutations;for(let o=0;o<i.length;o++)s=s.insert(i[o].key,r[o].version);return new Oo(e,n,r,s)}}/**
|
|
970
955
|
* @license
|
|
971
956
|
* Copyright 2022 Google LLC
|
|
972
957
|
*
|
|
@@ -981,7 +966,7 @@
|
|
|
981
966
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
982
967
|
* See the License for the specific language governing permissions and
|
|
983
968
|
* limitations under the License.
|
|
984
|
-
*/class
|
|
969
|
+
*/class Gg{constructor(e,n){this.largestBatchId=e,this.mutation=n}getKey(){return this.mutation.key}isEqual(e){return e!==null&&this.mutation===e.mutation}toString(){return`Overlay{
|
|
985
970
|
largestBatchId: ${this.largestBatchId},
|
|
986
971
|
mutation: ${this.mutation.toString()}
|
|
987
972
|
}`}}/**
|
|
@@ -999,7 +984,7 @@
|
|
|
999
984
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1000
985
|
* See the License for the specific language governing permissions and
|
|
1001
986
|
* limitations under the License.
|
|
1002
|
-
*/class
|
|
987
|
+
*/class Kg{constructor(e,n,r){this.alias=e,this.aggregateType=n,this.fieldPath=r}}/**
|
|
1003
988
|
* @license
|
|
1004
989
|
* Copyright 2017 Google LLC
|
|
1005
990
|
*
|
|
@@ -1014,7 +999,7 @@
|
|
|
1014
999
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1015
1000
|
* See the License for the specific language governing permissions and
|
|
1016
1001
|
* limitations under the License.
|
|
1017
|
-
*/class
|
|
1002
|
+
*/class Qg{constructor(e,n){this.count=e,this.unchangedNames=n}}/**
|
|
1018
1003
|
* @license
|
|
1019
1004
|
* Copyright 2017 Google LLC
|
|
1020
1005
|
*
|
|
@@ -1029,7 +1014,7 @@
|
|
|
1029
1014
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1030
1015
|
* See the License for the specific language governing permissions and
|
|
1031
1016
|
* limitations under the License.
|
|
1032
|
-
*/var
|
|
1017
|
+
*/var K,V;function Yg(t){switch(t){default:return A();case p.CANCELLED:case p.UNKNOWN:case p.DEADLINE_EXCEEDED:case p.RESOURCE_EXHAUSTED:case p.INTERNAL:case p.UNAVAILABLE:case p.UNAUTHENTICATED:return!1;case p.INVALID_ARGUMENT:case p.NOT_FOUND:case p.ALREADY_EXISTS:case p.PERMISSION_DENIED:case p.FAILED_PRECONDITION:case p.ABORTED:case p.OUT_OF_RANGE:case p.UNIMPLEMENTED:case p.DATA_LOSS:return!0}}function ml(t){if(t===void 0)return Xe("GRPC error has no .code"),p.UNKNOWN;switch(t){case K.OK:return p.OK;case K.CANCELLED:return p.CANCELLED;case K.UNKNOWN:return p.UNKNOWN;case K.DEADLINE_EXCEEDED:return p.DEADLINE_EXCEEDED;case K.RESOURCE_EXHAUSTED:return p.RESOURCE_EXHAUSTED;case K.INTERNAL:return p.INTERNAL;case K.UNAVAILABLE:return p.UNAVAILABLE;case K.UNAUTHENTICATED:return p.UNAUTHENTICATED;case K.INVALID_ARGUMENT:return p.INVALID_ARGUMENT;case K.NOT_FOUND:return p.NOT_FOUND;case K.ALREADY_EXISTS:return p.ALREADY_EXISTS;case K.PERMISSION_DENIED:return p.PERMISSION_DENIED;case K.FAILED_PRECONDITION:return p.FAILED_PRECONDITION;case K.ABORTED:return p.ABORTED;case K.OUT_OF_RANGE:return p.OUT_OF_RANGE;case K.UNIMPLEMENTED:return p.UNIMPLEMENTED;case K.DATA_LOSS:return p.DATA_LOSS;default:return A()}}(V=K||(K={}))[V.OK=0]="OK",V[V.CANCELLED=1]="CANCELLED",V[V.UNKNOWN=2]="UNKNOWN",V[V.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",V[V.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",V[V.NOT_FOUND=5]="NOT_FOUND",V[V.ALREADY_EXISTS=6]="ALREADY_EXISTS",V[V.PERMISSION_DENIED=7]="PERMISSION_DENIED",V[V.UNAUTHENTICATED=16]="UNAUTHENTICATED",V[V.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",V[V.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",V[V.ABORTED=10]="ABORTED",V[V.OUT_OF_RANGE=11]="OUT_OF_RANGE",V[V.UNIMPLEMENTED=12]="UNIMPLEMENTED",V[V.INTERNAL=13]="INTERNAL",V[V.UNAVAILABLE=14]="UNAVAILABLE",V[V.DATA_LOSS=15]="DATA_LOSS";/**
|
|
1033
1018
|
* @license
|
|
1034
1019
|
* Copyright 2023 Google LLC
|
|
1035
1020
|
*
|
|
@@ -1044,7 +1029,7 @@
|
|
|
1044
1029
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1045
1030
|
* See the License for the specific language governing permissions and
|
|
1046
1031
|
* limitations under the License.
|
|
1047
|
-
*/function
|
|
1032
|
+
*/function Xg(){return new TextEncoder}/**
|
|
1048
1033
|
* @license
|
|
1049
1034
|
* Copyright 2022 Google LLC
|
|
1050
1035
|
*
|
|
@@ -1059,7 +1044,7 @@
|
|
|
1059
1044
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1060
1045
|
* See the License for the specific language governing permissions and
|
|
1061
1046
|
* limitations under the License.
|
|
1062
|
-
*/const
|
|
1047
|
+
*/const Jg=new en([4294967295,4294967295],0);function gl(t){const e=Xg().encode(t),n=new tg;return n.update(e),new Uint8Array(n.digest())}function _l(t){const e=new DataView(t.buffer),n=e.getUint32(0,!0),r=e.getUint32(4,!0),s=e.getUint32(8,!0),i=e.getUint32(12,!0);return[new en([n,r],0),new en([s,i],0)]}class Vo{constructor(e,n,r){if(this.bitmap=e,this.padding=n,this.hashCount=r,n<0||n>=8)throw new Er(`Invalid padding: ${n}`);if(r<0)throw new Er(`Invalid hash count: ${r}`);if(e.length>0&&this.hashCount===0)throw new Er(`Invalid hash count: ${r}`);if(e.length===0&&n!==0)throw new Er(`Invalid padding when bitmap length is 0: ${n}`);this.Te=8*e.length-n,this.Ee=en.fromNumber(this.Te)}de(e,n,r){let s=e.add(n.multiply(en.fromNumber(r)));return s.compare(Jg)===1&&(s=new en([s.getBits(0),s.getBits(1)],0)),s.modulo(this.Ee).toNumber()}Ae(e){return(this.bitmap[Math.floor(e/8)]&1<<e%8)!=0}mightContain(e){if(this.Te===0)return!1;const n=gl(e),[r,s]=_l(n);for(let i=0;i<this.hashCount;i++){const o=this.de(r,s,i);if(!this.Ae(o))return!1}return!0}static create(e,n,r){const s=e%8==0?0:8-e%8,i=new Uint8Array(Math.ceil(e/8)),o=new Vo(i,s,n);return r.forEach(a=>o.insert(a)),o}insert(e){if(this.Te===0)return;const n=gl(e),[r,s]=_l(n);for(let i=0;i<this.hashCount;i++){const o=this.de(r,s,i);this.Re(o)}}Re(e){const n=Math.floor(e/8),r=e%8;this.bitmap[n]|=1<<r}}class Er extends Error{constructor(){super(...arguments),this.name="BloomFilterError"}}/**
|
|
1063
1048
|
* @license
|
|
1064
1049
|
* Copyright 2017 Google LLC
|
|
1065
1050
|
*
|
|
@@ -1074,7 +1059,7 @@
|
|
|
1074
1059
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1075
1060
|
* See the License for the specific language governing permissions and
|
|
1076
1061
|
* limitations under the License.
|
|
1077
|
-
*/class
|
|
1062
|
+
*/class Ds{constructor(e,n,r,s,i){this.snapshotVersion=e,this.targetChanges=n,this.targetMismatches=r,this.documentUpdates=s,this.resolvedLimboDocuments=i}static createSynthesizedRemoteEventForCurrentChange(e,n,r){const s=new Map;return s.set(e,vr.createSynthesizedTargetChangeForCurrentChange(e,n,r)),new Ds(S.min(),s,new j(L),Je(),N())}}class vr{constructor(e,n,r,s,i){this.resumeToken=e,this.current=n,this.addedDocuments=r,this.modifiedDocuments=s,this.removedDocuments=i}static createSynthesizedTargetChangeForCurrentChange(e,n,r){return new vr(r,n,N(),N(),N())}}/**
|
|
1078
1063
|
* @license
|
|
1079
1064
|
* Copyright 2017 Google LLC
|
|
1080
1065
|
*
|
|
@@ -1089,7 +1074,7 @@
|
|
|
1089
1074
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1090
1075
|
* See the License for the specific language governing permissions and
|
|
1091
1076
|
* limitations under the License.
|
|
1092
|
-
*/class Ls{constructor(e,n,r,s){this.Ve=e,this.removedTargetIds=n,this.key=r,this.me=s}}class Pl{constructor(e,n){this.targetId=e,this.fe=n}}class Sl{constructor(e,n,r=le.EMPTY_BYTE_STRING,s=null){this.state=e,this.targetIds=n,this.resumeToken=r,this.cause=s}}class bl{constructor(){this.ge=0,this.pe=kl(),this.ye=le.EMPTY_BYTE_STRING,this.we=!1,this.Se=!0}get current(){return this.we}get resumeToken(){return this.ye}get be(){return this.ge!==0}get De(){return this.Se}Ce(e){e.approximateByteSize()>0&&(this.Se=!0,this.ye=e)}ve(){let e=D(),n=D(),r=D();return this.pe.forEach((s,i)=>{switch(i){case 0:e=e.add(s);break;case 2:n=n.add(s);break;case 1:r=r.add(s);break;default:A()}}),new wr(this.ye,this.we,e,n,r)}Fe(){this.Se=!1,this.pe=kl()}Me(e,n){this.Se=!0,this.pe=this.pe.insert(e,n)}xe(e){this.Se=!0,this.pe=this.pe.remove(e)}Oe(){this.ge+=1}Ne(){this.ge-=1,F(this.ge>=0)}Be(){this.Se=!0,this.we=!0}}class u_{constructor(e){this.Le=e,this.ke=new Map,this.qe=Ze(),this.Qe=Cl(),this.Ke=new q(M)}$e(e){for(const n of e.Ve)e.me&&e.me.isFoundDocument()?this.Ue(n,e.me):this.We(n,e.key,e.me);for(const n of e.removedTargetIds)this.We(n,e.key,e.me)}Ge(e){this.forEachTarget(e,n=>{const r=this.ze(n);switch(e.state){case 0:this.je(n)&&r.Ce(e.resumeToken);break;case 1:r.Ne(),r.be||r.Fe(),r.Ce(e.resumeToken);break;case 2:r.Ne(),r.be||this.removeTarget(n);break;case 3:this.je(n)&&(r.Be(),r.Ce(e.resumeToken));break;case 4:this.je(n)&&(this.He(n),r.Ce(e.resumeToken));break;default:A()}})}forEachTarget(e,n){e.targetIds.length>0?e.targetIds.forEach(n):this.ke.forEach((r,s)=>{this.je(s)&&n(s)})}Je(e){const n=e.targetId,r=e.fe.count,s=this.Ye(n);if(s){const i=s.target;if(Vo(i))if(r===0){const o=new w(i.path);this.We(n,o,he.newNoDocument(o,S.min()))}else F(r===1);else{const o=this.Ze(n);if(o!==r){const a=this.Xe(e),c=a?this.et(a,e,o):1;if(c!==0){this.He(n);const u=c===2?"TargetPurposeExistenceFilterMismatchBloom":"TargetPurposeExistenceFilterMismatch";this.Ke=this.Ke.insert(n,u)}}}}}Xe(e){const n=e.fe.unchangedNames;if(!n||!n.bits)return null;const{bits:{bitmap:r="",padding:s=0},hashCount:i=0}=n;let o,a;try{o=xt(r).toUint8Array()}catch(c){if(c instanceof zu)return sn("Decoding the base64 bloom filter in existence filter failed ("+c.message+"); ignoring the bloom filter and falling back to full re-query."),null;throw c}try{a=new Fo(o,s,i)}catch(c){return sn(c instanceof Tr?"BloomFilter error: ":"Applying bloom filter failed: ",c),null}return a.Te===0?null:a}et(e,n,r){return n.fe.count===r-this.rt(e,n.targetId)?0:2}rt(e,n){const r=this.Le.getRemoteKeysForTarget(n);let s=0;return r.forEach(i=>{const o=this.Le.nt(),a=`projects/${o.projectId}/databases/${o.database}/documents/${i.path.canonicalString()}`;e.mightContain(a)||(this.We(n,i,null),s++)}),s}it(e){const n=new Map;this.ke.forEach((i,o)=>{const a=this.Ye(o);if(a){if(i.current&&Vo(a.target)){const c=new w(a.target.path);this.qe.get(c)!==null||this.st(o,c)||this.We(o,c,he.newNoDocument(c,e))}i.De&&(n.set(o,i.ve()),i.Fe())}});let r=D();this.Qe.forEach((i,o)=>{let a=!0;o.forEachWhile(c=>{const u=this.Ye(c);return!u||u.purpose==="TargetPurposeLimboResolution"||(a=!1,!1)}),a&&(r=r.add(i))}),this.qe.forEach((i,o)=>o.setReadTime(e));const s=new Vs(e,n,this.Ke,this.qe,r);return this.qe=Ze(),this.Qe=Cl(),this.Ke=new q(M),s}Ue(e,n){if(!this.je(e))return;const r=this.st(e,n.key)?2:0;this.ze(e).Me(n.key,r),this.qe=this.qe.insert(n.key,n),this.Qe=this.Qe.insert(n.key,this.ot(n.key).add(e))}We(e,n,r){if(!this.je(e))return;const s=this.ze(e);this.st(e,n)?s.Me(n,1):s.xe(n),this.Qe=this.Qe.insert(n,this.ot(n).delete(e)),r&&(this.qe=this.qe.insert(n,r))}removeTarget(e){this.ke.delete(e)}Ze(e){const n=this.ze(e).ve();return this.Le.getRemoteKeysForTarget(e).size+n.addedDocuments.size-n.removedDocuments.size}Oe(e){this.ze(e).Oe()}ze(e){let n=this.ke.get(e);return n||(n=new bl,this.ke.set(e,n)),n}ot(e){let n=this.Qe.get(e);return n||(n=new se(M),this.Qe=this.Qe.insert(e,n)),n}je(e){const n=this.Ye(e)!==null;return n||v("WatchChangeAggregator","Detected inactive target",e),n}Ye(e){const n=this.ke.get(e);return n&&n.be?null:this.Le._t(e)}He(e){this.ke.set(e,new bl),this.Le.getRemoteKeysForTarget(e).forEach(n=>{this.We(e,n,null)})}st(e,n){return this.Le.getRemoteKeysForTarget(e).has(n)}}function Cl(){return new q(w.comparator)}function kl(){return new q(w.comparator)}const l_={asc:"ASCENDING",desc:"DESCENDING"},h_={"<":"LESS_THAN","<=":"LESS_THAN_OR_EQUAL",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL","==":"EQUAL","!=":"NOT_EQUAL","array-contains":"ARRAY_CONTAINS",in:"IN","not-in":"NOT_IN","array-contains-any":"ARRAY_CONTAINS_ANY"},d_={and:"AND",or:"OR"};class f_{constructor(e,n){this.databaseId=e,this.useProto3Json=n}}function Bo(t,e){return t.useProto3Json||ys(e)?e:{value:e}}function Ms(t,e){return t.useProto3Json?`${new Date(1e3*e.seconds).toISOString().replace(/\.\d*/,"").replace("Z","")}.${("000000000"+e.nanoseconds).slice(-9)}Z`:{seconds:""+e.seconds,nanos:e.nanoseconds}}function Dl(t,e){return t.useProto3Json?e.toBase64():e.toUint8Array()}function p_(t,e){return Ms(t,e.toTimestamp())}function qe(t){return F(!!t),S.fromTimestamp(function(n){const r=pt(n);return new Y(r.seconds,r.nanos)}(t))}function jo(t,e){return $o(t,e).canonicalString()}function $o(t,e){const n=function(s){return new B(["projects",s.projectId,"databases",s.database])}(t).child("documents");return e===void 0?n:n.child(e)}function Nl(t){const e=B.fromString(t);return F(Fl(e)),e}function qo(t,e){return jo(t.databaseId,e.path)}function zo(t,e){const n=Nl(e);if(n.get(1)!==t.databaseId.projectId)throw new g(p.INVALID_ARGUMENT,"Tried to deserialize key from different project: "+n.get(1)+" vs "+t.databaseId.projectId);if(n.get(3)!==t.databaseId.database)throw new g(p.INVALID_ARGUMENT,"Tried to deserialize key from different database: "+n.get(3)+" vs "+t.databaseId.database);return new w(Vl(n))}function Ol(t,e){return jo(t.databaseId,e)}function m_(t){const e=Nl(t);return e.length===4?B.emptyPath():Vl(e)}function Ho(t){return new B(["projects",t.databaseId.projectId,"databases",t.databaseId.database]).canonicalString()}function Vl(t){return F(t.length>4&&t.get(4)==="documents"),t.popFirst(5)}function Ll(t,e,n){return{name:qo(t,e),fields:n.value.mapValue.fields}}function g_(t,e){let n;if("targetChange"in e){e.targetChange;const r=function(u){return u==="NO_CHANGE"?0:u==="ADD"?1:u==="REMOVE"?2:u==="CURRENT"?3:u==="RESET"?4:A()}(e.targetChange.targetChangeType||"NO_CHANGE"),s=e.targetChange.targetIds||[],i=function(u,l){return u.useProto3Json?(F(l===void 0||typeof l=="string"),le.fromBase64String(l||"")):(F(l===void 0||l instanceof Uint8Array),le.fromUint8Array(l||new Uint8Array))}(t,e.targetChange.resumeToken),o=e.targetChange.cause,a=o&&function(u){const l=u.code===void 0?p.UNKNOWN:Il(u.code);return new g(l,u.message||"")}(o);n=new Sl(r,s,i,a||null)}else if("documentChange"in e){e.documentChange;const r=e.documentChange;r.document,r.document.name,r.document.updateTime;const s=zo(t,r.document.name),i=qe(r.document.updateTime),o=r.document.createTime?qe(r.document.createTime):S.min(),a=new me({mapValue:{fields:r.document.fields}}),c=he.newFoundDocument(s,i,o,a),u=r.targetIds||[],l=r.removedTargetIds||[];n=new Ls(u,l,c.key,c)}else if("documentDelete"in e){e.documentDelete;const r=e.documentDelete;r.document;const s=zo(t,r.document),i=r.readTime?qe(r.readTime):S.min(),o=he.newNoDocument(s,i),a=r.removedTargetIds||[];n=new Ls([],a,o.key,o)}else if("documentRemove"in e){e.documentRemove;const r=e.documentRemove;r.document;const s=zo(t,r.document),i=r.removedTargetIds||[];n=new Ls([],i,s,null)}else{if(!("filter"in e))return A();{e.filter;const r=e.filter;r.targetId;const{count:s=0,unchangedNames:i}=r,o=new i_(s,i),a=r.targetId;n=new Pl(a,o)}}return n}function __(t,e){let n;if(e instanceof Er)n={update:Ll(t,e.key,e.value)};else if(e instanceof Os)n={delete:qo(t,e.key)};else if(e instanceof mt)n={update:Ll(t,e.key,e.data),updateMask:R_(e.fieldMask)};else{if(!(e instanceof t_))return A();n={verify:qo(t,e.key)}}return e.fieldTransforms.length>0&&(n.updateTransforms=e.fieldTransforms.map(r=>function(i,o){const a=o.transform;if(a instanceof Cs)return{fieldPath:o.field.canonicalString(),setToServerValue:"REQUEST_TIME"};if(a instanceof _r)return{fieldPath:o.field.canonicalString(),appendMissingElements:{values:a.elements}};if(a instanceof yr)return{fieldPath:o.field.canonicalString(),removeAllFromArray:{values:a.elements}};if(a instanceof ks)return{fieldPath:o.field.canonicalString(),increment:a.Ie};throw A()}(0,r))),e.precondition.isNone||(n.currentDocument=function(s,i){return i.updateTime!==void 0?{updateTime:p_(s,i.updateTime)}:i.exists!==void 0?{exists:i.exists}:A()}(t,e.precondition)),n}function y_(t,e){return t&&t.length>0?(F(e!==void 0),t.map(n=>function(s,i){let o=s.updateTime?qe(s.updateTime):qe(i);return o.isEqual(S.min())&&(o=qe(i)),new Jg(o,s.transformResults||[])}(n,e))):[]}function v_(t,e){return{documents:[Ol(t,e.path)]}}function Ml(t,e){const n={structuredQuery:{}},r=e.path;let s;e.collectionGroup!==null?(s=r,n.structuredQuery.from=[{collectionId:e.collectionGroup,allDescendants:!0}]):(s=r.popLast(),n.structuredQuery.from=[{collectionId:r.lastSegment()}]),n.parent=Ol(t,s);const i=function(u){if(u.length!==0)return Ul(Ne.create(u,"and"))}(e.filters);i&&(n.structuredQuery.where=i);const o=function(u){if(u.length!==0)return u.map(l=>function(d){return{field:gt(d.field),direction:w_(d.dir)}}(l))}(e.orderBy);o&&(n.structuredQuery.orderBy=o);const a=Bo(t,e.limit);return a!==null&&(n.structuredQuery.limit=a),e.startAt&&(n.structuredQuery.startAt=function(u){return{before:u.inclusive,values:u.position}}(e.startAt)),e.endAt&&(n.structuredQuery.endAt=function(u){return{before:!u.inclusive,values:u.position}}(e.endAt)),{ut:n,parent:s}}function E_(t){let e=m_(t.parent);const n=t.structuredQuery,r=n.from?n.from.length:0;let s=null;if(r>0){F(r===1);const l=n.from[0];l.allDescendants?s=l.collectionId:e=e.child(l.collectionId)}let i=[];n.where&&(i=function(h){const d=xl(h);return d instanceof Ne&&Zu(d)?d.getFilters():[d]}(n.where));let o=[];n.orderBy&&(o=function(h){return h.map(d=>function(E){return new pr(fn(E.field),function(_){switch(_){case"ASCENDING":return"asc";case"DESCENDING":return"desc";default:return}}(E.direction))}(d))}(n.orderBy));let a=null;n.limit&&(a=function(h){let d;return d=typeof h=="object"?h.value:h,ys(d)?null:d}(n.limit));let c=null;n.startAt&&(c=function(h){const d=!!h.before,f=h.values||[];return new un(f,d)}(n.startAt));let u=null;return n.endAt&&(u=function(h){const d=!h.before,f=h.values||[];return new un(f,d)}(n.endAt)),Bg(e,s,o,i,a,"F",c,u)}function T_(t,e){const n=function(s){switch(s){case"TargetPurposeListen":return null;case"TargetPurposeExistenceFilterMismatch":return"existence-filter-mismatch";case"TargetPurposeExistenceFilterMismatchBloom":return"existence-filter-mismatch-bloom";case"TargetPurposeLimboResolution":return"limbo-document";default:return A()}}(e.purpose);return n==null?null:{"goog-listen-tags":n}}function xl(t){return t.unaryFilter!==void 0?function(n){switch(n.unaryFilter.op){case"IS_NAN":const r=fn(n.unaryFilter.field);return K.create(r,"==",{doubleValue:NaN});case"IS_NULL":const s=fn(n.unaryFilter.field);return K.create(s,"==",{nullValue:"NULL_VALUE"});case"IS_NOT_NAN":const i=fn(n.unaryFilter.field);return K.create(i,"!=",{doubleValue:NaN});case"IS_NOT_NULL":const o=fn(n.unaryFilter.field);return K.create(o,"!=",{nullValue:"NULL_VALUE"});default:return A()}}(t):t.fieldFilter!==void 0?function(n){return K.create(fn(n.fieldFilter.field),function(s){switch(s){case"EQUAL":return"==";case"NOT_EQUAL":return"!=";case"GREATER_THAN":return">";case"GREATER_THAN_OR_EQUAL":return">=";case"LESS_THAN":return"<";case"LESS_THAN_OR_EQUAL":return"<=";case"ARRAY_CONTAINS":return"array-contains";case"IN":return"in";case"NOT_IN":return"not-in";case"ARRAY_CONTAINS_ANY":return"array-contains-any";default:return A()}}(n.fieldFilter.op),n.fieldFilter.value)}(t):t.compositeFilter!==void 0?function(n){return Ne.create(n.compositeFilter.filters.map(r=>xl(r)),function(s){switch(s){case"AND":return"and";case"OR":return"or";default:return A()}}(n.compositeFilter.op))}(t):A()}function w_(t){return l_[t]}function I_(t){return h_[t]}function A_(t){return d_[t]}function gt(t){return{fieldPath:t.canonicalString()}}function fn(t){return ne.fromServerFormat(t.fieldPath)}function Ul(t){return t instanceof K?function(n){if(n.op==="=="){if(Gu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NAN"}};if(Wu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NULL"}}}else if(n.op==="!="){if(Gu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NOT_NAN"}};if(Wu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NOT_NULL"}}}return{fieldFilter:{field:gt(n.field),op:I_(n.op),value:n.value}}}(t):t instanceof Ne?function(n){const r=n.getFilters().map(s=>Ul(s));return r.length===1?r[0]:{compositeFilter:{op:A_(n.op),filters:r}}}(t):A()}function R_(t){const e=[];return t.fields.forEach(n=>e.push(n.canonicalString())),{fieldPaths:e}}function Fl(t){return t.length>=4&&t.get(0)==="projects"&&t.get(2)==="databases"}/**
|
|
1077
|
+
*/class Os{constructor(e,n,r,s){this.Ve=e,this.removedTargetIds=n,this.key=r,this.me=s}}class yl{constructor(e,n){this.targetId=e,this.fe=n}}class El{constructor(e,n,r=ue.EMPTY_BYTE_STRING,s=null){this.state=e,this.targetIds=n,this.resumeToken=r,this.cause=s}}class vl{constructor(){this.ge=0,this.pe=Il(),this.ye=ue.EMPTY_BYTE_STRING,this.we=!1,this.Se=!0}get current(){return this.we}get resumeToken(){return this.ye}get be(){return this.ge!==0}get De(){return this.Se}Ce(e){e.approximateByteSize()>0&&(this.Se=!0,this.ye=e)}ve(){let e=N(),n=N(),r=N();return this.pe.forEach((s,i)=>{switch(i){case 0:e=e.add(s);break;case 2:n=n.add(s);break;case 1:r=r.add(s);break;default:A()}}),new vr(this.ye,this.we,e,n,r)}Fe(){this.Se=!1,this.pe=Il()}Me(e,n){this.Se=!0,this.pe=this.pe.insert(e,n)}xe(e){this.Se=!0,this.pe=this.pe.remove(e)}Oe(){this.ge+=1}Ne(){this.ge-=1}Be(){this.Se=!0,this.we=!0}}class Zg{constructor(e){this.Le=e,this.ke=new Map,this.qe=Je(),this.Qe=Tl(),this.Ke=new j(L)}$e(e){for(const n of e.Ve)e.me&&e.me.isFoundDocument()?this.Ue(n,e.me):this.We(n,e.key,e.me);for(const n of e.removedTargetIds)this.We(n,e.key,e.me)}Ge(e){this.forEachTarget(e,n=>{const r=this.ze(n);switch(e.state){case 0:this.je(n)&&r.Ce(e.resumeToken);break;case 1:r.Ne(),r.be||r.Fe(),r.Ce(e.resumeToken);break;case 2:r.Ne(),r.be||this.removeTarget(n);break;case 3:this.je(n)&&(r.Be(),r.Ce(e.resumeToken));break;case 4:this.je(n)&&(this.He(n),r.Ce(e.resumeToken));break;default:A()}})}forEachTarget(e,n){e.targetIds.length>0?e.targetIds.forEach(n):this.ke.forEach((r,s)=>{this.je(s)&&n(s)})}Je(e){const n=e.targetId,r=e.fe.count,s=this.Ye(n);if(s){const i=s.target;if(bo(i))if(r===0){const o=new I(i.path);this.We(n,o,le.newNoDocument(o,S.min()))}else F(r===1);else{const o=this.Ze(n);if(o!==r){const a=this.Xe(e),c=a?this.et(a,e,o):1;if(c!==0){this.He(n);const u=c===2?"TargetPurposeExistenceFilterMismatchBloom":"TargetPurposeExistenceFilterMismatch";this.Ke=this.Ke.insert(n,u)}}}}}Xe(e){const n=e.fe.unchangedNames;if(!n||!n.bits)return null;const{bits:{bitmap:r="",padding:s=0},hashCount:i=0}=n;let o,a;try{o=Lt(r).toUint8Array()}catch(c){if(c instanceof Mu)return nn("Decoding the base64 bloom filter in existence filter failed ("+c.message+"); ignoring the bloom filter and falling back to full re-query."),null;throw c}try{a=new Vo(o,s,i)}catch(c){return nn(c instanceof Er?"BloomFilter error: ":"Applying bloom filter failed: ",c),null}return a.Te===0?null:a}et(e,n,r){return n.fe.count===r-this.rt(e,n.targetId)?0:2}rt(e,n){const r=this.Le.getRemoteKeysForTarget(n);let s=0;return r.forEach(i=>{const o=this.Le.nt(),a=`projects/${o.projectId}/databases/${o.database}/documents/${i.path.canonicalString()}`;e.mightContain(a)||(this.We(n,i,null),s++)}),s}it(e){const n=new Map;this.ke.forEach((i,o)=>{const a=this.Ye(o);if(a){if(i.current&&bo(a.target)){const c=new I(a.target.path);this.qe.get(c)!==null||this.st(o,c)||this.We(o,c,le.newNoDocument(c,e))}i.De&&(n.set(o,i.ve()),i.Fe())}});let r=N();this.Qe.forEach((i,o)=>{let a=!0;o.forEachWhile(c=>{const u=this.Ye(c);return!u||u.purpose==="TargetPurposeLimboResolution"||(a=!1,!1)}),a&&(r=r.add(i))}),this.qe.forEach((i,o)=>o.setReadTime(e));const s=new Ds(e,n,this.Ke,this.qe,r);return this.qe=Je(),this.Qe=Tl(),this.Ke=new j(L),s}Ue(e,n){if(!this.je(e))return;const r=this.st(e,n.key)?2:0;this.ze(e).Me(n.key,r),this.qe=this.qe.insert(n.key,n),this.Qe=this.Qe.insert(n.key,this.ot(n.key).add(e))}We(e,n,r){if(!this.je(e))return;const s=this.ze(e);this.st(e,n)?s.Me(n,1):s.xe(n),this.Qe=this.Qe.insert(n,this.ot(n).delete(e)),r&&(this.qe=this.qe.insert(n,r))}removeTarget(e){this.ke.delete(e)}Ze(e){const n=this.ze(e).ve();return this.Le.getRemoteKeysForTarget(e).size+n.addedDocuments.size-n.removedDocuments.size}Oe(e){this.ze(e).Oe()}ze(e){let n=this.ke.get(e);return n||(n=new vl,this.ke.set(e,n)),n}ot(e){let n=this.Qe.get(e);return n||(n=new re(L),this.Qe=this.Qe.insert(e,n)),n}je(e){const n=this.Ye(e)!==null;return n||T("WatchChangeAggregator","Detected inactive target",e),n}Ye(e){const n=this.ke.get(e);return n&&n.be?null:this.Le._t(e)}He(e){this.ke.set(e,new vl),this.Le.getRemoteKeysForTarget(e).forEach(n=>{this.We(e,n,null)})}st(e,n){return this.Le.getRemoteKeysForTarget(e).has(n)}}function Tl(){return new j(I.comparator)}function Il(){return new j(I.comparator)}const e_={asc:"ASCENDING",desc:"DESCENDING"},t_={"<":"LESS_THAN","<=":"LESS_THAN_OR_EQUAL",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL","==":"EQUAL","!=":"NOT_EQUAL","array-contains":"ARRAY_CONTAINS",in:"IN","not-in":"NOT_IN","array-contains-any":"ARRAY_CONTAINS_ANY"},n_={and:"AND",or:"OR"};class r_{constructor(e,n){this.databaseId=e,this.useProto3Json=n}}function Lo(t,e){return t.useProto3Json||gs(e)?e:{value:e}}function Vs(t,e){return t.useProto3Json?`${new Date(1e3*e.seconds).toISOString().replace(/\.\d*/,"").replace("Z","")}.${("000000000"+e.nanoseconds).slice(-9)}Z`:{seconds:""+e.seconds,nanos:e.nanoseconds}}function wl(t,e){return t.useProto3Json?e.toBase64():e.toUint8Array()}function s_(t,e){return Vs(t,e.toTimestamp())}function qe(t){return F(!!t),S.fromTimestamp(function(n){const r=pt(n);return new Q(r.seconds,r.nanos)}(t))}function Mo(t,e){return function(r){return new B(["projects",r.projectId,"databases",r.database])}(t).child("documents").child(e).canonicalString()}function Al(t){const e=B.fromString(t);return F(kl(e)),e}function Uo(t,e){return Mo(t.databaseId,e.path)}function xo(t,e){const n=Al(e);if(n.get(1)!==t.databaseId.projectId)throw new _(p.INVALID_ARGUMENT,"Tried to deserialize key from different project: "+n.get(1)+" vs "+t.databaseId.projectId);if(n.get(3)!==t.databaseId.database)throw new _(p.INVALID_ARGUMENT,"Tried to deserialize key from different database: "+n.get(3)+" vs "+t.databaseId.database);return new I(Rl(n))}function Fo(t,e){return Mo(t.databaseId,e)}function i_(t){const e=Al(t);return e.length===4?B.emptyPath():Rl(e)}function Bo(t){return new B(["projects",t.databaseId.projectId,"databases",t.databaseId.database]).canonicalString()}function Rl(t){return F(t.length>4&&t.get(4)==="documents"),t.popFirst(5)}function Pl(t,e,n){return{name:Uo(t,e),fields:n.value.mapValue.fields}}function o_(t,e){let n;if("targetChange"in e){e.targetChange;const r=function(u){return u==="NO_CHANGE"?0:u==="ADD"?1:u==="REMOVE"?2:u==="CURRENT"?3:u==="RESET"?4:A()}(e.targetChange.targetChangeType||"NO_CHANGE"),s=e.targetChange.targetIds||[],i=function(u,l){return u.useProto3Json?(F(l===void 0||typeof l=="string"),ue.fromBase64String(l||"")):(F(l===void 0||l instanceof Uint8Array),ue.fromUint8Array(l||new Uint8Array))}(t,e.targetChange.resumeToken),o=e.targetChange.cause,a=o&&function(u){const l=u.code===void 0?p.UNKNOWN:ml(u.code);return new _(l,u.message||"")}(o);n=new El(r,s,i,a||null)}else if("documentChange"in e){e.documentChange;const r=e.documentChange;r.document,r.document.name,r.document.updateTime;const s=xo(t,r.document.name),i=qe(r.document.updateTime),o=r.document.createTime?qe(r.document.createTime):S.min(),a=new ge({mapValue:{fields:r.document.fields}}),c=le.newFoundDocument(s,i,o,a),u=r.targetIds||[],l=r.removedTargetIds||[];n=new Os(u,l,c.key,c)}else if("documentDelete"in e){e.documentDelete;const r=e.documentDelete;r.document;const s=xo(t,r.document),i=r.readTime?qe(r.readTime):S.min(),o=le.newNoDocument(s,i),a=r.removedTargetIds||[];n=new Os([],a,o.key,o)}else if("documentRemove"in e){e.documentRemove;const r=e.documentRemove;r.document;const s=xo(t,r.document),i=r.removedTargetIds||[];n=new Os([],i,s,null)}else{if(!("filter"in e))return A();{e.filter;const r=e.filter;r.targetId;const{count:s=0,unchangedNames:i}=r,o=new Qg(s,i),a=r.targetId;n=new yl(a,o)}}return n}function a_(t,e){let n;if(e instanceof yr)n={update:Pl(t,e.key,e.value)};else if(e instanceof Ns)n={delete:Uo(t,e.key)};else if(e instanceof mt)n={update:Pl(t,e.key,e.data),updateMask:m_(e.fieldMask)};else{if(!(e instanceof Hg))return A();n={verify:Uo(t,e.key)}}return e.fieldTransforms.length>0&&(n.updateTransforms=e.fieldTransforms.map(r=>function(i,o){const a=o.transform;if(a instanceof Ss)return{fieldPath:o.field.canonicalString(),setToServerValue:"REQUEST_TIME"};if(a instanceof mr)return{fieldPath:o.field.canonicalString(),appendMissingElements:{values:a.elements}};if(a instanceof gr)return{fieldPath:o.field.canonicalString(),removeAllFromArray:{values:a.elements}};if(a instanceof Cs)return{fieldPath:o.field.canonicalString(),increment:a.Ie};throw A()}(0,r))),e.precondition.isNone||(n.currentDocument=function(s,i){return i.updateTime!==void 0?{updateTime:s_(s,i.updateTime)}:i.exists!==void 0?{exists:i.exists}:A()}(t,e.precondition)),n}function c_(t,e){return t&&t.length>0?(F(e!==void 0),t.map(n=>function(s,i){let o=s.updateTime?qe(s.updateTime):qe(i);return o.isEqual(S.min())&&(o=qe(i)),new $g(o,s.transformResults||[])}(n,e))):[]}function u_(t,e){return{documents:[Fo(t,e.path)]}}function Sl(t,e){const n={structuredQuery:{}},r=e.path;e.collectionGroup!==null?(n.parent=Fo(t,r),n.structuredQuery.from=[{collectionId:e.collectionGroup,allDescendants:!0}]):(n.parent=Fo(t,r.popLast()),n.structuredQuery.from=[{collectionId:r.lastSegment()}]);const s=function(c){if(c.length!==0)return bl(Ne.create(c,"and"))}(e.filters);s&&(n.structuredQuery.where=s);const i=function(c){if(c.length!==0)return c.map(u=>function(h){return{field:gt(h.field),direction:d_(h.dir)}}(u))}(e.orderBy);i&&(n.structuredQuery.orderBy=i);const o=Lo(t,e.limit);return o!==null&&(n.structuredQuery.limit=o),e.startAt&&(n.structuredQuery.startAt=function(c){return{before:c.inclusive,values:c.position}}(e.startAt)),e.endAt&&(n.structuredQuery.endAt=function(c){return{before:!c.inclusive,values:c.position}}(e.endAt)),n}function l_(t){let e=i_(t.parent);const n=t.structuredQuery,r=n.from?n.from.length:0;let s=null;if(r>0){F(r===1);const l=n.from[0];l.allDescendants?s=l.collectionId:e=e.child(l.collectionId)}let i=[];n.where&&(i=function(h){const d=Cl(h);return d instanceof Ne&&Hu(d)?d.getFilters():[d]}(n.where));let o=[];n.orderBy&&(o=function(h){return h.map(d=>function(E){return new dr(hn(E.field),function(g){switch(g){case"ASCENDING":return"asc";case"DESCENDING":return"desc";default:return}}(E.direction))}(d))}(n.orderBy));let a=null;n.limit&&(a=function(h){let d;return d=typeof h=="object"?h.value:h,gs(d)?null:d}(n.limit));let c=null;n.startAt&&(c=function(h){const d=!!h.before,f=h.values||[];return new an(f,d)}(n.startAt));let u=null;return n.endAt&&(u=function(h){const d=!h.before,f=h.values||[];return new an(f,d)}(n.endAt)),kg(e,s,o,i,a,"F",c,u)}function h_(t,e){const n=function(s){switch(s){case"TargetPurposeListen":return null;case"TargetPurposeExistenceFilterMismatch":return"existence-filter-mismatch";case"TargetPurposeExistenceFilterMismatchBloom":return"existence-filter-mismatch-bloom";case"TargetPurposeLimboResolution":return"limbo-document";default:return A()}}(e.purpose);return n==null?null:{"goog-listen-tags":n}}function Cl(t){return t.unaryFilter!==void 0?function(n){switch(n.unaryFilter.op){case"IS_NAN":const r=hn(n.unaryFilter.field);return G.create(r,"==",{doubleValue:NaN});case"IS_NULL":const s=hn(n.unaryFilter.field);return G.create(s,"==",{nullValue:"NULL_VALUE"});case"IS_NOT_NAN":const i=hn(n.unaryFilter.field);return G.create(i,"!=",{doubleValue:NaN});case"IS_NOT_NULL":const o=hn(n.unaryFilter.field);return G.create(o,"!=",{nullValue:"NULL_VALUE"});default:return A()}}(t):t.fieldFilter!==void 0?function(n){return G.create(hn(n.fieldFilter.field),function(s){switch(s){case"EQUAL":return"==";case"NOT_EQUAL":return"!=";case"GREATER_THAN":return">";case"GREATER_THAN_OR_EQUAL":return">=";case"LESS_THAN":return"<";case"LESS_THAN_OR_EQUAL":return"<=";case"ARRAY_CONTAINS":return"array-contains";case"IN":return"in";case"NOT_IN":return"not-in";case"ARRAY_CONTAINS_ANY":return"array-contains-any";default:return A()}}(n.fieldFilter.op),n.fieldFilter.value)}(t):t.compositeFilter!==void 0?function(n){return Ne.create(n.compositeFilter.filters.map(r=>Cl(r)),function(s){switch(s){case"AND":return"and";case"OR":return"or";default:return A()}}(n.compositeFilter.op))}(t):A()}function d_(t){return e_[t]}function f_(t){return t_[t]}function p_(t){return n_[t]}function gt(t){return{fieldPath:t.canonicalString()}}function hn(t){return te.fromServerFormat(t.fieldPath)}function bl(t){return t instanceof G?function(n){if(n.op==="=="){if(Fu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NAN"}};if(xu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NULL"}}}else if(n.op==="!="){if(Fu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NOT_NAN"}};if(xu(n.value))return{unaryFilter:{field:gt(n.field),op:"IS_NOT_NULL"}}}return{fieldFilter:{field:gt(n.field),op:f_(n.op),value:n.value}}}(t):t instanceof Ne?function(n){const r=n.getFilters().map(s=>bl(s));return r.length===1?r[0]:{compositeFilter:{op:p_(n.op),filters:r}}}(t):A()}function m_(t){const e=[];return t.fields.forEach(n=>e.push(n.canonicalString())),{fieldPaths:e}}function kl(t){return t.length>=4&&t.get(0)==="projects"&&t.get(2)==="databases"}/**
|
|
1093
1078
|
* @license
|
|
1094
1079
|
* Copyright 2017 Google LLC
|
|
1095
1080
|
*
|
|
@@ -1104,7 +1089,7 @@
|
|
|
1104
1089
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1105
1090
|
* See the License for the specific language governing permissions and
|
|
1106
1091
|
* limitations under the License.
|
|
1107
|
-
*/class _t{constructor(e,n,r,s,i=S.min(),o=S.min(),a=
|
|
1092
|
+
*/class _t{constructor(e,n,r,s,i=S.min(),o=S.min(),a=ue.EMPTY_BYTE_STRING,c=null){this.target=e,this.targetId=n,this.purpose=r,this.sequenceNumber=s,this.snapshotVersion=i,this.lastLimboFreeSnapshotVersion=o,this.resumeToken=a,this.expectedCount=c}withSequenceNumber(e){return new _t(this.target,this.targetId,this.purpose,e,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,this.expectedCount)}withResumeToken(e,n){return new _t(this.target,this.targetId,this.purpose,this.sequenceNumber,n,this.lastLimboFreeSnapshotVersion,e,null)}withExpectedCount(e){return new _t(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,e)}withLastLimboFreeSnapshotVersion(e){return new _t(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,e,this.resumeToken,this.expectedCount)}}/**
|
|
1108
1093
|
* @license
|
|
1109
1094
|
* Copyright 2017 Google LLC
|
|
1110
1095
|
*
|
|
@@ -1119,7 +1104,7 @@
|
|
|
1119
1104
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1120
1105
|
* See the License for the specific language governing permissions and
|
|
1121
1106
|
* limitations under the License.
|
|
1122
|
-
*/class
|
|
1107
|
+
*/class g_{constructor(e){this.ut=e}}function __(t){const e=l_({parent:t.parent,structuredQuery:t.structuredQuery});return t.limitType==="LAST"?ws(e,e.limit,"L"):e}/**
|
|
1123
1108
|
* @license
|
|
1124
1109
|
* Copyright 2019 Google LLC
|
|
1125
1110
|
*
|
|
@@ -1134,7 +1119,7 @@
|
|
|
1134
1119
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1135
1120
|
* See the License for the specific language governing permissions and
|
|
1136
1121
|
* limitations under the License.
|
|
1137
|
-
*/class
|
|
1122
|
+
*/class y_{constructor(){this.on=new E_}addToCollectionParentIndex(e,n){return this.on.add(n),m.resolve()}getCollectionParents(e,n){return m.resolve(this.on.getEntries(n))}addFieldIndex(e,n){return m.resolve()}deleteFieldIndex(e,n){return m.resolve()}deleteAllFieldIndexes(e){return m.resolve()}createTargetIndexes(e,n){return m.resolve()}getDocumentsMatchingTarget(e,n){return m.resolve(null)}getIndexType(e,n){return m.resolve(0)}getFieldIndexes(e,n){return m.resolve([])}getNextCollectionGroupToUpdate(e){return m.resolve(null)}getMinOffset(e,n){return m.resolve(ft.min())}getMinOffsetFromCollectionGroup(e,n){return m.resolve(ft.min())}updateCollectionGroup(e,n,r){return m.resolve()}updateIndexEntries(e,n){return m.resolve()}}class E_{constructor(){this.index={}}add(e){const n=e.lastSegment(),r=e.popLast(),s=this.index[n]||new re(B.comparator),i=!s.has(r);return this.index[n]=s.add(r),i}has(e){const n=e.lastSegment(),r=e.popLast(),s=this.index[n];return s&&s.has(r)}getEntries(e){return(this.index[e]||new re(B.comparator)).toArray()}}/**
|
|
1138
1123
|
* @license
|
|
1139
1124
|
* Copyright 2017 Google LLC
|
|
1140
1125
|
*
|
|
@@ -1149,7 +1134,7 @@
|
|
|
1149
1134
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1150
1135
|
* See the License for the specific language governing permissions and
|
|
1151
1136
|
* limitations under the License.
|
|
1152
|
-
*/class
|
|
1137
|
+
*/class dn{constructor(e){this.xn=e}next(){return this.xn+=2,this.xn}static On(){return new dn(0)}static Nn(){return new dn(-1)}}/**
|
|
1153
1138
|
* @license
|
|
1154
1139
|
* Copyright 2017 Google LLC
|
|
1155
1140
|
*
|
|
@@ -1164,7 +1149,7 @@
|
|
|
1164
1149
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1165
1150
|
* See the License for the specific language governing permissions and
|
|
1166
1151
|
* limitations under the License.
|
|
1167
|
-
*/class
|
|
1152
|
+
*/class v_{constructor(){this.changes=new ln(e=>e.toString(),(e,n)=>e.isEqual(n)),this.changesApplied=!1}addEntry(e){this.assertNotApplied(),this.changes.set(e.key,e)}removeEntry(e,n){this.assertNotApplied(),this.changes.set(e,le.newInvalidDocument(e).setReadTime(n))}getEntry(e,n){this.assertNotApplied();const r=this.changes.get(n);return r!==void 0?m.resolve(r):this.getFromCache(e,n)}getEntries(e,n){return this.getAllFromCache(e,n)}apply(e){return this.assertNotApplied(),this.changesApplied=!0,this.applyChanges(e)}assertNotApplied(){}}/**
|
|
1168
1153
|
* @license
|
|
1169
1154
|
* Copyright 2017 Google LLC
|
|
1170
1155
|
*
|
|
@@ -1194,7 +1179,7 @@
|
|
|
1194
1179
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1195
1180
|
* See the License for the specific language governing permissions and
|
|
1196
1181
|
* limitations under the License.
|
|
1197
|
-
*/class
|
|
1182
|
+
*/class T_{constructor(e,n){this.overlayedDocument=e,this.mutatedFields=n}}/**
|
|
1198
1183
|
* @license
|
|
1199
1184
|
* Copyright 2017 Google LLC
|
|
1200
1185
|
*
|
|
@@ -1209,7 +1194,7 @@
|
|
|
1209
1194
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1210
1195
|
* See the License for the specific language governing permissions and
|
|
1211
1196
|
* limitations under the License.
|
|
1212
|
-
*/class
|
|
1197
|
+
*/class I_{constructor(e,n,r,s){this.remoteDocumentCache=e,this.mutationQueue=n,this.documentOverlayCache=r,this.indexManager=s}getDocument(e,n){let r=null;return this.documentOverlayCache.getOverlay(e,n).next(s=>(r=s,this.remoteDocumentCache.getEntry(e,n))).next(s=>(r!==null&&_r(r.mutation,s,Te.empty(),Q.now()),s))}getDocuments(e,n){return this.remoteDocumentCache.getEntries(e,n).next(r=>this.getLocalViewOfDocuments(e,r,N()).next(()=>r))}getLocalViewOfDocuments(e,n,r=N()){const s=xt();return this.populateOverlays(e,s,n).next(()=>this.computeViews(e,n,s,r).next(i=>{let o=fr();return i.forEach((a,c)=>{o=o.insert(a,c.overlayedDocument)}),o}))}getOverlayedDocuments(e,n){const r=xt();return this.populateOverlays(e,r,n).next(()=>this.computeViews(e,n,r,N()))}populateOverlays(e,n,r){const s=[];return r.forEach(i=>{n.has(i)||s.push(i)}),this.documentOverlayCache.getOverlays(e,s).next(i=>{i.forEach((o,a)=>{n.set(o,a)})})}computeViews(e,n,r,s){let i=Je();const o=pr(),a=function(){return pr()}();return n.forEach((c,u)=>{const l=r.get(u.key);s.has(u.key)&&(l===void 0||l.mutation instanceof mt)?i=i.insert(u.key,u):l!==void 0?(o.set(u.key,l.mutation.getFieldMask()),_r(l.mutation,u,l.mutation.getFieldMask(),Q.now())):o.set(u.key,Te.empty())}),this.recalculateAndSaveOverlays(e,i).next(c=>(c.forEach((u,l)=>o.set(u,l)),n.forEach((u,l)=>{var h;return a.set(u,new T_(l,(h=o.get(u))!==null&&h!==void 0?h:null))}),a))}recalculateAndSaveOverlays(e,n){const r=pr();let s=new j((o,a)=>o-a),i=N();return this.mutationQueue.getAllMutationBatchesAffectingDocumentKeys(e,n).next(o=>{for(const a of o)a.keys().forEach(c=>{const u=n.get(c);if(u===null)return;let l=r.get(c)||Te.empty();l=a.applyToLocalView(u,l),r.set(c,l);const h=(s.get(a.batchId)||N()).add(c);s=s.insert(a.batchId,h)})}).next(()=>{const o=[],a=s.getReverseIterator();for(;a.hasNext();){const c=a.getNext(),u=c.key,l=c.value,h=nl();l.forEach(d=>{if(!i.has(d)){const f=ll(n.get(d),r.get(d));f!==null&&h.set(d,f),i=i.add(d)}}),o.push(this.documentOverlayCache.saveOverlays(e,u,h))}return m.waitFor(o)}).next(()=>r)}recalculateAndSaveOverlaysForDocumentKeys(e,n){return this.remoteDocumentCache.getEntries(e,n).next(r=>this.recalculateAndSaveOverlays(e,r))}getDocumentsMatchingQuery(e,n,r,s){return function(o){return I.isDocumentKey(o.path)&&o.collectionGroup===null&&o.filters.length===0}(n)?this.getDocumentsMatchingDocumentQuery(e,n.path):No(n)?this.getDocumentsMatchingCollectionGroupQuery(e,n,r,s):this.getDocumentsMatchingCollectionQuery(e,n,r,s)}getNextDocuments(e,n,r,s){return this.remoteDocumentCache.getAllFromCollectionGroup(e,n,r,s).next(i=>{const o=s-i.size>0?this.documentOverlayCache.getOverlaysForCollectionGroup(e,n,r.largestBatchId,s-i.size):m.resolve(xt());let a=-1,c=i;return o.next(u=>m.forEach(u,(l,h)=>(a<h.largestBatchId&&(a=h.largestBatchId),i.get(l)?m.resolve():this.remoteDocumentCache.getEntry(e,l).next(d=>{c=c.insert(l,d)}))).next(()=>this.populateOverlays(e,u,i)).next(()=>this.computeViews(e,c,u,N())).next(l=>({batchId:a,changes:tl(l)})))})}getDocumentsMatchingDocumentQuery(e,n){return this.getDocument(e,new I(n)).next(r=>{let s=fr();return r.isFoundDocument()&&(s=s.insert(r.key,r)),s})}getDocumentsMatchingCollectionGroupQuery(e,n,r,s){const i=n.collectionGroup;let o=fr();return this.indexManager.getCollectionParents(e,i).next(a=>m.forEach(a,c=>{const u=function(h,d){return new Ut(d,null,h.explicitOrderBy.slice(),h.filters.slice(),h.limit,h.limitType,h.startAt,h.endAt)}(n,c.child(i));return this.getDocumentsMatchingCollectionQuery(e,u,r,s).next(l=>{l.forEach((h,d)=>{o=o.insert(h,d)})})}).next(()=>o))}getDocumentsMatchingCollectionQuery(e,n,r,s){let i;return this.documentOverlayCache.getOverlaysForCollection(e,n.path,r.largestBatchId).next(o=>(i=o,this.remoteDocumentCache.getDocumentsMatchingQuery(e,n,r,i,s))).next(o=>{i.forEach((c,u)=>{const l=u.getKey();o.get(l)===null&&(o=o.insert(l,le.newInvalidDocument(l)))});let a=fr();return o.forEach((c,u)=>{const l=i.get(c);l!==void 0&&_r(l.mutation,u,Te.empty(),Q.now()),Rs(n,u)&&(a=a.insert(c,u))}),a})}}/**
|
|
1213
1198
|
* @license
|
|
1214
1199
|
* Copyright 2020 Google LLC
|
|
1215
1200
|
*
|
|
@@ -1224,7 +1209,7 @@
|
|
|
1224
1209
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1225
1210
|
* See the License for the specific language governing permissions and
|
|
1226
1211
|
* limitations under the License.
|
|
1227
|
-
*/class
|
|
1212
|
+
*/class w_{constructor(e){this.serializer=e,this.ur=new Map,this.cr=new Map}getBundleMetadata(e,n){return m.resolve(this.ur.get(n))}saveBundleMetadata(e,n){return this.ur.set(n.id,function(s){return{id:s.id,version:s.version,createTime:qe(s.createTime)}}(n)),m.resolve()}getNamedQuery(e,n){return m.resolve(this.cr.get(n))}saveNamedQuery(e,n){return this.cr.set(n.name,function(s){return{name:s.name,query:__(s.bundledQuery),readTime:qe(s.readTime)}}(n)),m.resolve()}}/**
|
|
1228
1213
|
* @license
|
|
1229
1214
|
* Copyright 2022 Google LLC
|
|
1230
1215
|
*
|
|
@@ -1239,7 +1224,7 @@
|
|
|
1239
1224
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1240
1225
|
* See the License for the specific language governing permissions and
|
|
1241
1226
|
* limitations under the License.
|
|
1242
|
-
*/class
|
|
1227
|
+
*/class A_{constructor(){this.overlays=new j(I.comparator),this.lr=new Map}getOverlay(e,n){return m.resolve(this.overlays.get(n))}getOverlays(e,n){const r=xt();return m.forEach(n,s=>this.getOverlay(e,s).next(i=>{i!==null&&r.set(s,i)})).next(()=>r)}saveOverlays(e,n,r){return r.forEach((s,i)=>{this.lt(e,n,i)}),m.resolve()}removeOverlaysForBatchId(e,n,r){const s=this.lr.get(r);return s!==void 0&&(s.forEach(i=>this.overlays=this.overlays.remove(i)),this.lr.delete(r)),m.resolve()}getOverlaysForCollection(e,n,r){const s=xt(),i=n.length+1,o=new I(n.child("")),a=this.overlays.getIteratorFrom(o);for(;a.hasNext();){const c=a.getNext().value,u=c.getKey();if(!n.isPrefixOf(u.path))break;u.path.length===i&&c.largestBatchId>r&&s.set(c.getKey(),c)}return m.resolve(s)}getOverlaysForCollectionGroup(e,n,r,s){let i=new j((u,l)=>u-l);const o=this.overlays.getIterator();for(;o.hasNext();){const u=o.getNext().value;if(u.getKey().getCollectionGroup()===n&&u.largestBatchId>r){let l=i.get(u.largestBatchId);l===null&&(l=xt(),i=i.insert(u.largestBatchId,l)),l.set(u.getKey(),u)}}const a=xt(),c=i.getIterator();for(;c.hasNext()&&(c.getNext().value.forEach((u,l)=>a.set(u,l)),!(a.size()>=s)););return m.resolve(a)}lt(e,n,r){const s=this.overlays.get(r.key);if(s!==null){const o=this.lr.get(s.largestBatchId).delete(r.key);this.lr.set(s.largestBatchId,o)}this.overlays=this.overlays.insert(r.key,new Gg(n,r));let i=this.lr.get(n);i===void 0&&(i=N(),this.lr.set(n,i)),this.lr.set(n,i.add(r.key))}}/**
|
|
1243
1228
|
* @license
|
|
1244
1229
|
* Copyright 2017 Google LLC
|
|
1245
1230
|
*
|
|
@@ -1254,7 +1239,7 @@
|
|
|
1254
1239
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1255
1240
|
* See the License for the specific language governing permissions and
|
|
1256
1241
|
* limitations under the License.
|
|
1257
|
-
*/class
|
|
1242
|
+
*/class qo{constructor(){this.hr=new re(J.Pr),this.Ir=new re(J.Tr)}isEmpty(){return this.hr.isEmpty()}addReference(e,n){const r=new J(e,n);this.hr=this.hr.add(r),this.Ir=this.Ir.add(r)}Er(e,n){e.forEach(r=>this.addReference(r,n))}removeReference(e,n){this.dr(new J(e,n))}Ar(e,n){e.forEach(r=>this.removeReference(r,n))}Rr(e){const n=new I(new B([])),r=new J(n,e),s=new J(n,e+1),i=[];return this.Ir.forEachInRange([r,s],o=>{this.dr(o),i.push(o.key)}),i}Vr(){this.hr.forEach(e=>this.dr(e))}dr(e){this.hr=this.hr.delete(e),this.Ir=this.Ir.delete(e)}mr(e){const n=new I(new B([])),r=new J(n,e),s=new J(n,e+1);let i=N();return this.Ir.forEachInRange([r,s],o=>{i=i.add(o.key)}),i}containsKey(e){const n=new J(e,0),r=this.hr.firstAfterOrEqual(n);return r!==null&&e.isEqual(r.key)}}class J{constructor(e,n){this.key=e,this.gr=n}static Pr(e,n){return I.comparator(e.key,n.key)||L(e.gr,n.gr)}static Tr(e,n){return L(e.gr,n.gr)||I.comparator(e.key,n.key)}}/**
|
|
1258
1243
|
* @license
|
|
1259
1244
|
* Copyright 2017 Google LLC
|
|
1260
1245
|
*
|
|
@@ -1269,7 +1254,7 @@
|
|
|
1269
1254
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1270
1255
|
* See the License for the specific language governing permissions and
|
|
1271
1256
|
* limitations under the License.
|
|
1272
|
-
*/class
|
|
1257
|
+
*/class R_{constructor(e,n){this.indexManager=e,this.referenceDelegate=n,this.mutationQueue=[],this.pr=1,this.yr=new re(J.Pr)}checkEmpty(e){return m.resolve(this.mutationQueue.length===0)}addMutationBatch(e,n,r,s){const i=this.pr;this.pr++,this.mutationQueue.length>0&&this.mutationQueue[this.mutationQueue.length-1];const o=new Wg(i,n,r,s);this.mutationQueue.push(o);for(const a of s)this.yr=this.yr.add(new J(a.key,i)),this.indexManager.addToCollectionParentIndex(e,a.key.path.popLast());return m.resolve(o)}lookupMutationBatch(e,n){return m.resolve(this.wr(n))}getNextMutationBatchAfterBatchId(e,n){const r=n+1,s=this.Sr(r),i=s<0?0:s;return m.resolve(this.mutationQueue.length>i?this.mutationQueue[i]:null)}getHighestUnacknowledgedBatchId(){return m.resolve(this.mutationQueue.length===0?-1:this.pr-1)}getAllMutationBatches(e){return m.resolve(this.mutationQueue.slice())}getAllMutationBatchesAffectingDocumentKey(e,n){const r=new J(n,0),s=new J(n,Number.POSITIVE_INFINITY),i=[];return this.yr.forEachInRange([r,s],o=>{const a=this.wr(o.gr);i.push(a)}),m.resolve(i)}getAllMutationBatchesAffectingDocumentKeys(e,n){let r=new re(L);return n.forEach(s=>{const i=new J(s,0),o=new J(s,Number.POSITIVE_INFINITY);this.yr.forEachInRange([i,o],a=>{r=r.add(a.gr)})}),m.resolve(this.br(r))}getAllMutationBatchesAffectingQuery(e,n){const r=n.path,s=r.length+1;let i=r;I.isDocumentKey(i)||(i=i.child(""));const o=new J(new I(i),0);let a=new re(L);return this.yr.forEachWhile(c=>{const u=c.key.path;return!!r.isPrefixOf(u)&&(u.length===s&&(a=a.add(c.gr)),!0)},o),m.resolve(this.br(a))}br(e){const n=[];return e.forEach(r=>{const s=this.wr(r);s!==null&&n.push(s)}),n}removeMutationBatch(e,n){F(this.Dr(n.batchId,"removed")===0),this.mutationQueue.shift();let r=this.yr;return m.forEach(n.mutations,s=>{const i=new J(s.key,n.batchId);return r=r.delete(i),this.referenceDelegate.markPotentiallyOrphaned(e,s.key)}).next(()=>{this.yr=r})}Fn(e){}containsKey(e,n){const r=new J(n,0),s=this.yr.firstAfterOrEqual(r);return m.resolve(n.isEqual(s&&s.key))}performConsistencyCheck(e){return this.mutationQueue.length,m.resolve()}Dr(e,n){return this.Sr(e)}Sr(e){return this.mutationQueue.length===0?0:e-this.mutationQueue[0].batchId}wr(e){const n=this.Sr(e);return n<0||n>=this.mutationQueue.length?null:this.mutationQueue[n]}}/**
|
|
1273
1258
|
* @license
|
|
1274
1259
|
* Copyright 2017 Google LLC
|
|
1275
1260
|
*
|
|
@@ -1284,7 +1269,7 @@
|
|
|
1284
1269
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1285
1270
|
* See the License for the specific language governing permissions and
|
|
1286
1271
|
* limitations under the License.
|
|
1287
|
-
*/class
|
|
1272
|
+
*/class P_{constructor(e){this.Cr=e,this.docs=function(){return new j(I.comparator)}(),this.size=0}setIndexManager(e){this.indexManager=e}addEntry(e,n){const r=n.key,s=this.docs.get(r),i=s?s.size:0,o=this.Cr(n);return this.docs=this.docs.insert(r,{document:n.mutableCopy(),size:o}),this.size+=o-i,this.indexManager.addToCollectionParentIndex(e,r.path.popLast())}removeEntry(e){const n=this.docs.get(e);n&&(this.docs=this.docs.remove(e),this.size-=n.size)}getEntry(e,n){const r=this.docs.get(n);return m.resolve(r?r.document.mutableCopy():le.newInvalidDocument(n))}getEntries(e,n){let r=Je();return n.forEach(s=>{const i=this.docs.get(s);r=r.insert(s,i?i.document.mutableCopy():le.newInvalidDocument(s))}),m.resolve(r)}getDocumentsMatchingQuery(e,n,r,s){let i=Je();const o=n.path,a=new I(o.child("")),c=this.docs.getIteratorFrom(a);for(;c.hasNext();){const{key:u,value:{document:l}}=c.getNext();if(!o.isPrefixOf(u.path))break;u.path.length>o.length+1||fg(dg(l),r)<=0||(s.has(l.key)||Rs(n,l))&&(i=i.insert(l.key,l.mutableCopy()))}return m.resolve(i)}getAllFromCollectionGroup(e,n,r,s){A()}vr(e,n){return m.forEach(this.docs,r=>n(r))}newChangeBuffer(e){return new S_(this)}getSize(e){return m.resolve(this.size)}}class S_ extends v_{constructor(e){super(),this._r=e}applyChanges(e){const n=[];return this.changes.forEach((r,s)=>{s.isValidDocument()?n.push(this._r.addEntry(e,s)):this._r.removeEntry(r)}),m.waitFor(n)}getFromCache(e,n){return this._r.getEntry(e,n)}getAllFromCache(e,n){return this._r.getEntries(e,n)}}/**
|
|
1288
1273
|
* @license
|
|
1289
1274
|
* Copyright 2017 Google LLC
|
|
1290
1275
|
*
|
|
@@ -1299,7 +1284,7 @@
|
|
|
1299
1284
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1300
1285
|
* See the License for the specific language governing permissions and
|
|
1301
1286
|
* limitations under the License.
|
|
1302
|
-
*/class
|
|
1287
|
+
*/class C_{constructor(e){this.persistence=e,this.Fr=new ln(n=>So(n),Co),this.lastRemoteSnapshotVersion=S.min(),this.highestTargetId=0,this.Mr=0,this.Or=new qo,this.targetCount=0,this.Nr=dn.On()}forEachTarget(e,n){return this.Fr.forEach((r,s)=>n(s)),m.resolve()}getLastRemoteSnapshotVersion(e){return m.resolve(this.lastRemoteSnapshotVersion)}getHighestSequenceNumber(e){return m.resolve(this.Mr)}allocateTargetId(e){return this.highestTargetId=this.Nr.next(),m.resolve(this.highestTargetId)}setTargetsMetadata(e,n,r){return r&&(this.lastRemoteSnapshotVersion=r),n>this.Mr&&(this.Mr=n),m.resolve()}kn(e){this.Fr.set(e.target,e);const n=e.targetId;n>this.highestTargetId&&(this.Nr=new dn(n),this.highestTargetId=n),e.sequenceNumber>this.Mr&&(this.Mr=e.sequenceNumber)}addTargetData(e,n){return this.kn(n),this.targetCount+=1,m.resolve()}updateTargetData(e,n){return this.kn(n),m.resolve()}removeTargetData(e,n){return this.Fr.delete(n.target),this.Or.Rr(n.targetId),this.targetCount-=1,m.resolve()}removeTargets(e,n,r){let s=0;const i=[];return this.Fr.forEach((o,a)=>{a.sequenceNumber<=n&&r.get(a.targetId)===null&&(this.Fr.delete(o),i.push(this.removeMatchingKeysForTargetId(e,a.targetId)),s++)}),m.waitFor(i).next(()=>s)}getTargetCount(e){return m.resolve(this.targetCount)}getTargetData(e,n){const r=this.Fr.get(n)||null;return m.resolve(r)}addMatchingKeys(e,n,r){return this.Or.Er(n,r),m.resolve()}removeMatchingKeys(e,n,r){this.Or.Ar(n,r);const s=this.persistence.referenceDelegate,i=[];return s&&n.forEach(o=>{i.push(s.markPotentiallyOrphaned(e,o))}),m.waitFor(i)}removeMatchingKeysForTargetId(e,n){return this.Or.Rr(n),m.resolve()}getMatchingKeysForTargetId(e,n){const r=this.Or.mr(n);return m.resolve(r)}containsKey(e,n){return m.resolve(this.Or.containsKey(n))}}/**
|
|
1303
1288
|
* @license
|
|
1304
1289
|
* Copyright 2017 Google LLC
|
|
1305
1290
|
*
|
|
@@ -1314,7 +1299,7 @@
|
|
|
1314
1299
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1315
1300
|
* See the License for the specific language governing permissions and
|
|
1316
1301
|
* limitations under the License.
|
|
1317
|
-
*/class
|
|
1302
|
+
*/class b_{constructor(e,n){this.Br={},this.overlays={},this.Lr=new To(0),this.kr=!1,this.kr=!0,this.referenceDelegate=e(this),this.qr=new C_(this),this.indexManager=new y_,this.remoteDocumentCache=function(s){return new P_(s)}(r=>this.referenceDelegate.Qr(r)),this.serializer=new g_(n),this.Kr=new w_(this.serializer)}start(){return Promise.resolve()}shutdown(){return this.kr=!1,Promise.resolve()}get started(){return this.kr}setDatabaseDeletedListener(){}setNetworkEnabled(){}getIndexManager(e){return this.indexManager}getDocumentOverlayCache(e){let n=this.overlays[e.toKey()];return n||(n=new A_,this.overlays[e.toKey()]=n),n}getMutationQueue(e,n){let r=this.Br[e.toKey()];return r||(r=new R_(n,this.referenceDelegate),this.Br[e.toKey()]=r),r}getTargetCache(){return this.qr}getRemoteDocumentCache(){return this.remoteDocumentCache}getBundleCache(){return this.Kr}runTransaction(e,n,r){T("MemoryPersistence","Starting transaction:",e);const s=new k_(this.Lr.next());return this.referenceDelegate.$r(),r(s).next(i=>this.referenceDelegate.Ur(s).next(()=>i)).toPromise().then(i=>(s.raiseOnCommittedEvent(),i))}Wr(e,n){return m.or(Object.values(this.Br).map(r=>()=>r.containsKey(e,n)))}}class k_ extends mg{constructor(e){super(),this.currentSequenceNumber=e}}class $o{constructor(e){this.persistence=e,this.Gr=new qo,this.zr=null}static jr(e){return new $o(e)}get Hr(){if(this.zr)return this.zr;throw A()}addReference(e,n,r){return this.Gr.addReference(r,n),this.Hr.delete(r.toString()),m.resolve()}removeReference(e,n,r){return this.Gr.removeReference(r,n),this.Hr.add(r.toString()),m.resolve()}markPotentiallyOrphaned(e,n){return this.Hr.add(n.toString()),m.resolve()}removeTarget(e,n){this.Gr.Rr(n.targetId).forEach(s=>this.Hr.add(s.toString()));const r=this.persistence.getTargetCache();return r.getMatchingKeysForTargetId(e,n.targetId).next(s=>{s.forEach(i=>this.Hr.add(i.toString()))}).next(()=>r.removeTargetData(e,n))}$r(){this.zr=new Set}Ur(e){const n=this.persistence.getRemoteDocumentCache().newChangeBuffer();return m.forEach(this.Hr,r=>{const s=I.fromPath(r);return this.Jr(e,s).next(i=>{i||n.removeEntry(s,S.min())})}).next(()=>(this.zr=null,n.apply(e)))}updateLimboDocument(e,n){return this.Jr(e,n).next(r=>{r?this.Hr.delete(n.toString()):this.Hr.add(n.toString())})}Qr(e){return 0}Jr(e,n){return m.or([()=>m.resolve(this.Gr.containsKey(n)),()=>this.persistence.getTargetCache().containsKey(e,n),()=>this.persistence.Wr(e,n)])}}/**
|
|
1318
1303
|
* @license
|
|
1319
1304
|
* Copyright 2017 Google LLC
|
|
1320
1305
|
*
|
|
@@ -1329,7 +1314,7 @@
|
|
|
1329
1314
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1330
1315
|
* See the License for the specific language governing permissions and
|
|
1331
1316
|
* limitations under the License.
|
|
1332
|
-
*/class
|
|
1317
|
+
*/class jo{constructor(e,n,r,s){this.targetId=e,this.fromCache=n,this.ki=r,this.qi=s}static Qi(e,n){let r=N(),s=N();for(const i of n.docChanges)switch(i.type){case 0:r=r.add(i.doc.key);break;case 1:s=s.add(i.doc.key)}return new jo(e,n.fromCache,r,s)}}/**
|
|
1333
1318
|
* @license
|
|
1334
1319
|
* Copyright 2023 Google LLC
|
|
1335
1320
|
*
|
|
@@ -1344,7 +1329,7 @@
|
|
|
1344
1329
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1345
1330
|
* See the License for the specific language governing permissions and
|
|
1346
1331
|
* limitations under the License.
|
|
1347
|
-
*/class
|
|
1332
|
+
*/class N_{constructor(){this._documentReadCount=0}get documentReadCount(){return this._documentReadCount}incrementDocumentReadCount(e){this._documentReadCount+=e}}/**
|
|
1348
1333
|
* @license
|
|
1349
1334
|
* Copyright 2019 Google LLC
|
|
1350
1335
|
*
|
|
@@ -1359,7 +1344,7 @@
|
|
|
1359
1344
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1360
1345
|
* See the License for the specific language governing permissions and
|
|
1361
1346
|
* limitations under the License.
|
|
1362
|
-
*/class
|
|
1347
|
+
*/class D_{constructor(){this.Ki=!1,this.$i=!1,this.Ui=100,this.Wi=8}initialize(e,n){this.Gi=e,this.indexManager=n,this.Ki=!0}getDocumentsMatchingQuery(e,n,r,s){const i={result:null};return this.zi(e,n).next(o=>{i.result=o}).next(()=>{if(!i.result)return this.ji(e,n,s,r).next(o=>{i.result=o})}).next(()=>{if(i.result)return;const o=new N_;return this.Hi(e,n,o).next(a=>{if(i.result=a,this.$i)return this.Ji(e,n,o,a.size)})}).next(()=>i.result)}Ji(e,n,r,s){return r.documentReadCount<this.Ui?(sr()<=D.DEBUG&&T("QueryEngine","SDK will not create cache indexes for query:",un(n),"since it only creates cache indexes for collection contains","more than or equal to",this.Ui,"documents"),m.resolve()):(sr()<=D.DEBUG&&T("QueryEngine","Query:",un(n),"scans",r.documentReadCount,"local documents and returns",s,"documents as results."),r.documentReadCount>this.Wi*s?(sr()<=D.DEBUG&&T("QueryEngine","The SDK decides to create cache indexes for query:",un(n),"as using cache indexes may help improve performance."),this.indexManager.createTargetIndexes(e,Be(n))):m.resolve())}zi(e,n){if(Yu(n))return m.resolve(null);let r=Be(n);return this.indexManager.getIndexType(e,r).next(s=>s===0?null:(n.limit!==null&&s===1&&(n=ws(n,null,"F"),r=Be(n)),this.indexManager.getDocumentsMatchingTarget(e,r).next(i=>{const o=N(...i);return this.Gi.getDocuments(e,o).next(a=>this.indexManager.getMinOffset(e,r).next(c=>{const u=this.Yi(n,a);return this.Zi(n,u,o,c.readTime)?this.zi(e,ws(n,null,"F")):this.Xi(e,u,n,c)}))})))}ji(e,n,r,s){return Yu(n)||s.isEqual(S.min())?m.resolve(null):this.Gi.getDocuments(e,r).next(i=>{const o=this.Yi(n,i);return this.Zi(n,o,r,s)?m.resolve(null):(sr()<=D.DEBUG&&T("QueryEngine","Re-using previous result from %s to execute query: %s",s.toString(),un(n)),this.Xi(e,o,n,hg(s,-1)).next(a=>a))})}Yi(e,n){let r=new re(Zu(e));return n.forEach((s,i)=>{Rs(e,i)&&(r=r.add(i))}),r}Zi(e,n,r,s){if(e.limit===null)return!1;if(r.size!==n.size)return!0;const i=e.limitType==="F"?n.last():n.first();return!!i&&(i.hasPendingWrites||i.version.compareTo(s)>0)}Hi(e,n,r){return sr()<=D.DEBUG&&T("QueryEngine","Using full collection scan to execute query:",un(n)),this.Gi.getDocumentsMatchingQuery(e,n,ft.min(),r)}Xi(e,n,r,s){return this.Gi.getDocumentsMatchingQuery(e,r,s).next(i=>(n.forEach(o=>{i=i.insert(o.key,o)}),i))}}/**
|
|
1363
1348
|
* @license
|
|
1364
1349
|
* Copyright 2020 Google LLC
|
|
1365
1350
|
*
|
|
@@ -1374,7 +1359,7 @@
|
|
|
1374
1359
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1375
1360
|
* See the License for the specific language governing permissions and
|
|
1376
1361
|
* limitations under the License.
|
|
1377
|
-
*/class
|
|
1362
|
+
*/class O_{constructor(e,n,r,s){this.persistence=e,this.es=n,this.serializer=s,this.ts=new j(L),this.ns=new ln(i=>So(i),Co),this.rs=new Map,this.ss=e.getRemoteDocumentCache(),this.qr=e.getTargetCache(),this.Kr=e.getBundleCache(),this.os(r)}os(e){this.documentOverlayCache=this.persistence.getDocumentOverlayCache(e),this.indexManager=this.persistence.getIndexManager(e),this.mutationQueue=this.persistence.getMutationQueue(e,this.indexManager),this.localDocuments=new I_(this.ss,this.mutationQueue,this.documentOverlayCache,this.indexManager),this.ss.setIndexManager(this.indexManager),this.es.initialize(this.localDocuments,this.indexManager)}collectGarbage(e){return this.persistence.runTransaction("Collect garbage","readwrite-primary",n=>e.collect(n,this.ts))}}function V_(t,e,n,r){return new O_(t,e,n,r)}async function Nl(t,e){const n=P(t);return await n.persistence.runTransaction("Handle user change","readonly",r=>{let s;return n.mutationQueue.getAllMutationBatches(r).next(i=>(s=i,n.os(e),n.mutationQueue.getAllMutationBatches(r))).next(i=>{const o=[],a=[];let c=N();for(const u of s){o.push(u.batchId);for(const l of u.mutations)c=c.add(l.key)}for(const u of i){a.push(u.batchId);for(const l of u.mutations)c=c.add(l.key)}return n.localDocuments.getDocuments(r,c).next(u=>({_s:u,removedBatchIds:o,addedBatchIds:a}))})})}function L_(t,e){const n=P(t);return n.persistence.runTransaction("Acknowledge batch","readwrite-primary",r=>{const s=e.batch.keys(),i=n.ss.newChangeBuffer({trackRemovals:!0});return function(a,c,u,l){const h=u.batch,d=h.keys();let f=m.resolve();return d.forEach(E=>{f=f.next(()=>l.getEntry(c,E)).next(v=>{const g=u.docVersions.get(E);F(g!==null),v.version.compareTo(g)<0&&(h.applyToRemoteDocument(v,u),v.isValidDocument()&&(v.setReadTime(u.commitVersion),l.addEntry(v)))})}),f.next(()=>a.mutationQueue.removeMutationBatch(c,h))}(n,r,e,i).next(()=>i.apply(r)).next(()=>n.mutationQueue.performConsistencyCheck(r)).next(()=>n.documentOverlayCache.removeOverlaysForBatchId(r,s,e.batch.batchId)).next(()=>n.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(r,function(a){let c=N();for(let u=0;u<a.mutationResults.length;++u)a.mutationResults[u].transformResults.length>0&&(c=c.add(a.batch.mutations[u].key));return c}(e))).next(()=>n.localDocuments.getDocuments(r,s))})}function Dl(t){const e=P(t);return e.persistence.runTransaction("Get last remote snapshot version","readonly",n=>e.qr.getLastRemoteSnapshotVersion(n))}function M_(t,e){const n=P(t),r=e.snapshotVersion;let s=n.ts;return n.persistence.runTransaction("Apply remote event","readwrite-primary",i=>{const o=n.ss.newChangeBuffer({trackRemovals:!0});s=n.ts;const a=[];e.targetChanges.forEach((l,h)=>{const d=s.get(h);if(!d)return;a.push(n.qr.removeMatchingKeys(i,l.removedDocuments,h).next(()=>n.qr.addMatchingKeys(i,l.addedDocuments,h)));let f=d.withSequenceNumber(i.currentSequenceNumber);e.targetMismatches.get(h)!==null?f=f.withResumeToken(ue.EMPTY_BYTE_STRING,S.min()).withLastLimboFreeSnapshotVersion(S.min()):l.resumeToken.approximateByteSize()>0&&(f=f.withResumeToken(l.resumeToken,r)),s=s.insert(h,f),function(v,g,k){return v.resumeToken.approximateByteSize()===0||g.snapshotVersion.toMicroseconds()-v.snapshotVersion.toMicroseconds()>=3e8?!0:k.addedDocuments.size+k.modifiedDocuments.size+k.removedDocuments.size>0}(d,f,l)&&a.push(n.qr.updateTargetData(i,f))});let c=Je(),u=N();if(e.documentUpdates.forEach(l=>{e.resolvedLimboDocuments.has(l)&&a.push(n.persistence.referenceDelegate.updateLimboDocument(i,l))}),a.push(U_(i,o,e.documentUpdates).next(l=>{c=l.us,u=l.cs})),!r.isEqual(S.min())){const l=n.qr.getLastRemoteSnapshotVersion(i).next(h=>n.qr.setTargetsMetadata(i,i.currentSequenceNumber,r));a.push(l)}return m.waitFor(a).next(()=>o.apply(i)).next(()=>n.localDocuments.getLocalViewOfDocuments(i,c,u)).next(()=>c)}).then(i=>(n.ts=s,i))}function U_(t,e,n){let r=N(),s=N();return n.forEach(i=>r=r.add(i)),e.getEntries(t,r).next(i=>{let o=Je();return n.forEach((a,c)=>{const u=i.get(a);c.isFoundDocument()!==u.isFoundDocument()&&(s=s.add(a)),c.isNoDocument()&&c.version.isEqual(S.min())?(e.removeEntry(a,c.readTime),o=o.insert(a,c)):!u.isValidDocument()||c.version.compareTo(u.version)>0||c.version.compareTo(u.version)===0&&u.hasPendingWrites?(e.addEntry(c),o=o.insert(a,c)):T("LocalStore","Ignoring outdated watch update for ",a,". Current version:",u.version," Watch version:",c.version)}),{us:o,cs:s}})}function x_(t,e){const n=P(t);return n.persistence.runTransaction("Get next mutation batch","readonly",r=>(e===void 0&&(e=-1),n.mutationQueue.getNextMutationBatchAfterBatchId(r,e)))}function F_(t,e){const n=P(t);return n.persistence.runTransaction("Allocate target","readwrite",r=>{let s;return n.qr.getTargetData(r,e).next(i=>i?(s=i,m.resolve(s)):n.qr.allocateTargetId(r).next(o=>(s=new _t(e,o,"TargetPurposeListen",r.currentSequenceNumber),n.qr.addTargetData(r,s).next(()=>s))))}).then(r=>{const s=n.ts.get(r.targetId);return(s===null||r.snapshotVersion.compareTo(s.snapshotVersion)>0)&&(n.ts=n.ts.insert(r.targetId,r),n.ns.set(e,r.targetId)),r})}async function zo(t,e,n){const r=P(t),s=r.ts.get(e),i=n?"readwrite":"readwrite-primary";try{n||await r.persistence.runTransaction("Release target",i,o=>r.persistence.referenceDelegate.removeTarget(o,s))}catch(o){if(!ar(o))throw o;T("LocalStore",`Failed to update sequence numbers for target ${e}: ${o}`)}r.ts=r.ts.remove(e),r.ns.delete(s.target)}function Ol(t,e,n){const r=P(t);let s=S.min(),i=N();return r.persistence.runTransaction("Execute query","readwrite",o=>function(c,u,l){const h=P(c),d=h.ns.get(l);return d!==void 0?m.resolve(h.ts.get(d)):h.qr.getTargetData(u,l)}(r,o,Be(e)).next(a=>{if(a)return s=a.lastLimboFreeSnapshotVersion,r.qr.getMatchingKeysForTargetId(o,a.targetId).next(c=>{i=c})}).next(()=>r.es.getDocumentsMatchingQuery(o,e,n?s:S.min(),n?i:N())).next(a=>(B_(r,Ng(e),a),{documents:a,ls:i})))}function B_(t,e,n){let r=t.rs.get(e)||S.min();n.forEach((s,i)=>{i.readTime.compareTo(r)>0&&(r=i.readTime)}),t.rs.set(e,r)}class Vl{constructor(){this.activeTargetIds=Ug()}ds(e){this.activeTargetIds=this.activeTargetIds.add(e)}As(e){this.activeTargetIds=this.activeTargetIds.delete(e)}Es(){const e={activeTargetIds:this.activeTargetIds.toArray(),updateTimeMs:Date.now()};return JSON.stringify(e)}}class q_{constructor(){this.eo=new Vl,this.no={},this.onlineStateHandler=null,this.sequenceNumberHandler=null}addPendingMutation(e){}updateMutationState(e,n,r){}addLocalQueryTarget(e){return this.eo.ds(e),this.no[e]||"not-current"}updateQueryState(e,n,r){this.no[e]=n}removeLocalQueryTarget(e){this.eo.As(e)}isLocalQueryTarget(e){return this.eo.activeTargetIds.has(e)}clearQueryState(e){delete this.no[e]}getAllActiveQueryTargets(){return this.eo.activeTargetIds}isActiveQueryTarget(e){return this.eo.activeTargetIds.has(e)}start(){return this.eo=new Vl,Promise.resolve()}handleUserChange(e,n,r){}setOnlineState(e){}shutdown(){}writeSequenceNumber(e){}notifyBundleLoaded(e){}}/**
|
|
1378
1363
|
* @license
|
|
1379
1364
|
* Copyright 2019 Google LLC
|
|
1380
1365
|
*
|
|
@@ -1389,7 +1374,7 @@
|
|
|
1389
1374
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1390
1375
|
* See the License for the specific language governing permissions and
|
|
1391
1376
|
* limitations under the License.
|
|
1392
|
-
*/class
|
|
1377
|
+
*/class $_{ro(e){}shutdown(){}}/**
|
|
1393
1378
|
* @license
|
|
1394
1379
|
* Copyright 2019 Google LLC
|
|
1395
1380
|
*
|
|
@@ -1404,7 +1389,7 @@
|
|
|
1404
1389
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1405
1390
|
* See the License for the specific language governing permissions and
|
|
1406
1391
|
* limitations under the License.
|
|
1407
|
-
*/class
|
|
1392
|
+
*/class Ll{constructor(){this.io=()=>this.so(),this.oo=()=>this._o(),this.ao=[],this.uo()}ro(e){this.ao.push(e)}shutdown(){window.removeEventListener("online",this.io),window.removeEventListener("offline",this.oo)}uo(){window.addEventListener("online",this.io),window.addEventListener("offline",this.oo)}so(){T("ConnectivityMonitor","Network connectivity changed: AVAILABLE");for(const e of this.ao)e(0)}_o(){T("ConnectivityMonitor","Network connectivity changed: UNAVAILABLE");for(const e of this.ao)e(1)}static D(){return typeof window<"u"&&window.addEventListener!==void 0&&window.removeEventListener!==void 0}}/**
|
|
1408
1393
|
* @license
|
|
1409
1394
|
* Copyright 2023 Google LLC
|
|
1410
1395
|
*
|
|
@@ -1419,7 +1404,7 @@
|
|
|
1419
1404
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1420
1405
|
* See the License for the specific language governing permissions and
|
|
1421
1406
|
* limitations under the License.
|
|
1422
|
-
*/let
|
|
1407
|
+
*/let Ls=null;function Ho(){return Ls===null?Ls=function(){return 268435456+Math.round(2147483648*Math.random())}():Ls++,"0x"+Ls.toString(16)}/**
|
|
1423
1408
|
* @license
|
|
1424
1409
|
* Copyright 2020 Google LLC
|
|
1425
1410
|
*
|
|
@@ -1434,7 +1419,7 @@
|
|
|
1434
1419
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1435
1420
|
* See the License for the specific language governing permissions and
|
|
1436
1421
|
* limitations under the License.
|
|
1437
|
-
*/const
|
|
1422
|
+
*/const j_={BatchGetDocuments:"batchGet",Commit:"commit",RunQuery:"runQuery",RunAggregationQuery:"runAggregationQuery"};/**
|
|
1438
1423
|
* @license
|
|
1439
1424
|
* Copyright 2017 Google LLC
|
|
1440
1425
|
*
|
|
@@ -1449,7 +1434,7 @@
|
|
|
1449
1434
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1450
1435
|
* See the License for the specific language governing permissions and
|
|
1451
1436
|
* limitations under the License.
|
|
1452
|
-
*/class
|
|
1437
|
+
*/class z_{constructor(e){this.co=e.co,this.lo=e.lo}ho(e){this.Po=e}Io(e){this.To=e}onMessage(e){this.Eo=e}close(){this.lo()}send(e){this.co(e)}Ao(){this.Po()}Ro(e){this.To(e)}Vo(e){this.Eo(e)}}/**
|
|
1453
1438
|
* @license
|
|
1454
1439
|
* Copyright 2017 Google LLC
|
|
1455
1440
|
*
|
|
@@ -1464,7 +1449,7 @@
|
|
|
1464
1449
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1465
1450
|
* See the License for the specific language governing permissions and
|
|
1466
1451
|
* limitations under the License.
|
|
1467
|
-
*/const
|
|
1452
|
+
*/const he="WebChannelConnection";class H_ extends class{constructor(n){this.databaseInfo=n,this.databaseId=n.databaseId;const r=n.ssl?"https":"http",s=encodeURIComponent(this.databaseId.projectId),i=encodeURIComponent(this.databaseId.database);this.mo=r+"://"+n.host,this.fo=`projects/${s}/databases/${i}`,this.po=this.databaseId.database==="(default)"?`project_id=${s}`:`project_id=${s}&database_id=${i}`}get yo(){return!1}wo(n,r,s,i,o){const a=Ho(),c=this.So(n,r);T("RestConnection",`Sending RPC '${n}' ${a}:`,c,s);const u={"google-cloud-resource-prefix":this.fo,"x-goog-request-params":this.po};return this.bo(u,i,o),this.Do(n,c,u,s).then(l=>(T("RestConnection",`Received RPC '${n}' ${a}: `,l),l),l=>{throw nn("RestConnection",`RPC '${n}' ${a} failed with error: `,l,"url: ",c,"request:",s),l})}Co(n,r,s,i,o,a){return this.wo(n,r,s,i,o)}bo(n,r,s){n["X-Goog-Api-Client"]=function(){return"gl-js/ fire/"+tn}(),n["Content-Type"]="text/plain",this.databaseInfo.appId&&(n["X-Firebase-GMPID"]=this.databaseInfo.appId),r&&r.headers.forEach((i,o)=>n[o]=i),s&&s.headers.forEach((i,o)=>n[o]=i)}So(n,r){const s=j_[n];return`${this.mo}/v1/${r}:${s}`}}{constructor(e){super(e),this.forceLongPolling=e.forceLongPolling,this.autoDetectLongPolling=e.autoDetectLongPolling,this.useFetchStreams=e.useFetchStreams,this.longPollingOptions=e.longPollingOptions}Do(e,n,r,s){const i=Ho();return new Promise((o,a)=>{const c=new eg;c.setWithCredentials(!0),c.listenOnce(Xm.COMPLETE,()=>{try{switch(c.getLastErrorCode()){case Eo.NO_ERROR:const l=c.getResponseJson();T(he,`XHR for RPC '${e}' ${i} received:`,JSON.stringify(l)),o(l);break;case Eo.TIMEOUT:T(he,`RPC '${e}' ${i} timed out`),a(new _(p.DEADLINE_EXCEEDED,"Request time out"));break;case Eo.HTTP_ERROR:const h=c.getStatus();if(T(he,`RPC '${e}' ${i} failed with status:`,h,"response text:",c.getResponseText()),h>0){let d=c.getResponseJson();Array.isArray(d)&&(d=d[0]);const f=d==null?void 0:d.error;if(f&&f.status&&f.message){const E=function(g){const k=g.toLowerCase().replace(/_/g,"-");return Object.values(p).indexOf(k)>=0?k:p.UNKNOWN}(f.status);a(new _(E,f.message))}else a(new _(p.UNKNOWN,"Server responded with status "+c.getStatus()))}else a(new _(p.UNAVAILABLE,"Connection failed."));break;default:A()}}finally{T(he,`RPC '${e}' ${i} completed.`)}});const u=JSON.stringify(s);T(he,`RPC '${e}' ${i} sending request:`,s),c.send(n,"POST",u,r,15)})}vo(e,n,r){const s=Ho(),i=[this.mo,"/","google.firestore.v1.Firestore","/",e,"/channel"],o=Qm(),a=Ym(),c={httpSessionIdParam:"gsessionid",initMessageHeaders:{},messageUrlParams:{database:`projects/${this.databaseId.projectId}/databases/${this.databaseId.database}`},sendRawJson:!0,supportsCrossDomainXhr:!0,internalChannelParams:{forwardChannelRequestTimeoutMs:6e5},forceLongPolling:this.forceLongPolling,detectBufferingProxy:this.autoDetectLongPolling},u=this.longPollingOptions.timeoutSeconds;u!==void 0&&(c.longPollingTimeout=Math.round(1e3*u)),this.useFetchStreams&&(c.xmlHttpFactory=new Zm({})),this.bo(c.initMessageHeaders,n,r),c.encodeInitMessageHeaders=!0;const l=i.join("");T(he,`Creating RPC '${e}' stream ${s}: ${l}`,c);const h=o.createWebChannel(l,c);let d=!1,f=!1;const E=new z_({co:g=>{f?T(he,`Not sending because RPC '${e}' stream ${s} is closed:`,g):(d||(T(he,`Opening RPC '${e}' stream ${s} transport.`),h.open(),d=!0),T(he,`RPC '${e}' stream ${s} sending:`,g),h.send(g))},lo:()=>h.close()}),v=(g,k,O)=>{g.listen(k,b=>{try{O(b)}catch(U){setTimeout(()=>{throw U},0)}})};return v(h,ms.EventType.OPEN,()=>{f||T(he,`RPC '${e}' stream ${s} transport opened.`)}),v(h,ms.EventType.CLOSE,()=>{f||(f=!0,T(he,`RPC '${e}' stream ${s} transport closed`),E.Ro())}),v(h,ms.EventType.ERROR,g=>{f||(f=!0,nn(he,`RPC '${e}' stream ${s} transport errored:`,g),E.Ro(new _(p.UNAVAILABLE,"The operation could not be completed")))}),v(h,ms.EventType.MESSAGE,g=>{var k;if(!f){const O=g.data[0];F(!!O);const b=O,U=b.error||((k=b[0])===null||k===void 0?void 0:k.error);if(U){T(he,`RPC '${e}' stream ${s} received error:`,U);const me=U.status;let de=function(at){const _i=K[at];if(_i!==void 0)return ml(_i)}(me),ot=U.message;de===void 0&&(de=p.INTERNAL,ot="Unknown error status: "+me+" with message "+U.message),f=!0,E.Ro(new _(de,ot)),h.close()}else T(he,`RPC '${e}' stream ${s} received:`,O),E.Vo(O)}}),v(a,Jm.STAT_EVENT,g=>{g.stat===bu.PROXY?T(he,`RPC '${e}' stream ${s} detected buffering proxy`):g.stat===bu.NOPROXY&&T(he,`RPC '${e}' stream ${s} detected no buffering proxy`)}),setTimeout(()=>{E.Ao()},0),E}}function Wo(){return typeof document<"u"?document:null}/**
|
|
1468
1453
|
* @license
|
|
1469
1454
|
* Copyright 2020 Google LLC
|
|
1470
1455
|
*
|
|
@@ -1479,7 +1464,7 @@
|
|
|
1479
1464
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1480
1465
|
* See the License for the specific language governing permissions and
|
|
1481
1466
|
* limitations under the License.
|
|
1482
|
-
*/function
|
|
1467
|
+
*/function Ms(t){return new r_(t,!0)}/**
|
|
1483
1468
|
* @license
|
|
1484
1469
|
* Copyright 2017 Google LLC
|
|
1485
1470
|
*
|
|
@@ -1494,7 +1479,7 @@
|
|
|
1494
1479
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1495
1480
|
* See the License for the specific language governing permissions and
|
|
1496
1481
|
* limitations under the License.
|
|
1497
|
-
*/class
|
|
1482
|
+
*/class Ml{constructor(e,n,r=1e3,s=1.5,i=6e4){this.si=e,this.timerId=n,this.Fo=r,this.Mo=s,this.xo=i,this.Oo=0,this.No=null,this.Bo=Date.now(),this.reset()}reset(){this.Oo=0}Lo(){this.Oo=this.xo}ko(e){this.cancel();const n=Math.floor(this.Oo+this.qo()),r=Math.max(0,Date.now()-this.Bo),s=Math.max(0,n-r);s>0&&T("ExponentialBackoff",`Backing off for ${s} ms (base delay: ${this.Oo} ms, delay with jitter: ${n} ms, last attempt: ${r} ms ago)`),this.No=this.si.enqueueAfterDelay(this.timerId,s,()=>(this.Bo=Date.now(),e())),this.Oo*=this.Mo,this.Oo<this.Fo&&(this.Oo=this.Fo),this.Oo>this.xo&&(this.Oo=this.xo)}Qo(){this.No!==null&&(this.No.skipDelay(),this.No=null)}cancel(){this.No!==null&&(this.No.cancel(),this.No=null)}qo(){return(Math.random()-.5)*this.Oo}}/**
|
|
1498
1483
|
* @license
|
|
1499
1484
|
* Copyright 2017 Google LLC
|
|
1500
1485
|
*
|
|
@@ -1509,7 +1494,7 @@
|
|
|
1509
1494
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1510
1495
|
* See the License for the specific language governing permissions and
|
|
1511
1496
|
* limitations under the License.
|
|
1512
|
-
*/class
|
|
1497
|
+
*/class Ul{constructor(e,n,r,s,i,o,a,c){this.si=e,this.Ko=r,this.$o=s,this.connection=i,this.authCredentialsProvider=o,this.appCheckCredentialsProvider=a,this.listener=c,this.state=0,this.Uo=0,this.Wo=null,this.Go=null,this.stream=null,this.zo=new Ml(e,n)}jo(){return this.state===1||this.state===5||this.Ho()}Ho(){return this.state===2||this.state===3}start(){this.state!==4?this.auth():this.Jo()}async stop(){this.jo()&&await this.close(0)}Yo(){this.state=0,this.zo.reset()}Zo(){this.Ho()&&this.Wo===null&&(this.Wo=this.si.enqueueAfterDelay(this.Ko,6e4,()=>this.Xo()))}e_(e){this.t_(),this.stream.send(e)}async Xo(){if(this.Ho())return this.close(0)}t_(){this.Wo&&(this.Wo.cancel(),this.Wo=null)}n_(){this.Go&&(this.Go.cancel(),this.Go=null)}async close(e,n){this.t_(),this.n_(),this.zo.cancel(),this.Uo++,e!==4?this.zo.reset():n&&n.code===p.RESOURCE_EXHAUSTED?(Xe(n.toString()),Xe("Using maximum backoff delay to prevent overloading the backend."),this.zo.Lo()):n&&n.code===p.UNAUTHENTICATED&&this.state!==3&&(this.authCredentialsProvider.invalidateToken(),this.appCheckCredentialsProvider.invalidateToken()),this.stream!==null&&(this.r_(),this.stream.close(),this.stream=null),this.state=e,await this.listener.Io(n)}r_(){}auth(){this.state=1;const e=this.i_(this.Uo),n=this.Uo;Promise.all([this.authCredentialsProvider.getToken(),this.appCheckCredentialsProvider.getToken()]).then(([r,s])=>{this.Uo===n&&this.s_(r,s)},r=>{e(()=>{const s=new _(p.UNKNOWN,"Fetching auth token failed: "+r.message);return this.o_(s)})})}s_(e,n){const r=this.i_(this.Uo);this.stream=this.__(e,n),this.stream.ho(()=>{r(()=>(this.state=2,this.Go=this.si.enqueueAfterDelay(this.$o,1e4,()=>(this.Ho()&&(this.state=3),Promise.resolve())),this.listener.ho()))}),this.stream.Io(s=>{r(()=>this.o_(s))}),this.stream.onMessage(s=>{r(()=>this.onMessage(s))})}Jo(){this.state=5,this.zo.ko(async()=>{this.state=0,this.start()})}o_(e){return T("PersistentStream",`close with error: ${e}`),this.stream=null,this.close(4,e)}i_(e){return n=>{this.si.enqueueAndForget(()=>this.Uo===e?n():(T("PersistentStream","stream callback skipped by getCloseGuardedDispatcher."),Promise.resolve()))}}}class W_ extends Ul{constructor(e,n,r,s,i,o){super(e,"listen_stream_connection_backoff","listen_stream_idle","health_check_timeout",n,r,s,o),this.serializer=i}__(e,n){return this.connection.vo("Listen",e,n)}onMessage(e){this.zo.reset();const n=o_(this.serializer,e),r=function(i){if(!("targetChange"in i))return S.min();const o=i.targetChange;return o.targetIds&&o.targetIds.length?S.min():o.readTime?qe(o.readTime):S.min()}(e);return this.listener.a_(n,r)}u_(e){const n={};n.database=Bo(this.serializer),n.addTarget=function(i,o){let a;const c=o.target;if(a=bo(c)?{documents:u_(i,c)}:{query:Sl(i,c)},a.targetId=o.targetId,o.resumeToken.approximateByteSize()>0){a.resumeToken=wl(i,o.resumeToken);const u=Lo(i,o.expectedCount);u!==null&&(a.expectedCount=u)}else if(o.snapshotVersion.compareTo(S.min())>0){a.readTime=Vs(i,o.snapshotVersion.toTimestamp());const u=Lo(i,o.expectedCount);u!==null&&(a.expectedCount=u)}return a}(this.serializer,e);const r=h_(this.serializer,e);r&&(n.labels=r),this.e_(n)}c_(e){const n={};n.database=Bo(this.serializer),n.removeTarget=e,this.e_(n)}}class G_ extends Ul{constructor(e,n,r,s,i,o){super(e,"write_stream_connection_backoff","write_stream_idle","health_check_timeout",n,r,s,o),this.serializer=i,this.l_=!1}get h_(){return this.l_}start(){this.l_=!1,this.lastStreamToken=void 0,super.start()}r_(){this.l_&&this.P_([])}__(e,n){return this.connection.vo("Write",e,n)}onMessage(e){if(F(!!e.streamToken),this.lastStreamToken=e.streamToken,this.l_){this.zo.reset();const n=c_(e.writeResults,e.commitTime),r=qe(e.commitTime);return this.listener.I_(r,n)}return F(!e.writeResults||e.writeResults.length===0),this.l_=!0,this.listener.T_()}E_(){const e={};e.database=Bo(this.serializer),this.e_(e)}P_(e){const n={streamToken:this.lastStreamToken,writes:e.map(r=>a_(this.serializer,r))};this.e_(n)}}/**
|
|
1513
1498
|
* @license
|
|
1514
1499
|
* Copyright 2017 Google LLC
|
|
1515
1500
|
*
|
|
@@ -1524,8 +1509,8 @@
|
|
|
1524
1509
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1525
1510
|
* See the License for the specific language governing permissions and
|
|
1526
1511
|
* limitations under the License.
|
|
1527
|
-
*/class
|
|
1528
|
-
This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.`;this.
|
|
1512
|
+
*/class K_ extends class{}{constructor(e,n,r,s){super(),this.authCredentials=e,this.appCheckCredentials=n,this.connection=r,this.serializer=s,this.d_=!1}A_(){if(this.d_)throw new _(p.FAILED_PRECONDITION,"The client has already been terminated.")}wo(e,n,r){return this.A_(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then(([s,i])=>this.connection.wo(e,n,r,s,i)).catch(s=>{throw s.name==="FirebaseError"?(s.code===p.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),s):new _(p.UNKNOWN,s.toString())})}Co(e,n,r,s){return this.A_(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then(([i,o])=>this.connection.Co(e,n,r,i,o,s)).catch(i=>{throw i.name==="FirebaseError"?(i.code===p.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),i):new _(p.UNKNOWN,i.toString())})}terminate(){this.d_=!0}}async function Q_(t,e,n){var r;const s=P(t),{request:i,R_:o}=function(h,d,f){const E=Sl(h,d),v={},g=[];let k=0;return f.forEach(O=>{const b="aggregate_"+k++;v[b]=O.alias,O.aggregateType==="count"?g.push({alias:b,count:{}}):O.aggregateType==="avg"?g.push({alias:b,avg:{field:gt(O.fieldPath)}}):O.aggregateType==="sum"&&g.push({alias:b,sum:{field:gt(O.fieldPath)}})}),{request:{structuredAggregationQuery:{aggregations:g,structuredQuery:E.structuredQuery},parent:E.parent},R_:v}}(s.serializer,function(h){const d=P(h);return d.Pe||(d.Pe=Xu(d,h.explicitOrderBy)),d.Pe}(e),n),a=i.parent;s.connection.yo||delete i.parent;const c=(await s.Co("RunAggregationQuery",a,i,1)).filter(l=>!!l.result);F(c.length===1);const u=(r=c[0].result)===null||r===void 0?void 0:r.aggregateFields;return Object.keys(u).reduce((l,h)=>(l[o[h]]=u[h],l),{})}class Y_{constructor(e,n){this.asyncQueue=e,this.onlineStateHandler=n,this.state="Unknown",this.V_=0,this.m_=null,this.f_=!0}g_(){this.V_===0&&(this.p_("Unknown"),this.m_=this.asyncQueue.enqueueAfterDelay("online_state_timeout",1e4,()=>(this.m_=null,this.y_("Backend didn't respond within 10 seconds."),this.p_("Offline"),Promise.resolve())))}w_(e){this.state==="Online"?this.p_("Unknown"):(this.V_++,this.V_>=1&&(this.S_(),this.y_(`Connection failed 1 times. Most recent error: ${e.toString()}`),this.p_("Offline")))}set(e){this.S_(),this.V_=0,e==="Online"&&(this.f_=!1),this.p_(e)}p_(e){e!==this.state&&(this.state=e,this.onlineStateHandler(e))}y_(e){const n=`Could not reach Cloud Firestore backend. ${e}
|
|
1513
|
+
This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.`;this.f_?(Xe(n),this.f_=!1):T("OnlineStateTracker",n)}S_(){this.m_!==null&&(this.m_.cancel(),this.m_=null)}}/**
|
|
1529
1514
|
* @license
|
|
1530
1515
|
* Copyright 2017 Google LLC
|
|
1531
1516
|
*
|
|
@@ -1540,7 +1525,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1540
1525
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1541
1526
|
* See the License for the specific language governing permissions and
|
|
1542
1527
|
* limitations under the License.
|
|
1543
|
-
*/class
|
|
1528
|
+
*/class X_{constructor(e,n,r,s,i){this.localStore=e,this.datastore=n,this.asyncQueue=r,this.remoteSyncer={},this.b_=[],this.D_=new Map,this.C_=new Set,this.v_=[],this.F_=i,this.F_.ro(o=>{r.enqueueAndForget(async()=>{Ft(this)&&(T("RemoteStore","Restarting streams for network reachability change."),await async function(c){const u=P(c);u.C_.add(4),await Tr(u),u.M_.set("Unknown"),u.C_.delete(4),await Us(u)}(this))})}),this.M_=new Y_(r,s)}}async function Us(t){if(Ft(t))for(const e of t.v_)await e(!0)}async function Tr(t){for(const e of t.v_)await e(!1)}function xl(t,e){const n=P(t);n.D_.has(e.targetId)||(n.D_.set(e.targetId,e),Qo(n)?Ko(n):fn(n).Ho()&&Go(n,e))}function Fl(t,e){const n=P(t),r=fn(n);n.D_.delete(e),r.Ho()&&Bl(n,e),n.D_.size===0&&(r.Ho()?r.Zo():Ft(n)&&n.M_.set("Unknown"))}function Go(t,e){if(t.x_.Oe(e.targetId),e.resumeToken.approximateByteSize()>0||e.snapshotVersion.compareTo(S.min())>0){const n=t.remoteSyncer.getRemoteKeysForTarget(e.targetId).size;e=e.withExpectedCount(n)}fn(t).u_(e)}function Bl(t,e){t.x_.Oe(e),fn(t).c_(e)}function Ko(t){t.x_=new Zg({getRemoteKeysForTarget:e=>t.remoteSyncer.getRemoteKeysForTarget(e),_t:e=>t.D_.get(e)||null,nt:()=>t.datastore.serializer.databaseId}),fn(t).start(),t.M_.g_()}function Qo(t){return Ft(t)&&!fn(t).jo()&&t.D_.size>0}function Ft(t){return P(t).C_.size===0}function ql(t){t.x_=void 0}async function J_(t){t.D_.forEach((e,n)=>{Go(t,e)})}async function Z_(t,e){ql(t),Qo(t)?(t.M_.w_(e),Ko(t)):t.M_.set("Unknown")}async function ey(t,e,n){if(t.M_.set("Online"),e instanceof El&&e.state===2&&e.cause)try{await async function(s,i){const o=i.cause;for(const a of i.targetIds)s.D_.has(a)&&(await s.remoteSyncer.rejectListen(a,o),s.D_.delete(a),s.x_.removeTarget(a))}(t,e)}catch(r){T("RemoteStore","Failed to remove targets %s: %s ",e.targetIds.join(","),r),await xs(t,r)}else if(e instanceof Os?t.x_.$e(e):e instanceof yl?t.x_.Je(e):t.x_.Ge(e),!n.isEqual(S.min()))try{const r=await Dl(t.localStore);n.compareTo(r)>=0&&await function(i,o){const a=i.x_.it(o);return a.targetChanges.forEach((c,u)=>{if(c.resumeToken.approximateByteSize()>0){const l=i.D_.get(u);l&&i.D_.set(u,l.withResumeToken(c.resumeToken,o))}}),a.targetMismatches.forEach((c,u)=>{const l=i.D_.get(c);if(!l)return;i.D_.set(c,l.withResumeToken(ue.EMPTY_BYTE_STRING,l.snapshotVersion)),Bl(i,c);const h=new _t(l.target,c,u,l.sequenceNumber);Go(i,h)}),i.remoteSyncer.applyRemoteEvent(a)}(t,n)}catch(r){T("RemoteStore","Failed to raise snapshot:",r),await xs(t,r)}}async function xs(t,e,n){if(!ar(e))throw e;t.C_.add(1),await Tr(t),t.M_.set("Offline"),n||(n=()=>Dl(t.localStore)),t.asyncQueue.enqueueRetryable(async()=>{T("RemoteStore","Retrying IndexedDB access"),await n(),t.C_.delete(1),await Us(t)})}function $l(t,e){return e().catch(n=>xs(t,n,e))}async function Fs(t){const e=P(t),n=yt(e);let r=e.b_.length>0?e.b_[e.b_.length-1].batchId:-1;for(;ty(e);)try{const s=await x_(e.localStore,r);if(s===null){e.b_.length===0&&n.Zo();break}r=s.batchId,ny(e,s)}catch(s){await xs(e,s)}jl(e)&&zl(e)}function ty(t){return Ft(t)&&t.b_.length<10}function ny(t,e){t.b_.push(e);const n=yt(t);n.Ho()&&n.h_&&n.P_(e.mutations)}function jl(t){return Ft(t)&&!yt(t).jo()&&t.b_.length>0}function zl(t){yt(t).start()}async function ry(t){yt(t).E_()}async function sy(t){const e=yt(t);for(const n of t.b_)e.P_(n.mutations)}async function iy(t,e,n){const r=t.b_.shift(),s=Oo.from(r,e,n);await $l(t,()=>t.remoteSyncer.applySuccessfulWrite(s)),await Fs(t)}async function oy(t,e){e&&yt(t).h_&&await async function(r,s){if(function(o){return Yg(o)&&o!==p.ABORTED}(s.code)){const i=r.b_.shift();yt(r).Yo(),await $l(r,()=>r.remoteSyncer.rejectFailedWrite(i.batchId,s)),await Fs(r)}}(t,e),jl(t)&&zl(t)}async function Hl(t,e){const n=P(t);n.asyncQueue.verifyOperationInProgress(),T("RemoteStore","RemoteStore received new credentials");const r=Ft(n);n.C_.add(3),await Tr(n),r&&n.M_.set("Unknown"),await n.remoteSyncer.handleCredentialChange(e),n.C_.delete(3),await Us(n)}async function ay(t,e){const n=P(t);e?(n.C_.delete(2),await Us(n)):e||(n.C_.add(2),await Tr(n),n.M_.set("Unknown"))}function fn(t){return t.O_||(t.O_=function(n,r,s){const i=P(n);return i.A_(),new W_(r,i.connection,i.authCredentials,i.appCheckCredentials,i.serializer,s)}(t.datastore,t.asyncQueue,{ho:J_.bind(null,t),Io:Z_.bind(null,t),a_:ey.bind(null,t)}),t.v_.push(async e=>{e?(t.O_.Yo(),Qo(t)?Ko(t):t.M_.set("Unknown")):(await t.O_.stop(),ql(t))})),t.O_}function yt(t){return t.N_||(t.N_=function(n,r,s){const i=P(n);return i.A_(),new G_(r,i.connection,i.authCredentials,i.appCheckCredentials,i.serializer,s)}(t.datastore,t.asyncQueue,{ho:ry.bind(null,t),Io:oy.bind(null,t),T_:sy.bind(null,t),I_:iy.bind(null,t)}),t.v_.push(async e=>{e?(t.N_.Yo(),await Fs(t)):(await t.N_.stop(),t.b_.length>0&&(T("RemoteStore",`Stopping write stream with ${t.b_.length} pending writes`),t.b_=[]))})),t.N_}/**
|
|
1544
1529
|
* @license
|
|
1545
1530
|
* Copyright 2017 Google LLC
|
|
1546
1531
|
*
|
|
@@ -1555,7 +1540,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1555
1540
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1556
1541
|
* See the License for the specific language governing permissions and
|
|
1557
1542
|
* limitations under the License.
|
|
1558
|
-
*/class
|
|
1543
|
+
*/class Yo{constructor(e,n,r,s,i){this.asyncQueue=e,this.timerId=n,this.targetTimeMs=r,this.op=s,this.removalCallback=i,this.deferred=new xe,this.then=this.deferred.promise.then.bind(this.deferred.promise),this.deferred.promise.catch(o=>{})}get promise(){return this.deferred.promise}static createAndSchedule(e,n,r,s,i){const o=Date.now()+r,a=new Yo(e,n,o,s,i);return a.start(r),a}start(e){this.timerHandle=setTimeout(()=>this.handleDelayElapsed(),e)}skipDelay(){return this.handleDelayElapsed()}cancel(e){this.timerHandle!==null&&(this.clearTimeout(),this.deferred.reject(new _(p.CANCELLED,"Operation cancelled"+(e?": "+e:""))))}handleDelayElapsed(){this.asyncQueue.enqueueAndForget(()=>this.timerHandle!==null?(this.clearTimeout(),this.op().then(e=>this.deferred.resolve(e))):Promise.resolve())}clearTimeout(){this.timerHandle!==null&&(this.removalCallback(this),clearTimeout(this.timerHandle),this.timerHandle=null)}}function Xo(t,e){if(Xe("AsyncQueue",`${e}: ${t}`),ar(t))return new _(p.UNAVAILABLE,`${e}: ${t}`);throw t}/**
|
|
1559
1544
|
* @license
|
|
1560
1545
|
* Copyright 2017 Google LLC
|
|
1561
1546
|
*
|
|
@@ -1570,10 +1555,10 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1570
1555
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1571
1556
|
* See the License for the specific language governing permissions and
|
|
1572
1557
|
* limitations under the License.
|
|
1573
|
-
*/class
|
|
1558
|
+
*/class pn{constructor(e){this.comparator=e?(n,r)=>e(n,r)||I.comparator(n.key,r.key):(n,r)=>I.comparator(n.key,r.key),this.keyedMap=fr(),this.sortedSet=new j(this.comparator)}static emptySet(e){return new pn(e.comparator)}has(e){return this.keyedMap.get(e)!=null}get(e){return this.keyedMap.get(e)}first(){return this.sortedSet.minKey()}last(){return this.sortedSet.maxKey()}isEmpty(){return this.sortedSet.isEmpty()}indexOf(e){const n=this.keyedMap.get(e);return n?this.sortedSet.indexOf(n):-1}get size(){return this.sortedSet.size}forEach(e){this.sortedSet.inorderTraversal((n,r)=>(e(n),!1))}add(e){const n=this.delete(e.key);return n.copy(n.keyedMap.insert(e.key,e),n.sortedSet.insert(e,null))}delete(e){const n=this.get(e);return n?this.copy(this.keyedMap.remove(e),this.sortedSet.remove(n)):this}isEqual(e){if(!(e instanceof pn)||this.size!==e.size)return!1;const n=this.sortedSet.getIterator(),r=e.sortedSet.getIterator();for(;n.hasNext();){const s=n.getNext().key,i=r.getNext().key;if(!s.isEqual(i))return!1}return!0}toString(){const e=[];return this.forEach(n=>{e.push(n.toString())}),e.length===0?"DocumentSet ()":`DocumentSet (
|
|
1574
1559
|
`+e.join(`
|
|
1575
1560
|
`)+`
|
|
1576
|
-
)`}copy(e,n){const r=new
|
|
1561
|
+
)`}copy(e,n){const r=new pn;return r.comparator=this.comparator,r.keyedMap=e,r.sortedSet=n,r}}/**
|
|
1577
1562
|
* @license
|
|
1578
1563
|
* Copyright 2017 Google LLC
|
|
1579
1564
|
*
|
|
@@ -1588,7 +1573,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1588
1573
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1589
1574
|
* See the License for the specific language governing permissions and
|
|
1590
1575
|
* limitations under the License.
|
|
1591
|
-
*/class
|
|
1576
|
+
*/class Wl{constructor(){this.B_=new j(I.comparator)}track(e){const n=e.doc.key,r=this.B_.get(n);r?e.type!==0&&r.type===3?this.B_=this.B_.insert(n,e):e.type===3&&r.type!==1?this.B_=this.B_.insert(n,{type:r.type,doc:e.doc}):e.type===2&&r.type===2?this.B_=this.B_.insert(n,{type:2,doc:e.doc}):e.type===2&&r.type===0?this.B_=this.B_.insert(n,{type:0,doc:e.doc}):e.type===1&&r.type===0?this.B_=this.B_.remove(n):e.type===1&&r.type===2?this.B_=this.B_.insert(n,{type:1,doc:r.doc}):e.type===0&&r.type===1?this.B_=this.B_.insert(n,{type:2,doc:e.doc}):A():this.B_=this.B_.insert(n,e)}L_(){const e=[];return this.B_.inorderTraversal((n,r)=>{e.push(r)}),e}}class mn{constructor(e,n,r,s,i,o,a,c,u){this.query=e,this.docs=n,this.oldDocs=r,this.docChanges=s,this.mutatedKeys=i,this.fromCache=o,this.syncStateChanged=a,this.excludesMetadataChanges=c,this.hasCachedResults=u}static fromInitialDocuments(e,n,r,s,i){const o=[];return n.forEach(a=>{o.push({type:0,doc:a})}),new mn(e,n,pn.emptySet(n),o,r,s,!0,!1,i)}get hasPendingWrites(){return!this.mutatedKeys.isEmpty()}isEqual(e){if(!(this.fromCache===e.fromCache&&this.hasCachedResults===e.hasCachedResults&&this.syncStateChanged===e.syncStateChanged&&this.mutatedKeys.isEqual(e.mutatedKeys)&&As(this.query,e.query)&&this.docs.isEqual(e.docs)&&this.oldDocs.isEqual(e.oldDocs)))return!1;const n=this.docChanges,r=e.docChanges;if(n.length!==r.length)return!1;for(let s=0;s<n.length;s++)if(n[s].type!==r[s].type||!n[s].doc.isEqual(r[s].doc))return!1;return!0}}/**
|
|
1592
1577
|
* @license
|
|
1593
1578
|
* Copyright 2017 Google LLC
|
|
1594
1579
|
*
|
|
@@ -1603,7 +1588,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1603
1588
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1604
1589
|
* See the License for the specific language governing permissions and
|
|
1605
1590
|
* limitations under the License.
|
|
1606
|
-
*/class
|
|
1591
|
+
*/class cy{constructor(){this.k_=void 0,this.listeners=[]}}class uy{constructor(){this.queries=new ln(e=>Ju(e),As),this.onlineState="Unknown",this.q_=new Set}}async function Gl(t,e){const n=P(t),r=e.query;let s=!1,i=n.queries.get(r);if(i||(s=!0,i=new cy),s)try{i.k_=await n.onListen(r)}catch(o){const a=Xo(o,`Initialization of query '${un(e.query)}' failed`);return void e.onError(a)}n.queries.set(r,i),i.listeners.push(e),e.Q_(n.onlineState),i.k_&&e.K_(i.k_)&&Jo(n)}async function Kl(t,e){const n=P(t),r=e.query;let s=!1;const i=n.queries.get(r);if(i){const o=i.listeners.indexOf(e);o>=0&&(i.listeners.splice(o,1),s=i.listeners.length===0)}if(s)return n.queries.delete(r),n.onUnlisten(r)}function ly(t,e){const n=P(t);let r=!1;for(const s of e){const i=s.query,o=n.queries.get(i);if(o){for(const a of o.listeners)a.K_(s)&&(r=!0);o.k_=s}}r&&Jo(n)}function hy(t,e,n){const r=P(t),s=r.queries.get(e);if(s)for(const i of s.listeners)i.onError(n);r.queries.delete(e)}function Jo(t){t.q_.forEach(e=>{e.next()})}class Ql{constructor(e,n,r){this.query=e,this.U_=n,this.W_=!1,this.G_=null,this.onlineState="Unknown",this.options=r||{}}K_(e){if(!this.options.includeMetadataChanges){const r=[];for(const s of e.docChanges)s.type!==3&&r.push(s);e=new mn(e.query,e.docs,e.oldDocs,r,e.mutatedKeys,e.fromCache,e.syncStateChanged,!0,e.hasCachedResults)}let n=!1;return this.W_?this.z_(e)&&(this.U_.next(e),n=!0):this.j_(e,this.onlineState)&&(this.H_(e),n=!0),this.G_=e,n}onError(e){this.U_.error(e)}Q_(e){this.onlineState=e;let n=!1;return this.G_&&!this.W_&&this.j_(this.G_,e)&&(this.H_(this.G_),n=!0),n}j_(e,n){if(!e.fromCache)return!0;const r=n!=="Offline";return(!this.options.J_||!r)&&(!e.docs.isEmpty()||e.hasCachedResults||n==="Offline")}z_(e){if(e.docChanges.length>0)return!0;const n=this.G_&&this.G_.hasPendingWrites!==e.hasPendingWrites;return!(!e.syncStateChanged&&!n)&&this.options.includeMetadataChanges===!0}H_(e){e=mn.fromInitialDocuments(e.query,e.docs,e.mutatedKeys,e.fromCache,e.hasCachedResults),this.W_=!0,this.U_.next(e)}}/**
|
|
1607
1592
|
* @license
|
|
1608
1593
|
* Copyright 2017 Google LLC
|
|
1609
1594
|
*
|
|
@@ -1618,7 +1603,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1618
1603
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1619
1604
|
* See the License for the specific language governing permissions and
|
|
1620
1605
|
* limitations under the License.
|
|
1621
|
-
*/class ih{constructor(e){this.key=e}}class oh{constructor(e){this.key=e}}class wy{constructor(e,n){this.query=e,this.oa=n,this._a=null,this.hasCachedResults=!1,this.current=!1,this.aa=D(),this.mutatedKeys=D(),this.ua=al(e),this.ca=new gn(this.ua)}get la(){return this.oa}ha(e,n){const r=n?n.Pa:new th,s=n?n.ca:this.ca;let i=n?n.mutatedKeys:this.mutatedKeys,o=s,a=!1;const c=this.query.limitType==="F"&&s.size===this.query.limit?s.last():null,u=this.query.limitType==="L"&&s.size===this.query.limit?s.first():null;if(e.inorderTraversal((l,h)=>{const d=s.get(l),f=Ss(this.query,h)?h:null,E=!!d&&this.mutatedKeys.has(d.key),T=!!f&&(f.hasLocalMutations||this.mutatedKeys.has(f.key)&&f.hasCommittedMutations);let _=!1;d&&f?d.data.isEqual(f.data)?E!==T&&(r.track({type:3,doc:f}),_=!0):this.Ia(d,f)||(r.track({type:2,doc:f}),_=!0,(c&&this.ua(f,c)>0||u&&this.ua(f,u)<0)&&(a=!0)):!d&&f?(r.track({type:0,doc:f}),_=!0):d&&!f&&(r.track({type:1,doc:d}),_=!0,(c||u)&&(a=!0)),_&&(f?(o=o.add(f),i=T?i.add(l):i.delete(l)):(o=o.delete(l),i=i.delete(l)))}),this.query.limit!==null)for(;o.size>this.query.limit;){const l=this.query.limitType==="F"?o.last():o.first();o=o.delete(l.key),i=i.delete(l.key),r.track({type:1,doc:l})}return{ca:o,Pa:r,Xi:a,mutatedKeys:i}}Ia(e,n){return e.hasLocalMutations&&n.hasCommittedMutations&&!n.hasLocalMutations}applyChanges(e,n,r,s){const i=this.ca;this.ca=e.ca,this.mutatedKeys=e.mutatedKeys;const o=e.Pa.k_();o.sort((l,h)=>function(f,E){const T=_=>{switch(_){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return A()}};return T(f)-T(E)}(l.type,h.type)||this.ua(l.doc,h.doc)),this.Ta(r),s=s!=null&&s;const a=n&&!s?this.Ea():[],c=this.aa.size===0&&this.current&&!s?1:0,u=c!==this._a;return this._a=c,o.length!==0||u?{snapshot:new _n(this.query,e.ca,i,o,e.mutatedKeys,c===0,u,!1,!!r&&r.resumeToken.approximateByteSize()>0),da:a}:{da:a}}U_(e){return this.current&&e==="Offline"?(this.current=!1,this.applyChanges({ca:this.ca,Pa:new th,mutatedKeys:this.mutatedKeys,Xi:!1},!1)):{da:[]}}Aa(e){return!this.oa.has(e)&&!!this.ca.has(e)&&!this.ca.get(e).hasLocalMutations}Ta(e){e&&(e.addedDocuments.forEach(n=>this.oa=this.oa.add(n)),e.modifiedDocuments.forEach(n=>{}),e.removedDocuments.forEach(n=>this.oa=this.oa.delete(n)),this.current=e.current)}Ea(){if(!this.current)return[];const e=this.aa;this.aa=D(),this.ca.forEach(r=>{this.Aa(r.key)&&(this.aa=this.aa.add(r.key))});const n=[];return e.forEach(r=>{this.aa.has(r)||n.push(new oh(r))}),this.aa.forEach(r=>{e.has(r)||n.push(new ih(r))}),n}Ra(e){this.oa=e.hs,this.aa=D();const n=this.ha(e.documents);return this.applyChanges(n,!0)}Va(){return _n.fromInitialDocuments(this.query,this.ca,this.mutatedKeys,this._a===0,this.hasCachedResults)}}class Iy{constructor(e,n,r){this.query=e,this.targetId=n,this.view=r}}class Ay{constructor(e){this.key=e,this.ma=!1}}class Ry{constructor(e,n,r,s,i,o){this.localStore=e,this.remoteStore=n,this.eventManager=r,this.sharedClientState=s,this.currentUser=i,this.maxConcurrentLimboResolutions=o,this.fa={},this.ga=new dn(a=>ol(a),Ps),this.pa=new Map,this.ya=new Set,this.wa=new q(w.comparator),this.Sa=new Map,this.ba=new Wo,this.Da={},this.Ca=new Map,this.va=pn.Bn(),this.onlineState="Unknown",this.Fa=void 0}get isPrimaryClient(){return this.Fa===!0}}async function Py(t,e){const n=My(t);let r,s;const i=n.ga.get(e);if(i)r=i.targetId,n.sharedClientState.addLocalQueryTarget(r),s=i.view.Va();else{const o=await Q_(n.localStore,$e(e)),a=n.sharedClientState.addLocalQueryTarget(o.targetId);r=o.targetId,s=await Sy(n,e,r,a==="current",o.resumeToken),n.isPrimaryClient&&Gl(n.remoteStore,o)}return s}async function Sy(t,e,n,r,s){t.Ma=(h,d,f)=>async function(T,_,C,L){let k=_.view.ha(C);k.Xi&&(k=await $l(T.localStore,_.query,!1).then(({documents:Me})=>_.view.ha(Me,k)));const O=L&&L.targetChanges.get(_.targetId),_e=L&&L.targetMismatches.get(_.targetId)!=null,oe=_.view.applyChanges(k,T.isPrimaryClient,O,_e);return dh(T,_.targetId,oe.da),oe.snapshot}(t,h,d,f);const i=await $l(t.localStore,e,!0),o=new wy(e,i.hs),a=o.ha(i.documents),c=wr.createSynthesizedTargetChangeForCurrentChange(n,r&&t.onlineState!=="Offline",s),u=o.applyChanges(a,t.isPrimaryClient,c);dh(t,n,u.da);const l=new Iy(e,n,o);return t.ga.set(e,l),t.pa.has(n)?t.pa.get(n).push(e):t.pa.set(n,[e]),u.snapshot}async function by(t,e){const n=P(t),r=n.ga.get(e),s=n.pa.get(r.targetId);if(s.length>1)return n.pa.set(r.targetId,s.filter(i=>!Ps(i,e))),void n.ga.delete(e);n.isPrimaryClient?(n.sharedClientState.removeLocalQueryTarget(r.targetId),n.sharedClientState.isActiveQueryTarget(r.targetId)||await Qo(n.localStore,r.targetId,!1).then(()=>{n.sharedClientState.clearQueryState(r.targetId),Kl(n.remoteStore,r.targetId),sa(n,r.targetId)}).catch(ar)):(sa(n,r.targetId),await Qo(n.localStore,r.targetId,!0))}async function Cy(t,e,n){const r=xy(t);try{const s=await function(o,a){const c=P(o),u=Y.now(),l=a.reduce((f,E)=>f.add(E.key),D());let h,d;return c.persistence.runTransaction("Locally write mutations","readwrite",f=>{let E=Ze(),T=D();return c.os.getEntries(f,l).next(_=>{E=_,E.forEach((C,L)=>{L.isValidDocument()||(T=T.add(C))})}).next(()=>c.localDocuments.getOverlayedDocuments(f,E)).next(_=>{h=_;const C=[];for(const L of a){const k=e_(L,h.get(L.key).overlayedDocument);k!=null&&C.push(new mt(L.key,k,Ku(k.value.mapValue),Pe.exists(!0)))}return c.mutationQueue.addMutationBatch(f,u,C,a)}).next(_=>{d=_;const C=_.applyToLocalDocumentSet(h,T);return c.documentOverlayCache.saveOverlays(f,_.batchId,C)})}).then(()=>({batchId:d.batchId,changes:ul(h)}))}(r.localStore,e);r.sharedClientState.addPendingMutation(s.batchId),function(o,a,c){let u=o.Da[o.currentUser.toKey()];u||(u=new q(M)),u=u.insert(a,c),o.Da[o.currentUser.toKey()]=u}(r,s.batchId,n),await Ar(r,s.changes),await js(r.remoteStore)}catch(s){const i=na(s,"Failed to persist write");n.reject(i)}}async function ah(t,e){const n=P(t);try{const r=await W_(n.localStore,e);e.targetChanges.forEach((s,i)=>{const o=n.Sa.get(i);o&&(F(s.addedDocuments.size+s.modifiedDocuments.size+s.removedDocuments.size<=1),s.addedDocuments.size>0?o.ma=!0:s.modifiedDocuments.size>0?F(o.ma):s.removedDocuments.size>0&&(F(o.ma),o.ma=!1))}),await Ar(n,r,e)}catch(r){await ar(r)}}function ch(t,e,n){const r=P(t);if(r.isPrimaryClient&&n===0||!r.isPrimaryClient&&n===1){const s=[];r.ga.forEach((i,o)=>{const a=o.view.U_(e);a.snapshot&&s.push(a.snapshot)}),function(o,a){const c=P(o);c.onlineState=a;let u=!1;c.queries.forEach((l,h)=>{for(const d of h.Q_)d.U_(a)&&(u=!0)}),u&&ra(c)}(r.eventManager,e),s.length&&r.fa.u_(s),r.onlineState=e,r.isPrimaryClient&&r.sharedClientState.setOnlineState(e)}}async function ky(t,e,n){const r=P(t);r.sharedClientState.updateQueryState(e,"rejected",n);const s=r.Sa.get(e),i=s&&s.key;if(i){let o=new q(w.comparator);o=o.insert(i,he.newNoDocument(i,S.min()));const a=D().add(i),c=new Vs(S.min(),new Map,new q(M),o,a);await ah(r,c),r.wa=r.wa.remove(i),r.Sa.delete(e),ia(r)}else await Qo(r.localStore,e,!1).then(()=>sa(r,e,n)).catch(ar)}async function Dy(t,e){const n=P(t),r=e.batch.batchId;try{const s=await H_(n.localStore,e);lh(n,r,null),uh(n,r),n.sharedClientState.updateMutationState(r,"acknowledged"),await Ar(n,s)}catch(s){await ar(s)}}async function Ny(t,e,n){const r=P(t);try{const s=await function(o,a){const c=P(o);return c.persistence.runTransaction("Reject batch","readwrite-primary",u=>{let l;return c.mutationQueue.lookupMutationBatch(u,a).next(h=>(F(h!==null),l=h.keys(),c.mutationQueue.removeMutationBatch(u,h))).next(()=>c.mutationQueue.performConsistencyCheck(u)).next(()=>c.documentOverlayCache.removeOverlaysForBatchId(u,l,a)).next(()=>c.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(u,l)).next(()=>c.localDocuments.getDocuments(u,l))})}(r.localStore,e);lh(r,e,n),uh(r,e),r.sharedClientState.updateMutationState(e,"rejected",n),await Ar(r,s)}catch(s){await ar(s)}}function uh(t,e){(t.Ca.get(e)||[]).forEach(n=>{n.resolve()}),t.Ca.delete(e)}function lh(t,e,n){const r=P(t);let s=r.Da[r.currentUser.toKey()];if(s){const i=s.get(e);i&&(n?i.reject(n):i.resolve(),s=s.remove(e)),r.Da[r.currentUser.toKey()]=s}}function sa(t,e,n=null){t.sharedClientState.removeLocalQueryTarget(e);for(const r of t.pa.get(e))t.ga.delete(r),n&&t.fa.xa(r,n);t.pa.delete(e),t.isPrimaryClient&&t.ba.Vr(e).forEach(r=>{t.ba.containsKey(r)||hh(t,r)})}function hh(t,e){t.ya.delete(e.path.canonicalString());const n=t.wa.get(e);n!==null&&(Kl(t.remoteStore,n),t.wa=t.wa.remove(e),t.Sa.delete(n),ia(t))}function dh(t,e,n){for(const r of n)r instanceof ih?(t.ba.addReference(r.key,e),Oy(t,r)):r instanceof oh?(v("SyncEngine","Document no longer in limbo: "+r.key),t.ba.removeReference(r.key,e),t.ba.containsKey(r.key)||hh(t,r.key)):A()}function Oy(t,e){const n=e.key,r=n.path.canonicalString();t.wa.get(n)||t.ya.has(r)||(v("SyncEngine","New document in limbo: "+n),t.ya.add(r),ia(t))}function ia(t){for(;t.ya.size>0&&t.wa.size<t.maxConcurrentLimboResolutions;){const e=t.ya.values().next().value;t.ya.delete(e);const n=new w(B.fromString(e)),r=t.va.next();t.Sa.set(r,new Ay(n)),t.wa=t.wa.insert(n,r),Gl(t.remoteStore,new _t($e(Lo(n.path)),r,"TargetPurposeLimboResolution",Po._e))}}async function Ar(t,e,n){const r=P(t),s=[],i=[],o=[];r.ga.isEmpty()||(r.ga.forEach((a,c)=>{o.push(r.Ma(c,e,n).then(u=>{if((u||n)&&r.isPrimaryClient&&r.sharedClientState.updateQueryState(c.targetId,u!=null&&u.fromCache?"not-current":"current"),u){s.push(u);const l=Ko.Ki(c.targetId,u);i.push(l)}}))}),await Promise.all(o),r.fa.u_(s),await async function(c,u){const l=P(c);try{await l.persistence.runTransaction("notifyLocalViewChanges","readwrite",h=>m.forEach(u,d=>m.forEach(d.qi,f=>l.persistence.referenceDelegate.addReference(h,d.targetId,f)).next(()=>m.forEach(d.Qi,f=>l.persistence.referenceDelegate.removeReference(h,d.targetId,f)))))}catch(h){if(!ur(h))throw h;v("LocalStore","Failed to update sequence numbers: "+h)}for(const h of u){const d=h.targetId;if(!h.fromCache){const f=l.ns.get(d),E=f.snapshotVersion,T=f.withLastLimboFreeSnapshotVersion(E);l.ns=l.ns.insert(d,T)}}}(r.localStore,i))}async function Vy(t,e){const n=P(t);if(!n.currentUser.isEqual(e)){v("SyncEngine","User change. New user:",e.toKey());const r=await Bl(n.localStore,e);n.currentUser=e,function(i,o){i.Ca.forEach(a=>{a.forEach(c=>{c.reject(new g(p.CANCELLED,o))})}),i.Ca.clear()}(n,"'waitForPendingWrites' promise is rejected due to a user change."),n.sharedClientState.handleUserChange(e,r.removedBatchIds,r.addedBatchIds),await Ar(n,r.us)}}function Ly(t,e){const n=P(t),r=n.Sa.get(e);if(r&&r.ma)return D().add(r.key);{let s=D();const i=n.pa.get(e);if(!i)return s;for(const o of i){const a=n.ga.get(o);s=s.unionWith(a.view.la)}return s}}function My(t){const e=P(t);return e.remoteStore.remoteSyncer.applyRemoteEvent=ah.bind(null,e),e.remoteStore.remoteSyncer.getRemoteKeysForTarget=Ly.bind(null,e),e.remoteStore.remoteSyncer.rejectListen=ky.bind(null,e),e.fa.u_=Ey.bind(null,e.eventManager),e.fa.xa=Ty.bind(null,e.eventManager),e}function xy(t){const e=P(t);return e.remoteStore.remoteSyncer.applySuccessfulWrite=Dy.bind(null,e),e.remoteStore.remoteSyncer.rejectFailedWrite=Ny.bind(null,e),e}class fh{constructor(){this.synchronizeTabs=!1}async initialize(e){this.serializer=Us(e.databaseInfo.databaseId),this.sharedClientState=this.createSharedClientState(e),this.persistence=this.createPersistence(e),await this.persistence.start(),this.localStore=this.createLocalStore(e),this.gcScheduler=this.createGarbageCollectionScheduler(e,this.localStore),this.indexBackfillerScheduler=this.createIndexBackfillerScheduler(e,this.localStore)}createGarbageCollectionScheduler(e,n){return null}createIndexBackfillerScheduler(e,n){return null}createLocalStore(e){return z_(this.persistence,new $_,e.initialUser,this.serializer)}createPersistence(e){return new F_(Go.Hr,this.serializer)}createSharedClientState(e){return new X_}async terminate(){var e,n;(e=this.gcScheduler)===null||e===void 0||e.stop(),(n=this.indexBackfillerScheduler)===null||n===void 0||n.stop(),this.sharedClientState.shutdown(),await this.persistence.shutdown()}}class Uy{async initialize(e,n){this.localStore||(this.localStore=e.localStore,this.sharedClientState=e.sharedClientState,this.datastore=this.createDatastore(n),this.remoteStore=this.createRemoteStore(n),this.eventManager=this.createEventManager(n),this.syncEngine=this.createSyncEngine(n,!e.synchronizeTabs),this.sharedClientState.onlineStateHandler=r=>ch(this.syncEngine,r,1),this.remoteStore.remoteSyncer.handleCredentialChange=Vy.bind(null,this.syncEngine),await _y(this.remoteStore,this.syncEngine.isPrimaryClient))}createEventManager(e){return function(){return new vy}()}createDatastore(e){const n=Us(e.databaseInfo.databaseId),r=function(i){return new ty(i)}(e.databaseInfo);return function(i,o,a,c){return new sy(i,o,a,c)}(e.authCredentials,e.appCheckCredentials,r,n)}createRemoteStore(e){return function(r,s,i,o,a){return new ay(r,s,i,o,a)}(this.localStore,this.datastore,e.asyncQueue,n=>ch(this.syncEngine,n,0),function(){return zl.D()?new zl:new J_}())}createSyncEngine(e,n){return function(s,i,o,a,c,u,l){const h=new Ry(s,i,o,a,c,u);return l&&(h.Fa=!0),h}(this.localStore,this.remoteStore,this.eventManager,this.sharedClientState,e.initialUser,e.maxConcurrentLimboResolutions,n)}async terminate(){var e;await async function(r){const s=P(r);v("RemoteStore","RemoteStore shutting down."),s.v_.add(5),await Ir(s),s.M_.shutdown(),s.x_.set("Unknown")}(this.remoteStore),(e=this.datastore)===null||e===void 0||e.terminate()}}/**
|
|
1606
|
+
*/class Yl{constructor(e){this.key=e}}class Xl{constructor(e){this.key=e}}class dy{constructor(e,n){this.query=e,this.ia=n,this.sa=null,this.hasCachedResults=!1,this.current=!1,this.oa=N(),this.mutatedKeys=N(),this._a=Zu(e),this.aa=new pn(this._a)}get ua(){return this.ia}ca(e,n){const r=n?n.la:new Wl,s=n?n.aa:this.aa;let i=n?n.mutatedKeys:this.mutatedKeys,o=s,a=!1;const c=this.query.limitType==="F"&&s.size===this.query.limit?s.last():null,u=this.query.limitType==="L"&&s.size===this.query.limit?s.first():null;if(e.inorderTraversal((l,h)=>{const d=s.get(l),f=Rs(this.query,h)?h:null,E=!!d&&this.mutatedKeys.has(d.key),v=!!f&&(f.hasLocalMutations||this.mutatedKeys.has(f.key)&&f.hasCommittedMutations);let g=!1;d&&f?d.data.isEqual(f.data)?E!==v&&(r.track({type:3,doc:f}),g=!0):this.ha(d,f)||(r.track({type:2,doc:f}),g=!0,(c&&this._a(f,c)>0||u&&this._a(f,u)<0)&&(a=!0)):!d&&f?(r.track({type:0,doc:f}),g=!0):d&&!f&&(r.track({type:1,doc:d}),g=!0,(c||u)&&(a=!0)),g&&(f?(o=o.add(f),i=v?i.add(l):i.delete(l)):(o=o.delete(l),i=i.delete(l)))}),this.query.limit!==null)for(;o.size>this.query.limit;){const l=this.query.limitType==="F"?o.last():o.first();o=o.delete(l.key),i=i.delete(l.key),r.track({type:1,doc:l})}return{aa:o,la:r,Zi:a,mutatedKeys:i}}ha(e,n){return e.hasLocalMutations&&n.hasCommittedMutations&&!n.hasLocalMutations}applyChanges(e,n,r){const s=this.aa;this.aa=e.aa,this.mutatedKeys=e.mutatedKeys;const i=e.la.L_();i.sort((u,l)=>function(d,f){const E=v=>{switch(v){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return A()}};return E(d)-E(f)}(u.type,l.type)||this._a(u.doc,l.doc)),this.Pa(r);const o=n?this.Ia():[],a=this.oa.size===0&&this.current?1:0,c=a!==this.sa;return this.sa=a,i.length!==0||c?{snapshot:new mn(this.query,e.aa,s,i,e.mutatedKeys,a===0,c,!1,!!r&&r.resumeToken.approximateByteSize()>0),Ta:o}:{Ta:o}}Q_(e){return this.current&&e==="Offline"?(this.current=!1,this.applyChanges({aa:this.aa,la:new Wl,mutatedKeys:this.mutatedKeys,Zi:!1},!1)):{Ta:[]}}Ea(e){return!this.ia.has(e)&&!!this.aa.has(e)&&!this.aa.get(e).hasLocalMutations}Pa(e){e&&(e.addedDocuments.forEach(n=>this.ia=this.ia.add(n)),e.modifiedDocuments.forEach(n=>{}),e.removedDocuments.forEach(n=>this.ia=this.ia.delete(n)),this.current=e.current)}Ia(){if(!this.current)return[];const e=this.oa;this.oa=N(),this.aa.forEach(r=>{this.Ea(r.key)&&(this.oa=this.oa.add(r.key))});const n=[];return e.forEach(r=>{this.oa.has(r)||n.push(new Xl(r))}),this.oa.forEach(r=>{e.has(r)||n.push(new Yl(r))}),n}da(e){this.ia=e.ls,this.oa=N();const n=this.ca(e.documents);return this.applyChanges(n,!0)}Aa(){return mn.fromInitialDocuments(this.query,this.aa,this.mutatedKeys,this.sa===0,this.hasCachedResults)}}class fy{constructor(e,n,r){this.query=e,this.targetId=n,this.view=r}}class py{constructor(e){this.key=e,this.Ra=!1}}class my{constructor(e,n,r,s,i,o){this.localStore=e,this.remoteStore=n,this.eventManager=r,this.sharedClientState=s,this.currentUser=i,this.maxConcurrentLimboResolutions=o,this.Va={},this.ma=new ln(a=>Ju(a),As),this.fa=new Map,this.ga=new Set,this.pa=new j(I.comparator),this.ya=new Map,this.wa=new qo,this.Sa={},this.ba=new Map,this.Da=dn.Nn(),this.onlineState="Unknown",this.Ca=void 0}get isPrimaryClient(){return this.Ca===!0}}async function gy(t,e){const n=Py(t);let r,s;const i=n.ma.get(e);if(i)r=i.targetId,n.sharedClientState.addLocalQueryTarget(r),s=i.view.Aa();else{const o=await F_(n.localStore,Be(e)),a=n.sharedClientState.addLocalQueryTarget(o.targetId);r=o.targetId,s=await _y(n,e,r,a==="current",o.resumeToken),n.isPrimaryClient&&xl(n.remoteStore,o)}return s}async function _y(t,e,n,r,s){t.va=(h,d,f)=>async function(v,g,k,O){let b=g.view.ca(k);b.Zi&&(b=await Ol(v.localStore,g.query,!1).then(({documents:de})=>g.view.ca(de,b)));const U=O&&O.targetChanges.get(g.targetId),me=g.view.applyChanges(b,v.isPrimaryClient,U);return rh(v,g.targetId,me.Ta),me.snapshot}(t,h,d,f);const i=await Ol(t.localStore,e,!0),o=new dy(e,i.ls),a=o.ca(i.documents),c=vr.createSynthesizedTargetChangeForCurrentChange(n,r&&t.onlineState!=="Offline",s),u=o.applyChanges(a,t.isPrimaryClient,c);rh(t,n,u.Ta);const l=new fy(e,n,o);return t.ma.set(e,l),t.fa.has(n)?t.fa.get(n).push(e):t.fa.set(n,[e]),u.snapshot}async function yy(t,e){const n=P(t),r=n.ma.get(e),s=n.fa.get(r.targetId);if(s.length>1)return n.fa.set(r.targetId,s.filter(i=>!As(i,e))),void n.ma.delete(e);n.isPrimaryClient?(n.sharedClientState.removeLocalQueryTarget(r.targetId),n.sharedClientState.isActiveQueryTarget(r.targetId)||await zo(n.localStore,r.targetId,!1).then(()=>{n.sharedClientState.clearQueryState(r.targetId),Fl(n.remoteStore,r.targetId),Zo(n,r.targetId)}).catch(or)):(Zo(n,r.targetId),await zo(n.localStore,r.targetId,!0))}async function Ey(t,e,n){const r=Sy(t);try{const s=await function(o,a){const c=P(o),u=Q.now(),l=a.reduce((f,E)=>f.add(E.key),N());let h,d;return c.persistence.runTransaction("Locally write mutations","readwrite",f=>{let E=Je(),v=N();return c.ss.getEntries(f,l).next(g=>{E=g,E.forEach((k,O)=>{O.isValidDocument()||(v=v.add(k))})}).next(()=>c.localDocuments.getOverlayedDocuments(f,E)).next(g=>{h=g;const k=[];for(const O of a){const b=zg(O,h.get(O.key).overlayedDocument);b!=null&&k.push(new mt(O.key,b,Bu(b.value.mapValue),Pe.exists(!0)))}return c.mutationQueue.addMutationBatch(f,u,k,a)}).next(g=>{d=g;const k=g.applyToLocalDocumentSet(h,v);return c.documentOverlayCache.saveOverlays(f,g.batchId,k)})}).then(()=>({batchId:d.batchId,changes:tl(h)}))}(r.localStore,e);r.sharedClientState.addPendingMutation(s.batchId),function(o,a,c){let u=o.Sa[o.currentUser.toKey()];u||(u=new j(L)),u=u.insert(a,c),o.Sa[o.currentUser.toKey()]=u}(r,s.batchId,n),await Ir(r,s.changes),await Fs(r.remoteStore)}catch(s){const i=Xo(s,"Failed to persist write");n.reject(i)}}async function Jl(t,e){const n=P(t);try{const r=await M_(n.localStore,e);e.targetChanges.forEach((s,i)=>{const o=n.ya.get(i);o&&(F(s.addedDocuments.size+s.modifiedDocuments.size+s.removedDocuments.size<=1),s.addedDocuments.size>0?o.Ra=!0:s.modifiedDocuments.size>0?F(o.Ra):s.removedDocuments.size>0&&(F(o.Ra),o.Ra=!1))}),await Ir(n,r,e)}catch(r){await or(r)}}function Zl(t,e,n){const r=P(t);if(r.isPrimaryClient&&n===0||!r.isPrimaryClient&&n===1){const s=[];r.ma.forEach((i,o)=>{const a=o.view.Q_(e);a.snapshot&&s.push(a.snapshot)}),function(o,a){const c=P(o);c.onlineState=a;let u=!1;c.queries.forEach((l,h)=>{for(const d of h.listeners)d.Q_(a)&&(u=!0)}),u&&Jo(c)}(r.eventManager,e),s.length&&r.Va.a_(s),r.onlineState=e,r.isPrimaryClient&&r.sharedClientState.setOnlineState(e)}}async function vy(t,e,n){const r=P(t);r.sharedClientState.updateQueryState(e,"rejected",n);const s=r.ya.get(e),i=s&&s.key;if(i){let o=new j(I.comparator);o=o.insert(i,le.newNoDocument(i,S.min()));const a=N().add(i),c=new Ds(S.min(),new Map,new j(L),o,a);await Jl(r,c),r.pa=r.pa.remove(i),r.ya.delete(e),ea(r)}else await zo(r.localStore,e,!1).then(()=>Zo(r,e,n)).catch(or)}async function Ty(t,e){const n=P(t),r=e.batch.batchId;try{const s=await L_(n.localStore,e);th(n,r,null),eh(n,r),n.sharedClientState.updateMutationState(r,"acknowledged"),await Ir(n,s)}catch(s){await or(s)}}async function Iy(t,e,n){const r=P(t);try{const s=await function(o,a){const c=P(o);return c.persistence.runTransaction("Reject batch","readwrite-primary",u=>{let l;return c.mutationQueue.lookupMutationBatch(u,a).next(h=>(F(h!==null),l=h.keys(),c.mutationQueue.removeMutationBatch(u,h))).next(()=>c.mutationQueue.performConsistencyCheck(u)).next(()=>c.documentOverlayCache.removeOverlaysForBatchId(u,l,a)).next(()=>c.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(u,l)).next(()=>c.localDocuments.getDocuments(u,l))})}(r.localStore,e);th(r,e,n),eh(r,e),r.sharedClientState.updateMutationState(e,"rejected",n),await Ir(r,s)}catch(s){await or(s)}}function eh(t,e){(t.ba.get(e)||[]).forEach(n=>{n.resolve()}),t.ba.delete(e)}function th(t,e,n){const r=P(t);let s=r.Sa[r.currentUser.toKey()];if(s){const i=s.get(e);i&&(n?i.reject(n):i.resolve(),s=s.remove(e)),r.Sa[r.currentUser.toKey()]=s}}function Zo(t,e,n=null){t.sharedClientState.removeLocalQueryTarget(e);for(const r of t.fa.get(e))t.ma.delete(r),n&&t.Va.Fa(r,n);t.fa.delete(e),t.isPrimaryClient&&t.wa.Rr(e).forEach(r=>{t.wa.containsKey(r)||nh(t,r)})}function nh(t,e){t.ga.delete(e.path.canonicalString());const n=t.pa.get(e);n!==null&&(Fl(t.remoteStore,n),t.pa=t.pa.remove(e),t.ya.delete(n),ea(t))}function rh(t,e,n){for(const r of n)r instanceof Yl?(t.wa.addReference(r.key,e),wy(t,r)):r instanceof Xl?(T("SyncEngine","Document no longer in limbo: "+r.key),t.wa.removeReference(r.key,e),t.wa.containsKey(r.key)||nh(t,r.key)):A()}function wy(t,e){const n=e.key,r=n.path.canonicalString();t.pa.get(n)||t.ga.has(r)||(T("SyncEngine","New document in limbo: "+n),t.ga.add(r),ea(t))}function ea(t){for(;t.ga.size>0&&t.pa.size<t.maxConcurrentLimboResolutions;){const e=t.ga.values().next().value;t.ga.delete(e);const n=new I(B.fromString(e)),r=t.Da.next();t.ya.set(r,new py(n)),t.pa=t.pa.insert(n,r),xl(t.remoteStore,new _t(Be(ko(n.path)),r,"TargetPurposeLimboResolution",To._e))}}async function Ir(t,e,n){const r=P(t),s=[],i=[],o=[];r.ma.isEmpty()||(r.ma.forEach((a,c)=>{o.push(r.va(c,e,n).then(u=>{if((u||n)&&r.isPrimaryClient&&r.sharedClientState.updateQueryState(c.targetId,u!=null&&u.fromCache?"not-current":"current"),u){s.push(u);const l=jo.Qi(c.targetId,u);i.push(l)}}))}),await Promise.all(o),r.Va.a_(s),await async function(c,u){const l=P(c);try{await l.persistence.runTransaction("notifyLocalViewChanges","readwrite",h=>m.forEach(u,d=>m.forEach(d.ki,f=>l.persistence.referenceDelegate.addReference(h,d.targetId,f)).next(()=>m.forEach(d.qi,f=>l.persistence.referenceDelegate.removeReference(h,d.targetId,f)))))}catch(h){if(!ar(h))throw h;T("LocalStore","Failed to update sequence numbers: "+h)}for(const h of u){const d=h.targetId;if(!h.fromCache){const f=l.ts.get(d),E=f.snapshotVersion,v=f.withLastLimboFreeSnapshotVersion(E);l.ts=l.ts.insert(d,v)}}}(r.localStore,i))}async function Ay(t,e){const n=P(t);if(!n.currentUser.isEqual(e)){T("SyncEngine","User change. New user:",e.toKey());const r=await Nl(n.localStore,e);n.currentUser=e,function(i,o){i.ba.forEach(a=>{a.forEach(c=>{c.reject(new _(p.CANCELLED,o))})}),i.ba.clear()}(n,"'waitForPendingWrites' promise is rejected due to a user change."),n.sharedClientState.handleUserChange(e,r.removedBatchIds,r.addedBatchIds),await Ir(n,r._s)}}function Ry(t,e){const n=P(t),r=n.ya.get(e);if(r&&r.Ra)return N().add(r.key);{let s=N();const i=n.fa.get(e);if(!i)return s;for(const o of i){const a=n.ma.get(o);s=s.unionWith(a.view.ua)}return s}}function Py(t){const e=P(t);return e.remoteStore.remoteSyncer.applyRemoteEvent=Jl.bind(null,e),e.remoteStore.remoteSyncer.getRemoteKeysForTarget=Ry.bind(null,e),e.remoteStore.remoteSyncer.rejectListen=vy.bind(null,e),e.Va.a_=ly.bind(null,e.eventManager),e.Va.Fa=hy.bind(null,e.eventManager),e}function Sy(t){const e=P(t);return e.remoteStore.remoteSyncer.applySuccessfulWrite=Ty.bind(null,e),e.remoteStore.remoteSyncer.rejectFailedWrite=Iy.bind(null,e),e}class sh{constructor(){this.synchronizeTabs=!1}async initialize(e){this.serializer=Ms(e.databaseInfo.databaseId),this.sharedClientState=this.createSharedClientState(e),this.persistence=this.createPersistence(e),await this.persistence.start(),this.localStore=this.createLocalStore(e),this.gcScheduler=this.createGarbageCollectionScheduler(e,this.localStore),this.indexBackfillerScheduler=this.createIndexBackfillerScheduler(e,this.localStore)}createGarbageCollectionScheduler(e,n){return null}createIndexBackfillerScheduler(e,n){return null}createLocalStore(e){return V_(this.persistence,new D_,e.initialUser,this.serializer)}createPersistence(e){return new b_($o.jr,this.serializer)}createSharedClientState(e){return new q_}async terminate(){this.gcScheduler&&this.gcScheduler.stop(),await this.sharedClientState.shutdown(),await this.persistence.shutdown()}}class Cy{async initialize(e,n){this.localStore||(this.localStore=e.localStore,this.sharedClientState=e.sharedClientState,this.datastore=this.createDatastore(n),this.remoteStore=this.createRemoteStore(n),this.eventManager=this.createEventManager(n),this.syncEngine=this.createSyncEngine(n,!e.synchronizeTabs),this.sharedClientState.onlineStateHandler=r=>Zl(this.syncEngine,r,1),this.remoteStore.remoteSyncer.handleCredentialChange=Ay.bind(null,this.syncEngine),await ay(this.remoteStore,this.syncEngine.isPrimaryClient))}createEventManager(e){return function(){return new uy}()}createDatastore(e){const n=Ms(e.databaseInfo.databaseId),r=function(i){return new H_(i)}(e.databaseInfo);return function(i,o,a,c){return new K_(i,o,a,c)}(e.authCredentials,e.appCheckCredentials,r,n)}createRemoteStore(e){return function(r,s,i,o,a){return new X_(r,s,i,o,a)}(this.localStore,this.datastore,e.asyncQueue,n=>Zl(this.syncEngine,n,0),function(){return Ll.D()?new Ll:new $_}())}createSyncEngine(e,n){return function(s,i,o,a,c,u,l){const h=new my(s,i,o,a,c,u);return l&&(h.Ca=!0),h}(this.localStore,this.remoteStore,this.eventManager,this.sharedClientState,e.initialUser,e.maxConcurrentLimboResolutions,n)}terminate(){return async function(n){const r=P(n);T("RemoteStore","RemoteStore shutting down."),r.C_.add(5),await Tr(r),r.F_.shutdown(),r.M_.set("Unknown")}(this.remoteStore)}}/**
|
|
1622
1607
|
* @license
|
|
1623
1608
|
* Copyright 2020 Google LLC
|
|
1624
1609
|
*
|
|
@@ -1648,7 +1633,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1648
1633
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1649
1634
|
* See the License for the specific language governing permissions and
|
|
1650
1635
|
* limitations under the License.
|
|
1651
|
-
*/class
|
|
1636
|
+
*/class ih{constructor(e){this.observer=e,this.muted=!1}next(e){this.observer.next&&this.Oa(this.observer.next,e)}error(e){this.observer.error?this.Oa(this.observer.error,e):Xe("Uncaught Error in snapshot listener:",e.toString())}Na(){this.muted=!0}Oa(e,n){this.muted||setTimeout(()=>{this.muted||e(n)},0)}}/**
|
|
1652
1637
|
* @license
|
|
1653
1638
|
* Copyright 2017 Google LLC
|
|
1654
1639
|
*
|
|
@@ -1663,7 +1648,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1663
1648
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1664
1649
|
* See the License for the specific language governing permissions and
|
|
1665
1650
|
* limitations under the License.
|
|
1666
|
-
*/class
|
|
1651
|
+
*/class by{constructor(e,n,r,s){this.authCredentials=e,this.appCheckCredentials=n,this.asyncQueue=r,this.databaseInfo=s,this.user=ce.UNAUTHENTICATED,this.clientId=Du.newId(),this.authCredentialListener=()=>Promise.resolve(),this.appCheckCredentialListener=()=>Promise.resolve(),this.authCredentials.start(r,async i=>{T("FirestoreClient","Received user=",i.uid),await this.authCredentialListener(i),this.user=i}),this.appCheckCredentials.start(r,i=>(T("FirestoreClient","Received new app check token=",i),this.appCheckCredentialListener(i,this.user)))}async getConfiguration(){return{asyncQueue:this.asyncQueue,databaseInfo:this.databaseInfo,clientId:this.clientId,authCredentials:this.authCredentials,appCheckCredentials:this.appCheckCredentials,initialUser:this.user,maxConcurrentLimboResolutions:100}}setCredentialChangeListener(e){this.authCredentialListener=e}setAppCheckTokenChangeListener(e){this.appCheckCredentialListener=e}verifyNotTerminated(){if(this.asyncQueue.isShuttingDown)throw new _(p.FAILED_PRECONDITION,"The client has already been terminated.")}terminate(){this.asyncQueue.enterRestrictedMode();const e=new xe;return this.asyncQueue.enqueueAndForgetEvenWhileRestricted(async()=>{try{this._onlineComponents&&await this._onlineComponents.terminate(),this._offlineComponents&&await this._offlineComponents.terminate(),this.authCredentials.shutdown(),this.appCheckCredentials.shutdown(),e.resolve()}catch(n){const r=Xo(n,"Failed to shutdown persistence");e.reject(r)}}),e.promise}}async function ta(t,e){t.asyncQueue.verifyOperationInProgress(),T("FirestoreClient","Initializing OfflineComponentProvider");const n=await t.getConfiguration();await e.initialize(n);let r=n.initialUser;t.setCredentialChangeListener(async s=>{r.isEqual(s)||(await Nl(e.localStore,s),r=s)}),e.persistence.setDatabaseDeletedListener(()=>t.terminate()),t._offlineComponents=e}async function oh(t,e){t.asyncQueue.verifyOperationInProgress();const n=await Ny(t);T("FirestoreClient","Initializing OnlineComponentProvider");const r=await t.getConfiguration();await e.initialize(n,r),t.setCredentialChangeListener(s=>Hl(e.remoteStore,s)),t.setAppCheckTokenChangeListener((s,i)=>Hl(e.remoteStore,i)),t._onlineComponents=e}function ky(t){return t.name==="FirebaseError"?t.code===p.FAILED_PRECONDITION||t.code===p.UNIMPLEMENTED:!(typeof DOMException<"u"&&t instanceof DOMException)||t.code===22||t.code===20||t.code===11}async function Ny(t){if(!t._offlineComponents)if(t._uninitializedComponentsProvider){T("FirestoreClient","Using user provided OfflineComponentProvider");try{await ta(t,t._uninitializedComponentsProvider._offline)}catch(e){const n=e;if(!ky(n))throw n;nn("Error using user provided cache. Falling back to memory cache: "+n),await ta(t,new sh)}}else T("FirestoreClient","Using default OfflineComponentProvider"),await ta(t,new sh);return t._offlineComponents}async function na(t){return t._onlineComponents||(t._uninitializedComponentsProvider?(T("FirestoreClient","Using user provided OnlineComponentProvider"),await oh(t,t._uninitializedComponentsProvider._online)):(T("FirestoreClient","Using default OnlineComponentProvider"),await oh(t,new Cy))),t._onlineComponents}function Dy(t){return na(t).then(e=>e.syncEngine)}function Oy(t){return na(t).then(e=>e.datastore)}async function ah(t){const e=await na(t),n=e.eventManager;return n.onListen=gy.bind(null,e.syncEngine),n.onUnlisten=yy.bind(null,e.syncEngine),n}function Vy(t,e,n={}){const r=new xe;return t.asyncQueue.enqueueAndForget(async()=>function(i,o,a,c,u){const l=new ih({next:d=>{o.enqueueAndForget(()=>Kl(i,h));const f=d.docs.has(a);!f&&d.fromCache?u.reject(new _(p.UNAVAILABLE,"Failed to get document because the client is offline.")):f&&d.fromCache&&c&&c.source==="server"?u.reject(new _(p.UNAVAILABLE,'Failed to get document from server. (However, this document does exist in the local cache. Run again without setting source to "server" to retrieve the cached document.)')):u.resolve(d)},error:d=>u.reject(d)}),h=new Ql(ko(a.path),l,{includeMetadataChanges:!0,J_:!0});return Gl(i,h)}(await ah(t),t.asyncQueue,e,n,r)),r.promise}function Ly(t,e,n={}){const r=new xe;return t.asyncQueue.enqueueAndForget(async()=>function(i,o,a,c,u){const l=new ih({next:d=>{o.enqueueAndForget(()=>Kl(i,h)),d.fromCache&&c.source==="server"?u.reject(new _(p.UNAVAILABLE,'Failed to get documents from server. (However, these documents may exist in the local cache. Run again without setting source to "server" to retrieve the cached documents.)')):u.resolve(d)},error:d=>u.reject(d)}),h=new Ql(a,l,{includeMetadataChanges:!0,J_:!0});return Gl(i,h)}(await ah(t),t.asyncQueue,e,n,r)),r.promise}/**
|
|
1667
1652
|
* @license
|
|
1668
1653
|
* Copyright 2023 Google LLC
|
|
1669
1654
|
*
|
|
@@ -1678,7 +1663,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1678
1663
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1679
1664
|
* See the License for the specific language governing permissions and
|
|
1680
1665
|
* limitations under the License.
|
|
1681
|
-
*/function
|
|
1666
|
+
*/function ch(t){const e={};return t.timeoutSeconds!==void 0&&(e.timeoutSeconds=t.timeoutSeconds),e}/**
|
|
1682
1667
|
* @license
|
|
1683
1668
|
* Copyright 2020 Google LLC
|
|
1684
1669
|
*
|
|
@@ -1693,7 +1678,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1693
1678
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1694
1679
|
* See the License for the specific language governing permissions and
|
|
1695
1680
|
* limitations under the License.
|
|
1696
|
-
*/const
|
|
1681
|
+
*/const uh=new Map;/**
|
|
1697
1682
|
* @license
|
|
1698
1683
|
* Copyright 2017 Google LLC
|
|
1699
1684
|
*
|
|
@@ -1708,7 +1693,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1708
1693
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1709
1694
|
* See the License for the specific language governing permissions and
|
|
1710
1695
|
* limitations under the License.
|
|
1711
|
-
*/function
|
|
1696
|
+
*/function lh(t,e,n){if(!n)throw new _(p.INVALID_ARGUMENT,`Function ${t}() cannot be called with an empty ${e}.`)}function My(t,e,n,r){if(e===!0&&r===!0)throw new _(p.INVALID_ARGUMENT,`${t} and ${n} cannot be used together.`)}function hh(t){if(!I.isDocumentKey(t))throw new _(p.INVALID_ARGUMENT,`Invalid document reference. Document references must have an even number of segments, but ${t} has ${t.length}.`)}function dh(t){if(I.isDocumentKey(t))throw new _(p.INVALID_ARGUMENT,`Invalid collection reference. Collection references must have an odd number of segments, but ${t} has ${t.length}.`)}function Bs(t){if(t===void 0)return"undefined";if(t===null)return"null";if(typeof t=="string")return t.length>20&&(t=`${t.substring(0,20)}...`),JSON.stringify(t);if(typeof t=="number"||typeof t=="boolean")return""+t;if(typeof t=="object"){if(t instanceof Array)return"an array";{const e=function(r){return r.constructor?r.constructor.name:null}(t);return e?`a custom ${e} object`:"an object"}}return typeof t=="function"?"a function":A()}function Et(t,e){if("_delegate"in t&&(t=t._delegate),!(t instanceof e)){if(e.name===t.constructor.name)throw new _(p.INVALID_ARGUMENT,"Type does not match the expected instance. Did you pass a reference from a different Firestore SDK?");{const n=Bs(t);throw new _(p.INVALID_ARGUMENT,`Expected type '${e.name}', but it was: ${n}`)}}return t}function Uy(t,e){if(e<=0)throw new _(p.INVALID_ARGUMENT,`Function ${t}() requires a positive number, but it was: ${e}.`)}/**
|
|
1712
1697
|
* @license
|
|
1713
1698
|
* Copyright 2020 Google LLC
|
|
1714
1699
|
*
|
|
@@ -1723,7 +1708,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1723
1708
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1724
1709
|
* See the License for the specific language governing permissions and
|
|
1725
1710
|
* limitations under the License.
|
|
1726
|
-
*/class
|
|
1711
|
+
*/class fh{constructor(e){var n,r;if(e.host===void 0){if(e.ssl!==void 0)throw new _(p.INVALID_ARGUMENT,"Can't provide ssl option if host option is not set");this.host="firestore.googleapis.com",this.ssl=!0}else this.host=e.host,this.ssl=(n=e.ssl)===null||n===void 0||n;if(this.credentials=e.credentials,this.ignoreUndefinedProperties=!!e.ignoreUndefinedProperties,this.localCache=e.localCache,e.cacheSizeBytes===void 0)this.cacheSizeBytes=41943040;else{if(e.cacheSizeBytes!==-1&&e.cacheSizeBytes<1048576)throw new _(p.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");this.cacheSizeBytes=e.cacheSizeBytes}My("experimentalForceLongPolling",e.experimentalForceLongPolling,"experimentalAutoDetectLongPolling",e.experimentalAutoDetectLongPolling),this.experimentalForceLongPolling=!!e.experimentalForceLongPolling,this.experimentalForceLongPolling?this.experimentalAutoDetectLongPolling=!1:e.experimentalAutoDetectLongPolling===void 0?this.experimentalAutoDetectLongPolling=!0:this.experimentalAutoDetectLongPolling=!!e.experimentalAutoDetectLongPolling,this.experimentalLongPollingOptions=ch((r=e.experimentalLongPollingOptions)!==null&&r!==void 0?r:{}),function(i){if(i.timeoutSeconds!==void 0){if(isNaN(i.timeoutSeconds))throw new _(p.INVALID_ARGUMENT,`invalid long polling timeout: ${i.timeoutSeconds} (must not be NaN)`);if(i.timeoutSeconds<5)throw new _(p.INVALID_ARGUMENT,`invalid long polling timeout: ${i.timeoutSeconds} (minimum allowed value is 5)`);if(i.timeoutSeconds>30)throw new _(p.INVALID_ARGUMENT,`invalid long polling timeout: ${i.timeoutSeconds} (maximum allowed value is 30)`)}}(this.experimentalLongPollingOptions),this.useFetchStreams=!!e.useFetchStreams}isEqual(e){return this.host===e.host&&this.ssl===e.ssl&&this.credentials===e.credentials&&this.cacheSizeBytes===e.cacheSizeBytes&&this.experimentalForceLongPolling===e.experimentalForceLongPolling&&this.experimentalAutoDetectLongPolling===e.experimentalAutoDetectLongPolling&&function(r,s){return r.timeoutSeconds===s.timeoutSeconds}(this.experimentalLongPollingOptions,e.experimentalLongPollingOptions)&&this.ignoreUndefinedProperties===e.ignoreUndefinedProperties&&this.useFetchStreams===e.useFetchStreams}}class qs{constructor(e,n,r,s){this._authCredentials=e,this._appCheckCredentials=n,this._databaseId=r,this._app=s,this.type="firestore-lite",this._persistenceKey="(lite)",this._settings=new fh({}),this._settingsFrozen=!1}get app(){if(!this._app)throw new _(p.FAILED_PRECONDITION,"Firestore was not initialized using the Firebase SDK. 'app' is not available");return this._app}get _initialized(){return this._settingsFrozen}get _terminated(){return this._terminateTask!==void 0}_setSettings(e){if(this._settingsFrozen)throw new _(p.FAILED_PRECONDITION,"Firestore has already been started and its settings can no longer be changed. You can only modify settings before calling any other methods on a Firestore object.");this._settings=new fh(e),e.credentials!==void 0&&(this._authCredentials=function(r){if(!r)return new ng;switch(r.type){case"firstParty":return new og(r.sessionIndex||"0",r.iamToken||null,r.authTokenFactory||null);case"provider":return r.client;default:throw new _(p.INVALID_ARGUMENT,"makeAuthCredentialsProvider failed due to invalid credential type")}}(e.credentials))}_getSettings(){return this._settings}_freezeSettings(){return this._settingsFrozen=!0,this._settings}_delete(){return this._terminateTask||(this._terminateTask=this._terminate()),this._terminateTask}toJSON(){return{app:this._app,databaseId:this._databaseId,settings:this._settings}}_terminate(){return function(n){const r=uh.get(n);r&&(T("ComponentProvider","Removing Datastore"),uh.delete(n),r.terminate())}(this),Promise.resolve()}}function ph(t,e,n,r={}){var s;const i=(t=Et(t,qs))._getSettings(),o=`${e}:${n}`;if(i.host!=="firestore.googleapis.com"&&i.host!==o&&nn("Host has been set in both settings() and connectFirestoreEmulator(), emulator host will be used."),t._setSettings(Object.assign(Object.assign({},i),{host:o,ssl:!1})),r.mockUserToken){let a,c;if(typeof r.mockUserToken=="string")a=r.mockUserToken,c=ce.MOCK_USER;else{a=ec(r.mockUserToken,(s=t._app)===null||s===void 0?void 0:s.options.projectId);const u=r.mockUserToken.sub||r.mockUserToken.user_id;if(!u)throw new _(p.INVALID_ARGUMENT,"mockUserToken must contain 'sub' or 'user_id' field!");c=new ce(u)}t._authCredentials=new rg(new Nu(a,c))}}/**
|
|
1727
1712
|
* @license
|
|
1728
1713
|
* Copyright 2020 Google LLC
|
|
1729
1714
|
*
|
|
@@ -1738,7 +1723,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1738
1723
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1739
1724
|
* See the License for the specific language governing permissions and
|
|
1740
1725
|
* limitations under the License.
|
|
1741
|
-
*/class
|
|
1726
|
+
*/class Ze{constructor(e,n,r){this.converter=n,this._query=r,this.type="query",this.firestore=e}withConverter(e){return new Ze(this.firestore,e,this._query)}}class Ie{constructor(e,n,r){this.converter=n,this._key=r,this.type="document",this.firestore=e}get _path(){return this._key.path}get id(){return this._key.path.lastSegment()}get path(){return this._key.path.canonicalString()}get parent(){return new vt(this.firestore,this.converter,this._key.path.popLast())}withConverter(e){return new Ie(this.firestore,e,this._key)}}class vt extends Ze{constructor(e,n,r){super(e,n,ko(r)),this._path=r,this.type="collection"}get id(){return this._query.path.lastSegment()}get path(){return this._query.path.canonicalString()}get parent(){const e=this._path.popLast();return e.isEmpty()?null:new Ie(this.firestore,null,new I(e))}withConverter(e){return new vt(this.firestore,e,this._path)}}function mh(t,e,...n){if(t=M(t),lh("collection","path",e),t instanceof qs){const r=B.fromString(e,...n);return dh(r),new vt(t,null,r)}{if(!(t instanceof Ie||t instanceof vt))throw new _(p.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");const r=t._path.child(B.fromString(e,...n));return dh(r),new vt(t.firestore,null,r)}}function ra(t,e,...n){if(t=M(t),arguments.length===1&&(e=Du.newId()),lh("doc","path",e),t instanceof qs){const r=B.fromString(e,...n);return hh(r),new Ie(t,null,new I(r))}{if(!(t instanceof Ie||t instanceof vt))throw new _(p.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");const r=t._path.child(B.fromString(e,...n));return hh(r),new Ie(t.firestore,t instanceof vt?t.converter:null,new I(r))}}/**
|
|
1742
1727
|
* @license
|
|
1743
1728
|
* Copyright 2020 Google LLC
|
|
1744
1729
|
*
|
|
@@ -1753,8 +1738,8 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1753
1738
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1754
1739
|
* See the License for the specific language governing permissions and
|
|
1755
1740
|
* limitations under the License.
|
|
1756
|
-
*/class
|
|
1757
|
-
`+o.stack),a}(r);throw
|
|
1741
|
+
*/class xy{constructor(){this.Ja=Promise.resolve(),this.Ya=[],this.Za=!1,this.Xa=[],this.eu=null,this.tu=!1,this.nu=!1,this.ru=[],this.zo=new Ml(this,"async_queue_retry"),this.iu=()=>{const n=Wo();n&&T("AsyncQueue","Visibility state changed to "+n.visibilityState),this.zo.Qo()};const e=Wo();e&&typeof e.addEventListener=="function"&&e.addEventListener("visibilitychange",this.iu)}get isShuttingDown(){return this.Za}enqueueAndForget(e){this.enqueue(e)}enqueueAndForgetEvenWhileRestricted(e){this.su(),this.ou(e)}enterRestrictedMode(e){if(!this.Za){this.Za=!0,this.nu=e||!1;const n=Wo();n&&typeof n.removeEventListener=="function"&&n.removeEventListener("visibilitychange",this.iu)}}enqueue(e){if(this.su(),this.Za)return new Promise(()=>{});const n=new xe;return this.ou(()=>this.Za&&this.nu?Promise.resolve():(e().then(n.resolve,n.reject),n.promise)).then(()=>n.promise)}enqueueRetryable(e){this.enqueueAndForget(()=>(this.Ya.push(e),this._u()))}async _u(){if(this.Ya.length!==0){try{await this.Ya[0](),this.Ya.shift(),this.zo.reset()}catch(e){if(!ar(e))throw e;T("AsyncQueue","Operation failed with retryable error: "+e)}this.Ya.length>0&&this.zo.ko(()=>this._u())}}ou(e){const n=this.Ja.then(()=>(this.tu=!0,e().catch(r=>{this.eu=r,this.tu=!1;const s=function(o){let a=o.message||"";return o.stack&&(a=o.stack.includes(o.message)?o.stack:o.message+`
|
|
1742
|
+
`+o.stack),a}(r);throw Xe("INTERNAL UNHANDLED ERROR: ",s),r}).then(r=>(this.tu=!1,r))));return this.Ja=n,n}enqueueAfterDelay(e,n,r){this.su(),this.ru.indexOf(e)>-1&&(n=0);const s=Yo.createAndSchedule(this,e,n,r,i=>this.au(i));return this.Xa.push(s),s}su(){this.eu&&A()}verifyOperationInProgress(){}async uu(){let e;do e=this.Ja,await e;while(e!==this.Ja)}cu(e){for(const n of this.Xa)if(n.timerId===e)return!0;return!1}lu(e){return this.uu().then(()=>{this.Xa.sort((n,r)=>n.targetTimeMs-r.targetTimeMs);for(const n of this.Xa)if(n.skipDelay(),e!=="all"&&n.timerId===e)break;return this.uu()})}hu(e){this.ru.push(e)}au(e){const n=this.Xa.indexOf(e);this.Xa.splice(n,1)}}class gn extends qs{constructor(e,n,r,s){super(e,n,r,s),this.type="firestore",this._queue=function(){return new xy}(),this._persistenceKey=(s==null?void 0:s.name)||"[DEFAULT]"}_terminate(){return this._firestoreClient||gh(this),this._firestoreClient.terminate()}}function Fy(t,e){const n=typeof t=="object"?t:$r(),r=typeof t=="string"?t:e||"(default)",s=Vn(n,"firestore").getImmediate({identifier:r});if(!s._initialized){const i=yi("firestore");i&&ph(s,...i)}return s}function wr(t){return t._firestoreClient||gh(t),t._firestoreClient.verifyNotTerminated(),t._firestoreClient}function gh(t){var e,n,r;const s=t._freezeSettings(),i=function(a,c,u,l){return new yg(a,c,u,l.host,l.ssl,l.experimentalForceLongPolling,l.experimentalAutoDetectLongPolling,ch(l.experimentalLongPollingOptions),l.useFetchStreams)}(t._databaseId,((e=t._app)===null||e===void 0?void 0:e.options.appId)||"",t._persistenceKey,s);t._firestoreClient=new by(t._authCredentials,t._appCheckCredentials,t._queue,i),!((n=s.localCache)===null||n===void 0)&&n._offlineComponentProvider&&(!((r=s.localCache)===null||r===void 0)&&r._onlineComponentProvider)&&(t._firestoreClient._uninitializedComponentsProvider={_offlineKind:s.localCache.kind,_offline:s.localCache._offlineComponentProvider,_online:s.localCache._onlineComponentProvider})}/**
|
|
1758
1743
|
* @license
|
|
1759
1744
|
* Copyright 2020 Google LLC
|
|
1760
1745
|
*
|
|
@@ -1784,7 +1769,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1784
1769
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1785
1770
|
* See the License for the specific language governing permissions and
|
|
1786
1771
|
* limitations under the License.
|
|
1787
|
-
*/class
|
|
1772
|
+
*/class By{constructor(e="count",n){this._internalFieldPath=n,this.type="AggregateField",this.aggregateType=e}}class qy{constructor(e,n,r){this._userDataWriter=n,this._data=r,this.type="AggregateQuerySnapshot",this.query=e}data(){return this._userDataWriter.convertObjectMap(this._data)}}/**
|
|
1788
1773
|
* @license
|
|
1789
1774
|
* Copyright 2020 Google LLC
|
|
1790
1775
|
*
|
|
@@ -1799,7 +1784,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1799
1784
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1800
1785
|
* See the License for the specific language governing permissions and
|
|
1801
1786
|
* limitations under the License.
|
|
1802
|
-
*/class
|
|
1787
|
+
*/class _n{constructor(e){this._byteString=e}static fromBase64String(e){try{return new _n(ue.fromBase64String(e))}catch(n){throw new _(p.INVALID_ARGUMENT,"Failed to construct data from Base64 string: "+n)}}static fromUint8Array(e){return new _n(ue.fromUint8Array(e))}toBase64(){return this._byteString.toBase64()}toUint8Array(){return this._byteString.toUint8Array()}toString(){return"Bytes(base64: "+this.toBase64()+")"}isEqual(e){return this._byteString.isEqual(e._byteString)}}/**
|
|
1803
1788
|
* @license
|
|
1804
1789
|
* Copyright 2020 Google LLC
|
|
1805
1790
|
*
|
|
@@ -1814,7 +1799,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1814
1799
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1815
1800
|
* See the License for the specific language governing permissions and
|
|
1816
1801
|
* limitations under the License.
|
|
1817
|
-
*/class
|
|
1802
|
+
*/class $s{constructor(...e){for(let n=0;n<e.length;++n)if(e[n].length===0)throw new _(p.INVALID_ARGUMENT,"Invalid field name at argument $(i + 1). Field names must not be empty.");this._internalPath=new te(e)}isEqual(e){return this._internalPath.isEqual(e._internalPath)}}/**
|
|
1818
1803
|
* @license
|
|
1819
1804
|
* Copyright 2020 Google LLC
|
|
1820
1805
|
*
|
|
@@ -1829,7 +1814,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1829
1814
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1830
1815
|
* See the License for the specific language governing permissions and
|
|
1831
1816
|
* limitations under the License.
|
|
1832
|
-
*/class
|
|
1817
|
+
*/class sa{constructor(e){this._methodName=e}}/**
|
|
1833
1818
|
* @license
|
|
1834
1819
|
* Copyright 2017 Google LLC
|
|
1835
1820
|
*
|
|
@@ -1844,7 +1829,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1844
1829
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1845
1830
|
* See the License for the specific language governing permissions and
|
|
1846
1831
|
* limitations under the License.
|
|
1847
|
-
*/class
|
|
1832
|
+
*/class ia{constructor(e,n){if(!isFinite(e)||e<-90||e>90)throw new _(p.INVALID_ARGUMENT,"Latitude must be a number between -90 and 90, but was: "+e);if(!isFinite(n)||n<-180||n>180)throw new _(p.INVALID_ARGUMENT,"Longitude must be a number between -180 and 180, but was: "+n);this._lat=e,this._long=n}get latitude(){return this._lat}get longitude(){return this._long}isEqual(e){return this._lat===e._lat&&this._long===e._long}toJSON(){return{latitude:this._lat,longitude:this._long}}_compareTo(e){return L(this._lat,e._lat)||L(this._long,e._long)}}/**
|
|
1848
1833
|
* @license
|
|
1849
1834
|
* Copyright 2017 Google LLC
|
|
1850
1835
|
*
|
|
@@ -1859,7 +1844,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1859
1844
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1860
1845
|
* See the License for the specific language governing permissions and
|
|
1861
1846
|
* limitations under the License.
|
|
1862
|
-
*/const
|
|
1847
|
+
*/const $y=/^__.*__$/;class jy{constructor(e,n,r){this.data=e,this.fieldMask=n,this.fieldTransforms=r}toMutation(e,n){return this.fieldMask!==null?new mt(e,this.data,this.fieldMask,n,this.fieldTransforms):new yr(e,this.data,n,this.fieldTransforms)}}class _h{constructor(e,n,r){this.data=e,this.fieldMask=n,this.fieldTransforms=r}toMutation(e,n){return new mt(e,this.data,this.fieldMask,n,this.fieldTransforms)}}function yh(t){switch(t){case 0:case 2:case 1:return!0;case 3:case 4:return!1;default:throw A()}}class oa{constructor(e,n,r,s,i,o){this.settings=e,this.databaseId=n,this.serializer=r,this.ignoreUndefinedProperties=s,i===void 0&&this.Pu(),this.fieldTransforms=i||[],this.fieldMask=o||[]}get path(){return this.settings.path}get Iu(){return this.settings.Iu}Tu(e){return new oa(Object.assign(Object.assign({},this.settings),e),this.databaseId,this.serializer,this.ignoreUndefinedProperties,this.fieldTransforms,this.fieldMask)}Eu(e){var n;const r=(n=this.path)===null||n===void 0?void 0:n.child(e),s=this.Tu({path:r,du:!1});return s.Au(e),s}Ru(e){var n;const r=(n=this.path)===null||n===void 0?void 0:n.child(e),s=this.Tu({path:r,du:!1});return s.Pu(),s}Vu(e){return this.Tu({path:void 0,du:!0})}mu(e){return zs(e,this.settings.methodName,this.settings.fu||!1,this.path,this.settings.gu)}contains(e){return this.fieldMask.find(n=>e.isPrefixOf(n))!==void 0||this.fieldTransforms.find(n=>e.isPrefixOf(n.field))!==void 0}Pu(){if(this.path)for(let e=0;e<this.path.length;e++)this.Au(this.path.get(e))}Au(e){if(e.length===0)throw this.mu("Document fields must not be empty");if(yh(this.Iu)&&$y.test(e))throw this.mu('Document fields cannot begin and end with "__"')}}class zy{constructor(e,n,r){this.databaseId=e,this.ignoreUndefinedProperties=n,this.serializer=r||Ms(e)}pu(e,n,r,s=!1){return new oa({Iu:e,methodName:n,gu:r,path:te.emptyPath(),du:!1,fu:s},this.databaseId,this.serializer,this.ignoreUndefinedProperties)}}function aa(t){const e=t._freezeSettings(),n=Ms(t._databaseId);return new zy(t._databaseId,!!e.ignoreUndefinedProperties,n)}function Hy(t,e,n,r,s,i={}){const o=t.pu(i.merge||i.mergeFields?2:0,e,n,s);ca("Data must be an object, but it was:",o,r);const a=vh(r,o);let c,u;if(i.merge)c=new Te(o.fieldMask),u=o.fieldTransforms;else if(i.mergeFields){const l=[];for(const h of i.mergeFields){const d=ua(e,h,n);if(!o.contains(d))throw new _(p.INVALID_ARGUMENT,`Field '${d}' is specified in your field mask but missing from your input data.`);Ih(l,d)||l.push(d)}c=new Te(l),u=o.fieldTransforms.filter(h=>c.covers(h.field))}else c=null,u=o.fieldTransforms;return new jy(new ge(a),c,u)}class js extends sa{_toFieldTransform(e){if(e.Iu!==2)throw e.Iu===1?e.mu(`${this._methodName}() can only appear at the top level of your update data`):e.mu(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);return e.fieldMask.push(e.path),null}isEqual(e){return e instanceof js}}function Wy(t,e,n,r){const s=t.pu(1,e,n);ca("Data must be an object, but it was:",s,r);const i=[],o=ge.empty();Vt(r,(c,u)=>{const l=la(e,c,n);u=M(u);const h=s.Ru(l);if(u instanceof js)i.push(l);else{const d=Ar(u,h);d!=null&&(i.push(l),o.set(l,d))}});const a=new Te(i);return new _h(o,a,s.fieldTransforms)}function Gy(t,e,n,r,s,i){const o=t.pu(1,e,n),a=[ua(e,r,n)],c=[s];if(i.length%2!=0)throw new _(p.INVALID_ARGUMENT,`Function ${e}() needs to be called with an even number of arguments that alternate between field names and values.`);for(let d=0;d<i.length;d+=2)a.push(ua(e,i[d])),c.push(i[d+1]);const u=[],l=ge.empty();for(let d=a.length-1;d>=0;--d)if(!Ih(u,a[d])){const f=a[d];let E=c[d];E=M(E);const v=o.Ru(f);if(E instanceof js)u.push(f);else{const g=Ar(E,v);g!=null&&(u.push(f),l.set(f,g))}}const h=new Te(u);return new _h(l,h,o.fieldTransforms)}function Eh(t,e,n,r=!1){return Ar(n,t.pu(r?4:3,e))}function Ar(t,e){if(Th(t=M(t)))return ca("Unsupported field value:",e,t),vh(t,e);if(t instanceof sa)return function(r,s){if(!yh(s.Iu))throw s.mu(`${r._methodName}() can only be used with update() and set()`);if(!s.path)throw s.mu(`${r._methodName}() is not currently supported inside arrays`);const i=r._toFieldTransform(s);i&&s.fieldTransforms.push(i)}(t,e),null;if(t===void 0&&e.ignoreUndefinedProperties)return null;if(e.path&&e.fieldMask.push(e.path),t instanceof Array){if(e.settings.du&&e.Iu!==4)throw e.mu("Nested arrays are not supported");return function(r,s){const i=[];let o=0;for(const a of r){let c=Ar(a,s.Vu(o));c==null&&(c={nullValue:"NULL_VALUE"}),i.push(c),o++}return{arrayValue:{values:i}}}(t,e)}return function(r,s){if((r=M(r))===null)return{nullValue:"NULL_VALUE"};if(typeof r=="number")return xg(s.serializer,r);if(typeof r=="boolean")return{booleanValue:r};if(typeof r=="string")return{stringValue:r};if(r instanceof Date){const i=Q.fromDate(r);return{timestampValue:Vs(s.serializer,i)}}if(r instanceof Q){const i=new Q(r.seconds,1e3*Math.floor(r.nanoseconds/1e3));return{timestampValue:Vs(s.serializer,i)}}if(r instanceof ia)return{geoPointValue:{latitude:r.latitude,longitude:r.longitude}};if(r instanceof _n)return{bytesValue:wl(s.serializer,r._byteString)};if(r instanceof Ie){const i=s.databaseId,o=r.firestore._databaseId;if(!o.isEqual(i))throw s.mu(`Document reference is for database ${o.projectId}/${o.database} but should be for database ${i.projectId}/${i.database}`);return{referenceValue:Mo(r.firestore._databaseId||s.databaseId,r._key.path)}}throw s.mu(`Unsupported field value: ${Bs(r)}`)}(t,e)}function vh(t,e){const n={};return Vu(t)?e.path&&e.path.length>0&&e.fieldMask.push(e.path):Vt(t,(r,s)=>{const i=Ar(s,e.Eu(r));i!=null&&(n[r]=i)}),{mapValue:{fields:n}}}function Th(t){return!(typeof t!="object"||t===null||t instanceof Array||t instanceof Date||t instanceof Q||t instanceof ia||t instanceof _n||t instanceof Ie||t instanceof sa)}function ca(t,e,n){if(!Th(n)||!function(s){return typeof s=="object"&&s!==null&&(Object.getPrototypeOf(s)===Object.prototype||Object.getPrototypeOf(s)===null)}(n)){const r=Bs(n);throw r==="an object"?e.mu(t+" a custom object"):e.mu(t+" "+r)}}function ua(t,e,n){if((e=M(e))instanceof $s)return e._internalPath;if(typeof e=="string")return la(t,e);throw zs("Field path arguments must be of type string or ",t,!1,void 0,n)}const Ky=new RegExp("[~\\*/\\[\\]]");function la(t,e,n){if(e.search(Ky)>=0)throw zs(`Invalid field path (${e}). Paths must not contain '~', '*', '/', '[', or ']'`,t,!1,void 0,n);try{return new $s(...e.split("."))._internalPath}catch{throw zs(`Invalid field path (${e}). Paths must not be empty, begin with '.', end with '.', or contain '..'`,t,!1,void 0,n)}}function zs(t,e,n,r,s){const i=r&&!r.isEmpty(),o=s!==void 0;let a=`Function ${e}() called with invalid data`;n&&(a+=" (via `toFirestore()`)"),a+=". ";let c="";return(i||o)&&(c+=" (found",i&&(c+=` in field ${r}`),o&&(c+=` in document ${s}`),c+=")"),new _(p.INVALID_ARGUMENT,a+t+c)}function Ih(t,e){return t.some(n=>n.isEqual(e))}/**
|
|
1863
1848
|
* @license
|
|
1864
1849
|
* Copyright 2020 Google LLC
|
|
1865
1850
|
*
|
|
@@ -1874,7 +1859,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1874
1859
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1875
1860
|
* See the License for the specific language governing permissions and
|
|
1876
1861
|
* limitations under the License.
|
|
1877
|
-
*/class
|
|
1862
|
+
*/class ha{constructor(e,n,r,s,i){this._firestore=e,this._userDataWriter=n,this._key=r,this._document=s,this._converter=i}get id(){return this._key.path.lastSegment()}get ref(){return new Ie(this._firestore,this._converter,this._key)}exists(){return this._document!==null}data(){if(this._document){if(this._converter){const e=new Qy(this._firestore,this._userDataWriter,this._key,this._document,null);return this._converter.fromFirestore(e)}return this._userDataWriter.convertValue(this._document.data.value)}}get(e){if(this._document){const n=this._document.data.field(Hs("DocumentSnapshot.get",e));if(n!==null)return this._userDataWriter.convertValue(n)}}}class Qy extends ha{data(){return super.data()}}function Hs(t,e){return typeof e=="string"?la(t,e):e instanceof $s?e._internalPath:e._delegate._internalPath}/**
|
|
1878
1863
|
* @license
|
|
1879
1864
|
* Copyright 2020 Google LLC
|
|
1880
1865
|
*
|
|
@@ -1889,7 +1874,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1889
1874
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1890
1875
|
* See the License for the specific language governing permissions and
|
|
1891
1876
|
* limitations under the License.
|
|
1892
|
-
*/function
|
|
1877
|
+
*/function Yy(t){if(t.limitType==="L"&&t.explicitOrderBy.length===0)throw new _(p.UNIMPLEMENTED,"limitToLast() queries require specifying at least one orderBy() clause")}class da{}class Ws extends da{}function wh(t,e,...n){let r=[];e instanceof da&&r.push(e),r=r.concat(n),function(i){const o=i.filter(c=>c instanceof yn).length,a=i.filter(c=>c instanceof Rr).length;if(o>1||o>0&&a>0)throw new _(p.INVALID_ARGUMENT,"InvalidQuery. When using composite filters, you cannot use more than one filter at the top level. Consider nesting the multiple filters within an `and(...)` statement. For example: change `query(query, where(...), or(...))` to `query(query, and(where(...), or(...)))`.")}(r);for(const s of r)t=s._apply(t);return t}class Rr extends Ws{constructor(e,n,r){super(),this._field=e,this._op=n,this._value=r,this.type="where"}static _create(e,n,r){return new Rr(e,n,r)}_apply(e){const n=this._parse(e);return Ch(e._query,n),new Ze(e.firestore,e.converter,Do(e._query,n))}_parse(e){const n=aa(e.firestore);return function(i,o,a,c,u,l,h){let d;if(u.isKeyField()){if(l==="array-contains"||l==="array-contains-any")throw new _(p.INVALID_ARGUMENT,`Invalid Query. You can't perform '${l}' queries on documentId().`);if(l==="in"||l==="not-in"){Sh(h,l);const f=[];for(const E of h)f.push(Ph(c,i,E));d={arrayValue:{values:f}}}else d=Ph(c,i,h)}else l!=="in"&&l!=="not-in"&&l!=="array-contains-any"||Sh(h,l),d=Eh(a,o,h,l==="in"||l==="not-in");return G.create(u,l,d)}(e._query,"where",n,e.firestore._databaseId,this._field,this._op,this._value)}}function Ah(t,e,n){const r=e,s=Hs("where",t);return Rr._create(s,r,n)}class yn extends da{constructor(e,n){super(),this.type=e,this._queryConstraints=n}static _create(e,n){return new yn(e,n)}_parse(e){const n=this._queryConstraints.map(r=>r._parse(e)).filter(r=>r.getFilters().length>0);return n.length===1?n[0]:Ne.create(n,this._getOperator())}_apply(e){const n=this._parse(e);return n.getFilters().length===0?e:(function(s,i){let o=s;const a=i.getFlattenedFilters();for(const c of a)Ch(o,c),o=Do(o,c)}(e._query,n),new Ze(e.firestore,e.converter,Do(e._query,n)))}_getQueryConstraints(){return this._queryConstraints}_getOperator(){return this.type==="and"?"and":"or"}}function Xy(...t){return t.forEach(e=>bh("or",e)),yn._create("or",t)}function Jy(...t){return t.forEach(e=>bh("and",e)),yn._create("and",t)}class fa extends Ws{constructor(e,n){super(),this._field=e,this._direction=n,this.type="orderBy"}static _create(e,n){return new fa(e,n)}_apply(e){const n=function(s,i,o){if(s.startAt!==null)throw new _(p.INVALID_ARGUMENT,"Invalid query. You must not call startAt() or startAfter() before calling orderBy().");if(s.endAt!==null)throw new _(p.INVALID_ARGUMENT,"Invalid query. You must not call endAt() or endBefore() before calling orderBy().");return new dr(i,o)}(e._query,this._field,this._direction);return new Ze(e.firestore,e.converter,function(s,i){const o=s.explicitOrderBy.concat([i]);return new Ut(s.path,s.collectionGroup,o,s.filters.slice(),s.limit,s.limitType,s.startAt,s.endAt)}(e._query,n))}}function Zy(t,e="asc"){const n=e,r=Hs("orderBy",t);return fa._create(r,n)}class pa extends Ws{constructor(e,n,r){super(),this.type=e,this._limit=n,this._limitType=r}static _create(e,n,r){return new pa(e,n,r)}_apply(e){return new Ze(e.firestore,e.converter,ws(e._query,this._limit,this._limitType))}}function Rh(t){return Uy("limit",t),pa._create("limit",t,"F")}class ma extends Ws{constructor(e,n,r){super(),this.type=e,this._docOrFields=n,this._inclusive=r}static _create(e,n,r){return new ma(e,n,r)}_apply(e){const n=tE(e,this.type,this._docOrFields,this._inclusive);return new Ze(e.firestore,e.converter,function(s,i){return new Ut(s.path,s.collectionGroup,s.explicitOrderBy.slice(),s.filters.slice(),s.limit,s.limitType,i,s.endAt)}(e._query,n))}}function eE(...t){return ma._create("startAfter",t,!1)}function tE(t,e,n,r){if(n[0]=M(n[0]),n[0]instanceof ha)return function(i,o,a,c,u){if(!c)throw new _(p.NOT_FOUND,`Can't use a DocumentSnapshot that doesn't exist for ${a}().`);const l=[];for(const h of cn(i))if(h.field.isKeyField())l.push(Ts(o,c.key));else{const d=c.data.field(h.field);if(Es(d))throw new _(p.INVALID_ARGUMENT,'Invalid query. You are trying to start or end a query using a document for which the field "'+h.field+'" is an uncommitted server timestamp. (Since the value of this field is unknown, you cannot start/end a query with it.)');if(d===null){const f=h.field.canonicalString();throw new _(p.INVALID_ARGUMENT,`Invalid query. You are trying to start or end a query using a document for which the field '${f}' (used as the orderBy) does not exist.`)}l.push(d)}return new an(l,u)}(t._query,t.firestore._databaseId,e,n[0]._document,r);{const s=aa(t.firestore);return function(o,a,c,u,l,h){const d=o.explicitOrderBy;if(l.length>d.length)throw new _(p.INVALID_ARGUMENT,`Too many arguments provided to ${u}(). The number of arguments must be less than or equal to the number of orderBy() clauses`);const f=[];for(let E=0;E<l.length;E++){const v=l[E];if(d[E].field.isKeyField()){if(typeof v!="string")throw new _(p.INVALID_ARGUMENT,`Invalid query. Expected a string for document ID in ${u}(), but got a ${typeof v}`);if(!No(o)&&v.indexOf("/")!==-1)throw new _(p.INVALID_ARGUMENT,`Invalid query. When querying a collection and ordering by documentId(), the value passed to ${u}() must be a plain document ID, but '${v}' contains a slash.`);const g=o.path.child(B.fromString(v));if(!I.isDocumentKey(g))throw new _(p.INVALID_ARGUMENT,`Invalid query. When querying a collection group and ordering by documentId(), the value passed to ${u}() must result in a valid document path, but '${g}' is not because it contains an odd number of segments.`);const k=new I(g);f.push(Ts(a,k))}else{const g=Eh(c,u,v);f.push(g)}}return new an(f,h)}(t._query,t.firestore._databaseId,s,e,n,r)}}function Ph(t,e,n){if(typeof(n=M(n))=="string"){if(n==="")throw new _(p.INVALID_ARGUMENT,"Invalid query. When querying with documentId(), you must provide a valid document ID, but it was an empty string.");if(!No(e)&&n.indexOf("/")!==-1)throw new _(p.INVALID_ARGUMENT,`Invalid query. When querying a collection by documentId(), you must provide a plain document ID, but '${n}' contains a '/' character.`);const r=e.path.child(B.fromString(n));if(!I.isDocumentKey(r))throw new _(p.INVALID_ARGUMENT,`Invalid query. When querying a collection group by documentId(), the value provided must result in a valid document path, but '${r}' is not because it has an odd number of segments (${r.length}).`);return Ts(t,new I(r))}if(n instanceof Ie)return Ts(t,n._key);throw new _(p.INVALID_ARGUMENT,`Invalid query. When querying with documentId(), you must provide a valid string or a DocumentReference, but it was: ${Bs(n)}.`)}function Sh(t,e){if(!Array.isArray(t)||t.length===0)throw new _(p.INVALID_ARGUMENT,`Invalid Query. A non-empty array is required for '${e.toString()}' filters.`)}function Ch(t,e){const n=function(s,i){for(const o of s)for(const a of o.getFlattenedFilters())if(i.indexOf(a.op)>=0)return a.op;return null}(t.filters,function(s){switch(s){case"!=":return["!=","not-in"];case"array-contains-any":case"in":return["not-in"];case"not-in":return["array-contains-any","in","not-in","!="];default:return[]}}(e.op));if(n!==null)throw n===e.op?new _(p.INVALID_ARGUMENT,`Invalid query. You cannot use more than one '${e.op.toString()}' filter.`):new _(p.INVALID_ARGUMENT,`Invalid query. You cannot use '${e.op.toString()}' filters with '${n.toString()}' filters.`)}function bh(t,e){if(!(e instanceof Rr||e instanceof yn))throw new _(p.INVALID_ARGUMENT,`Function ${t}() requires AppliableConstraints created with a call to 'where(...)', 'or(...)', or 'and(...)'.`)}class nE{convertValue(e,n="none"){switch(Mt(e)){case 0:return null;case 1:return e.booleanValue;case 2:return W(e.integerValue||e.doubleValue);case 3:return this.convertTimestamp(e.timestampValue);case 4:return this.convertServerTimestamp(e,n);case 5:return e.stringValue;case 6:return this.convertBytes(Lt(e.bytesValue));case 7:return this.convertReference(e.referenceValue);case 8:return this.convertGeoPoint(e.geoPointValue);case 9:return this.convertArray(e.arrayValue,n);case 10:return this.convertObject(e.mapValue,n);default:throw A()}}convertObject(e,n){return this.convertObjectMap(e.fields,n)}convertObjectMap(e,n="none"){const r={};return Vt(e,(s,i)=>{r[s]=this.convertValue(i,n)}),r}convertGeoPoint(e){return new ia(W(e.latitude),W(e.longitude))}convertArray(e,n){return(e.values||[]).map(r=>this.convertValue(r,n))}convertServerTimestamp(e,n){switch(n){case"previous":const r=Io(e);return r==null?null:this.convertValue(r,n);case"estimate":return this.convertTimestamp(cr(e));default:return null}}convertTimestamp(e){const n=pt(e);return new Q(n.seconds,n.nanos)}convertDocumentKey(e,n){const r=B.fromString(e);F(kl(r));const s=new ur(r.get(1),r.get(3)),i=new I(r.popFirst(5));return s.isEqual(n)||Xe(`Document ${i} contains a document reference within a different database (${s.projectId}/${s.database}) which is not supported. It will be treated as a reference in the current database (${n.projectId}/${n.database}) instead.`),i}}/**
|
|
1893
1878
|
* @license
|
|
1894
1879
|
* Copyright 2020 Google LLC
|
|
1895
1880
|
*
|
|
@@ -1904,7 +1889,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1904
1889
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1905
1890
|
* See the License for the specific language governing permissions and
|
|
1906
1891
|
* limitations under the License.
|
|
1907
|
-
*/function
|
|
1892
|
+
*/function rE(t,e,n){let r;return r=t?n&&(n.merge||n.mergeFields)?t.toFirestore(e,n):t.toFirestore(e):e,r}function sE(){return new By("count")}/**
|
|
1908
1893
|
* @license
|
|
1909
1894
|
* Copyright 2020 Google LLC
|
|
1910
1895
|
*
|
|
@@ -1919,7 +1904,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1919
1904
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1920
1905
|
* See the License for the specific language governing permissions and
|
|
1921
1906
|
* limitations under the License.
|
|
1922
|
-
*/class
|
|
1907
|
+
*/class Pr{constructor(e,n){this.hasPendingWrites=e,this.fromCache=n}isEqual(e){return this.hasPendingWrites===e.hasPendingWrites&&this.fromCache===e.fromCache}}class kh extends ha{constructor(e,n,r,s,i,o){super(e,n,r,s,o),this._firestore=e,this._firestoreImpl=e,this.metadata=i}exists(){return super.exists()}data(e={}){if(this._document){if(this._converter){const n=new Gs(this._firestore,this._userDataWriter,this._key,this._document,this.metadata,null);return this._converter.fromFirestore(n,e)}return this._userDataWriter.convertValue(this._document.data.value,e.serverTimestamps)}}get(e,n={}){if(this._document){const r=this._document.data.field(Hs("DocumentSnapshot.get",e));if(r!==null)return this._userDataWriter.convertValue(r,n.serverTimestamps)}}}class Gs extends kh{data(e={}){return super.data(e)}}class iE{constructor(e,n,r,s){this._firestore=e,this._userDataWriter=n,this._snapshot=s,this.metadata=new Pr(s.hasPendingWrites,s.fromCache),this.query=r}get docs(){const e=[];return this.forEach(n=>e.push(n)),e}get size(){return this._snapshot.docs.size}get empty(){return this.size===0}forEach(e,n){this._snapshot.docs.forEach(r=>{e.call(n,new Gs(this._firestore,this._userDataWriter,r.key,r,new Pr(this._snapshot.mutatedKeys.has(r.key),this._snapshot.fromCache),this.query.converter))})}docChanges(e={}){const n=!!e.includeMetadataChanges;if(n&&this._snapshot.excludesMetadataChanges)throw new _(p.INVALID_ARGUMENT,"To include metadata changes with your document changes, you must also pass { includeMetadataChanges:true } to onSnapshot().");return this._cachedChanges&&this._cachedChangesIncludeMetadataChanges===n||(this._cachedChanges=function(s,i){if(s._snapshot.oldDocs.isEmpty()){let o=0;return s._snapshot.docChanges.map(a=>{const c=new Gs(s._firestore,s._userDataWriter,a.doc.key,a.doc,new Pr(s._snapshot.mutatedKeys.has(a.doc.key),s._snapshot.fromCache),s.query.converter);return a.doc,{type:"added",doc:c,oldIndex:-1,newIndex:o++}})}{let o=s._snapshot.oldDocs;return s._snapshot.docChanges.filter(a=>i||a.type!==3).map(a=>{const c=new Gs(s._firestore,s._userDataWriter,a.doc.key,a.doc,new Pr(s._snapshot.mutatedKeys.has(a.doc.key),s._snapshot.fromCache),s.query.converter);let u=-1,l=-1;return a.type!==0&&(u=o.indexOf(a.doc.key),o=o.delete(a.doc.key)),a.type!==1&&(o=o.add(a.doc),l=o.indexOf(a.doc.key)),{type:oE(a.type),doc:c,oldIndex:u,newIndex:l}})}}(this,n),this._cachedChangesIncludeMetadataChanges=n),this._cachedChanges}}function oE(t){switch(t){case 0:return"added";case 2:case 3:return"modified";case 1:return"removed";default:return A()}}/**
|
|
1923
1908
|
* @license
|
|
1924
1909
|
* Copyright 2020 Google LLC
|
|
1925
1910
|
*
|
|
@@ -1934,7 +1919,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1934
1919
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1935
1920
|
* See the License for the specific language governing permissions and
|
|
1936
1921
|
* limitations under the License.
|
|
1937
|
-
*/function
|
|
1922
|
+
*/function aE(t){t=Et(t,Ie);const e=Et(t.firestore,gn);return Vy(wr(e),t._key).then(n=>lE(e,t,n))}class ga extends nE{constructor(e){super(),this.firestore=e}convertBytes(e){return new _n(e)}convertReference(e){const n=this.convertDocumentKey(e,this.firestore._databaseId);return new Ie(this.firestore,null,n)}}function cE(t){t=Et(t,Ze);const e=Et(t.firestore,gn),n=wr(e),r=new ga(e);return Yy(t._query),Ly(n,t._query).then(s=>new iE(e,r,t,s))}function uE(t){return Nh(Et(t.firestore,gn),[new Ns(t._key,Pe.none())])}function Nh(t,e){return function(r,s){const i=new xe;return r.asyncQueue.enqueueAndForget(async()=>Ey(await Dy(r),s,i)),i.promise}(wr(t),e)}function lE(t,e,n){const r=n.docs.get(e._key),s=new ga(t);return new kh(t,s,e._key,r,new Pr(n.hasPendingWrites,n.fromCache),e.converter)}/**
|
|
1938
1923
|
* @license
|
|
1939
1924
|
* Copyright 2022 Google LLC
|
|
1940
1925
|
*
|
|
@@ -1949,7 +1934,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1949
1934
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1950
1935
|
* See the License for the specific language governing permissions and
|
|
1951
1936
|
* limitations under the License.
|
|
1952
|
-
*/function
|
|
1937
|
+
*/function hE(t){return dE(t,{count:sE()})}function dE(t,e){const n=Et(t.firestore,gn),r=wr(n),s=function(o,a){const c=[];for(const u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(a(o[u],u,o));return c}(e,(i,o)=>new Kg(o,i.aggregateType,i._internalFieldPath));return function(o,a,c){const u=new xe;return o.asyncQueue.enqueueAndForget(async()=>{try{const l=await Oy(o);u.resolve(Q_(l,a,c))}catch(l){u.reject(l)}}),u.promise}(r,t._query,s).then(i=>function(a,c,u){const l=new ga(a);return new qy(c,l,u)}(n,t,i))}/**
|
|
1953
1938
|
* @license
|
|
1954
1939
|
* Copyright 2020 Google LLC
|
|
1955
1940
|
*
|
|
@@ -1964,7 +1949,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1964
1949
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1965
1950
|
* See the License for the specific language governing permissions and
|
|
1966
1951
|
* limitations under the License.
|
|
1967
|
-
*/class
|
|
1952
|
+
*/class fE{constructor(e,n){this._firestore=e,this._commitHandler=n,this._mutations=[],this._committed=!1,this._dataReader=aa(e)}set(e,n,r){this._verifyNotCommitted();const s=_a(e,this._firestore),i=rE(s.converter,n,r),o=Hy(this._dataReader,"WriteBatch.set",s._key,i,s.converter!==null,r);return this._mutations.push(o.toMutation(s._key,Pe.none())),this}update(e,n,r,...s){this._verifyNotCommitted();const i=_a(e,this._firestore);let o;return o=typeof(n=M(n))=="string"||n instanceof $s?Gy(this._dataReader,"WriteBatch.update",i._key,n,r,s):Wy(this._dataReader,"WriteBatch.update",i._key,n),this._mutations.push(o.toMutation(i._key,Pe.exists(!0))),this}delete(e){this._verifyNotCommitted();const n=_a(e,this._firestore);return this._mutations=this._mutations.concat(new Ns(n._key,Pe.none())),this}commit(){return this._verifyNotCommitted(),this._committed=!0,this._mutations.length>0?this._commitHandler(this._mutations):Promise.resolve()}_verifyNotCommitted(){if(this._committed)throw new _(p.FAILED_PRECONDITION,"A write batch can no longer be used after commit() has been called.")}}function _a(t,e){if((t=M(t)).firestore!==e)throw new _(p.INVALID_ARGUMENT,"Provided document reference is from a different Firestore instance.");return t}/**
|
|
1968
1953
|
* @license
|
|
1969
1954
|
* Copyright 2020 Google LLC
|
|
1970
1955
|
*
|
|
@@ -1979,13 +1964,13 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
1979
1964
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1980
1965
|
* See the License for the specific language governing permissions and
|
|
1981
1966
|
* limitations under the License.
|
|
1982
|
-
*/function
|
|
1967
|
+
*/function pE(t){return wr(t=Et(t,gn)),new fE(t,e=>Nh(t,e))}(function(e,n=!0){(function(s){tn=s})(Ct),ut(new Ke("firestore",(r,{instanceIdentifier:s,options:i})=>{const o=r.getProvider("app").getImmediate(),a=new gn(new sg(r.getProvider("auth-internal")),new cg(r.getProvider("app-check-internal")),function(u,l){if(!Object.prototype.hasOwnProperty.apply(u.options,["projectId"]))throw new _(p.INVALID_ARGUMENT,'"projectId" not provided in firebase.initializeApp.');return new ur(u.options.projectId,l)}(o,s),o);return i=Object.assign({useFetchStreams:n},i),a._setSettings(i),a},"PUBLIC").setMultipleInstances(!0)),Ae(ku,"4.3.2",e),Ae(ku,"4.3.2","esm2017")})();class Dh{constructor(){this.subscribers=new Set}subscribe(e){return this.subscribers.add(e),()=>this.unsubscribe(e)}unsubscribe(e){this.subscribers.delete(e)}notify(e){this.subscribers.forEach(n=>n(e))}get subscribersCount(){return this.subscribers.size}}let Ks;const mE=new Uint8Array(16);function gE(){if(!Ks&&(Ks=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Ks))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Ks(mE)}const se=[];for(let t=0;t<256;++t)se.push((t+256).toString(16).slice(1));function _E(t,e=0){return se[t[e+0]]+se[t[e+1]]+se[t[e+2]]+se[t[e+3]]+"-"+se[t[e+4]]+se[t[e+5]]+"-"+se[t[e+6]]+se[t[e+7]]+"-"+se[t[e+8]]+se[t[e+9]]+"-"+se[t[e+10]]+se[t[e+11]]+se[t[e+12]]+se[t[e+13]]+se[t[e+14]]+se[t[e+15]]}const yE=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Oh={randomUUID:yE};function EE(t,e,n){if(Oh.randomUUID&&!e&&!t)return Oh.randomUUID();t=t||{};const r=t.random||(t.rng||gE)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){n=n||0;for(let s=0;s<16;++s)e[n+s]=r[s];return e}return _E(r)}var vE=Object.defineProperty,TE=Object.getOwnPropertyDescriptor,IE=(t,e,n,r)=>{for(var s=r>1?void 0:r?TE(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&vE(e,n,s),s},Se;const Vh=(Se=class{static registerFactory(t,e,n){this._factoryMap[t]={factory:e,annotation:n}}static classFactory(t){if(!t)throw new Error("You should provide a class name.");if(!this._factoryMap[t])throw new Error(`You should register class ${t} prior to use.`);return this._factoryMap[t].factory}static registeredClasses(){return Object.keys(this._factoryMap)}static classesExtending(t){return Object.entries(this._factoryMap).filter(([,e])=>new e.factory instanceof t).map(([e])=>e)}static annotations(t){if(t instanceof Se?t=t.className:typeof t=="string"||(t=new t().className),!this._factoryMap[t])throw new Error(`You should register class ${t} prior to use.`);return this._factoryMap[t].annotation}constructor(t=EE()){this._id=t}get className(){return this.__className}setId(t){this._id=t}get id(){return this._id}afterDeserialize(){}beforeSerialize(){}getPersistentProperties(){return this._persistentProperties?this._persistentProperties.map(t=>({...t,name:t.name.slice(1)})):[]}getPropInfo(t){const e=this.getPersistentProperties().find(n=>n.name===t);if(!e)throw new Error(`Property "${t}" has not been registered.`);return e}isRequired(t){return this.getPropInfo(t).validator!=null}isPropValueValid(t){const e=this.getPropInfo(t);return e.validator?e.validator(this[e.name],e,this):!0}clone(t){const e=t.toObject();return delete e.id,this.fromObject(e)}fromObject(t){return this.fromObj(t),this.afterDeserialize(),this}fromObj(t){return this._persistentProperties?(this._persistentProperties.forEach(e=>{const n=this.removeUnderscore(e),r=t[n];r!=null&&(this[e.name]=this.fromDeepObject(r))}),this):this}toObject(){const t={},e=this.toObj(t);return this.pushDocument(t,this.className,e),{...e,__rootCollections:t}}toObj(t){if(!this._persistentProperties)return{};this.beforeSerialize();const e={};if(!this.className)throw new Error("You should register this class prior to streaming it.");return this._persistentProperties.forEach(n=>{const r=this[n.name],s=this.removeUnderscore(n);r!=null&&(n.isReference?e[s]=this.toReferenceObj(n,t):e[s]=this.toDeepObj(r,t),n.searchableArray&&(e[Se.searchableArrayNameFor(s)]=r.map(i=>i.id)))}),e.__className=this.className,e}static searchableArrayNameFor(t){return`__${t}_searchable`}fromDeepObject(t){if(t==null)return t;if(Array.isArray(t))return t.map(e=>this.fromDeepObject(e));if(t.__documentReference){const e=t,n=Se.createInstance(e);return n.__documentReference=t.__documentReference,n}if(t.__className)return Se.createInstance(t);if(typeof t=="object"){const e={};return Object.entries(t).forEach(([n,r])=>e[n]=this.fromDeepObject(r)),e}return t}toDeepObj(t,e){if(t!=null){if(Array.isArray(t))return t.map(n=>this.toDeepObj(n,e));if(t.__documentReference)return t;if(t instanceof Se)return t.toObj(e);if(typeof t=="object"){const n={};return Object.entries(t).forEach(([r,s])=>n[r]=this.toDeepObj(s,e)),n}return t}}toReferenceObj(t,e){const n=this[t.name],r=s=>{let i;return typeof t.storeInCollection=="function"?i=t.storeInCollection(s,t):i=t.storeInCollection||s.className,i};return Array.isArray(n)?n.map(s=>(t.isPureReference||this.pushDocument(e,r(s),s),this.buildRefObject(s,r(s),t.forcedPersistentProps))):(t.isPureReference||this.pushDocument(e,r(n),n),this.buildRefObject(n,r(n),t.forcedPersistentProps))}buildRefObject(t,e,n){const r=n==null?void 0:n.reduce((s,i)=>(t[i]!==void 0&&(s[i]=t[i]),s),{});return{id:t.id,__className:t.className||t.__className,__documentReference:{storedInCollection:e},...r}}pushDocument(t,e,n){if("__documentReference"in n&&n.__documentReference)return;t[e]||(t[e]=[]);const r=this.toDeepObj(n,t);t[e].push(r)}removeUnderscore(t){return t.name.slice(1)}static createReference(t){const e=Se.createInstance(t);return e.__documentReference=t.__documentReference||{storedInCollection:e.className},e}static createInstance(t){if(typeof t=="string")return new(Se.classFactory(t));try{return new(Se.classFactory(t.__className))().fromObject(t)}catch(e){const n=Object.entries(t).filter(([r,s])=>s!=null&&typeof s!="function").map(([r,s])=>`${r}: ${s}`).join(`,
|
|
1983
1968
|
`);throw new Error(`${e}
|
|
1984
1969
|
-----> Class name not found in object:
|
|
1985
1970
|
{
|
|
1986
1971
|
${n}
|
|
1987
1972
|
}
|
|
1988
|
-
`)}}static propInfo(t,e){return Se.createInstance(t).getPropInfo(e)}},Se._factoryMap={},Se);
|
|
1973
|
+
`)}}static propInfo(t,e){return Se.createInstance(t).getPropInfo(e)}},Se._factoryMap={},Se);IE([En],Vh.prototype,"_id",2);let Qs=Vh;function En(t,e){return wE()(t,e)}function wE(t){return function(e,n){Object.getOwnPropertyDescriptor(e,"_persistentProperties")||(e._persistentProperties?e._persistentProperties=[...e._persistentProperties]:e._persistentProperties=[]);const r=e._persistentProperties.find(s=>s.name===n);r?Object.assign(r,t):e._persistentProperties.push({name:n,...t})}}function AE(t,e){return n=>{Qs.registerFactory(t,n,e),n.prototype.__className=t}}class Ys{static toPropertyPathOperations(e){return e?e.map(n=>{if(Ys.isArrayOperator(n.operator)&&n.value[0]instanceof Qs)return{property:Qs.searchableArrayNameFor(n.property),operator:n.operator,value:n.value.map(i=>i.id),aggregate:n.aggregate};const[r,s]=this.toPropertyPathValue(n.value);return{property:`${String(n.property)}${r?"."+r:""}`,operator:n.operator,value:s,aggregate:n.aggregate}}):[]}static isArrayOperator(e){return e==="containsAny"||e==="contains"}static toPropertyPathValue(e){if(typeof e=="object"&&!Array.isArray(e)){const n=Object.keys(e)[0],[r,s]=this.toPropertyPathValue(e[n]);return[`${n}${r?"."+r:""}`,s]}else return[void 0,e]}}const Lh=class bn{static registerCloudStorage(e,n){bn._cloudStorageFactoryMap[e]=n}static createInstance(e){const n=bn._cloudStorageFactoryMap[e];if(!n)throw new Error(`You should register the ${e} cloud storage provider prior to use it`);return n()}get className(){return this.__className}static useCloudStorage(e){bn._defaultCloudStorage=e}static get defaultCloudStorage(){if(!bn._defaultCloudStorage)throw new Error("You should define a default cloud storage provider prior to use it");return bn._defaultCloudStorage}};Lh._cloudStorageFactoryMap={};let vn=Lh;function Mh(t,e){return vn.registerCloudStorage(t,e),n=>{n.prototype.__className=t}}var RE=Object.defineProperty,PE=Object.getOwnPropertyDescriptor,SE=(t,e,n,r)=>{for(var s=r>1?void 0:r?PE(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&RE(e,n,s),s};let ya=class extends vn{constructor(t=""){super(),this._simulateDelay=0,this._pendingPromises=[],this.mockFileSystem={},this._pathToMockFiles=t}simulateDelay(t){return this._simulateDelay=t,this}resolveWithDelay(t){if(this._simulateDelay<=0)return Promise.resolve(t);const e=new Promise(n=>{setTimeout(()=>n(t),this._simulateDelay)});return this._pendingPromises.push(e),e.finally(()=>this._pendingPromises=this._pendingPromises.filter(n=>n===e)),e}save(t,e){const n=t;this._onProgress&&this._onProgress(0,100),this.mockFileSystem[t]=JSON.stringify(e),this._onProgress&&this._onProgress(100,100);const r=e instanceof File?e.name:n;return this.resolveWithDelay(r)}uploadControl(){return{resume:()=>{},pause:()=>{},cancel:()=>{},onProgress:t=>this._onProgress=t}}getUrl(t){return Promise.resolve(this._pathToMockFiles+t)}delete(t){return delete this.mockFileSystem[t],this.resolveWithDelay()}};ya=SE([Mh("MockCloudStorage",()=>new ya)],ya);var CE=Object.defineProperty,bE=Object.getOwnPropertyDescriptor,Tn=(t,e,n,r)=>{for(var s=r>1?void 0:r?bE(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&CE(e,n,s),s};let Bt=class extends Qs{constructor(){super(...arguments),this._onChange=new Dh}async save({data:t,fileName:e,progress:n,cloudStorageProvider:r}={}){const s=t||this._pendingData;s&&(this._reference&&await this.delete(),this.provider=r||vn.defaultCloudStorage,this._originalFileName=e||(s instanceof File?s.name:void 0),this._reference=await this.provider.save(this.id,s,n),this._url=await this.provider.getUrl(this._reference),this._pendingData=void 0,this._onChange.notify({event:0,storedFile:this}))}uploadControl(){return this.provider.uploadControl()}async delete(){if(!this._reference)throw new Error("Cannot delete a not stored file");await this.provider.delete(this._reference),this._reference=void 0,this._url=void 0,this._onChange.notify({event:2,storedFile:this})}set provider(t){this._provider=t,this._cloudStorageProviderName=t.className}get provider(){if(!this._provider)try{this._provider=vn.createInstance(this._cloudStorageProviderName)}catch{this._provider=vn.defaultCloudStorage}return this._provider}get url(){return this._url}get mimeType(){return this._mimeType}setDataToStore(t){return this._pendingData=t,this._originalFileName=t instanceof File?t.name:void 0,this._mimeType=t instanceof Blob?t.type:void 0,this._onChange.notify({event:1,pendingData:t,storedFile:this}),this}get originalFileName(){return this._originalFileName}onChange(t){return this._onChange.subscribe(t)}};Tn([En],Bt.prototype,"_reference",2),Tn([En],Bt.prototype,"_url",2),Tn([En],Bt.prototype,"_cloudStorageProviderName",2),Tn([En],Bt.prototype,"_originalFileName",2),Tn([En],Bt.prototype,"_mimeType",2),Bt=Tn([AE("StoredFile")],Bt);class Uh{}const xh=class ye extends Uh{constructor(){if(super(),this._onAuthStateChange=new Dh,!ye._authService)throw new Error(ye.error.shouldBeRegistered);ye._authService.onAuthStateChange(e=>this.authStateChanged(e))}static useAuthService(e){ye._authService!=e&&(ye._authService=e,this._instance=void 0)}static get instance(){return this._instance||(this._instance=new this)}signUp(e){return ye._authService.signUp(e)}login(e){return ye._authService.login(e)}logout(){return ye._authService.logout()}resetEmailPassword(e){return ye._authService.resetEmailPassword(e)}resendVerificationEmail(e,n,r){return ye._authService.resendVerificationEmail(e,n,r)}refreshToken(){return ye._authService.refreshToken()}onAuthStateChange(e){return this._onAuthStateChange.subscribe(e)}removeAuthStateChange(e){this._onAuthStateChange.unsubscribe(e)}linkAdditionalProvider(e){return ye._authService.linkAdditionalProvider(e)}unlinkProvider(e){return ye._authService.unlinkProvider(e)}authStateChanged(e){this._onAuthStateChange.notify(e)}};xh.error={shouldBeRegistered:"You should register an auth service before using Auth."},xh._instance=void 0;function Xs(t){return t?t.replace(/([-_ ][\w])/g,e=>e.toUpperCase().replace("-","").replace("_","").replace(" ","")):""}var kE="firebase",NE="10.6.0";/**
|
|
1989
1974
|
* @license
|
|
1990
1975
|
* Copyright 2020 Google LLC
|
|
1991
1976
|
*
|
|
@@ -2000,7 +1985,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2000
1985
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2001
1986
|
* See the License for the specific language governing permissions and
|
|
2002
1987
|
* limitations under the License.
|
|
2003
|
-
*/Ae(
|
|
1988
|
+
*/Ae(kE,NE,"app");function Ea(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(t);s<r.length;s++)e.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(t,r[s])&&(n[r[s]]=t[r[s]]);return n}typeof SuppressedError=="function"&&SuppressedError;function Fh(){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."}}const DE=Fh,Bh=new kn("auth","Firebase",Fh());/**
|
|
2004
1989
|
* @license
|
|
2005
1990
|
* Copyright 2020 Google LLC
|
|
2006
1991
|
*
|
|
@@ -2015,7 +2000,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2015
2000
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2016
2001
|
* See the License for the specific language governing permissions and
|
|
2017
2002
|
* limitations under the License.
|
|
2018
|
-
*/const
|
|
2003
|
+
*/const Js=new vi("@firebase/auth");function OE(t,...e){Js.logLevel<=D.WARN&&Js.warn(`Auth (${Ct}): ${t}`,...e)}function Zs(t,...e){Js.logLevel<=D.ERROR&&Js.error(`Auth (${Ct}): ${t}`,...e)}/**
|
|
2019
2004
|
* @license
|
|
2020
2005
|
* Copyright 2020 Google LLC
|
|
2021
2006
|
*
|
|
@@ -2030,7 +2015,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2030
2015
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2031
2016
|
* See the License for the specific language governing permissions and
|
|
2032
2017
|
* limitations under the License.
|
|
2033
|
-
*/function
|
|
2018
|
+
*/function Ce(t,...e){throw va(t,...e)}function $e(t,...e){return va(t,...e)}function qh(t,e,n){const r=Object.assign(Object.assign({},DE()),{[e]:n});return new kn("auth","Firebase",r).create(e,{appName:t.name})}function $h(t,e,n){const r=n;if(!(e instanceof r))throw r.name!==e.constructor.name&&Ce(t,"argument-error"),qh(t,"argument-error",`Type of ${e.constructor.name} does not match expected instance.Did you pass a reference from a different Auth SDK?`)}function va(t,...e){if(typeof t!="string"){const n=e[0],r=[...e.slice(1)];return r[0]&&(r[0].appName=t.name),t._errorFactory.create(n,...r)}return Bh.create(t,...e)}function w(t,e,...n){if(!t)throw va(e,...n)}function et(t){const e="INTERNAL ASSERTION FAILED: "+t;throw Zs(e),new Error(e)}function tt(t,e){t||et(e)}/**
|
|
2034
2019
|
* @license
|
|
2035
2020
|
* Copyright 2020 Google LLC
|
|
2036
2021
|
*
|
|
@@ -2045,7 +2030,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2045
2030
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2046
2031
|
* See the License for the specific language governing permissions and
|
|
2047
2032
|
* limitations under the License.
|
|
2048
|
-
*/function
|
|
2033
|
+
*/function Ta(){var t;return typeof self<"u"&&((t=self.location)===null||t===void 0?void 0:t.href)||""}function VE(){return jh()==="http:"||jh()==="https:"}function jh(){var t;return typeof self<"u"&&((t=self.location)===null||t===void 0?void 0:t.protocol)||null}/**
|
|
2049
2034
|
* @license
|
|
2050
2035
|
* Copyright 2020 Google LLC
|
|
2051
2036
|
*
|
|
@@ -2060,7 +2045,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2060
2045
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2061
2046
|
* See the License for the specific language governing permissions and
|
|
2062
2047
|
* limitations under the License.
|
|
2063
|
-
*/function
|
|
2048
|
+
*/function LE(){return typeof navigator<"u"&&navigator&&"onLine"in navigator&&typeof navigator.onLine=="boolean"&&(VE()||Df()||"connection"in navigator)?navigator.onLine:!0}function ME(){if(typeof navigator>"u")return null;const t=navigator;return t.languages&&t.languages[0]||t.language||null}/**
|
|
2064
2049
|
* @license
|
|
2065
2050
|
* Copyright 2020 Google LLC
|
|
2066
2051
|
*
|
|
@@ -2075,7 +2060,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2075
2060
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2076
2061
|
* See the License for the specific language governing permissions and
|
|
2077
2062
|
* limitations under the License.
|
|
2078
|
-
*/class
|
|
2063
|
+
*/class Sr{constructor(e,n){this.shortDelay=e,this.longDelay=n,tt(n>e,"Short delay should be less than long delay!"),this.isMobile=kf()||Of()}get(){return LE()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}}/**
|
|
2079
2064
|
* @license
|
|
2080
2065
|
* Copyright 2020 Google LLC
|
|
2081
2066
|
*
|
|
@@ -2090,7 +2075,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2090
2075
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2091
2076
|
* See the License for the specific language governing permissions and
|
|
2092
2077
|
* limitations under the License.
|
|
2093
|
-
*/function
|
|
2078
|
+
*/function Ia(t,e){tt(t.emulator,"Emulator should always be set here");const{url:n}=t.emulator;return e?`${n}${e.startsWith("/")?e.slice(1):e}`:n}/**
|
|
2094
2079
|
* @license
|
|
2095
2080
|
* Copyright 2020 Google LLC
|
|
2096
2081
|
*
|
|
@@ -2105,7 +2090,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2105
2090
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2106
2091
|
* See the License for the specific language governing permissions and
|
|
2107
2092
|
* limitations under the License.
|
|
2108
|
-
*/class
|
|
2093
|
+
*/class zh{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;et("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;et("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;et("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}}/**
|
|
2109
2094
|
* @license
|
|
2110
2095
|
* Copyright 2020 Google LLC
|
|
2111
2096
|
*
|
|
@@ -2120,7 +2105,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2120
2105
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2121
2106
|
* See the License for the specific language governing permissions and
|
|
2122
2107
|
* limitations under the License.
|
|
2123
|
-
*/const
|
|
2108
|
+
*/const UE={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"};/**
|
|
2124
2109
|
* @license
|
|
2125
2110
|
* Copyright 2020 Google LLC
|
|
2126
2111
|
*
|
|
@@ -2135,7 +2120,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2135
2120
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2136
2121
|
* See the License for the specific language governing permissions and
|
|
2137
2122
|
* limitations under the License.
|
|
2138
|
-
*/const
|
|
2123
|
+
*/const xE=new Sr(3e4,6e4);function nt(t,e){return t.tenantId&&!e.tenantId?Object.assign(Object.assign({},e),{tenantId:t.tenantId}):e}async function De(t,e,n,r,s={}){return Hh(t,s,async()=>{let i={},o={};r&&(e==="GET"?o=r:i={body:JSON.stringify(r)});const a=Nn(Object.assign({key:t.config.apiKey},o)).slice(1),c=await t._getAdditionalHeaders();return c["Content-Type"]="application/json",t.languageCode&&(c["X-Firebase-Locale"]=t.languageCode),zh.fetch()(Wh(t,t.config.apiHost,n,a),Object.assign({method:e,headers:c,referrerPolicy:"no-referrer"},i))})}async function Hh(t,e,n){t._canInitEmulator=!1;const r=Object.assign(Object.assign({},UE),e);try{const s=new BE(t),i=await Promise.race([n(),s.promise]);s.clearNetworkTimeout();const o=await i.json();if("needConfirmation"in o)throw ei(t,"account-exists-with-different-credential",o);if(i.ok&&!("errorMessage"in o))return o;{const a=i.ok?o.errorMessage:o.error.message,[c,u]=a.split(" : ");if(c==="FEDERATED_USER_ID_ALREADY_LINKED")throw ei(t,"credential-already-in-use",o);if(c==="EMAIL_EXISTS")throw ei(t,"email-already-in-use",o);if(c==="USER_DISABLED")throw ei(t,"user-disabled",o);const l=r[c]||c.toLowerCase().replace(/[_\s]+/g,"-");if(u)throw qh(t,l,u);Ce(t,l)}}catch(s){if(s instanceof be)throw s;Ce(t,"network-request-failed",{message:String(s)})}}async function Cr(t,e,n,r,s={}){const i=await De(t,e,n,r,s);return"mfaPendingCredential"in i&&Ce(t,"multi-factor-auth-required",{_serverResponse:i}),i}function Wh(t,e,n,r){const s=`${e}${n}?${r}`;return t.config.emulator?Ia(t.config,s):`${t.config.apiScheme}://${s}`}function FE(t){switch(t){case"ENFORCE":return"ENFORCE";case"AUDIT":return"AUDIT";case"OFF":return"OFF";default:return"ENFORCEMENT_STATE_UNSPECIFIED"}}class BE{constructor(e){this.auth=e,this.timer=null,this.promise=new Promise((n,r)=>{this.timer=setTimeout(()=>r($e(this.auth,"network-request-failed")),xE.get())})}clearNetworkTimeout(){clearTimeout(this.timer)}}function ei(t,e,n){const r={appName:t.name};n.email&&(r.email=n.email),n.phoneNumber&&(r.phoneNumber=n.phoneNumber);const s=$e(t,e,r);return s.customData._tokenResponse=n,s}function Gh(t){return t!==void 0&&t.enterprise!==void 0}class qE{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(const n of this.recaptchaEnforcementState)if(n.provider&&n.provider===e)return FE(n.enforcementState);return null}isProviderEnabled(e){return this.getProviderEnforcementState(e)==="ENFORCE"||this.getProviderEnforcementState(e)==="AUDIT"}}async function $E(t,e){return De(t,"GET","/v2/recaptchaConfig",nt(t,e))}/**
|
|
2139
2124
|
* @license
|
|
2140
2125
|
* Copyright 2020 Google LLC
|
|
2141
2126
|
*
|
|
@@ -2150,7 +2135,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2150
2135
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2151
2136
|
* See the License for the specific language governing permissions and
|
|
2152
2137
|
* limitations under the License.
|
|
2153
|
-
*/async function
|
|
2138
|
+
*/async function jE(t,e){return De(t,"POST","/v1/accounts:delete",e)}async function zE(t,e){return De(t,"POST","/v1/accounts:update",e)}async function HE(t,e){return De(t,"POST","/v1/accounts:lookup",e)}/**
|
|
2154
2139
|
* @license
|
|
2155
2140
|
* Copyright 2020 Google LLC
|
|
2156
2141
|
*
|
|
@@ -2165,7 +2150,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2165
2150
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2166
2151
|
* See the License for the specific language governing permissions and
|
|
2167
2152
|
* limitations under the License.
|
|
2168
|
-
*/function
|
|
2153
|
+
*/function br(t){if(t)try{const e=new Date(Number(t));if(!isNaN(e.getTime()))return e.toUTCString()}catch{}}async function WE(t,e=!1){const n=M(t),r=await n.getIdToken(e),s=Aa(r);w(s&&s.exp&&s.auth_time&&s.iat,n.auth,"internal-error");const i=typeof s.firebase=="object"?s.firebase:void 0,o=i==null?void 0:i.sign_in_provider;return{claims:s,token:r,authTime:br(wa(s.auth_time)),issuedAtTime:br(wa(s.iat)),expirationTime:br(wa(s.exp)),signInProvider:o||null,signInSecondFactor:(i==null?void 0:i.sign_in_second_factor)||null}}function wa(t){return Number(t)*1e3}function Aa(t){const[e,n,r]=t.split(".");if(e===void 0||n===void 0||r===void 0)return Zs("JWT malformed, contained fewer than 3 sections"),null;try{const s=Ya(n);return s?JSON.parse(s):(Zs("Failed to decode base64 JWT payload"),null)}catch(s){return Zs("Caught error parsing JWT payload as JSON",s==null?void 0:s.toString()),null}}function GE(t){const e=Aa(t);return w(e,"internal-error"),w(typeof e.exp<"u","internal-error"),w(typeof e.iat<"u","internal-error"),Number(e.exp)-Number(e.iat)}/**
|
|
2169
2154
|
* @license
|
|
2170
2155
|
* Copyright 2020 Google LLC
|
|
2171
2156
|
*
|
|
@@ -2180,7 +2165,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2180
2165
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2181
2166
|
* See the License for the specific language governing permissions and
|
|
2182
2167
|
* limitations under the License.
|
|
2183
|
-
*/async function
|
|
2168
|
+
*/async function In(t,e,n=!1){if(n)return e;try{return await e}catch(r){throw r instanceof be&&KE(r)&&t.auth.currentUser===t&&await t.auth.signOut(),r}}function KE({code:t}){return t==="auth/user-disabled"||t==="auth/user-token-expired"}/**
|
|
2184
2169
|
* @license
|
|
2185
2170
|
* Copyright 2020 Google LLC
|
|
2186
2171
|
*
|
|
@@ -2195,7 +2180,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2195
2180
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2196
2181
|
* See the License for the specific language governing permissions and
|
|
2197
2182
|
* limitations under the License.
|
|
2198
|
-
*/class
|
|
2183
|
+
*/class QE{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 n;if(e){const r=this.errorBackoff;return this.errorBackoff=Math.min(this.errorBackoff*2,96e4),r}else{this.errorBackoff=3e4;const s=((n=this.user.stsTokenManager.expirationTime)!==null&&n!==void 0?n:0)-Date.now()-3e5;return Math.max(0,s)}}schedule(e=!1){if(!this.isRunning)return;const n=this.getInterval(e);this.timerId=setTimeout(async()=>{await this.iteration()},n)}async iteration(){try{await this.user.getIdToken(!0)}catch(e){(e==null?void 0:e.code)==="auth/network-request-failed"&&this.schedule(!0);return}this.schedule()}}/**
|
|
2199
2184
|
* @license
|
|
2200
2185
|
* Copyright 2020 Google LLC
|
|
2201
2186
|
*
|
|
@@ -2210,7 +2195,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2210
2195
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2211
2196
|
* See the License for the specific language governing permissions and
|
|
2212
2197
|
* limitations under the License.
|
|
2213
|
-
*/class
|
|
2198
|
+
*/class Kh{constructor(e,n){this.createdAt=e,this.lastLoginAt=n,this._initializeTime()}_initializeTime(){this.lastSignInTime=br(this.lastLoginAt),this.creationTime=br(this.createdAt)}_copy(e){this.createdAt=e.createdAt,this.lastLoginAt=e.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}}/**
|
|
2214
2199
|
* @license
|
|
2215
2200
|
* Copyright 2019 Google LLC
|
|
2216
2201
|
*
|
|
@@ -2225,7 +2210,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2225
2210
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2226
2211
|
* See the License for the specific language governing permissions and
|
|
2227
2212
|
* limitations under the License.
|
|
2228
|
-
*/async function
|
|
2213
|
+
*/async function kr(t){var e;const n=t.auth,r=await t.getIdToken(),s=await In(t,HE(n,{idToken:r}));w(s==null?void 0:s.users.length,n,"internal-error");const i=s.users[0];t._notifyReloadListener(i);const o=!((e=i.providerUserInfo)===null||e===void 0)&&e.length?JE(i.providerUserInfo):[],a=XE(t.providerData,o),c=t.isAnonymous,u=!(t.email&&i.passwordHash)&&!(a!=null&&a.length),l=c?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:a,metadata:new Kh(i.createdAt,i.lastLoginAt),isAnonymous:l};Object.assign(t,h)}async function YE(t){const e=M(t);await kr(e),await e.auth._persistUserIfCurrent(e),e.auth._notifyListenersIfCurrent(e)}function XE(t,e){return[...t.filter(r=>!e.some(s=>s.providerId===r.providerId)),...e]}function JE(t){return t.map(e=>{var{providerId:n}=e,r=Ea(e,["providerId"]);return{providerId:n,uid:r.rawId||"",displayName:r.displayName||null,email:r.email||null,phoneNumber:r.phoneNumber||null,photoURL:r.photoUrl||null}})}/**
|
|
2229
2214
|
* @license
|
|
2230
2215
|
* Copyright 2020 Google LLC
|
|
2231
2216
|
*
|
|
@@ -2240,7 +2225,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2240
2225
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2241
2226
|
* See the License for the specific language governing permissions and
|
|
2242
2227
|
* limitations under the License.
|
|
2243
|
-
*/async function
|
|
2228
|
+
*/async function ZE(t,e){const n=await Hh(t,{},async()=>{const r=Nn({grant_type:"refresh_token",refresh_token:e}).slice(1),{tokenApiHost:s,apiKey:i}=t.config,o=Wh(t,s,"/v1/token",`key=${i}`),a=await t._getAdditionalHeaders();return a["Content-Type"]="application/x-www-form-urlencoded",zh.fetch()(o,{method:"POST",headers:a,body:r})});return{accessToken:n.access_token,expiresIn:n.expires_in,refreshToken:n.refresh_token}}async function ev(t,e){return De(t,"POST","/v2/accounts:revokeToken",nt(t,e))}/**
|
|
2244
2229
|
* @license
|
|
2245
2230
|
* Copyright 2020 Google LLC
|
|
2246
2231
|
*
|
|
@@ -2255,7 +2240,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2255
2240
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2256
2241
|
* See the License for the specific language governing permissions and
|
|
2257
2242
|
* limitations under the License.
|
|
2258
|
-
*/class
|
|
2243
|
+
*/class Nr{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(e){w(e.idToken,"internal-error"),w(typeof e.idToken<"u","internal-error"),w(typeof e.refreshToken<"u","internal-error");const n="expiresIn"in e&&typeof e.expiresIn<"u"?Number(e.expiresIn):GE(e.idToken);this.updateTokensAndExpiration(e.idToken,e.refreshToken,n)}async getToken(e,n=!1){return w(!this.accessToken||this.refreshToken,e,"user-token-expired"),!n&&this.accessToken&&!this.isExpired?this.accessToken:this.refreshToken?(await this.refresh(e,this.refreshToken),this.accessToken):null}clearRefreshToken(){this.refreshToken=null}async refresh(e,n){const{accessToken:r,refreshToken:s,expiresIn:i}=await ZE(e,n);this.updateTokensAndExpiration(r,s,Number(i))}updateTokensAndExpiration(e,n,r){this.refreshToken=n||null,this.accessToken=e||null,this.expirationTime=Date.now()+r*1e3}static fromJSON(e,n){const{refreshToken:r,accessToken:s,expirationTime:i}=n,o=new Nr;return r&&(w(typeof r=="string","internal-error",{appName:e}),o.refreshToken=r),s&&(w(typeof s=="string","internal-error",{appName:e}),o.accessToken=s),i&&(w(typeof i=="number","internal-error",{appName:e}),o.expirationTime=i),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 Nr,this.toJSON())}_performRefresh(){return et("not implemented")}}/**
|
|
2259
2244
|
* @license
|
|
2260
2245
|
* Copyright 2020 Google LLC
|
|
2261
2246
|
*
|
|
@@ -2270,7 +2255,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2270
2255
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2271
2256
|
* See the License for the specific language governing permissions and
|
|
2272
2257
|
* limitations under the License.
|
|
2273
|
-
*/function Tt(t,e){
|
|
2258
|
+
*/function Tt(t,e){w(typeof t=="string"||typeof t>"u","internal-error",{appName:e})}class qt{constructor(e){var{uid:n,auth:r,stsTokenManager:s}=e,i=Ea(e,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.proactiveRefresh=new QE(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=n,this.auth=r,this.stsTokenManager=s,this.accessToken=s.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 Kh(i.createdAt||void 0,i.lastLoginAt||void 0)}async getIdToken(e){const n=await In(this,this.stsTokenManager.getToken(this.auth,e));return w(n,this.auth,"internal-error"),this.accessToken!==n&&(this.accessToken=n,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),n}getIdTokenResult(e){return WE(this,e)}reload(){return YE(this)}_assign(e){this!==e&&(w(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=>Object.assign({},n)),this.metadata._copy(e.metadata),this.stsTokenManager._assign(e.stsTokenManager))}_clone(e){const n=new qt(Object.assign(Object.assign({},this),{auth:e,stsTokenManager:this.stsTokenManager._clone()}));return n.metadata._copy(this.metadata),n}_onReload(e){w(!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 kr(this),await this.auth._persistUserIfCurrent(this),r&&this.auth._notifyListenersIfCurrent(this)}async delete(){const e=await this.getIdToken();return await In(this,jE(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,n){var r,s,i,o,a,c,u,l;const h=(r=n.displayName)!==null&&r!==void 0?r:void 0,d=(s=n.email)!==null&&s!==void 0?s:void 0,f=(i=n.phoneNumber)!==null&&i!==void 0?i:void 0,E=(o=n.photoURL)!==null&&o!==void 0?o:void 0,v=(a=n.tenantId)!==null&&a!==void 0?a:void 0,g=(c=n._redirectEventId)!==null&&c!==void 0?c:void 0,k=(u=n.createdAt)!==null&&u!==void 0?u:void 0,O=(l=n.lastLoginAt)!==null&&l!==void 0?l:void 0,{uid:b,emailVerified:U,isAnonymous:me,providerData:de,stsTokenManager:ot}=n;w(b&&ot,e,"internal-error");const Rt=Nr.fromJSON(this.name,ot);w(typeof b=="string",e,"internal-error"),Tt(h,e.name),Tt(d,e.name),w(typeof U=="boolean",e,"internal-error"),w(typeof me=="boolean",e,"internal-error"),Tt(f,e.name),Tt(E,e.name),Tt(v,e.name),Tt(g,e.name),Tt(k,e.name),Tt(O,e.name);const at=new qt({uid:b,auth:e,email:d,emailVerified:U,displayName:h,isAnonymous:me,photoURL:E,phoneNumber:f,tenantId:v,stsTokenManager:Rt,createdAt:k,lastLoginAt:O});return de&&Array.isArray(de)&&(at.providerData=de.map(_i=>Object.assign({},_i))),g&&(at._redirectEventId=g),at}static async _fromIdTokenResponse(e,n,r=!1){const s=new Nr;s.updateFromServerResponse(n);const i=new qt({uid:n.localId,auth:e,stsTokenManager:s,isAnonymous:r});return await kr(i),i}}/**
|
|
2274
2259
|
* @license
|
|
2275
2260
|
* Copyright 2020 Google LLC
|
|
2276
2261
|
*
|
|
@@ -2285,7 +2270,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2285
2270
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2286
2271
|
* See the License for the specific language governing permissions and
|
|
2287
2272
|
* limitations under the License.
|
|
2288
|
-
*/const
|
|
2273
|
+
*/const Qh=new Map;function rt(t){tt(t instanceof Function,"Expected a class definition");let e=Qh.get(t);return e?(tt(e instanceof t,"Instance stored in cache mismatched with class"),e):(e=new t,Qh.set(t,e),e)}/**
|
|
2289
2274
|
* @license
|
|
2290
2275
|
* Copyright 2019 Google LLC
|
|
2291
2276
|
*
|
|
@@ -2300,7 +2285,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2300
2285
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2301
2286
|
* See the License for the specific language governing permissions and
|
|
2302
2287
|
* limitations under the License.
|
|
2303
|
-
*/class
|
|
2288
|
+
*/class Yh{constructor(){this.type="NONE",this.storage={}}async _isAvailable(){return!0}async _set(e,n){this.storage[e]=n}async _get(e){const n=this.storage[e];return n===void 0?null:n}async _remove(e){delete this.storage[e]}_addListener(e,n){}_removeListener(e,n){}}Yh.type="NONE";const Xh=Yh;/**
|
|
2304
2289
|
* @license
|
|
2305
2290
|
* Copyright 2019 Google LLC
|
|
2306
2291
|
*
|
|
@@ -2315,7 +2300,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2315
2300
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2316
2301
|
* See the License for the specific language governing permissions and
|
|
2317
2302
|
* limitations under the License.
|
|
2318
|
-
*/function
|
|
2303
|
+
*/function ti(t,e,n){return`firebase:${t}:${e}:${n}`}class wn{constructor(e,n,r){this.persistence=e,this.auth=n,this.userKey=r;const{config:s,name:i}=this.auth;this.fullUserKey=ti(this.userKey,s.apiKey,i),this.fullPersistenceKey=ti("persistence",s.apiKey,i),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(){const e=await this.persistence._get(this.fullUserKey);return e?qt._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;const 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 wn(rt(Xh),e,r);const s=(await Promise.all(n.map(async u=>{if(await u._isAvailable())return u}))).filter(u=>u);let i=s[0]||rt(Xh);const o=ti(r,e.config.apiKey,e.name);let a=null;for(const u of n)try{const l=await u._get(o);if(l){const h=qt._fromJSON(e,l);u!==i&&(a=h),i=u;break}}catch{}const c=s.filter(u=>u._shouldAllowMigration);return!i._shouldAllowMigration||!c.length?new wn(i,e,r):(i=c[0],a&&await i._set(o,a.toJSON()),await Promise.all(n.map(async u=>{if(u!==i)try{await u._remove(o)}catch{}})),new wn(i,e,r))}}/**
|
|
2319
2304
|
* @license
|
|
2320
2305
|
* Copyright 2020 Google LLC
|
|
2321
2306
|
*
|
|
@@ -2330,7 +2315,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2330
2315
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2331
2316
|
* See the License for the specific language governing permissions and
|
|
2332
2317
|
* limitations under the License.
|
|
2333
|
-
*/function
|
|
2318
|
+
*/function Jh(t){const e=t.toLowerCase();if(e.includes("opera/")||e.includes("opr/")||e.includes("opios/"))return"Opera";if(td(e))return"IEMobile";if(e.includes("msie")||e.includes("trident/"))return"IE";if(e.includes("edge/"))return"Edge";if(Zh(e))return"Firefox";if(e.includes("silk/"))return"Silk";if(rd(e))return"Blackberry";if(sd(e))return"Webos";if(Ra(e))return"Safari";if((e.includes("chrome/")||ed(e))&&!e.includes("edge/"))return"Chrome";if(nd(e))return"Android";{const n=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,r=t.match(n);if((r==null?void 0:r.length)===2)return r[1]}return"Other"}function Zh(t=ie()){return/firefox\//i.test(t)}function Ra(t=ie()){const e=t.toLowerCase();return e.includes("safari/")&&!e.includes("chrome/")&&!e.includes("crios/")&&!e.includes("android")}function ed(t=ie()){return/crios\//i.test(t)}function td(t=ie()){return/iemobile/i.test(t)}function nd(t=ie()){return/android/i.test(t)}function rd(t=ie()){return/blackberry/i.test(t)}function sd(t=ie()){return/webos/i.test(t)}function ni(t=ie()){return/iphone|ipad|ipod/i.test(t)||/macintosh/i.test(t)&&/mobile/i.test(t)}function tv(t=ie()){var e;return ni(t)&&!!(!((e=window.navigator)===null||e===void 0)&&e.standalone)}function nv(){return Vf()&&document.documentMode===10}function id(t=ie()){return ni(t)||nd(t)||sd(t)||rd(t)||/windows phone/i.test(t)||td(t)}function rv(){try{return!!(window&&window!==window.top)}catch{return!1}}/**
|
|
2334
2319
|
* @license
|
|
2335
2320
|
* Copyright 2020 Google LLC
|
|
2336
2321
|
*
|
|
@@ -2345,7 +2330,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2345
2330
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2346
2331
|
* See the License for the specific language governing permissions and
|
|
2347
2332
|
* limitations under the License.
|
|
2348
|
-
*/function
|
|
2333
|
+
*/function od(t,e=[]){let n;switch(t){case"Browser":n=Jh(ie());break;case"Worker":n=`${Jh(ie())}-${t}`;break;default:n=t}const r=e.length?e.join(","):"FirebaseCore-web";return`${n}/JsCore/${Ct}/${r}`}/**
|
|
2349
2334
|
* @license
|
|
2350
2335
|
* Copyright 2022 Google LLC
|
|
2351
2336
|
*
|
|
@@ -2360,7 +2345,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2360
2345
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2361
2346
|
* See the License for the specific language governing permissions and
|
|
2362
2347
|
* limitations under the License.
|
|
2363
|
-
*/class
|
|
2348
|
+
*/class sv{constructor(e){this.auth=e,this.queue=[]}pushCallback(e,n){const r=i=>new Promise((o,a)=>{try{const c=e(i);o(c)}catch(c){a(c)}});r.onAbort=n,this.queue.push(r);const s=this.queue.length-1;return()=>{this.queue[s]=()=>Promise.resolve()}}async runMiddleware(e){if(this.auth.currentUser===e)return;const n=[];try{for(const r of this.queue)await r(e),r.onAbort&&n.push(r.onAbort)}catch(r){n.reverse();for(const s of n)try{s()}catch{}throw this.auth._errorFactory.create("login-blocked",{originalMessage:r==null?void 0:r.message})}}}/**
|
|
2364
2349
|
* @license
|
|
2365
2350
|
* Copyright 2023 Google LLC
|
|
2366
2351
|
*
|
|
@@ -2375,7 +2360,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2375
2360
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2376
2361
|
* See the License for the specific language governing permissions and
|
|
2377
2362
|
* limitations under the License.
|
|
2378
|
-
*/async function
|
|
2363
|
+
*/async function iv(t,e={}){return De(t,"GET","/v2/passwordPolicy",nt(t,e))}/**
|
|
2379
2364
|
* @license
|
|
2380
2365
|
* Copyright 2023 Google LLC
|
|
2381
2366
|
*
|
|
@@ -2390,7 +2375,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2390
2375
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2391
2376
|
* See the License for the specific language governing permissions and
|
|
2392
2377
|
* limitations under the License.
|
|
2393
|
-
*/const
|
|
2378
|
+
*/const ov=6;class av{constructor(e){var n,r,s,i;const o=e.customStrengthOptions;this.customStrengthOptions={},this.customStrengthOptions.minPasswordLength=(n=o.minPasswordLength)!==null&&n!==void 0?n:ov,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=(s=(r=e.allowedNonAlphanumericCharacters)===null||r===void 0?void 0:r.join(""))!==null&&s!==void 0?s:"",this.forceUpgradeOnSignin=(i=e.forceUpgradeOnSignin)!==null&&i!==void 0?i:!1,this.schemaVersion=e.schemaVersion}validatePassword(e){var n,r,s,i,o,a;const c={isValid:!0,passwordPolicy:this};return this.validatePasswordLengthOptions(e,c),this.validatePasswordCharacterOptions(e,c),c.isValid&&(c.isValid=(n=c.meetsMinPasswordLength)!==null&&n!==void 0?n:!0),c.isValid&&(c.isValid=(r=c.meetsMaxPasswordLength)!==null&&r!==void 0?r:!0),c.isValid&&(c.isValid=(s=c.containsLowercaseLetter)!==null&&s!==void 0?s:!0),c.isValid&&(c.isValid=(i=c.containsUppercaseLetter)!==null&&i!==void 0?i:!0),c.isValid&&(c.isValid=(o=c.containsNumericCharacter)!==null&&o!==void 0?o:!0),c.isValid&&(c.isValid=(a=c.containsNonAlphanumericCharacter)!==null&&a!==void 0?a:!0),c}validatePasswordLengthOptions(e,n){const r=this.customStrengthOptions.minPasswordLength,s=this.customStrengthOptions.maxPasswordLength;r&&(n.meetsMinPasswordLength=e.length>=r),s&&(n.meetsMaxPasswordLength=e.length<=s)}validatePasswordCharacterOptions(e,n){this.updatePasswordCharacterOptionsStatuses(n,!1,!1,!1,!1);let r;for(let s=0;s<e.length;s++)r=e.charAt(s),this.updatePasswordCharacterOptionsStatuses(n,r>="a"&&r<="z",r>="A"&&r<="Z",r>="0"&&r<="9",this.allowedNonAlphanumericCharacters.includes(r))}updatePasswordCharacterOptionsStatuses(e,n,r,s,i){this.customStrengthOptions.containsLowercaseLetter&&(e.containsLowercaseLetter||(e.containsLowercaseLetter=n)),this.customStrengthOptions.containsUppercaseLetter&&(e.containsUppercaseLetter||(e.containsUppercaseLetter=r)),this.customStrengthOptions.containsNumericCharacter&&(e.containsNumericCharacter||(e.containsNumericCharacter=s)),this.customStrengthOptions.containsNonAlphanumericCharacter&&(e.containsNonAlphanumericCharacter||(e.containsNonAlphanumericCharacter=i))}}/**
|
|
2394
2379
|
* @license
|
|
2395
2380
|
* Copyright 2020 Google LLC
|
|
2396
2381
|
*
|
|
@@ -2405,7 +2390,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2405
2390
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2406
2391
|
* See the License for the specific language governing permissions and
|
|
2407
2392
|
* limitations under the License.
|
|
2408
|
-
*/class
|
|
2393
|
+
*/class cv{constructor(e,n,r,s){this.app=e,this.heartbeatServiceProvider=n,this.appCheckServiceProvider=r,this.config=s,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new ad(this),this.idTokenSubscription=new ad(this),this.beforeStateQueue=new sv(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=Bh,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=s.sdkClientVersion}_initializeWithPersistence(e,n){return n&&(this._popupRedirectResolver=rt(n)),this._initializationPromise=this.queue(async()=>{var r,s;if(!this._deleted&&(this.persistenceManager=await wn.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(n),this.lastNotifiedUid=((s=this.currentUser)===null||s===void 0?void 0:s.uid)||null,!this._deleted&&(this._isInitialized=!0)}}),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const 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 n;const r=await this.assertedPersistence.getCurrentUser();let s=r,i=!1;if(e&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const o=(n=this.redirectUser)===null||n===void 0?void 0:n._redirectEventId,a=s==null?void 0:s._redirectEventId,c=await this.tryRedirectSignIn(e);(!o||o===a)&&(c!=null&&c.user)&&(s=c.user,i=!0)}if(!s)return this.directlySetCurrentUser(null);if(!s._redirectEventId){if(i)try{await this.beforeStateQueue.runMiddleware(s)}catch(o){s=r,this._popupRedirectResolver._overrideRedirectResult(this,()=>Promise.reject(o))}return s?this.reloadAndSetCurrentUserOrClear(s):this.directlySetCurrentUser(null)}return w(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===s._redirectEventId?this.directlySetCurrentUser(s):this.reloadAndSetCurrentUserOrClear(s)}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 kr(e)}catch(n){if((n==null?void 0:n.code)!=="auth/network-request-failed")return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(e)}useDeviceLanguage(){this.languageCode=ME()}async _delete(){this._deleted=!0}async updateCurrentUser(e){const n=e?M(e):null;return n&&w(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&&w(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 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(rt(e))})}_getRecaptchaConfig(){return this.tenantId==null?this._agentRecaptchaConfig:this._tenantRecaptchaConfigs[this.tenantId]}async validatePassword(e){this._getPasswordPolicyInternal()||await this._updatePasswordPolicy();const 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(){const e=await iv(this),n=new av(e);this.tenantId===null?this._projectPasswordPolicy=n:this._tenantPasswordPolicies[this.tenantId]=n}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(e){this._errorFactory=new kn("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{const r=this.onAuthStateChanged(()=>{r(),e()},n)}})}async revokeAccessToken(e){if(this.currentUser){const n=await this.currentUser.getIdToken(),r={providerId:"apple.com",tokenType:"ACCESS_TOKEN",token:e,idToken:n};this.tenantId!=null&&(r.tenantId=this.tenantId),await ev(this,r)}}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,n){const r=await this.getOrInitRedirectPersistenceManager(n);return e===null?r.removeCurrentUser():r.setCurrentUser(e)}async getOrInitRedirectPersistenceManager(e){if(!this.redirectPersistenceManager){const n=e&&rt(e)||this._popupRedirectResolver;w(n,this,"argument-error"),this.redirectPersistenceManager=await wn.create(this,[rt(n._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(e){var n,r;return this._isInitialized&&await this.queue(async()=>{}),((n=this._currentUser)===null||n===void 0?void 0:n._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,n;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);const r=(n=(e=this.currentUser)===null||e===void 0?void 0:e.uid)!==null&&n!==void 0?n:null;this.lastNotifiedUid!==r&&(this.lastNotifiedUid=r,this.authStateSubscription.next(this.currentUser))}registerStateListener(e,n,r,s){if(this._deleted)return()=>{};const i=typeof n=="function"?n:n.next.bind(n);let o=!1;const a=this._isInitialized?Promise.resolve():this._initializationPromise;if(w(a,this,"internal-error"),a.then(()=>{o||i(this.currentUser)}),typeof n=="function"){const c=e.addObserver(n,r,s);return()=>{o=!0,c()}}else{const c=e.addObserver(n);return()=>{o=!0,c()}}}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 w(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(e){!e||this.frameworks.includes(e)||(this.frameworks.push(e),this.frameworks.sort(),this.clientVersion=od(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){var e;const n={"X-Client-Version":this.clientVersion};this.app.options.appId&&(n["X-Firebase-gmpid"]=this.app.options.appId);const r=await((e=this.heartbeatServiceProvider.getImmediate({optional:!0}))===null||e===void 0?void 0:e.getHeartbeatsHeader());r&&(n["X-Firebase-Client"]=r);const s=await this._getAppCheckToken();return s&&(n["X-Firebase-AppCheck"]=s),n}async _getAppCheckToken(){var e;const n=await((e=this.appCheckServiceProvider.getImmediate({optional:!0}))===null||e===void 0?void 0:e.getToken());return n!=null&&n.error&&OE(`Error while retrieving App Check token: ${n.error}`),n==null?void 0:n.token}}function je(t){return M(t)}class ad{constructor(e){this.auth=e,this.observer=null,this.addObserver=qf(n=>this.observer=n)}get next(){return w(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}/**
|
|
2409
2394
|
* @license
|
|
2410
2395
|
* Copyright 2020 Google LLC
|
|
2411
2396
|
*
|
|
@@ -2420,7 +2405,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2420
2405
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2421
2406
|
* See the License for the specific language governing permissions and
|
|
2422
2407
|
* limitations under the License.
|
|
2423
|
-
*/
|
|
2408
|
+
*/function uv(){var t,e;return(e=(t=document.getElementsByTagName("head"))===null||t===void 0?void 0:t[0])!==null&&e!==void 0?e:document}function cd(t){return new Promise((e,n)=>{const r=document.createElement("script");r.setAttribute("src",t),r.onload=e,r.onerror=s=>{const i=$e("internal-error");i.customData=s,n(i)},r.type="text/javascript",r.charset="UTF-8",uv().appendChild(r)})}function lv(t){return`__${t}${Math.floor(Math.random()*1e6)}`}const hv="https://www.google.com/recaptcha/enterprise.js?render=",dv="recaptcha-enterprise",fv="NO_RECAPTCHA";class pv{constructor(e){this.type=dv,this.auth=je(e)}async verify(e="verify",n=!1){async function r(i){if(!n){if(i.tenantId==null&&i._agentRecaptchaConfig!=null)return i._agentRecaptchaConfig.siteKey;if(i.tenantId!=null&&i._tenantRecaptchaConfigs[i.tenantId]!==void 0)return i._tenantRecaptchaConfigs[i.tenantId].siteKey}return new Promise(async(o,a)=>{$E(i,{clientType:"CLIENT_TYPE_WEB",version:"RECAPTCHA_ENTERPRISE"}).then(c=>{if(c.recaptchaKey===void 0)a(new Error("recaptcha Enterprise site key undefined"));else{const u=new qE(c);return i.tenantId==null?i._agentRecaptchaConfig=u:i._tenantRecaptchaConfigs[i.tenantId]=u,o(u.siteKey)}}).catch(c=>{a(c)})})}function s(i,o,a){const c=window.grecaptcha;Gh(c)?c.enterprise.ready(()=>{c.enterprise.execute(i,{action:e}).then(u=>{o(u)}).catch(()=>{o(fv)})}):a(Error("No reCAPTCHA enterprise script loaded."))}return new Promise((i,o)=>{r(this.auth).then(a=>{if(!n&&Gh(window.grecaptcha))s(a,i,o);else{if(typeof window>"u"){o(new Error("RecaptchaVerifier is only supported in browser"));return}cd(hv+a).then(()=>{s(a,i,o)}).catch(c=>{o(c)})}}).catch(a=>{o(a)})})}}async function ud(t,e,n,r=!1){const s=new pv(t);let i;try{i=await s.verify(n)}catch{i=await s.verify(n,!0)}const o=Object.assign({},e);return r?Object.assign(o,{captchaResp:i}):Object.assign(o,{captchaResponse:i}),Object.assign(o,{clientType:"CLIENT_TYPE_WEB"}),Object.assign(o,{recaptchaVersion:"RECAPTCHA_ENTERPRISE"}),o}async function ri(t,e,n,r){var s;if(!((s=t._getRecaptchaConfig())===null||s===void 0)&&s.isProviderEnabled("EMAIL_PASSWORD_PROVIDER")){const i=await ud(t,e,n,n==="getOobCode");return r(t,i)}else return r(t,e).catch(async i=>{if(i.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.`);const o=await ud(t,e,n,n==="getOobCode");return r(t,o)}else return Promise.reject(i)})}/**
|
|
2424
2409
|
* @license
|
|
2425
2410
|
* Copyright 2020 Google LLC
|
|
2426
2411
|
*
|
|
@@ -2435,7 +2420,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2435
2420
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2436
2421
|
* See the License for the specific language governing permissions and
|
|
2437
2422
|
* limitations under the License.
|
|
2438
|
-
*/function
|
|
2423
|
+
*/function mv(t,e){const n=Vn(t,"auth");if(n.isInitialized()){const s=n.getImmediate(),i=n.getOptions();if(Br(i,e??{}))return s;Ce(s,"already-initialized")}return n.initialize({options:e})}function gv(t,e){const n=(e==null?void 0:e.persistence)||[],r=(Array.isArray(n)?n:[n]).map(rt);e!=null&&e.errorMap&&t._updateErrorMap(e.errorMap),t._initializeWithPersistence(r,e==null?void 0:e.popupRedirectResolver)}function ld(t,e,n){const r=je(t);w(r._canInitEmulator,r,"emulator-config-failed"),w(/^https?:\/\//.test(e),r,"invalid-emulator-scheme");const s=!!(n!=null&&n.disableWarnings),i=hd(e),{host:o,port:a}=_v(e),c=a===null?"":`:${a}`;r.config.emulator={url:`${i}//${o}${c}/`},r.settings.appVerificationDisabledForTesting=!0,r.emulatorConfig=Object.freeze({host:o,port:a,protocol:i.replace(":",""),options:Object.freeze({disableWarnings:s})}),s||yv()}function hd(t){const e=t.indexOf(":");return e<0?"":t.substr(0,e+1)}function _v(t){const e=hd(t),n=/(\/\/)?([^?#/]+)/.exec(t.substr(e.length));if(!n)return{host:"",port:null};const r=n[2].split("@").pop()||"",s=/^(\[[^\]]+\])(:|$)/.exec(r);if(s){const i=s[1];return{host:i,port:dd(r.substr(i.length+1))}}else{const[i,o]=r.split(":");return{host:i,port:dd(o)}}}function dd(t){if(!t)return null;const e=Number(t);return isNaN(e)?null:e}function yv(){function t(){const 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())}/**
|
|
2439
2424
|
* @license
|
|
2440
2425
|
* Copyright 2020 Google LLC
|
|
2441
2426
|
*
|
|
@@ -2450,7 +2435,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2450
2435
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2451
2436
|
* See the License for the specific language governing permissions and
|
|
2452
2437
|
* limitations under the License.
|
|
2453
|
-
*/class
|
|
2438
|
+
*/class Pa{constructor(e,n){this.providerId=e,this.signInMethod=n}toJSON(){return et("not implemented")}_getIdTokenResponse(e){return et("not implemented")}_linkToIdToken(e,n){return et("not implemented")}_getReauthenticationResolver(e){return et("not implemented")}}async function Ev(t,e){return De(t,"POST","/v1/accounts:signUp",e)}/**
|
|
2454
2439
|
* @license
|
|
2455
2440
|
* Copyright 2020 Google LLC
|
|
2456
2441
|
*
|
|
@@ -2465,7 +2450,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2465
2450
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2466
2451
|
* See the License for the specific language governing permissions and
|
|
2467
2452
|
* limitations under the License.
|
|
2468
|
-
*/async function
|
|
2453
|
+
*/async function vv(t,e){return Cr(t,"POST","/v1/accounts:signInWithPassword",nt(t,e))}async function fd(t,e){return De(t,"POST","/v1/accounts:sendOobCode",nt(t,e))}async function Tv(t,e){return fd(t,e)}async function Iv(t,e){return fd(t,e)}/**
|
|
2469
2454
|
* @license
|
|
2470
2455
|
* Copyright 2020 Google LLC
|
|
2471
2456
|
*
|
|
@@ -2480,7 +2465,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2480
2465
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2481
2466
|
* See the License for the specific language governing permissions and
|
|
2482
2467
|
* limitations under the License.
|
|
2483
|
-
*/async function
|
|
2468
|
+
*/async function wv(t,e){return Cr(t,"POST","/v1/accounts:signInWithEmailLink",nt(t,e))}async function Av(t,e){return Cr(t,"POST","/v1/accounts:signInWithEmailLink",nt(t,e))}/**
|
|
2484
2469
|
* @license
|
|
2485
2470
|
* Copyright 2020 Google LLC
|
|
2486
2471
|
*
|
|
@@ -2495,7 +2480,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2495
2480
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2496
2481
|
* See the License for the specific language governing permissions and
|
|
2497
2482
|
* limitations under the License.
|
|
2498
|
-
*/class
|
|
2483
|
+
*/class Dr extends Pa{constructor(e,n,r,s=null){super("password",r),this._email=e,this._password=n,this._tenantId=s}static _fromEmailAndPassword(e,n){return new Dr(e,n,"password")}static _fromEmailAndCode(e,n,r=null){return new Dr(e,n,"emailLink",r)}toJSON(){return{email:this._email,password:this._password,signInMethod:this.signInMethod,tenantId:this._tenantId}}static fromJSON(e){const n=typeof e=="string"?JSON.parse(e):e;if(n!=null&&n.email&&(n!=null&&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":const n={returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return ri(e,n,"signInWithPassword",vv);case"emailLink":return wv(e,{email:this._email,oobCode:this._password});default:Ce(e,"internal-error")}}async _linkToIdToken(e,n){switch(this.signInMethod){case"password":const r={idToken:n,returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return ri(e,r,"signUpPassword",Ev);case"emailLink":return Av(e,{idToken:n,email:this._email,oobCode:this._password});default:Ce(e,"internal-error")}}_getReauthenticationResolver(e){return this._getIdTokenResponse(e)}}/**
|
|
2499
2484
|
* @license
|
|
2500
2485
|
* Copyright 2020 Google LLC
|
|
2501
2486
|
*
|
|
@@ -2510,7 +2495,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2510
2495
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2511
2496
|
* See the License for the specific language governing permissions and
|
|
2512
2497
|
* limitations under the License.
|
|
2513
|
-
*/async function
|
|
2498
|
+
*/async function An(t,e){return Cr(t,"POST","/v1/accounts:signInWithIdp",nt(t,e))}/**
|
|
2514
2499
|
* @license
|
|
2515
2500
|
* Copyright 2020 Google LLC
|
|
2516
2501
|
*
|
|
@@ -2525,7 +2510,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2525
2510
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2526
2511
|
* See the License for the specific language governing permissions and
|
|
2527
2512
|
* limitations under the License.
|
|
2528
|
-
*/const
|
|
2513
|
+
*/const Rv="http://localhost";class $t extends Pa{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(e){const 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):Ce("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){const n=typeof e=="string"?JSON.parse(e):e,{providerId:r,signInMethod:s}=n,i=Ea(n,["providerId","signInMethod"]);if(!r||!s)return null;const o=new $t(r,s);return o.idToken=i.idToken||void 0,o.accessToken=i.accessToken||void 0,o.secret=i.secret,o.nonce=i.nonce,o.pendingToken=i.pendingToken||null,o}_getIdTokenResponse(e){const n=this.buildRequest();return An(e,n)}_linkToIdToken(e,n){const r=this.buildRequest();return r.idToken=n,An(e,r)}_getReauthenticationResolver(e){const n=this.buildRequest();return n.autoCreate=!1,An(e,n)}buildRequest(){const e={requestUri:Rv,returnSecureToken:!0};if(this.pendingToken)e.pendingToken=this.pendingToken;else{const 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=Nn(n)}return e}}/**
|
|
2529
2514
|
* @license
|
|
2530
2515
|
* Copyright 2020 Google LLC
|
|
2531
2516
|
*
|
|
@@ -2540,7 +2525,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2540
2525
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2541
2526
|
* See the License for the specific language governing permissions and
|
|
2542
2527
|
* limitations under the License.
|
|
2543
|
-
*/function
|
|
2528
|
+
*/function Pv(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 Sv(t){const e=Dn(On(t)).link,n=e?Dn(On(e)).deep_link_id:null,r=Dn(On(t)).deep_link_id;return(r?Dn(On(r)).link:null)||r||n||e||t}class Sa{constructor(e){var n,r,s,i,o,a;const c=Dn(On(e)),u=(n=c.apiKey)!==null&&n!==void 0?n:null,l=(r=c.oobCode)!==null&&r!==void 0?r:null,h=Pv((s=c.mode)!==null&&s!==void 0?s:null);w(u&&l&&h,"argument-error"),this.apiKey=u,this.operation=h,this.code=l,this.continueUrl=(i=c.continueUrl)!==null&&i!==void 0?i:null,this.languageCode=(o=c.languageCode)!==null&&o!==void 0?o:null,this.tenantId=(a=c.tenantId)!==null&&a!==void 0?a:null}static parseLink(e){const n=Sv(e);try{return new Sa(n)}catch{return null}}}/**
|
|
2544
2529
|
* @license
|
|
2545
2530
|
* Copyright 2020 Google LLC
|
|
2546
2531
|
*
|
|
@@ -2555,7 +2540,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2555
2540
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2556
2541
|
* See the License for the specific language governing permissions and
|
|
2557
2542
|
* limitations under the License.
|
|
2558
|
-
*/class
|
|
2543
|
+
*/class Rn{constructor(){this.providerId=Rn.PROVIDER_ID}static credential(e,n){return Dr._fromEmailAndPassword(e,n)}static credentialWithLink(e,n){const r=Sa.parseLink(n);return w(r,"argument-error"),Dr._fromEmailAndCode(e,r.code,r.tenantId)}}Rn.PROVIDER_ID="password",Rn.EMAIL_PASSWORD_SIGN_IN_METHOD="password",Rn.EMAIL_LINK_SIGN_IN_METHOD="emailLink";/**
|
|
2559
2544
|
* @license
|
|
2560
2545
|
* Copyright 2020 Google LLC
|
|
2561
2546
|
*
|
|
@@ -2570,7 +2555,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2570
2555
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2571
2556
|
* See the License for the specific language governing permissions and
|
|
2572
2557
|
* limitations under the License.
|
|
2573
|
-
*/class
|
|
2558
|
+
*/class si{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}}/**
|
|
2574
2559
|
* @license
|
|
2575
2560
|
* Copyright 2019 Google LLC
|
|
2576
2561
|
*
|
|
@@ -2585,7 +2570,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2585
2570
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2586
2571
|
* See the License for the specific language governing permissions and
|
|
2587
2572
|
* limitations under the License.
|
|
2588
|
-
*/class
|
|
2573
|
+
*/class Or extends si{constructor(){super(...arguments),this.scopes=[]}addScope(e){return this.scopes.includes(e)||this.scopes.push(e),this}getScopes(){return[...this.scopes]}}/**
|
|
2589
2574
|
* @license
|
|
2590
2575
|
* Copyright 2020 Google LLC
|
|
2591
2576
|
*
|
|
@@ -2600,7 +2585,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2600
2585
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2601
2586
|
* See the License for the specific language governing permissions and
|
|
2602
2587
|
* limitations under the License.
|
|
2603
|
-
*/class
|
|
2588
|
+
*/class ze extends Or{constructor(){super("facebook.com")}static credential(e){return $t._fromParams({providerId:ze.PROVIDER_ID,signInMethod:ze.FACEBOOK_SIGN_IN_METHOD,accessToken:e})}static credentialFromResult(e){return ze.credentialFromTaggedObject(e)}static credentialFromError(e){return ze.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e||!("oauthAccessToken"in e)||!e.oauthAccessToken)return null;try{return ze.credential(e.oauthAccessToken)}catch{return null}}}ze.FACEBOOK_SIGN_IN_METHOD="facebook.com",ze.PROVIDER_ID="facebook.com";/**
|
|
2604
2589
|
* @license
|
|
2605
2590
|
* Copyright 2020 Google LLC
|
|
2606
2591
|
*
|
|
@@ -2615,7 +2600,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2615
2600
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2616
2601
|
* See the License for the specific language governing permissions and
|
|
2617
2602
|
* limitations under the License.
|
|
2618
|
-
*/class
|
|
2603
|
+
*/class He extends Or{constructor(){super("google.com"),this.addScope("profile")}static credential(e,n){return $t._fromParams({providerId:He.PROVIDER_ID,signInMethod:He.GOOGLE_SIGN_IN_METHOD,idToken:e,accessToken:n})}static credentialFromResult(e){return He.credentialFromTaggedObject(e)}static credentialFromError(e){return He.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;const{oauthIdToken:n,oauthAccessToken:r}=e;if(!n&&!r)return null;try{return He.credential(n,r)}catch{return null}}}He.GOOGLE_SIGN_IN_METHOD="google.com",He.PROVIDER_ID="google.com";/**
|
|
2619
2604
|
* @license
|
|
2620
2605
|
* Copyright 2020 Google LLC
|
|
2621
2606
|
*
|
|
@@ -2630,7 +2615,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2630
2615
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2631
2616
|
* See the License for the specific language governing permissions and
|
|
2632
2617
|
* limitations under the License.
|
|
2633
|
-
*/class
|
|
2618
|
+
*/class It extends Or{constructor(){super("github.com")}static credential(e){return $t._fromParams({providerId:It.PROVIDER_ID,signInMethod:It.GITHUB_SIGN_IN_METHOD,accessToken:e})}static credentialFromResult(e){return It.credentialFromTaggedObject(e)}static credentialFromError(e){return It.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e||!("oauthAccessToken"in e)||!e.oauthAccessToken)return null;try{return It.credential(e.oauthAccessToken)}catch{return null}}}It.GITHUB_SIGN_IN_METHOD="github.com",It.PROVIDER_ID="github.com";/**
|
|
2634
2619
|
* @license
|
|
2635
2620
|
* Copyright 2020 Google LLC
|
|
2636
2621
|
*
|
|
@@ -2645,7 +2630,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2645
2630
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2646
2631
|
* See the License for the specific language governing permissions and
|
|
2647
2632
|
* limitations under the License.
|
|
2648
|
-
*/class
|
|
2633
|
+
*/class Oe extends Or{constructor(){super("twitter.com")}static credential(e,n){return $t._fromParams({providerId:Oe.PROVIDER_ID,signInMethod:Oe.TWITTER_SIGN_IN_METHOD,oauthToken:e,oauthTokenSecret:n})}static credentialFromResult(e){return Oe.credentialFromTaggedObject(e)}static credentialFromError(e){return Oe.credentialFromTaggedObject(e.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;const{oauthAccessToken:n,oauthTokenSecret:r}=e;if(!n||!r)return null;try{return Oe.credential(n,r)}catch{return null}}}Oe.TWITTER_SIGN_IN_METHOD="twitter.com",Oe.PROVIDER_ID="twitter.com";/**
|
|
2649
2634
|
* @license
|
|
2650
2635
|
* Copyright 2020 Google LLC
|
|
2651
2636
|
*
|
|
@@ -2660,7 +2645,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2660
2645
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2661
2646
|
* See the License for the specific language governing permissions and
|
|
2662
2647
|
* limitations under the License.
|
|
2663
|
-
*/async function
|
|
2648
|
+
*/async function pd(t,e){return Cr(t,"POST","/v1/accounts:signUp",nt(t,e))}/**
|
|
2664
2649
|
* @license
|
|
2665
2650
|
* Copyright 2020 Google LLC
|
|
2666
2651
|
*
|
|
@@ -2675,7 +2660,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2675
2660
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2676
2661
|
* See the License for the specific language governing permissions and
|
|
2677
2662
|
* limitations under the License.
|
|
2678
|
-
*/class
|
|
2663
|
+
*/class st{constructor(e){this.user=e.user,this.providerId=e.providerId,this._tokenResponse=e._tokenResponse,this.operationType=e.operationType}static async _fromIdTokenResponse(e,n,r,s=!1){const i=await qt._fromIdTokenResponse(e,r,s),o=md(r);return new st({user:i,providerId:o,_tokenResponse:r,operationType:n})}static async _forOperation(e,n,r){await e._updateTokensIfNecessary(r,!0);const s=md(r);return new st({user:e,providerId:s,_tokenResponse:r,operationType:n})}}function md(t){return t.providerId?t.providerId:"phoneNumber"in t?"phone":null}/**
|
|
2679
2664
|
* @license
|
|
2680
2665
|
* Copyright 2020 Google LLC
|
|
2681
2666
|
*
|
|
@@ -2690,7 +2675,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2690
2675
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2691
2676
|
* See the License for the specific language governing permissions and
|
|
2692
2677
|
* limitations under the License.
|
|
2693
|
-
*/async function
|
|
2678
|
+
*/async function Cv(t){var e;const n=je(t);if(await n._initializationPromise,!((e=n.currentUser)===null||e===void 0)&&e.isAnonymous)return new st({user:n.currentUser,providerId:null,operationType:"signIn"});const r=await pd(n,{returnSecureToken:!0}),s=await st._fromIdTokenResponse(n,"signIn",r,!0);return await n._updateCurrentUser(s.user),s}/**
|
|
2694
2679
|
* @license
|
|
2695
2680
|
* Copyright 2020 Google LLC
|
|
2696
2681
|
*
|
|
@@ -2705,7 +2690,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2705
2690
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2706
2691
|
* See the License for the specific language governing permissions and
|
|
2707
2692
|
* limitations under the License.
|
|
2708
|
-
*/class
|
|
2693
|
+
*/class ii extends be{constructor(e,n,r,s){var i;super(n.code,n.message),this.operationType=r,this.user=s,Object.setPrototypeOf(this,ii.prototype),this.customData={appName:e.name,tenantId:(i=e.tenantId)!==null&&i!==void 0?i:void 0,_serverResponse:n.customData._serverResponse,operationType:r}}static _fromErrorAndOperation(e,n,r,s){return new ii(e,n,r,s)}}function gd(t,e,n,r){return(e==="reauthenticate"?n._getReauthenticationResolver(t):n._getIdTokenResponse(t)).catch(i=>{throw i.code==="auth/multi-factor-auth-required"?ii._fromErrorAndOperation(t,i,e,r):i})}/**
|
|
2709
2694
|
* @license
|
|
2710
2695
|
* Copyright 2020 Google LLC
|
|
2711
2696
|
*
|
|
@@ -2720,7 +2705,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2720
2705
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2721
2706
|
* See the License for the specific language governing permissions and
|
|
2722
2707
|
* limitations under the License.
|
|
2723
|
-
*/function
|
|
2708
|
+
*/function _d(t){return new Set(t.map(({providerId:e})=>e).filter(e=>!!e))}/**
|
|
2724
2709
|
* @license
|
|
2725
2710
|
* Copyright 2019 Google LLC
|
|
2726
2711
|
*
|
|
@@ -2735,7 +2720,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2735
2720
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2736
2721
|
* See the License for the specific language governing permissions and
|
|
2737
2722
|
* limitations under the License.
|
|
2738
|
-
*/async function
|
|
2723
|
+
*/async function bv(t,e){const n=M(t);await Nv(!0,n,e);const{providerUserInfo:r}=await zE(n.auth,{idToken:await n.getIdToken(),deleteProvider:[e]}),s=_d(r||[]);return n.providerData=n.providerData.filter(i=>s.has(i.providerId)),s.has("phone")||(n.phoneNumber=null),await n.auth._persistUserIfCurrent(n),n}async function kv(t,e,n=!1){const r=await In(t,e._linkToIdToken(t.auth,await t.getIdToken()),n);return st._forOperation(t,"link",r)}async function Nv(t,e,n){await kr(e);const r=_d(e.providerData),s=t===!1?"provider-already-linked":"no-such-provider";w(r.has(n)===t,e.auth,s)}/**
|
|
2739
2724
|
* @license
|
|
2740
2725
|
* Copyright 2019 Google LLC
|
|
2741
2726
|
*
|
|
@@ -2750,7 +2735,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2750
2735
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2751
2736
|
* See the License for the specific language governing permissions and
|
|
2752
2737
|
* limitations under the License.
|
|
2753
|
-
*/async function
|
|
2738
|
+
*/async function Dv(t,e,n=!1){const{auth:r}=t,s="reauthenticate";try{const i=await In(t,gd(r,s,e,t),n);w(i.idToken,r,"internal-error");const o=Aa(i.idToken);w(o,r,"internal-error");const{sub:a}=o;return w(t.uid===a,r,"user-mismatch"),st._forOperation(t,s,i)}catch(i){throw(i==null?void 0:i.code)==="auth/user-not-found"&&Ce(r,"user-mismatch"),i}}/**
|
|
2754
2739
|
* @license
|
|
2755
2740
|
* Copyright 2020 Google LLC
|
|
2756
2741
|
*
|
|
@@ -2765,7 +2750,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2765
2750
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2766
2751
|
* See the License for the specific language governing permissions and
|
|
2767
2752
|
* limitations under the License.
|
|
2768
|
-
*/async function
|
|
2753
|
+
*/async function yd(t,e,n=!1){const r="signIn",s=await gd(t,r,e),i=await st._fromIdTokenResponse(t,r,s);return n||await t._updateCurrentUser(i.user),i}async function Ov(t,e){return yd(je(t),e)}/**
|
|
2769
2754
|
* @license
|
|
2770
2755
|
* Copyright 2020 Google LLC
|
|
2771
2756
|
*
|
|
@@ -2780,7 +2765,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2780
2765
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2781
2766
|
* See the License for the specific language governing permissions and
|
|
2782
2767
|
* limitations under the License.
|
|
2783
|
-
*/function
|
|
2768
|
+
*/function Ed(t,e,n){var r;w(((r=n.url)===null||r===void 0?void 0:r.length)>0,t,"invalid-continue-uri"),w(typeof n.dynamicLinkDomain>"u"||n.dynamicLinkDomain.length>0,t,"invalid-dynamic-link-domain"),e.continueUrl=n.url,e.dynamicLinkDomain=n.dynamicLinkDomain,e.canHandleCodeInApp=n.handleCodeInApp,n.iOS&&(w(n.iOS.bundleId.length>0,t,"missing-ios-bundle-id"),e.iOSBundleId=n.iOS.bundleId),n.android&&(w(n.android.packageName.length>0,t,"missing-android-pkg-name"),e.androidInstallApp=n.android.installApp,e.androidMinimumVersionCode=n.android.minimumVersion,e.androidPackageName=n.android.packageName)}/**
|
|
2784
2769
|
* @license
|
|
2785
2770
|
* Copyright 2020 Google LLC
|
|
2786
2771
|
*
|
|
@@ -2795,7 +2780,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2795
2780
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2796
2781
|
* See the License for the specific language governing permissions and
|
|
2797
2782
|
* limitations under the License.
|
|
2798
|
-
*/async function
|
|
2783
|
+
*/async function vd(t){const e=je(t);e._getPasswordPolicyInternal()&&await e._updatePasswordPolicy()}async function Vv(t,e,n){const r=je(t),s={requestType:"PASSWORD_RESET",email:e,clientType:"CLIENT_TYPE_WEB"};n&&Ed(r,s,n),await ri(r,s,"getOobCode",Iv)}async function Lv(t,e,n){const r=je(t),o=await ri(r,{returnSecureToken:!0,email:e,password:n,clientType:"CLIENT_TYPE_WEB"},"signUpPassword",pd).catch(c=>{throw c.code==="auth/password-does-not-meet-requirements"&&vd(t),c}),a=await st._fromIdTokenResponse(r,"signIn",o);return await r._updateCurrentUser(a.user),a}function Td(t,e,n){return Ov(M(t),Rn.credential(e,n)).catch(async r=>{throw r.code==="auth/password-does-not-meet-requirements"&&vd(t),r})}async function Id(t,e){const n=M(t),s={requestType:"VERIFY_EMAIL",idToken:await t.getIdToken()};e&&Ed(n.auth,s,e);const{email:i}=await Tv(n.auth,s);i!==t.email&&await t.reload()}/**
|
|
2799
2784
|
* @license
|
|
2800
2785
|
* Copyright 2020 Google LLC
|
|
2801
2786
|
*
|
|
@@ -2810,7 +2795,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2810
2795
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2811
2796
|
* See the License for the specific language governing permissions and
|
|
2812
2797
|
* limitations under the License.
|
|
2813
|
-
*/async function
|
|
2798
|
+
*/async function Mv(t,e){return De(t,"POST","/v1/accounts:update",e)}/**
|
|
2814
2799
|
* @license
|
|
2815
2800
|
* Copyright 2020 Google LLC
|
|
2816
2801
|
*
|
|
@@ -2825,7 +2810,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2825
2810
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2826
2811
|
* See the License for the specific language governing permissions and
|
|
2827
2812
|
* limitations under the License.
|
|
2828
|
-
*/async function
|
|
2813
|
+
*/async function Uv(t,{displayName:e,photoURL:n}){if(e===void 0&&n===void 0)return;const r=M(t),i={idToken:await r.getIdToken(),displayName:e,photoUrl:n,returnSecureToken:!0},o=await In(r,Mv(r.auth,i));r.displayName=o.displayName||null,r.photoURL=o.photoUrl||null;const a=r.providerData.find(({providerId:c})=>c==="password");a&&(a.displayName=r.displayName,a.photoURL=r.photoURL),await r._updateTokensIfNecessary(o)}function xv(t,e,n,r){return M(t).onIdTokenChanged(e,n,r)}function Fv(t,e,n){return M(t).beforeAuthStateChanged(e,n)}const oi="__sak";/**
|
|
2829
2814
|
* @license
|
|
2830
2815
|
* Copyright 2019 Google LLC
|
|
2831
2816
|
*
|
|
@@ -2840,7 +2825,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2840
2825
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2841
2826
|
* See the License for the specific language governing permissions and
|
|
2842
2827
|
* limitations under the License.
|
|
2843
|
-
*/class
|
|
2828
|
+
*/class wd{constructor(e,n){this.storageRetriever=e,this.type=n}_isAvailable(){try{return this.storage?(this.storage.setItem(oi,"1"),this.storage.removeItem(oi),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){const 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()}}/**
|
|
2844
2829
|
* @license
|
|
2845
2830
|
* Copyright 2020 Google LLC
|
|
2846
2831
|
*
|
|
@@ -2855,7 +2840,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2855
2840
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2856
2841
|
* See the License for the specific language governing permissions and
|
|
2857
2842
|
* limitations under the License.
|
|
2858
|
-
*/function
|
|
2843
|
+
*/function Bv(){const t=ie();return Ra(t)||ni(t)}const qv=1e3,$v=10;class Ad extends wd{constructor(){super(()=>window.localStorage,"LOCAL"),this.boundEventHandler=(e,n)=>this.onStorageEvent(e,n),this.listeners={},this.localCache={},this.pollTimer=null,this.safariLocalStorageNotSynced=Bv()&&rv(),this.fallbackToPolling=id(),this._shouldAllowMigration=!0}forAllChangedKeys(e){for(const n of Object.keys(this.listeners)){const r=this.storage.getItem(n),s=this.localCache[n];r!==s&&e(n,s,r)}}onStorageEvent(e,n=!1){if(!e.key){this.forAllChangedKeys((o,a,c)=>{this.notifyListeners(o,c)});return}const r=e.key;if(n?this.detachListener():this.stopPolling(),this.safariLocalStorageNotSynced){const 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&&!n)return}const s=()=>{const o=this.storage.getItem(r);!n&&this.localCache[r]===o||this.notifyListeners(r,o)},i=this.storage.getItem(r);nv()&&i!==e.newValue&&e.newValue!==e.oldValue?setTimeout(s,$v):s()}notifyListeners(e,n){this.localCache[e]=n;const r=this.listeners[e];if(r)for(const s of Array.from(r))s(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)})},qv)}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){const n=await super._get(e);return this.localCache[e]=JSON.stringify(n),n}async _remove(e){await super._remove(e),delete this.localCache[e]}}Ad.type="LOCAL";const jv=Ad;/**
|
|
2859
2844
|
* @license
|
|
2860
2845
|
* Copyright 2020 Google LLC
|
|
2861
2846
|
*
|
|
@@ -2870,7 +2855,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2870
2855
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2871
2856
|
* See the License for the specific language governing permissions and
|
|
2872
2857
|
* limitations under the License.
|
|
2873
|
-
*/class
|
|
2858
|
+
*/class Rd extends wd{constructor(){super(()=>window.sessionStorage,"SESSION")}_addListener(e,n){}_removeListener(e,n){}}Rd.type="SESSION";const Pd=Rd;/**
|
|
2874
2859
|
* @license
|
|
2875
2860
|
* Copyright 2019 Google LLC
|
|
2876
2861
|
*
|
|
@@ -2885,7 +2870,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2885
2870
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2886
2871
|
* See the License for the specific language governing permissions and
|
|
2887
2872
|
* limitations under the License.
|
|
2888
|
-
*/function
|
|
2873
|
+
*/function zv(t){return Promise.all(t.map(async e=>{try{return{fulfilled:!0,value:await e}}catch(n){return{fulfilled:!1,reason:n}}}))}/**
|
|
2889
2874
|
* @license
|
|
2890
2875
|
* Copyright 2019 Google LLC
|
|
2891
2876
|
*
|
|
@@ -2900,7 +2885,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2900
2885
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2901
2886
|
* See the License for the specific language governing permissions and
|
|
2902
2887
|
* limitations under the License.
|
|
2903
|
-
*/class
|
|
2888
|
+
*/class ai{constructor(e){this.eventTarget=e,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(e){const n=this.receivers.find(s=>s.isListeningto(e));if(n)return n;const r=new ai(e);return this.receivers.push(r),r}isListeningto(e){return this.eventTarget===e}async handleEvent(e){const n=e,{eventId:r,eventType:s,data:i}=n.data,o=this.handlersMap[s];if(!(o!=null&&o.size))return;n.ports[0].postMessage({status:"ack",eventId:r,eventType:s});const a=Array.from(o).map(async u=>u(n.origin,i)),c=await zv(a);n.ports[0].postMessage({status:"done",eventId:r,eventType:s,response:c})}_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)}}ai.receivers=[];/**
|
|
2904
2889
|
* @license
|
|
2905
2890
|
* Copyright 2020 Google LLC
|
|
2906
2891
|
*
|
|
@@ -2915,7 +2900,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2915
2900
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2916
2901
|
* See the License for the specific language governing permissions and
|
|
2917
2902
|
* limitations under the License.
|
|
2918
|
-
*/function
|
|
2903
|
+
*/function Ca(t="",e=10){let n="";for(let r=0;r<e;r++)n+=Math.floor(Math.random()*10);return t+n}/**
|
|
2919
2904
|
* @license
|
|
2920
2905
|
* Copyright 2019 Google LLC
|
|
2921
2906
|
*
|
|
@@ -2930,7 +2915,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2930
2915
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2931
2916
|
* See the License for the specific language governing permissions and
|
|
2932
2917
|
* limitations under the License.
|
|
2933
|
-
*/class
|
|
2918
|
+
*/class Hv{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){const s=typeof MessageChannel<"u"?new MessageChannel:null;if(!s)throw new Error("connection_unavailable");let i,o;return new Promise((a,c)=>{const u=Ca("",20);s.port1.start();const l=setTimeout(()=>{c(new Error("unsupported_event"))},r);o={messageChannel:s,onMessage(h){const d=h;if(d.data.eventId===u)switch(d.data.status){case"ack":clearTimeout(l),i=setTimeout(()=>{c(new Error("timeout"))},3e3);break;case"done":clearTimeout(i),a(d.data.response);break;default:clearTimeout(l),clearTimeout(i),c(new Error("invalid_response"));break}}},this.handlers.add(o),s.port1.addEventListener("message",o.onMessage),this.target.postMessage({eventType:e,eventId:u,data:n},[s.port2])}).finally(()=>{o&&this.removeMessageHandler(o)})}}/**
|
|
2934
2919
|
* @license
|
|
2935
2920
|
* Copyright 2020 Google LLC
|
|
2936
2921
|
*
|
|
@@ -2945,7 +2930,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2945
2930
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2946
2931
|
* See the License for the specific language governing permissions and
|
|
2947
2932
|
* limitations under the License.
|
|
2948
|
-
*/function
|
|
2933
|
+
*/function We(){return window}function Wv(t){We().location.href=t}/**
|
|
2949
2934
|
* @license
|
|
2950
2935
|
* Copyright 2020 Google LLC.
|
|
2951
2936
|
*
|
|
@@ -2960,7 +2945,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2960
2945
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2961
2946
|
* See the License for the specific language governing permissions and
|
|
2962
2947
|
* limitations under the License.
|
|
2963
|
-
*/function
|
|
2948
|
+
*/function Sd(){return typeof We().WorkerGlobalScope<"u"&&typeof We().importScripts=="function"}async function Gv(){if(!(navigator!=null&&navigator.serviceWorker))return null;try{return(await navigator.serviceWorker.ready).active}catch{return null}}function Kv(){var t;return((t=navigator==null?void 0:navigator.serviceWorker)===null||t===void 0?void 0:t.controller)||null}function Qv(){return Sd()?self:null}/**
|
|
2964
2949
|
* @license
|
|
2965
2950
|
* Copyright 2019 Google LLC
|
|
2966
2951
|
*
|
|
@@ -2975,7 +2960,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2975
2960
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2976
2961
|
* See the License for the specific language governing permissions and
|
|
2977
2962
|
* limitations under the License.
|
|
2978
|
-
*/const
|
|
2963
|
+
*/const Cd="firebaseLocalStorageDb",Yv=1,ci="firebaseLocalStorage",bd="fbase_key";class Vr{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 ui(t,e){return t.transaction([ci],e?"readwrite":"readonly").objectStore(ci)}function Xv(){const t=indexedDB.deleteDatabase(Cd);return new Vr(t).toPromise()}function ba(){const t=indexedDB.open(Cd,Yv);return new Promise((e,n)=>{t.addEventListener("error",()=>{n(t.error)}),t.addEventListener("upgradeneeded",()=>{const r=t.result;try{r.createObjectStore(ci,{keyPath:bd})}catch(s){n(s)}}),t.addEventListener("success",async()=>{const r=t.result;r.objectStoreNames.contains(ci)?e(r):(r.close(),await Xv(),e(await ba()))})})}async function kd(t,e,n){const r=ui(t,!0).put({[bd]:e,value:n});return new Vr(r).toPromise()}async function Jv(t,e){const n=ui(t,!1).get(e),r=await new Vr(n).toPromise();return r===void 0?null:r.value}function Nd(t,e){const n=ui(t,!0).delete(e);return new Vr(n).toPromise()}const Zv=800,eT=3;class Dd{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 ba(),this.db)}async _withRetries(e){let n=0;for(;;)try{const r=await this._openDb();return await e(r)}catch(r){if(n++>eT)throw r;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return Sd()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=ai._getInstance(Qv()),this.receiver._subscribe("keyChanged",async(e,n)=>({keyProcessed:(await this._poll()).includes(n.key)})),this.receiver._subscribe("ping",async(e,n)=>["keyChanged"])}async initializeSender(){var e,n;if(this.activeServiceWorker=await Gv(),!this.activeServiceWorker)return;this.sender=new Hv(this.activeServiceWorker);const r=await this.sender._send("ping",{},800);r&&!((e=r[0])===null||e===void 0)&&e.fulfilled&&!((n=r[0])===null||n===void 0)&&n.value.includes("keyChanged")&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(e){if(!(!this.sender||!this.activeServiceWorker||Kv()!==this.activeServiceWorker))try{await this.sender._send("keyChanged",{key:e},this.serviceWorkerReceiverAvailable?800:50)}catch{}}async _isAvailable(){try{if(!indexedDB)return!1;const e=await ba();return await kd(e,oi,"1"),await Nd(e,oi),!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=>kd(r,e,n)),this.localCache[e]=n,this.notifyServiceWorker(e)))}async _get(e){const n=await this._withRetries(r=>Jv(r,e));return this.localCache[e]=n,n}async _remove(e){return this._withPendingWrite(async()=>(await this._withRetries(n=>Nd(n,e)),delete this.localCache[e],this.notifyServiceWorker(e)))}async _poll(){const e=await this._withRetries(s=>{const i=ui(s,!1).getAll();return new Vr(i).toPromise()});if(!e)return[];if(this.pendingWrites!==0)return[];const n=[],r=new Set;for(const{fbase_key:s,value:i}of e)r.add(s),JSON.stringify(this.localCache[s])!==JSON.stringify(i)&&(this.notifyListeners(s,i),n.push(s));for(const s of Object.keys(this.localCache))this.localCache[s]&&!r.has(s)&&(this.notifyListeners(s,null),n.push(s));return n}notifyListeners(e,n){this.localCache[e]=n;const r=this.listeners[e];if(r)for(const s of Array.from(r))s(n)}startPolling(){this.stopPolling(),this.pollTimer=setInterval(async()=>this._poll(),Zv)}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()}}Dd.type="LOCAL";const tT=Dd;new Sr(3e4,6e4);/**
|
|
2979
2964
|
* @license
|
|
2980
2965
|
* Copyright 2021 Google LLC
|
|
2981
2966
|
*
|
|
@@ -2990,7 +2975,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
2990
2975
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2991
2976
|
* See the License for the specific language governing permissions and
|
|
2992
2977
|
* limitations under the License.
|
|
2993
|
-
*/function
|
|
2978
|
+
*/function ka(t,e){return e?rt(e):(w(t._popupRedirectResolver,t,"argument-error"),t._popupRedirectResolver)}/**
|
|
2994
2979
|
* @license
|
|
2995
2980
|
* Copyright 2019 Google LLC
|
|
2996
2981
|
*
|
|
@@ -3005,7 +2990,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3005
2990
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3006
2991
|
* See the License for the specific language governing permissions and
|
|
3007
2992
|
* limitations under the License.
|
|
3008
|
-
*/class
|
|
2993
|
+
*/class Na extends Pa{constructor(e){super("custom","custom"),this.params=e}_getIdTokenResponse(e){return An(e,this._buildIdpRequest())}_linkToIdToken(e,n){return An(e,this._buildIdpRequest(n))}_getReauthenticationResolver(e){return An(e,this._buildIdpRequest())}_buildIdpRequest(e){const 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 nT(t){return yd(t.auth,new Na(t),t.bypassAuthState)}function rT(t){const{auth:e,user:n}=t;return w(n,e,"internal-error"),Dv(n,new Na(t),t.bypassAuthState)}async function sT(t){const{auth:e,user:n}=t;return w(n,e,"internal-error"),kv(n,new Na(t),t.bypassAuthState)}/**
|
|
3009
2994
|
* @license
|
|
3010
2995
|
* Copyright 2020 Google LLC
|
|
3011
2996
|
*
|
|
@@ -3020,7 +3005,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3020
3005
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3021
3006
|
* See the License for the specific language governing permissions and
|
|
3022
3007
|
* limitations under the License.
|
|
3023
|
-
*/class
|
|
3008
|
+
*/class Od{constructor(e,n,r,s,i=!1){this.auth=e,this.resolver=r,this.user=s,this.bypassAuthState=i,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){const{urlResponse:n,sessionId:r,postBody:s,tenantId:i,error:o,type:a}=e;if(o){this.reject(o);return}const c={auth:this.auth,requestUri:n,sessionId:r,tenantId:i||void 0,postBody:s||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(a)(c))}catch(u){this.reject(u)}}onError(e){this.reject(e)}getIdpTask(e){switch(e){case"signInViaPopup":case"signInViaRedirect":return nT;case"linkViaPopup":case"linkViaRedirect":return sT;case"reauthViaPopup":case"reauthViaRedirect":return rT;default:Ce(this.auth,"internal-error")}}resolve(e){tt(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(e),this.unregisterAndCleanUp()}reject(e){tt(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()}}/**
|
|
3024
3009
|
* @license
|
|
3025
3010
|
* Copyright 2020 Google LLC
|
|
3026
3011
|
*
|
|
@@ -3035,7 +3020,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3035
3020
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3036
3021
|
* See the License for the specific language governing permissions and
|
|
3037
3022
|
* limitations under the License.
|
|
3038
|
-
*/const
|
|
3023
|
+
*/const iT=new Sr(2e3,1e4);async function Da(t,e,n){const r=je(t);$h(t,e,si);const s=ka(r,n);return new wt(r,"signInViaPopup",e,s).executeNotNull()}async function Vd(t,e,n){const r=M(t);$h(r.auth,e,si);const s=ka(r.auth,n);return new wt(r.auth,"linkViaPopup",e,s,r).executeNotNull()}class wt extends Od{constructor(e,n,r,s,i){super(e,n,s,i),this.provider=r,this.authWindow=null,this.pollId=null,wt.currentPopupAction&&wt.currentPopupAction.cancel(),wt.currentPopupAction=this}async executeNotNull(){const e=await this.execute();return w(e,this.auth,"internal-error"),e}async onExecution(){tt(this.filter.length===1,"Popup operations only handle one event");const e=Ca();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($e(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($e(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,wt.currentPopupAction=null}pollUserCancellation(){const e=()=>{var n,r;if(!((r=(n=this.authWindow)===null||n===void 0?void 0:n.window)===null||r===void 0)&&r.closed){this.pollId=window.setTimeout(()=>{this.pollId=null,this.reject($e(this.auth,"popup-closed-by-user"))},8e3);return}this.pollId=window.setTimeout(e,iT.get())};e()}}wt.currentPopupAction=null;/**
|
|
3039
3024
|
* @license
|
|
3040
3025
|
* Copyright 2020 Google LLC
|
|
3041
3026
|
*
|
|
@@ -3050,7 +3035,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3050
3035
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3051
3036
|
* See the License for the specific language governing permissions and
|
|
3052
3037
|
* limitations under the License.
|
|
3053
|
-
*/const
|
|
3038
|
+
*/const oT="pendingRedirect",li=new Map;class aT extends Od{constructor(e,n,r=!1){super(e,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],n,void 0,r),this.eventId=null}async execute(){let e=li.get(this.auth._key());if(!e){try{const r=await cT(this.resolver,this.auth)?await super.execute():null;e=()=>Promise.resolve(r)}catch(n){e=()=>Promise.reject(n)}li.set(this.auth._key(),e)}return this.bypassAuthState||li.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){const n=await this.auth._redirectUserForId(e.eventId);if(n)return this.user=n,super.onAuthEvent(e);this.resolve(null)}}async onExecution(){}cleanUp(){}}async function cT(t,e){const n=hT(e),r=lT(t);if(!await r._isAvailable())return!1;const s=await r._get(n)==="true";return await r._remove(n),s}function uT(t,e){li.set(t._key(),e)}function lT(t){return rt(t._redirectPersistence)}function hT(t){return ti(oT,t.config.apiKey,t.name)}async function dT(t,e,n=!1){const r=je(t),s=ka(r,e),o=await new aT(r,s,n).execute();return o&&!n&&(delete o.user._redirectEventId,await r._persistUserIfCurrent(o.user),await r._setRedirectUser(null,e)),o}/**
|
|
3054
3039
|
* @license
|
|
3055
3040
|
* Copyright 2020 Google LLC
|
|
3056
3041
|
*
|
|
@@ -3065,7 +3050,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3065
3050
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3066
3051
|
* See the License for the specific language governing permissions and
|
|
3067
3052
|
* limitations under the License.
|
|
3068
|
-
*/const
|
|
3053
|
+
*/const fT=10*60*1e3;class pT{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||!mT(e)||(this.hasHandledPotentialRedirect=!0,n||(this.queuedRedirectEvent=e,n=!0)),n}sendToConsumer(e,n){var r;if(e.error&&!Md(e)){const s=((r=e.error.code)===null||r===void 0?void 0:r.split("auth/")[1])||"internal-error";n.onError($e(this.auth,s))}else n.onAuthEvent(e)}isEventForConsumer(e,n){const r=n.eventId===null||!!e.eventId&&e.eventId===n.eventId;return n.filter.includes(e.type)&&r}hasEventBeenHandled(e){return Date.now()-this.lastProcessedEventTime>=fT&&this.cachedEventUids.clear(),this.cachedEventUids.has(Ld(e))}saveEventToCache(e){this.cachedEventUids.add(Ld(e)),this.lastProcessedEventTime=Date.now()}}function Ld(t){return[t.type,t.eventId,t.sessionId,t.tenantId].filter(e=>e).join("-")}function Md({type:t,error:e}){return t==="unknown"&&(e==null?void 0:e.code)==="auth/no-auth-event"}function mT(t){switch(t.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return Md(t);default:return!1}}/**
|
|
3069
3054
|
* @license
|
|
3070
3055
|
* Copyright 2020 Google LLC
|
|
3071
3056
|
*
|
|
@@ -3080,7 +3065,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3080
3065
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3081
3066
|
* See the License for the specific language governing permissions and
|
|
3082
3067
|
* limitations under the License.
|
|
3083
|
-
*/async function
|
|
3068
|
+
*/async function gT(t,e={}){return De(t,"GET","/v1/projects",e)}/**
|
|
3084
3069
|
* @license
|
|
3085
3070
|
* Copyright 2020 Google LLC
|
|
3086
3071
|
*
|
|
@@ -3095,7 +3080,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3095
3080
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3096
3081
|
* See the License for the specific language governing permissions and
|
|
3097
3082
|
* limitations under the License.
|
|
3098
|
-
*/const
|
|
3083
|
+
*/const _T=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,yT=/^https?/;async function ET(t){if(t.config.emulator)return;const{authorizedDomains:e}=await gT(t);for(const n of e)try{if(vT(n))return}catch{}Ce(t,"unauthorized-domain")}function vT(t){const e=Ta(),{protocol:n,hostname:r}=new URL(e);if(t.startsWith("chrome-extension://")){const 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(!yT.test(n))return!1;if(_T.test(t))return r===t;const s=t.replace(/\./g,"\\.");return new RegExp("^(.+\\."+s+"|"+s+")$","i").test(r)}/**
|
|
3099
3084
|
* @license
|
|
3100
3085
|
* Copyright 2020 Google LLC.
|
|
3101
3086
|
*
|
|
@@ -3110,7 +3095,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3110
3095
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3111
3096
|
* See the License for the specific language governing permissions and
|
|
3112
3097
|
* limitations under the License.
|
|
3113
|
-
*/const
|
|
3098
|
+
*/const TT=new Sr(3e4,6e4);function Ud(){const t=We().___jsl;if(t!=null&&t.H){for(const e of Object.keys(t.H))if(t.H[e].r=t.H[e].r||[],t.H[e].L=t.H[e].L||[],t.H[e].r=[...t.H[e].L],t.CP)for(let n=0;n<t.CP.length;n++)t.CP[n]=null}}function IT(t){return new Promise((e,n)=>{var r,s,i;function o(){Ud(),gapi.load("gapi.iframes",{callback:()=>{e(gapi.iframes.getContext())},ontimeout:()=>{Ud(),n($e(t,"network-request-failed"))},timeout:TT.get()})}if(!((s=(r=We().gapi)===null||r===void 0?void 0:r.iframes)===null||s===void 0)&&s.Iframe)e(gapi.iframes.getContext());else if(!((i=We().gapi)===null||i===void 0)&&i.load)o();else{const a=lv("iframefcb");return We()[a]=()=>{gapi.load?o():n($e(t,"network-request-failed"))},cd(`https://apis.google.com/js/api.js?onload=${a}`).catch(c=>n(c))}}).catch(e=>{throw hi=null,e})}let hi=null;function wT(t){return hi=hi||IT(t),hi}/**
|
|
3114
3099
|
* @license
|
|
3115
3100
|
* Copyright 2020 Google LLC.
|
|
3116
3101
|
*
|
|
@@ -3125,7 +3110,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3125
3110
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3126
3111
|
* See the License for the specific language governing permissions and
|
|
3127
3112
|
* limitations under the License.
|
|
3128
|
-
*/const
|
|
3113
|
+
*/const AT=new Sr(5e3,15e3),RT="__/auth/iframe",PT="emulator/auth/iframe",ST={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"},"aria-hidden":"true",tabindex:"-1"},CT=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function bT(t){const e=t.config;w(e.authDomain,t,"auth-domain-config-required");const n=e.emulator?Ia(e,PT):`https://${t.config.authDomain}/${RT}`,r={apiKey:e.apiKey,appName:t.name,v:Ct},s=CT.get(t.config.apiHost);s&&(r.eid=s);const i=t._getFrameworks();return i.length&&(r.fw=i.join(",")),`${n}?${Nn(r).slice(1)}`}async function kT(t){const e=await wT(t),n=We().gapi;return w(n,t,"internal-error"),e.open({where:document.body,url:bT(t),messageHandlersFilter:n.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:ST,dontclear:!0},r=>new Promise(async(s,i)=>{await r.restyle({setHideOnLeave:!1});const o=$e(t,"network-request-failed"),a=We().setTimeout(()=>{i(o)},AT.get());function c(){We().clearTimeout(a),s(r)}r.ping(c).then(c,()=>{i(o)})}))}/**
|
|
3129
3114
|
* @license
|
|
3130
3115
|
* Copyright 2020 Google LLC.
|
|
3131
3116
|
*
|
|
@@ -3140,7 +3125,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3140
3125
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3141
3126
|
* See the License for the specific language governing permissions and
|
|
3142
3127
|
* limitations under the License.
|
|
3143
|
-
*/const
|
|
3128
|
+
*/const NT={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"},DT=500,OT=600,VT="_blank",LT="http://localhost";class xd{constructor(e){this.window=e,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch{}}}function MT(t,e,n,r=DT,s=OT){const i=Math.max((window.screen.availHeight-s)/2,0).toString(),o=Math.max((window.screen.availWidth-r)/2,0).toString();let a="";const c=Object.assign(Object.assign({},NT),{width:r.toString(),height:s.toString(),top:i,left:o}),u=ie().toLowerCase();n&&(a=ed(u)?VT:n),Zh(u)&&(e=e||LT,c.scrollbars="yes");const l=Object.entries(c).reduce((d,[f,E])=>`${d}${f}=${E},`,"");if(tv(u)&&a!=="_self")return UT(e||"",a),new xd(null);const h=window.open(e||"",a,l);w(h,t,"popup-blocked");try{h.focus()}catch{}return new xd(h)}function UT(t,e){const n=document.createElement("a");n.href=t,n.target=e;const r=document.createEvent("MouseEvent");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),n.dispatchEvent(r)}/**
|
|
3144
3129
|
* @license
|
|
3145
3130
|
* Copyright 2021 Google LLC
|
|
3146
3131
|
*
|
|
@@ -3155,7 +3140,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3155
3140
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3156
3141
|
* See the License for the specific language governing permissions and
|
|
3157
3142
|
* limitations under the License.
|
|
3158
|
-
*/const
|
|
3143
|
+
*/const xT="__/auth/handler",FT="emulator/auth/handler",BT=encodeURIComponent("fac");async function Fd(t,e,n,r,s,i){w(t.config.authDomain,t,"auth-domain-config-required"),w(t.config.apiKey,t,"invalid-api-key");const o={apiKey:t.config.apiKey,appName:t.name,authType:n,redirectUrl:r,v:Ct,eventId:s};if(e instanceof si){e.setDefaultLanguage(t.languageCode),o.providerId=e.providerId||"",Bf(e.getCustomParameters())||(o.customParameters=JSON.stringify(e.getCustomParameters()));for(const[l,h]of Object.entries(i||{}))o[l]=h}if(e instanceof Or){const l=e.getScopes().filter(h=>h!=="");l.length>0&&(o.scopes=l.join(","))}t.tenantId&&(o.tid=t.tenantId);const a=o;for(const l of Object.keys(a))a[l]===void 0&&delete a[l];const c=await t._getAppCheckToken(),u=c?`#${BT}=${encodeURIComponent(c)}`:"";return`${qT(t)}?${Nn(a).slice(1)}${u}`}function qT({config:t}){return t.emulator?Ia(t,FT):`https://${t.authDomain}/${xT}`}/**
|
|
3159
3144
|
* @license
|
|
3160
3145
|
* Copyright 2020 Google LLC
|
|
3161
3146
|
*
|
|
@@ -3170,7 +3155,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3170
3155
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3171
3156
|
* See the License for the specific language governing permissions and
|
|
3172
3157
|
* limitations under the License.
|
|
3173
|
-
*/const
|
|
3158
|
+
*/const Oa="webStorageSupport";class $T{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=Pd,this._completeRedirectFn=dT,this._overrideRedirectResult=uT}async _openPopup(e,n,r,s){var i;tt((i=this.eventManagers[e._key()])===null||i===void 0?void 0:i.manager,"_initialize() not called before _openPopup()");const o=await Fd(e,n,r,Ta(),s);return MT(e,o,Ca())}async _openRedirect(e,n,r,s){await this._originValidation(e);const i=await Fd(e,n,r,Ta(),s);return Wv(i),new Promise(()=>{})}_initialize(e){const n=e._key();if(this.eventManagers[n]){const{manager:s,promise:i}=this.eventManagers[n];return s?Promise.resolve(s):(tt(i,"If manager is not set, promise should be"),i)}const r=this.initAndGetManager(e);return this.eventManagers[n]={promise:r},r.catch(()=>{delete this.eventManagers[n]}),r}async initAndGetManager(e){const n=await kT(e),r=new pT(e);return n.register("authEvent",s=>(w(s==null?void 0:s.authEvent,e,"invalid-auth-event"),{status:r.onEvent(s.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(Oa,{type:Oa},s=>{var i;const o=(i=s==null?void 0:s[0])===null||i===void 0?void 0:i[Oa];o!==void 0&&n(!!o),Ce(e,"internal-error")},gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(e){const n=e._key();return this.originValidationPromises[n]||(this.originValidationPromises[n]=ET(e)),this.originValidationPromises[n]}get _shouldInitProactively(){return id()||Ra()||ni()}}const jT=$T;var Bd="@firebase/auth",qd="1.4.0";/**
|
|
3174
3159
|
* @license
|
|
3175
3160
|
* Copyright 2020 Google LLC
|
|
3176
3161
|
*
|
|
@@ -3185,7 +3170,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3185
3170
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3186
3171
|
* See the License for the specific language governing permissions and
|
|
3187
3172
|
* limitations under the License.
|
|
3188
|
-
*/class
|
|
3173
|
+
*/class zT{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;const n=this.auth.onIdTokenChanged(r=>{e((r==null?void 0:r.stsTokenManager.accessToken)||null)});this.internalListeners.set(e,n),this.updateProactiveRefresh()}removeAuthTokenListener(e){this.assertAuthConfigured();const n=this.internalListeners.get(e);n&&(this.internalListeners.delete(e),n(),this.updateProactiveRefresh())}assertAuthConfigured(){w(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}}/**
|
|
3189
3174
|
* @license
|
|
3190
3175
|
* Copyright 2020 Google LLC
|
|
3191
3176
|
*
|
|
@@ -3200,7 +3185,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3200
3185
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3201
3186
|
* See the License for the specific language governing permissions and
|
|
3202
3187
|
* limitations under the License.
|
|
3203
|
-
*/function
|
|
3188
|
+
*/function HT(t){switch(t){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}function WT(t){ut(new Ke("auth",(e,{options:n})=>{const r=e.getProvider("app").getImmediate(),s=e.getProvider("heartbeat"),i=e.getProvider("app-check-internal"),{apiKey:o,authDomain:a}=r.options;w(o&&!o.includes(":"),"invalid-api-key",{appName:r.name});const c={apiKey:o,authDomain:a,clientPlatform:t,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:od(t)},u=new cv(r,s,i,c);return gv(u,n),u},"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback((e,n,r)=>{e.getProvider("auth-internal").initialize()})),ut(new Ke("auth-internal",e=>{const n=je(e.getProvider("auth").getImmediate());return(r=>new zT(r))(n)},"PRIVATE").setInstantiationMode("EXPLICIT")),Ae(Bd,qd,HT(t)),Ae(Bd,qd,"esm2017")}/**
|
|
3204
3189
|
* @license
|
|
3205
3190
|
* Copyright 2021 Google LLC
|
|
3206
3191
|
*
|
|
@@ -3215,7 +3200,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3215
3200
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3216
3201
|
* See the License for the specific language governing permissions and
|
|
3217
3202
|
* limitations under the License.
|
|
3218
|
-
*/const
|
|
3203
|
+
*/const GT=5*60,KT=Za("authIdTokenMaxAge")||GT;let $d=null;const QT=t=>async e=>{const n=e&&await e.getIdTokenResult(),r=n&&(new Date().getTime()-Date.parse(n.issuedAtTime))/1e3;if(r&&r>KT)return;const s=n==null?void 0:n.token;$d!==s&&($d=s,await fetch(t,{method:s?"POST":"DELETE",headers:s?{Authorization:`Bearer ${s}`}:{}}))};function YT(t=$r()){const e=Vn(t,"auth");if(e.isInitialized())return e.getImmediate();const n=mv(t,{popupRedirectResolver:jT,persistence:[tT,jv,Pd]}),r=Za("authTokenSyncURL");if(r){const i=QT(r);Fv(n,i,()=>i(n.currentUser)),xv(n,o=>i(o))}const s=Xa("auth");return s&&ld(n,`http://${s}`),n}WT("Browser");/**
|
|
3219
3204
|
* @license
|
|
3220
3205
|
* Copyright 2017 Google LLC
|
|
3221
3206
|
*
|
|
@@ -3230,7 +3215,7 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3230
3215
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3231
3216
|
* See the License for the specific language governing permissions and
|
|
3232
3217
|
* limitations under the License.
|
|
3233
|
-
*/const
|
|
3218
|
+
*/const jd="firebasestorage.googleapis.com",zd="storageBucket",XT=2*60*1e3,JT=10*60*1e3,ZT=1e3;/**
|
|
3234
3219
|
* @license
|
|
3235
3220
|
* Copyright 2017 Google LLC
|
|
3236
3221
|
*
|
|
@@ -3245,8 +3230,8 @@ This typically indicates that your device does not have a healthy Internet conne
|
|
|
3245
3230
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3246
3231
|
* See the License for the specific language governing permissions and
|
|
3247
3232
|
* limitations under the License.
|
|
3248
|
-
*/class z extends
|
|
3249
|
-
${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(function(t){t.UNKNOWN="unknown",t.OBJECT_NOT_FOUND="object-not-found",t.BUCKET_NOT_FOUND="bucket-not-found",t.PROJECT_NOT_FOUND="project-not-found",t.QUOTA_EXCEEDED="quota-exceeded",t.UNAUTHENTICATED="unauthenticated",t.UNAUTHORIZED="unauthorized",t.UNAUTHORIZED_APP="unauthorized-app",t.RETRY_LIMIT_EXCEEDED="retry-limit-exceeded",t.INVALID_CHECKSUM="invalid-checksum",t.CANCELED="canceled",t.INVALID_EVENT_NAME="invalid-event-name",t.INVALID_URL="invalid-url",t.INVALID_DEFAULT_BUCKET="invalid-default-bucket",t.NO_DEFAULT_BUCKET="no-default-bucket",t.CANNOT_SLICE_BLOB="cannot-slice-blob",t.SERVER_FILE_WRONG_SIZE="server-file-wrong-size",t.NO_DOWNLOAD_URL="no-download-url",t.INVALID_ARGUMENT="invalid-argument",t.INVALID_ARGUMENT_COUNT="invalid-argument-count",t.APP_DELETED="app-deleted",t.INVALID_ROOT_OPERATION="invalid-root-operation",t.INVALID_FORMAT="invalid-format",t.INTERNAL_ERROR="internal-error",t.UNSUPPORTED_ENVIRONMENT="unsupported-environment"})($||($={}));function
|
|
3233
|
+
*/class z extends be{constructor(e,n,r=0){super(Va(e),`Firebase Storage: ${n} (${Va(e)})`),this.status_=r,this.customData={serverResponse:null},this._baseMessage=this.message,Object.setPrototypeOf(this,z.prototype)}get status(){return this.status_}set status(e){this.status_=e}_codeEquals(e){return Va(e)===this.code}get serverResponse(){return this.customData.serverResponse}set serverResponse(e){this.customData.serverResponse=e,this.customData.serverResponse?this.message=`${this._baseMessage}
|
|
3234
|
+
${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(function(t){t.UNKNOWN="unknown",t.OBJECT_NOT_FOUND="object-not-found",t.BUCKET_NOT_FOUND="bucket-not-found",t.PROJECT_NOT_FOUND="project-not-found",t.QUOTA_EXCEEDED="quota-exceeded",t.UNAUTHENTICATED="unauthenticated",t.UNAUTHORIZED="unauthorized",t.UNAUTHORIZED_APP="unauthorized-app",t.RETRY_LIMIT_EXCEEDED="retry-limit-exceeded",t.INVALID_CHECKSUM="invalid-checksum",t.CANCELED="canceled",t.INVALID_EVENT_NAME="invalid-event-name",t.INVALID_URL="invalid-url",t.INVALID_DEFAULT_BUCKET="invalid-default-bucket",t.NO_DEFAULT_BUCKET="no-default-bucket",t.CANNOT_SLICE_BLOB="cannot-slice-blob",t.SERVER_FILE_WRONG_SIZE="server-file-wrong-size",t.NO_DOWNLOAD_URL="no-download-url",t.INVALID_ARGUMENT="invalid-argument",t.INVALID_ARGUMENT_COUNT="invalid-argument-count",t.APP_DELETED="app-deleted",t.INVALID_ROOT_OPERATION="invalid-root-operation",t.INVALID_FORMAT="invalid-format",t.INTERNAL_ERROR="internal-error",t.UNSUPPORTED_ENVIRONMENT="unsupported-environment"})($||($={}));function Va(t){return"storage/"+t}function La(){const t="An unknown error occurred, please check the error payload for server response.";return new z($.UNKNOWN,t)}function eI(t){return new z($.OBJECT_NOT_FOUND,"Object '"+t+"' does not exist.")}function tI(t){return new z($.QUOTA_EXCEEDED,"Quota for bucket '"+t+"' exceeded, please view quota on https://firebase.google.com/pricing/.")}function nI(){const t="User is not authenticated, please authenticate using Firebase Authentication and try again.";return new z($.UNAUTHENTICATED,t)}function rI(){return new z($.UNAUTHORIZED_APP,"This app does not have permission to access Firebase Storage on this project.")}function sI(t){return new z($.UNAUTHORIZED,"User does not have permission to access '"+t+"'.")}function Hd(){return new z($.RETRY_LIMIT_EXCEEDED,"Max retry time for operation exceeded, please try again.")}function Wd(){return new z($.CANCELED,"User canceled the upload/download.")}function iI(t){return new z($.INVALID_URL,"Invalid URL '"+t+"'.")}function oI(t){return new z($.INVALID_DEFAULT_BUCKET,"Invalid default bucket '"+t+"'.")}function aI(){return new z($.NO_DEFAULT_BUCKET,"No default bucket found. Did you set the '"+zd+"' property when initializing the app?")}function Gd(){return new z($.CANNOT_SLICE_BLOB,"Cannot slice blob for upload. Please retry the upload.")}function cI(){return new z($.SERVER_FILE_WRONG_SIZE,"Server recorded incorrect upload file size, please retry the upload.")}function uI(){return new z($.NO_DOWNLOAD_URL,"The given file does not have any download URLs.")}function lI(t){return new z($.UNSUPPORTED_ENVIRONMENT,`${t} is missing. Make sure to install the required polyfills. See https://firebase.google.com/docs/web/environments-js-sdk#polyfills for more information.`)}function Ma(t){return new z($.INVALID_ARGUMENT,t)}function Kd(){return new z($.APP_DELETED,"The Firebase app was deleted.")}function hI(t){return new z($.INVALID_ROOT_OPERATION,"The operation '"+t+"' cannot be performed on a root reference, create a non-root reference using child, such as .child('file.png').")}function Lr(t,e){return new z($.INVALID_FORMAT,"String does not match format '"+t+"': "+e)}function Mr(t){throw new z($.INTERNAL_ERROR,"Internal error: "+t)}/**
|
|
3250
3235
|
* @license
|
|
3251
3236
|
* Copyright 2017 Google LLC
|
|
3252
3237
|
*
|
|
@@ -3261,7 +3246,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3261
3246
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3262
3247
|
* See the License for the specific language governing permissions and
|
|
3263
3248
|
* limitations under the License.
|
|
3264
|
-
*/class
|
|
3249
|
+
*/class we{constructor(e,n){this.bucket=e,this.path_=n}get path(){return this.path_}get isRoot(){return this.path.length===0}fullServerUrl(){const e=encodeURIComponent;return"/b/"+e(this.bucket)+"/o/"+e(this.path)}bucketOnlyServerUrl(){return"/b/"+encodeURIComponent(this.bucket)+"/o"}static makeFromBucketSpec(e,n){let r;try{r=we.makeFromUrl(e,n)}catch{return new we(e,"")}if(r.path==="")return r;throw oI(e)}static makeFromUrl(e,n){let r=null;const s="([A-Za-z0-9.\\-_]+)";function i(U){U.path.charAt(U.path.length-1)==="/"&&(U.path_=U.path_.slice(0,-1))}const o="(/(.*))?$",a=new RegExp("^gs://"+s+o,"i"),c={bucket:1,path:3};function u(U){U.path_=decodeURIComponent(U.path)}const l="v[A-Za-z0-9_]+",h=n.replace(/[.]/g,"\\."),d="(/([^?#]*).*)?$",f=new RegExp(`^https?://${h}/${l}/b/${s}/o${d}`,"i"),E={bucket:1,path:3},v=n===jd?"(?:storage.googleapis.com|storage.cloud.google.com)":n,g="([^?#]*)",k=new RegExp(`^https?://${v}/${s}/${g}`,"i"),b=[{regex:a,indices:c,postModify:i},{regex:f,indices:E,postModify:u},{regex:k,indices:{bucket:1,path:2},postModify:u}];for(let U=0;U<b.length;U++){const me=b[U],de=me.regex.exec(e);if(de){const ot=de[me.indices.bucket];let Rt=de[me.indices.path];Rt||(Rt=""),r=new we(ot,Rt),me.postModify(r);break}}if(r==null)throw iI(e);return r}}class dI{constructor(e){this.promise_=Promise.reject(e)}getPromise(){return this.promise_}cancel(e=!1){}}/**
|
|
3265
3250
|
* @license
|
|
3266
3251
|
* Copyright 2017 Google LLC
|
|
3267
3252
|
*
|
|
@@ -3276,7 +3261,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3276
3261
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3277
3262
|
* See the License for the specific language governing permissions and
|
|
3278
3263
|
* limitations under the License.
|
|
3279
|
-
*/function
|
|
3264
|
+
*/function fI(t,e,n){let r=1,s=null,i=null,o=!1,a=0;function c(){return a===2}let u=!1;function l(...g){u||(u=!0,e.apply(null,g))}function h(g){s=setTimeout(()=>{s=null,t(f,c())},g)}function d(){i&&clearTimeout(i)}function f(g,...k){if(u){d();return}if(g){d(),l.call(null,g,...k);return}if(c()||o){d(),l.call(null,g,...k);return}r<64&&(r*=2);let b;a===1?(a=2,b=0):b=(r+Math.random())*1e3,h(b)}let E=!1;function v(g){E||(E=!0,d(),!u&&(s!==null?(g||(a=2),clearTimeout(s),h(0)):g||(a=1)))}return h(0),i=setTimeout(()=>{o=!0,v(!0)},n),v}function pI(t){t(!1)}/**
|
|
3280
3265
|
* @license
|
|
3281
3266
|
* Copyright 2017 Google LLC
|
|
3282
3267
|
*
|
|
@@ -3291,7 +3276,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3291
3276
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3292
3277
|
* See the License for the specific language governing permissions and
|
|
3293
3278
|
* limitations under the License.
|
|
3294
|
-
*/function
|
|
3279
|
+
*/function mI(t){return t!==void 0}function gI(t){return typeof t=="function"}function _I(t){return typeof t=="object"&&!Array.isArray(t)}function di(t){return typeof t=="string"||t instanceof String}function Qd(t){return Ua()&&t instanceof Blob}function Ua(){return typeof Blob<"u"&&!Nf()}function Yd(t,e,n,r){if(r<e)throw Ma(`Invalid value for '${t}'. Expected ${e} or greater.`);if(r>n)throw Ma(`Invalid value for '${t}'. Expected ${n} or less.`)}/**
|
|
3295
3280
|
* @license
|
|
3296
3281
|
* Copyright 2017 Google LLC
|
|
3297
3282
|
*
|
|
@@ -3306,7 +3291,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3306
3291
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3307
3292
|
* See the License for the specific language governing permissions and
|
|
3308
3293
|
* limitations under the License.
|
|
3309
|
-
*/function
|
|
3294
|
+
*/function Pn(t,e,n){let r=e;return n==null&&(r=`https://${e}`),`${n}://${r}/v0${t}`}function Xd(t){const e=encodeURIComponent;let n="?";for(const r in t)if(t.hasOwnProperty(r)){const s=e(r)+"="+e(t[r]);n=n+s+"&"}return n=n.slice(0,-1),n}/**
|
|
3310
3295
|
* @license
|
|
3311
3296
|
* Copyright 2017 Google LLC
|
|
3312
3297
|
*
|
|
@@ -3321,7 +3306,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3321
3306
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3322
3307
|
* See the License for the specific language governing permissions and
|
|
3323
3308
|
* limitations under the License.
|
|
3324
|
-
*/var
|
|
3309
|
+
*/var jt;(function(t){t[t.NO_ERROR=0]="NO_ERROR",t[t.NETWORK_ERROR=1]="NETWORK_ERROR",t[t.ABORT=2]="ABORT"})(jt||(jt={}));/**
|
|
3325
3310
|
* @license
|
|
3326
3311
|
* Copyright 2022 Google LLC
|
|
3327
3312
|
*
|
|
@@ -3336,7 +3321,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3336
3321
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3337
3322
|
* See the License for the specific language governing permissions and
|
|
3338
3323
|
* limitations under the License.
|
|
3339
|
-
*/function
|
|
3324
|
+
*/function Jd(t,e){const n=t>=500&&t<600,s=[408,429].indexOf(t)!==-1,i=e.indexOf(t)!==-1;return n||s||i}/**
|
|
3340
3325
|
* @license
|
|
3341
3326
|
* Copyright 2017 Google LLC
|
|
3342
3327
|
*
|
|
@@ -3351,7 +3336,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3351
3336
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3352
3337
|
* See the License for the specific language governing permissions and
|
|
3353
3338
|
* limitations under the License.
|
|
3354
|
-
*/class
|
|
3339
|
+
*/class yI{constructor(e,n,r,s,i,o,a,c,u,l,h,d=!0){this.url_=e,this.method_=n,this.headers_=r,this.body_=s,this.successCodes_=i,this.additionalRetryCodes_=o,this.callback_=a,this.errorCallback_=c,this.timeout_=u,this.progressCallback_=l,this.connectionFactory_=h,this.retry=d,this.pendingConnection_=null,this.backoffId_=null,this.canceled_=!1,this.appDelete_=!1,this.promise_=new Promise((f,E)=>{this.resolve_=f,this.reject_=E,this.start_()})}start_(){const e=(r,s)=>{if(s){r(!1,new fi(!1,null,!0));return}const i=this.connectionFactory_();this.pendingConnection_=i;const o=a=>{const c=a.loaded,u=a.lengthComputable?a.total:-1;this.progressCallback_!==null&&this.progressCallback_(c,u)};this.progressCallback_!==null&&i.addUploadProgressListener(o),i.send(this.url_,this.method_,this.body_,this.headers_).then(()=>{this.progressCallback_!==null&&i.removeUploadProgressListener(o),this.pendingConnection_=null;const a=i.getErrorCode()===jt.NO_ERROR,c=i.getStatus();if(!a||Jd(c,this.additionalRetryCodes_)&&this.retry){const l=i.getErrorCode()===jt.ABORT;r(!1,new fi(!1,null,l));return}const u=this.successCodes_.indexOf(c)!==-1;r(!0,new fi(u,i))})},n=(r,s)=>{const i=this.resolve_,o=this.reject_,a=s.connection;if(s.wasSuccessCode)try{const c=this.callback_(a,a.getResponse());mI(c)?i(c):i()}catch(c){o(c)}else if(a!==null){const c=La();c.serverResponse=a.getErrorText(),this.errorCallback_?o(this.errorCallback_(a,c)):o(c)}else if(s.canceled){const c=this.appDelete_?Kd():Wd();o(c)}else{const c=Hd();o(c)}};this.canceled_?n(!1,new fi(!1,null,!0)):this.backoffId_=fI(e,n,this.timeout_)}getPromise(){return this.promise_}cancel(e){this.canceled_=!0,this.appDelete_=e||!1,this.backoffId_!==null&&pI(this.backoffId_),this.pendingConnection_!==null&&this.pendingConnection_.abort()}}class fi{constructor(e,n,r){this.wasSuccessCode=e,this.connection=n,this.canceled=!!r}}function EI(t,e){e!==null&&e.length>0&&(t.Authorization="Firebase "+e)}function vI(t,e){t["X-Firebase-Storage-Version"]="webjs/"+(e??"AppManager")}function TI(t,e){e&&(t["X-Firebase-GMPID"]=e)}function II(t,e){e!==null&&(t["X-Firebase-AppCheck"]=e)}function wI(t,e,n,r,s,i,o=!0){const a=Xd(t.urlParams),c=t.url+a,u=Object.assign({},t.headers);return TI(u,e),EI(u,n),vI(u,i),II(u,r),new yI(c,t.method,u,t.body,t.successCodes,t.additionalRetryCodes,t.handler,t.errorHandler,t.timeout,t.progressCallback,s,o)}/**
|
|
3355
3340
|
* @license
|
|
3356
3341
|
* Copyright 2017 Google LLC
|
|
3357
3342
|
*
|
|
@@ -3366,7 +3351,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3366
3351
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3367
3352
|
* See the License for the specific language governing permissions and
|
|
3368
3353
|
* limitations under the License.
|
|
3369
|
-
*/function
|
|
3354
|
+
*/function AI(){return typeof BlobBuilder<"u"?BlobBuilder:typeof WebKitBlobBuilder<"u"?WebKitBlobBuilder:void 0}function RI(...t){const e=AI();if(e!==void 0){const n=new e;for(let r=0;r<t.length;r++)n.append(t[r]);return n.getBlob()}else{if(Ua())return new Blob(t);throw new z($.UNSUPPORTED_ENVIRONMENT,"This browser doesn't seem to support creating Blobs")}}function PI(t,e,n){return t.webkitSlice?t.webkitSlice(e,n):t.mozSlice?t.mozSlice(e,n):t.slice?t.slice(e,n):null}/**
|
|
3370
3355
|
* @license
|
|
3371
3356
|
* Copyright 2021 Google LLC
|
|
3372
3357
|
*
|
|
@@ -3381,7 +3366,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3381
3366
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3382
3367
|
* See the License for the specific language governing permissions and
|
|
3383
3368
|
* limitations under the License.
|
|
3384
|
-
*/function
|
|
3369
|
+
*/function SI(t){if(typeof atob>"u")throw lI("base-64");return atob(t)}/**
|
|
3385
3370
|
* @license
|
|
3386
3371
|
* Copyright 2017 Google LLC
|
|
3387
3372
|
*
|
|
@@ -3396,7 +3381,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3396
3381
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3397
3382
|
* See the License for the specific language governing permissions and
|
|
3398
3383
|
* limitations under the License.
|
|
3399
|
-
*/const
|
|
3384
|
+
*/const Ge={RAW:"raw",BASE64:"base64",BASE64URL:"base64url",DATA_URL:"data_url"};class xa{constructor(e,n){this.data=e,this.contentType=n||null}}function CI(t,e){switch(t){case Ge.RAW:return new xa(Zd(e));case Ge.BASE64:case Ge.BASE64URL:return new xa(ef(t,e));case Ge.DATA_URL:return new xa(kI(e),NI(e))}throw La()}function Zd(t){const e=[];for(let n=0;n<t.length;n++){let r=t.charCodeAt(n);if(r<=127)e.push(r);else if(r<=2047)e.push(192|r>>6,128|r&63);else if((r&64512)===55296)if(!(n<t.length-1&&(t.charCodeAt(n+1)&64512)===56320))e.push(239,191,189);else{const i=r,o=t.charCodeAt(++n);r=65536|(i&1023)<<10|o&1023,e.push(240|r>>18,128|r>>12&63,128|r>>6&63,128|r&63)}else(r&64512)===56320?e.push(239,191,189):e.push(224|r>>12,128|r>>6&63,128|r&63)}return new Uint8Array(e)}function bI(t){let e;try{e=decodeURIComponent(t)}catch{throw Lr(Ge.DATA_URL,"Malformed data URL.")}return Zd(e)}function ef(t,e){switch(t){case Ge.BASE64:{const s=e.indexOf("-")!==-1,i=e.indexOf("_")!==-1;if(s||i)throw Lr(t,"Invalid character '"+(s?"-":"_")+"' found: is it base64url encoded?");break}case Ge.BASE64URL:{const s=e.indexOf("+")!==-1,i=e.indexOf("/")!==-1;if(s||i)throw Lr(t,"Invalid character '"+(s?"+":"/")+"' found: is it base64 encoded?");e=e.replace(/-/g,"+").replace(/_/g,"/");break}}let n;try{n=SI(e)}catch(s){throw s.message.includes("polyfill")?s:Lr(t,"Invalid character found")}const r=new Uint8Array(n.length);for(let s=0;s<n.length;s++)r[s]=n.charCodeAt(s);return r}class tf{constructor(e){this.base64=!1,this.contentType=null;const n=e.match(/^data:([^,]+)?,/);if(n===null)throw Lr(Ge.DATA_URL,"Must be formatted 'data:[<mediatype>][;base64],<data>");const r=n[1]||null;r!=null&&(this.base64=DI(r,";base64"),this.contentType=this.base64?r.substring(0,r.length-7):r),this.rest=e.substring(e.indexOf(",")+1)}}function kI(t){const e=new tf(t);return e.base64?ef(Ge.BASE64,e.rest):bI(e.rest)}function NI(t){return new tf(t).contentType}function DI(t,e){return t.length>=e.length?t.substring(t.length-e.length)===e:!1}/**
|
|
3400
3385
|
* @license
|
|
3401
3386
|
* Copyright 2017 Google LLC
|
|
3402
3387
|
*
|
|
@@ -3411,7 +3396,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3411
3396
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3412
3397
|
* See the License for the specific language governing permissions and
|
|
3413
3398
|
* limitations under the License.
|
|
3414
|
-
*/class At{constructor(e,n){let r=0,s="";
|
|
3399
|
+
*/class At{constructor(e,n){let r=0,s="";Qd(e)?(this.data_=e,r=e.size,s=e.type):e instanceof ArrayBuffer?(n?this.data_=new Uint8Array(e):(this.data_=new Uint8Array(e.byteLength),this.data_.set(new Uint8Array(e))),r=this.data_.length):e instanceof Uint8Array&&(n?this.data_=e:(this.data_=new Uint8Array(e.length),this.data_.set(e)),r=e.length),this.size_=r,this.type_=s}size(){return this.size_}type(){return this.type_}slice(e,n){if(Qd(this.data_)){const r=this.data_,s=PI(r,e,n);return s===null?null:new At(s)}else{const r=new Uint8Array(this.data_.buffer,e,n-e);return new At(r,!0)}}static getBlob(...e){if(Ua()){const n=e.map(r=>r instanceof At?r.data_:r);return new At(RI.apply(null,n))}else{const n=e.map(o=>di(o)?CI(Ge.RAW,o).data:o.data_);let r=0;n.forEach(o=>{r+=o.byteLength});const s=new Uint8Array(r);let i=0;return n.forEach(o=>{for(let a=0;a<o.length;a++)s[i++]=o[a]}),new At(s,!0)}}uploadData(){return this.data_}}/**
|
|
3415
3400
|
* @license
|
|
3416
3401
|
* Copyright 2017 Google LLC
|
|
3417
3402
|
*
|
|
@@ -3426,7 +3411,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3426
3411
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3427
3412
|
* See the License for the specific language governing permissions and
|
|
3428
3413
|
* limitations under the License.
|
|
3429
|
-
*/function
|
|
3414
|
+
*/function nf(t){let e;try{e=JSON.parse(t)}catch{return null}return _I(e)?e:null}/**
|
|
3430
3415
|
* @license
|
|
3431
3416
|
* Copyright 2017 Google LLC
|
|
3432
3417
|
*
|
|
@@ -3441,7 +3426,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3441
3426
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3442
3427
|
* See the License for the specific language governing permissions and
|
|
3443
3428
|
* limitations under the License.
|
|
3444
|
-
*/function
|
|
3429
|
+
*/function OI(t){if(t.length===0)return null;const e=t.lastIndexOf("/");return e===-1?"":t.slice(0,e)}function VI(t,e){const n=e.split("/").filter(r=>r.length>0).join("/");return t.length===0?n:t+"/"+n}function rf(t){const e=t.lastIndexOf("/",t.length-2);return e===-1?t:t.slice(e+1)}/**
|
|
3445
3430
|
* @license
|
|
3446
3431
|
* Copyright 2017 Google LLC
|
|
3447
3432
|
*
|
|
@@ -3456,7 +3441,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3456
3441
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3457
3442
|
* See the License for the specific language governing permissions and
|
|
3458
3443
|
* limitations under the License.
|
|
3459
|
-
*/function
|
|
3444
|
+
*/function LI(t,e){return e}class pe{constructor(e,n,r,s){this.server=e,this.local=n||e,this.writable=!!r,this.xform=s||LI}}let pi=null;function MI(t){return!di(t)||t.length<2?t:rf(t)}function sf(){if(pi)return pi;const t=[];t.push(new pe("bucket")),t.push(new pe("generation")),t.push(new pe("metageneration")),t.push(new pe("name","fullPath",!0));function e(i,o){return MI(o)}const n=new pe("name");n.xform=e,t.push(n);function r(i,o){return o!==void 0?Number(o):o}const s=new pe("size");return s.xform=r,t.push(s),t.push(new pe("timeCreated")),t.push(new pe("updated")),t.push(new pe("md5Hash",null,!0)),t.push(new pe("cacheControl",null,!0)),t.push(new pe("contentDisposition",null,!0)),t.push(new pe("contentEncoding",null,!0)),t.push(new pe("contentLanguage",null,!0)),t.push(new pe("contentType",null,!0)),t.push(new pe("metadata","customMetadata",!0)),pi=t,pi}function UI(t,e){function n(){const r=t.bucket,s=t.fullPath,i=new we(r,s);return e._makeStorageReference(i)}Object.defineProperty(t,"ref",{get:n})}function xI(t,e,n){const r={};r.type="file";const s=n.length;for(let i=0;i<s;i++){const o=n[i];r[o.local]=o.xform(r,e[o.server])}return UI(r,t),r}function of(t,e,n){const r=nf(e);return r===null?null:xI(t,r,n)}function FI(t,e,n,r){const s=nf(e);if(s===null||!di(s.downloadTokens))return null;const i=s.downloadTokens;if(i.length===0)return null;const o=encodeURIComponent;return i.split(",").map(u=>{const l=t.bucket,h=t.fullPath,d="/b/"+o(l)+"/o/"+o(h),f=Pn(d,n,r),E=Xd({alt:"media",token:u});return f+E})[0]}function af(t,e){const n={},r=e.length;for(let s=0;s<r;s++){const i=e[s];i.writable&&(n[i.server]=t[i.local])}return JSON.stringify(n)}class zt{constructor(e,n,r,s){this.url=e,this.method=n,this.handler=r,this.timeout=s,this.urlParams={},this.headers={},this.body=null,this.errorHandler=null,this.progressCallback=null,this.successCodes=[200],this.additionalRetryCodes=[]}}/**
|
|
3460
3445
|
* @license
|
|
3461
3446
|
* Copyright 2017 Google LLC
|
|
3462
3447
|
*
|
|
@@ -3471,7 +3456,7 @@ ${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(functi
|
|
|
3471
3456
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3472
3457
|
* See the License for the specific language governing permissions and
|
|
3473
3458
|
* limitations under the License.
|
|
3474
|
-
*/function
|
|
3459
|
+
*/function it(t){if(!t)throw La()}function Fa(t,e){function n(r,s){const i=of(t,s,e);return it(i!==null),i}return n}function BI(t,e){function n(r,s){const i=of(t,s,e);return it(i!==null),FI(i,s,t.host,t._protocol)}return n}function Ur(t){function e(n,r){let s;return n.getStatus()===401?n.getErrorText().includes("Firebase App Check token is invalid")?s=rI():s=nI():n.getStatus()===402?s=tI(t.bucket):n.getStatus()===403?s=sI(t.path):s=r,s.status=n.getStatus(),s.serverResponse=r.serverResponse,s}return e}function Ba(t){const e=Ur(t);function n(r,s){let i=e(r,s);return r.getStatus()===404&&(i=eI(t.path)),i.serverResponse=s.serverResponse,i}return n}function qI(t,e,n){const r=e.fullServerUrl(),s=Pn(r,t.host,t._protocol),i="GET",o=t.maxOperationRetryTime,a=new zt(s,i,Fa(t,n),o);return a.errorHandler=Ba(e),a}function $I(t,e,n){const r=e.fullServerUrl(),s=Pn(r,t.host,t._protocol),i="GET",o=t.maxOperationRetryTime,a=new zt(s,i,BI(t,n),o);return a.errorHandler=Ba(e),a}function jI(t,e){const n=e.fullServerUrl(),r=Pn(n,t.host,t._protocol),s="DELETE",i=t.maxOperationRetryTime;function o(c,u){}const a=new zt(r,s,o,i);return a.successCodes=[200,204],a.errorHandler=Ba(e),a}function zI(t,e){return t&&t.contentType||e&&e.type()||"application/octet-stream"}function cf(t,e,n){const r=Object.assign({},n);return r.fullPath=t.path,r.size=e.size(),r.contentType||(r.contentType=zI(null,e)),r}function HI(t,e,n,r,s){const i=e.bucketOnlyServerUrl(),o={"X-Goog-Upload-Protocol":"multipart"};function a(){let b="";for(let U=0;U<2;U++)b=b+Math.random().toString().slice(2);return b}const c=a();o["Content-Type"]="multipart/related; boundary="+c;const u=cf(e,r,s),l=af(u,n),h="--"+c+`\r
|
|
3475
3460
|
Content-Type: application/json; charset=utf-8\r
|
|
3476
3461
|
\r
|
|
3477
3462
|
`+l+`\r
|
|
@@ -3479,7 +3464,7 @@ Content-Type: application/json; charset=utf-8\r
|
|
|
3479
3464
|
Content-Type: `+u.contentType+`\r
|
|
3480
3465
|
\r
|
|
3481
3466
|
`,d=`\r
|
|
3482
|
-
--`+c+"--",f=At.getBlob(h,r,d);if(f===null)throw
|
|
3467
|
+
--`+c+"--",f=At.getBlob(h,r,d);if(f===null)throw Gd();const E={name:u.fullPath},v=Pn(i,t.host,t._protocol),g="POST",k=t.maxUploadRetryTime,O=new zt(v,g,Fa(t,n),k);return O.urlParams=E,O.headers=o,O.body=f.uploadData(),O.errorHandler=Ur(e),O}class mi{constructor(e,n,r,s){this.current=e,this.total=n,this.finalized=!!r,this.metadata=s||null}}function qa(t,e){let n=null;try{n=t.getResponseHeader("X-Goog-Upload-Status")}catch{it(!1)}return it(!!n&&(e||["active"]).indexOf(n)!==-1),n}function WI(t,e,n,r,s){const i=e.bucketOnlyServerUrl(),o=cf(e,r,s),a={name:o.fullPath},c=Pn(i,t.host,t._protocol),u="POST",l={"X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${r.size()}`,"X-Goog-Upload-Header-Content-Type":o.contentType,"Content-Type":"application/json; charset=utf-8"},h=af(o,n),d=t.maxUploadRetryTime;function f(v){qa(v);let g;try{g=v.getResponseHeader("X-Goog-Upload-URL")}catch{it(!1)}return it(di(g)),g}const E=new zt(c,u,f,d);return E.urlParams=a,E.headers=l,E.body=h,E.errorHandler=Ur(e),E}function GI(t,e,n,r){const s={"X-Goog-Upload-Command":"query"};function i(u){const l=qa(u,["active","final"]);let h=null;try{h=u.getResponseHeader("X-Goog-Upload-Size-Received")}catch{it(!1)}h||it(!1);const d=Number(h);return it(!isNaN(d)),new mi(d,r.size(),l==="final")}const o="POST",a=t.maxUploadRetryTime,c=new zt(n,o,i,a);return c.headers=s,c.errorHandler=Ur(e),c}const uf=256*1024;function KI(t,e,n,r,s,i,o,a){const c=new mi(0,0);if(o?(c.current=o.current,c.total=o.total):(c.current=0,c.total=r.size()),r.size()!==c.total)throw cI();const u=c.total-c.current;let l=u;s>0&&(l=Math.min(l,s));const h=c.current,d=h+l;let f="";l===0?f="finalize":u===l?f="upload, finalize":f="upload";const E={"X-Goog-Upload-Command":f,"X-Goog-Upload-Offset":`${c.current}`},v=r.slice(h,d);if(v===null)throw Gd();function g(U,me){const de=qa(U,["active","final"]),ot=c.current+l,Rt=r.size();let at;return de==="final"?at=Fa(e,i)(U,me):at=null,new mi(ot,Rt,de==="final",at)}const k="POST",O=e.maxUploadRetryTime,b=new zt(n,k,g,O);return b.headers=E,b.body=v.uploadData(),b.progressCallback=a||null,b.errorHandler=Ur(t),b}const _e={RUNNING:"running",PAUSED:"paused",SUCCESS:"success",CANCELED:"canceled",ERROR:"error"};function $a(t){switch(t){case"running":case"pausing":case"canceling":return _e.RUNNING;case"paused":return _e.PAUSED;case"success":return _e.SUCCESS;case"canceled":return _e.CANCELED;case"error":return _e.ERROR;default:return _e.ERROR}}/**
|
|
3483
3468
|
* @license
|
|
3484
3469
|
* Copyright 2017 Google LLC
|
|
3485
3470
|
*
|
|
@@ -3494,7 +3479,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3494
3479
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3495
3480
|
* See the License for the specific language governing permissions and
|
|
3496
3481
|
* limitations under the License.
|
|
3497
|
-
*/class
|
|
3482
|
+
*/class QI{constructor(e,n,r){if(gI(e)||n!=null||r!=null)this.next=e,this.error=n??void 0,this.complete=r??void 0;else{const i=e;this.next=i.next,this.error=i.error,this.complete=i.complete}}}/**
|
|
3498
3483
|
* @license
|
|
3499
3484
|
* Copyright 2017 Google LLC
|
|
3500
3485
|
*
|
|
@@ -3509,7 +3494,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3509
3494
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3510
3495
|
* See the License for the specific language governing permissions and
|
|
3511
3496
|
* limitations under the License.
|
|
3512
|
-
*/function
|
|
3497
|
+
*/function Sn(t){return(...e)=>{Promise.resolve().then(()=>t(...e))}}class YI{constructor(){this.sent_=!1,this.xhr_=new XMLHttpRequest,this.initXhr(),this.errorCode_=jt.NO_ERROR,this.sendPromise_=new Promise(e=>{this.xhr_.addEventListener("abort",()=>{this.errorCode_=jt.ABORT,e()}),this.xhr_.addEventListener("error",()=>{this.errorCode_=jt.NETWORK_ERROR,e()}),this.xhr_.addEventListener("load",()=>{e()})})}send(e,n,r,s){if(this.sent_)throw Mr("cannot .send() more than once");if(this.sent_=!0,this.xhr_.open(n,e,!0),s!==void 0)for(const i in s)s.hasOwnProperty(i)&&this.xhr_.setRequestHeader(i,s[i].toString());return r!==void 0?this.xhr_.send(r):this.xhr_.send(),this.sendPromise_}getErrorCode(){if(!this.sent_)throw Mr("cannot .getErrorCode() before sending");return this.errorCode_}getStatus(){if(!this.sent_)throw Mr("cannot .getStatus() before sending");try{return this.xhr_.status}catch{return-1}}getResponse(){if(!this.sent_)throw Mr("cannot .getResponse() before sending");return this.xhr_.response}getErrorText(){if(!this.sent_)throw Mr("cannot .getErrorText() before sending");return this.xhr_.statusText}abort(){this.xhr_.abort()}getResponseHeader(e){return this.xhr_.getResponseHeader(e)}addUploadProgressListener(e){this.xhr_.upload!=null&&this.xhr_.upload.addEventListener("progress",e)}removeUploadProgressListener(e){this.xhr_.upload!=null&&this.xhr_.upload.removeEventListener("progress",e)}}class XI extends YI{initXhr(){this.xhr_.responseType="text"}}function Ht(){return new XI}/**
|
|
3513
3498
|
* @license
|
|
3514
3499
|
* Copyright 2017 Google LLC
|
|
3515
3500
|
*
|
|
@@ -3524,7 +3509,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3524
3509
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3525
3510
|
* See the License for the specific language governing permissions and
|
|
3526
3511
|
* limitations under the License.
|
|
3527
|
-
*/class
|
|
3512
|
+
*/class JI{constructor(e,n,r=null){this._transferred=0,this._needToFetchStatus=!1,this._needToFetchMetadata=!1,this._observers=[],this._error=void 0,this._uploadUrl=void 0,this._request=void 0,this._chunkMultiplier=1,this._resolve=void 0,this._reject=void 0,this._ref=e,this._blob=n,this._metadata=r,this._mappings=sf(),this._resumable=this._shouldDoResumable(this._blob),this._state="running",this._errorHandler=s=>{if(this._request=void 0,this._chunkMultiplier=1,s._codeEquals($.CANCELED))this._needToFetchStatus=!0,this.completeTransitions_();else{const i=this.isExponentialBackoffExpired();if(Jd(s.status,[]))if(i)s=Hd();else{this.sleepTime=Math.max(this.sleepTime*2,ZT),this._needToFetchStatus=!0,this.completeTransitions_();return}this._error=s,this._transition("error")}},this._metadataErrorHandler=s=>{this._request=void 0,s._codeEquals($.CANCELED)?this.completeTransitions_():(this._error=s,this._transition("error"))},this.sleepTime=0,this.maxSleepTime=this._ref.storage.maxUploadRetryTime,this._promise=new Promise((s,i)=>{this._resolve=s,this._reject=i,this._start()}),this._promise.then(null,()=>{})}isExponentialBackoffExpired(){return this.sleepTime>this.maxSleepTime}_makeProgressCallback(){const e=this._transferred;return n=>this._updateProgress(e+n)}_shouldDoResumable(e){return e.size()>256*1024}_start(){this._state==="running"&&this._request===void 0&&(this._resumable?this._uploadUrl===void 0?this._createResumable():this._needToFetchStatus?this._fetchStatus():this._needToFetchMetadata?this._fetchMetadata():this.pendingTimeout=setTimeout(()=>{this.pendingTimeout=void 0,this._continueUpload()},this.sleepTime):this._oneShotUpload())}_resolveToken(e){Promise.all([this._ref.storage._getAuthToken(),this._ref.storage._getAppCheckToken()]).then(([n,r])=>{switch(this._state){case"running":e(n,r);break;case"canceling":this._transition("canceled");break;case"pausing":this._transition("paused");break}})}_createResumable(){this._resolveToken((e,n)=>{const r=WI(this._ref.storage,this._ref._location,this._mappings,this._blob,this._metadata),s=this._ref.storage._makeRequest(r,Ht,e,n);this._request=s,s.getPromise().then(i=>{this._request=void 0,this._uploadUrl=i,this._needToFetchStatus=!1,this.completeTransitions_()},this._errorHandler)})}_fetchStatus(){const e=this._uploadUrl;this._resolveToken((n,r)=>{const s=GI(this._ref.storage,this._ref._location,e,this._blob),i=this._ref.storage._makeRequest(s,Ht,n,r);this._request=i,i.getPromise().then(o=>{o=o,this._request=void 0,this._updateProgress(o.current),this._needToFetchStatus=!1,o.finalized&&(this._needToFetchMetadata=!0),this.completeTransitions_()},this._errorHandler)})}_continueUpload(){const e=uf*this._chunkMultiplier,n=new mi(this._transferred,this._blob.size()),r=this._uploadUrl;this._resolveToken((s,i)=>{let o;try{o=KI(this._ref._location,this._ref.storage,r,this._blob,e,this._mappings,n,this._makeProgressCallback())}catch(c){this._error=c,this._transition("error");return}const a=this._ref.storage._makeRequest(o,Ht,s,i,!1);this._request=a,a.getPromise().then(c=>{this._increaseMultiplier(),this._request=void 0,this._updateProgress(c.current),c.finalized?(this._metadata=c.metadata,this._transition("success")):this.completeTransitions_()},this._errorHandler)})}_increaseMultiplier(){uf*this._chunkMultiplier*2<32*1024*1024&&(this._chunkMultiplier*=2)}_fetchMetadata(){this._resolveToken((e,n)=>{const r=qI(this._ref.storage,this._ref._location,this._mappings),s=this._ref.storage._makeRequest(r,Ht,e,n);this._request=s,s.getPromise().then(i=>{this._request=void 0,this._metadata=i,this._transition("success")},this._metadataErrorHandler)})}_oneShotUpload(){this._resolveToken((e,n)=>{const r=HI(this._ref.storage,this._ref._location,this._mappings,this._blob,this._metadata),s=this._ref.storage._makeRequest(r,Ht,e,n);this._request=s,s.getPromise().then(i=>{this._request=void 0,this._metadata=i,this._updateProgress(this._blob.size()),this._transition("success")},this._errorHandler)})}_updateProgress(e){const n=this._transferred;this._transferred=e,this._transferred!==n&&this._notifyObservers()}_transition(e){if(this._state!==e)switch(e){case"canceling":case"pausing":this._state=e,this._request!==void 0?this._request.cancel():this.pendingTimeout&&(clearTimeout(this.pendingTimeout),this.pendingTimeout=void 0,this.completeTransitions_());break;case"running":const n=this._state==="paused";this._state=e,n&&(this._notifyObservers(),this._start());break;case"paused":this._state=e,this._notifyObservers();break;case"canceled":this._error=Wd(),this._state=e,this._notifyObservers();break;case"error":this._state=e,this._notifyObservers();break;case"success":this._state=e,this._notifyObservers();break}}completeTransitions_(){switch(this._state){case"pausing":this._transition("paused");break;case"canceling":this._transition("canceled");break;case"running":this._start();break}}get snapshot(){const e=$a(this._state);return{bytesTransferred:this._transferred,totalBytes:this._blob.size(),state:e,metadata:this._metadata,task:this,ref:this._ref}}on(e,n,r,s){const i=new QI(n||void 0,r||void 0,s||void 0);return this._addObserver(i),()=>{this._removeObserver(i)}}then(e,n){return this._promise.then(e,n)}catch(e){return this.then(null,e)}_addObserver(e){this._observers.push(e),this._notifyObserver(e)}_removeObserver(e){const n=this._observers.indexOf(e);n!==-1&&this._observers.splice(n,1)}_notifyObservers(){this._finishPromise(),this._observers.slice().forEach(n=>{this._notifyObserver(n)})}_finishPromise(){if(this._resolve!==void 0){let e=!0;switch($a(this._state)){case _e.SUCCESS:Sn(this._resolve.bind(null,this.snapshot))();break;case _e.CANCELED:case _e.ERROR:const n=this._reject;Sn(n.bind(null,this._error))();break;default:e=!1;break}e&&(this._resolve=void 0,this._reject=void 0)}}_notifyObserver(e){switch($a(this._state)){case _e.RUNNING:case _e.PAUSED:e.next&&Sn(e.next.bind(e,this.snapshot))();break;case _e.SUCCESS:e.complete&&Sn(e.complete.bind(e))();break;case _e.CANCELED:case _e.ERROR:e.error&&Sn(e.error.bind(e,this._error))();break;default:e.error&&Sn(e.error.bind(e,this._error))()}}resume(){const e=this._state==="paused"||this._state==="pausing";return e&&this._transition("running"),e}pause(){const e=this._state==="running";return e&&this._transition("pausing"),e}cancel(){const e=this._state==="running"||this._state==="pausing";return e&&this._transition("canceling"),e}}/**
|
|
3528
3513
|
* @license
|
|
3529
3514
|
* Copyright 2019 Google LLC
|
|
3530
3515
|
*
|
|
@@ -3539,7 +3524,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3539
3524
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3540
3525
|
* See the License for the specific language governing permissions and
|
|
3541
3526
|
* limitations under the License.
|
|
3542
|
-
*/class
|
|
3527
|
+
*/class Wt{constructor(e,n){this._service=e,n instanceof we?this._location=n:this._location=we.makeFromUrl(n,e.host)}toString(){return"gs://"+this._location.bucket+"/"+this._location.path}_newRef(e,n){return new Wt(e,n)}get root(){const e=new we(this._location.bucket,"");return this._newRef(this._service,e)}get bucket(){return this._location.bucket}get fullPath(){return this._location.path}get name(){return rf(this._location.path)}get storage(){return this._service}get parent(){const e=OI(this._location.path);if(e===null)return null;const n=new we(this._location.bucket,e);return new Wt(this._service,n)}_throwIfRoot(e){if(this._location.path==="")throw hI(e)}}function ZI(t,e,n){return t._throwIfRoot("uploadBytesResumable"),new JI(t,new At(e),n)}function ew(t){t._throwIfRoot("getDownloadURL");const e=$I(t.storage,t._location,sf());return t.storage.makeRequestWithTokens(e,Ht).then(n=>{if(n===null)throw uI();return n})}function tw(t){t._throwIfRoot("deleteObject");const e=jI(t.storage,t._location);return t.storage.makeRequestWithTokens(e,Ht)}function nw(t,e){const n=VI(t._location.path,e),r=new we(t._location.bucket,n);return new Wt(t.storage,r)}/**
|
|
3543
3528
|
* @license
|
|
3544
3529
|
* Copyright 2017 Google LLC
|
|
3545
3530
|
*
|
|
@@ -3554,7 +3539,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3554
3539
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3555
3540
|
* See the License for the specific language governing permissions and
|
|
3556
3541
|
* limitations under the License.
|
|
3557
|
-
*/function
|
|
3542
|
+
*/function rw(t){return/^[A-Za-z]+:\/\//.test(t)}function sw(t,e){return new Wt(t,e)}function lf(t,e){if(t instanceof ja){const n=t;if(n._bucket==null)throw aI();const r=new Wt(n,n._bucket);return e!=null?lf(r,e):r}else return e!==void 0?nw(t,e):t}function iw(t,e){if(e&&rw(e)){if(t instanceof ja)return sw(t,e);throw Ma("To use ref(service, url), the first argument must be a Storage instance.")}else return lf(t,e)}function hf(t,e){const n=e==null?void 0:e[zd];return n==null?null:we.makeFromBucketSpec(n,t)}function ow(t,e,n,r={}){t.host=`${e}:${n}`,t._protocol="http";const{mockUserToken:s}=r;s&&(t._overrideAuthToken=typeof s=="string"?s:ec(s,t.app.options.projectId))}class ja{constructor(e,n,r,s,i){this.app=e,this._authProvider=n,this._appCheckProvider=r,this._url=s,this._firebaseVersion=i,this._bucket=null,this._host=jd,this._protocol="https",this._appId=null,this._deleted=!1,this._maxOperationRetryTime=XT,this._maxUploadRetryTime=JT,this._requests=new Set,s!=null?this._bucket=we.makeFromBucketSpec(s,this._host):this._bucket=hf(this._host,this.app.options)}get host(){return this._host}set host(e){this._host=e,this._url!=null?this._bucket=we.makeFromBucketSpec(this._url,e):this._bucket=hf(e,this.app.options)}get maxUploadRetryTime(){return this._maxUploadRetryTime}set maxUploadRetryTime(e){Yd("time",0,Number.POSITIVE_INFINITY,e),this._maxUploadRetryTime=e}get maxOperationRetryTime(){return this._maxOperationRetryTime}set maxOperationRetryTime(e){Yd("time",0,Number.POSITIVE_INFINITY,e),this._maxOperationRetryTime=e}async _getAuthToken(){if(this._overrideAuthToken)return this._overrideAuthToken;const e=this._authProvider.getImmediate({optional:!0});if(e){const n=await e.getToken();if(n!==null)return n.accessToken}return null}async _getAppCheckToken(){const e=this._appCheckProvider.getImmediate({optional:!0});return e?(await e.getToken()).token:null}_delete(){return this._deleted||(this._deleted=!0,this._requests.forEach(e=>e.cancel()),this._requests.clear()),Promise.resolve()}_makeStorageReference(e){return new Wt(this,e)}_makeRequest(e,n,r,s,i=!0){if(this._deleted)return new dI(Kd());{const o=wI(e,this._appId,r,s,n,this._firebaseVersion,i);return this._requests.add(o),o.getPromise().then(()=>this._requests.delete(o),()=>this._requests.delete(o)),o}}async makeRequestWithTokens(e,n){const[r,s]=await Promise.all([this._getAuthToken(),this._getAppCheckToken()]);return this._makeRequest(e,n,r,s).getPromise()}}const df="@firebase/storage",ff="0.11.2";/**
|
|
3558
3543
|
* @license
|
|
3559
3544
|
* Copyright 2020 Google LLC
|
|
3560
3545
|
*
|
|
@@ -3569,7 +3554,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3569
3554
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3570
3555
|
* See the License for the specific language governing permissions and
|
|
3571
3556
|
* limitations under the License.
|
|
3572
|
-
*/const
|
|
3557
|
+
*/const pf="storage";function aw(t,e,n){return t=M(t),ZI(t,e,n)}function cw(t){return t=M(t),ew(t)}function uw(t){return t=M(t),tw(t)}function za(t,e){return t=M(t),iw(t,e)}function lw(t=$r(),e){t=M(t);const r=Vn(t,pf).getImmediate({identifier:e}),s=yi("storage");return s&&mf(r,...s),r}function mf(t,e,n,r={}){ow(t,e,n,r)}function hw(t,{instanceIdentifier:e}){const n=t.getProvider("app").getImmediate(),r=t.getProvider("auth-internal"),s=t.getProvider("app-check-internal");return new ja(n,r,s,e,Ct)}function dw(){ut(new Ke(pf,hw,"PUBLIC").setMultipleInstances(!0)),Ae(df,ff,""),Ae(df,ff,"esm2017")}dw();/**
|
|
3573
3558
|
* @license
|
|
3574
3559
|
* Copyright 2017 Google LLC
|
|
3575
3560
|
*
|
|
@@ -3584,7 +3569,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3584
3569
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3585
3570
|
* See the License for the specific language governing permissions and
|
|
3586
3571
|
* limitations under the License.
|
|
3587
|
-
*/const
|
|
3572
|
+
*/const fw="type.googleapis.com/google.protobuf.Int64Value",pw="type.googleapis.com/google.protobuf.UInt64Value";function gf(t,e){const n={};for(const r in t)t.hasOwnProperty(r)&&(n[r]=e(t[r]));return n}function Ha(t){if(t==null)return null;if(t instanceof Number&&(t=t.valueOf()),typeof t=="number"&&isFinite(t)||t===!0||t===!1||Object.prototype.toString.call(t)==="[object String]")return t;if(t instanceof Date)return t.toISOString();if(Array.isArray(t))return t.map(e=>Ha(e));if(typeof t=="function"||typeof t=="object")return gf(t,e=>Ha(e));throw new Error("Data cannot be encoded in JSON: "+t)}function gi(t){if(t==null)return t;if(t["@type"])switch(t["@type"]){case fw:case pw:{const e=Number(t.value);if(isNaN(e))throw new Error("Data cannot be decoded from JSON: "+t);return e}default:throw new Error("Data cannot be decoded from JSON: "+t)}return Array.isArray(t)?t.map(e=>gi(e)):typeof t=="function"||typeof t=="object"?gf(t,e=>gi(e)):t}/**
|
|
3588
3573
|
* @license
|
|
3589
3574
|
* Copyright 2020 Google LLC
|
|
3590
3575
|
*
|
|
@@ -3599,7 +3584,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3599
3584
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3600
3585
|
* See the License for the specific language governing permissions and
|
|
3601
3586
|
* limitations under the License.
|
|
3602
|
-
*/const
|
|
3587
|
+
*/const Wa="functions";/**
|
|
3603
3588
|
* @license
|
|
3604
3589
|
* Copyright 2017 Google LLC
|
|
3605
3590
|
*
|
|
@@ -3614,7 +3599,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3614
3599
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3615
3600
|
* See the License for the specific language governing permissions and
|
|
3616
3601
|
* limitations under the License.
|
|
3617
|
-
*/const
|
|
3602
|
+
*/const _f={OK:"ok",CANCELLED:"cancelled",UNKNOWN:"unknown",INVALID_ARGUMENT:"invalid-argument",DEADLINE_EXCEEDED:"deadline-exceeded",NOT_FOUND:"not-found",ALREADY_EXISTS:"already-exists",PERMISSION_DENIED:"permission-denied",UNAUTHENTICATED:"unauthenticated",RESOURCE_EXHAUSTED:"resource-exhausted",FAILED_PRECONDITION:"failed-precondition",ABORTED:"aborted",OUT_OF_RANGE:"out-of-range",UNIMPLEMENTED:"unimplemented",INTERNAL:"internal",UNAVAILABLE:"unavailable",DATA_LOSS:"data-loss"};class Cn extends be{constructor(e,n,r){super(`${Wa}/${e}`,n||""),this.details=r}}function mw(t){if(t>=200&&t<300)return"ok";switch(t){case 0:return"internal";case 400:return"invalid-argument";case 401:return"unauthenticated";case 403:return"permission-denied";case 404:return"not-found";case 409:return"aborted";case 429:return"resource-exhausted";case 499:return"cancelled";case 500:return"internal";case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline-exceeded"}return"unknown"}function gw(t,e){let n=mw(t),r=n,s;try{const i=e&&e.error;if(i){const o=i.status;if(typeof o=="string"){if(!_f[o])return new Cn("internal","internal");n=_f[o],r=o}const a=i.message;typeof a=="string"&&(r=a),s=i.details,s!==void 0&&(s=gi(s))}}catch{}return n==="ok"?null:new Cn(n,r,s)}/**
|
|
3618
3603
|
* @license
|
|
3619
3604
|
* Copyright 2017 Google LLC
|
|
3620
3605
|
*
|
|
@@ -3629,7 +3614,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3629
3614
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3630
3615
|
* See the License for the specific language governing permissions and
|
|
3631
3616
|
* limitations under the License.
|
|
3632
|
-
*/class
|
|
3617
|
+
*/class _w{constructor(e,n,r){this.auth=null,this.messaging=null,this.appCheck=null,this.auth=e.getImmediate({optional:!0}),this.messaging=n.getImmediate({optional:!0}),this.auth||e.get().then(s=>this.auth=s,()=>{}),this.messaging||n.get().then(s=>this.messaging=s,()=>{}),this.appCheck||r.get().then(s=>this.appCheck=s,()=>{})}async getAuthToken(){if(this.auth)try{const e=await this.auth.getToken();return e==null?void 0:e.accessToken}catch{return}}async getMessagingToken(){if(!(!this.messaging||!("Notification"in self)||Notification.permission!=="granted"))try{return await this.messaging.getToken()}catch{return}}async getAppCheckToken(e){if(this.appCheck){const n=e?await this.appCheck.getLimitedUseToken():await this.appCheck.getToken();return n.error?null:n.token}return null}async getContext(e){const n=await this.getAuthToken(),r=await this.getMessagingToken(),s=await this.getAppCheckToken(e);return{authToken:n,messagingToken:r,appCheckToken:s}}}/**
|
|
3633
3618
|
* @license
|
|
3634
3619
|
* Copyright 2017 Google LLC
|
|
3635
3620
|
*
|
|
@@ -3644,7 +3629,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3644
3629
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3645
3630
|
* See the License for the specific language governing permissions and
|
|
3646
3631
|
* limitations under the License.
|
|
3647
|
-
*/const
|
|
3632
|
+
*/const Ga="us-central1";function yw(t){let e=null;return{promise:new Promise((n,r)=>{e=setTimeout(()=>{r(new Cn("deadline-exceeded","deadline-exceeded"))},t)}),cancel:()=>{e&&clearTimeout(e)}}}class Ew{constructor(e,n,r,s,i=Ga,o){this.app=e,this.fetchImpl=o,this.emulatorOrigin=null,this.contextProvider=new _w(n,r,s),this.cancelAllRequests=new Promise(a=>{this.deleteService=()=>Promise.resolve(a())});try{const a=new URL(i);this.customDomain=a.origin,this.region=Ga}catch{this.customDomain=null,this.region=i}}_delete(){return this.deleteService()}_url(e){const n=this.app.options.projectId;return this.emulatorOrigin!==null?`${this.emulatorOrigin}/${n}/${this.region}/${e}`:this.customDomain!==null?`${this.customDomain}/${e}`:`https://${this.region}-${n}.cloudfunctions.net/${e}`}}function vw(t,e,n){t.emulatorOrigin=`http://${e}:${n}`}function Tw(t,e,n){return r=>ww(t,e,r,n||{})}async function Iw(t,e,n,r){n["Content-Type"]="application/json";let s;try{s=await r(t,{method:"POST",body:JSON.stringify(e),headers:n})}catch{return{status:0,json:null}}let i=null;try{i=await s.json()}catch{}return{status:s.status,json:i}}function ww(t,e,n,r){const s=t._url(e);return Aw(t,s,n,r)}async function Aw(t,e,n,r){n=Ha(n);const s={data:n},i={},o=await t.contextProvider.getContext(r.limitedUseAppCheckTokens);o.authToken&&(i.Authorization="Bearer "+o.authToken),o.messagingToken&&(i["Firebase-Instance-ID-Token"]=o.messagingToken),o.appCheckToken!==null&&(i["X-Firebase-AppCheck"]=o.appCheckToken);const a=r.timeout||7e4,c=yw(a),u=await Promise.race([Iw(e,s,i,t.fetchImpl),c.promise,t.cancelAllRequests]);if(c.cancel(),!u)throw new Cn("cancelled","Firebase Functions instance was deleted.");const l=gw(u.status,u.json);if(l)throw l;if(!u.json)throw new Cn("internal","Response is not valid JSON object.");let h=u.json.data;if(typeof h>"u"&&(h=u.json.result),typeof h>"u")throw new Cn("internal","Response is missing data field.");return{data:gi(h)}}const yf="@firebase/functions",Ef="0.10.0";/**
|
|
3648
3633
|
* @license
|
|
3649
3634
|
* Copyright 2019 Google LLC
|
|
3650
3635
|
*
|
|
@@ -3659,7 +3644,7 @@ Content-Type: `+u.contentType+`\r
|
|
|
3659
3644
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3660
3645
|
* See the License for the specific language governing permissions and
|
|
3661
3646
|
* limitations under the License.
|
|
3662
|
-
*/const
|
|
3647
|
+
*/const Rw="auth-internal",Pw="app-check-internal",Sw="messaging-internal";function Cw(t,e){const n=(r,{instanceIdentifier:s})=>{const i=r.getProvider("app").getImmediate(),o=r.getProvider(Rw),a=r.getProvider(Sw),c=r.getProvider(Pw);return new Ew(i,o,a,c,s,t)};ut(new Ke(Wa,n,"PUBLIC").setMultipleInstances(!0)),Ae(yf,Ef,e),Ae(yf,Ef,"esm2017")}/**
|
|
3663
3648
|
* @license
|
|
3664
3649
|
* Copyright 2020 Google LLC
|
|
3665
3650
|
*
|
|
@@ -3674,5 +3659,5 @@ Content-Type: `+u.contentType+`\r
|
|
|
3674
3659
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3675
3660
|
* See the License for the specific language governing permissions and
|
|
3676
3661
|
* limitations under the License.
|
|
3677
|
-
*/function
|
|
3662
|
+
*/function bw(t=$r(),e=Ga){const r=Vn(M(t),Wa).getImmediate({identifier:e}),s=yi("functions");return s&&vf(r,...s),r}function vf(t,e,n){vw(M(t),e,n)}function kw(t,e,n){return Tw(M(t),e,n)}Cw(fetch.bind(self));const Ve=class Ve{static setFirebaseConfig(e){Ve._firebaseConfig=e}static useEmulator(e){this._emulatorConfig={...Ve.defaultEmulatorConfig,emulate:!0,...e}}static get emulator(){return this._emulatorConfig}constructor(){if(!Ve._firebaseConfig)throw new Error("You should set a firebase config object before using Firebase");this._firebaseApp=cc(Ve._firebaseConfig)}static get instance(){return this._instance||(this._instance=new Ve)}firestore(){return Fy(this._firebaseApp)}storage(){return lw(this._firebaseApp)}auth(){return YT(this._firebaseApp)}functions(){return bw(this._firebaseApp,Ve._region)}static setRegion(e){this._region=e}};Ve.defaultEmulatorConfig={host:"localhost",firestorePort:8080,storagePort:9199,authPort:9099,functionsPort:5001,emulate:!1},Ve._emulatorConfig=Ve.defaultEmulatorConfig;let C=Ve;class Nw extends Ys{constructor(e){var n;if(super(),this._lastLimit=0,e&&C.useEmulator(e),(n=C.emulator)!=null&&n.emulate){const{host:r,firestorePort:s}=C.emulator;ph(C.instance.firestore(),r,s)}}findById(e,n){const r=C.instance.firestore();return new Promise(async s=>{try{const i=await aE(ra(r,n,e));s(i.data())}catch(i){return console.log(i),null}})}save(e){const n=C.instance.firestore(),r=pE(n);return Object.entries(e).forEach(([s,i])=>{i==null||i.forEach(o=>{const a=ra(n,s,o.id);r.set(a,o)})}),r.commit()}find(e,n){const r=this.queryObjectToQueryConstraints(e,n);return this.getFromQuery(r)}async count(e,n){const r=this.queryObjectToQueryConstraints(e,n);return(await hE(r)).data().count}delete(e,n){const r=C.instance.firestore();return uE(ra(r,n,e))}next(e){if(!this._lastConstraints||!this._lastCollectionName)throw new Error("You should perform a query prior to using method next");const n=C.instance.firestore();this._lastLimit=e||this._lastLimit;const r=this._lastConstraints.nonFilterConstraints.concat(Rh(this._lastLimit),eE(this._lastDocRetrieved));return this.getFromQuery(wh(mh(n,this._lastCollectionName),...r))}queryObjectToQueryConstraints(e,n){var a;const r=C.instance.firestore(),s=[],i=[],o=[];return Ys.toPropertyPathOperations(e.operations).forEach(c=>{const u=this.toFirebaseOperator(c.operator);c.aggregate?i.push(Ah(c.property,u,c.value)):s.push(Ah(c.property,u,c.value))}),(a=e.sort)!=null&&a.propertyName&&o.push(Zy(e.sort.propertyName,e.sort.order)),this._lastConstraints={orConstraints:i,andConstraints:s,nonFilterConstraints:o},this._lastCollectionName=n,e.limit&&(this._lastLimit=e.limit,o.push(Rh(e.limit))),wh(mh(r,n),Xy(...i,Jy(...s)),...o)}toFirebaseOperator(e){switch(e){case"==":case"!=":case"<":case"<=":case">":case">=":return e;case"contains":return"array-contains";case"containsAny":return"array-contains-any";default:return e}}getFromQuery(e){return new Promise(async n=>{const r=await cE(e);this._lastDocRetrieved=r.docs[r.docs.length-1],n(r.docs.map(s=>s.data()))})}}var Dw=Object.defineProperty,Ow=Object.getOwnPropertyDescriptor,Vw=(t,e,n,r)=>{for(var s=r>1?void 0:r?Ow(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Dw(e,n,s),s};Ee.FirebaseCloudStorage=class extends vn{constructor(e){var n;if(super(),e&&C.useEmulator(e),(n=C.emulator)!=null&&n.emulate){const{host:r,storagePort:s}=C.emulator;mf(C.instance.storage(),r,s)}}save(e,n,r){const s=C.instance.storage();return new Promise((i,o)=>{if(this._uploadTask=aw(za(s,e),n),r)var a=this._uploadTask.on("state_changed",c=>{r(c.bytesTransferred,c.totalBytes)},null,()=>a());this._uploadTask.then(()=>i(e)).catch(c=>o(c))})}getUrl(e){if(!e)return Promise.reject("needs a reference");const n=C.instance.storage();return cw(za(n,e))}uploadControl(){if(!this._uploadTask)throw new Error("You should call save() before uploadControl()");return{cancel:()=>{var e;return(e=this._uploadTask)==null?void 0:e.cancel()},pause:()=>{var e;return(e=this._uploadTask)==null?void 0:e.pause()},resume:()=>{var e;return(e=this._uploadTask)==null?void 0:e.resume()},onProgress:e=>{var n;return(n=this._uploadTask)==null?void 0:n.on("state_changed",r=>{e&&e(r.bytesTransferred,r.totalBytes)})}}}delete(e){const n=C.instance.storage();return uw(za(n,e))}},Ee.FirebaseCloudStorage=Vw([Mh("FirebaseCloudStorage",()=>new Ee.FirebaseCloudStorage)],Ee.FirebaseCloudStorage);const Tf={twitter:()=>new Oe,facebook:()=>new ze,google:()=>new He};class Ka extends Uh{constructor(e){var n;if(super(),this.credentialProviders={},e&&C.useEmulator(e),(n=C.emulator)!=null&&n.emulate){const{host:r,authPort:s}=C.emulator;if(!r||!s)throw new Error("You should define a host and an auth emulator port to use the emulator");ld(C.instance.auth(),`http://${r}:${s}`)}this.registerCredentialProviders()}signUp(e){const{authProvider:n,verificationLink:r}=e;return n.slice(0,5)==="email"?new Promise(async(s,i)=>{try{const o=this.credentialProviders["email-sign-up"];if(!o)throw new Error(`The provider ${n} is not registered`);const a=await o(e);e.name&&await Uv(a.user,{displayName:e.name}),r&&await Id(a.user,{url:r}),s(await this.toUserCredentials(a.user))}catch(o){i({code:Xs(o.code.slice(5)),message:o.message})}}):this.login(e)}login(e){const{authProvider:n}=e;return new Promise(async(r,s)=>{try{const i=this.credentialProviders[n];if(!i)throw new Error(`The provider ${n} is not registered`);const o=await i(e);r(await this.toUserCredentials(o.user))}catch(i){s({code:i.code===400?"missingPassword":Xs(i.code.slice(5)),message:i.message})}})}logout(){return C.instance.auth().signOut()}resetEmailPassword(e){return new Promise(async(n,r)=>{try{await Vv(C.instance.auth(),e),n()}catch(s){r({code:Xs(s.code.slice(5)),message:s.message})}})}resendVerificationEmail(e,n,r){return new Promise(async(s,i)=>{try{await Td(C.instance.auth(),e,n);const o=C.instance.auth().currentUser;if(!o){i({code:"userNotFound",message:"There is no logged in user"});return}await Id(o,{url:r}),s()}catch(o){i({code:Xs(o.code.slice(5)),message:r})}})}refreshToken(){var e;return(e=C.instance.auth().currentUser)==null?void 0:e.getIdToken(!0)}onAuthStateChange(e){C.instance.auth().onAuthStateChanged(async n=>{e(n?await this.toUserCredentials(n):void 0)})}linkAdditionalProvider(e){const n=Tf[e](),r=C.instance.auth().currentUser;if(!r)throw new Error("There is no logged in user");return Vd(r,n)}unlinkProvider(e){const{currentUser:n}=C.instance.auth();if(!n)throw new Error("There is no logged in user");return n.providerData,bv(n,Tf[e]().providerId)}async toUserCredentials(e){if(!e)throw new Error("The user in user credentials is not defined");const n=(await e.getIdTokenResult()).claims;return Ka.convertCredentials(e,n)}static convertCredentials(e,n){return{id:e.uid,email:e.email??"",name:e.displayName??void 0,pictureUrl:e.photoURL??void 0,phoneNumber:e.phoneNumber??void 0,emailVerified:e.emailVerified,customData:{...n},lastLogin:Date.now(),creationDate:e.metadata.creationTime?new Date(e.metadata.creationTime).getTime():void 0}}registerCredentialProvider(e,n){this.credentialProviders[e]=n}registerCredentialProviders(){this.registerCredentialProvider("email-sign-up",e=>{if(!e.email||!e.password)throw new Error("Email and password are required");return Lv(C.instance.auth(),e.email,e.password)}),this.registerCredentialProvider("email",e=>{if(!e.email||!e.password)throw new Error("Email and password are required");return Td(C.instance.auth(),e.email,e.password)}),this.registerCredentialProvider("google",()=>Da(C.instance.auth(),new He)),this.registerCredentialProvider("facebook",()=>Da(C.instance.auth(),new ze)),this.registerCredentialProvider("twitter",()=>Da(C.instance.auth(),new Oe)),this.registerCredentialProvider("link-twitter",()=>{const e=C.instance.auth().currentUser;if(!e)throw new Error("There is no logged in user");return Vd(e,new Oe)}),this.registerCredentialProvider("anonymous",()=>Cv(C.instance.auth()))}}class Lw{constructor(e,n){var r;if(e&&C.setRegion(e),n&&C.useEmulator(n),(r=C.emulator)!=null&&r.emulate){const{host:s,functionsPort:i}=C.emulator;vf(C.instance.functions(),s,i)}}retrieveFunction(e){return kw(C.instance.functions(),e)}async callFunction(e,n){return(await e(n)).data}}Ee.FirebaseAuth=Ka,Ee.FirebaseCloudFunctions=Lw,Ee.FirebaseDatasource=Nw,Ee.FirebaseHelper=C,Object.defineProperty(Ee,Symbol.toStringTag,{value:"Module"})});
|
|
3678
3663
|
//# sourceMappingURL=entropic-bond-firebase.umd.cjs.map
|